CPU和外设之间的数据传送方式有哪几种实际选择某种传输
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CPU与外设之间的数据传送方式有哪几种?实际选择某种传输方式时,主要依据是什么?
CPU与外设之间的数据传输有以下三种方式:程序方式、中断方式、DMA方式。
其中程序方式又可分为无条件传送方式与条件传送方式两种方式。
在CPU外设传送数据不太频繁的情况下一般采用无条件传送方式。
在CPU用于传输数据的时间较长且外设数目不多时采用条件传送方式。
在实时系统以及多个外设的系统中,为了提高CPU的效率与使系统具有实时性能,采用中断传送方式。
如I/O设备的数据传输效率较高,那么CPU与这样的外设进行数据传输是,即使尽量压缩程序查询方式与中断方式中的非数据传输时间,也仍然不能满足要求。
这是因为在这两种方式下,还存在另外一个影响速度的原因,即它们都是按字节或字来进行传输的。
为了解决这个问题,实现按数据块传输,就需要改变传输方式,这就是直接存储器传输方
式,即DMA方式。
在查询方式、中断方式与DMA方式中,分别用什么方法启动数据传输过程?
在查询方式下,是通过程序来检测接口中状态寄存器中的"准备好"(READY)位,以确定当前是否可以进行数据传输的;在中断方式下,当接口中已经有数据要往CPU输入或者准备好接收
数据时,接口会向CPU发一个外部中断请求,CPU在得到中断请求后,如果响应中断,便通过运行中断处理程序来实现输入/输出;在DMA方式下,外设要求传输数据时,接口会向DMA 控制器发DMA请求信号,DMA控制器转而往CPU发送一个总线请求信号,以请求得到总线控制权,如果得到DMA允许,那么,就可以在没有CPU参预的情况下实现DMA传输。
CPU与输入/输出设备之间传送的信息有哪几类?
CPU与输入/输出设备之间传送的信息有以下几类:数据信息、状态信息、控制信息。
什么叫端口?通常有哪几类端口?计算机对I/O端口编址时通常采用哪两种方法?在8086/8088系统中,用哪种方法对I/O 端口进行编址?
CPU与外设进行数据传输时,各类信息在接口中进入不同的寄存器,一般称这些寄存器为端口。
通常有:数据端口、状态端口、控制端口。
对端口编址的两种方法为:计算机对内存与I/O 端口统一编址;计算机对内存与I/O端口分别进行编址。
在8086/8088系统中用计算机对内存与I/O端口统一编址。
接口功能
接口是CPU与外界的连接电路,并非任何一种电路都可以叫做接口,它必须具备一些条件或功能,才称得上是接口电路。
那么,接口应具备哪些功能呢?从解决CPU与外设在连接时存
在的矛盾的观点来看,一般有如下功能:
⑴寻址能力:对送来的片选信号进行识别。
⑵输入/输出功能:根据读/写信号决定当前进行的是输入操作还是输出操作。
⑶数据转换功能:并行数据向串行数据的转换或串行数据向并行数据的转换。
⑷联络功能:就绪信号,忙信号等。
⑸中断管理:发出中斯请求信号、接收中断响应信号、发送中断类型码的功能。
并具有优先级管理功能。
⑹复位:接收复位信号,从而使接口本身以及所连的外设进行重新启动。
⑺可编程:用软件来决定其工作方式,用软件来设置有关的控制信号。
⑻错误检测:一类是传输错误。
另一类是覆盖错误。
注:一些接口还可根据具体情况设置其它的检测信息。
设置接口的原因
什么原因决定了存储器不需要接口电路,可以直接连在总线上,而输入输出设备却一定要通过接口电路与总线相连呢?
所有存储器都是用来保存信息的,功能单一,品种很有限,只有只读类型与可读可写类型;此外,存储器的存取速度基本上可以与CPU的工作速度匹配。
这些决定了存储器可以通过总线与CPU相连,即通常说的直接将存储器挂在CPU总线上。
但是外部设备不同,它有以下特征:
1.微机的外部设备多种多样
有些外设作为输入设备,有些外设作为输出设备,也有些外
设既作为输入设备又作为输出设备,还有一些外设作为检测设备或控制设备。
2.工作原理、驱动方式、信息格式、以及工作速度方面彼此差别很大
每一类设备本身可能又包括了多种工作原理不同的具体设备。
对于一个具体设备所使用的信息可能是数字式的,也可能是模拟式的,而非数字式信号必须经过转换,使其成为对应的数字信号才能送到计算机总线。
这种将模拟信号变为数字信号、或者反过来将数字信号变为模拟信号的功能是A/D、D/A接口来完成的。
有些外设的信息是并行的,有些外设的信息是串行的。
串行设备只能接收与发送串行的数字信息,而CPU却只能接收与发并行信息。
这样,串行设备必须通过接口将串行信息变为并行信息,才能送给CPU;反将CPU送出的并行信息变为串行信息,能送给串行设备。
这种变换由串行接口来完成。
可见接口也起到并行数据与串行数据的变换作用。
3.它们不能与CPU直接相连
因为CPU通过总线要与多个外设打交道,而在同一个时刻CPU通常只与一个外设交换信息,就是说,一个外设不能长期与CPU相连,只有被CPU选中的外设,才接收数据总线上的数据或者将外部信息送到数据总线上。
除了上面这些原因外,外设的工作速度通常比CPU的速度低得多,而且各种外设的工作速度互不相同,这就要求接口电路对输入输出过程能起一个缓冲与联络的作用。
7、某一个微机系统中,有8块I/O接口芯片,每个芯片占有8个端口地址,若起始地址为300H,8块芯片的地址连续分布,用74LS138作译码器,试画出端口译码电路,并说明每个芯片的端口地址范围。