《计算机组成原理》输入/输出系统 |
您所在的位置:网站首页 › 在计算机中,输入输出端口编址的方式主要有 › 《计算机组成原理》输入/输出系统 |
1.I/O接口(I/O控制器)是主机和外设之间的交接界面,通过接口可以实现主机和外设之间的信息交换。主机和外设具有各自的工作特点,它们在信息形式和工作速度上具有很大的差异,接口正是为了解决这些差异而设置的。
【I/O接口即I/O控制器,其功能是接受主机发送的I/O控制信号,并实现主机和外部设备之间的信息交换。】 1.1I/O接口的功能I/O接口的主要功能: 1)进行地址译码和设备选择。CPU送来选择外设地址码后,接口必须对地址进行译码以产生设备选择信息,使主机能和指定外设交换信息。 2)实现主机和外设的通信联络控制。解决主机与外设时序配合问题,协调不同工作速度的外设和主机之间交换信息,以保证整个计算机系统能统一、协调地工作。 3)实现数据缓冲。CPU与外设之间的速度往往不匹配,为消除速度差异,接口必须设置数据缓冲寄存器,用于数据的暂存,以避免因速度不一致而丢失数据。 4)信号格式的转换。外设与主机两者的电平、数据格式都可能存在差异,接口应提供计算机与外设的信号格式的转换功能,如电平转换、并/串或串/并转换、模/数或数/模转换等。 5)传送控制命令和转态信息。CPU要启动某一外设时,通过接口中的命令寄存器向外设发出启动命令;外设准备就绪时,则将“准备好”状态信息送回接口中的状态寄存器,并反馈给CPU。外设向CPU提出中断请求时,CPU也应有相应的响应信号反馈给外设。 简述: 接口的功能(要解决的问题) 1.实现主机与外设的通信联络控制 2.进行地址译码和设备选择 3.实现数据缓冲 4.进行信号格式的转换 5.传送控制命令和状态信息 接口的功能(具体操作) 1.设备选择 2.传送命令 3.传送数据 4.反映I/O设备的工作状态 1.2I/O接口的基本结构【注意:接口和端口是两个不同的概念。端口是指接口电路中可以进行读/写的寄存器,若干端口加上相应的控制逻辑才可以组成接口。】 1.3I/O接口的类型从不同角度看,I/O接口可以分为不同的类型。 1)按数据传送方式可分为并行接口(一字节或一个字的所有位同时传送)和串行接口(一位一位地传送),接口要完成数据格式的转换。 【注意:这里所说的数据传送方式指的是外设和接口一侧的传送方式。】 2)按主机访问I/O设备的控制方式可分为程序查询接口、中断接口和DMA接口等。 3)按功能选择的灵活性可分为编程接口和不可编程接口。 1.4I/O端口及其编址I/O端口是指接口电路中可被CPU直接访问的寄存器,主要有数据端口、状态端口和控制端口,若干端口加上相应的控制逻辑电路组成接口。通常,CPU能对数据端口执行读写操作,但对转态端口只能执行读操作,对控制端口只能执行写操作。 I/O端口要想能够被CPU访问,就必须要对各个端口进行编号,每个端口对应一个端口地址。而对I/O端口的编址方式与存储器统一编址和独立编址两种。 1)统一编址,又称存储器映射方式,是指把I/O端口当作存储器的单元进行地址分配,这种方式CPU不需要设置专门的I/O指令,用统一的访存指令就可以访问I/O端口。 优点:不需要专门的输入/输出指令,可使CPU访问I/O的操作更灵活、更方便,还可使端口有较大的编址空间。 缺点:端口占用存储器地址,使内存容量变小,而且利用存储器编址的I/O设备进行数据输入/输出操作,执行速度较慢。 输入/输出系统实现主机与I/O设备之间的数据传送,可以才用不同的控制方式,各种方式在代价、性能、解决问题的着重点等方面各不相同,常用的I/O方式有程序查询、程序中断、DMA和通道等,其中前两种方式更依赖于CPU中程序指令的执行。 2.1程序查询方式 信息交换的控制完全由CPU执行程序实现,程序查询方式接口中设置一个数据缓冲器(数据端口)和一个设备状态寄存器(状态端口)。主机进行I/O操作时,先发出询问信号,读取设备的状态并根据设备状态决定下一步操作究竟是进行数据传送还是等待。 程序查询方式的工作流程如下: ①CPU执行初始化程序,并预置传送参数。 ②向I/O接口发出命令字,启动I/O设备。 ③从外设接口读取其转态信息。 ④CPU不断查询I/O设备状态,直到外设准备就绪 ⑤传送一次数据。 ⑥修改地址和计算器参数。 ⑦判断传送是否结束,若未结束转第③步,直到计数器为0。 在这种控制方式下,CPU一旦启动I/O,就必须停止现行程序的运行,并在现行程序中插入一段程序。程序查询方式的主要特点是CPU有“踏步”等待现象,CPU与I/O串行工作。 优点:这种方式的接口设计简单、设备量少。 缺点:CPU在信息传送过程中要花费很多时间来查询和等待,而且在一段时间内只能和一台外设交换信息,效率大大降低。 程序中断是指计算机执行现行程序的过程中,出现某些急需处理的异常情况或特殊请求,CPU暂时终止现行程序,而转去对这些异常情况或特殊请求进行处理,处理完毕后再返回到现行程序的断点处,继续执行原程序。早期的中断技术是为了处理数据传送。 中断技术的主要功能: ①实现CPU与I/O设备的并行工作。 ②处理硬件故障和软件错误。 ③实现人机交互,用户干预机器需要用到中断系统。 ④实现多道程序、分时操作,多道程序的切换需借助于中断系统。 ⑤实现处理需要借助中断系统来实现快速响应。 ⑥实现应用程序和操作系统(管态程序)的切换,称为“软中断”。 ⑦多处理器系统中处理器之间的信息交流和任务切换。 程序中断方式的思想:CPU在程序中安排好在某个时机启动某台外设,然后CPU继续执行当前的程序,不需要像查询方式那样一直等待外设准备就绪。在可以响应中断的条件下,CPU暂时终止正在执行的程序,转去执行中断服务程序为外设服务,在中断服务程序中完成一次主机与外设之间的数据传送,传送完成后,CPU返回原来的程序。
DMA方式的特点 主存和DMA接口之间有一条直接数据通路。由于DMA方式传送数据不需要经过CPU,因此不必中断现行程序,i/o与主机并行工作,程序和传送并行工作。 DMA方式具有下列特点: 它使主存与CPU的固定联系脱钩,主存既可被CPU访问,又可被外设访问。在数据块传送时,主存地址的确定、传送数据的计数等都由硬件电路直接实现。主存中要开辟专用缓冲区,及时供给和接收外设的数据。DMA传送速度快,CPU和外设并行工作,提高了系统效率。DMA在传送开始前要通过程序进行预处理,结束后要通过中断方式进行后处理。 CPU对DMA请求和中断请求的响应时间是否一样? 答:不一样。DMA方式下,向CPU请求的是总线控制权,要求CPU让出总线控制权给CPU控制器,由DMA控制器来控制总线完成主存和外设之间的数据交换,所以CPU只要用完总线就可以响应请求,释放总线,让出总线控制权。CPU总是在一次总线事务完成后响应,所以DMA响应时间应该少于一个总线周期;而中断方式下请求的是CPU时间,要求CPU中止正在执行的程序,转到中断服务程序去执行,通过执行中断服务程序,对中断事件进行相应的处理。CPU总是要等到下一条指令执行结束后,才去查询有无中断请求,所以响应时间少于一个指令周期的时间。 【注意:在程序查询方式中,CPU与外设串行工作,传送与主程序串行工作。在中断方式中,CPU与外设并行工作,当数据准备好时仍然需中断主程序以执行数据传送,因此传送与主程序仍是串行的。在DMA方式中,CPU与外设、传送与主程序都是并行的。】注意:只有具有DMA接口的设备才能产生DMA请求 即使当前设备是高速设备或需要与主机批量交换数据,若没有DMA接口的话 也不产生DMA请求。 引用内容来源------王道 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |