计算机组成原理复习总结.docx
《计算机组成原理复习总结.docx》由会员分享,可在线阅读,更多相关《计算机组成原理复习总结.docx(30页珍藏版)》请在冰点文库上搜索。
计算机组成原理复习总结
第一章计算机系统概论
1、基本概念
硬件:
是指可以看得见、摸得着的物理设备(部件)实体,一般讲硬件还应包括将各种硬件设备有机组织起来的体系结构。
软件:
程序(代码)+数据+文档。
软件由两部分组成,一是使计算机硬件能完成计算和控制功能的有关计算机指令和数据定义的组合,即机器可执行的程序及有关数据;二是机器不可执行的,与软件开发、过程管理、运行、维护、使用和培训等有关的文档资料。
固件:
将软件写入只读存储器ROM中,称为固化。
只读存储器及其写入的软件称为固件。
固件是介于硬件和软件之间的一种形态,从物理形态上看是硬件,而从运行机制上看是软件。
虚拟计算机:
是指通过配置软件扩充物理机器功能以后所形成的一台计算机,而实际硬件在物理功能级上并不具备这种功能。
虚拟计算机概念是计算机设计中的一个重要策略,它将提供给用户的功能抽象出来,使之脱离具体的物理机器细节,有利于让用户摆脱物理机器细节的束缚。
计算机系统的层次结构:
现代计算机系统是由硬件、固件、软件组成的十分复杂的系统。
为了对这个系统进行描述、分析、设计和使用,人们把计算机系统按功能划分为若干级层次来分析计算机系统的观点和方法。
存储程序控制方式:
存储器中存放程序和数据,控制器按存储单元地址从存储器中依次逐条取出指令,译码,并产生相应的取操作数、运算、保存结果、取下条指令等操作的控制信号,以便控制计算机各个部分有机地协调的完成指令规定的操作。
汇编:
将汇编语言源程序翻译成为二进制目标代码文件、可执行目的程序的过程。
编译:
首先利用编译系统,把源程序翻译成目的程序,然后执行目的程序。
解释:
逐条翻译、执行源程序中的所有语句,即执行时逐条翻译。
硬件软件的逻辑等价性:
任何操作可以由软件来实现,也可以由硬件、固件来实现;任何指令的执行可以由硬件/固件完成,也可以由软件来完成。
计算机体系结构:
机器语言级程序员所看到的传统机器所具有的属性,包括概念性组成结构和功能属性两个方面。
计算机体系结构概念的实质是:
确定计算机系统中软硬件的界面,界面之上是软件实现的,界面之下是硬件/固件实现的
计算机组成:
是计算机体系结构的逻辑实现,包括组成部件的逻辑功能及组织结构、信息交换逻辑、控制逻辑、时序逻辑等。
计算机实现:
是计算机组成的物理实现,包括元器件物理结构、集成、信号传输、整机装配等。
2、计算机硬件系统的概念性结构,各个部分的作用。
(1)计算机硬件系统由运算器、控制器、内存储器、输入设备、输出设备五大部分构成,一般还要包括它们之间的连接结构(总线结构);
(2)通常将运算器、控制器、若干的寄存器集成在一个硅片上,称为中央处理器CPU;
(3)由于输入设备、输出设备与CPU、内存的处理速度差异,所以输入、输出设备通过适配器与总线、CPU、内存连接;
(4)概念性结构如下图所示;
(5)控制器的作用有三个方面:
存储程序控制方式(指令控制)、操作控制、时间(时序)控制。
取指令:
一般包括取操作码字节、寻址方式字节;
翻译:
分析、译码后产生相应的控制信号;
控制取操作数:
源操作数、目的操作数(常见的是单操作数指令、双操作数指令);
控制执行:
执行操作码指定的操作;
控制保存:
保存执行的结果;
形成下一条指令的地址:
顺序执行、程序转移(分支、循环、子程序、中断)。
(6)运算器的作用:
由算术逻辑运算部件ALU、寄存器、数据通路组成。
实现数据的加工和处理(算术运算、逻辑运算、移位运算、关系(比较)运算、位运算);
(7)存储器的作用:
存储程序和数据,记忆部件;。
(8)适配器的作用:
由于主机与I/O设备之间的速度差异,适配器主要在两者之间起数据缓冲、地址识别、信号转换等;。
(9)连接结构的作用:
各设备(部件)之间相互有机联系的连接结构,为设备(部件)间信息交换提供通路和控制机制。
典型的组织结构是总线结构。
3、什么是指令流、数据流?
它们的流向?
指令流:
在取指周期中从内存中读出的信息流称为指令流,它通过总线、CPU内部数据通路流向控制器。
数据流:
在执行周期中从内存中读出的信息流称为数据流,它通过总线、CPU内部数据通路流向运算器。
4、计算机如何区分指令和数据?
从时间上来说,取指令事件发生在取指周期(取指令阶段),取数据事件发生在执行周期(执行指令阶段);
从空间(处理部件)上来说,指令一定送给控制器,数据一定送给运算器。
5、冯·诺依曼计算机的技术特点
采用二进制代码表示数据和指令;
采用存储程序控制方式(指令驱动);
由运算器、控制器、存储器、输入设备、输出设备五大部分构成计算机硬件系统的概念性组成结构。
6、计算机体系结构的分类
1966年M.J.Flynn按照指令流和数据流的不同组织方式,把计算机系统的结构分为以下4类:
单指令流单数据流SISD、单指令流多数据流SIMD、多指令流单数据流MISD、多指令流多数据流MIMD。
(1)单指令流单数据流SISD:
传统的顺序处理计算机
(2)单指令流多数据流SIMD:
阵列处理机
(3)多指令流单数据流MISD
(4)多指令流多数据流MIMD:
多处理机
第二章运算方法和运算器
1、原码、补码、反码、移码的求法及表示范围。
(1)首先应明确机器字长。
(2)原码、补码、反码、移码的求法
(3)表示范围
机器字长=8
机器字长=16
定点小数
定点整数
定点小数
定点整数
原码
-(1-2-7)
至
+(1-2-7)
-127
至
+127
-(1-2-15)
至
+(1-2-15)
-32767
至
+32767
补码
-1
至
+(1-2-7)
-128
至
+127
-1
至
+(1-2-15)
-32768
至
+32767
反码
-(1-2-7)
至
+(1-2-7)
-127
至
+127
-(1-2-15)
至
+(1-2-15)
-32767
至
+32767
移码
-1
至
+(1-2-7)
-128
至
+127
-1
至
+(1-2-15)
-32768
至
+32767
2、补码典型特征值的表示:
0、最大/小值、+0.5
设机器字长为8位
定点小数
定点整数
10000000
最小值-1
最小值-128
10000001
-(1-2-7)
-127
10000010
-(1-2*2-7)=-(1-2-6)
-126
------
10111111
-(2-1+2-7)
-65
11000000
-2-1=-0.5
-64
11000001
-(2-1-2-7)
-63
------
11111110
-2*2-7=-2-6
-2
11111111
-2-7
-1
00000000
0.0
0
00000001
+2-7
+1
------
00111111
+(2-1-2-7)
+63
01000000
+2-1=+0.5
+64
01000001
+(2-1+2-7)
+65
------
01111110
+(1-2-6)
+126
01111111
最大值+(1-2-7)
最大值+127
3、补码加减法运算方法及CF、OF、SF、ZF的判断方法。
(1)补码加法运算规则
(2)补码减法运算规则
(3)变形补码表示法
00表示正数
11表示负数
(4)变形补码运算:
规则同补码加减法运算规则,双符号位数值化、参加运算。
(5)SF:
符号标志位
运算结果的最高位=0,则SF=0,表示结果为正数
运算结果的最高位=1,则SF=1,表示结果为负数
(6)ZF:
零标志位
运算结果=0,则ZF=1
运算结果≠0,则ZF=0
(7)OF:
溢出标志位(加法运算)
1)单符号位法
2)双符号位法
4、浮点数表示方法及浮点加减法运算方法。
(1)浮点数表示法:
数符、尾数、阶符、阶码
(2)浮点数表示法的规格化
两种规格化形式:
0.M1.M
补码的规格化判断:
符号位与数值位不相同。
特例是[-0.5]补=11000000
(3)浮点加减法运算方法
●比较阶码大小、对阶
●尾数加减法运算
●判断是否溢出,右规处理
●判断是否规格化,左规处理
●尾数的舍入处理
参见例题、习题
5、串行加法器、并行加法器的进位方法及逻辑表达式。
(1)直接从全加器的进位公式推导。
(2)串行加法器:
某位的运算必须等到下一位的进位传递来以后,才能开始。
也就是进位从最低位向最高位逐级传递。
速度慢。
C1=G0+P0C0
C2=G1+P1C1
C3=G2+P2C2
C4=G3+P3C3
(3)并行加法器:
所有进位可以同时产生,实际上只依赖于数位本身、来自最低位的进位。
C1=G0+P0C0
C2=G1+P1G0+P1P0C0
C3=G2+P1G1+P2P1G0+P2P1P0C0
C4=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0C0
其中:
G0=A0B0P0=A0XORB0
G1=A1B1P1=A1XORB1
G2=A2B2P2=A2XORB2
G3=A3B3P3=A3XORB3
Gi:
进位产生函数,表示两个数位都为1
Pi:
进位传递函数,表示某位上的两个数位有一个为1,如果来自低位的进位为1,则肯定会产生进位。
6、流水线原理。
流水线中,具有K个过程段的流水线处理N个任务需要的时钟周期数:
(K+(N-1))T。
(1)把一个任务分割为一系列的子任务,使各子任务在流水线中时间重叠、并发执行。
属于时间并行技术。
(2)流水线示意图
过程段Si之间重叠执行。
(3)流水线时空图
(4)K+(N-1)个时钟周期
解释:
K个过程段构成的流水线
K:
第一个任务需要经过K个时钟周期后才能完成
N-1:
K个时钟周期以后,流水线满载,每个时钟周期完成一个任务,剩余的N-1个任务需要N-1个时钟周期即可完成。
第三章存储系统
1、基本概念
RAM:
既能读出又能写入的半导体存储器。
ROM:
存储的内容是固定不变的,正常工作时只能读出而不能写入的半导体存储器,只有通过特殊手段(如紫外线、高压)才能写入、改变内容。
SRAM:
静态随机存取存储器,靠双稳态电路维持信息、不需要刷新。
DRAM:
动态随机存取存储器。
为了便于集成、减少了MOS管、没有维持信息的双稳态电路,需要定期刷新。
EDRAM:
EDRAM芯片又称增强型DRAM芯片,它是在DRAM芯片上集成了一个SRAM实现的、小容量、高速度的缓冲存储器,当前访问的DRAM数据块调入到SRAM,下次访问就很可能在SRAM中命中,从而使DRAM芯片的性能得到显著改进。
PROM:
一次可编程ROM。
出厂时缺省为全1、或全0,用户可自行改变某些存储元。
可改变一次,且只能一次。
EPROM:
可多次编程ROM。
可以用紫外光照射擦除原来的数据,然后再重新高压写入新的数据
存储容量:
一个存储器的存储空间大小,通常用存储单元数、字节数表示。
存取周期:
连续启动两次操作所需间隔的最小时间,通常包括存储器读周期、存储器写周期。
存储器的读写周期大于存储器的读写时间。
存储器带宽:
单位时间里存储器可以存取的信息量,通常用位/秒、字节/秒表示。
刷新周期:
从上一次对整个存储器刷新结束到下一次对整个存储器全部刷新一遍结束的时间间隔。
对存储元矩阵的一行来说,上次刷新结束到下次刷新结束的时间间隔。
双端口存储器:
同一个存储器具有两组相互独立的读写控制线路(即两个相互独立的访问端口),它们分别具有各自的地址线、数据线和控制线,都可以对存储器中任何单元上的数据进行独立的存取操作。
两个端口同时写相同单元时,需要访问冲突控制。
交叉存储器:
连续地址交叉分配在各个存储体中,每个存储体中的地址是不连续的。
交叉存储器可以实现流水线存取,提高存储器的访问速度、效率、带宽。
相联存储器:
是指选用某个存储项内容作为关键字Key来存取的存储器。
存放在相联存储器中的内容可以看成是由具有Key+Data这样格式的记录所组成。
相联存储器的信息组织类似于关系数据库中的一张二维表。
相联存储器实现按内容访问,而不是按地址访问。
CACHE:
高速缓冲存储器,是介于CPU和主存之间的可高速存取的小容量存储器。
通过cache和主存之间的调入调出、提高cache命中率,来提高主存的访问速度、效率。
虚拟存储器:
虚拟存储器技术通过硬件/操作系统,实现主存-外存之间的信息部分调入调出,为用户提供一个比实际物理内存容量大得多的存储器逻辑空间,使之为更大或更多的程序所使用。
用户感觉不到这个调入调出过程。
2、计算机系统中的多级存储体系结构。
为了解决对存储器要求容量大,速度快,成本低三者之间的矛盾,目前通常采用多级存储器体系结构,即使用高速缓冲存储器、主存储器和外存储器。
名称
简称
用途
特点
高速缓冲存储器
Cache
高速存取指令和数据;
CPU可以直接存取;
和主存之间交换数据块;
基于程序的局部性原理,存放当前活跃部分
存取速度快,但存储容量小
主存储器
主存
存放计算机运行期间的大量程序和数据;
CPU可直接存取;
主存和外存之间以段、页、段页交换数据块;
基于程序的局部性原理,存放当前活跃部分
存取速度较快,存储容量较大
外存储器
外存
存放计算机运行期间的大量程序和数据;
操作系统加载
存储容量大,位成本低
3、主存储器的逻辑设计。
第一步:
根据设计容量、提供的芯片容量构建地址空间分布图(类似搭积木),可能需要字、位扩展。
第二步:
用二进制写出连续的地址空间范围。
第三步:
写出各片的片选逻辑表达式。
第四步:
按三总线观点分析各片的数据线、地址线、控制线。
第五步:
按三总线观点分析给定CPU的数据总线、地址总线、控制总线。
第六步:
设计CPU与存储器的逻辑连接图。
参见P95例3、练习题
4、顺序存储器和交叉存储器的定量分析。
顺序存储器:
mT
交叉存储器:
T+(m-1)τ
参见P104例4、习题
5、高速缓冲存储器技术的目的、虚拟存储器技术的目的。
高速缓冲存储器:
提高内存的访问速度,CPU和主存之间。
虚拟存储器技术:
解决主存容量不足,主存和外存之间。
6、页式虚拟存储器原理及页表构成。
(1)虚拟地址空间、物理地址空间均按约定长度划分为若干页。
(2)页式虚拟存储器基于页表(快表、慢表)实现虚拟地址到物理地址的变换、以页为单位在内存和外存之间调入调出。
(3)页表由虚页号+实页号+装入标志位+修改标志位等构成。
每个虚页在页表中占一行。
(4)当某个虚页调入内存,则在页表中对应的虚页行上记载实页号、装载标志、修改标志等信息。
(5)当CPU访问主存时,根据虚拟地址中的虚拟页号查页表,获取实页号,和页内地址拼接形成物理地址。
第四章指令系统
1、基本概念
指令系统:
指令系统是指一台计算机中所有机器指令的集合。
指令系统是表征一台计算机性能的重要因素,其格式与功能直接影响到机器的硬件结构、软件、适用范围等。
指令寻址方式:
指CPU如何能够在内存中找到将要执行的指令,也就是说,必须有一种策略提供指令所在存储单元的物理地址。
顺序执行时由程序计数器PC提供,而跳跃执行时必须通过某种策略改变PC。
数据寻址方式:
定义计算机如何找到运算所需的操作数。
CISC:
指令条数多、结构形式复杂多样、功能复杂。
RISC:
指令条数少、结构形式简单、功能简单常用。
存储器堆栈:
在内存中专门划出一部分连续区域,按照“后进先出、先进后出”的原则进行组织和访问。
2、指令格式及寻址方式辨析
参见例题、习题
第五章中央处理器
1、基本概念
指令周期:
一条指令从取指、执行完毕所需要的时间称为指令周期。
一个指令周期包含若干的机器周期。
机器周期:
又称为CPU周期,一条指令的取指、执行可以划分为若干个阶段,每个阶段所对应的时间称为机器周期。
一个机器周期用来表示某个阶段什么时候开始,什么时候结束。
一个机器周期又可以划分为若干时钟周期。
时钟周期:
一个机器周期所表示的某个阶段,可能由若干个有序的基本操作过程组成,每个基本操作过程(微操作)所需要的时间称为时钟周期。
为了便于系统管理,一般选择所有基本操作中时间最大值作为时钟周期。
微命令:
操作控制器通过控制线向执行部件发送的各种控制信号/操作命令。
微操作:
执行部件接收微命令以后所完成的操作。
微操作是执行部件中最基本的、不可再分解的操作
微指令:
一组实现一定操作功能的微命令的组合形式,称为微指令。
微程序:
微指令的有序序列(集合)。
微周期:
读出一条微指令、加上执行该条微指令的时间。
时间并行技术:
将一个任务划分为多个处理过程,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。
典型的实现方式就是流水线技术,这是一种非常经济、实用、已广泛应用的一种技术。
空间并行技术:
空间并行是指资源重复,以“数量取胜”为原则来提高计算机的处理速度。
如多处理器系统和多计算机系统。
指令流水线:
指令流水线是指指令执行步骤的并行。
将指令流的处理过程划分为取指令、指令译码、执行、写结果等若干个可以并行处理的过程段。
算术流水线:
算术流水线是指运算操作步骤的并行。
例如流水加法器、流水乘法器、流水除法器、流水浮点运算器等。
处理机流水线:
又称为宏流水线,是指程序步骤的并行。
由一串级联的处理机构成流水线的各个过程段,每台处理机负责某一特定的任务。
2、CPU的功能。
(1)指令控制:
程序的执行顺序控制称为指令控制。
由于程序是一个指令序列,这些指令的相互顺序不能任意颠倒,必须严格按程序规定的顺序进行。
(2)操作控制:
一条指令的功能往往是由若干个操作信号的组合来实现的,因此,CPU管理并产生由内存取出的每条指令、分析翻译、产生相应的各种操作控制信号,并把各种操作控制信号送往相应的部件,从而控制这些部件按指令的要求进行动作。
(3)时间控制:
对各种操作实施时间上的定时称为时间控制。
在计算机中,各种指令的操作信号以及一条指令的整个执行过程都受到时间的严格定时、按照严格的先后顺序执行。
(4)数据加工:
数据加工就是对数据进行算术运算和逻辑运算处理。
3、CPU内部概念性结构。
(1)CPU内部概念性结构:
运算器、控制器、寄存器组、数据通路、片内cache、浮点运算部件、十进制数运算部件、段页管理部件、流水线管理部件、乘除法部件、控制存储器等。
(2)控制器:
时钟电路、时序信号产生器、指令译码器、操作控制器组成。
(3)寄存器:
程序计数器PC、存储器地址暂存器AR、存储器数据暂存器DR、指令寄存器IR(指令队列)、累加器AC、状态寄存器PSW、堆栈指示器SP、通用寄存器Ri、暂存器(C、D)
(4)内部数据通路结构:
单数据总线(典型)
模型一:
模型二:
模型三:
4、指令周期流程
(1)根据模型机结构、数据通路结构,分析指令周期流程。
(2)指令周期流程实际上是一个指令流、数据流在数据通路上的流动过程。
(3)指令流:
PC→AR→M→DR→IR→指令译码器→操作控制器→产生操作控制信号(微命令)。
(4)数据流:
操作数地址→AR→M→DR→ALU。
(5)参见例题、习题。
5、微程序控制器的基本原理及构成。
基本原理:
[1]设计:
首先,根据CPU的数据通路结构、指令操作定义等,画出每条指令的指令周期流程图(具体到每个时钟周期、微操作、微命令)。
然后,根据微指令格式、指令周期流程图编写每条指令的微程序。
最后,把整个指令系统的微程序(其中取指令的微程序段是公用的)固化到控制存储器中。
[2]运行:
首先,逐条执行取指令公用微程序段,控制取指令操作。
然后,根据指令的操作码字段,经过变换,找到该指令所对应的特定微程序段,从控制存储器中逐条取出微指令,根据微操作控制字段,直接或经过译码产生微命令(控制信号),控制相关部件完成指定的微操作(一般是一条微指令控制一个微操作)。
一条微指令执行以后,根据微地址字段寻找下一条微指令。
构成:
[1]控制存储器:
存放微程序。
[2]微地址寄存器:
存放将要取的微指令的地址。
[3]微命令寄存器:
存放从控制存储器中取出的一条微指令。
[4]译码器:
对采用译码方式的控制字段进行译码(互斥性的),产生微命令。
[5]地址转移逻辑:
根据指令的操作码字段、微指令的顺序控制字段,形成下一条微指令的地址。
6、硬布线控制器的设计思想、构成。
硬布线控制器是利用硬件方法实现,产生各种控制信号。
设计思想:
(1)确定指令系统、CPU内部部件构成、数据通路结构、时序信号和控制信号构成。
(2)根据数据通路结构,画出指令系统中所有指令的执行流程,必须定位到每个CPU周期、每个时钟周期中要做的微操作,需要的相关控制信号。
(3)根据指令执行流程,写出每个微命令的逻辑表达式。
(4)根据选用的元器件,对逻辑表达式化简。
(5)利用逻辑电路实现。
构成:
7、流水线中的相关问题。
流水过程中通常会出现资源相关、数据相关、控制相关三种相关冲突,从而使流水线断流。
资源相关:
是指多条指令进入流水线后,在同一个时钟周期内争用同一个功能部件所发生的冲突。
数据相关:
由于多条指令的重叠处理,当后继指令所需的操作数,刚好是前一指令的运算结果时,便发生数据相关冲突。
控制相关:
执行转移指令时,依据转移条件的产生结果,可能为顺序取下条指令;也可能转移到新的目标地址取指令。
如果流水线顺序取指令,而程序需要转移时,进入流水线的指令并不是将要执行的指令,或者说转移的目标指令可能还没有进入流水线,从而使流水线发生断流。
8、评价CPU的性能指标
CPI:
指令的平均时钟周期数
MIPS:
每秒百万条指令数
MFLOPS:
每秒百万次浮点运算
Tcpu:
一个程序的执行时间
第六章总线系统
1、基本概念。
总线:
总线是一组能为多个部件分时共享的信息传送线,用来连接多个部件并为之提供信息交换通路。
总线带宽:
衡量总线性能的重要指标,它定义为总线本身所能达到的最高传输速率,单位是兆字节每秒(MB/s)。
总线仲裁:
当连接到总线上的多个主设备(主方)同时竞争总线控制权时,必须通过总线仲裁部件,以某种方式和策略选择其中一个主设备(主方)作为总线的下一次主方,接管总线的控制权,传送信息。
总线定时:
事件出现在总线上的时序关系,即一个事件什么时候开始、多长时间内完成,主方什么时间发送数据、从方什么时候接收数据等事件先后关系。
2、总线的特性。
物理特性:
指总线的物理连接方式,包括总线的根数,总线的插头、插座的形状,引脚线的排列方式等。
功能特性:
描述总线中每一根线的功能。
电气特性:
定义每一根线上信号的传递方向及有效电平范围。
时间特性:
定义每根线在什么时间有效。
各信号间有效的先后时序关系。
3、总线的内部结构。
数据传送总线:
传统的三总线结构(地址、控制、数据)。
仲裁总线:
总线请求线和总线授权线等。
中断和同步