永发信息网

14.cpu和输入输出设备之间传送的信息有哪几类

答案:2  悬赏:60  手机版
解决时间 2021-02-11 17:09
14.cpu和输入输出设备之间传送的信息有哪几类
最佳答案
CPU与I/O设备的工作往往是异步的,很难保证当CPU执行输入操作时,外设已把要输入的信息准备好了;而当CPU执行输出时,外设的寄存器(用于存放CPU输出数据的寄存器)一定是空的。所以,通常程序控制的传送方式在传送之前,必须要查询一下外设的状态,当外设准备就绪了才传送;若未准备好,则CPU等待。
1.查询式输入
在输入时,CPU必须了解外设的状态,看外设是否准备好。
当输入设备的数据已准备好后,发出一个选通信号,一边把数据送入锁存器,一边使D触发器为"1",给出"准备好"Ready的状态信号。而数据与状态必须由不同的端口输至CPU数据总线。当CPU要由外设输入信息时,先输入状态信息,检查数据是否已准备好,当数据已经准备好后,才输入数据。读入数据的指令,使状态信息清"0".
这种查询输入方式的程序流程图,如图8-11所示。
2.查询式输出
同样的,在输出时CPU也必须了解外设的状态,看外设是否有空(即外设不是正处在输出状态,或外设的数据寄存器是空的,可以接收CPU输出的信息),若有空,则CPU执行输出指令,否则就等待。
全部回答
8.2 CPU与外设数据传送的方式
8.2.1 查询传送方式
CPU与I/O设备的工作往往是异步的,很难保证当CPU执行输入操作时,外设已把要输入的信息准备好了;而当CPU执行输出时,外设的寄存器(用于存放CPU输出数据的寄存器)一定是空的.所以,通常程序控制的传送方式在传送之前,必须要查询一下外设的状态,当外设准备就绪了才传送;若未准备好,则CPU等待.
1.查询式输入
在输入时,CPU必须了解外设的状态,看外设是否准备好.
当输入设备的数据已准备好后,发出一个选通信号,一边把数据送入锁存器,一边使D触发器为"1",给出"准备好"Ready的状态信号.而数据与状态必须由不同的端口输至CPU数据总线.当CPU要由外设输入信息时,先输入状态信息,检查数据是否已准备好,当数据已经准备好后,才输入数据.读入数据的指令,使状态信息清"0".
这种查询输入方式的程序流程图,如图8-11所示.
2.查询式输出
同样的,在输出时CPU也必须了解外设的状态,看外设是否有空(即外设不是正处在输出状态,或外设的数据寄存器是空的,可以接收CPU输出的信息),若有空,则CPU执行输出指令,否则就等待.
查询式输出的程序流程图如图8-14所示.
8.2.2 中断传送方式
在上述的查询传送方式中,CPU要不断地询问外设,当外设没有准备好时,CPU要等待,不能进行别的操作,这样就浪费了CPU的时间.而且许多外设的速度是较低的,如键盘,打印机等等,它们输入或输出一个数据的速度是很慢的,在这个过程中,CPU可以执行大量的指令.为了提高CPU的效率,可采用中断的传送方式:在输入时,若外设的输入数据已存入寄存器;在输出时,若外设已把上一个数据输出,输出寄存器已空,由外设向CPU 发出中断请求,CPU就暂停原执行的程序( 即实现中断),转去执行输入或输出操作(中断服务),待输入输出操作完成后即返回,CPU再继续执行原来的程序.这样就可以大大提高CPU的效率,而且允许CPU与外设(甚至多个外设)同时工作.
8.2.3 直接数据通道传送(DMA)
中断传送仍是由CPU通过程序来传送,每次要保护断点,保护现场需用多条指令,每条指令要有取指和执行时间.这对于一个高速I/O设备,以及成组交换数据的情况,例如磁盘与内存间的信息交换,就显得速度太慢了.
所以希望用硬件在外设与内存间直接进行数据交换(DMA),而不通过CPU,这样数据传送的速度的上限就取决于存储器的工作速度.但是,通常系统的地址和数据总线以及一些控制信号线(例如IO/,,等)是由CPU管理的.在DMA方式时,就希望CPU把这些总线让出来(即CPU连到这些总线上的线处于第三态——高阻状态),而由DMA控制器接管,控制传送的字节数,判断DMA是否结束,以及发出DMA结束等信号.这些都是由硬件实现的.
1.DMA控制器的基本功能
DMAC是控制存储器和外部设备之间直接高速地传送数据的硬件电路,它应能取代CPU,用硬件完成图8-17所示的各项功能.具体地说应具有如下功能:
(1)能接收外设的请求,向CPU发出DMA请求信号.
(2)当CPU发出DMA响应信号之后,接管对总线的控制,进入DMA方式.
(3)能寻址存储器,即能输出地址信息和修改地址.
(4)能向存储器和外设发出相应的读/写控制信号.
(5)能控制传送的字节数,判断DMA传送是否结束.
(6)在DMA传送结束以后,能结束DMA请求信号,释放总线,使CPU恢复正常工作.
2.DMA传送方式
各种DMAC一般都有两种基本的DMA传送方式:
(1)单字节方式:每次DMA请求只传送一个字节数据,每传送完一个字节,都撤除DMA请求信号,释放总线.
(2)字节(字符)组方式:每次DMA请求连续传送一个数据块,待规定长度的数据块传送完了以后,才撤除DMA请求,释放总线.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
壳牌 道达尔 哪个好
情绪的信号功能是通过()来实现的。A.动机B.意
英格生物工程有限公司在哪里啊,我有事要去这
CSS属性名在JS里面能用变量表示么?求大神解
10的负4次方和10的负5次方分别是多少
两张中国银行信用卡一个有临时额度°另外一张
长沙火车站到湖南广播电视大学
老婆爱上个离婚网友,要跟我离婚。我可以起诉
好朋友一直坚持不靠谱的梦想,要不要
12款福特锐界显示扳手
梦幻西游草编地毯在哪?
如图所示为高等植物的叶肉细胞部分结构图,下
双桥村这个地址在什么地方,我要处理点事
一个人去深圳旅游
在一个等腰三角形内,顶角的度数是一个底角度
推荐资讯
豪美发设计中心地址在什么地方,我要处理点事
英朗可变助力转向系统灯怎么消除
三人合伙做生意,每人投20万,一年后盈利100
下列事件和现象,对民族资本主义的产生和发展
中嘉娱乐城地址在什么地方,我要处理点事
消防喷头追位与装修吊顶封板的施工先后顺序?
为什么男朋友不给我买假卵
北发大酒店-洗手间怎么去啊,我要去那办事
日本罗马音中TO和TOU的读法
岳阳市第四中学后门地址在什么地方,想过去办
【商品经济的基本矛盾】以私有制为基础的商品
帮我把 天然呆 这个词用符号装饰成网名一下,
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?