计算机组成与体系结构复习大纲文档格式.docx
- 文档编号:7669098
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:24
- 大小:429.85KB
计算机组成与体系结构复习大纲文档格式.docx
《计算机组成与体系结构复习大纲文档格式.docx》由会员分享,可在线阅读,更多相关《计算机组成与体系结构复习大纲文档格式.docx(24页珍藏版)》请在冰点文库上搜索。
Ø
数据总线越宽,一次能传送的位数就越多
地址总线越宽,可以访问的单元就越多
b)单一总线的问题
i.传输延迟
ii.总线带宽瓶颈
c)总线类型
i.分时复用(地址有效or数据有效控制线)
ii.物理专用(分立的数据和地址总线)
d)总线仲裁(集中式&
分布式)
Chp.4Cache存储器
1.存储容量,传输单元,可寻址单元()
1字节=8位(1Byte=8bit)
2.存取方法
顺序、直接(当前位置和存取数据位置的距离影响存取时间)
随机、关联(存取时间与数据位置无关)
3.性能参数:
存取时间、存取周期时间、传输率R
(非随机)
4.存储器特性
1)存取时间越短,每位的价格越高
2)容量越大,每位的价格越低
3)容量越大,存取时间越长
5.Cache容量的限制
1)更大的Cache意味着更高的价格
2)更高的命中率,但大的Cache比小的稍慢
3)受芯片和电路板面积的限制
6.映射方式
1)直接映射
主存中的每一块映射到固定的一行Cache中
i=jmodm
映射到相同行号的两块不会有相通的标记数
抖动现象
2)全关联映射
一个主存块可以装载到任意一个Cache行
Cache控制逻辑必须同时对每一行中的标记进行检查,看是否匹配(缺点)
3)组关联映射
K路组相连
V=2^d
直接映射
全相联映射
组相联映射
参数
标记(s-r)+行(r)+字(w)
标记(s)+字(w)
标记(s-d)+组(d)+字(w)
地址长度
s+w
可寻址单元数
2^(s+w)
块/行大小
2^w
主存的块数
2^s
cache行数
2^r
不由地址格式决定
k*2^d
chche容量
2^(r+w)
/
标记长度
s-r
s
s-d
7.替换算法
a)硬件实现
b)最近最少使用(LRU)
c)先进先出(FIFO)
d)最不经常使用(LFU)
e)随机
8.写策略(写直达&
回写)
9.行的大小
随着行的大小从很小到较大的过程中,命中率先是上升,然后下降。
命中率刚开始会因为局部性原理而增加
局部性原理:
被访问字附近的数据可能会在不久的将来被访问到
较大的行减少了装入Cache的总行数&
当行变得较大时,离所访问的位置较远的字被再次使用的概率较小
Chp.5内部存储器
1.半导体存储器类型
a)RAM(RandomAccessMemory)
⏹读/写
⏹易失性(需要持续供电)
⏹暂时存储
⏹DRAM(用于主存储器)/SRAM(用于Cache)
b)ROM(Read-onlyMemory)
⏹MaskROM
◆数据一经写入,不可修改
◆在制造过程中由生产商固化数据
⏹PROM(ProgrammableROM)
◆出厂空白
◆用户一次写入,不可修改
2.纠错
⏹硬故障
永久性的损坏
⏹软差错
随机的,非破坏性的
⏹可使用纠错码检测
数据M位,校验码K位,实际存储M+K位
3.纠错码
⏹和数据共同存放在存储器中
⏹故障字:
两个输入的异或
⏹纠错码/故障字的长度
◆对于纠错1位
◆2^K-1>
=M+K
•M:
数据长度
•K:
纠错码长度
4.故障字设计
1)如果故障字全部是0,则表示没有检测到错误
2)如果故障字仅有1位是1,则表示某一位校验位出错,不需s要纠正
3)如果故障字有多位是1,则故障位的数值就表示出错数据位的位置,将这位取反纠正即可
例子见书~
Chp.6外部存储器
1.磁盘速度
由于在相同角速度下,靠近旋转中心的数据位经过固定点(磁头)的速度要比边缘的数据位慢。
(1)恒定角速度
外层磁道有效容量少,浪费了外层磁道的数据容量
(2)多区段记录
将磁盘分成很多个区段,每个区段都是固定角速度的,但区段之间速度不同。
这种方法的电路更复杂
2.格式化磁盘
附加用户不可见的数据
标记磁道和扇区
3.磁盘I/O时序和性能参数
1)I/O时序
2)性能参数
平均访问时间=存取时间+传送时间
=寻道时间+旋转延迟+传送时间
Ta=Ts+1/(2*r)+b/(r*N)
Ta为平均存取时间
Ts为平均寻道时间
1/(2*r)为平均旋转时间
b/(r*N)为数据传送时间
r表示磁盘转速,单位一般是rpm,圈/分钟或(转/秒)
4.磁盘冗余阵列(RAID)
7级标准
1)一组物理磁盘,但在操作系统下视为单一逻辑驱动器
2)数据分布在一组物理磁盘上
3)可将校验信息存放在冗余磁盘空间上,以使得在磁盘损坏时可以恢复数据
具体见书
RAID0没有冗余;
一组数据倾向于分布在多个磁盘上;
轮转条带
RAID1镜像磁盘;
轮转条带;
非常昂贵
RAID2纠错码存放在校验盘上;
大量冗余;
未实际应用
RAID3只需一个冗余盘;
使用所有数据盘同一位组计算奇偶校验位
RAID4每个磁盘独立操作;
校验数据存放在校验盘上;
写操作包含两次读和两次写;
校验盘成为瓶颈
RAID5轮转方案将校验条带分布在所有的磁盘上;
避免了RAID4种校验盘的瓶颈
RAID6N个数据磁盘需要N+2块磁盘组成RAID6
5.光存储器
CD-ROM
a)优点:
大容量(?
),容易大量生产,可更换
b)缺点:
只读,不可修改;
存取时间较长
Chp.7I/O
1.I/O模块的功能
1)控制和定时
2)处理器通信(命令译码、数据传输、状态报告、地址识别)
3)设备通信(命令、状态信息、数据)
4)数据缓冲
5)检错
2.I/O技术
1.编程式I/O(PIO)
a)处理器通过I/O模块直接控制外设
b)CPU需要等待,直到I/O模块完成操作
c)浪费了CPU时间
d)处理器虚定时不断扫描设备状态
i.I/O设备寻址
a)存储映射式I/O
I/O设备和内存共享同一片地址空间
I/O操作看起来就像内存读写
优点:
能使用大的指令系统,更有效地编程
缺点:
占用了宝贵的内存地址空间
b)分离式I/O
分离的地址空间
需要I/O或内存选择线
需要特殊的I/O指令
2.中断驱动式I/O
a)克服了CPU等待的问题
b)无需CPU周期性的检查状态
c)在就绪时,I/O模块发出中断
中断驱动式I/O先发送读取命令,然后I/O自己负责读取数据,CPU继续操作.I/O在数据读取完后给CPU发出中断,CPU立即暂停当前的工作,转向中断处理程序.需要注意的是,转向前要保存现场
ii.确定中断模块(哪个元件发出的中断)
多条中断线,软件轮询(速度慢)、菊花链(硬件轮询,向量中断识别信号在模块间链状传播,向量放入总线上)、总线仲裁(发出中断请求前必须先获得总线控制权,因此一次只有一个模块能占用总线)82C59A
编程式I/O和中断驱动式I/O要求CPU的积极参与
在传输大量数据时,需要DMA技术
3.存储器直接存取(DMA)
a)功能
1.总线上的附加硬件模块
2.DMA接管CPU控制I/O的工作
b)DMA操作
c)DMA传输周期窃用
i.DMA控制器接管总线一个周期
ii.不是一个中断,CPU不保存现场
iii.CPU在访问总线前将被挂起
如取操作数或者存操作数之前
iv.稍微降低了CPU的速度,但比CPU管理传输要高效
d)DMA布局
4.I/O通道
a)选择通道
b)多路通道(同时处理多个设备的I/O操作)
Chp.9计算机算数
1.数字的范围
16比特2的补码
+32767=01111111111111111=2^15-1
-32768=10000000000000000=-2^15
2.不同长度之间的变换
正/负数均使用最高位填充
+18=00010010
+18=0000000000010010
-18=11101110
-18=1111111111101110
3.加减法
减数求补转换为加法
上溢规则
两个数相加,若它们同为正数或同为负数,则当且仅当结果符号位变得相反时才出现上溢。
(无论是否有进位,都可能出现上溢)正数相加最高位变1
4.乘法:
布斯算法
5.移码
范围:
-2^(n-1)+1~2^(n-1)
原始值加上2^(n-1)-1后按无符号数转换
6.浮点数
a)范围
介于-(2-2^-23)X2^128和-2^-127之间的负数
介于2^-127和(2-2^-23)X2^128之间的正数
b)精度
23bits有效数:
2^(-23)
c)浮点表示法并不能表示更多的值,只是沿数轴正负两个方向在更大范围内分布
不是等距分布,越靠近
e.g.将十进制数-0.421875转换成标准32位浮点规格化数
1011111011011000000000…
Chp.10指令集特征和功能
1.指令集设计CISC&
RISC
a)操作指令表
b)数据类型
c)指令格式
d)寄存器
e)寻址方式
2.字节顺序12345678
a)大数端:
最高有效字节存放在最低的地址上12345678
b)小数端:
最高有效字节存放在最高的地址上78563412
Chp.11寻址方式和指令格式
1.寻址方式
a)立即寻址
b)直接寻址:
EA=A一次存储器访问,地址空间有限
c)间接寻址:
EA=(A)两次访问存储器
d)寄存器寻址:
不需要存储器访问
e)寄存器间接寻址:
一次存储器访问
f)偏移寻址
i.(PC)相对寻址
e.g.JMPSHORT8
当PC为Ox0010时,跳转目标为Ox0018(节省指令长度)
ii.基址寄存器寻址
iii.变址
g)堆栈寻址(操作发生在栈顶)
不同寻址方式实现斐波那契数列
Chp.12CPU结构和功能
1.CPU中的寄存器
位于存储器层次结构的顶层(高于cache和主存)
a)用户可见寄存器
可通过机器语言方式访问的寄存器。
分类:
通用、数据、地址、条件码(标志flag)
b)控制和状态寄存器
大多数,用户不可见
2.流水线技术
指令缓存。
流水处理都需要额外的寄存器用以在流水段之间保存数据
a)性能增强的限制
i.存储器访问冲突
ii.每个阶段时间不可能完全相同
iii.转移指令
iv.中断
v.其他的冲突
Question:
流水线的阶数越多越好?
(No!
)
A.每个阶段都涉及到数据的传送
增加单一指令总的执行时间
存储器访问相关性
条件转移
B.处理流水线的控制逻辑总量会随着阶数的增加而剧烈增长
3.流水线性能
a)流水线周期时间τ
τ=max(τi)+d=τm+d(1<
=i<
=k)
d:
锁存时间(数据和信号传至下一段)
b)执行n条指令,无转移发生,总的所需时间:
Tk,n=[k+(n–1)]τ
c)加速比(使用流水线相对于不使用流水线)
Sk=T1,n/Tk,n
=nkτ/[k+(n–1)]τ
=nk/[k+(n-1)]
Note:
K=指令流水线段数
n=指令条数
更多的流水线段数能带来更大的潜在加速比
4.条件分支(转移)指令处理:
a)多个指令流
b)预取转移目标
c)循环缓冲器
含n条最近取来的顺序指令(这点不同于cache)
转移发生时,检查转移目标是否已存在
非常适用于循环
d)分支预测
i.静态
三种:
预测绝不发生、总是发生、依操作码预测
ii.动态
1.发生/不发生切换
有限状态机法画“转移预测状态图”
根据代码求预测成功率
Question:
预测跳转时,如何知道跳转目标?
目标需要取指、译指并计算操作数之后才能得到
2.转移历史表
表项组成:
分支指令的地址、历史位、目标指令的信息(指令/地址)
e)延迟分支
Chp.13RISC
1.RISC主要特性
a)大量的通用寄存器或使用编译器优化寄存器的使用
b)有限而简单的指令集
c)强调指令流水优化
2.指令执行特征
a)执行的操作
b)所用的操作数(优化方向:
对局部标量变量的存储和访问)
c)执行顺序
3.优化结论
a)优化典型HLL程序中最耗时操作的性能
b)优化的寄存器使用(操作数的访问)
c)精心设计流水线(分支预测等)
d)精简的指令集
4.寄存器组织
a)寄存器窗口
任何时候只有一个寄存器窗口是可见和可寻址的
相邻两组间有重叠参数寄存器+局部寄存器+临时寄存器
N个窗口的寄存器组仅能用于N-1个过程的调用
b)全局变量全局寄存器
c)与cache对比
5.编译器优化
只有少量寄存器可用
目标:
尽可能在寄存器中而不是在主存中为多数计算保持操作数,并且减少装载和保存操作
图着色法
6.RISC流水线优化
a)NOOP(@数据相关性、分支指令)->
无需分支预测机制,减少电路
b)延迟转移
即:
通过交换指令把插入NOOP的地方改为插如有用的指令
交换条件:
a)是无条件转移
b)交换语句之间不能有关联性
c)交换语句不能使其他转移语句的目标
总结:
RISC使用延迟转移的方法解决转移问题
CISC使用转移预测的方法解决转移问题
Chp.14指令级并行性和超标量处理器
1.超标量
本质:
在不同流水线中独立执行指令的能力
限制:
1)真实数据相关性(写后读)
2)过程相关性(分支)
3)资源冲突
多个指令同时竞争同一资源(存储器、cache、总线、寄存器组端口等)
4)输出相关性(写—写)
5)反相关性(读—写)
后一条指令破坏前一条指令所使用的数据值
2.指令发射策略
a)取指令的顺序
b)指令执行的顺序
c)指令改变寄存器和存储器内容的顺序
1)按序发射按序完成真实数据相关性(写后读)
2)按序发射乱序完成输出相关性(写后写)
3)乱序发射乱序完成
分离译码流水和执行流水
增加指令窗口
3.寄存器重命名
对于一个变量,每赋值一次都使用心的寄存器来存
4.机器并行性
超标量机器增强性能的三种硬件技术
a)资源复制
b)无序发射
c)寄存器重命名
●普通流水线——转移预测
●RISC——延迟转移
●超标量——转移预测
Chp.15控制器操作
1.取指周期(MAR,MBR,PC,IR)
t1:
MAR(PC)
t2:
MBRMemory
PC(PC)+1
t3:
IR(MBR)
2.间指周期取操作数的直接地址
3.中断周期
4.执行周期
如何实现控制器?
●硬连线:
庞大且无法修改
●微程序:
可编程的实现
Chp.17微程序式控制
1.微程序
通过一连串微指令去完成复杂的操作
2.实现
1)对于每个微操作,控制器所作的事情就是产生一组控制信号
2)每个控制信号不是开就是关,可以用一位二进制表示
3)所有的控制信号二进制位构成了一个控制字
4)每条机器指令拥有一个控制字序列
5)将所有的控制字放入一个存储器中
6)给每个控制字添加一个地址字段和条件字段,当条件为真时,转移到这个地址
7)构成了微指令
3.微程序式控制器的功能
两大基本任务:
1)微指令排序
a)双地址字段
b)单地址字段
c)可变格式:
转移与执行指令分开来写
2)微指令执行
a)直接(每个功能模块单独编码以后组合)
b)间接(组合一起再编码)
Chp.18并行处理
1.并行处理机的组织
1)单指令、单数据流(SISD)
2)单指令、多数据流(SIMD)
每条指令的不同数据组在不同的处理器上执行
向量、阵列处理机
3)多指令、单数据流(MISD)
从来没实现过
4)多指令、多数据流(MIMD)
SMP、机群和NUMA系统
2.SMP对称多处理器
1)两个或多个功能相似的处理器
2)处理器共享同一主存
3)处理器通过总线或者其他内部连接互联
4)存储器访问时间对于每个处理器来说大致相同
5)所有处理器共享对I/O设备的访问
6)所有处理器能完成同样的功能(术语“对称”)
7)系统由一个集中式操作系统控制
3.Cache一致性和MESI协议
●Cache一致性
1)软件解决
倾向于保守,降低了cache的利用率:
不让同一变量同时进入两个cache中
2)硬件实现
更高效的利用Cache
对于程序员是透明的
目录协议
目录存放在主存中、产生访问请求时检查目录、中央瓶颈
在使用多条总线或复杂互联机制的大型系统中,是很有效的
监听协议
将维护Cache一致性的责任分布到各个Cache控制器上
广播机制
适合使用总线的多处理机
两种基本方法:
i.写—作废:
多个读者,单一写者;
变为专有
ii.写—更新:
多个读者,多个写者;
同时进行写入修改,广播地址&
数据
●MESI协议
1.Cache行的四种状态
a)修改态(Modified):
Cache行已被修改,且仅位于这个Cache中
b)专有态(Exclusive):
Cache行同主存,且仅位于这个Cache中
c)共享态(Shared):
Cache行同主存,且位于多个Cache中
d)无效态(Invalid):
此Cache行不含有效数据
MESI状态转换图
4.机群
SMP的替代物
●机群系统和SMP的对比
均提供多个处理器以支持高端应用
均商用化,SMP历史更悠久
SMP:
易于配置和管理
更接近原来的单处理器模型
占用较少的物理空间
耗电较小
稳定
机群:
高增量和绝对可扩展性
高可用性
5.非均匀存储器存取(NUMA)
SMP和机群系统的替代品
一个处理器的存储器存取时间取决于存储器区域
不同处理器的存储器存取时间取决于存储器区域
NUMA保持了SMP的风格,同时提供了大规模的多处理器
兰亭序
永和九年,岁在癸丑,暮春之初,会于会稽山阴之兰亭,修禊事也。
群贤毕至,少长咸集。
此地有崇山峻岭,茂林修竹;
又有清流激湍,映带左右,引以为流觞曲水,列坐其次。
虽无丝竹管弦之盛,一觞一咏,亦足以畅叙幽情。
是日也,天朗气清,惠风和畅,仰观宇宙之大,俯察品类之盛,所以游目骋怀,足以极视听之娱,信可乐也。
夫人之相与,俯仰一世,或取诸怀抱,晤言一室之内;
或因寄所托,放浪形骸之外。
虽取舍万殊,静躁不同,当其欣于所遇,暂得于己,快然自足,不知老之将至。
及其所之既倦,情随事迁,感慨系之矣。
向之所欣,俯仰之间,已为陈迹,犹不能不以之兴怀。
况修短随化,终期于尽。
古人云:
“死生亦大矣。
”岂不痛哉!
每览昔人兴感之由,若合一契,未尝不临文嗟悼,不能喻之于怀。
固知一死生为虚诞,齐彭殇为妄作。
后之视今,亦犹今之视昔。
悲夫!
故列叙时人,录其所述,虽世殊事异,所以兴怀,其致一也。
后之览者,亦将有感于斯文。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 体系结构 复习 大纲