[实用新型]一种直接存储器访问控制器无效
申请号: | 01256383.8 | 申请日: | 2001-10-18 |
公开(公告)号: | CN2507066Y | 公开(公告)日: | 2002-08-21 |
发明(设计)人: | 王良清 | 申请(专利权)人: | 深圳市中兴集成电路设计有限责任公司 |
主分类号: | G06F13/14 | 分类号: | G06F13/14 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518058 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 直接 存储器 访问 控制器 | ||
技术领域
本发明涉及计算机技术中微处理器系统,具体涉及信号、数据在存储器、输入/输出设备或者中央处理器之间的传输,尤其涉及一种直接存储器访问(Direct Memory Access,简称DMA)控制器。
背景技术
在目前的微处理器系统中,DMA控制器多用来处理数据在存储器、输入/输出设备之间的传输。DMA控制器传输数据时,需要知道被传输数据的个数;对于一些通讯接口而言,程序员设置DMA控制器时可能不知道需要传输的数据。比如,对于异步串口接收数据,程序员可能无法知道将接收多少个数据,因此为DMA控制器设置了一个估计的数据量;实际情况可能是异步串口没有接收到估计的数据量,从而导致DMA控制器发不出数据传输完成中断。但程序员希望DMA控制器在传输完异步串口接收到的这批数据后发出一个中断信号,不幸的是,几乎所有的DMA控制器都没有这一个功能,(比如AMD公司186系列微控制器中DMA控制器),程序员不得不定时查看DMA控制器或异步串口的状态,使工作效率降低。
另外,先进的DMA控制器几乎都支持链式传输方式。在链式传输方式下,DMA控制器执行完一个命令后会查看存储器中指定地址的数据,判断CPU是否在存储器中写好了新的传输命令。如果存在新的传输命令,DMA控制器将把这个新的命令读入内部寄存器中,并进行该命令定义的数据传输;否则,DMA控制器将反复查询,直到CPU改变存储器指定地址的数据通知DMA控制器有新的命令。当DMA控制器等待新的命令时,太频繁的查询必然降低总线的效率。但目前的DMA控制器(比如摩托罗拉的MPC8240中的DMA控制器)没有为此提供一种有效的解决方案。
在一些场合中,DMA控制器可能需要周期性的执行传输任务,前面提到的MPC8240中的DMA控制器就支持这种功能。但MPC8240的DMA控制器需要根据外部的定时器提供周期性的请求,这样一来程序员使用DMA控制器时不仅要设置DMA控制器,还要设置外部的定时器,工作效率受到影响。
发明内容
本实用新型提供一种带定时器的DMA控制器,以提高总线的效率和人员的工作效率。
本实用新型所要解决的问题可以通过以下技术方案来解决:
一种直接存储器访问控制器,包括总线BUSA、总线BUSB、定时器、译码逻辑、状态寄存器、控制寄存器、命令寄存器组、描述符寄存器组、现场寄存器组、状态机、数据缓冲队列FIFO;所述总线BUSA分别与定时器、状态寄存器、控制寄存器、命令寄存器组、描述符寄存器组双向连接,并与译码逻辑输入端、现场寄存器组输出端相连接;总线BUSB分别与数据缓冲队列FIFO、状态机双向连接,并与描述符寄存器组输入端、现场寄存器组输入端相连接;定时器输出端与状态寄存器输入端、状态机输入端相连接,定时器输入端与译码逻辑输出端、控制寄存器输出端相连接;译码逻辑输出端与状态寄存器输入端、控制寄存器输入端、命令寄存器组输入端、描述符寄存器组输入端、现场寄存器组输入端相连接;状态寄存器输入端与状态机输出端相连接,状态寄存器输出端与状态机输入端相连接;控制寄存器输出端与状态机输入端相连接;命令寄存器组输出端与现场寄存器组输入端、状态机输入端相连接;描述符寄存器组输入端与状态机输出端相连接,描述符寄存器组输出端与状态机输入端相连接;现场寄存器组输入端与状态机输出端相连接,现场寄存器组输出端与状态机输入端相连接。
所述状态机的输入信号还包括外部请求输入信号、总线BUSB的仲裁信号,输出信号还包括总线BUSB的申请信号。
所述定时器包括初值寄存器、计数寄存器、递增加法器、控制信号产生部件;所述初值寄存器与总线BUSA双向连接,且初值寄存器输出端与计数寄存器输入端、控制信号产生部件输入端相连接;计数寄存器输出端与控制信号产生部件输入端、递增加法器输入端相连接,计数寄存器输入端与控制信号产生部件输出端相连接;递增加法器输出端与计数寄存器输入端相连接。
与现有技术相比,本实用新型的优点在于:由于本实用新型提供的DMA控制器采用带有定时器,程序员可以通过设置DMA控制器中的定时器,强迫DMA控制器在一定时间内必须发出中断,从而避免DMA控制器在执行一个命令时因为外部请求传输的数据量不足而发不出命令已完成的信号,帮助程序员及时知道DMA控制器和外部请求设备的状态。程序员不必借助外部的定时器,DMA控制器的使用变得方便。
DMA控制器中的定时器还可以为支持链式传输的DMA控制器提供一种周期性查询存储器中指定地址的内容,避免在等待状态频繁查询CPU准备新命令的状态,从而有利于提高总线的效率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市中兴集成电路设计有限责任公司,未经深圳市中兴集成电路设计有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/01256383.8/2.html,转载请声明来源钻瓜专利网。