新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于DSP的DMA控制技术

基于DSP的DMA控制技术

作者:时间:2009-03-26来源:网络收藏

本文引用地址:http://www.eepw.com.cn/article/152562.htm

①I/O设备准备好后,向器(C)发出请求信号DMARQ。

  ②DMAC向CPU发出总线请求信号BUSRQ。

  ③按照预定的DMAC占用总线方式,CPU响应BUSRQ,向DMAC发出总线确认信号BUSAK。从这时起,CPU总线权交由DMAC接管,开始进入DMA有效周期,如图1中阴影部分所示。

  ④DMAC接管总线后,先向I/O设备发出DMA请求的响应信号DACK,表示允许外设进行DMA传送。然后按事先设置的初始地址和需传送的字节数,依次发送地址和读写命令,使RAM和I/O设备直接交换数据,直至全部数据交换完毕。

  ⑤DMA传送结束后,自动撤消向CPU的总线请求信号BUSRQ,从而使BUSAK和DACK相继变为无效,CPU又重新总线,恢复正常工作。

3 与DMA控制器8237-5的接口电路

  通过上述分析可以知道,与8237-5的接口关键是要解决的/HOLD、/HOLDA信号与8237-5的总线保持请求输出信号HRQ(即BUSRQ)、总线保持响应输入信号HLDA(即BUSAK)之间的联系问题。图2给出DSP与8237-5的接口电路。

(1)数据线、地址线可以直接相连,8237-5仅使用8根数据线和地址线。

  (2)由于8237-5要向DSP申请对外部总线的控制,所以DSP的/HOLD信号决定于HRQ,而二者的有效电平正好是反相关系;另一方面,当DSP在合适程序代码的协助下使/HOLDA有效,从而对/HOLD有效作出响应时,它就应该通知DMAC可以获得总线控制权,那么可以将/HOLDA反相后发给8237-5的HLDA,从而使得该信号变高成为有效,8237-5得以接管总线。因此HLDA、/HOLD信号线的译码逻辑关系如下:

  HLDA=/HOLDA

  /HOLD=HRQ

  一次DMA操作的时序关系如图3所示。



评论


相关推荐

技术专区

关闭