计算机组成原理重点总结(学习笔记)含计算公式

您所在的位置:网站首页 平台的算法逻辑有哪些内容组成 计算机组成原理重点总结(学习笔记)含计算公式

计算机组成原理重点总结(学习笔记)含计算公式

2024-07-12 10:21| 来源: 网络整理| 查看: 265

计算机组成原理总结 一、计算机系统概述计算机系统的多层次结构冯·诺依曼机哈佛结构计算机性能指标 二、数据的表示和运算汉字的编码字符串的存放校验码原码、反码、补码、移码补码定点数的加/减运算浮点数的加/减运算浮点数的表示范围8位二进制整数范围标准IEEE 754标准 三、存储器层次结构存储器的层次化结构动态RAM的刷新动态RAM与静态RAM的比较存储容量的扩展双口RAM和多模块存储器多模块存储器Cache计算Cache中主存块之间的映射方式Cache中主存块的替换算法磁盘存储器其他 四、指令系统指令的寻址方式CISC和RISE二地址指令操作数物理位置的三种形式 五、中央处理器CPUCPU基本结构指令执行方案微指令格式硬布线控制器、微程序控制器微指令基本组成机器指令与微指令的关系影响流水线性能的因素流水线性能(吞吐率、加速比、效率) 六、总线集中仲裁方式总线操作和定时总线标准总线带宽(单位时间内总线上传输数据的位数)

一、计算机系统概述 计算机系统的多层次结构

微程序设计级、一般机器级、操作系统级、汇编语言级、高级语言级。 硬件: 第1级:微程序机器层M0(微指令系统),由硬件直接执行微指令 第2级:传统机器M1(机器语言机器),用微程序解释机器指令 软件: 第3级:虚拟机器M2(操作系统机器),用机器语言解释操作系统 第4级:汇编语言M3(汇编语言机器),用汇编程序翻译成机器语言程序 第5级:虚拟机器M4(高级语言机器),用编译程序翻译成汇编语言程序

冯·诺依曼机

基本工作方式:控制流驱动方式; 最根本的特征:采用“存储程序”原理,即按地址访问并顺序执行指令; 指令和数据均以二进制形式存放在存储器中; CPU区分依据是:指令周期的不同阶段。 冯·诺依曼计算机:以运算器为中心 现代的计算器:以存储器为中心 5大部件:存储器、运算器、控制器、输入设备、输出设备(适配器) 三大部分:CPU(运算器、控制器)、I/O设备(输入设备、输出设备)、主存储器

哈佛结构

将指令和数据放在两个独立的存储器,允许在一个机器周期内同时获得指令和操作数,提高了执行速度。

计算机性能指标

机器字长: 1、CPU一次能处理数据的位数。 通常与CPU的寄存器位数有关。字长越长,精度越高。 2、机器的字长也会影响机器的运算速度。 字长较短,运算位数多,可能需要多次运算才能完成。 3、对硬件造价有影响。 直接影响ALU、数据总线以及存储字长的位数。

存储容量: 主存容量、辅存容量

运算速度: 吞吐量和响应时间 主频和CPU时钟周期 CPI:执行一条指令所需的时钟周期数。 CPU执行时间:指运行一个程序所花费的时间。取决于:1、主频;2、CPI;3、指令条数 MIPS:每秒执行多少百万条指令。 MFLOPS:每秒执行多少百万次浮点运算。(标志系统性能最有用参数) GFLOPS:每秒执行多少十亿次浮点运算。 TFLOPS:每秒执行多少万亿次浮点运算。

二、数据的表示和运算 汉字的编码

①输入码(外码):区位码、国际码、拼音码、电报码、表形码等 ②内码:0、1(机器码) ③输出码:汉字字形码 汉字编码包括汉字的输入编码、汉字内码、汉字字形。用两个字节表示一个汉字,每个字节用七位码。区位码是4位十进制数,前2位是区码,后2位是位码。 国标码是将十进制的区位码转换为十六进制后,再在每个字节上加上20H。为了方便计算机区分中文字符和英文字符,将国标码两个字节的最高位都改为“1”,这就是汉字内码(十六进制)。

字符串的存放

小端模式:按先存储低位字节、后存储高位字节的顺序存放字符串的内容。 大端模式:按先存储高位字节、后存储低位字节的顺序存放字符串的内容。

校验码

①奇偶校验码:只能检出一位错误,不能确定出错的位置;只能检验处奇数位错误,不能检测出偶数位错误。 奇校验码:整个校验码中“1”的个数为奇数。 偶校验码:整个校验码中“1”的个数为偶数。 ②海明(汉明)检验码:可检出错位位置 ③循环冗余校验(CRC)码:可检出错误位置(通过除法运算)

原码、反码、补码、移码

1、原码、补码、反码三种机器数的最高位均是符号位。 2、当真值为正时,原码、补码、反码的表示形式均相同,即符号位用“0”表示,数值部分与真值相同。 当真值为负时,原码、补码、反码的表示形式不同,但其符号位都用“1”表示,而数值部分补码是原码的“求反加1”,反码是原码的“每位求反”。 3、同一个真值的移码和补码仅差一个符号位。 4、不同机器数表示±0时,其形式不同。 [+0]原≠[-0]原, [+0]反≠[-0]反,[+0]补=[-0]补,[+0]移=[-0]移 5、当机器字长确定后,补码比原码、反码能多表示一个负数。 6、移码只能表示整数,用它表示浮点数的阶码时,能方便地判断阶码的大小。

补码定点数的加/减运算

基本公式:(将符号位和数值部分一起参加运算,并且将符号位产生的进位自然丢掉即可) 加法:[A]补+[B]补=[A+B]补 减法:[A-B]补=[A]补+[-B]补([-B]补由[B]补连同符号位在内,每位取反,末尾加1)

溢出判断: ①用一位符号判断溢出:实际参加操作的两个数符号相同,结果又与原操作数的符号不同,即为溢出。 ②用两位符号位判断溢出:当2位符号位不同时,表示溢出,否则,无溢出。不论是否发生溢出,高位(第1位)符号永远代表真正的符号。(变形补码,运算时多一位) 01正溢出(上溢);10负溢出(下溢) ③采用一位符号位根据数据位的进位情况判断溢出。如果符号位的进位与最高数位的进位不同,则表示结果溢出。

浮点数的加/减运算

(1)对阶:两个数的小数点位置对齐(使阶码相等),两个数的阶码相减求阶差,使小阶的尾数向右移位,每右移一位,阶码加1。

(2)尾数求和:将对阶后的两个尾数按定点加(减)运算规则进行运算。

(3)规格化:补码规格化形式为[S]补 00.1××××;[S]补 11.0××××。 ①左规:尾数出现00.0××××或11.1××××时,需左规。尾数左移一位,阶码减1。 ②右规:尾数出现01.××××或10.××××时,表示尾数溢出,但在浮点运算中不算溢出,可通过右规处理。尾数右移一位,阶码加1。

(4)舍入:在对阶和右规的过程中,可能会将尾数的低位丢失,引起误差,影响精度,用舍入法来提高尾数的精度。 ①“0舍1入”法:被移去的最高位数值位为0,则舍去;被移去的最高数值位为1,则在尾数的末位加1。又溢出时,再右规…… ②“恒置1”法:不论丢掉的最高数位是“1”还是“0”,都使尾数末位恒置“1”。 两种方法同样都有使尾数变大和变小两种可能。

(5)溢出判断(是否溢出由阶码的符号决定) ①上溢:阶码[j]补=01,×××,作溢出处理 ②下溢:阶码[j]补=10,×××,按机器零处理

浮点数的表示范围

在这里插入图片描述 上溢:当浮点数阶码大于最大阶码时,上溢,机器停止运算,进行中断溢出处理。 下溢:当浮点数阶码小于最小阶码时,下溢,溢出的数绝对值很小,通常将位数各位强制为0,按机器零处理,机器可以继续运行。

8位二进制整数范围

原码、反码:-127—+127 补码、移码:-128—+127

标准IEEE 754标准

现代计算机中,浮点数一般采用IEEE制定的国际标准: 在这里插入图片描述 常用的浮点数有三种:在这里插入图片描述 阶码用移码表示,短实数、长实数、临时实数的偏移量用十六进制数表示分别为7FH(127)、3FFH、3FFFH。

尾数部分通常是用原码、规格化表示,即非“0”的有效位最高位总是“1”,但在IEEE标准中,有效位呈如下形式:1▲ff…ffff,其中▲表示假想的二进制小数点。在实际表示中,对短实数和长实数,这个整数位的1省略,称隐藏位;对于临时实数不采用隐藏位方案。

规格化的短浮点数真值: ( − 1 ) S × 1. m × 2 E − 127 (-1)^{S}×1.m×2^{E-127} (−1)S×1.m×2E−127

三、存储器层次结构 存储器的层次化结构

存储器主要性能指标:速度、容量、每位价格(位价) 一般来说,速度越高,位价越高;容量越大,位价越低;容量越大,速度越低。

在这里插入图片描述 层次结构主要体现在缓存-主存和主存-辅存这两个层次上。

①缓存-主存:主要解决CPU和主存速度不匹配问题 (由硬件自动完成)数据调动对任何程序员透明。

②主存-辅存:主要解决存储系统的容量问题 (由硬件和操作系统共同完成)数据调动对应用程序员透明。

动态RAM的刷新

一般取2ms,对动态RAM的全部基本单元电路必作一次刷新,称为刷新周期,又称再生周期。刷新的单位是行,仅需要行地址。

①集中刷新:在规定的一个刷新周期内,对全部存储单元集中一段时间逐行进行刷新,此刻必须停止读/写操作,称“死时间”或“死区”。(全部一起刷)

②分散刷新:对每行存储单元的刷新分到每个存取周期内完成。优点:没有死区。缺点:存取周期加长,整个系统速度降低。(一个个刷)

③异步刷新:是前两种方式的结合,既缩短“死时间”,又充分利用最大刷新时间间隔为2ms的特点。(一行行刷)

一行行刷的平均刷新时间: 行数 = 芯片容量 / 每行存储单元个数 平均刷新时间 = 间隔最长 / 行数

动态RAM与静态RAM的比较

在这里插入图片描述

存储容量的扩展

(1)位扩展 增加存储字长。例如:2片1K4位的存储芯片可组成1K8位的存储器。 注意:其中一片的数据线作为高4位D7-D4,另一片的数据线作为低4位D3-D0。

(2)字扩展 增加存储器字的数量。例如:2片1K8位的存储芯片可组成一个2K8位的存储器。 注意:两片都连地址线A0-A9。(从低位连起)

(3)字、位扩展 既增加存储字的数量又增加存储字长。

双口RAM和多模块存储器

为了提高CPU访问存储器的速度,可以采用双端口存储器(空间并行)、多模块存储器(时间并行)等技术,都属于并行技术。

多模块存储器

为了提高访存速度。(CPU速度比存储器快,同时从存储器中取出n条指令,可以充分利用CPU资源,提高运行速度) (1)单体多字系统 在一个存取周期内,从同一地址取出n条指令,然后逐条将指令送至CPU执行,即每隔1/n存取周期,主存向CPU送一条指令,增大了存储器的带宽,提高了存储器的工作速度。 例如:从同一地址取出4条指令,为单体四字结构,每字W位。按地址在一个存取周期内可读出4*W位的指令或数据,使主存带宽提高到4倍。 缺点:指令和数据在主存内必须是连续存放的,一旦遇到转移指令,或者操作数不能连续存放,这种方法的效果就不明显。

(2)多体并行系统 采用多提模块组成的存储器。每个模块可以并行工作,也可以交叉工作。 ①低位交叉编址 程序连续存放在相邻体中(交叉存储)。低位地址表示体号,高位地址表示体内地址。 地址的低n为片选。 优点:相邻地址单元的数据放在不同组,各组可以并行工作,能较好提高存储器的带宽。 缺点:某一组出现故障,会影响整个存储器的正常工作。 ②高位交叉编址 按体内地址顺序存放(顺序存储)。高位地址表示体号,低位地址表示体内地址。 地址的高n位片选。 优点: 某一组的故障不影响其他组,且容易通过添加模块来扩充容量。 缺点:相邻地址单元的数据放在同一组存储单元,各组间串行工作,不利于提升存储器的带宽。 在这里插入图片描述

Cache计算

(h越接近1越好,ta越接近tc越好) 在这里插入图片描述

Cache中主存块之间的映射方式

由主存地址映射到Cache地址称为地址映射。

(1)直接映射 主存数据只能装入Cache中的唯一位置。若这个位置已有内容,则产生块冲突,原来的块将无条件地被替换出去(无需使用替换算法)。 映射关系: i = j m o d      2 c i=j \mod\ 2^{c} i=jmod 2c 地址结构:

主存字块标记Cache字块地址字块内地址

优点:实现简单,只需利用主存地址的某些位直接判断,即可确定所需字块是否在缓存中。 缺点:不够灵活,降低命中率。

(2)全相联映射 允许主存中每一字块映射到Cache中的任何一块位置上。可以从已被占满的Cache中替换出任一旧字块。 通常采用昂贵的“按内容寻址”的相联存储器来完成。 地址结构:

主存字块标记字块内地址

优点:灵活,命中率高,缩小了块冲突率,空间利用率高。 缺点:地址变换速度慢,实现成本高

(3)组相联映射(上述两种映射的折中) 将Cache空间分成大小相同的组,主存的一个数据块可以装入到一组内的任何一个位置(组间采取直接映射,组内采取全相联映射)。 映射关系:i=j mod Q (i是缓存的组号,j是主存的块号,Q是Cache的组数)Q=1是变为全相联映射 地址结构:

主存字块标记组地址字块内地址 Cache中主存块的替换算法

(1)先进先出(First-In-First-Out,FIFO)算法 (2)近期最少使用(Least Recently Used,LRU)算法 (3)随机法

磁盘存储器

磁盘寻址的最小单位是扇区。 道密度:沿磁盘半径方向单位长度的磁道数。 位密度:单位长度磁道上记录二进制的位数。 平均寻道时间:从一个磁道转移到另一个磁道的平均时间。(全部寻道时间的一半) 平均等待时间:旋转等待的平均时间。(转一周时间的一半) 一扇区的传送时间:T=1 / (转速×扇区数) 存取一个扇区的时间:T=每个扇区位数 / (转速×扇区数) 平均存取时间=平均寻道时间 + 平均等待时间 + 传输时间 每个记录面的磁道数:K=[(外直径-内直径)/2]*磁道密度 盘组格式化容量:C = 记录面数 * K * 每个扇区字节数 * 扇区数 盘组非格式化容量:CN = 记录面数 * K * 最内圈磁道周长 * 内层位密度

其他

WE 为写允许信号:低电平0为写,高电平1为读 CS为片选信号:低电平0有效 借位/进位C:1=结果的最高位发生了进位,0=结果的最高位未发生进位 溢出标志位V:1=溢出,0=没有溢出

四、指令系统 指令的寻址方式 寻址方式有效地址访存次数(不计取指令)优点缺点立即寻址A是操作数0获取操作数最快的方式,不必访问存储器。A的位数限制了立即数的范围。直接寻址EA=A1寻找操作数比较简单,指令执行阶段对主存只访问一次。A的位数限制了操作数的寻址范围;修改A的值才能修改操作数的地址。隐含寻址程序指定0有利于缩短指令字长。需增加存储操作数或隐含地址的硬件。间接寻址(一次)EA=(A)2与直接寻址相比,扩大了操作数的寻址范围;便于编制程序(方便地完成子程序返回)。指令的执行阶段需要访存两次(一次间接寻址)或多次(多次间接寻址),致使指令执行时间延长。寄存器寻址EA=Ri0无须访存,减少了执行时间(第二快);指令字较短,节省存储空间。寄存器价格昂贵,计算机中寄存器个数有限。寄存器间接寻址(一次)EA=(Ri)1比间接寻址少访存一次,速度更快。指令的执行阶段还需要访问主存。基址寻址EA=A+(BR)1扩大操作数的寻址范围。在多道程序中极为有用。可用于编制浮动程序。偏移量(形式地址A)的位数较短。变址寻址EA=A+(IX)1扩大操作数的寻址范围。主要用于处理数组问题,适合编制循环程序。**偏移量(变址寄存器IX)**的位数足以表示整个存储空间。相对寻址EA=A+(PC)1转移地址不固定,随PC值的变化而变化,有利于编写浮动程序。堆栈寻址

在这里插入图片描述

CISC和RISE 序号复杂指令系统计算机(CISC)精简指令系统计算机(RISC)1指令系统复杂庞大,指令数目一般为200条以上。选取使用频率最高的一些简单指令,复杂指令的功能由简单指令的组合来实现。2指令的长度不固定,指令格式多,寻址方式多。指令长度固定,指令格式种类少,寻址方式种类少。3可以访存的指令不受限制。只有取数/存数(Load/Store)指令访问存储器,其余指令的操作都在寄存器内完成。4各种指令使用频度相差很大。CPU中有多个通用寄存器。5各种指令执行时间相差很大,大多数指令需多个时钟周期才能完成。采用流水线技术,大部分指令在一个时钟周期内完成。采用超标量和超流水线技术,可使每条指令的平均执行时间小于一个时钟周期。6控制器大多数采用微程序控制。控制器采用组合逻辑控制,不用微程序控制。7难以用优化编译生成高效的目标代码程序。采用优化的编译程序。 二地址指令操作数物理位置的三种形式

寄存器——寄存器型(RR型); 寄存器——存储器型指令(RS型); 存储器——存储器型(SS型)。

五、中央处理器CPU CPU基本结构

在这里插入图片描述

指令执行方案

(1)单指令周期 对所有指令都选用相同的执行时间来完成。 下一条指令只能在前一条指令执行结束之后才能启动。(串行) 指令周期取决于执行时间最长的指令的执行时间。

(2)多指令周期 对不同类型的指令选用不同的执行步骤来完成。 下一条指令只能在前一条指令执行结束之后才能启动。(串行) 可选用不同个数的时钟周期来完成不同指令的执行过程。

(3)流水线方案 指令之间可以并行执行的方案。 追求的目标是力争在每个时钟脉冲周期完成一条指令的执行过程。 通过在每一个时钟周期启动一条指令,尽量让多条指令同时运行,但各自处在不同的执行步骤中。

时钟周期:计算机操作的最小单位,由计算机主频确定,是主频的倒数。 工作脉冲:控制器的最小时间单位,起定时出发作用,一个时钟周期有一个工作脉冲。 机器周期:即CPU周期,包含若干个时钟周期。 指令周期:可由多个CPU周期组成。 存取周期:存储器进行两次独立的存取器操作(连续两次读或写操作)所需最小间隔时间。

存储字长:存放在一个存储单元中的二进制代码位数 机器字长:CPU一次能处理数据的位数。 指令字长:一般去存储字长的整数倍。

微指令格式

(1)水平型微指令:直接编码、字段直接编码、字段间接编码和混合编都是。 特点:一条水平型微指令定义并执行几种并行的基本操作。 在这里插入图片描述 (2)垂直型微指令:采用类似机器指令操作码的方式,设置操作码字段μOP 特点:一条垂直型微指令只能定义并执行一种基本操作。 在这里插入图片描述 (3)混合型微指令:在垂直型的基础上增加一些不太复杂的并行操作。指令较短,仍便于编写;微程序也不长,执行速度加快。

优缺点水平型微指令垂直型微指令优点微程序短,执行速度快微指令短、简单、规整,便于编写微程序缺点为指令长,编写微程序较麻烦微程序长,执行速度慢,工作效率低

比较:

比较水平型微指令垂直型微指令并行操作能力强弱效率高低灵活性强弱执行速度快慢微指令字长长短微程序短长掌握难易难以掌握容易掌握(因为与指令类似) 硬布线控制器、微程序控制器 比较硬布线控制器(组合逻辑控制器)微程序控制器工作原理微操作控制信号由组合逻辑电路根据当前的指令码、状态和时序,即使产生微操作控制信号以微程序的形式存放在控制存储器中,执行指令时读出即可执行速度快慢(访问控制存储器)规整性烦琐、不规整较规整应用场合RISC CPUCISC CPU易扩充性困难(不能修改)易扩充修改 微指令基本组成

控制存储器CM:是微程序控制器的核心部件,用于存放微程序,可用ROM构成。

微指令寄存器CMDR:用于存放从CM中取出的微指令,位数同指令字长相等。

微地址形成部件:产生初始微地址和后继微地址,以保证微指令的连续执行。

微地址寄存器CMAR:接受微地址形成部件送来的微地址,为在CM中读取指令作准备 。 地址转移逻辑:在有分支转移时形成新的后继地址。

机器指令与微指令的关系

每条机器指令编写成一个微程序; 每一个微程序包含若干条微指令; 每一条微指令对应一个或几个微操作命令。

影响流水线性能的因素

三种:结构相关、数据相关、控制相关 数据相关:写后读(RAW)、读后写(WAR)、写后写(WAW) 若发生数据相关冲突:如果在硬件设计上采用向前传送技术加以改进,则可不延迟。

流水线性能(吞吐率、加速比、效率)

在这里插入图片描述

六、总线

总线是构成计算机系统的互联机构,是多个系统功能部件之间进行数据传送的公共通路。

集中仲裁方式

(总线仲裁还有另一种方式:分布仲裁方式) (1)链式查询 有3根控制总线用于总线控制(BS总线忙、BR总线请求、BG总线同意) 总线同意信号BG是串行地从一个I/O接口送到下一个I/O接口。(离总线控制部件最近的设备具有最高的优先级)

(2)计数器定时查询 比链式查询多了一组设备地址线,少了一根总线同意先BG。 特点: ①计数从“0”开始,一旦设备的优先次序被固定,设备的优先级就按0、1、2、…的顺序降序排列,固定不变。 ②计数从上一次计数的终止点开始,即使一种循环方法,此时设备使用总线的优先级相等。 ③初始值可由程序设置,优先次序可以改变。

(3)独立请求方式 每一台设备均有一对总线请求先BRi和总线同一线BGi。 总线控制部件中有个排队电路,可根据优先次序确定哪一台设备的请求。 在这里插入图片描述

总线操作和定时

1、同步定时方式 通信双方由统一时标控制数据传送称为同步通信。 优点:规定明确、统一,模块间的配合简单一致。 缺点:主、从模块都用同一时限,造成对各不相同速度的部件而言,必须按最慢的部件来设计公共时钟,严重影响总线的工作效率,也给设计带来了局限性,缺乏灵活性。 适用于:总线长度较短、各部件存取时间比较一致的场合。 特点:总线传输周期越短,数据线的位数越多,直接影响总线的数据传输率。

2、异步定时方式 允许各模块速度不一致,没有公共的时钟标准,不要求所有部件严格的统一操作时间,采用应答方式(又称握手方式)。 应答方式可分为三种类型:不互锁、半互锁、全互锁。 (1)不互锁方式(如:CPU向主存写信息) (2)半互锁方式(如:多机系统中,某个CPU需访问共享存储器) (3)全互锁方式(如:网络通信中,通信双方)

总线标准

1、PCI总线(外部设备互连总线) 高性能的32位或64位总线,专为高度集成的外围部件、扩充插板和处理器/存储器系统而设计的互联机制。目前常用的PCI适配器有显卡、声卡、网卡等。 2、USB总线(通用串行总线) 是一种连接外部设备的I/O总线标准,属于设备总线。具有即插即用、热插拔等优点,有很强的连接能力。

总线带宽(单位时间内总线上传输数据的位数)

总线宽度:一个总线周期中并行传输的字节数 总线带宽 = 总线宽度 * 总线时钟频率



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3