176
社区成员
发帖
与我相关
我的任务
分享是CPU与外界的连接电路,是CPU与外界进行信息交换的中转站。
经典接口有:串行接口、并行接口、USB接口、键盘接口、硬盘接口、显卡接口、总线接口等
基本任务:
实现设备与总线的连接。
使CPU可以通过接口访问设备。
是采用硬件与软件相结合的方法,研究微处理器如何与外界进行最佳连接,实现高效可靠的信息交换的一门技术。
硬件起支撑作用,软件完成驱动控制。
总线结构的改变,使得接口在连接设备时硬件上要分层次。
操作系统的改变,使得通过接口访问设备时软件上要分层次。
现代微机接口技术研究内容:
(1)设备接口和应用程序
(2)总线接口和设备驱动程序
指I/O设备与本地总线之间的连接电路,并进行信息交换的中转站。
1.为什么要设置I/O设备接口
(1)微机的总线与I/O设备的信号线不兼容,需要接口进行转换。
(2)CPU与I/O设备的工作速度不兼容,需要接口进行缓冲。
(3)若由CPU直接控制I/O设备,会降低CPU工作效率。
(4)若由CPU直接控制I/O设备,对I/O设备发展不利。
2.I/O设备接口的功能
(1)执行CPU命令:通过命令寄存器解释执行CPU的命令代码。
(2)返回外设状态:通过状态寄存器向CPU报告外设及接口电路的状态。
(3)数据缓冲:通过数据寄存器进行缓冲,解决高速主机与低速外设之间的矛盾。
(4)信号转换:实现微机的总线信号与外设信号之间的转换,包括逻辑关系、时序配合、电平匹配。
(5)设备选择:通过I/O地址译码电路选择进行信息交换的设备端口。
(6)数据宽度与数据格式转换:如果外设使用串行数据,接口电路应具备数据的并串转换和数据格式转换的能力。
*并非每种接口都要求具备以上所有功能,应该根据实际情况进行设置。
3.I/O设备接口的组成
(1)硬件
包括:可编程接口芯片、端口地址译码电路、附加电路
(2)软件
包括:初始化程序段、主控程序段、辅助程序段
4.IO设备接口与CPU交换数据的方式
(1)查询方式
CPU主动查询外设是否“准备好”,如果外设未准备好,则CPU等待。
查询方式简单,易于实现。
但CPU效率很低,主要用于CPU不太繁忙的情况下。
(2)中断方式
CPU和IO设备并行工作,外设主动向CPU请求传输数据,CPU响应,二者信息交换。
提高了CPU的效率,适合实时控制以及紧急事件的处理。
(3)DMA(直接存储器存取)方式
外设与内存的数据交换交给DMA控制器控制,而CPU只需负责DMA传输的初始化和传输结束后的处理,从而简化了CPU对输入/输出的管理,而且大大提高了数据的传输速率。
适合高速度、大批量的数据传输。
5.分析与设计IO设备接口电路的基本方法
(1)两侧分析法
分析接口的两侧,接口的两侧就是CPU一侧和IO设备一侧
对于CPU一侧:要满足三大总线(即地址、数据、控制总线)在时序逻辑上的要求。
对于IO设备一侧:种类繁多,情况复杂;分析被连接IO设备的外部特性,以及被控外设的工作过程。
(2)硬软结合法
硬件方面:主要是合理选用外围接口芯片,有针对性设计附加电路
软件方面:
在DOS环境下,可以直接对硬件编程,也可以使用BIOS调用,或DOS系统功能调用。
在Windows环境下,就通过Win32的API调用来编程。
用来实现微处理器总线与PCI总线,以及PCI总线与本地总线之间的连接与信息交换的接口,是总线之间的接口。
1.总线桥与IO设备接口的区别
(1)连接的对象
IO设备接口连接的是IO设备与本地总线,总线桥连接的是总线与总线。
(2)传递信息的方法
IO设备接口是直接传递信息,硬件传递接口两端信息,是一一对应的固定关系。
桥是间接传递信息,桥两端是映射关系,是由软件的映射规则实现,可动态改变。
2.总线桥的任务
(1)负责总线与总线的连接与转换
数据宽度、工作频带及控制协议等,是一个总线转换器和控制器。
(2)完成资源信息的传递
桥内部的配置空间可以把一条总线上的资源信息映射到另一条总线上
(3)支持即插即用
桥的配置空间,为操作系统进行资源的动态分配提供支持。
3.总线桥接电路的形式
(1)单独通用的总线桥芯片
(2)和内存或IO控制器组合
软件模型:指芯片内部对外开放可编程的寄存器、命令状态数据格式、分配给寄存器的端口地址。
*在分析IO接口芯片时,主要是了解、掌握芯片的功能、外部特性和编程使用方法,而不关心其内部结构。