SlideShare ist ein Scribd-Unternehmen logo
1 von 19
by Code-
Note
IMRAN KHAN
Name ID
Md. Sumon Hossain Shahin 1#103#45
Md. Imran Khan 1#1030#5
Afroja Kabir 1#10326#
Israt Jahan 1#103308
Tania Sultana Jui 1#1#3270
 DMA
 Basic DMA operation
 DMA controller
 Data transfer with DMA controller
 DMA Controller options for data transfer
 Data Transfer modes
 Advantage & Disadvantage
3
• Direct Memory Access (DMA) is a method that allows an
input/output (I/O) device to send or receive data directly to or
from the main memory, bypassing the CPU to speed up memory
operations. The process is managed by a chip known as a DMA
controller (DMAC).
DMA
4
•DMA transfers are performed by a control circuit that is part of
the I/O device interface.
• It refer to this circuit as a DMA controller.
• The DMA controller performs the function that would normally
be carried out by the processer when accessing the main memory.
• Device wishing to perform DMA asserts the processors bus
request signal
• Processor completes the current bus cycle and then asserts the
bus grant signal to the device.
5
DMA
• The direct memory access (DMA) I/O technique provides direct
access to the memory while the microprocessor is temporarily
disabled.
• A DMA controller temporarily borrows the address bus, data bus,
and control bus from the microprocessor and transfers the data
bytes directly between an I/O port and a series of memory
locations.
• The DMA transfer is also used to do high-speed memory-to-
memory transfers.
• Two control signals are used to request and acknowledge a DMA
transfer in the microprocessor-based system.
6
During a block input byte transfer, the following sequence occurs as the data byte is sent from
the interface to the memory:
• The interface sends the DMA controller a request for DMA
service.
• A Bus request is made to the HOLD pin (active High) on the
8086 microprocessor and the controller gains control of the
bus.
• A Bus grant is returned to the DMA controller from the Hold
acknowledge (HLDA) pin (active High) on the 8086
microprocessor.
• The DMA controller places contents of the address register
onto the address bus.
• The controller sends the interface a DMA acknowledgment,
which tells the interface to put data on the data bus. (For an
output it signals the interface to latch the next data placed on
the bus.)
• The data byte is transferred to the memory location indicated
by the address bus.
• The interface latches the data.
• The Bus request is dropped, the HOLD pin goes Low, and the
controller relinquishes the bus.
• The Bus grant from the 8086 microprocessor is dropped and
the HLDA pin goes Low.
• The address register is incremented by 1.
• The byte count is decremented by 1.
• If the byte count is non-zero, return to step 1, otherwise stop
• The DMA Controller has several options available for the
transfer of data.
• They are:-
 Cycle steal
 Burst transfer
 Hidden DMA
1) CYCLE STEAL
A read or write signal is generated by the DMAC, and the I/O
device either generates or latches the data. The DMAC
effectively steals cycles from the processor in order to transfer
the byte, so single byte transfer is also known as cycle stealing
2). BURST TRANSFER
To achieve block transfers, some DMAC's incorporate an
automatic sequencing of the value presented on the address
bus. A register is used as a byte count, being decremented for
each byte transfer, and upon the byte count reaching zero, the
DMAC will release the bus. When the DMAC operates in burst
mode, the CPU is halted for the duration of the data transfer.
3) HIDDEN DMA
It is possible to perform hidden DMA, which is transparent to
the normal operation of the CPU. In other words, the bus is
grabbed by the DMAC when the processor is not using it.
The DMAC monitors the execution of the processor, and when
it recognises the processor executing an instruction which has
sufficient empty clock cycles to perform a byte transfer, it waits
till the processor is decoding the op code, then grabs the bus
during this time. The processor is not slowed down, but
continues processing normally. Naturally, the data transfer by
the DMAC must be completed before the processor starts
DMA Data Transfer Modes
1. Single Transfer Mode 2. Block Transfer Mode
3. Demand Transfer Mode 4. Cascade Mode:
5. Memory to memory transfer
 Single Transfer Mode: In Single Transfer mode the device is
programmed to make one transfer only. In single mode only one
byte is transferred per request.
 Block Transfer Mode: Once the DMA controller is
granted access to the system bus by the CPU, it transfers all
bytes of data in the data block. This mode is called "Block
Transfer Mode". once a Block transfer is started, it runs until
the transfer count reaches zero
DMA Data Transfer Modes
 Demand Transfer Mode: Demand Mode DMA allows PC
hardware to transfer many bytes of data, via a DMA channel,
with only a single programming of the DMA controller.
 Cascade Mode: Used to cascade additional DMA
controllers Actual bus signals is executed by cascaded chip.
 Memory to memory transfer: To perform the transfer of
the block of data from one set of memory address to another
one ,this mode is used. This means data can be transferred
from one memory device to another memory device.
• DMA allows a peripheral device to read from/write to
memory without going through the CPU
• DMA allows for faster processing since the processor can be
working on something else while the peripheral can be
populating memory.
• DMA transfer requires a DMA controller to carry out the
operation, hence cost of the system increases.
• Cache Coherence problems.
DMA operation

Weitere ähnliche Inhalte

Was ist angesagt?

Direct memory access (dma)
Direct memory access (dma)Direct memory access (dma)
Direct memory access (dma)Zubair Khalid
 
MICROPROCESSOR INPUT OUTPUT OPERATIONS
MICROPROCESSOR INPUT OUTPUT OPERATIONSMICROPROCESSOR INPUT OUTPUT OPERATIONS
MICROPROCESSOR INPUT OUTPUT OPERATIONSGeorge Thomas
 
Computer organization memory
Computer organization memoryComputer organization memory
Computer organization memoryDeepak John
 
Memory organization
Memory organizationMemory organization
Memory organizationishapadhy
 
8085 microprocessor ramesh gaonkar
8085 microprocessor   ramesh gaonkar8085 microprocessor   ramesh gaonkar
8085 microprocessor ramesh gaonkarSAQUIB AHMAD
 
8237 dma controller
8237 dma controller8237 dma controller
8237 dma controllerTech_MX
 
Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor  Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor Mustapha Fatty
 
Stack organization
Stack organizationStack organization
Stack organizationchauhankapil
 
8086 microprocessor-architecture
8086 microprocessor-architecture8086 microprocessor-architecture
8086 microprocessor-architectureprasadpawaskar
 
Computer registers
Computer registersComputer registers
Computer registersDeepikaT13
 
Memory & I/O interfacing
Memory & I/O  interfacingMemory & I/O  interfacing
Memory & I/O interfacingdeval patel
 
Addressing modes
Addressing modesAddressing modes
Addressing modesAsif Iqbal
 
INTEL 80386 MICROPROCESSOR
INTEL  80386  MICROPROCESSORINTEL  80386  MICROPROCESSOR
INTEL 80386 MICROPROCESSORAnnies Minu
 

Was ist angesagt? (20)

Direct memory access (dma)
Direct memory access (dma)Direct memory access (dma)
Direct memory access (dma)
 
MICROPROCESSOR INPUT OUTPUT OPERATIONS
MICROPROCESSOR INPUT OUTPUT OPERATIONSMICROPROCESSOR INPUT OUTPUT OPERATIONS
MICROPROCESSOR INPUT OUTPUT OPERATIONS
 
Input output interface
Input output interfaceInput output interface
Input output interface
 
Computer organization memory
Computer organization memoryComputer organization memory
Computer organization memory
 
Direct Memory Access ppt
Direct Memory Access pptDirect Memory Access ppt
Direct Memory Access ppt
 
Memory organization
Memory organizationMemory organization
Memory organization
 
8251 USART
8251 USART8251 USART
8251 USART
 
8085 microprocessor ramesh gaonkar
8085 microprocessor   ramesh gaonkar8085 microprocessor   ramesh gaonkar
8085 microprocessor ramesh gaonkar
 
8237 dma controller
8237 dma controller8237 dma controller
8237 dma controller
 
Dma
DmaDma
Dma
 
Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor  Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor
 
Stack organization
Stack organizationStack organization
Stack organization
 
8086 microprocessor-architecture
8086 microprocessor-architecture8086 microprocessor-architecture
8086 microprocessor-architecture
 
Computer registers
Computer registersComputer registers
Computer registers
 
Memory & I/O interfacing
Memory & I/O  interfacingMemory & I/O  interfacing
Memory & I/O interfacing
 
Addressing modes
Addressing modesAddressing modes
Addressing modes
 
INTEL 80386 MICROPROCESSOR
INTEL  80386  MICROPROCESSORINTEL  80386  MICROPROCESSOR
INTEL 80386 MICROPROCESSOR
 
Instruction format
Instruction formatInstruction format
Instruction format
 
SRAM DRAM
SRAM DRAMSRAM DRAM
SRAM DRAM
 
Direct memory access
Direct memory accessDirect memory access
Direct memory access
 

Ähnlich wie DMA operation

Dma and dma controller 8237
Dma and dma controller 8237Dma and dma controller 8237
Dma and dma controller 8237Ashwini Awatare
 
Direct Memory Access(DMA)
Direct Memory Access(DMA)Direct Memory Access(DMA)
Direct Memory Access(DMA)Page Maker
 
Direct Memory Access (DMA).pptx
Direct Memory Access (DMA).pptxDirect Memory Access (DMA).pptx
Direct Memory Access (DMA).pptxAbidShahriar3
 
Direct memory access
Direct memory accessDirect memory access
Direct memory accessWBUTTUTORIALS
 
Dma data transfer
Dma data transferDma data transfer
Dma data transferchemjor83
 
Computer Organization Video Presentation
Computer Organization Video PresentationComputer Organization Video Presentation
Computer Organization Video PresentationRoshanAmirul
 
DMA airctecture.pptx
DMA airctecture.pptxDMA airctecture.pptx
DMA airctecture.pptxsuryansh85
 
DMA Versus Polling or Interrupt Driven I/O
DMA Versus Polling or Interrupt Driven I/ODMA Versus Polling or Interrupt Driven I/O
DMA Versus Polling or Interrupt Driven I/Osathish sak
 
Direct Memory Access (DMA)-Working and Implementation
Direct Memory Access (DMA)-Working and ImplementationDirect Memory Access (DMA)-Working and Implementation
Direct Memory Access (DMA)-Working and ImplementationShubham Kumar
 
DMA Controller Presentation
DMA Controller PresentationDMA Controller Presentation
DMA Controller PresentationWaddaMalik
 
DMA_document__1696148675.pdf
DMA_document__1696148675.pdfDMA_document__1696148675.pdf
DMA_document__1696148675.pdfmadhav590273
 
8237 / 8257 DMA
8237 / 8257 DMA8237 / 8257 DMA
8237 / 8257 DMAAJAL A J
 
Direct memory access (DMA) is a function that allows an inputoutput.pdf
Direct memory access (DMA) is a function that allows an inputoutput.pdfDirect memory access (DMA) is a function that allows an inputoutput.pdf
Direct memory access (DMA) is a function that allows an inputoutput.pdfaptex1
 

Ähnlich wie DMA operation (20)

Dma and dma controller 8237
Dma and dma controller 8237Dma and dma controller 8237
Dma and dma controller 8237
 
Direct Memory Access(DMA)
Direct Memory Access(DMA)Direct Memory Access(DMA)
Direct Memory Access(DMA)
 
Direct Memory Access (DMA).pptx
Direct Memory Access (DMA).pptxDirect Memory Access (DMA).pptx
Direct Memory Access (DMA).pptx
 
Direct memory access
Direct memory accessDirect memory access
Direct memory access
 
Dma
DmaDma
Dma
 
Dma data transfer
Dma data transferDma data transfer
Dma data transfer
 
Direct access memory
Direct access memoryDirect access memory
Direct access memory
 
Direct access memory
Direct access memoryDirect access memory
Direct access memory
 
Computer Organization Video Presentation
Computer Organization Video PresentationComputer Organization Video Presentation
Computer Organization Video Presentation
 
Direct Memory Access
Direct Memory AccessDirect Memory Access
Direct Memory Access
 
1 STM32's DMA.ppt
1 STM32's DMA.ppt1 STM32's DMA.ppt
1 STM32's DMA.ppt
 
DMA airctecture.pptx
DMA airctecture.pptxDMA airctecture.pptx
DMA airctecture.pptx
 
DMA
DMADMA
DMA
 
DMA Versus Polling or Interrupt Driven I/O
DMA Versus Polling or Interrupt Driven I/ODMA Versus Polling or Interrupt Driven I/O
DMA Versus Polling or Interrupt Driven I/O
 
Direct Memory Access (DMA)-Working and Implementation
Direct Memory Access (DMA)-Working and ImplementationDirect Memory Access (DMA)-Working and Implementation
Direct Memory Access (DMA)-Working and Implementation
 
DMA Controller Presentation
DMA Controller PresentationDMA Controller Presentation
DMA Controller Presentation
 
DMA_document__1696148675.pdf
DMA_document__1696148675.pdfDMA_document__1696148675.pdf
DMA_document__1696148675.pdf
 
8237 / 8257 DMA
8237 / 8257 DMA8237 / 8257 DMA
8237 / 8257 DMA
 
ppppptttt.pdf
ppppptttt.pdfppppptttt.pdf
ppppptttt.pdf
 
Direct memory access (DMA) is a function that allows an inputoutput.pdf
Direct memory access (DMA) is a function that allows an inputoutput.pdfDirect memory access (DMA) is a function that allows an inputoutput.pdf
Direct memory access (DMA) is a function that allows an inputoutput.pdf
 

Kürzlich hochgeladen

CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfAsst.prof M.Gokilavani
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...Chandu841456
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
Concrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxConcrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxKartikeyaDwivedi3
 
Class 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm SystemClass 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm Systemirfanmechengr
 
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncssuser2ae721
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptSAURABHKUMAR892774
 
8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitterShivangiSharma879191
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfAsst.prof M.Gokilavani
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx959SahilShah
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...asadnawaz62
 
Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfme23b1001
 
lifi-technology with integration of IOT.pptx
lifi-technology with integration of IOT.pptxlifi-technology with integration of IOT.pptx
lifi-technology with integration of IOT.pptxsomshekarkn64
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.eptoze12
 

Kürzlich hochgeladen (20)

CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
 
young call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Serviceyoung call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Service
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
Concrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxConcrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptx
 
Class 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm SystemClass 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm System
 
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.ppt
 
8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...
 
Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdf
 
lifi-technology with integration of IOT.pptx
lifi-technology with integration of IOT.pptxlifi-technology with integration of IOT.pptx
lifi-technology with integration of IOT.pptx
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.
 

DMA operation

  • 2. Name ID Md. Sumon Hossain Shahin 1#103#45 Md. Imran Khan 1#1030#5 Afroja Kabir 1#10326# Israt Jahan 1#103308 Tania Sultana Jui 1#1#3270
  • 3.  DMA  Basic DMA operation  DMA controller  Data transfer with DMA controller  DMA Controller options for data transfer  Data Transfer modes  Advantage & Disadvantage 3
  • 4. • Direct Memory Access (DMA) is a method that allows an input/output (I/O) device to send or receive data directly to or from the main memory, bypassing the CPU to speed up memory operations. The process is managed by a chip known as a DMA controller (DMAC). DMA 4
  • 5. •DMA transfers are performed by a control circuit that is part of the I/O device interface. • It refer to this circuit as a DMA controller. • The DMA controller performs the function that would normally be carried out by the processer when accessing the main memory. • Device wishing to perform DMA asserts the processors bus request signal • Processor completes the current bus cycle and then asserts the bus grant signal to the device. 5 DMA
  • 6. • The direct memory access (DMA) I/O technique provides direct access to the memory while the microprocessor is temporarily disabled. • A DMA controller temporarily borrows the address bus, data bus, and control bus from the microprocessor and transfers the data bytes directly between an I/O port and a series of memory locations. • The DMA transfer is also used to do high-speed memory-to- memory transfers. • Two control signals are used to request and acknowledge a DMA transfer in the microprocessor-based system. 6
  • 7.
  • 8. During a block input byte transfer, the following sequence occurs as the data byte is sent from the interface to the memory: • The interface sends the DMA controller a request for DMA service. • A Bus request is made to the HOLD pin (active High) on the 8086 microprocessor and the controller gains control of the bus. • A Bus grant is returned to the DMA controller from the Hold acknowledge (HLDA) pin (active High) on the 8086 microprocessor.
  • 9. • The DMA controller places contents of the address register onto the address bus. • The controller sends the interface a DMA acknowledgment, which tells the interface to put data on the data bus. (For an output it signals the interface to latch the next data placed on the bus.) • The data byte is transferred to the memory location indicated by the address bus. • The interface latches the data.
  • 10. • The Bus request is dropped, the HOLD pin goes Low, and the controller relinquishes the bus. • The Bus grant from the 8086 microprocessor is dropped and the HLDA pin goes Low. • The address register is incremented by 1. • The byte count is decremented by 1. • If the byte count is non-zero, return to step 1, otherwise stop
  • 11.
  • 12. • The DMA Controller has several options available for the transfer of data. • They are:-  Cycle steal  Burst transfer  Hidden DMA
  • 13. 1) CYCLE STEAL A read or write signal is generated by the DMAC, and the I/O device either generates or latches the data. The DMAC effectively steals cycles from the processor in order to transfer the byte, so single byte transfer is also known as cycle stealing
  • 14. 2). BURST TRANSFER To achieve block transfers, some DMAC's incorporate an automatic sequencing of the value presented on the address bus. A register is used as a byte count, being decremented for each byte transfer, and upon the byte count reaching zero, the DMAC will release the bus. When the DMAC operates in burst mode, the CPU is halted for the duration of the data transfer.
  • 15. 3) HIDDEN DMA It is possible to perform hidden DMA, which is transparent to the normal operation of the CPU. In other words, the bus is grabbed by the DMAC when the processor is not using it. The DMAC monitors the execution of the processor, and when it recognises the processor executing an instruction which has sufficient empty clock cycles to perform a byte transfer, it waits till the processor is decoding the op code, then grabs the bus during this time. The processor is not slowed down, but continues processing normally. Naturally, the data transfer by the DMAC must be completed before the processor starts
  • 16. DMA Data Transfer Modes 1. Single Transfer Mode 2. Block Transfer Mode 3. Demand Transfer Mode 4. Cascade Mode: 5. Memory to memory transfer  Single Transfer Mode: In Single Transfer mode the device is programmed to make one transfer only. In single mode only one byte is transferred per request.  Block Transfer Mode: Once the DMA controller is granted access to the system bus by the CPU, it transfers all bytes of data in the data block. This mode is called "Block Transfer Mode". once a Block transfer is started, it runs until the transfer count reaches zero
  • 17. DMA Data Transfer Modes  Demand Transfer Mode: Demand Mode DMA allows PC hardware to transfer many bytes of data, via a DMA channel, with only a single programming of the DMA controller.  Cascade Mode: Used to cascade additional DMA controllers Actual bus signals is executed by cascaded chip.  Memory to memory transfer: To perform the transfer of the block of data from one set of memory address to another one ,this mode is used. This means data can be transferred from one memory device to another memory device.
  • 18. • DMA allows a peripheral device to read from/write to memory without going through the CPU • DMA allows for faster processing since the processor can be working on something else while the peripheral can be populating memory. • DMA transfer requires a DMA controller to carry out the operation, hence cost of the system increases. • Cache Coherence problems.