计算机组成
2021-10-23 15:29:31 114 举报
AI智能生成
计组的概念最多,所以自己就把所有概念总结起来,制作不需要课本的最全思维导图!
作者其他创作
大纲/内容
中央处理器
中央处理器CPU
CPU组成
运算器
ALU
算数逻辑单元
算数逻辑单元
暂存寄存器
ACC
累加寄存器
累加寄存器
通用寄存器组
AX 累加器
BX 基址寄存器
CX 计数器
DX 数据寄存器
PSW
状态字寄存器
状态字寄存器
OF 溢出标志
SF 符号标志
ZF 零标志
CF 进/借位标志
移位器
CT 计数器
控制器
PC 程序计数器
IR 指令寄存器
ID 指令译码器
MAR
存储地址寄存器
存储地址寄存器
MDR
存储器数据寄存器
存储器数据寄存器
时序系统
微操作发生器
其他
MMU
存储器管理单元
存储器管理单元
指令部件
CU 控制单元
中断机构
BIU
总线接口单元
总线接口单元
CPU功能
指令控制
PC, IR, ID
操作控制
时间控制
数据加工
ALU, REG ,REG组
异常及中断处理
外部访问
I/O访问
寄存器组织
用户可见寄存器
数据寄存器
累加寄存器 AC
地址寄存器 AR
基址寄存器
程序计数器 PC
通用寄存器组 GPRS
状态字寄存器 PSR
专用寄存器
指令寄存器 IR
存储器地址寄存器 MAR
存储器数据寄存器 MDR
控制寄存器
微指令寄存器
CPU工作流程
指令周期
取指周期
间址周期
执行周期
中断周期
CPU/机器周期
时钟周期
异常/中断
中断处理程序
中断响应
中断周期
指令执行过程
取指令
指令操作译码
取操作数
数据操作/运算
保存结果
指令地址计算/PC+1
指令执行方案
单指令周期CPU
多指令周期CPU
流水线方案
基本结构图
CPU 控制方式
同步控制方式
异步控制方式
联合控制方式
数据通路
组成
部件
ALU
通用寄存器
状态寄存器
Cache
MMU
浮点运算逻辑
异常和中断处理逻辑
基本结构
总线结构
内部单总线
内部三总线
点点结构
专用数据通路方式
微操作与控制
寄存器间传送uOP
算逻运算uOP
执行算数或逻辑运算
执行过程组织
设计
指令系统分析
功能部件设计
单周期数据通路设计
指令系统分析
功能部件设计
数据操作单元
地址计算单元
寄存器组
特殊功能寄存器
部件互连设计
指令执行过程的组织
多周期数据通路设计
控制器
控制器类型
硬布线控制器
时序系统
时钟周期
机器周期
指令周期
微操作命令分析
类型
单周期
多周期
微程序控制器
相关概念
微命令与微操作
微指令与微周期
主存储器与 CM控制存储器
程序与微程序
微程序与机器指令
微指令编码方式
直接编码
字段直接编码
字段间接编码
混合编码
微指令格式
水平型微指令
垂直型微指令
混合型微指令
常见寄存器
地址寄存器 MAR
微地址寄存器 CMAR
指令寄存器 IR
微指令寄存器 IR
基本组成
控制存储器 CM
微指令寄存器 CMDR
微指令形成部件
微地址寄存器 CMAR
工作过程
执行取微指令公共操作
由机器指令的操作码字段通过微地址形成部件产生
该机器指令所对应的微程序入口地址,并送入 CMAR
该机器指令所对应的微程序入口地址,并送入 CMAR
从 CM中逐条取出对应的微指令并执行
执行完一条机器指令的一个微程序后,又回到取指微程序的入口地址,继续第一步
微程序与硬布线控制器比较
工作原理
以微程序形式控制执行
由组合逻辑电路即时产生
执行速度
慢
快
规整性
较规整
繁琐
应用场合
CISC CPU
RISC CPU
易扩充性
易扩充
困难
时序型号形成
组织
电路组成
主要功能
(PC程序计数器) 取指
取值,并指出下一条指令所在主存位置
取值,并指出下一条指令所在主存位置
(IR 指令寄存器,指令译码器,时序系统)译码
对指令进行译码或测试,产生相应的操作控制信号
对指令进行译码或测试,产生相应的操作控制信号
执行
指挥并控制CPU、主存、I/O设备之间数据流方向
指挥并控制CPU、主存、I/O设备之间数据流方向
指令流水线技术
概念
指令执行方式
顺序/串行执行方式
流水线/并行执行方式
指令集特征
长度尽量一致
格式尽力规整
采用Load/Store指令
数据和指令在存储器中对齐
相关概念
任务拆分
锁存器
时间尽量相等
连续任务执行
装入时间
排空时间
性能指标
吞吐律 Throughput
加速比 Speedup
效率 Efficiency
流水线分类
单/多功能
静/动态
线性/非线性
顺序/乱序
标量/向量
部件功能/处理机/处理机间级
并行技术
超级流水线
多发射流水线
超标量流水线
乱序发射流水线
超长指令字技术
流水线技术
流水线冲突/冒险
资源冲突/结构冒险
数据冲突/数据冒险
写后读 RAW
读后写 WAR
写后写 WAW
控制冲突/控制冒险
冒险处理
结构冒险处理
数据冒险处理
暂停几个时钟周期
硬件阻塞 stall
软件插入 NOP
设置相关专用通路
调整指令顺序
控制冒险处理
分支预测
简单预测
动态预测
加快和提前形成条件码
提高转移方向的猜准率
周期计算
取各功能段最长时间作为CPU周期
注意功能段处理时间和流水线时间区别
CPI
单周期CPU = 1
多周期CPU > 1
基本流水线 = 1
超标量流水线 < 1
常见问题
流水线越多,指令执行一定越快?
指令相关、数据相关概念
中断异常处理
中断源识别
总线
概述
定义
特性
物理特性/机械特性
尺寸、形状
功能特性
每根传输线的功能
电气特性
传输方向和有效电平范围
时间特性
信号和时序的关系
性能指标
总线宽度
总线带宽
数据线宽度 = MDR 宽度【单次传输】
地址线宽度 = MAR宽度【寻址范围】
负载能力
总线周期
总线时钟周期
总线工作频率
总线时钟频率
总线复用
信号线数
结构与互连
总线标准
ISA总线
EISA
PCI总线
PCI-E
不考
AGP
RS-232C
USB
PCMCIA
IDE
SCSI
SATA
VESA
总线结构
单总线结构
多总线结构
双总线
多总线
总线互连
总线分类
片内总线
系统总线
数据总线
地址总线
控制总线
通信/外部总线
同步总线
异步总线
传输内容
数据线
操作数
指令
中断类型号
控制线
总线仲裁
集中式
链式查询
独立请求方式
计时器定时查询
分布式
自举式仲裁
竞争式仲裁
定时与传输
总线定时
同步定时
异步定时
不互锁方式
半互锁方式
全互锁方式
半同步定时
总线操作过程
申请以及分配
传输请求阶段
总线仲裁阶段
寻址阶段
传输数据阶段
结束阶段
总线事务方式
并行传输
串行传输
PCI-Express
突发/猝发传输
同步传输
总线设备
主设备
从设备
补充
引入总线的好处
一个总线能否在同一时刻使多对主从设备进行通信
输入/输出系统
I/O系统基本概念
组成
I/O硬件
I/O软件
接口
外存设备
外部设备
输出设备
输入设备
外设与主机的联系
连接方式
分散连接
总线连接
编制方式
统一编址
独立编址
识别方式
联络方式
数据放松方式
外设与I/O接口的联络方式
外部设备
输入设备
键盘、鼠标
输出设备
显示器
类别
显示器件分类
CRT阴极射线管
LCD液晶显示器
LED发光二极管
信息内容分类
字符显示器
图像显示器
图形显示器
参数
屏幕大小
对角线长度,单位:英寸
分辨率
宽 高像素乘积 【例如:
灰度级
黑白显示器中像素点的亮暗差别
刷新频率
单位时间内扫描整个屏幕内容的次数
显示存储器 VRAM
VRAM 容量 =
VRAM 宽带 =
打印机
针式打印机
喷墨式打印机
激光打印机
外存储器
性能指标
存储密度
存储容量
寻址时间
数据传输率
误码率
平均存取时间
磁表面存储原理
磁记录原理
磁记录方式
归零制 RZ
不归零制 NRZ
调频制 FM
改进型调频制 MFM
磁盘存储器
记录格式
定长记录格式
不定长记录格式
磁盘设备组成
存储区域
磁头
柱面
扇区
硬盘存储器组成
磁盘驱动器
磁盘控制器
磁盘操作时间
寻道时间
定义:将磁头移动到指定位置所需时间
决定因素:磁盘调度算法
延迟时间
定义:磁头定位都某一磁道的扇区(块号)所需要的时间
决定因素:磁盘转速
传输时间
定义:从磁盘读出或向磁盘写入数据所经历的时间
决定因素:磁盘转速
磁盘阵列 RAID
RAID 0
RAID 1
RAID 2
RAID 3
RAID 4
RAID 5
磁盘地址
驱动器号 | 柱面(磁道) 号 | 盘面号 | 扇区号
光盘存储器
CD-ROM
CD-R
CD-RW
DVD-ROM
固态硬盘
基于Flash Memory技术,被归类于ROM的一种
I/O接口(I/O控制器)
I/O接口功能
主机和外设的通信联络控制
进行地址译码和设备选择
实现数据缓冲
信号格式的转换
传送控制命令和状态信息
I/O接口组成
图示
I/O接口分类
数据传输方式
并行接口
串行接口
访问控制方式
程序查询
中断
DMA
I/O接口访问
I/O端口
定义
端口类型
数据端口【读写】
状态端口【只读】
控制端口【只写】
编址方式
统一编址
独立编址
I/O指令
I/O 访问控制方式
程序查询方式/
程序直接控制方式
程序直接控制方式
程序中断方式
中断相关概念
CPU响应中断条件
中断源
中断请求
中断判优
中断响应
中断向量 IV
中断屏蔽
中断允许标志 IF
中断处理过程
中断响应/中断隐指令
关中断
保存断点
中断服务程序寻址
中断处理
保存现场和屏蔽字
开中断
执行中断服务程序
中断返回
关中断
恢复现场和屏蔽字
开中断、中断返回
中断分类
可屏蔽与不可屏蔽
可屏蔽中断
不可屏蔽中断
单重中断与多重中断
多重中断
单重中断
向量与非向量中断
非向量中断【软件识别】
向量中断【硬件识别】
中断系统结构
中断请求连接方式
独立请求
共用请求
中断判优
软件判优
串行判优
并行判优
DMA方式
传送过程
预处理
CPU给DMA控制器发出读命令
数据传送钱由DMA控制器请求总线使用权
DMA传送前由设备驱动程序设置传送参数
数据传送
初始化DMA控制器并启动磁盘
从磁盘传输一块数据到内存缓冲区
后处理
DMA控制器发出中断请求
CPU在指令周期末尾检查中断并处理
执行"DMA结束"中断服务程序
与中断方式区别
过程上
中断为程序切换,需保存和恢复现场;
DMA方式处理预处理和后处理,其余不占用CPU资源
响应时刻
中断在指令周期结束后(末尾);
DMA请求可发生在每个及其周期结束时(取指、间址、执行)均可以
只要CPU不占用总线即可被响应
只要CPU不占用总线即可被响应
CPU参与
中断过程需要CPU参与
DMA传送过程不需要CPU干预,因此数据传输效率高,适合高速外设数据传送
优先级
DMA优先级高于中断请求
作用范围
中断方式除I/O外,还有异常处理能力
DMA仅局限于传送数据块I/O操作
数据传输
中断I/O采用软件完成
DMA采用硬件完成
基本单位
组成
主存地址计数器
传送长度计数器
数据缓冲寄存器
DMA请求触发器
"控制/状态"逻辑
中断机构
四类寄存器
命令/状态寄存器 CR
内存地址寄存器AR
数据寄存器DR
数据计数器DC
传送方式
停止CPU访存
周期挪用/周期窃取
DMA与CPU交替访存
通道方式
补充总结
寄存器
触发器
地址/编址
地址
主存单元
块号
编址
编制方式
高位顺序编址
低位交叉编址
按字编址
按字节编址
寻址
程序执行时间
CPI
CPU时钟频率
数据交换
数据通路结构
编译机器码
编译优化
页表概念关系
页面大小 -> 页内地址位数
虚地址空间大小 -> 虚拟地址位数
虚拟地址=页号+页内偏移
页表项
页号 -> 页框号/块号/页帧号
页号 -> 页框号/块号/页帧号
页表 包含页表项
图示
Cache与内存块
Cache行
每行位数 = 数据位 + 标记
cache 地址=(行号,块内地址)
块内地址=log【主存块大小/编址大小】
行号 =log 【数据区大小 / 主存块大小】
标记 tag
=内存块位-Cache地址+特殊标记位
=内存块位-Cache行号-块内地址+特殊标记位
=内存块位-Cache地址+特殊标记位
=内存块位-Cache行号-块内地址+特殊标记位
相关概念
主存地址位数
编址方式
映射方式
主存块【Cache行】大小
字位数
写策略
Cache数据容量、总容量
位数计算
PC 程序计数器
IR 指令寄存器
指令字长
操作码位数计算
单位换算
秒
十次幂
语言级别
机器语言
汇编语言
高级语言
位/字长/格式
字长
机器字长
存储字长
指令字长
数据字长
位与字节
单位
位bit
字节Byte
字word
存储单元
大小端模式
大端模式
小端模式
C语言的数值
进制
16进制表示
0x(具体16进制值)
0x(具体16进制值)
8进制表示
0(具体8进制值)
0(具体8进制值)
数据字节数
int 4B
short 2B
char 1B
图示
数据转换
有符号->无符号
浮点数->整数
高精度->低精度
强制转换规则
转换路径
等级优先次序
常见数值精度
char 4bit/1B
整数
有符号
-128~127
-128~127
无符号
0~255
0~255
short 16bit/4B
整数
有符号
-32 768 ~ 32 767
-32 768 ~ 32 767
无符号
0~65 535
0~65 535
int 32bit/8B
整数
有符号
-2,147,483,648~2,147,483,647
-2,147,483,648~2,147,483,647
无符号
0~4,294,967,291
0~4,294,967,291
[long/double] 64bit/16B
存储
整数/补码
i = 0x123
浮点数/IEEE754
f = 1.456E3
unsigned int/ int / float
周期
时钟周期
振荡周期
CPU周期/机器周期
状态周期
指令周期
总线周期
任务周期
中断周期/中断响应周期
存取周期
935 考纲
2021】
一、计算机系统概述
(一)计算机发展历程
(二)计算机系统层次结构
1.计算机硬件的基本组成
2.计算机软件的分类
3.计算机的工作过程
(三)计算机性能指标
响应时间、吞吐率,CPU时钟周期、主频
、CPI、CPU执行时间,MIPS、MFLOPS
二、数据的表示和运算
(一)数制与编码
1.进位计数制及其相互转换
2.数据编码:
机器数及其编码,BCD码,字符编码
3.校验码
(二)数据的表示
1. 数值数据的定点表示:
无符号数的表示,有符号数的表示
2. 数值数据的浮点表示:
浮点表示方法,IEEE754标准
3. 非数值数据的表示:
字符与字符串的表示,逻辑数的表示
(三) 定点数的运算
位移运算,位扩展运算,
原码加/减运算,补码加/减运算,
原码一位乘法运算,补码一位乘法运算,
溢出概念和判别方法
(四)浮点数的运算
加/减运算
(五)算术逻辑单元ALU
1.串行进位加法器和并行进位加法器
2.算术逻辑单元ALU的功能和结构
三、存储器层次结构
(一)存储器的分类
(二)存储器的层次化结构
(三)半导体随机存取存储器
1. SRAM存储器的工作原理
2. DRAM存储器的工作原理
3.只读存储器
(四)主存储器
主存的逻辑设计,主存与CPU的连接
,提高访存速度的措施
(五)高速缓冲存储器(Cache)
1.Cache的基本工作原理
2.Cache和主存之间的映射方式
3. Cache中主存块的替换算法
4. Cache写策略
(六)虚拟存储器
1.虚拟存储器的基本概念
2.虚拟存储器的实现
页式虚拟存储器,段式虚拟存储器,
段页式虚拟存储器,TLB(快表)
四、指令系统
(一)指令格式
指令的功能,指令的基本格式,
操作码字段的功能及表示,
地址码字段的功能及表示,
指令字的相关概念
(二)指令的寻址方式
1.有效地址的概念
2.数据寻址和指令寻址
3.常见寻址方式
(三) CISC和RISC的基本概念
五、中央处理器(CPU)
(一) CPU的功能和基本结构
(二) 指令执行过程
CPU的工作流程,指令的执行过程,
CPU基本操作与微操作的关系,
指令执行过程的微操作序列
(三)数据通路的功能和基本结构
数据通路的类型,单总线数据通路的基本结构,
微操作与微操作命令的关系,
指令执行过程的微操作命令序列
(四)控制器的功能和工作原理
1.硬布线控制器
基本结构,时序系统组成,
信号时序控制方式,微操作控制信号形成
2.微程序控制器
微程序相关概念,微指令的编码方式,
微地址的形成方式
(五)指令流水线
1.指令流水线的基本概念
2.指令流水线的基本实现
3.超标量和动态流水线的基本概念
(六)多核处理器的基本概念
六、总线
(一)总线概述
1.总线的基本概念
2.总线的分类
3.总线的组成及性能指标
4. 总线的操作过程
(二)总线仲裁
1.集中仲裁方式:链式查询,
计数器定时查询,独立请求
2.分布仲裁方式的基本概念
(三)总线操作定时
同步定时方式,异步定时方式,半同步定时方式
(四)总线标准
七、输入输出(I/O)系统
(一)I/O系统基本概念
(二)外部设备
输入设备,输出设备,外存储器
(三) I/O接口(I/O控制器)
1.I/O接口的功能和基本结构
2.I/O端口及其编址
3.I/O地址空间及其编码
(四)I/O方式
1.程序查询方式
2.程序中断方式
中断的基本概念,中断响应过程,
中断处理过程,多重中断和中断屏蔽的概念
3.DMA方式
DMA控制器的组成,DMA传送过程
4.通道方式
一、计算机系统概述
(一)计算机发展历程
(二)计算机系统层次结构
1.计算机硬件的基本组成
2.计算机软件的分类
3.计算机的工作过程
(三)计算机性能指标
响应时间、吞吐率,CPU时钟周期、主频
、CPI、CPU执行时间,MIPS、MFLOPS
二、数据的表示和运算
(一)数制与编码
1.进位计数制及其相互转换
2.数据编码:
机器数及其编码,BCD码,字符编码
3
(二)数据的表示
1. 数值数据的定点表示:
无符号数的表示,有符号数的表示
2. 数值数据的浮点表示:
浮点表示方法,IEEE754标准
3. 非数值数据的表示:
字符与字符串的表示,逻辑数的表示
(三) 定点数的运算
位移运算,位扩展运算,
原码加/减运算,补码加/减运算,
原码一位乘法运算,补码一位乘法运算,
溢出概念和判别方法
(四)浮点数的运算
加/减运算
(五)算术逻辑单元ALU
1.串行进位加法器和并行进位加法器
2.算术逻辑单元ALU的功能和结构
三、存储器层次结构
(一)存储器的分类
(二)存储器的层次化结构
(三)半导体随机存取存储器
1. SRAM存储器的工作原理
2. DRAM存储器的工作原理
3.只读存储器
(四)主存储器
主存的逻辑设计,主存与CPU的连接
,提高访存速度的措施
(五)高速缓冲存储器(Cache)
1.Cache的基本工作原理
2.Cache和主存之间的映射方式
3. Cache中主存块的替换算法
4. Cache写策略
(六)虚拟存储器
1.虚拟存储器的基本概念
2.虚拟存储器的实现
页式虚拟存储器,段式虚拟存储器,
段页式虚拟存储器,TLB(快表)
四、指令系统
(一)指令格式
指令的功能,指令的基本格式,
操作码字段的功能及表示,
地址码字段的功能及表示,
指令字的相关概念
(二)指令的寻址方式
1.有效地址的概念
2.数据寻址和指令寻址
3.常见寻址方式
(三) CISC和RISC的基本概念
五、中央处理器(CPU)
(一) CPU的功能和基本结构
(二) 指令执行过程
CPU的工作流程,指令的执行过程,
CPU基本操作与微操作的关系,
指令执行过程的微操作序列
(三)数据通路的功能和基本结构
数据通路的类型,单总线数据通路的基本结构,
微操作与微操作命令的关系,
指令执行过程的微操作命令序列
(四)控制器的功能和工作原理
1.硬布线控制器
基本结构,时序系统组成,
信号时序控制方式,微操作控制信号形成
2.微程序控制器
微程序相关概念,微指令的编码方式,
微地址的形成方式
(五)指令流水线
1.指令流水线的基本概念
2.指令流水线的基本实现
3.超标量和动态流水线的基本概念
(六)多核处理器的基本概念
六、总线
(一)总线概述
1.总线的基本概念
2.总线的分类
3.总线的组成及性能指标
4. 总线的操作过程
(二)总线仲裁
1.集中仲裁方式:链式查询,
计数器定时查询,独立请求
2.分布仲裁方式的基本概念
(三)总线操作定时
同步定时方式,异步定时方式,半同步定时方式
(四)总线标准
七、输入输出(I/O)系统
(一)I/O系统基本概念
(二)外部设备
输入设备,输出设备,外存储器
(三) I/O接口(I/O控制器)
1.I/O接口的功能和基本结构
2.I/O端口及其编址
3.I/O地址空间及其编码
(四)I/O方式
1.程序查询方式
2.程序中断方式
中断的基本概念,中断响应过程,
中断处理过程,多重中断和中断屏蔽的概念
3.DMA方式
DMA控制器的组成,DMA传送过程
2022】
一、计算机系统概述
(一)计算机发展历程
(二)计算机系统层次结构
1.计算机硬件的基本组成
2.计算机的工作过程
(三)计算机性能指标
响应时间、吞吐率,CPU时钟周期、主频
、CPI、CPU执行时间,MIPS、MFLOPS
二、数据的表示和运算
(一)数制与编码
1.进位计数制及其相互转换
2.数据编码:
机器数及其编码,BCD码,字符编码
(二)数据的表示
1.数值数据的定点表示:
无符号数的表示,有符号数的表示
2.数值数据的浮点表示:
浮点表示方法,IEEE754标准
3.非数值数据的表示:
字符与字符串的表示,逻辑数的表示
(三)定点数的运算
位移运算,位扩展运算,补码加/减运算,
原码一位乘法运算,补码一位乘法运算,
溢出概念和判别方法
(四)浮点数的运算
加/减运算
(五)算术逻辑单元ALU
1.串行进位加法器和并行进位加法器
2.算术逻辑单元ALU的功能和结构
三、存储器层次结构
(一)存储器的分类
(二)存储器的层次化结构
(三)半导体随机存取存储器
1.SRAM存储器的工作原理
2.DRAM存储器的工作原理
3.只读存储器
(四)主存储器
主存的逻辑设计,主存与CPU的连接,
提高访存速度的措施
(五)高速缓冲存储器(Cache)
1.Cache的基本工作原理
2.Cache和主存之间的映射方式
3.Cache中主存块的替换算法
4.Cache写策略
(六)虚拟存储器
1.虚拟存储器的基本概念
2.虚拟存储器的实现
页式虚拟存储器,段式虚拟存储器,
段页式虚拟存储器,TLB(快表)
四、指令系统
(一)指令格式
指令的功能,指令的基本格式,
操作码字段的功能及表示,
地址码字段的功能及表示,
指令字的相关概念
(二)指令的寻址方式
1.有效地址的概念
2.数据寻址和指令寻址
3.常见寻址方式
(三)CISC和RISC的基本概念
五、中央处理器(CPU)
(一)CPU的功能和基本结构
(二)指令执行过程
CPU的工作流程,指令的执行过程,
CPU基本操作与微操作的关系,
指令执行过程的微操作序列
(三)数据通路的功能和基本结构
数据通路的类型,单总线数据通路的基本结构,
微操作与微操作命令的关系,
指令执行过程的微操作命令序列
(四)控制器的功能和工作原理
1.硬布线控制器
基本结构,时序系统组成,
时序信号形成,微操作控制信号形成
2.微程序控制器
(五)异常和中断机制
1.异常和中断的基本概念
2.异常和中断的处理过程
(六)指令流水线
1.指令流水线的基本概念
2.指令流水线的基本实现
3.超标量和动态流水线的基本概念
(六)多核处理器的基本概念
六、总线
(一)总线概述
1.总线的基本概念
2.总线的分类
3.总线的组成及性能指标
4.总线的操作过程
(二)总线仲裁
1.集中仲裁方式:链式查询,
计数器定时查询,独立请求
2.分布仲裁方式的基本概念
(三)总线传输与定时
总线事务类型,总线定时方式,总线标准
七、输入输出(I/O)系统
(一)I/O系统基本概念
(二)外部设备
输入设备,输出设备,外存储器
(三) I/O接口(I/O控制器)
1.I/O接口的功能和基本结构
2.I/O端口及其编址
(四)I/O方式
1.程序查询方式
2.程序中断方式
中断响应过程,中断处理过程,多重中断和中断屏蔽的概念
3.DMA方式
DMA控制器的组成,DMA传送过程
一、计算机系统概述
(一)计算机发展历程
(二)计算机系统层次结构
1.计算机硬件的基本组成
2.计算机的工作过程
(三)计算机性能指标
响应时间、吞吐率,CPU时钟周期、主频
、CPI、CPU执行时间,MIPS、MFLOPS
二、数据的表示和运算
(一)数制与编码
1.进位计数制及其相互转换
2.数据编码:
机器数及其编码,BCD码,字符编码
(二)数据的表示
1.数值数据的定点表示:
无符号数的表示,有符号数的表示
2.数值数据的浮点表示:
浮点表示方法,IEEE754标准
3.非数值数据的表示:
字符与字符串的表示,逻辑数的表示
(三)定点数的运算
位移运算,位扩展运算,补码加/减运算,
原码一位乘法运算,补码一位乘法运算,
溢出概念和判别方法
(四)浮点数的运算
加/减运算
(五)算术逻辑单元ALU
1.串行进位加法器和并行进位加法器
2.算术逻辑单元ALU的功能和结构
三、存储器层次结构
(一)存储器的分类
(二)存储器的层次化结构
(三)半导体随机存取存储器
1.SRAM存储器的工作原理
2.DRAM存储器的工作原理
3.只读存储器
(四)主存储器
主存的逻辑设计,主存与CPU的连接,
提高访存速度的措施
(五)高速缓冲存储器(Cache)
1.Cache的基本工作原理
2.Cache和主存之间的映射方式
3.Cache中主存块的替换算法
4.Cache写策略
(六)虚拟存储器
1.虚拟存储器的基本概念
2.虚拟存储器的实现
页式虚拟存储器,段式虚拟存储器,
段页式虚拟存储器,TLB(快表)
四、指令系统
(一)指令格式
指令的功能,指令的基本格式,
操作码字段的功能及表示,
地址码字段的功能及表示,
指令字的相关概念
(二)指令的寻址方式
1.有效地址的概念
2.数据寻址和指令寻址
3.常见寻址方式
(三)CISC和RISC的基本概念
五、中央处理器(CPU)
(一)CPU的功能和基本结构
(二)指令执行过程
CPU的工作流程,指令的执行过程,
CPU基本操作与微操作的关系,
指令执行过程的微操作序列
(三)数据通路的功能和基本结构
数据通路的类型,单总线数据通路的基本结构,
微操作与微操作命令的关系,
指令执行过程的微操作命令序列
(四)控制器的功能和工作原理
1.硬布线控制器
基本结构,时序系统组成,
时序信号形成,微操作控制信号形成
2.微程序控制器
(五)异常和中断机制
1.异常和中断的基本概念
2.异常和中断的处理过程
(六)指令流水线
1.指令流水线的基本概念
2.指令流水线的基本实现
3.超标量和动态流水线的基本概念
(六)多核处理器的基本概念
六、总线
(一)总线概述
1.总线的基本概念
2.总线的分类
3.总线的组成及性能指标
4.总线的操作过程
(二)总线仲裁
1.集中仲裁方式:链式查询,
计数器定时查询,独立请求
2.分布仲裁方式的基本概念
(三)总线传输与定时
总线事务类型,总线定时方式,总线标准
七、输入输出(I/O)系统
(一)I/O系统基本概念
(二)外部设备
输入设备,输出设备,外存储器
(三) I/O接口(I/O控制器)
1.I/O接口的功能和基本结构
2.I/O端口及其编址
(四)I/O方式
1.程序查询方式
2.程序中断方式
中断响应过程,中断处理过程,多重中断和中断屏蔽的概念
3.DMA方式
DMA控制器的组成,DMA传送过程
系统概述
功能
数据处理
数据存储
数据传输
发展
历史
电子管/磁鼓存储器
晶体管/磁芯存储器
中小规模集成电路//磁芯
超大规模集成电路/半导体
趋势
微型化、网络化、智能化
巨型化、并行化、超高速
组成
冯诺依曼计算机
五大部件
硬件结构
硬件结构
计算器【核心】
控制器
存储器
输入设备
输出设备
工作方式
“存储程序”
程序由若干条指令组成的指令序列
程序执行可看作指令执行过程,取指令、分析指令、执行指令
顺序取指工作
以运算器为中心,I/O和存储器数据都经过运算器
根据指令周期的不同阶段区分存储器取出的是指令还是数据
存储器结构
只需一个存储器,可为由定长单元组成的一维空间
指令数据都由二进制表示
现代计算机结构
硬件结构
存储器
主存
辅存
存储字长
运算器
加法器 ALU
浮点运算器 FPU
各类寄存器
控制器
程序计数器 PC
指令寄存器 IR
指令译码器 ID
控制单元 CU
I/O设备
辅存 和 I/O 合称外设
总线
系统总线
数据总线 DBus
控制总线 CBus
地址总线 ABus
总线传输
工作方式
总线传输
优点
传输控制简单、可扩展性好
缺点
需要分时进行信息传输【总线共用】
I/O接口
定义
在外设和总线之间增设连接电路
主要功能
数据缓冲、格式转换、通信控制...
其他名称
设备适配器、设备控制器
层次结构
编程语言级别
高级语言M4
汇编语言M3
操作系统M2【平台/软硬交界面】
机器语言M1
微程序级M0
翻译/解释
翻译
将程序直接转化为可执行【机器语言】程序
将程序直接转化为可执行【机器语言】程序
解释
每一条语句在运行中动态解释为一条等效机器语言
每一条语句在运行中动态解释为一条等效机器语言
软件与硬件
OS 软硬件交界面【虚拟机器与实际机器之间部分】
工作过程
程序执行顺序
顺序型指令
跳转(转移)型指令
程序执行机制
程序执行 循环的指令执行
指令执行过程
取指令
分析指令
执行指令
控制执行 CU
指标
硬件技术
机器字长 = CPU 整数运算处理位数
CPU 主频
节拍脉冲/机器脉冲源
CPU 主时钟周期/节拍周期
CPU 时钟周期
时钟脉冲信号的宽度
CPU 主频/时钟频率
单位
一般为 MHz 或 GHz【10进制量】
一般为 MHz 或 GHz【10进制量】
CPI
存储容量
CPU 可寻址空间大小
2^MDR 2^MAR
字数 字长
编址单位
字
字节
数据通路带宽
性能
响应时间/执行时间
定义
一个任务从提交到完成所花的全部时间
一个任务从提交到完成所花的全部时间
公式
CPU时间
吞吐率/吞吐量
定义
单位时间内计算机完成的总工作量
单位时间内计算机完成的总工作量
公式
单位
MFLOPS
MIPS
指令条数 / (指令时间 1e6)
主频 / CPI
数据表示与运算
数据编码
数值转换
进位计数制
按权展开
公式
常用进位单位
Binary 二进制
【%o】Octal 八进制
8进制表示
0(具体8进制值)
0(具体8进制值)
Decimal 十进制
【%x】Hexadecimal 十六进制
16进制表示
0x(具体16进制值)
0x(具体16进制值)
二进制编码优点
表示方便
对应布尔逻辑运算
编码和运算规则简单,能够用逻辑门电路方便实现
进制转换
二次幂进制转换
二进制转八进制
二进制转十六进制
十进制转换
任意进制数转换为十进制
十进制转换为任意进制
整数转换
除基取余
减权定位
小数转换
乘基取整
减权定位
机器数编码
概念
机器数
真值
有符号数编码
原码
n位机器数,1位表示符号,n-1位表示数值,则数值最高权位2^{n-2}
运算
加减运算先比较大小,符号与数值分开运算【手工运算】
表示范围与真值相同,但编码 +0 ≠ -0
补码
表示
[X]与[-X]转化
全部位取反末位加1【相反数补码】
运算
正数补码=正数原码
负数补码=-真值原码(数值位为各位取反,末位加1)
补码运算符号位一起参与计算
非溢出运算下,符号位直接参与到运算中,并且舍去第位
非溢出运算下,符号位直接参与到运算中,并且舍去第位
负数补码 = 负数反码 + 1
正数补码 = 反码 = 原码
正数补码 = 反码 = 原码
反码
移码
表示 【补码符号位取反】
特点
零表示唯一
真值的补码和移码在符号位相反
移码全为0时,对应真值最小值 ; 移码全为一时,对应真值最大值
移码保持了数据的原有大小顺序,移码越大真值越大,反之同理
无符号编码
BCD编码
有权码
8421码【默认】
公式
其他
2421、5211、4311码
2421、5211、4311码
无权码
余3码
公式
格雷码
无符号数编码
字符编码
字符
输入码
字模/字形码
内码
交换码
字符集
ASCII
GB2312-80
Unicode
字符编码
数据校验码
概念
数据校验
校验码
数据信息/数据位
校验信息/校验位
码距
判断编码冗余程度
码字中位置不同的个数的最小值
编码类型
奇偶校验码
基本原理
通过校验码中1的个数为奇数(偶)来判断是否有误
异或
故障字
优缺点
优点:简单,开销小
缺点:码距为2较小,不能确定错位置,无纠错能力
缺点:码距为2较小,不能确定错位置,无纠错能力
海明校验码
基本原理
相关概念
单纠错码 SEC
单纠错双检错码 SEC-DED
校验位数确定
故障字表示 ≥ 所有的错误状态
双位出错+单位出错情况
分组规则
CRC循环冗余校验码
编码
校验
数据表示
数据
数值数据
进制选择
符号表示
有符号数
编码最高位表示符号,原码
编码最高位表示符号,原码
无符号数
符号放在最低位,BCD码
符号放在最低位,BCD码
小数点表示
定点
浮点
编码方式
非数值数据
定点数
定点整数
%u】没有符号位所以数值多一位
%d】有符号整数【最高位为符号】
有符号整数
定点小数
纯小数
纯小数
实数/浮点数
表示
浮点表示法
十进制转浮点数
浮点数转十进制
最大整数/最小负数
浮点数规格化
类似于科学计数法,通过左右规格操作【左右移位】
把浮点数真值部分表示为xxx
把浮点数真值部分表示为xxx
一般格式
IEEE 754标准
标准格式
32位单精度 float
格式
规格化真值
格式参数
最小规格化正数
最大规格化负数
求浮点数机器码
2011真题
解法
规格化/原码表示
通过规格化数公式求出 E 和 M 的值
求出FRI的二进制值
化为16进制表示
结果
64位双精度 double
格式
规格化真值
浮点数表示范围
单精度
双精度
非数值数据
逻辑数表示
表示
位向量。通常于整数长度种类相同,需要通过指令操作码才能区分
位向量。通常于整数长度种类相同,需要通过指令操作码才能区分
运算
&与,| 或,!非,~取反,^异或
&与,| 或,!非,~取反,^异或
字符/字符串表示
表示
交换码和扩展码;交换码即实际编码位,扩展码用来补全字节整数位
交换码和扩展码;交换码即实际编码位,扩展码用来补全字节整数位
运算
=,>,<等关系运算
=,>,<等关系运算
实现方法
ZF【是否位0】,CF【是否借位】,SF【符号标志】,OF【溢出标志】
ZF【是否位0】,CF【是否借位】,SF【符号标志】,OF【溢出标志】
字符串
一般由软件转字符串位字符操作,并用特定字符表示结束位置;C语言'\0'表示结束符
一般由软件转字符串位字符操作,并用特定字符表示结束位置;C语言'\0'表示结束符
数据运算
加减运算
定点数运算
补码加减
运算规则
补码带符号一起算
溢出判断
定义
特征
方法
OF=1溢出
OF=1溢出
一个符号位判断溢出
进位位值判断溢出
双符号位编码判断溢出[01正溢出,10负溢出]
原码
运算规则
判断求和/求差
求和
求差
溢出判断
无符号加减运算
运算规则
原码减法使用补数计算
溢出判断
进位位值判断溢出【Ci 表示第 i 位是否进位】
浮点数运算
运算步骤
对阶
小阶对大阶,大阶作为运算结果的阶
尾数右移为算数移位,移除的数值进入附加位
尾数加减
可通过规格化改变小数点,一般采用双符号位进行运算
尾数规格化
将移动至 区间内
尾数舍入
截断法
恒置1法
舍入法
原码
补码
查表舍入法
溢出判断
附加位/IEEE 754
保护位和舍入位
【在运算时添加到尾数末尾】
【在运算时添加到尾数末尾】
十进制数运算
加法校正规则
减法校正规则
乘法运算
循环右移法
无符号乘法
运算规则
循环进行 n 次判断-加法-移位操作【n维乘数位数】
部分积的位数为 被乘数的位数
部分积的位数为 被乘数的位数
逻辑实现
寄存器【存放乘数、部分积高位】
Cnt计数器,控制循环次数;
控制门、加法器、移位寄存器
溢出判断
原码一位乘法
运算规则
计算乘积符号
计算真值【无符号乘法】
递推逻辑
代码表达
手算模拟图示
与运算器部件
ACC 乘积高位
MQ 乘数、乘积低位
X 通用寄存器【结果】
图示
补码一位乘法
运算规则
Booth算法
Booth算法
表示
递推逻辑
结论【判断位-加法-算数右移】
与原码乘法比较
运算器结构
手算模拟
阵列乘法器
并行运算,用物理空间换时间
竖式计算(笔算)
确定符号位
每次左移相乘再相加
移位运算
操作
左移
右移
类型
逻辑移位
对象
无符号数
运算规则
<<左移末位补 0
>>右移首位补0
>>右移首位补0
算术移位
对象
有符号数
运算规则
溢出判断
原码<<丢1,补码算数<<移丢符号相反位
右移不会溢出,但是会产生精度误差
其他移位运算
带进位的逻辑移位
循环移位
位扩展运算
零扩展
机器出高位添0,适用于无符号数
机器出高位添0,适用于无符号数
符号扩展
高位添符号位,适用于有符号数【补码】
高位添符号位,适用于有符号数【补码】
溢出判断
一位符号位
溢出逻辑表达式
V=0 无溢出
V=1 有溢出
双符号位
溢出逻辑判断表达式
01 上溢
10 下溢
00 正数
11 负数
操作可能溢出影响
对阶 不会
右规 阶码上溢
尾数舍入 阶码上溢
左规 阶码下溢
尾数溢出 不一定
一位符号位并根据数据位进位情况判断
运算器组成
加法器组成
一位全加器
输出位
进位位【+ 逻辑或】
并行加法器
串行进位
先行/并行进位
ALU组成
74181【4位ALU】16种算数运算和逻辑运算
运算功能
定点运算
逻辑运算
浮点运算
关系运算
由逻辑、算数运算实现
由逻辑、算数运算实现
运算器部件
ALU
算数逻辑单元
算数逻辑单元
暂存寄存器
ACC
累加寄存器
累加寄存器
通用寄存器组
PSW
状态字寄存器
状态字寄存器
OF 溢出标志
SF 符号标志
ZF 零标志
CF 进/借位标志
移位器
CT 计数器
图解
定点运算结构
运算器与CPU
C语言类型转换
相同字长/类型
有符号数无符号数
有符号数无符号数
二进制数值不改变,但解释方式不同
不同字长整数
高字长 -> 低字长
采取高位多余部分截断,保留低位数据
采取高位多余部分截断,保留低位数据
低字长 -> 高字长
扩展后真值保持不变
扩展后真值保持不变
char 转 int
高位部分补0即可
高位部分补0即可
数据存储/排列
大小端模式
LSB 小端存储
MSB 大端存储
数据"边界对齐"
图示
边界对齐
边界不对齐
存储系统
存储器分类
存储介质分类
半导体器件
TTL
MOS【广泛】
磁性材料
磁芯
磁表面
磁盘
磁带
光介质材料
光盘
存取方式分类
随机存取 RAM
编制单位
存储字
存储字
操作方式
存取
存取
存取时间
固定
固定
常见类型
RAM / EPROM
只读存储器 ROM
串行访问存储器
顺序存取 SAM
编制单位
记录块
记录块
操作方式
存取
存取
常见类型
磁带
直接存取 DAM
编制单位
记录块
记录块
操作方式
存取
存取
存取时间
可变(与访问地址关系较小
可变(与访问地址关系较小
常见类型
磁盘
光盘
应用功能分类
主存储器 MM
组成
ROM、RAM
ROM、RAM
功能
存放指令和数据
存放指令和数据
辅助存储器 AM
高速缓冲存储器 Cache
控制存储器 CM
组成
ROM(只读)
ROM(只读)
功能
用于存放指令系统的全部微指令
用于存放指令系统的全部微指令
按信息可保存性分类
易失性存储器
RAM
非易失性存储器
ROM
磁表面存储器
光存储器
破坏性读出
非破坏性读出
技术指标
存储容量
单位/单位换算
bit位,Byte字节,8bit=1Byte=1B,KB,MB,GB,TB,ZB
bit位,Byte字节,8bit=1Byte=1B,KB,MB,GB,TB,ZB
计算公式
存储字数 字长
存储字数 字长
存取速度
存取/访问时间
T存取 = T完成 - T启动
存储周期
存期周期=存取时间+恢复时间
主存带宽
单位
Mbps(兆位/秒),MB/s(兆字节/秒)
Mbps(兆位/秒),MB/s(兆字节/秒)
总线传输周期
单位成本
每位价格 = 总成本/总容量
层次结构
划分原理
局部性原理
时间局部性
空间局部性
Cache -> 主存 -> 辅存
Cache-主存
主存-辅存
半导体存储技术
RAM
静态 SRAM
存储元
触发器
触发器
6位MOS型结构
芯片基本组成
存储矩阵/阵列
排列方式
一维、二维
一维、二维
信号延迟
线路长度成正比
线路长度成正比
地址译码器
功能
将每个地址信号转换为相应电平信号
将每个地址信号转换为相应电平信号
方式
单译码
双译码
图示结构
I/O门
功能
从所有列的存储单元中,选择一个进行I/O
从所有列的存储单元中,选择一个进行I/O
读写电路
组成与长度
由读、写放大器组成,每个读写电路只能读写一位数据
而芯片中读写电路则于存储单元长度相同
由读、写放大器组成,每个读写电路只能读写一位数据
而芯片中读写电路则于存储单元长度相同
控制电路
片选信号
芯片引脚
数据引脚
地址引脚
图示结构
A10~A0地址引脚,D1~D0数据引脚
动态 DRAM
存储单元
MOS管(电容)
MOS管(电容)
相比SRAM存储单元结构简单了不少
芯片基本组成
存储矩阵
地址译码器
读写电路
地址锁存器
再生电路
时序控制电路
行时钟
列时钟
写时钟
图示结构
芯片引脚
数据引脚
地址引脚
芯片读写周期
读周期
写周期
刷新周期
芯片刷新操作
方式
集中式
分散式
异步式
减小刷新
18】假定DRAM芯片中存储阵列的行数为r,列数为c
对于一个2K x 1位的DRAM芯片,为保证其他地址引脚最少
且尽量减少刷新开销,则 r , c 的取值分别为
对于一个2K x 1位的DRAM芯片,为保证其他地址引脚最少
且尽量减少刷新开销,则 r , c 的取值分别为
地址线复用技术
SRAM v.s. DRAM
存储信息
触发器/电容
破坏性读出
非/是
需要刷新
不要/要
送行列地址
同时送/分两次
运行速度
快/慢
集成度
低/高
发热量(功耗)
大/小
存储成本
高/低
主要用途
高速缓存/主机内存
ROM
非易失存储
非易失存储
MROM掩模式存储器
PROM 一次可编程
EPROM (光)可擦除编程
EEPROM 电可擦除
Flash 闪存
U盘
SSD 固态存储器
引脚数计算
假设 某芯片容量为 1024【地址个数】8【数据位数】位
地址引脚
地址引脚数 =
地址个数 = 总存储容量 / 数据位数
数据引脚
数据引脚数=存储单元长度=数据位数 = 8
引脚总个数 = 数据线 + 地址线 + 片选线 + 读/写控制线(RD+WE)
真题
408/14】
容量为256MB的存储器由若干4M x 8位的 DRAM芯片
(就是DRAM存储器)构成,则其地址引脚和数据引脚分别为
容量为256MB的存储器由若干4M x 8位的 DRAM芯片
(就是DRAM存储器)构成,则其地址引脚和数据引脚分别为
主存储器 MM
基本组成
主存容量
主存容量=存储字长 存储字数 = 主存单元长度 主存单元个数
主存容量=存储字长 存储字数 = 主存单元长度 主存单元个数
主存
通常由 RAN 和 ROM 芯片构成
通常由 RAN 和 ROM 芯片构成
容量扩展
位扩展法
又称 位并联法
将多个存储器芯片并联从而增加存储字长
将多个存储器芯片并联从而增加存储字长
片选信号 要连接所有芯片
m片 8K x 1 位,组成 8K x m位的存储器
图示
地址由A0~A9进行并联,CS片选信号,一次全部芯片选中
字扩展法
又称 地址串联法
通过芯片串联起来增加存储字数
通过芯片串联起来增加存储字数
2K x 4位的芯片组成一个 8K x 8位的存储器
则0B1FH所在芯片最小地址为
则0B1FH所在芯片最小地址为
图示
增加高位A10~Ax,作为片选信号,选择第几个芯片的位置
字位扩展法
行(位扩展/并联)
列(字扩展/串联)
真题
与CPU存储器接口
数据线连接
数据线数=可访问数据位数=MDR宽度
数据线 ≠ SRAM芯片数据引脚
地址线连接
地址线数 = 主存最大可寻址空间=MAR宽度
控制线连接
读写操作
片选
线选法
译码片选法
字选
Intel 8088 CPU
图示
部件
READY
A0~A19
D0~D7
提高访存速度
增强DRAM
FPM DRAM(快页模式)
SDRAM/异步DRAM
在时钟周期控制下操作
突发传输模式
在第一个数据被访问后,可以连续传输多个数据
在第一个数据被访问后,可以连续传输多个数据
DDR SDRAM
双倍数据速率
双倍数据速率
双端口 RAM 存储器
多模块存储器
单体多字存储器
多体交叉存储器
高位顺序编址
顺序编址
顺序访问
低位交叉编址
交叉编址
并行访问
冲突访问
访问时间
交叉存取度
总线传输周期
顺序访问
交叉访问
带宽
图示
高位交叉编址
低位交叉编制
工作方式
串行访问
并行访问
交叉访问
Cache
基本原理
性能指标
命中率
平均访问时间
命中时访问一次Cache, 没命中时访问一次Cache和主存
也可记作
存储空间管理
信息交换单位
交换单位
Cache块(行)
Cache块(行)
Cache块(行)长
块由若干字节构成,块的长度
块由若干字节构成,块的长度
CPU 与 Cache交换以字为单位,而Cache 与主存以Cache块为单位
地址映射表/阵列编址单位
与主存相同
信息组织
阵列表、目录表
需对Cache的字编址
指令类别
将 指令Cache 和 数据Cache 进行分开
有利于减少指令流水线资源冲突
有利于减少指令流水线资源冲突
Cache地址
cache 地址 = cache 行号 + 块内地址
传输优化
提高
局部性原理
局部性原理
时间局部性
空间局部性
减小
利用猝发传输
利用猝发传输
访问过程
图示
地址映射
直接映射
转换公式
地址结构
相关概念
区
图示
全相联映射
转换
Cache每一块与主存每一块都相联,
所以内存每一块都能够快速找到适应的Cache位置
Cache每一块与主存每一块都相联,
所以内存每一块都能够快速找到适应的Cache位置
地址结构
组相联映射
转换
组件采用直接映射,组内采用全相联映射
组件采用直接映射,组内采用全相联映射
Q = 1 全相联映射
Q = Cache 直接映射
Q = r ,r路组相联
Q = 2 ,2路组相联
地址结构
相关问题
不常见转换方法
图示
替换算法
随机算法 RAND
先进先出算法 FIFO
最近最少使用算法 LRU
写策略
写命中
write-through
全写法/直写方式
全写法/直写方式
写缓冲
write-back
回写法
回写法
写不命中
非写分配法
写分配法
Pentium芯片
结构
多级Cache结构
哈佛结构
组织
特殊标记位
有效位【必备】
脏位/一致维护位
引用位/替换算法控制位
Cache总容量
Cache行
cache 地址=(行号,块内地址)
标记 tag
=内存块位-Cache地址+特殊标记位
=内存块位-Cache行号-块内地址+特殊标记位
=内存块位-Cache地址+特殊标记位
=内存块位-Cache行号-块内地址+特殊标记位
Cache行数 x 每行位数
每行位数 = 数据位 + 标记 + 特殊标记位
其他常见问题
Cache行大小与命中率关系
行长越大,空间局部性的效果越好
行长大时,未命中,需要花更多从主存读入时间
行长太大,Cache项数变小,因而命中律的可能性变小
发生取指令Cache缺失的处理过程是什么
程序计数器恢复当前指令的值
对主存进行读的操作
将读入的指令写入Cache中,更改有效位和标记位
重新执行当前指令
多级Cache
指令Cache 和 数据Cache
虚拟存储器
相关概念
程序地址空间
从 0 开始编址
逻辑地址
程序中存储器地址
程序中存储器地址
物理地址
主存的地址
主存的地址
地址空间
表示任何一个计算机实体所占用的内存大小
表示任何一个计算机实体所占用的内存大小
主存空间分配
连续分配
单一连续
固定分区
动态分区/可变分区分配
首次适应
简单,相对最好和最快
最佳适应
外部碎片多
最坏适应
不容易产生小碎片,但容易导致大内存块耗尽,性能差
邻近适应/循环首次适应
比首次适应算法还差
非连续分配
扩充
基本原理
组成
工作过程
理论基础
局部性原理
存储管理
段式
逻辑地址
(段号S,段内偏移量W)
段表
(段号S,段长,本段在主存的始址)
每个进程都有一张段表,大多数驻留在内存中
地址变换机构
段共享和保护
可同时读不可写【纯代码/可重入代码】
存取控制保护
地址越界保护
异常
段缺失异常
段页不在内存页表中
越界异常
超过段长
越权异常
读写权限越权
页式
页/页面大小
页框=页帧=内存块
进程块=页/页面
页面太小:页表过长,增加转换开销,降低换入/换出率
页面太大:页内碎片多,降低内存利用率
地址结构
(页号P,页内地址偏移W)
实地址=主存页号+页内字地址
虚地址=虚存页号+页内字地址
辅存地址=磁盘号+盘面号+磁道号+扇区号
页表
记录进程页面在内存中对应的物理地址
页表存放于内存中,由页表项构成
每个进程一个页表
页表项
(页号P,块号B)
地址变换机构
基本地址变换
快表地址变换
两级页表
地址转换
n级页表
虚拟地址空间
内核地址空间
用户地址空间
用户栈
共享库
堆
可读写数据区
只读数据和代码区
工作过程
TLB/Page/Cache缺失组合情况
段页式存储
多通道存储器
3通道存储器DDR3
指令系统
指令格式
概念
指令 (机器指令)
能够被硬件直接识别和执行的命令
机器语言的基本单元
指令系统/指令集
所有机器指令的集合
所有机器指令的集合
指令格式
指令所有信息的编码格式
指令所有信息的编码格式
基本格式
操作码字段 | 地址码字段
操作码字段 | 地址码字段
操作码
地址码
指令字
采用指令格式编码的机器指令
采用指令格式编码的机器指令
指令格式
指令字长
单字长指令
半字长指令
双字长指令
按地址数划分
零地址指令
不需要操作数指令,如空操作指令
用在堆栈计算机中,参与运算的操作数隐含与栈顶和次栈顶
一地址指令
指令格式
OP(A1) -> A1
(ACC)OP(A1)->ACC
二地址指令
指令格式
(A1)OP(A2)->A1
三地址指令
指令格式
(A1)OP(A2)->A3
四地址指令
指令格式
(A1)OP(A2)->A3,A4=下一条地址要执行的地址
指令个数计算
一个计算机系统采用32位单字长指令,地址码位12位
若定义了250条而地址指令,则还可以有 24K 条单地址指令
若定义了250条而地址指令,则还可以有 24K 条单地址指令
格式
定长操作码
扩展操作码
不允许断码是长码前缀
不允许重复
操作类型
数据传输
MOV 寄存器 — 寄存器
LOAD 寄存器 — 存储单元(内存)
STORE 存储单元 — 存储单元
运算
算数/逻辑运算
R1 <- (R0) + M[1000H]
R2 <- (R0)&(R1)
R1 <- (R0) + M[1000H]
R2 <- (R0)&(R1)
ADD, SUB, CMP, MUL, DIV,
INC, DEC, AND, OR, NOT, XOR
INC, DEC, AND, OR, NOT, XOR
移位操作
逻辑移位
对象
运算规则
带进位的逻辑移位
算术移位
对象
运算规则
溢出判断
原码<<丢1,补码算数<<移丢符号相反位
右移不会溢出,但是会产生精度误差
循环移位
转移控制
操作类型
无条件转移/跳转指令(JMP)、
条件转移(BRANCH)、调用(CALL)
返回(RET)、陷阱(TRAP)
无条件转移/跳转指令(JMP)、
条件转移(BRANCH)、调用(CALL)
返回(RET)、陷阱(TRAP)
输入输出操作
指令的寻址方式
指令寻址方式
顺序寻址
程序计数器PC+1
(1个指令字长)
(1个指令字长)
跳跃寻址
通过转移类指令实现
数据寻址方式
直接寻址
EA=A
EA=A
间接寻址
EA=(A)
EA=(A)
寄存器寻址
EA=Ri
EA=Ri
寄存器间接寻址
EA=(Ri)
EA=(Ri)
偏移寻址
相对寻址
EA=(PC)+A
EA=(PC)+A
基址寻址
EA=(BR)+A
EA=(BR)+A
变址寻址
EA=(IX)+A
EA=(IX)+A
隐含寻址
立即寻址
堆栈寻址
硬堆栈/寄存器堆栈
软堆栈/主存堆栈
操作数存放方式
寄存器中存放方式
存储器中存放方式
指令系统
发展
冯诺依曼机
指令区分
指令执行
Pentium指令系统
数据表示
操作数存放
寻址方式
指令格式
指令功能
CISC指令系统
X86 汇编指令
RISC指令系统
ARM
MIPS指令系统
数据表示
操作数存放
寻址方式
指令格式
指令功能
CISC与RISC对比
指令系统
复杂
精简
指令数目
一般大于200条
一般小于100条
可访问指令
不加限制
只有Load/Store
各指令执行时间
差别大
基本一个周期
各指令使用频度
差别大
常用
寄存器数量
较少
多
目标代码
难以优化
采用优化编译
控制方式
绝大多数微程序
绝大多数组合逻辑
指令流水线
一定方式实现
必须实现
指令操作
指令的操作数
整数、浮点数、字符、指针
数组、结构体
指令的操作
Intel 80x86
Intel 80x86
第 a 个寄存器 Ra, 寄存器内容 (Ra)
第 b 个存储单元 M[b],存储单元内容 M[b] ,如M[1000H]
目的操作数 <- 源操作数 1 OP 源操作数 2
R2 <- (R0) + (R1), M[1000H] <- (R0)+M[1000H]
R2 <- (R0) + (R1), M[1000H] <- (R0)+M[1000H]
指令操作用C语言符号表示
指令运行周期
取指周期
间址周期
执行周期
中断周期
指令流水线技术
概念
指令执行方式
顺序/串行执行方式
流水线执行方式
指令集特征
长度尽量一致
格式尽力规整
采用Load/Store指令
数据和指令在存储器中对齐
特点
任务拆分
锁存器
时间尽量相等
连续任务执行
装入时间
排空时间
性能
吞吐律 Throughput
加速比 Speedup
效率 Efficiency
分类
单/多功能
静/动态
线性/非线性
顺序/乱序
标量/向量
部件功能/处理机/处理机间级
并行技术
超级流水线
多发射流水线
超标量流水线
乱序发射流水线
超长指令字技术
标准流水线
流水线冲突/冒险
资源冲突/结构冒险
数据冲突/数据冒险
写后读 RAW
读后写 WAR
写后写 WAW
控制冲突/控制冒险
冒险处理
结构冒险处理
数据冒险处理
暂停几个时钟周期
硬件阻塞 stall
软件插入 NOP
设置相关专用通路
调整指令顺序
控制冒险处理
分支预测
简单预测
动态预测
加快和提前形成条件码
提高转移方向的猜准率
周期计算
取各功能段最长时间作为CPU周期
注意功能段处理时间和流水线时间区别
CPI
单周期CPU = 1
多周期CPU > 1
基本流水线 = 1
超标量流水线 < 1
常见问题
流水线越多,指令执行一定越快?
指令相关、数据相关概念
0 条评论
下一页