Yes, DMA does bypass the CPU.
DMA can communicate with CPU using Cycle stelaing process
DMA transfers data directly from the drive to memory without involving the CPU. PIO involves the CPU and is slower than DMA mode.
DMA (Direct Memory Access) can be used during the CPU's "busy time", such as when the CPU is processing a read/write cycle, the DMA will take over to perform other tasks while the CPU is busy.
ECP was designed to increase speed over EPP by using a DMA channel; therefore, when using ECP mode, you are using a DMA channel.
DMA allows devices to communicate with each other directly, instead of relying on the CPU to manage the transfers. This frees the CPU up to do other tasks, and increases system performance.
DMA
DMA
· Block transfer DMA controller takes the bus control by CPU. CPU has no access to bus until the transfer is complete. During this time CPU can perform internal operations that do not need bus. This is a common and popular method with modern microprocessors. · Cycle stealing This is a word-by-word transfer based on CPU cycle stealing. When DMA steals a cycle, CPU is stopped completely for one cycle. Cycle stealing is not an interrupt. CPU pauses for just one machine cycle. This type of transfer takes a period of time. Some major steps of DMA cycle stealing in order to transfer data to and form memory are: · DMA needs control of the CPU · DMA must use the bus only when the CPU does not need it · CPU is suspended by DMA just before it needs to use the bus · CPU pauses for one bus cycle · DMA transfers one words and then returns the control to CPU · The overall effect is to cause the CPU to execute more slowly · Interleaved DMA. It is similar to block transfer technique, here DMA controller takes the control of system bus only when CPU is not using it. For example, performing an ALU operation or incrementing a counter. The data transfer by this kind of method takes a period of time.
Extended Capabilities Port (ECP) as designed to increase speed over EPP by using a DMA channel; therefore, when using ECP mode, you are using a DMA channel.
a customer as an IBM Desktop computer
dma channel
PIO