1、第六章 输入输出系统,1. CPU主存(内存)计算机主机,2. 主机以外的设备统称为外部设备,即输入输出设备。,3. 系统总线I/O接口I/O设备信息传送的控制机制称为输入输 出系统。,下面我们分别来讨论。,6.1 I/O设备,一、常用输入设备简介,1. 键盘,由107个按键组成,按键接收原理采用电容式按键,这种按键没有触点,简单可靠,使用寿命长。,2. 鼠标:相对坐标输入设备,用于输入位移量,屏幕定位。分机械式和光电式两种,(一般用光电式)。,4. 条形码识别仪:由平行的“条”和“空”组合,主要用于超市的商品,图书管理等领域。,二、常用输出设备简介,1. 显示设备:有阴极射线管(CRT)显示
2、器、液晶显示器(LCD)、等离子显示器(PDP)等。,打印机:分为:针式打印机、 喷墨打印机、 激光打印机价格低 价格低 价格贵但速度慢,噪音大; 噪音小,但速度 但效果好,速度快较慢,3. 数字照相机 数字照相机将光学信号转换成数字式电信号,并存储在内部的存储器中 。,6.2 系统总线,总线:总线是一组连接多个部件的公共信号线,是一组多个部件分时共享的信息传输线。,系统总线:计算机系统内各部件(CPU部件、主存部件、各输入输出部件)间的公共通信线路。,为保证总线所传输的信息的有效性,总线信息应具有单一性:在同一时刻至多只能有一个部件向总线发送信息,但可以有多个部件同时接收总线信息。,1. 总
3、线电路: 输出挂在总线上的部件需通过“总线电路”向总线发送信息。,总线电路由三态输出器件(TSL器件)承担。,例用三态电路构造的总线电路,C1、C2、C3 三个控制信号互斥。,二、双总线结构,将速度较低的I/O设备从系统总线上分出去,而形成系统总线和I/O总线的双总线结构如图104(b)所示。,优点:使CPU与主存之间的通信和I/O通信隔开,提高了系统的性能。,三、三总线结构,随着外围设备高速发展,有的外设速度提高迅速,原有I/O总线已不适应,如图形、视频和网络等外设已不能在老I/O总线上运行,所以在系统总线和I/O总线之间增加一条高速总线用以连接高速外设,如图104(c)所示。,6.2.2
4、系统总线种类,系统总线种类包括:数据总线、地址总线、控制总线和电源线。,在现代计算机中有的系统总线把地址总线与数据总线合用,这样能减少芯片引脚数目。这种技术称为地址数据复用技术,即地址信号与数据信息,在同一组信号线内传送。它是通过总线周期的时序划分来区别的。当今的PCI总线就使用这个技术,它可以成块传送数据,在一个总线周期中,总线先用于指定地址传送,然后用于传输数据。,6.2.3 总线的时序(总线的通信方式),例同步读操作的时序示意图,二、异步控制总线,主要特征是没有统一的时钟周期划分,采用应答方式实现总线的传送操作,所需时间视需要而定。,t0时刻:CPU将外设端口地址送到地址总线,并发读命令
5、read;,t1时刻:让主同步信号MSYN有效(留出 t0t1这段时间是为了地址信号到达设备并译码需要花的时间);,t2时刻: 某I/O设备收到读命令并完成地址译码后,又收到MSYN主同步控制信号,开始动作,将输入给CPU的数据放在数据总线上,并让从同步信号SSYN有效,作为对主控设备MSYN信号的应答;MSYN的有效才引起SSYN有效。,t3时刻:SSYN信号传到主控设备CPU,意味着外设的数据已在数据总线上准备好,主控设备CPU在t3时刻接收数据总线上的数据,与此同时撤下MSYN信号作为应答;,t4时刻:主控设备CPU再撤去地址信息和读命令;,t5时刻: MSYN的下降传到了从设备,从设备
6、知道主设备已接收数据,撤去总线上的数据,同时降下SSYN信号,到此一次异步总线传送结束。,同步时序控制:实现和控制简单,但是时间利用不合理。 异步时序控制:时间利用合理,但实现和控制较复杂。 一般采用扩展方式的同步时序总线。,总线裁决控制方式分为集中式和分布式。裁决电路集中在一起的称为集中式控制。裁决电路分散于总线上的各个部件中称为分布式控制。由于目前计算机系统以集中式为主,本节只讨论集中式控制方式。集中式控制主要有链式查询方式、计数器查询方式和独立请求方式。,计数器查询方式,在计数器查询方式中,总线上的任一设备申请使用总线时,通过BR线发出总线请求。,总线控制器接到请求信号以后,按计数器的值
7、对各设备进行查询,以寻找发出总线请求的设备,计数值与设备号相同的设备可以发出BB信号并使用总线,如图所示。,计数器的计数值可以从某个初始值开始,也可以从上一次计数的终止值开始。如果计数值从一个固定的值开始,则等效于链式查询方式,各设备使用总线的优先级是固定的。如果计数值从上次终止值开始,则每个设备使用总线的机会相等。,计数器查询方式的优先级设置比较灵活,但它需要额外的计数线路,而且计数线路的数量限制了设备的数量。,独立请求方式,每一个设备都配有一个BR的总线请求信号,控制器内部有一个优先级裁决电路,决定优先响应哪一个总线请求。,优点:响应速度快,BA直接发送到有关设备,不必在设备间传递或查询,
8、而且对优先级的控制十分灵活。 缺点:受到请求信号线和可用信号线的限制。,一般采用链式和独立请求相结合。,EISA总线 (80386),数据线扩展到了位,带宽达到了33.3MB/s。,PCI总线:(Peripheral component interconnection)(外围部件互连)总线频率为33 MHZ66MHZ133MHZ, 可以直接连接高速外部设备。同步时序总线,对地址信号和数据信号分时复用,64根线,采用集中式的总线仲裁方式。,AGP总线(加速图形接口总线)AGP总线把主存和显存连接起来,不再走PCI总线。,USB总线(通用串行总线)主要用于连接低速输入输出设备。带宽为1.5MB/s
9、。,图10-10 现代微机总线结构,一、/设备在结构和工作原理上与主机有很大的差异,它们都有各自单独的时钟,独立的时序控制和状态标准。二、主机与外部设备工作在不同速度下,它们速度之间的差别一般能够达到几个数量级。三、同时主机与外设在数据格式上也不相同:主机采用二进制编码表示数据,而外部设备一般采用ASCII编码。因此在主机与外设进行数据交换时必须引入相应的逻辑部件解决两者之间的同步与协调、数据格式转换等问题,这些逻辑部件就称为输入输出接口,简称为接口。,6.3 输入输出接口,一、I/O接口的基本功能,寻址接口逻辑接收总线送来的寻址信息,经过译码,选择该接口中的某个寄存器。(寻址外设),数据传送
10、与缓冲接口中设置一个或数个数据缓冲寄存器,提供数据缓冲,实现速度匹配。,数据格式变换、电平变换等预处理串并转换,信号电平的转换,(电源,电源),控制逻辑主机通过总线向接口传送命令信息,产生相应的操作命令发给设备。接口形成设备及接口本身的状态信息,回送给CPU。,二、接口的分类,按数据传送格式划分串行接口:接口和设备之间串行传送数据,接口与主机之间并行传送数据,要实现串并转换。并行接口:接口和设备之间、接口与主机之间都以并行方式传送数据。,按时序控制方式划分同步接口:与同步总线连接的接口,接口与主机间的信息传送由统一的时序信号控制。异步接口:与异步总线相连的接口,接口与主机间的信息传送采用异步应
11、答的控制方式。,按信息传送的控制方式划分中断接口:如果主机与外设之间采用中断方式传送信息,则接口中需增加中断控制线路,这样的接口称为中断接口。DMA接口:如果主机与高速外设之间的信息传送采用DMA 方式控制,则接口中需有相应的DMA逻辑,这样的接口称为DMA 接口。,三、接口寻址,统一编址方式,将I/O接口中有关的寄存器与内存统一编址,统一指令。优点:指令系统中不专门设置I/O指令,可用访存指令来进行输入输出操作,程序设计比较简单。 缺点:外设接口占用了存储器的地址空间,使访存空间变小,另外会影响主存储器的管理和扩展。,单独编址法把主存储器地址空间和I/O接口地址空间分开处理,设置专门的I/O
12、指令。优点:不挤占内存空间。缺点:指令系统中专设I/O指令,增加硬件开销。,四、信息传送的控制方式,主机与外设之间的信息交换: 程序直接控制方式(程序查询方式) 程序中断控制方式 DMA(直接存储器访问)控制方式 通道控制方式下面我们分小节来讲述。,6.4 程序直接控制方式,定义:程序直接控制方式就是通过 CPU执行程序来控制主机和外围设备之间的信息传送。(又称为程序查询方式),多个设备的查询流程示意,程序查询方式的接口电路,DBR:数据缓冲器,用于存放欲传送的数据。 D为完成触发器,B为工作触发器。,优点:硬件控制电路简单。缺点: CPU启动外设后,只能查询等待外设的状态, CPU利用率大大
13、降低。 CPU从启动到交换数据,所有操作均由程序事先安排, CPU不能响应随机请求,无实时处理能力。适用场合:主要用于对CPU的速度和效率要求不高的场合。,6.5 程序中断控制方式,中断定义: CPU在运行时,出现某种紧急事件, CPU暂时停下现行程序,转向为该事件服务,等事件处理完毕后,再返回原程序继续执行,这个过程称为中断。,中断过程实质上是程序切换过程。现行程序中断服务程序现行程序,类似于子程序调用和返回。 (随机性),6.5.1 基本概念,中断源引起中断的事件称为中断源。一般有以下几种:()输入输出事件,如输入输出设备操作完成。()软中断,如 ,在程序适当处插入软中断指令,用以调试程序
14、或调用系统功能程序。()故障处理:硬件故障如掉电、电压不稳等。软件故障如定点溢出、除法错等。,中断请求:中断源向CPU发出请求CPU为本中断源服务的信号,直至得到CPU响应为止。,中断优先级:在同时出现了几个中断请求的情况下,CPU对中断源响应的次序。,中断响应:指CPU暂时停止现行程序的运行并把当前的现场信息保存到堆栈,然后转去为优先级最高的中断请求源服务。,中断屏蔽:使某种中断源暂时不起作用的措施。不允许它提出中断请求,或提出的中断请求送不到CPU。,中断控制系统: 计算机为实现中断功能而采用的软件 和硬件的统称。,中断的全过程对中断请求的整个处理过程是由硬件和软件结合起来而形成的一套中断
15、请求机构实施的,一般包括5个步骤,如图所示。,6.5.2 中断请求,1. 中断请求标记(中断源识别),中断请求触发器(INTR):用于保存各中断源的请求 每个中断源一位 可以在CPU内部,也可以在外部(8259),中断请求标记寄存器,划分中断源等级的规则为: 1。 故障引发的中断应列为最高级中断,例如电源故障、主存故障等; 2。 操作速度快的外设优先级要高于低速外设,如磁盘优先级高于键盘和打印机等。 3。 输入操作的请求优先于输出操作的请求。,链式查询原理,响应链电路,下图是用优先级编码器和比较器构成的中断优先级排队电路,图中设有8个独立的中断请求源,并送入中断请求寄存器,当任一个中断请求时,
16、即可有一个中断请求信号产生。但它能否送至CPU的中断请求线,还要受比较器的控制,如果优先权失效信号为低电平,则与门2关闭。,有中断请求信号发生,如IR等。 该中断请求未被屏蔽。 CPU处于开中断状态,即允许中断触发器 TIEN1。 在一条指令结束时响应(因为程序中断的过程是程序切换过程,显然不能在一条指令执行的中间就切换)。,3. 中断响应过程,关中断:为了保证本次中断响应过程不受干扰,CPU在进入中断周期后,便关中断。使 TIEN0。,保存断点:将程序计数器PC的内容保存起来,一般是压入堆栈。PC为后继指令地址。,获取中断服务程序入口地址:CPU根据中断源类型码生成的向量地址,访问中断向量表
17、,从中读取中断服务程序入口地址,送入PC,下一步进入取指周期。,以上响应阶段的操作是在中断周期中直接依靠硬件实现的,并非执行程序指令,自然也不需编制程序实现,所以称为中断隐指令操作。,6.5.5 中断处理,保护现场:保护通用寄存器的内容,一般也是压入堆栈。,3. 执行中断服务子程序,完成特定的任务:每个中断源完成的任务不同。,5. 恢复现场。,6. 开中断。,7. 中断返回主程序指令。,2. 开中断,,4. 关中断,中断处理过程,优点:CPU和外设并行工作,提高了CPU的利用率。能响 应随机事件。,缺点:每响应一次中断,就要进行一系列保护断点和现场、开关中断的工作,所以响应速度不是很快,并 且
18、每次只能交换一个字,不能进行批量传送。另外,硬件电路较复杂。,应用场合:适合中、低速外围设备与主机进行信息交换的场合。,6.6.1 DMA控制器基本组成,1. 地址缓冲区寄存器:用于存入内存中要交换的数据的首地址。,2. 字计数器:用于记录传送数据块的长度,其值可以是一个由补码表示的负值,每传送一个字,字计数器加1,当计数器溢出即最高位产生进位时,表示这批数据传送完毕。,3. 外设地址寄存器:该寄存器存放I/O设备的设备码,或者表示设备信息存储区的寻址信息,如磁盘数据所在的扇区号、盘面号和柱面号等。,4. 数据缓冲寄存器:用来暂存I/O设备与主存传送的数据,调节速度。,准备阶段:,CPU执行几
19、条输入输出指令,向DMA控制器送主存缓冲区首址,送设备地址,送数据传送个数并指出数据传送方向,然后启动DMA工作。完成这些工作后,CPU继续执行原来的程序,不再管理DMA控制器。,2. 传送阶段:,当外设准备好发送数据(输入)或接受数据(输出)时,它发出DMA请求,CPU在本机器周期执行结束后响应该请求,并使CPU的总线驱动器处于第三态(高阻态);,之后,CPU与系统总线脱离,而DMA控制器接管数据总线与地址总线的控制,并向内存提供地址,于是内存与外设之间进行数据交换。每交换一个字,则地址计数器和字计数器“加”1,当字计数器值达零时,DMA操作结束,DMA控制器向CPU提出中断请求。,6.7 通道控制方式,一、字节多路通道 二、选择通道 三、数组多路通道,