分享

3 types of DMA transfer modes

 rookie 2013-07-23

· 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.

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多