中央处理器
CPU的功能和组成 — 掌握
CPU的功能
- 指令控制:控制程序的执行顺序
- 操作控制:对指令操作码译码后产生控制信号
- 时间控制:维持各类操作的时序关系
- 数据加工:对数据进行算术逻辑运算
CPU的基本组成
现代的CPU的组成:运算器、控制器、片内Cache
控制器的主要功能
- 从内存中取出一条指令,并指出下条指令的存放位置
- 对指令进行译码,产生相应的操作控制信号
- 控制CPU、内存和输入/输出设备之间数据流动
运算器的主要功能
- 执行所有的算术运算
- 执行所有的逻辑运算,并进行逻辑测试
CPU中的主要寄存器
-
数据缓存寄存器(DR)
暂时存放运算器与外界传送的数据,作为CPU和内存、外部设备之间的信息传送的中转站,并补偿CPU和内存、外围设备之间的速度差异
-
指令寄存器(IR)
保存当前正在执行的一条指令,其对应的操作码字段直接作为指令译码器的输入
-
程序计数器(PC)
始终存放下一条指令的地址,对应于指令cache的访问
-
地址寄存器(AR)
保存当前CPU所访问数据的内存单元地址
-
通用寄存器
暂时存放ALU运算的数据或结果
-
状态条件寄存器(PSW)
保存各种状态和条件控制信号,每个信号由一个触发器保存,从而拼成一个寄存器
操作控制器与时序产生器
数据通路:两个部件之间传送信息的通路
操作控制器:根据指令操作码和时序信号,产生各种操作控制信号;建立正确的数据通路,从而完成指令的执行
操作控制器可分为:
- 硬布线控制器:采用时序逻辑技术实现
- 微程序控制器:采用存储逻辑实现
- 前两种方式结合
指令周期 — 掌握
指令周期的基本概念
CPU执行程序是一个“取指令-执行指令”的循环过程
指令周期:CPU从内存中取出一条指令,并执行完毕的时间总和
CPU周期:又称机器周期,一般为从内存读取一条指令字的最短时间
完整的指令周期:取指周期 — 间址周期 — 执行周期 — 中断周期
时钟周期:也叫节拍脉冲或T周期,是计算机工作的基本时间单位
不同指令的指令周期不一定相同,但是所有指令的第一个机器周期必为取指周期
用方框图语言表示指令周期
方框:代表一个CPU周期,方框中的内容表示数据通路的操作或某种控制操作
菱形:通常用来表示某种判别或测试,时间上依附于之前一个方框的CPU周期,而不单独占用一个CPU周期
~(公操作符):表示一条指令已经执行完毕,转入公操作
示例:
-
“ADD R2,R0”指令完成(R0)+(R2)→R0的功能操作,画出其指令周期流程图,并列出相应的微操作控制信号序列
指令周期应包括取指周期和执行周期,执行周期中应首先将R0、R2两寄存器的内容送入ALU的操作数缓冲器中,再执行加法运算
- “SUB R1,R3”指令完成(R3)-(R1)→R3的操作,画出其指令期流程图,并列出相应的微操作控制信号序列
时序产生器和控制方式 — 了解
时序信号的作用和体制
时序信号的作用:使计算机准确、迅速、有条不紊的工作
CPU通过时序控制来识别指令和数据
时序信号的体制:电位 — 脉冲制
硬布线控制器的时序信号:常采用主状态周期 — 节拍电位 — 节拍脉冲三级体制
微程序控制器的时序信号:一般采用节拍电位 — 节拍脉冲二级体制
时序信号产生器
用逻辑电路实现时序的控制
微程序控制器中时序信号产生器的组成:时钟源、环形脉冲发生器、节拍脉冲和读写时序译码逻辑、启停控制逻辑
控制方式
同步控制方式:在任何情况下,已定的指令在执行时所需的机器周期数和时钟周期数都固定不变
异步控制方式:每个指令周期包含的机器周期数目由联络信号控制,不固定
联合控制方式
- 大部分操作序列为固定的机器周期
- 机器周期的节拍脉冲数固定
微程序控制器 — 掌握
微程序控制原理
微程序设计技术是利用软件方法来设计硬件的一门技术,具有规整性、灵活性、可维护性等一系列优点
基本思想
- 仿照通常的解题程序的方法,把操作控制信号编程所谓的“微指令”,存放到一个只读存储器里
- 当机器运行时,一条一条地读出这些微指令,从而产生全机所需要的的各种操作控制信号,使部件执行规定的操作
控制部件与执行部件之间的联系
- 控制部件向执行部件发出控制信号
- 执行部件向控制部件返回状态信息
微命令:控制部件通过控制线向执行部件发出的各种控制命令
微操作:执行部件的最基本的操作,执行部件接受微命令后所执行的操作
状态测试:执行部件通过反馈线向控制部件反应当前操作状态,以使控制部件决定下一步的微命令
微操作的分类:
- 相容性微操作:在同时或同一个CPU周期内可以并行执行的微操作
- 相斥性微操作:不能在同时或不能再同一个CPU周期内并行执行的微操作
微指令:一个CPU周期中,实现一定操作功能的一组微命令的组合,一般包括操作控制和顺序控制两大部分
微程序:能实现一条机器指令功能的多条微指令序列;每条机器指令都对应着一段微程序
微指令寄存器:存放当前正在执行的一条微指令;由微地址寄存器和微命令寄存器两部分构成
一条机器指令对应一个微程序,一个微程序是由若干条微指令组成的
微程序设计技术
微命令编码的表示方法有:直接表示法、编码表示法、混合表示法
微程序的入口地址:微程序的第一条微指令所在控存单元的地址
微指令中确定后继微地址的方法:计数器的方式、多路转移方式
微指令格式
- 水平型微指令
一次能定义并执行多个并行操作微命令的微指令(一般由操作控制字段、判别测试字段、下地址字段三部分构成) - 垂直型微指令
微指令中设置微操作码字段,采用微操作码编译法,由微操作码规定微指令的功能
流水CPU — 理解
并行性的两种含义
- 同时性:两个以上事件在同一时刻发生
- 并发性:两个以上事件在同一间隔内发生
并行性的三种形式:
- 时间并行:使用流水处理部件,时间重叠
- 空间并行:设置重复资源,同时工作
- 时间并行 + 空间并行:时间重叠和资源重复的综合应用
流水CPU的加速比
若某CPU指令执行,可划分为K个阶段,每个阶段1个周期
非流水线CPU处理n个任务时,所需始终周期数 T = n x k
一个具有k级过程段的流水CPU处理这n个任务时,需要的时钟周期数 Tk = k + (n - 1)
- k个时钟周期用于处理第一个任务
- k个周期后,流水线被装满,剩余的n-1个任务只需n-1个周期即可完成
将T1和Tk的比率定义为k级线性流水处理器的加速比:Ck = T1 / Tk
指令流水线的性能指标:
流水线分类
- 指令流水线
- 算术流水线
- 处理机流水线
例题
例一:
计算机的控制器采用微程序控制方法,为指令中的操作控制字段采用字段直接编码法,共有33个微命令,构成5个互斥类,分别包含7、3、12、5和6个微命令,则操作控制字段至少有 _15位_
解析:字段直接编码就是把微命令多个段,段的数目等于互斥类的数目。因此这里分为5个段,每段里要留一个离散状态表示自己没命令。所以7个微命令对应3位,3个微命令对应2位,12个微命令对应4位,5个微命令对应3位,6个微命令对应3位,共15位。
例二:
指令流水线有取值(IF)、译码(ID)、执行(EX)、访存(MEM)、写回寄存器堆(WB)五个过程段,共有7条指令连续输入此流水线,时钟周期为100ns
解析:
-
请画出流水处理的时空图
-
求流水线的实际吞吐率
流水线执行完7条指令的时间是 5 + (7 - 1)= 11 个时钟周期
故实际吞吐率为 7 / (11 x 100ns) = 64 x 10^5条指令/s
例三:
判断一下三组指令个存在哪种类型的数据相关
例四:
不会引起流水阻塞的是 (数据旁路);
CPU中跟踪指令后继地址的寄存器是 (程序计数器);
在微程序控制器中 ,构成控制信号序列的最小单位 (微命令);
例五:
假设某机器有80条指令,平均每条指令由4条微指令组成,其中有一条取指微指令是所有指令公用的。已知微指令长度为32位,请估算控制存储器容量
解析:
总线系统
总线的概念和结构形态 — 理解
总线的基本概念
总线:构成计算机系统的互联机构,是系统内各功能部件之间进行信息传送的公共通路
总线的分类
- 按传送的信息分:
- 数据总线:单向,三态总线,用于传送地址信息
- 地址总线:双向,三态总线,用于传送数据信息
- 控制总线:传送控制、状态信息
- 按连接部件分
- 内部总线:各芯片内部逻辑器件的连接总线
- 系统总线:计算机各功能部件的连接总线
- 通信总线:微机系统与微机系统、其他设备之间的连接总线
总线的性能指标
-
总线宽度:一次总线操作中,最多可传送的数据位数
-
总线周期:依次总线操作所需要的最小间隔时间,总线周期与总线的时钟频率成反比
-
寻址能力:取决于地址总线的根数
-
负载能力:总线上能够连接的设备数
-
传输率:也称为总线带宽,通常指总线所能达到的最高数据传输率,单位是Bps(每秒传送字节数)
计算公式:Dr = D X f/N
D — 数据宽度;f — 总线时钟频率;N — 完成一次数据传送所需要的时钟周期数
-
是否支持突发传送
总线上数据传送方式:
正常传送 — 每个传送周期先传送数据的地址,再传送数据
突发传送 — 支持成块连续数据的传送,只需给出数据块的首地址,后续数据地址自动生成
总线的连接方式
-
单总线结构
使用一条系统总线来连接CPU、内存和I/O设备 -
双总线结构
在CPU和主存之间专门设置了一组高速的存储总线 -
三总线结构
在各外部设备与通道之间增加一组I/O总线 -
多总线结构
通过桥将总线彼此相连
总线的内部结构
现代总线可分为四个部分
- 数据传送总线:地址线、数据线、控制线
- 仲裁总线:总线请求线、总线授权线
- 中断和同步总线:中断请求线、中断认可线
- 公用线:时钟信号、电源等
总线结构实例
总线的发展历程
总线接口 — 了解
信息的传送方式
- 串行传送
使用一条传输线,采用脉冲传送
特点:成本比较低廉,信息传送速度慢 - 并行传送
每一数据位需要一条传输线,一般采用电位传送
系统总线的信息传送方式 - 分时传送
总线传送信息的分时复用
共享总线部件对总线的分时复用
接口的基本概念
接口:I/O设备适配器;指CPU和主存、外围设备之间用过总线进行连接的逻辑部件
接口的典型功能:控制、缓冲、状态、转换、中断等
一个适配器必须有两个接口,一个同系统总线相连,采用并行方式;另一个同设备相连,可能采用并行方式或是串行方式
利用串行方式传送字符,每秒钟传送的比特(bit)位数常称为波特率
总线的仲裁 — 理解
多个功能模块争用总线时,必须由总线仲裁部件选择一个主设备使用总线
总线占用期:主方持续控制总线的时间
集中式仲裁
由中央仲裁器决定总线使用权的归属
链式查询方式
设备的优先权与总线控制器的距离有关
连接方式
- 采用菊花链的方式连接所有具有总线使用能力的部件
- 各设备共用一根总线请求信号线BR、总线授权信号线BG、总线忙信号线BS与中央仲裁器连接
计数器定时查询方式
设备的优先权由计数值决定,计数值为0时同链式查询方式
连接方式
- 省去总线授权信号BG
- 增加计数器和设备地址线号线,每次相应总线申请,由计数值决定相应的顺序
独立请求方式
设备的优先权由中央仲裁器的内部排队逻辑决定
连接方式:每个部件均由独立的请求和响应信号线,由中央仲裁器的内部排队逻辑决定响应顺序
分布式仲裁
分布式仲裁不需要中央仲裁器,由分布在各部件中的多个仲裁器竞争使用总线
每个潜在的主模块都有自己的仲裁器和唯一的仲裁号,通过仲裁总线上仲裁号的比较,决定可占用总线的部件
分布式仲裁是以优先级仲裁策略为基础
工作过程:
设备请求总线 读取仲裁总线上的设备号(该设备号为正在使用总线设备的设备号)与本设备号比较,若本设备优先级低,不能获取总线 不断比较;若本设备优先级高 向仲裁总线送出设备号 获得总线控制权
总线的定时和数据传送模式 — 了解
总线的定时
总线的信息传送过程:请求总线、总线仲裁、寻址、信息传送、状态返回
定时:确定事件出现在总线上的时序关系
定时的分类:同步定时、异步定时
同步定时
系统采用统一的时钟信号,所有事件的出现时间均由该时钟信号确定
优点:各模块配合简单一致;数据传输效率较高
缺点:各模块的速度差异较大时会影响系统的整体工作效率;时钟信号受到干扰时,会引起错误的同步
适用于总线长度较短,各功能模块速度相差不多的系统
异步定时
系统依靠应答方式或互锁机制来决定事件出现的时间
优点:总线周期长度可变
缺点:增加了总线的复杂性和成本
适用于设备工作速度不一致的系统
总行数据传送模式
块传送操作:只需给出块的起始地址,然后对固定块长度的数据一个接一个地读出或写入
广播:总线允许一个主方对多个从方进行写操作
广集:与广播相反的操作,它将选定的多个从方数据在总线上完成AND或OR操作,用以检测多个中断源
例题
例一:
如果一个总线周期中并行传送64位数据,总线时钟频率升为66MHz,则总线带宽是多少
解析:
一个总线周期 T = 1/f
一个总线周期传送的数据量 D = 64/8B = 8B
总线带宽 Dr = D/T = D X f = 8B X 66 X 10^6/s = 528MB/s
例二:
假设数据传送速率为120个字符/秒,每一个字符格式规定包含10位(起始位、停止位、8个数据位),问传送的波特率是多少?每位占用的时间是多少?
解析:
波特率为:10位×120/秒=1200波特
每个bit位占用的时间Td是波特率的倒数: Td=1/1200=0.833×0.001s=0.833ms
例三:
下列选项中的英文缩写均为总线标准的是( D )
A. PCI、CRT、USB、EISA
B. ISA、CPI、VESA、EISA
C. ISA、SCSI、RAM、MIPS
D. ISA、EISA、PCI、PCI-Express
例四:
某同步总线采用数据线和地址线复用方式,其中地址/数据线有32根,总线时钟频率为66MHz,每个时钟周期传送两次数据(上升沿和下降沿各传送一次数据),该总线的最大数据传输率(总线带宽)是( 528MB/s )
解析:
总线带宽Dr = 2D / T = 2D x f = 2 x 32bit x 66M = 4224bit x 10^6/s = 528MB/s
例五:
一次总线事务中,主设备只需给出一个首地址,从设备就能从首地址开始的若干连续单元读出或写入多个数据。这种总线事务方式称为(突发传输)
例六:
下列关于I/O接口的叙述,错误的是( D )
A. 状态端口和控制端口可以合用同一个寄存器
B. I/O接口中CPU可访问的寄存器称为I/O端口
C. 采用独立编址方式时,I/O端口地址和主存地址可能相同
D. 采用统一编址方式时,CPU不能用访存指令访问I/O端口
例七:
下列选项中,可提高同步总线数据传输率的是( I、II、III)。
I. 增加总线宽度 II. 提高总线工作频率
III. 支持突发传输 IV. 采用地址/数据线复用
例八:
- 同步通信之所以比异步通信具有较高的传输频率,是因为(同步通信用一个公共时钟信号进行同步)
- 在集中式总线仲裁中,(独立请求)方式响应时间最快,(菊花链)方式对(电路故障)最敏感
- 系统总线中地址线的功能是(指定主存和I/O设备接口电路的地址)
- 系统总线中控制线的功能是(提供主存、I/O接口设备的控制信号和响应信号)
可结合 https://blog.csdn.net/AKUANer/article/details/104647526/ 学习
外围设备
外围设备概述 — 了解
外围设备的一般功能
外围设备的定义:计算机系统中,除CPU和主存之外的部件都可看做外设
外围设备的功能:在计算机和其他机器,或与用户之间提供联系
外围设备的基本组成
- 存储介质:用于信息的保存
- 驱动装置:用于移动存储介质,使之正常工作
- 控制电路:用于使该外设与外界的信息传递
外围设备的分类
分类
- 输入/出设备
- 外存设备
- 数据通信设备
- 过程控制设备
- ……
外设都是通过适配器与主机连接的
磁盘存储设备 — 掌握
磁记录原理
磁表面存储器:用磁性材料薄薄地涂在金属铝或塑料表面作载磁体来存储信息
磁表面存储器的优点
- 存储容量大,位价格低
- 记录介质可以重复使用
- 记录信息可以长期保存而不丢失
- 非破坏性读出,读出时不需要再生信息
磁表面存储器的缺点
- 存取速度较慢,机械结构复杂
- 对工作环境要求较高
写操作
- 原理:电-磁变换
- 利用磁头写线圈中的脉冲电流,在磁表面每个存储元上形成不同的磁化状态
读操作
- 原理:磁-电变换
- 利用磁头读线圈,将磁表面每个存储元上的不同剩磁状态转换成电信号读出
硬磁盘机的基本组成和分类
硬盘的逻辑结构组成
- 磁记录介质
- 磁盘控制器
- 磁盘驱动器
硬磁盘驱动器和控制器
磁盘驱动器
- 定位驱动系统
- 主轴系统
- 数据转换系统
磁盘控制器:主机与磁盘驱动器之间的接口
磁盘上信息的分布
记录面:一个盘片有上下两个记录面;磁盘组的最上下盘面只有一个记录面
磁道
- 记录面上一系列同心圆
- 最外圈为0磁道,依次为1、2、……、N磁道
- 每个磁道的存储容量均相同
- 不同盘片的相同磁道构成一个柱面
扇区:同心圆上一段磁道区域;每个扇区的存储容量也相同
磁盘上信息地址由记录面号、磁道号、扇区号三部分组成
索引:磁道的起始位置
磁盘存储器的技术指标
存储密度
- 有道密度、位密度、面密度三个不同的指标
- 相关概念
道距:相邻两磁道中心线之间的距离
道宽:磁化轨迹的宽度
存储容量:一个磁盘存储器所能存储的字节总数
数据传输率:磁盘存储器在单位时间内向主机传送数据的字节数
道密度:沿磁盘半径方向单位长度上的磁道数(道/英寸)
位密度
- 磁道单位长度上能记录的二进制代码位数(位/英寸)
- 0磁道的位密度为最低位密度;
- 位密度 = 道容量 / 磁道周长
面密度:位密度和道密度的乘积(位/平方英寸)
存储容量 = 记录面数 X 每面磁道数 X 磁道容量
平均寻址时间等于平均寻道时间与平均等待时间之和
平均寻道时间:最大与最小寻道时间的平均值
平均等待时间:与磁盘转速有关,是磁盘旋转一周时间的一半
外部传输率:从硬盘内部的缓冲区中所读取数据的最高速率;该指标与硬盘接口类型、硬盘缓冲区大小有关
内部传输率
- 从盘片上将数据读取到磁盘内部缓冲区的速度
- 衡量硬盘读写性能的决定性因素
- 设磁盘旋转速度为每秒n转,单个磁道容量为N个字节
数据传输率Dr = n X N(字节/秒)
光盘和磁光盘存储设备 — 了解
光盘存储器
- 采用聚焦激光束在盘式介质上非接触地记录高密度信息
- 以介质材料光学性质的变化来表示所存储信息的“0”或“1”
光盘优点:存储容量大
光盘缺点:存取时间长,数据传输率低
光盘存储器的分类
- 只读型:CD-ROM
- 写一次型:WORM、CD-R
- 重写型: CD-RW
- DVD-ROM光盘: DVD-ROM
硬盘、磁带、光盘的性能比较:
显示设备 — 理解
显示设备的分类
- 按显示器件分类
阴极射线管(CRT)、液晶(LCD)、等离子(PDP)等 - 按显示的内容分类
字符显示器、图形显示器、图像显示器 - CRT显示设备
输入设备和打印设备 — 理解
分辨率是指显示器所能表示的像素个数
- 像素是指组成图像的最小单位
- 像素越密,分辨率越高,图像显示越清晰
灰度级
- 在黑白显示器中所显示的像素点的亮暗差别
- 在彩色显示器中则表示为颜色的不同
- 灰度级越多,图像层次越清楚逼真
灰度级取决于 每个像素对应刷新存储器单元的位数和CRT本身的性能;只有两级灰度的显示器称为单色显示器;图像显示器的灰度级一般在256级以上
刷新频率:显示器每秒能够对整个屏幕的刷新次数
刷新存储器带宽 = 分辨率 X 颜色深度 X 刷新频率
显示适配卡,也叫显卡
- 显示器与主机之间的接口电路
- 负责将主机发送的待显示的信号送给显示器
显卡的主要构成部件:图形处理器GPU、显存、显卡BIOS、印刷电路板(PCB)
显卡不同标准:VGA、XGA、SVGA
输入设备:图形输入设备、图像输入设备、语音输入设备
打印设备:针式打印机、喷墨打印机、激光打印机
例题
例一:
某磁盘存储器转速为3000转/分,共有4个记录盘面,每毫米5道,每道记录信息12288字节,最内层磁道直径为230mm,共275道:
解析:
例二:
设某磁盘有两个记录面,存储区内径为2.36英寸,外径为5英寸,道密度为 1250TPI(道/英寸),内径处的位密度为52400BPI (字节/英寸) ,转速为7200转/分,问
解析:
例三:
假定一台计算机的显示存储器用DRAM芯片实现,若要求显示分辨率为1600*1200,颜色深度为24位,帧频为85Hz,显示总带宽的50% 用来刷新屏幕,则需要的显存总带宽至少约为( 7834Mbps )
解析:
显存总带宽 = 1600×1200×24b×85Hz×2 = 7 833 600 000 bps ≈7834Mbps
例四:
若磁盘转速为7200 转/分,平均寻道时间为 8ms,每个磁道包含 1000 个扇区,则访问一个扇区的平均延迟时间大约是(12.2ms)
解析:
存取时间 = 寻道时间 + 延迟时间 + 传输时间。存取一个扇区的平均延迟时间为旋转半周的时间,即为 (60/7200)/2=4.17ms ,传输时间为 (60/7200)/1000=0.01ms ,因此访问一个扇区的平均存取时间为 4.17+0.01+8=12.18ms ,保留一位小数则为 12.2ms
例五:
已知某磁盘存储器转速我2400转/分,每个记录面道数为200道,平均找到时间为60ms每道存储容量为96Kb,求磁盘的存取时间与数据传输率
解析:
输入输出系统
外围设备的速度分级与信息交换方式 — 了解
外围设备的速度分级
根据外设的工作速度,CPU与外设的定时方式有3种:
-
速度极慢或简单的外围设备
CPU直接接收或发送数据
-
慢速或中速的外围设备(如键盘、显示器)
采用异步定时方式,或称为应答式数据交换;CPU与外设之间通过两个相互的联络信号来决定开始数据传送的时间
-
高速的外围设备(如主存、辅存)
采用同步定时方式,CPU以等间隔的速率执行输入 / 输出指令
信息交换方式
- 程序查询方式
- 程序中断方式
- 直接内存访问(DMA)方式
- 通道方式
- 外围处理机方式(PPU)
程序查询方式 — 理解
工作过程:CPU传送数据之前先检查外设的状态,若没有准备好,则继续查询等待,直至外设就绪即进行数据传送
硬件要求:只需接口电路的状态、数据口,不需增加其他控制电路
适用场合:CPU不太忙且对传送速度要求不高的系统
程序中断方式 — 掌握
工作过程:CPU有传送要求时,启动外设后可处理其他事件,当外设准备就绪后,通过中断的方式和CPU完成数据传送工作
硬件要求:需要附加的中断控制电路
适用场合:CPU与慢速外设之间的数据传送
中断的基本概念
定义:中断是指CPU正常运行程序时,由系统内/外部非预期事件或程序中预先安排好的指令性事件引起的,CPU暂停当前程序的执行,转去为该事件服务的程序中执行,服务完毕后,再返回原程序继续执行的过程
CPU的中断处理流程
- 中断请求
CPU在结束一个指令周期后,检测中断请求信号 - 中断响应
- 关中断
- 保护断电现场
- 判断中断源,获取中断向量
- 根据中断向量转入中断服务程序执行
- 开中断
- 中断服务
- 执行中断服务程序
- 恢复CPU现场
- 中断返回
恢复断电现场,返回主程序继续执行
中断向量:中断服务程序的入口地址,包括段地址和段内偏移地址
CPU使用向量中断的过程:
中断类型号(n)x 4 = 中断向量在表中的偏移地址,如:n=8,则应从向量表20H~23H中取出中断向量
程序中断方式的基本IO接口
数据传送过程:
- CPU向接口发送控制命令,使忙状态置位,就绪状态复位;
- 接口向外设发送启动信号,外设开始准备数据;
- 外设将准备好的数据送入接口;
- 数据传送完成,外设向接口发回结束信号,使就绪状态置位;
- 若接口允许触发器有效,则产生中断请求,提交给CPU;
- CPU执行完成一条指令,检测中断请求信号;
- 若CPU允许该中断响应,则发回响应信号中断响应期间,同时硬件自动关中断;
- 接口向CPU提供中断向量;
- CPU执行中断服务程序,将数据读入;
- 中断返回后,接口内部的就绪状态、忙状态复位;
单级中断
所有的中断源都属于同一个级别,不允许有中断嵌套
多级中断
中断源分为不同的级别,可以发生中断嵌套,高优先权的中断源请求可以打断低优先权的中断服务
中断屏蔽触发器IM:可决定对应级别的中断源是否能够被响应
- 中断请求触发器:1——有请求;0——无请求;
- 中断屏蔽触发器:1——被屏蔽;0——未被屏蔽;
若系统中共有n级中断,则有两个n为中断请求寄存器和中断屏蔽寄存器
改变优先级的方法:修改屏蔽字
Pentium中断机制
DMA方式 — 掌握
工作过程:CPU分配总线使用权之后,在硬件DMA控制器(DMAC)的控制下完成存储器与高速外设之间的大量数据的传送
硬件要求:需要相应的DMA控制器及数据通路,电路结构复杂,硬件开销大
适用场合:需要高速大批量数据传送的系统中
DMA的基本概念
DMAC对数据传送的控制是建立在掌握系统总线的使用权基础上的
- 正常工作下,系统总线的使用权归CPU所有
- DMAC要控制DMA传送,必须要从CPU得到总线使用权
DMAC的两种工作状态
- 被动态
- 主动态
DMAC传送的过程
- 总线申请阶段
- 总线响应阶段
- 数据传送阶段
- 传送结束阶段
DMA方式和中断控制方式的区别:
区别 | DMA方式 | 中断控制方式 |
---|---|---|
数据传送实现方式 | 硬件实现 | 程序传送 |
CPU响应请求时间 | 一个总线周期结束 | 一个指令周期结束 |
请求的目的 | 总线的使用权 | CPU的服务 |
是否需要保护现场 | 不需要(CPU不参与数据传送) | 需要 |
对于不需要访存的现行程序的执行 | 无影响 | 延迟现行程序的执行 |
DMA的优先权高于中断的优先权
DMA传送方式
- 停止CPU访问方式(连续方式)
- 周期挪用方式(单字节方式)
- DMA与CPU交替访问方式(透明DMA方式)
DMA控制器
组成部分
- 地址寄存器和字节计数器
- 数据暂存器
外设与主存交换数据时,直接通过数据总线传送;主存与主存交换数据时,需要将数据在DMAC内部中转 - DMA请求标志
- DMA传送终止机制
DMAC的类型
- 选择型DMAC
相当于一个逻辑开关,适用于数据传输率很高的设备 - 多路型DMAC
各设备以字节交叉方式进行数据传送,设备对DMAC的请求课采用链式,或独立请求方式
通道方式 — 了解
工作过程:CPU将IO控制的权利下放给通道,由通道统一管理所有的输入输出操作
硬件要求
- 需要IO通道(也称IO处理器,IOP)
- 通道是一个具有特殊功能的处理器
适用场合:高性能要求的系统中
通道的功能
- 执行通道指令、组织外围设备和内存进行数据传输
- 按I/O指令要求启动外围设备,向CPU报告中断
通道对设备控制器的管理
- 通道使用通道指令控制I/O模块进行数据传送操作
- 通道接收通道状态字了解外设的状态
通道的类型
- 选择通道(高速通道)
物理上可以连接多个设备,但这些设备不能同时工作 - 多路通道(多路转换通路)
同一时间能处理多个I/O设备的数据传输、- 数组多路通道(连接高速设备)
- 字节多路通道(连接低速设备)
通用I/O标准接口 — 了解
- 并行I/O标准接口SCSI(小型计算机系统接口)
- 设计思想来源于IBM大型机系统的I/O通道结构;
- 目的是使CPU摆脱对各种设备的繁杂控制。
- 它是一个高速智能接口,可以混接各种磁盘、光盘等设备。
- 高速串行I/O标准接口IEEE 1394
例题
例一:
某机有5个中断源L0~L4,按中断响应优先级从高到低为L0→L1→L2→L3→L4,现要求将中断处理次序改为L1→L3→L4→L0→L2,请写出各中断源的屏蔽字
解析:
中断源 | 屏蔽字(L0L1L2L3L4) |
---|---|
L0 | 10100 |
L1 | 11111 |
L2 | 00100 |
L3 | 10111 |
L4 | 10101 |
例二:
下列选项中,能引起外部中断的时间是(A) A. 键盘输入 B. 除数为0 C. 浮点运算下溢 D. 访存缺页
例三:
单级中断系统中,中断服务程序执行顺序是( A ) I、保护现场 II、开中断 III、关中断 IV、保存断点 V、中断事件处理 VI、恢复现场 VII、中断返回
A、I->V->VI->II->VII B、III->I->V->VII C、III->IV->V->VI->VII D、IV->I->V->VI->VII
解析:
单级中断系统中,不允许中断嵌套。
中断的处理过程为:
1.关中断;2.保存断点;3.识别中断源;4.保存现场;5.中断事件处理(开中断、执行中断服务程序、关中断);6.恢复现场;7.开中断;8.中断返回。其中,1~3步由硬件完成,4~8由中断服务程序完成,正确选项为A。
例四:
某同步总线的时钟频率为100MHz,宽度为32位,地址/数据线复用,每传输一个地址或数据占用一个时钟周期。若该总线支持突发(猝发)传输方式,则一次“主存写”总线事务传输128位数据所需要的时间至少是( 50ns )
解析:
128位数据的猝发传输,需要传输1次地址和128/32次数据;
所需的时间为:(1+4)T=5 / f = 5 /(100 *106)= 50ns
例六:
下列选项中,在I/O总线的数据线上传输的信息包括(II、II、III)
I. I/O接口中的命令字 II.I/O接口中的状态字 III.中断类型号
例七:
响应外部中断的过程中,中断隐指令完成的操作,除保护断点外,还包括( I、III )
I. 关中断 II.保存通用寄存器的内容 III. 形成中断服务程序入口地址并送PC
例八:
假定某计算机的CPU主频为80MHz,CPI为4,并且平均每条指令访存1.5次,主存与Cache之间交换的块大小为16B,Cache的命中率为99%,存储器总线宽度为32位
解析:
-
该计算机的MIPS数是多少?
MIPS = f / CPI = 80M / 4 = 20 MIPS -
平均每秒Cache缺失的次数是多少?
每秒访存次数 * Cache失效率
= (1.5 * MIPS)*(1 – 99%) = 30M * 0.01 = 0.3M次/s -
在不考虑DMA传送的情况下,主存带宽至少达到多少才能满足CPU的访存要求?
每次Cache缺失,主存都会将一块数据调入Cache;
主存带宽:0.3M/s * 16B = 4.8MB/s -
假定在Cache缺失的情况下访问主存时,存在0.0005%的缺页率,则CPU平均每秒产生多少次缺页异常?
上题计算每秒Cache的缺失次数为0.3M;
缺页异常:0.3M /s* 0.0005% =1.5 次/s -
若页面大小4KB,每次缺页都需访问磁盘,访问磁盘时,DMA传送采用周期挪用方式,磁盘I/O接口的数据缓冲寄存器为32位,则磁盘I/O接口平均每秒发出的DMA请求次数至少是多少?
周期挪用方式:每次DMA传送4B,则传送一页需1K次DMA
每秒钟DMA次数:1K * 1.5次 = 1.5K次 -
CPU和DMA控制器同时要求使用存储器总线时,哪个优先级更高?为什么?
CPU和DMAC同时申请总线时,DMA优先权更高;
若DMA请求得不到及时响应,I/O传输数据可能会丢失。 -
为了提高性能,主存采用4体交叉存储模式,工作时每1/4个存储周期启动一个体。若每个体的存储周期为50ns,则该主存能提供的最大带宽是多少?
每个存储周期启动4个存储体,每个存储体读写32位数据;
带宽:4B * 4体 / 50ns = 320MB/s