- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理及接口技术第6章 输入/输出技术6.6 直接存储器存取(DMA)方式Direct Memory Access6.6 直接存储器存取(DMA)方式无条件传送方式、查询方式、中断方式均需CPU作为中介:软件:外设与内存之间的数据传送是通过 CPU执行程序完成(PIO方式)。硬件:I/O接口和存储器的读写控制信号、 地址信号都由CPU发出。缺点:程序的执行速度限定了传送的最大 速度。查询方式流程图:中断处理程序:PUSHSTI……MOV DX, 外设数据端口IN AX, DXMOV [BX], AXADD BX, 2……MOV AX, [BX]OUT DX, AX……CLIPOPEOIIRET防止死循环输入输出6.6 直接存储器存取(DMA)方式中断方式:可满足实时性要求,但是:需要额外开销中断响应断点保护/恢复中断处理服务时间……当高速外设与计算机进行信息交换时,需要更高效的方法 → DMA:纯硬件控制指令周期、总线周期6.6 直接存储器存取(DMA)方式 一、DMA工作过程通过特殊硬件DMA控制器实现,传输速率高。外设直接与存储器进行数据交换,CPU不再作为中介者。总线由DMA控制器(DMAC)进行控制,CPU放弃总线控制权,内存/外设的地址和读写控制信号均由DMAC提供。DMA方式下内存与外设间的数据传送通路DMA方式下内存与内存间的数据传送通路程序控制/中断方式下的数据传送通路DMA工作过程P283⑤⑤√⑦x③①③⑦x④x⑥②DMA方式下内存与外设间的数据传送通路DMA传输时序:I/O → 内存P139、P285AEN=0:CPUAEN=1:DMA地址:内 存 地 址IOR:MEMW:数据:来自I/O的数据AEN:6.6 直接存储器存取(DMA)方式 一、DMA工作过程当外设准备好,可以进行DMA传送时,外设向DMA控制器发出“DMA传送请求”信号(DRQ);DMA控制器收到请求后,向CPU发出“总线请求”信号HOLD,表示希望占用总线;CPU在完成当前总线周期后,非总线封锁条件下,立即对HOLD信号进行响应。响应包括两个动作:一是CPU将数据总线、地址总线和相应的控制信号线均置为高阻态,由此放弃对总线的控制权。另一方面,CPU向DMA控制器发出“总线响应”信号(HLDA)。DMA控制器收到HLDA信号后,就开始控制总线,并向外设发出DMA响应信号DACK;6.6 直接存储器存取(DMA)方式 一、DMA工作过程DMA控制器送出地址信号和相应的控制信号,实现外设与内存或内存与内存之间的直接数据传送。例如,向I/O接口发出读信号,同时往地址总线上发出存储器地址、存储器写信号和AEN信号,即可从外设向内存传送一个字节。DMA控制器自动修改地址和字节计数器,并判断是否需要重复传送操作。当规定的数据传送完后,DMA控制器就撤销发往CPU的HOLD信号。CPU检测到HOLD失效后,紧接着撤销HLDA信号,并在下一时钟周期重新开始控制总线。 6.6 直接存储器存取(DMA)方式 二、DMA控制器8237DMAC:Direct Memory Access (DMA) Controller, DMA控制器。4个独立的DMA通道。内存→接口、接口→内存、内存→内存。多种工作方式。利用级联方式,可将DMA通道扩充为16个。6.6 DMA方式二、DMA控制器8237 (一)8237的 引线及功能三态、输出地址Not Connected三态、双向双向,OC接口准备好?三态、输出三态、双向地址1:Master (DMA)0:Slave三态、双向数据;A8~A15输出给/来自 CPU接口的DMA请求及应答6.6 DMA方式二、DMA控制器8237 (二)8237的工作时序P287,图6.43SI: 空闲状态SO: 请求状态S1~S4: 传送状态SI: 空闲状态SO: 请求状态S1~S4: 传送状态6.6 DMA方式二、DMA控制器8237 (二)8237的工作时序S1状态只在A15~A8更新时才执行;可根据Ready信号状态在S3与S4之间插入SW;在数据块传送方式下,大多数总线周期正常时序:S2、S3、S4压缩时序:S2、S42.1 8088 CPU2.1.5 典型时序分析:内存读时序TWT4T1T2T3T4CLK地址输出状态输出A19/S6~A16/S3地 址 输 出A15~A8地址输出数据输入AD7~AD0ALEIO/MRD获得数据获得数据DT/RDENXReadyX6.6 DMA方式二、DMA控制器8237 (三)8237的工作方式空闲周期(SI):4个通道均无请求,I/O设备。工作周期:3种传输方式、级联方式传输方式:单字节传送(每次传送一个字节)数据块传送(块传送)请求传送(猝发传送)连接方式:级联方式
文档评论(0)