计算机组成原理(七)输入输出系统
7.1 I/O系统基本概念
I/O系统由I/O软件和I/O硬件两部分构成。
I/O硬件包括外部设备、I/O接口、I/O总线等。
I/O设备就是可以将数据输入到计算机,或者可以接收计算机输出数据的外部设备
I/O接口:又称I/O控制器(I/O Controller)、设备控制器,负责协调主机与外部设备之间的数据传输

I/O基本控制方式有(具体见7.4)
程序查询方式:CPU不断轮询检查I/O控制器中的“状态寄存器”,检测到状态为“已完成”之后,再从数据寄存器取出输入数据
程序中断方式:等待键盘I/O时CPU可以先去执行其他程序,键盘I/O完成后I/O控制器向CPU发出中断请求,CPU响应中断请求,并取走输入数据
DMA控制方式:主存与高速I/O设备之间有一条直接数据通路(DMA总线)。CPU向DMA接口发出“读/写”命令,并指明主存地址、磁盘地址、读写数据量等参数。DMA控制器自动控制磁盘与主存的数据读写,每完成一整块数据读写(如1KB为一整块),才向CPU发出一次中断请求。
通道可以识别并执行一系列通道指令,通道指令种类、功能通常比较单一
CPU向通道发出I/O指令。指明通道程序在内存中的位置,并指明要操作的是哪个I/O设备。CPU就可以去做其他事情
通道执行内存中的通道程序,控制I/O设备完成一系列任务
通道执行完规定的任务后,向CPU发出中断请求,之后CPU对中断进行处理
I/O 软件包括驱动程序、用户程序、管理程序、升级补丁等。通常采用I/O指令和通道指令实现主机和I/O设备的信息交换。
I/O 指令是CPU 指令的一部分

通道指令是通道能识别的指令,通道程序提前编制好放在主存中。在含有通道的计算机中,CPU执行I/O指令对通道发出命令,由通道执行一系列通道指令,代替CPU对I/O设备进行管理
7.2外部设备
外部设备也称外围设备,是除了主机以外的、能直接或间接与计算机交换信息的装置。
7.2.1 输入输出设备
7.2.1.1 输入设备
输入设备用于向计算机系统输入命令和文本、数据等信息的部件。键盘和鼠标是最基本的输入设备。
7.2.1.1-1 键盘
键盘是最常用的输入设备,通过它可发出命令或输入数据。每个键相当于一个开关,当按下键时,电信号连通;当松开键时,弹簧把键弹起,电信号断开。
键盘输入信息可分为3个步骤:
查出按下的是哪个键;
将该键翻译成能被主机接收的编码,如ASCII码;
将编码传送给主机。
7.2.1.1-2 鼠标
鼠标是常用的定位输入设备,它把用户的操作与计算机屏幕上的位置信息相联系。常用的鼠标有机械式和光电式两种。
工作原理:当鼠标在平面上移动时,其底部传感器把运动的方向和距离检测出来,从而控制光标做相应运动。
7.2.1.2 输出设备
7.2.1.2-1 显示器
显示器有以下主要参数
屏幕大小:以对角线长度表示,常用的有12~29英寸等。
分辨率:所能表示的像素个数,屏幕上的每一个光点就是一个像素,以宽、高的像素的乘积表示,例如,800×600、1024×768和1280×1024等。
灰度级:灰度级是指黑白显示器中所显示的像素点的亮暗差别,在彩色显示器中则表现为颜色的不同,灰度级越多,图像层次越清楚逼真,典型的有8位(256级)、16位等。n位可以表示 种不同的亮度或颜色。
刷新:光点只能保持极短的时间便会消失,为此必须在光点消失之前再重新扫描显示一遍,这个过程称为刷新。
刷新频率:单位时间内扫描整个屏幕内容的次数,按照人的视觉生理,刷新频率大于30Hz时才不会感到闪烁,通常显示器刷新频率在60~120Hz。
显示存储器(VRAM)也称刷新存储器,为了不断提高刷新图像的信号,必须把一帧图像信息存储在刷新存储器中。其存储容量由图像分辨率和灰度级决定,分辨率越高,灰度级越多,刷新存储器容量越大。


按所用的显示器件分类
阴极射线管(CRT)显示器
CRT显示器主要由电子枪、偏转线圈、荫罩、高压石墨电极和荧光粉涂层及玻璃外壳5部分组成。具有可视角度大、无坏点、色彩还原度高、色度均匀、可调节的多分辨率模式、响应时间极短等特点,按显示信息内容不同可分为
字符显示器。显示字符的方法以点阵为基础。点阵是指由m×n个点组成的阵列。点阵的多少取决于显示字符的质量和字符窗口的大小。字符窗口是指每个字符在屏幕上所占的点数,它包括字符显示点阵和字符间隔。将点阵存入由ROM构成的字符发生器中,在CRT进行光栅扫描的过程中,从字符发生器中依次读出某个字符的点阵,按照点阵中0和1代码不同控制扫描电子束的开或关,从而在屏幕上显示出字符。对应于每个字符窗口,所需显示字符的ASCII代码被存放在视频存储器VRAM中,以备刷新。
图形显示器。将所显示图形的一组坐标点和绘图命令组成显示文件存放在缓冲存储器中,缓存中的显示文件传送给矢量(线段)产生器,产生相应的模拟电压,直接控制电子束在屏幕上的移动。为了在屏幕上保留持久稳定的图像,需要按一定的频率对屏幕进行反复刷新。这种显示器的优点是分辨率高且显示的曲线平滑。目前高质量的图形显示器采用这种随机扫描方式。缺点是当显示复杂图形时,会有闪烁感。
图像显示器 图形显示器主要显示矢量图形,比较规则,而图像显示器可以显示丰富多彩的图像信息
利用液晶的电光效应,由图像信号电压直接控制薄膜晶体管,再间接控制液晶分子的光学特性来实现图像的显示。具有体积小、重量轻、省电、无辐射、绿色环保、画面柔、不伤眼等特点。
液晶显示器(LCD)
利用液晶的电光效应,由图像信号电压直接控制薄膜晶体管,再间接控制液晶分子的光学特性来实现图像的显示。具有体积小、重量轻、省电、无辐射、绿色环保、画面柔、不伤眼等特点。
LED(发光二极管)显示器
原理:通过控制半导体发光二极管进行显示,用来显示文字、图形、图像等各种信息。与LCD相比,LED显示器在亮度、功耗、可视角度和刷新速率等方面都更具优势。
7.2.1.2-2 打印机(了解即可)
打印机是计算机的输出设备之一,用于将计算机处理结果打印在相关介质上。
按印字原理不同可分为
击打式打印机:利用机械动作使印字机构与色带和纸相撞而打印字符,优点:设备成本低,印字质量好;缺点:噪声大,速度慢
非击打式打印机:采用电、磁、光、喷墨等物理、化学方法来印刷字符,优点:速度快,噪声小;缺点:成本高
按打印机工作方式不同可分为
串行打印机:逐字打印,速度慢
行式打印机:逐行打印,速度快
按工作方式可分为
针式打印机:在联机状态下,主机发出打印命令,经接口、检测和控制电路,间歇驱动纵向送纸和打印头横向移动,同时驱动打印机间歇冲击色带,在纸上打印出所需内容。它工作原理简单,造价低廉,耗材(色带)便宜,但打印分辨率和打印速度不够高。
喷墨式打印机:带电的喷墨雾点经过电极偏转后,直接在纸上形成所需字形。彩色喷墨打印机基于三基色原理,即分别喷射3种颜色墨滴,按一定的比例混合出所要求的颜色。打印噪声小,可实现高质量彩色打印,通常打印速度比针式打印机快;但防水性差,高质量打印需要专用打印纸。
激光打印机:计算机输出的二进制信息,经过调制后的激光束扫描,在感光鼓上形成潜像,再经过显影、转印和定影,便在纸上得到所需的字符或图像。打印质量高、速度快、噪声小、处理能力强;但耗材多、价格较贵、不能复写打印多份,且对
纸张的要求高。
7.2.2 外存储器
所谓“磁表面存储”,是指把某些磁性材料薄薄地涂在金属铝或塑料表面上作为载磁体来存储信息。磁盘存储器、磁带存储器和磁鼓存储器均属于磁表面存储器。
磁表面存储器的优点:
存储容量大,位价格低;
记录介质可以重复使用;
记录信息可以长期保存而不丢失,甚至可以脱机存档;
非破坏性读出,读出时不需要再生。
磁表面存储器的缺点:
存取速度慢;
机械结构复杂;
对工作环境要求较高。
7.2.2-1 磁盘存储器
7.2.2-1.1 磁盘设备的组成
一块硬盘含有若干个记录面,每个记录面划分为若干条磁道,而每条磁道又划分为若干个扇区,扇区(也称块)是磁盘读写的最小单位,也就是说磁盘按块存取。
磁头数(Heads)即记录面数,表示硬盘总共有多少个磁头,磁头用于读取/写入盘片上记录面的信息,一个记录面对应一个磁头。
柱面数(Cylinders)表示硬盘每一面盘片上有多少条磁道。在一个盘组中,不同记录面的相同编号(位置)的诸磁道构成一个圆柱面。
扇区数(Sectors)表示每一条磁道上有多少个扇区。

硬盘存储器由磁盘驱动器、磁盘控制器和盘片组成。
磁盘驱动器:核心部件是磁头组件和盘片组件,温彻斯特盘是一种可移动头固定盘片的硬盘存储器。
磁盘控制器:是硬盘存储器和主机的接口,主流的标准有IDE、SCSI、SATA等。

7.2.2-1.2 磁盘的性能指标
磁盘的容量: 一个磁盘所能存储的字节总数称为磁盘容量。磁盘容量有非格式化容量和格式化容量之分。
非格式化容量是指磁记录表面可以利用的磁化单元总数。
格式化容量是指按照某种特定的记录格式所能存储信息的总量。
记录密度:记录密度是指盘片单位面积上记录的二进制的信息量,通常以道密度、位密度和面密度表示。
道密度是沿磁盘半径方向单位长度上的磁道数;
位密度是磁道单位长度上能记录的二进制代码位数;
面密度是位密度和道密度的乘积。

平均存取时间


数据传输率:磁盘存储器在单位时间内向主机传送数据的字节数,称为数据传输率。假设磁盘转数为r(转/秒),每条磁道容量为N个字节,则数据传输率

7.2.2-1.3 磁盘地址
主机向磁盘控制器发送寻址信息,磁盘的地址一般如图所示:

若系统中有4个驱动器,每个驱动器带一个磁盘,每个磁盘256个磁道、16个盘面,每个盘面划分为16个扇区,则每个扇区地址要18位二进制代码;
7.2.2-1.4 硬盘的工作过程
硬盘的主要操作是寻址、读盘、写盘。每个操作都对应一个控制字,硬盘工作时,第一步是取控制字,第二步是执行控制字。
硬盘属于机械式部件,其读写操作是串行的,不可能在同一时刻既读又写,也不可能在同一时刻读两组数据或写两组数据
7.2.22 磁盘阵列
RAID(Redundant Array of Inexpensive Disks,廉价冗余磁盘阵列)是将多个独立的物理磁盘组成一个独立的逻辑盘,数据在多个物理盘上分割交叉存储、并行访问,具有更好的存储性能、可靠性和安全性。
RAID的分级如下所示。在RAID1~RAID5的几种方案中,无论何时有磁盘损坏,都可以随时拔出受损的磁盘再插入好的磁盘,而数据不会损坏。
RAID0:无冗余和无校验的磁盘阵列。
RAID1:镜像磁盘阵列。
RAID2:采用纠错的海明码的磁盘阵列。
RAID3:位交叉奇偶校验的磁盘阵列。
RAID4:块交叉奇偶校验的磁盘阵列。
RAID5:无独立校验的奇偶校验磁盘阵列。
RAID通过同时使用多个磁盘,提高了传输率;通过在多个磁盘上并行存取来大幅提高存储系统的数据吞吐量;通过镜像功能,可以提高安全可靠性;通过数据校验,可以提供容错能力。
7.3 I/O接口
I/O接口:又称I/O控制器(I/O Controller)、设备控制器,负责协调主机与外部设备之间的数据传输
7.3.1 I/O接口的功能
数据缓冲:通过数据缓冲寄存器(DBR)达到主机和外设工作速度的匹配
错误或状态监测:通过状态寄存器反馈设备的各种错误、状态信息,供CPU查用
控制和定时:接收从控制总线发来的控制信号、时钟信号
数据格式转换:串-并、并-串等格式转换
与主机和设备通信:实现主机—I/O接口—I/O设备之间的通信
7.3.2 I/O接口的基本结构

外部接口:外部接口通过接口电缆与外设相连,外部接口的数据传输可能是串行方式,因此I/O接口需具有串/并转换功能。
内部接口:内部接口与系统总线相连,实质上是与内存、CPU相连。
工作原理:
发命令:发送命令字到I/O控制寄存器,向设备发送命令(需要驱动程序的协助)
读状态:从状态寄存器读取状态字,获得设备或I/O控制器的状态信息
读/写数据:从数据缓冲寄存器发送或读取数据,完成主机与外设的数据交换
控制寄存器、状态寄存器在使用时间上是错开的,因此有的I/O接口中可将二者合二为一
7.3.4 I/O端口及其编址
I/O端口是指接口电路中可以被CPU直接访问的寄存器。I/O端口要想能够被CPU访问,必须要有端口地址,每一个端口都对应着一个端口地址。对I/O端口的编址分为统一编址和独立编址两种
统一编址
把I/O端口当做存储器的单元进行地址分配,用统一的访存指令就可以访问I/O端口,又称存储器映射方式。靠不同的地址码区分内存和I/O设备,I/O地址要求相对固定在地址的某部分。
优点:
不需要专门的输入/输出指令,所有访存指令都可直接访问端口,程序设计灵活性高
端口有较大的编址空间
读写控制逻辑电路简单
缺点:
端口占用了主存地址空间,使主存地址空间变小
外设寻址时间长(地址位数多,地址译码速度慢)
2.独立编址
I/O端口地址与存储器地址无关,独立编址CPU需要设置专门的输入/输出指令访问端口,又称I/O映射方式。靠不同的指令区分内存和I/O设备。
优点:
使用专用I/O指令,程序编制清晰
I/O端口地址位数少,地址译码速度快
I/O端口的地址不占用主存地址空间
缺点:
I/O指令类型少,一般只能对端口进行传送操作,程序设计灵活性差
需要CPU提供存储器读/写、I/O设备读/写两组控制信号,增加了控制逻辑电路的复杂性
