高级系统架构设计师-计算机组成与体系结构思维导图
2020-08-10 10:43:19 7 举报
AI智能生成
高级系统架构设计师-计算机组成与体系结构思维导图
作者其他创作
大纲/内容
计算机组成与体系结构
知识点
计算机系统
硬件
控制器是分析和执行指令的部件,也统一挥并计算机各协调工作的中心部件,所依据是机器指令
运算器也称为算术逻辑单元(ArithmeticandLogicUnit,ALU),其主要功能是在控制器的控制下完成各种算术运算和逻辑运算
输入设备的任务是把人们编好的程序和原始数据送到计算机中去,并 且将它们转换成计算机内部所能识别和接受的信息方式。按输入信息的形态可分为字符(包括汉字)输入、图形输入、图像输入及语音输入等。目前,常见的输入设备有键盘、 鼠标、扫描仪等。
输出设备的任务是将计算机的处理结果以人或其他设备所能接受的 形式送出计算机。目前,最常用的输出设备是打印机和显示器。有些设备既可以是输入 设备,同时也可以是输出设备,例如,辅助存储器、自动控制和检测系统中使用的数模转换装置等
控制器
程序计数器PC
指令寄存器 IR
指令译码器 ID
时序部件
存储下一条要执行指令的地址
存储即将执行的指令
对指令中的操作码字段进行分析解释
提供时序控制信号
运算器
算术逻辑单元 ALU
累加寄存器 AC
数据缓冲寄存器 DR
状态条件寄存器 PSW
数据的算术运算和逻辑运算
通用寄存器,为 ALU 提供一个工作区,用在暂存数据
写内存时,暂存指令或数据
存状态标志与控制标志(争议点:也有将其归为控制器的)
输入设备
输出设备
存储器
辅助存储器也称为外存储器,通常简称为外存或辅存。存储需要长期保存的各种信息
主存储器
辅助存储器
计算机系统结构的分类
存储程序的概念
提出人:冯•诺依曼等人于 1946 年 6 月
概述
硬件应由运算器、存储器、控制器、输入设备和输出设备五大基本部件组成
内部采用二进制来表示指令和数据
将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作(这是存储程序的基本含义)
弱点
存储器访问会成为瓶颈,目前已出现了一些突破存储程序控制的计算机,统称为非冯•诺依曼型计算机,例如,数据驱动的数据流计算机、需求驱动的归约计算机和模式匹配驱动的智能计算机
Flynn 分类
提出人
1966 年,Michael.J.Flynn
概要
根据指令流、数据流的多倍性特征对计算机系统进行分类(通常称为 Flynn 分类法),
指令流
数据流
指机器执行的指令序列
指由指令流调用的数据序列,包括输入数据和中间结果,但不包括输出数据
不同的指令流-数据流组织方式分类
单指令流单数据流(Single Instruction stream and Single Data stream,SISD)
单指令流多数据流(Single Instruction stream and Multiple Data stream,SIMD)
多指令流单数据流(Multiple Instruction stream and Single Data stream,MISD)
多指令流多数据流(Multiple Instruction stream and Multiple Data stream,MIMD)
SISD 其实就是传统的顺序执行的单处理器计算机,其指令部件每次只对一条指令进行译码,并只对一个操作部件分配数据。
SIMD 以并行处理机(矩阵处理机)为代表,并行处理机包括多个重复的处理单元,由单一指令部件控制,按照同一指令流的要求为它们分配各自所需的不同数据。
MISD 具有 n 个处理单元,按 n 条不同指令的要求对同一数据流及其中间结果进行不同的处理。一个处理单元的输出又作为另一个处理单元的输入。这类系统实际上很少见到。有文献把流水线看作多个指令部件,称流水线计算机是 MISD
MIMD 是指能实现作业、任务、指令等各级全面并行的多机系统。如多核处理器、多处理机属于 MIMD
CISC/RISC
复杂指令系统计算机(Complex Instruction Set Computer,CISC)
特点
指令系统拥有大量的指令,通常有 100~250 条
最常使用的是一些比较简单的指令,仅占指令总数的 20%,但在程序中出现的频率却占 80%。而大部分复杂指令却很少使用
支持的寻址方式通常为 5~20 种
长度不是固定的,变长的指令增加指令译码电路的复杂性
典型的 CISC 通常都有指令能够直接对主存单元中的数据进行处理,其执行速度较慢
CISC 的指令系统很复杂,难以用硬布线逻辑(组合逻辑)电路实现控制器,通常采用微程序控制
指令数量众多
指令使用频率相差悬殊
支持很多种寻址方式
变长的指令
指令可以对主存单元中的数据直接进行处理
以微程序控制为主
增强指令的功能,设置一些功能复杂的指令,把一些原来由软件实现的、常用的功能改用硬件的指令系统来实现
精简指令系统计算机(Reduced Instruction Set Computer,RISC)
尽量简化指令功能,只保留那些功能简单,能在一个节拍内执行完成指令,较复杂的功能用一段子程序来实现
指令数量少
指令的寻址方式少
指令长度固定,指令格式种类少
以硬布线逻辑控制为主
单周期指令执行,采用流水线技术
优化的编译器
CPU 中的通用寄存器数量多,一般在 32 个以上,有的可达上千个
优先选取使用频率最高的一些简单指令和一些常用指令,避免使用复杂指令。只提供了 LOAD(从存储器中读数)和 STORE(把数据写入存储器)两条指令对存储器操作,其余所有的操作都在 CPU 的寄存器之间进行
通常只支持寄存器寻址方式、立即数寻址方式和相对寻址方式
RISC 指令数量少、格式少、相对简单,其指令长度固定,指令之间各字段的划分比较一致,译码相对容易
为了提高操作的执行速度,通常采用硬布线逻辑(组合逻辑)来构建控制器
因为简化了指令系统,很容易利用流水线技术,使得大部分指令都能在一个机器周期内完成。少数指令可能会需要多周期,例如,LOAD/STORE 指令因为需要访问存储器,其执行时间就会长一些
RISC 的精简指令集使编译工作简单化。因为指令长度固定、格式少、寻址方式少,编译时不必在具有相似功能的许多指令中进行选择,也不必为寻址方式的选择而费心,同时易于实现优化,从而可以生成高效率执行的机器代码
大多数 RISC 采用了 Cache 方案,使用 Cache 来提高取指令的速度。而且,有的 RISC 使用两个独立的 Cache 来改善性能。一个称为指令 Cache,另一个称为数据 Cache。这样,取指令和取数据可以同时进行,互不干扰
总线
总线是一组能为多个部件分时共享的公共信息传送线路
分时
共享
接收
在同一时刻,允许多个部件同时从总线上接收相同的信
共享是指总线上可以挂接多个部件,各个部件之间相互交换的信息都可以通过这组公共线路传送
分时是指同一时刻只允许有一个部件向总线发送信息,如果出现两个或两个以上部件同时向总线发送信息,势必导致信号冲突
存储器系统
存储器是用来存放程序和数据的部件,它是一个记忆装置,也是计算机能够实现“存储程序控制”的基础。在计算机系统中,规模较大的存储器往往分成若干级,称为存储器系统。采用多级存储器体系,确保能够获得尽可能高的存取速率,同时保持较低的成本
低投入换来较高的存取速率,得益于局部性原理
局部性原理是指程序在执行时呈现出局部性规律,即在一较短的时间内,程序的执行仅局限于某个部分。
主存可由 CPU 直接访问,存取速度快,但容量较小,一般用来存放当前正在执行的程序和数据
随机存取存储器(Random Access Memory,RAM)
既可以写入也可以读出,但断电后信息无法保存,只能用于暂存数据
分类
DRAM 动态RAM
DRAM 的信息会随时间逐渐消失,因此需要定时对其进行刷新维持信息不丢失
SRAM 静态RAM
SRAM 在不断电的情况下信息能够一直保持而不会丢失
比较
DRAM 的密度大于 SRAM 且更加便宜,SRAM 速度快,电路简单(不需要刷新电路),然而容量小,价格高
只读存储器器(Read Only Memory,ROM)
存储器的内容只能随机读出而不能写入
用处
这类存储器常用来存放那些不需要改变的信息。由于信息一旦写入存储器就固定不变了,即使断电,写入的内容也不会丢失,所以又称为固定存储器。一般用于存放系统程序 BIOS(Basic Input Output System,基本输入输出系统
内存编址方法
计算机系统中,存储器中每个单元的位数是相同且固定的,称为存储器编址单位。不同的计算机,存储器编址的方式不同,主要有字编址和字节编址
辅存设置在主机外部,它的存储容量大,价格较低,但存取速度较慢,一般用来存放暂时不参与运行的程序和数据,CPU 不可以直接访问辅存,辅存中的程序和数据在需要时才传送到主存,因此它是主存的补充和后援
磁带存储器
一种顺序存取的设备,其特点包括:存取时间较长,但存储容量大,便于携带,价格便宜
硬盘存储器
记录面
圆柱面
磁道
扇区
磁盘访问时间
磁盘访问时间(存取时间) = 寻道时间+旋转延迟时间
Cache
当 CPU 速度很高时,为了使访问存储器的速度能与 CPU 的速度相匹配,又在主存和 CPU 间增设了一级 Cache。Cache 的存取速度比主存更快,但容量更小,用来存放当前最急需处理的程序和数据,以便快速地向 CPU 提供指令和数据
功能
提高 CPU 数据输入输出的速率,突破所谓的“冯•诺依曼瓶颈”,即 CPU 与存储系统间数据传送带宽限制。
Cache 通常采用相联存储器
Cache 基本原理
使用 Cache 改善系统性能的依据是程序的局部性原理
“Cache+主存储器”的系统的平均周期
t3 =t1′h+t2′(1-h)
h 代表对 Cache 的访问命中率(“1-h”称为失效率,或者称为未命中率),t1 表 示 cache 的周期时间,t2表示内存的周期时间
映射机制
当 CPU 发出访存请求后,存储器地址先被送到 Cache 控制器以确定所需数据是否已在 Cache 中,若命中则直接对 Cache 进行访问,这个过程称为 Cache 的地址映射(映像)。
直接映射
直接映像方式以随机存取存储器作为 Cache 存储器,硬件电路较简单。在进行映像时,主存地址被分成三个部分,从高到低依次为:区号、页号以及页内地址
优点
比较容易实现
缺点
不够灵活,有可能使 Cache 的存储空间得不到充分利用。
全相联映射
全相联映像使用相联存储器组成的 Cache 存储器。在全相联映像方式中,主存的每一页可以映像到 Cache 的任一页。如果淘汰 Cache 中某一页的内容,则可调入任一主存页的内容,因而较直接映像方式灵活
主存地址
分别为地址部分(主存页标记)和数据部分(页内地址)。数据部分用于存放数据,而地址部分则存放该数据的存储器地址
速度很慢,失掉了高速缓存的作用
较器电路难于设计和实现,只适用于小容量 Cache
组相联映射
组相联映像(页组映像)介于直接映像和全相联映像之间,是这两种映像的一种折衷方案
全相联映像方式以页为单位,可自由映像,没有固定的对应关系。直接映像方式中,主存分组,主存组内的各页与 Cache 的页之间采取的是固定的映像关系,但各组均可映像到Cache 中。在组相联映像方式中,主存与 Cache 都分组,主存中一个组内的页数与 Cache 的分组数相同
存储器中数据存取方式
顺序存取(磁带)
直接存取(磁盘)
随机存取(主存)
相联存取(Cache)
存储器的数据以记录的形式进行组织。对数据的访问必须按特定的线性顺序进行
与顺序存取相似,直接存取也使用一个共享的读写装置对所有的数据进行访问。但是,每个数据块都拥有唯一的地址标识,读写装置可以直接移动到目的数据块所在位置进行访问。存取时间也是可变的
存储器的每一个可寻址单元都具有自己唯一的地址和读写装置,系统可以在相同的时间内对任意一个存储单元的数据进行访问,而与先前的访问序列无关
相联存取也是一种随机存取的形式,但是选择某一单元进行读写是取决于其内容而不是其地址。与普通的随机存取方式一样,每个单元都有自己的读写装置,读写时间也是一个常数。使用相联存取方式,可以对所有的存储单元的特定位进行比较,选择符合条件的单元进行访问
流水线
流水线周期
流水线应用过程中,会将需要处理的工作分为 N 个阶段,最耗时的那一段所消耗的时间为流水线周期
流水线执行时间
n 代表需要处理的任务数量
流水线执行时间=第 1 条指令的执行时间+(n-1)*流水线周期
理论情况
实践情况
流水线的吞吐率(Though Put rate,TP)
在单位时间内流水线所完成的任务数量或输出的结果数量
TP=n/Tk (任务数n/完成n个任务的时间Tk)
最大吞吐率
流水线的加速比
如果不使用流水线,即顺序执行所用的时间为 T0 ,使用流水线的执行时间为 Tk
完成同样一批任务,不使用流水线所用的时间与使用流水线所用的时间之比称为流水线的加速比(speedup ratio)
s=T0/Tk
最大加速比
考点
Flynn分类法
计算机层次化存储结构
时间/空间局部性
随机存储器和只读存储器
磁盘工作原理
流水线基本概念
流水线周期及流水线执行时间
流水线吞吐率
硬件通常是指一切看得见,摸到的设备实体。原始冯.诺依曼( VonNeumann)计算机在结构上是以运器为中心的,现在存储器为中心.
收藏
0 条评论
下一页
为你推荐
查看更多