完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
程序控制方式:无条件传送方式、程序查询方式
①无条件传送:在此情况下,外设总是准备好的,他可以无条件地随时接收CPU发来的输出数据,也能够无条件地随时向CPU提供需要输入的数据。 ②程序查询方式:通过CPU执行程序来查询外设的状态,判断外设是否准备好接收数据或准备好了向CPU输入数据。根据这种状态,CPU有针对性地为外设的输入/输出服务。 计算机系统中的CPU是稀缺资源,应尽量提高其利用率,减少等待I/O操作的时间。中断方式:在中断方式下,I/O设备工作时CPU不再等待,而是进行其他的操作,当I/O设备完成后,通过一个硬件中断信号通知CPU,CPU再来处理接下来的工作。 在系统中具有多个中断源的情况下,常用的处理方法: ①多中断信号线法。 每个中断源都有属于自己的一根中断请求信号线向CPU提出中断请求。 ②中断软件查询法。 当CPU检测到一个中断请求信号以后,即转入到中断服务程序去轮询每个中断源以确定是谁发出了中断请求信号。对各个设备的响应优先级由软件设定。 ③菊花链法。 所有的I/O模块共享一根公共的中断请求线,而中断确认信号则以链式在各模块间相连。 ④总线仲裁法。 一个I/O设备在发出中断请求之前,必须先获得总线控制权,所以可由总线仲裁机制来裁定谁可以发出中断请求信号。 ⑤中断向量法。 中断向量表用来保存各个中断源的中断服务程序的入口地址。 直接存储器存取方式(DMA):指数据在内存与I/O设备间的直接成块传送,即在内存与I/O设备间传送一个数据块的过程中,不需要CPU的任何干涉。只需要CPU在过程开始启动(即向设备发出“传送一块数据”的命令)与过程结束(CPU通过轮询或中断得知是否结束和下次操作是否准备就绪)时的处理,实际操作由DMA硬件直接执行完成,CPU在此传送过程中可做其他事情。 DMA传送的一般过程图: DMA处理全过程: ①外设向DMA控制器(DMAC)提出DM传送的请求。 ②DMA控制器向CPU提出请求,其请求信号通常加到CPU的保持请求输入端HOLD上。 ③CPU在完成当前的总线周期后立即对此请求做出响应,CPU的响应包括两个方面:1、CPU将有效的保持响应型号HLDA输出加到DMAC上,告诉DMAC它的请求已得到响应;2、CPU将其输出的总线信号置为高阻,这就意味着CPU放弃了对总线的控制权。 ④此时,DMAC获得了对系统总线的控制权,开始实施对系统总线的控制。同时向提出请求的外设送出DMAC的响应信号,告诉外设其请求的信号已得到响应,现在准备开始进行数据的传送。 ⑤DMAC送出地址信号和控制信号,实现数据的高速传送。 ⑥当DMAC将规定的字节数传送完时,它就将HOLD信号变为无效并加到CPU上,撤消对CPU的请求。CPU检测到无效的HOLD就知道DMAC已传送结束,CPU就送出无效的HLAC响应信号,同时重新获得系统总线的控制权,接着DMA前的总线周期继续执行下面的总线周期。 强调:DMA传送过程中无需CPU的关于,整个系统总线完全交给了DMAC,由它控制系统总线完成数据传送。输入输出处理机(IOP):通道是一个具有特殊功能的处理器,又称为输入/输出处理机,它分担了CPU的一部分功能,可以实现对外围设备的同一管理,完成外围设备与主存之间的数据传送。 |
|
|
|
只有小组成员才能发言,加入小组>>
692 浏览 0 评论
1106 浏览 1 评论
2473 浏览 5 评论
2808 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2646 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
653浏览 9评论
649浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
781浏览 6评论
628浏览 5评论
668浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 02:25 , Processed in 1.076857 second(s), Total 80, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号