第一章计算机系统概论
硬件:计算机的实体,如主机,外设等
软件:具有各类特殊功能的信息(程序)组成
| 软件类型 | 定义 | 举例 |
|---|---|---|
| 系统软件 | 用来管理整个计算机系统 | 标准程序库,语言处理程序,操作系统,数据库管理系统,网络软件 |
| 应用软件 | 按任务需要编制成的各种程序 | 科学计算程序,数据处理程序,过程控制程序,事务管理程序 |
计算机系统的层次结构

image
计算机系统的体系结构
| 分类 | 区别 | 定义 |
|---|---|---|
| 计算机体系结构 | 有无乘法指令 | 程序员见到的计算机系统的属性,即概念性的结构和功能特性(指令系统,数据类型,寻址技术,I/O机理) |
| 计算机组成 | 如何实现乘法指令 | 实现计算机体系结构所体现的属性(具体指令的实现) |
冯.诺依曼计算机的特点
1.计算机由运算器,存储器,控制器,输入设备和输出设备五大部分组成
2.指令和数据以同等地位存放与存储器内,并可按地址寻访
3.指令和数据用二进制表示
4.指令由操作码和地址码组成
5.存储程序
6.以运算器为中心
冯.诺依曼计算机硬件框图

image
现代计算机硬件框图

image
设某机的指令字长为16位,其中操作码占6位,地址码占10位。
| 操作码 | 操作性质 | 具体内容 |
|---|---|---|
| 000001 | 取数 | 将指令地址码指示的存储单元中的操作数取到运算器的累加器ACC中 |
| 000010 | 存数 | 将ACC中的数存至指令地址码指示的存储单元中 |
| 000011 | 加 | 将ACC中的数与指令地址码指示的存储单元中的数相加,结果存于ACC中 |
| 000100 | 乘 | 将ACC中的数与指令地址码指示的存储单元中的数相乘,结果存于ACC中 |
| 000101 | 打印 | 将指令地址码指示的存储单元中操作数打印输出 |
存储器的基本组成
| 组成 | 解释 |
|---|---|
| 存储单元 | 存放一串二进制代码 |
| 存储字 | 存储单元中二进制代码的组合 |
| 存储字长 | 存储单元中二进制代码的位数每个存储单元赋予一个地址号 |
| MAR | 存储器地址寄存器,反映存储单元的个数 2**n |
| MDR | 存储器数据寄存器,反映存储字长 n |
运算器基本组成
| 寄存器,操作数,运算 | 加法 | 减法 | 乘法 | 除法 |
|---|---|---|---|---|
| ACC | 被加数及和 | 被减数及差 | 乘积高位 | 被除数及余数 |
| MQ | 乘数及乘积低位 | 商 | ||
| X | 加数 | 减数 | 被乘数 | 除数 |
控制器的基本组成
| 简称 | 意义 | 作用 | 解释 |
|---|---|---|---|
| PC | 取指令 | 取指,访存 | 存放当前欲执行指令的地址,具有计数功能(PC)+1->pc |
| IR | 分析指令 | 取指,访存 | 存放当前欲执行的指令 |
| CU | 执行指令 | 执行,访存 | 控制单元 |
以取数指令为例

image
程序首地址PC
取指令:PC->MAR->存储体M-MDR->IR
分析指令:IR->CU
执行指令:IR->MAR->M->MDR->ACC
计算机硬件的主要技术指标
机器字长:CPU一次能处理数据的位数,与CPU中的寄存器位数有关。
运算速度:主频,吉普森法(每条指令的执行的时间以及他们在全部操作中所占的百分比TM=∑ni=1fiti),MIPS(百万条指令每秒),CPI(执行一条指令所需时钟周期数),FLOPS(每秒浮点运算次数), 存储容量(存放二进制信息的总位数)
| 分类 | 组成 |
|---|---|
| 主存容量 | 存储单元×字节数 |
| 主存容量 | 字节数 |
| 辅存容量 | 字节数 |
指令和数据都存于存储器中,计算机如何区分它们?
1.通过不同的时间段,在取指令阶段取出的为指令,在执行指令阶段取出为数据
2.通过地址源:由PC提供存储单元地址的取出的是指令,由指令地址码提供存储单元地址取出的是操作数。
第二章 计算机的发展及应用
Moore定律:微芯上集成的晶体管数目每三年翻两番
计算机的应用
一、科学计算和数据处理
二、工业控制和实时控制
三、网络技术
1.电子商务
2.网络教育
3.敏捷制造
四、虚拟现实
五、办公自动化和管理信息系统
六、CAD/CAM/CIMS
七、多媒体技术
八、人工智能
芯片集成度的提高受以下三方面的限制
芯片集成度受物理极限的制约
按几何级数递增的制作成本
芯片的功耗、散热、线延迟
| 计算机 | 代替部分 |
|---|---|
| 光计算机 | 利用光子取代电子进行运算和存储 |
| DNA生物计算机 | 通过控制DNA分子间的生化反应 |
| 量子计算机 | 利用原子所具有的量子特性 |
第三章 系统总线
计算机系统五大部件之间的互连的方式有两种
1.分散连接:各部件之间使用单独的连线
2.总线连接:将各部件连到一组公共信息传输线上
总线:连接各个部件的信息传输线,是各个部件共享的传输介质
总线传输特点:某一时刻只能有一路信息在总线上传输,即分时使用。为了减轻总线负载,总线上的部件应通过三态驱动缓冲电路与总线相连
总线上信息的传输:
串行:每条线可一位一位的传输二进制代码,一串二进制代码可在一段时间内逐一传输完成
并行:若干条传输线同时传输若干条二进制代码
面向 CPU 的双总线结构框图

image
单总线结构框图

image
以存储器为中心的双总线结构框图

image
| 总线分类 | 解释 |
|---|---|
| 片内总线 | 芯片内部的总线,如寄存器与寄存器之间,寄存器与算逻单元ALU之间。 |
| 系统总线 | 计算机各部件之间的信息传输线(CPU,主存,I/O设备等) |
| 系统总线-数据总线 | 双向传输,其位数与机器字长,存储字长有关 |
| 系统总线-地址总线 | 单向,与存储地址,I/O地址有关 |
| 系统总线-控制总线 | 单向,发出各种控制信号。有出(存储器读、存储器写总线允许、中断确认),有入(中断请求、总线请求) |
| 通信总线 | 用于计算机系统之间或计算机系统与其他系统(如控制仪表、移动通信等)之间的通信。分为串行通信和并行通信 |
总线物理实现

image
总线特性
| 总线特性 | |
|---|---|
| 机械特性 | 指总线在机械连接方式上的一些性能,尺寸,形状,引脚的个数以及排列的顺序,接头处的可靠接触 |
| 电气特性 | 总线的每一根传输线上信号的传输方向和有效的电平范围 |
| 功能特性 | 每根传输线的功能。地址总线用来指出地址码;数据总线传递数据;控制总线发出控制信号 |
| 时间特性 | 信号的时序关系 |
总线性能指标
| 性能 | 指标 |
|---|---|
| 总线宽度 | 数据线分根数,用bit |
| 总线带宽 | 每秒传输的最大字节数(MBps) |
| 时钟同步/异步 | 同步,异步 |
| 总线复用 | 地址线与数据线复用 |
| 信号线数 | 地址线,数据线和控制线的总和 |
| 总线控制方式 | 突发,自动,仲裁,逻辑,计数 |
| 其他指标 | 负载能力(驱动能力),电源电压,总线宽度能否扩展等 |
总线标准
总线标准:系统与各模块,模块与模块之间的一个互连的标准界面
为什么要设立总线标准:为了使设计简化,模块生产批量化,确保其性能稳定,质量可靠,实现可移化,便于维护。
| 总线标准 | 数据线 | 地址线 | 总线时钟 | 带宽 | 特性 |
|---|---|---|---|---|---|
| ISA | 16 | 24 | 8MHz(独立) | 16MBps | |
| EISA | 32 | 32 | 8MHz(独立) | 33MBps | |
| VESA(VL-BUS) | 32 | 33MHz(CPU) | 133MBps | ||
| PCI | 32 64 | 33MHz(独立)66MHz(独立) | 132MBps528MBps | 良好的兼容性,即插即用,支持多主设备,具有与处理器和存储器子系统完全并行操作的能力,提供数据和地址奇偶校验,可扩充,软件兼容性好,支持两种电压标准5V、3.3V,采用多路复用 | |
| AGP | 32 | 66.7MHz(独立)133MHz(独立) | 266MBps533MBps | ||
| RS-232C | 串行通信总线标准 | 数据终端设备(计算机)和数据通信设备(调制解调器)之间的标准接口 | |||
| USB | 串行接口总线标准 | 普通无屏蔽双绞线带屏蔽双绞线最高 | 1.5 Mbps(USB1.0)12Mbps(USB1.0)480Mbps(USB2.0) | 具有真正的即插即用,很强的连接能力,数据传输率,标准统一 |
总线结构
单总线结构

image
双总线结构

image
三总线结构

image
三总线结构又一

image
四总线结构

image
总线判优控制
为什么要设置总线判优控制:总线上所连接的各类设备,按其对总线有无控制功能分为主设备(模块)和从设备(模块)。主设备对总线有控制权,从设备只能响应从主设备发来的总线命令,对总线没有控制权。总线上的信息是又主设备启动的,若多个主设备同时要使用总线时,就由总线控制器的优判,仲裁逻辑按一定的优先等级顺序确定哪个主设备能使用总线。
总线优判控制分为集中式和分布式两种
| 集中式种类 | 特点 |
|---|---|
| 链式查询 | 连线简单,易于扩充,对电路故障最敏感 |
| 计数器定时查询 | 优先级设置较灵活,对故障不敏感,连线及控制过程较复杂 |
| 独立请求 | 响应速度快,优先级次序控制灵活,但连线多,总线控制复杂 |
总线通信
| 通信方式 | 特点 | 适用场合 |
|---|---|---|
| 同步通信 | 指由统一时钟控制的通信,控制方式简单,灵活性差,当系统中各部件工作速度差异较大时,总线工作效率明显下降 | 一般用于总线长度较短,各部件存取时间比较一致的场合 |
| 异步通信 | 指没有统一时钟控制的通信,部件采用应答方式进行联系,控制方式较同步复杂,灵活性高,当系统中各部件工作速度差异较大时,有利于提高总线工作效率 | 又分为不互锁,半互锁,全互锁 |
| 半同步通信 | 既可以像同步通信一样由统一时钟控制,又可以像异步通信一样允许传输时间不一致,工作效率介于两者之间 | |
| 分离式通信 | 1.各模块欲占用总线使用权必须提出申请2.在得到总线使用权后,主模块在限定的时间内向对方传送信息,采用同步方式,不再等待对方回答信号3.各模块在准备数据的过程中都不占用总线,使总线可以接受其他模块的请求4.总线被占用时都在做有效工作,或者通过它发送命令,或者通过它传送数据,不存在空闲等待时间,充分的利用了总线的有效占用,从而实现了总线在多个主,从模块间进行交叉重叠并行传送。 | 大型计算机系统 |
同步式数据输入传输

image
同步式数据输出传输

image
第四章 存储器
存储器分类

image
存储器速度容量和价位的关系

image
缓存主存层次和主存辅存层次

image
缓存主存--解决CPU和主存速度不匹配的问题
主存辅存--解决存储系统的容量问题
主存的主要技术指标
存储容量
指主存能存放二进制代码的总位数
存储容量=存储单元个数*存储字长
存储容量=存储单元个数*存储字长/8
存储速度
由存取时间和存取周期来表示,存取时间指存储器的访时间,存取周期指存储器进行两次独立的存储器操作所需的最小时间间隔
存储器带宽
单位时间内存储器存取的信息量,单位可以用字/秒或字节/秒或位/秒。提高存储器带宽可以1.缩短存取周期2.增加存储字长,使每个存取周期可读/写更多的二进制位数3.增加存储体
静态RAM

image
动态RAM
动态RAM通过电容来存储电荷的原理来存储信息,电容上有足够多的电荷表示存1,无电荷表示存0,电容上电荷一般只能维持1——2ms,因此,必须在2ms内对其所存储单元恢复一次原状态,这个过程称为再生或刷新。
动态RAM时序图

image.png
动态RAM刷新
刷新实质是将原信息读出,在由刷新放大器形成原信息并重新写入的再生过程
集中刷新--在规定的一个刷新周期内,对全部存储单元集中一段时间逐行进行刷新,此刻必须停止读/写操作。之后剩余的时间进行读写操作或维持信息。因此存在“死时间”或访存“死区”。

image
分散刷新--对每行存储单元的刷新分散到每个存取周期内完成。其中把机器的周期tc分成两段,前半段tM用来读写或维持信息,后半段tR用来刷新,不存在死时间,但存取周期长

image
异步刷新--异步刷新为前两种的结合,既可以缩短死时间,又可以充分利用2ms的特点

image
动态RAM和静态RAM的比较
在同样大小的芯片中,动态RAM的集成度远高于静态RAM。
动态RAM行、列地址按先后顺序输送,减少了芯片的引脚,封装尺寸也减少
动态RAM的功耗比静态RAM小
动态RAM的价格比静态RAM的价格便宜
由于使用动态元件(电容),因此它的速度比静态RAM低
动态RAM需要再生,故需要配置再生电路,也需要消耗一部分功率。通常,容量不大的高速缓存器大多用静态RAM实现
存储器与CPU的连接
存储容量的扩展
位扩展--增加存储字长
字扩展--增加存储器字的数量
字、位扩展--既增加存储字的数量,又增加存储字长
存储器与CPU连接
地址线的连接--CPU的地址线往往比存储芯片的地址线数多,通常总是将CPU地址线的低位与存储器的芯片的地址线相连,CPU地址线的高位或在存储芯片的扩充时用,或作其他用途。
数据线的连接--CPU的数据线与存储器的也不等,因此必须对存储芯片扩位使其相等
片选线的连接--是CPU与存储芯片正确工作的关键
合理选择存储芯片--指存储芯片类型(RAM或ROM)和数量的选择。通常用ROM存放程序,标准子程序和各类常数等。RAM为用户编程设计。此外,尽量选择连线简单方便。
提高访存速度的措施
单体多字系统--在一个存取周期内,从同一地址取出4条指令,然后在逐条送至CPU执行。增大存储器带宽,提高存储器工作速度。前提是,指令和数据在主存内必须是连续存放。
多体并行系统--采用多提模块组成的存储器,每个模块具有相同的容量和存取速度,各自具有独立的寄存器(MAR),数据寄存器(MDR),地址译码,驱动电路和读写电路。

image
高位交叉编址的多体存储器

image
低位交叉编址的多体存储器

image
高速缓冲存储器
Cache的基本结构

image
地址映射变换机构--将CPU送来的主存地址转换为Cache地址。
Cache--主存地址映射
直接映射
优点:实现简单,只需要利用主存地址的某些位直接判断,即可确定所需字块是否在缓存中
缺点:不够灵活,每个主存快只能固定的对应某个缓存块,即使缓存内还空着许多位置也不能被占用,使缓存的空间得不到充分的利用。此外,如果程序恰好重复访问对应同一缓存位置不同的主存块,就要不停的进行替换,降低命中率。
全相联映射--允许主存中每一字块映射到Cache中的任何一块位置上。
优点:灵活,命中率高,缩小了快冲突率。
缺点:所需的逻辑电路甚多,成本较高。
组相联映射
第五章 输入输出系统
输入输出系统发展的四个阶段
1.早期阶段
分散连接 CPU和I/O设备 串行工作 程序查询方式
2.接口模块和DMA阶段
总线连接 CPU和I/O设备并行工作
3.具有通道结构的阶段
4.具有I/O处理机的阶段
输入输出系统的组成
1.I/O软件
I/O指令 CPU指令的一部分
| 操作码 | 命令码 | 设备码 |
|---|
通道指令:通道自身的指令 指明数组的首地址、传送字数、操作命令。
I/O硬件
设备 I/O接口
设备 设备控制器 通道
I/O设备与主机的联系方式
1.I/O设备编址方式
统一编址 用取数存数指令
不统一编址 有专门的I/O指令
2.设备寻址
用设备选择电路识别是否被选中
3.传送方式
串行 并行
4.联络方式
立即响应方式
异步方式采用应答信号

image
同步工作采用同步时标联络
5.I/O设备
辐射式连接

image
总线式连接
I/O设备与主机信息传送的控制方式
1.程序查询方式

image
2.程序中断方式
倘若CPU在启动I/O设备后,不查询设备是否已准备就绪,继续执行自身程序,只是当I/O设备准备就绪并向CPU发出中断请求后才予以响应。
3.DMA方式(直接存储器存取)
主存与I/O设备之间有一条数据通路,主存与I/O设备交换信息时,无须调用中断服务程序。若出现DMA和CPU同时访问主存,CPU总是将总线占有权让给DMA,通常把DMA这种占有称为窃取或挪用。窃取的时间一般为一个周期,故又把DMA占用的存取周期窃取周期或挪用周期。
I/O接口
为什么设置I/O接口</mark>
实现设备的选择
实现数据缓冲达到速度匹配
实现数据串--并格式转换
实现电平转换
实现电平转换
传送控制命令
反映设备的状态("忙","就绪","中断请求")
端口和接口的关系
端口是指接口电路中的一些寄存器,这些寄存器用来存放数据信息,控制信息和状态信息,相应的端口被分别称为数据端口,控制端口,和状态端口。若干个端口加上相应的控制逻辑才能组成接口。
接口的功能和组成
总线连接方式的I/O接口电路
设备选择线,数据线,命令线,状态线
接口的功能和组成
| 接口功能 | 接口组成 |
|---|---|
| 选址功能 | 设备选择电路 |
| 传送命令的功能 | 命令寄存器,命令译码器 |
| 传送数据的功能 | 数据缓冲寄存器 |
| 反映设备状态的功能 | 设备标记状态 |

image
接口类型
| 分类 | 种类 |
|---|---|
| 按数据传送方式 | 并行接口(Intel 8255) 串行接口(Intel 8251) |
| 按功能选择的灵活性 | 可编程接口(Intel 8255,Intel 8251) 不可编程接口(Intel 8212) |
| 按通用性 | 通用接口(Intel 8255、 Intel 8251) 专用接口(Intel 8279、 Intel 8275) |
| 按数据传送的控制方式 | 中断接口(Intel 8259) DMA接口(Intel 8257) |
程序查询方式
| 指令 | 作用 |
|---|---|
| 测试指令 | 用来查询I/O设备已准备就绪 |
| 传送指令 | 当I/O设备已准备就绪时,执行传送指令 |
| 转移指令 | 若I/O设备未准备就绪,执行转移指令,转至测试指令,继续测试I/O设备的状态 |
程序流程

image

image
1)CPU发I/O地址设备开始工作;地址总线接口设备选择器译码选中发SEL信号;2)CPU发启动命令DBR开命令接收门;D置0,B置1接口向设备发启动命令;3)CPU等待,输入设备读出数据;4)外设工作完成,B置0,D置1;5)准备就绪信号接口完成信号控制总线CPU;6)输入:CPU通过输入指令(IN)将DBR中的数据取走。
程序中断方式
中断:在执行程序过程中,当出现异常情况或特殊情况请求时,计算机停止现行程序的运行,转向对这些异常情况或特殊情况的请求的处理,处理结束后再返回到现行程序的间断处,继续执行源程序。
程序中断方式配置中断请求和中断寄存

image
接口电路的基本组成

image
中断处理过程
1.CPU响应中断的条件和时间
(1)条件
允许中断触发器 EINT = 1
用 开中断 指令将 EINT 置 “1”
用 关中断 指令将 EINT 置“ 0” 或硬件 自动复位
(2)时间
当 D = 1(随机)且 MASK = 0 时
在每条指令执行阶段的结束前
CPU 发 中断查询信号(将 INTR 置“1”)
2.I/O中断处理过程
1.CPU发启动I/O设备命令,将接口中的B置1,D置0
2.接口启动输入设备开始工作
3.输入设备将数据送入数据缓冲寄存器
4.输入设备向接口发出"设备工作结束"信号,将D置1,B置0
5.当设备准备就绪(D=1),且本设备未被屏蔽(MASK=0),在指令执行阶段的结束时刻,由CPU发出中断查询信号
6.设备中断请求触发器INTR被置1,标志设备向CPU提出中断请求。于此同时,INTR被送至排队器,进行中断优判
7.若CPU允许中断(EINT=1),设备又被选中排队,即进入中断响应阶段
8.向量地址送至PC,作为下一条指令的地址
9.无条件转至设备服务程序的入口地址,进入中断服务阶段
10.执行结束,中断返回至原程序的断点处
中断服务程序的流程
保护现场
中断服务
恢复现场
中断返回
DMA接口的功能和组成
DMA接口具有的功能
向CPU申请DMA传送
在CPU允许DMA工作时,处理总线控制权的转交
在DMA期间管理系统总线,控制数据传送
确定数据传送的气势地址和数据长度,修正数据传送过程中的数据地址和数据长度
在数据块传送结束时,给出DMA操作完成的信号
DMA与主存交换数据的三种方式
1.停止CPU访问主存
2.周期挪用
3.DMA与CPU交替访问
DMA基本组成

image
DMA的工作过程
预处理、数据传送、后处理
DMA方式与中断程序的比较
| 中断方式 | DMA方式 | |
|---|---|---|
| 数据传送 | 程序 | 硬件 |
| 响应时间 | 指令执行结束 | 存取周期结束 |
| 处理异常情况 | 能 | 不能 |
| 中断请求 | 传送数据 | 后处理 |
| 优先级 | 低 | 高 |
第七章 指令系统
指令的一般格式
| 操作码字段 | 地址码字段 |
|---|
操作码 反映机器做什么操作
1).长度固定:用于指令字长较长的情况,RISC。如IBM 370 操作码 8位
2).长度可变:操作码分散在指令字段的不同字段中。
指令字长
指令字长决定于操作码的长度,操作数地址的长度,操作数地址的个数
指令字长固定的话=存储字长
指令字长可变的话=,按字节的倍数变化
操作数类型和操作种类
| 类型 | 代表 |
|---|---|
| 地址 | 无符号整数 |
| 数字 | 定点数、浮点数、十进制数 |
| 字符 | ASCII |
| 逻辑数 | 逻辑运算 |
操作类型
| 操作类型 | 解释 |
|---|---|
| 数据传送 | 寄存器->寄存器、寄存器->存储器等 |
| 算数逻辑运算 | 加、减、乘、除等 |
| 移位操作 | 算数移位、逻辑移位、循环移位(带进位,不带进位) |
| 转移 | 无条件转移(JMP)、条件转移{结果为零转(JZ)、结果溢出转(JO)、结果有进位转(JC)、跳过一条指令(SKP)} |
| 调用和返回 | |
| 陷阱(Trap)与陷阱指令 | 意外事故的中断 |
| 输入和输出 | 端口地址->CPU的寄存器,CPU的寄存器->端口地址 |
寻址方式
| 指令寻址 | 解释 |
|---|---|
| 顺序寻址 | 自动形成下一条指令的地址 |
| 跳跃寻址 | 通过转移类指令实现 |
| 数据寻址 | 例子 |
|---|---|
| 立即寻址 | op # A |
| 直接寻址 | EA=A |
| 隐含寻址 | ACC x |
| 间接寻址 | EA=(A) |
| 寄存器寻址 | EA=R |
| 寄存器间接寻址 | EA=(R) |
| 基址寻址 | EA=A+(BR) |
| 变址寻址 | EA=A+(IX) |
| 相对寻址 | EA=(PC)+A |
| 堆栈寻址 | PUSH A |
设计指令格式应考虑的各种因素
| 因素 | 详细 |
|---|---|
| 操作类型 | 包括指令数及操作的难易程度 |
| 数据类型 | 确定哪些数据类型可以参与操作 |
| 指令格式 | 指令字长是否固定、操作码数、是否采用扩展操作码技术,地址码位数、地址个数、寻址方式类型 |
| 寻址方式 | 指令寻址、操作数寻址 |
| 寄存器个数 | 寄存器的多少直接影响指令的执行时间 |
RISC技术
RISC:精简指令系统计算机
CISC:复杂指令系统计算机
RISC的主要特征
选用使用频度较高的一些简单指令,复杂指令的功能由简单指令来组合
指令 长度固定、指令格式种类少、寻址方式少
只有 LOAD / STORE 指令访存
CPU 中有多个 通用 寄存器
采用 流水技术 一个时钟周期 内完成一条指令
采用 组合逻辑 实现控制器
采用 优化 的 编译 程序
RISC和CISC的比较
RISC更能 充分利用 VLSI 芯片的面积
RISC 更能 提高计算机运算速度(指令数、指令格式、寻址方式少,通用 寄存器多,采用组合逻辑,便于实现指令流水)
RISC 便于设计,可 降低成本,提高 可靠性
RISC 有利于编译程序代码优化
RISC 不易 实现 指令系统兼容
第八章 CPU的结构
CPU的功能
控制器的功能
取指令、分析指令、执行指令,发出各种操作命令、控制程序输入及结果的输出、总线管理、处理异常情况和特殊情况;分别对应指令控制、操作控制、时间控制、处理中断、数据加工。
运算器的功能
实现算数运算和逻辑预算
CPU的结构

image

image
CPU的寄存器
| 分类 | 寄存器 | 作用 |
|---|---|---|
| 用户可见寄存器 | 通用寄存器 | 存放操作数:可做某种寻址方式所需的专用寄存器 |
| 用户可见寄存器 | 数据寄存器 | 存放操作数(满足各种数据类型)两个寄存器拼接存放双倍字长数据 |
| 用户可见寄存器 | 地址寄存器 | 存放地址:其位数应满足最大的地址范围用于特殊的寻址方式 段基值 栈指针 |
| 用户可见寄存器 | 条件码寄存器 | 存放条件码:可作程序分支的依据如 正、负、零、溢出、进位等 |
| 控制和状态寄存器 | 控制寄存器 | PC->MAR->M->MDR->IR,控制CPU |
| 控制和状态寄存器 | 状态寄存器 | 状态寄存器(存放条件码),PSW寄存器(存放子程序状态字) |
指令周期
取出并执行一条指令所需的全部时间。分为取值周期和执行周期
指令周期的数据流
取值周期数据流

image
间址周期数据流

image
执行周期数据流--不同指令的执行周期数据流不同
中断周期数据流

image
影响指令流水线性能的因素
| 因素 | 解释 | 解决 |
|---|---|---|
| 结构相关 | 不同指令争用同一功能部件产生资源冲突使指令流水出现停顿,影响流水线效率 | 停顿、指令存储器和数据存储器分开、指令预取技术 |
| 数据相关 | 不同指令因重叠操作,可能改变操作数的 读/写 访问顺序 | 后推法、采用旁路技术 |
| 控制相关 | 由转移指令引起 | 今早判别转移是否发生、及早生成转移目标地址、预取转移成功或不成功两个控制流方向上的目标指令、加快和提前形成条件码等 |
流水线性能
| 指标 | 性能 |
|---|---|
| 吞吐率 | 单位时间内 流水线所完成指令 或输出结果的数量 |
| 加速比 | m 段的流水线的速度与等功能的非流水线的速度之比 |
| 效率 | 流水线中各功能段的 利用率 |
流水线的多发技术
超标量技术、超流水线技术、超长指令字技术
流水线结构
指令流水线结构

image
运算流水线

image
中断请求
中断请求标记、中断判优逻辑、(硬件排队、软件排队)
中断响应
响应中断的条件:允许中断触发器 EINT = 1
响应中断的 时间:指令执行周期结束时刻由CPU发查询信号
中断隐指令
1.保护程序断点
2.寻找服务程序入口地址
3.硬件 关中断
保护现场和恢复现场
程序断点保护和保护CPU内部个寄存器内容
中断屏蔽技术
1.多重中断的概念
2.实现多重中断的条件
1).提前设置“开中断”指令
2).优先级别高的中断源有权中断优先级别低的中断源
3.屏蔽技术
1).屏蔽触发器和屏蔽字
2).屏蔽技术可改变优先等级
3).屏蔽技术的其他应用
4.多重中断的断点保护
第九章 控制单元功能
取值周期
PC->MAR
1->R
M(MAR)->MDR
MDR->IR
OP(IR)->CU
(PC)+1->PC
间址周期
Ad(IR)->MAR
1->R
M(MAR)->MDR
MDR->Ad(IR)
执行周期
| 指令类别 | 步骤 |
|---|---|
| 非访存指令 | ![]() |
| 访存指令-加法指令 | ADD X、Ad(IR)->MAR、1->R、M(MAR)->MDR、(ACC)+(MDR)->ACC |
| 访存指令-存数指令 | STA X、Ad(IR)->MAR、1->W、ACC->MDR、MDR->M(MAR) |
| 访存指令-取数指令 | LDA x、Ad(IR)->MAR、1->R、M(MAR)->MDR、MDR-ACC |
| 转移指令-无条件转移 | JMP x、Ad(IR)->PC |
| 转移指令-条件转移 | ![]() |
中断周期
0->MAR
1->W
PC->MDR
MDR->M(MAR)
中断程序识别程序入口地址M->PC
0->EINT
控制方式
| 控制方式 | 解释 |
|---|---|
| 同步控制方式 | 任一微操作均由统一基准时标的时序信号控制 |
| 异步控制方式 | 无基准时标信号、无固定的周期节拍和严格的时钟同步、采用 应答方式 |
| 联合控制方式 | 同步与异步相结合 |
| 人工控制方式 | Reset、连续和单条指令执行转换开关、符合停机开关 |

