- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * DMA主要特点: DMA方式是在主存和外设之间实现成组、高速的数据交换(不经过CPU),而程序中断方式是在CPU和外设之间实现单个数据的交换。 在成组数据交换的起始和结尾阶段,需要通过程序进行处理,除此之外,整个数据交换过程全部由硬件控制。 DMA控制器和CPU都可以成为总线的主控设备。 DMA与程序中断方式的比较 CPU对中断的响应只能发生在每条指令结束的时候,而DMA请求只能的响应可以发生在指令执行过程中每个节拍(周期)结束的时刻。 DMA请求的优先级高于中断请求 CPU响应DMA请求并不执行特殊的操作(如保存断点和现场),而是让出对总线的控制权,使DMA成为总线的主控设备。 程序中断方式具有实时处理异常事件的能力,比较灵活;而DMA方式仅用于实现外设与主存之间的数据块传送。 DMA概念: DMA是在专门的硬件(DMA接口卡)控制下,实现高速I/O设备与主存储器之间成批交换数据的输入/输出操作方式。 高速I/O设备与主存每交换一批数据一般要占用一个总线周期。 成批交换数据的几个要素: 源始数据的首地址(R) 目的数据的首地址(R) 传送数据的个数的计数(R) 判断是否传送完成(counter) 有时需要临时存放数据(R) 工作方式 独占总线方式--从传送第一个字开始直到这批数据传输完成的整个过程,DMA都占用总线。其缺点是CPU和其他DMA等bus masters都要停止运行,会影响系统运行效率。 周期挪用方式--DMA占用总线周期传送一个字的期间。 若CPU在此期间并不使用总线,它就继续执行指令,二者均可运行,互不干涉。 若CPU也要使用总线,则发生了争用总线的矛盾,此时CPU要让出一个总线周期先给DMA使用,之后自己才能得到总线使用权并继续运行。 DMA控制器 DMA控制器是接在总线上的一块逻辑线路板,它的一端通过总线与计算机主存连接,另外一端通过电缆与高速设备连接。 DMA控制器可以变化自己的角色。 当CPU对它进行读写时,CPU是bus master,DMA是bus slave。 当DMA控制高速设备与主存交换数据时,DMA是bus master。 DMA控制器包括一般通用可编程接口的全部组成部分,例如设备识别逻辑,控制/状态逻辑,数据缓冲电路,中断机构等,又要增加几个组成部分,例如主存地址计数器,字计数器,DMA请求线路等。 DMA控制器组成部分介绍 主存地址计数器,存放读写主存用到的主存地址,一批数据传送开始前,由CPU写入其初值,以后每传送一个字,该地址计数器加1,使其指向下一个主存单元。 字计数器,存放传送数据的个数,由CPU写入其初值,以后每传送一个字,该计数器减1,当计数到0时,表示这批数据传送完毕,此时DMA应向CPU发中断请求信号。 DMA的控制/状态逻辑,由控制和状态等逻辑电路组成,用于修改主存地址计数器和数据数量计数器,指定传送功能(输入还是输出),协调CPU和DMA信号的配合与同步。 DMA控制器组成部分介绍 DMA请求触发器,接收并记忆设备送来的请求数据传送的信号,该触发器的“1”输出端接到DMA的控制/状态逻辑,使其向CPU发出DMA请求信号,CPU接到这一请求信号并响应后,送回响应回答信号,DMA的控制/状态逻辑接到这一回答信号,就取得了总线的使用权,启动数据传送,清 “0” DMA请求触发器,为下一次的请求做好准备。 数据缓冲寄存器,用于存放高速设备与主存之间交换的数据,也有的DMA控制器上不设置数据缓冲寄存器,而由发送数据的一方在指定的时刻直接把数据放到数据总线上。 中断机构,与通用接口中的中断逻辑电路的组成完全相同,中断请求发生在字计数器计数到0值的时刻,用于向CPU报告本组数据传送完成,并等待新的传送命令。 字计数器 DMA传送数据的过程 传送前预处理:由CPU完成,向DMA卡送入设备识别信号,启动设备,测试设备运行状态,送入内存地址初值,传送数据的数量,DMA的功能控制信号等,这之后,CPU继续执行原来的程序。 数据传送:在DMA卡控制下自动完成,准备好一个数据,取得总线控制权,进行数据传送,修改卡上主存地址,修改字数计数器内容且检查其值是否为0,不为0则继续传送,若已为0则结束本次数据传送过程。 传送结束后处理:数据数量计数器为0,则向CPU发中断请求,CPU响应之后进行相应处理。 字计数器减1 I/O通道控制方式 通道是代替CPU管理控制外设的独立部件,是能执行有限I/O指令集合的I/O处理机。 在CPU启动通道后,通道自动地从内存取出通道指令并执行,直到数据传送结束,并向CPU发出中断请求,进行通道结束工作。 一个通道可以连接多个设备控制器,从而控制多台外设与主存交换信息。适应不同速度、不同种类的外部设备,可并行工作。 提高了主机与通道、通道间、各设
您可能关注的文档
最近下载
- 《兽医临床诊疗技术》课件.ppt VIP
- DBJ51_T 219.5-2023 四川省物业服务标准 第5分册:医院物业服务标准.docx VIP
- 冯唐:小通鉴(中国故事唐为你讲一堂《资治通鉴》的管理课).doc VIP
- 通信安规考试8.14(带答案A4普通页面下载打印就用).doc VIP
- ASUS华硕服务器 工作站通用服务器ESC N8-E11(V) Simplified Chinese User Manual.pdf VIP
- 新人教版数学六年级上册全册课本练习题.pdf VIP
- 《电子商务法律法规》本科电子商务专业全套教学课件.pptx
- 圆管涵施工方案.doc VIP
- 2025年高考语文真题完全解读(北京卷)(解析版).docx
- 药品生产偏差处理培训.pptx VIP
文档评论(0)