计算机系统结构复习要点1
计算机系统结构复习
n
2
pi (pi 表示第 i 种操作码在程序中出现的概率)
4
Copyright 2011
计算机系统结构复习提纲
© 计 081
固定长编码相对于 Huffman 编码的信息冗余量: R 1 必须知道每种操作码在程序中出现的概率
pi log i
1
n
2
pi
log n
2
扩展编码法
Huffman 操作码的主要缺点: 操作码长度很不规整,硬件译码困难 与地址码共同组成固定长的指令比较困难 扩展编码法:由固定长操作码与 Huffman 编码法相结合形成
存在的问题
以硬件为主固件为辅 固件的主要缺点是: 执行速度低。目前,ROM 的速度低于 SRAM 一条机器指令通常要多条微指令解释执行 固件的主要优点是: 便于实现复杂指令,便于修改指令系统 以硬联逻辑为主来实现指令系统 对于少数复杂的指令,目前的许多处理机也用微程序技术实现。 RISC 对编译器造成的困难主要有: (1)必须精心安排每一个寄存器的用法,以便充分发挥每一个通用寄存器的效率,尽量减少访问主存储器的次数。 (2)做数据和控制相关性分析,要调整指令的执行序列,并与硬件相配合实现指令延迟技术和指令取消技术等。 (3)要设计复杂的子程序库,RISC 的子程序库通常要比 CISC 的子程序库大得多。
2. 数据表示的含义及与数据结构的关系
数据表示的定义: 数据表示是指计算机硬件能够直接识别,可以被指令系统直接调用的那些数据类型。 例如:定点、逻辑、浮点、十进制、字符、字符串、堆栈和向量等 数据类型:文件、图、表、树、阵列、队列、链表、栈、向量、串、实数、整数、布尔数、字符等 确定哪些数据类型用数据表示实现,是软件与硬件的取舍问题
计算机系统结构重点
3-2.6 转移相关及解决方法
3-2.6.1 转移相关问题
转移指令改变程序顺序执行的特性。由于是流 水线操作,在转移发生之前,若干条转移指令的后 续指令已被取到流水线处理机中。这就是所谓的转 移相关问题(branch hazard),有时也称之为控制 相关问题(control hazard)。
2
2. 系列机(family machine):是指由一个制造
商生产的具有相同的系统结构,但具有不同组成和 实现的一系列不同型号的计算机。
它们的系统结构相同,具有同样的指令系统,从程序设 计者所看到的机器属性是相同的。
软件兼容性:同一个软件可以不加修改地运行于系统结构相 同的各档机器上,而且运行结果一样,差别只是运行时间不同。 向后兼容:在某一时间生产的机器上运行的目标软件能 够直接运行于更晚生产的机器上。 向上兼容:在低档机器上运行的目标软件能够直接运行 于高档机器上。
例如:处理器内的指令流水线技术就是时间重叠途 径的典型例子。
(2)资源重复(resource-replication)
三、并行计算机简介
按照并行计算机的系统结构,可以分为:流水 线向量处理机、阵列计算机、多处理器/机系统与多 计算机系统。
7
1.4 计算机系统的分类
一、Flynn分类法
按照指令流和数据流两种不同的组合,把计算机 系统的结构分为以下四类: (1)单指令流单数据流SISD (2)单指令流多数据流SIMD (3)多指令流单数据流MISD (4)多指令流多数据流MIMD
其预测方向是固定不变的。
* 最简单的方法是预测分支总是命中(或者不命中)。 错误率平均34%
* 另一种稍好的方法是根据分支的方向来预测分支是 否命中,向后转移的分支预测为选中,向前转移的 分支预测为不选中。 错误率很难低于30%。 * 一个更精确的技术是基于以前运行时得到的配置 文件信息。错误率约14% 左右。花费时间代价。 总的来说,预测的准确率不够高。
02325计算机系统结构复习资料
第一章计算机系统结构的基本概念从处理数据的角度看,并行级别有位串字串,位并字串,位片串字并,全并行。
位串字串和位并字串基本上构成了SIMD。
位片串字并的例子有:相联处理机STARAN,MPP。
全并行的例子有:阵列处理机ILLIACIV。
从加工信息的角度看,并行级别有存储器操作并行,处理器操作步骤并行,处理器操作并行,指令、任务、作业并行。
存储器操作并行是指可以在一个存储周期内并行读出多个CPU字的,采用单体多字、多体单字或多体多字的交叉访问主存系统,进而采用按内容访问方式,位片串字并或全并行方式,在一个主存周期内实现对存储器中大量字的高速并行操作。
例子有并行存储器系统,以相联存储器为核心构成的相联处理机。
处理器操作步骤并行是指在并行性概念中引入时间因素,让多个处理过程在时间上错开,轮流重复地执行使用同一套设备的各个部分,加快硬件周转来赢得速度。
例子有流水线处理机。
处理器操作并行是指一个指令部件同时控制多个处理单元,实现一条指令对多个数据的操作。
擅长对向量、数组进行处理。
例子有阵列处理机。
指令、任务、作业并行是指多个独立的处理机分别执行各自的指令、任务、作业。
例子有多处理机,计算机网络,分布处理系统。
并行性的开发途径有时间重叠(Time Interl eaving ),资源重复(Resou rceReplication),资源共享(ResourceSharing)。
时间重叠是指在并行性概念中引入时间因素,让多个处理过程在时间上错开,轮流重复地执行使用同一套设备的各个部分,加快硬件周转来赢得速度。
例子有流水线处理机。
资源重复是指一个指令部件同时控制多个处理单元,实现一条指令对多个数据的操作。
例子有阵列处理机,相联处理机。
资源共享是指用软件方法让多个用户按一定时间顺序轮流使用同一套资源以提高资源的利用率,从而提高系统性能。
例子有多处理机,计算机网络,分布处理系统。
SISD:一个指令部件控制一个操作部件,实现一条指令对一个数据的操作。
计算机系统结构考点总结
计算机系统结构考点总结计算机系统结构是计算机科学与技术领域的重要分支,涉及计算机硬件和软件的组成及其相互关系。
为了帮助大家更好地掌握这一领域的核心知识,本文将针对计算机系统结构的考点进行详细总结。
一、计算机系统结构基本概念1.计算机系统结构的定义及发展历程2.计算机系统结构的分类:冯·诺伊曼结构、哈佛结构、堆栈式结构等3.计算机系统性能指标:指令周期、CPU时钟周期、主频、缓存命中率等二、中央处理器(CPU)1.CPU的组成:算术逻辑单元(ALU)、控制单元(CU)、寄存器组等2.指令集架构:复杂指令集计算机(CISC)、精简指令集计算机(RISC)3.CPU缓存:一级缓存、二级缓存、三级缓存及其工作原理4.多核处理器:核数、并行计算、线程级并行等三、存储系统1.存储器层次结构:寄存器、缓存、主存储器、辅助存储器等2.主存储器:DRAM、SRAM、ROM等3.磁盘存储器:硬盘、固态硬盘、光盘等4.存储器管理:分页、分段、虚拟存储器等四、输入输出系统1.I/O接口:并行接口、串行接口、USB、PCI等2.I/O设备:键盘、鼠标、显示器、打印机等3.I/O控制方式:程序控制、中断、直接内存访问(DMA)等4.I/O调度策略:先来先服务(FCFS)、最短作业优先(SJF)、扫描算法等五、总线与通信1.总线分类:内部总线、系统总线、I/O总线等2.总线标准:ISA、PCI、PCI Express等3.通信协议:TCP/IP、UDP、串行通信等4.网络拓扑结构:星型、总线型、环型、网状等六、并行计算与分布式系统1.并行计算:向量机、SIMD、MIMD等2.分布式系统:分布式计算、分布式存储、负载均衡等3.并行与分布式编程:OpenMP、MPI、MapReduce等4.并行与分布式算法:排序、搜索、分布式锁等通过以上考点的总结,相信大家对计算机系统结构有了更加全面和深入的了解。
计算机系统结构 复习要点
计算机系统结构:第一章基本概念填空题、选择题复习:1、从使用语言角度,系统按功能划分层次结构由低到高分别为:微程序机器M0、传统机器M1、操作系统机器M2、汇编语言机器M3、高级语言机器M4、应用语言机器M5.2、计算机系统的设计思路:“从中间开始”设计的“中间”是指层次结构中的软硬件交界面,目前多数在传统机器语言机器级与操作系统机器级之间。
3、翻译与解释的区别与联系:区别:翻译是整个程序转换,解释是低级机器的一串语句仿真高级机器的一条语句;联系:都是高级机器程序在低级机器上执行的必须步骤。
4、模拟与仿真的区别:模拟:用机器语言解释实现软件移植的方法,解释的语言存在主存中;仿真用微程序解释,存储在控制存储器中。
5、解决好软件的可移植性方法有统一高级语言、采用系列机、模拟与仿真。
6、系列机必须保证向后兼容,力争向上兼容。
7、非用户片也称通用片,其功能是由器件厂生产时定死的,器件的用户只能用,不能改;现场片,用户根据需要改变器件内部功能;用户片是专门按用户的要求生产高集成度VLSI器件,完全按用户的要求设计的用户片称为全用户片。
一般同一系列内各档机器可分别用通用片、现场片或用户片实现。
8、计算机应用可归纳为向上升级的4类:数据处理、信息处理、知识处理、智能处理。
9、并行性开发的途径有:时间重叠、资源重复和资源共享。
10、并行性是指:同一时刻或同一时间间隔内完成两种或两种以上性质相同或不同的工作,并行性包含同时性和并发性二重含义。
11、科学计算中的重大挑战性课题往往要求计算机系统能有1TFLOPS的计算能力、1TBYTE 的主存容量、1TBYTE/S的I/O带宽。
12、并行处理计算机的结构:流水线计算机——时间重叠,阵列处理机——资源重复,多处理机——资源共享。
13、多机系统分多处理机系统和多计算机系统,多处理机系统:多台处理机组成的单一系统,多计算机系统:多台独立的计算机组成的系统。
14、多机系统的耦合度可以分为最低耦合、松散耦合和紧密耦合。
计算机系统结构重点
第一章计算机系统结构的基本概念计算机系统结构含义(p10),透明性(p12)计算机系统结构:指机器语言程序的设计者或是编译程序设计者所看到的计算机系统的概念性结构与功能特性。
透明性:一种本来存在,有差异的事物和属性,从某种角度上看又好像不存在的现象,被称为是“透明性”。
例如,高级程序员看不到各种不同类型机器的差异性,就是一个明显的例证。
计算机系统结构、组成、实现之间关系(p13)1.计算机系统结构-机器语言级的程序员所了解的计算机的属性,即外特性。
2.计算机组成-计算机系统结构的逻辑实现。
3.计算机的实现-指其计算机组成的物理实现。
分类(FLYNN)(p17):单指令流、单数据流( SISD )结构;单指令流、多数据流(SIMD )结构;多指令流、单数据流( MISD )结构;多指令流、多数据流( MIMD )结构计算机系统设计的原则(三条)(p24),阿姆达尔(Amdahl)定律(一)加速那些使用频率高的部件——提高整个计算机性能1(二)Amdahl定律:Sp = Te / T0 = ————————-(1 - fe)+ fe / refe:可改进部分在原系统计算时间中所占的比例,总是小于1;re:性能提高的倍数(T部件改进前/ T部件改进后),总是大于1。
(三)程序访问局部性原理:程序往往重复使用它刚刚使用过的数据和指令。
计算机系统的层次结构(p9)虚拟机=应用软件+系统软件;应用软件=应用语言级(6);系统软件=高级语言级(5)+汇编语言级(4)+操作系统级(3);物理机=硬件+固件;硬件=传统机器级(2);固件=微程序机器级(1)+电子线路(0)性能评价结果数据的处理方法(p48):算术平均值,几何平均值,调和平均值,加权平均值第二章指令系统软件兼容性要求(p4):软件向后兼容和向上兼容。
数据类型(p9)和数据表示(p11):数据类型:指一组数据值的集合,还定义了可作用于这个集合上的操作集。
计算机系统结构基础知识要点梳理
计算机系统结构基础知识要点梳理计算机系统结构是指计算机硬件和软件之间的组织和交互方式,是计算机科学与技术的基础。
了解计算机系统结构的基础知识对于计算机专业学生和从事计算机相关工作的人员来说至关重要。
本文将梳理计算机系统结构的基础知识要点,帮助读者更好地理解和掌握这一领域的知识。
一、计算机的组成与功能计算机系统由硬件和软件组成。
硬件包括中央处理器(CPU)、内存、存储器、输入输出设备等,而软件包括系统软件和应用软件。
计算机的主要功能是数据的输入、处理、输出和存储。
1.中央处理器中央处理器是计算机的核心部件,负责执行指令并控制计算机的工作。
它由运算器和控制器组成,运算器负责进行算术和逻辑运算,控制器负责解析和执行指令。
2.内存内存是计算机用来存储数据和指令的地方,它可以分为主存和辅存。
主存是CPU可以直接访问的存储器,而辅存则用于长期存储数据和程序。
3.存储器存储器用于存储计算机系统中的各种数据和信息,包括数据、指令和程序等。
根据存储介质的不同,可以将存储器分为内存和外存。
4.输入输出设备输入输出设备用于将数据从外部输入到计算机系统中,或将计算机系统中的数据输出到外部设备中。
常见的输入输出设备包括键盘、鼠标、显示器、打印机等。
二、计算机的层次结构计算机系统可以按照功能和性能划分为多个层次,从底层到高层分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
1.物理层物理层是计算机系统中最底层的层次,它负责处理计算机硬件和信号传输的问题。
包括处理器、存储器、总线等硬件设备,并规定了数据的传输方式和电信号的特性。
2.数据链路层数据链路层负责处理数据在链路上的传输和错误控制。
它将数据分组成帧,并对传输过程中的错误进行检测和纠正。
3.网络层网络层负责处理数据在不同网络之间的传输和路由问题。
它使用IP 地址来标识网络和主机,并通过路由选择算法确定数据的传输路径。
4.传输层传输层负责处理数据的传输可靠性和流量控制。
计算机体系结构复习,考点
1.计算机系统结构的定义:计算机系统结构概念的实质是确定计算机系统中软、硬件的界面,界面之上是软件实现的功能,界面之下是硬件和固件实现的功能。
2.计算机组成额计算机实现的二者关系:计算机组成指的是计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。
它着眼于物理机器级内各事件的排序方式与控制方式、各部件的功能以及各部件之间的关系。
计算机实现指的是计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。
它着眼于器件技术和微组装技术,其中器件技术在实现技术中起主导作用。
3.系列机的软件兼容方式4种:向上兼容、向下兼容、向前兼容、向后兼容。
向上(下)兼容指的是按某档计算机编制的程序,不加修改就能运行于比他高(低)档的计算机。
向后(前)兼容指的按某个时期投入市场的某种型号计算机编制的程序,不加修改就能运行于在它之后(前)投入市场的计算机。
向后兼容一定要保证,他是系列机的根本特征。
兼容机:它是指由不同制造商生产的具有相同系统结构的计算机。
4.计算机系统设计的4个常用定量原理:①以经常性事件为重点:这是计算机设计中最重要、使用最广泛的设计原则。
②Amdahl定律:加快某部件执行速度所能获得的系统性能加速比,受限于该部件的执行时间占系统中总执行时间的百分比。
Amdahl定律可用来计算当对计算机系统中的某个部分进行改进后,系统总体性能可获得多大的提高。
这是通过加速比这个指标来衡量的。
= =,这个加速比依赖于两个因素:在改进前的系统中,可改进部分的执行时间在总执行时间中的比例:可改进部分改进以后性能提高的倍数。
③CPU性能公式:CPU 时间=执行程序所需的时钟周期数X时钟周期时间,引入新参数CPI(每条指令执行的平均时钟周期数)CPI = 执行程序所需的时钟周期数/IC IC:所执行的指令条数。
程序执行的CPU 时间可以写成CPU时间= IC ×CPI ×时钟周期时间。
计算机体系结构复习要点
第一章计算机体系结构的基本概念1.计算机系统的层次结构L6应用语言虚拟机L5高级语言虚拟机L4汇编语言虚拟机L3操作系统虚拟机L2机器语言L1微程序机器级:L1~L3级用解释的方法实现,L4~L6级用翻译的方法实现。
翻译和解释是语言实现的两种基本技术。
共同点:都是以执行一串L级指令来实现一跳L+1级指令;不同点:翻译技术是先把L+1级程序全部转换成L 级程序后,再去执行新产生的L级程序,在执行过程中L+1级程序不再被访问;而解释技术则是每当一条L+1条指令被译码后,就直接去执行一串等效的L级指令,然后再去取下一条L+1级的指令,依次重复进行。
一般来说,解释执行比编译后再去执行所花的时间多,但占用的存储空间较少。
2.计算机系统结构的定义计算机系统结构是程序员看到的计算机属性,即概念性结构与功能特性。
计算机设计的3个方面:指令集结构、组成、硬件。
计算机系统结构概念的实质是:确定计算机系统中软硬件的界面,界面之上是软解实现的功能,界面之下是硬件实现的功能。
3.计算机组成和计算机实现计算机系统结构指的是计算机系统的软硬件的界面,即机器语言程序员所看到的传统机器级所具有的属性。
计算机组成指的是计算机系统结构的逻辑实现,包括物理机器级中的数据流和控制流的组成以及逻辑设计等。
它着眼于物理机器级内各事件的排序方式与控制方式、各部件的功能以及各部件之间的联系。
计算机实现指的是计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。
它着眼于器间技术和微组装技术,其中器件技术在现实技术中起主导作用。
系列机是指由同一厂商生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的机器。
4.定量分析技术(计算)Amdahl定律、CPU性能公式(简答)程序的局部性原理:它是指程序执行时所访问的存储器地址分布不是随机的,而是相对地簇聚。
(局部性包括时间局部性和空间局部性。
期末复习1.《计算机系统结构》重点知识总结
《计算机组成原理与结构》重要知识点第一章概论一、基本概念1.冯.诺依曼体制?存储程序方式?冯•诺依曼体制包含三个要点:(1)采用二进制代码表示信息,以便计算机识别;(2)采用存储程序工作方式,才能使计算机自动地对信息进行处理;(3)由存储器、运算器、控制器、输入/输出设备等功能部件组成计算机硬件系统。
存储程序工作方式:事先编制程序,事先存储程序,自动、连续地执行程序。
2.控制流?数据流?控制流:控制计算机工作的信息,即指令或命令。
数据流:计算机加工处理的对象,即数值和非数值数据。
传统的诺依曼机采用控制流(指令流)驱动方式:按指令序列依次读取指令,根据指令所包含的控制信息对数据进行处理,在程序执行过程中,始终由指令流驱动计算机工作。
数据流驱动方式是对传统诺依曼机工作方式的根本改变:只要数据准备好,有关指令就可并行执行,如数据流计算机。
3.模拟信号?数字信号?数字信号有哪两种?模拟信号:在时间上连续变化的电信号,用信号的某些参数模拟信息。
数字信号:在时间上或空间上断续变化的电信号,依靠彼此离散的多位信号的组合表示信息。
数字信号有两种:脉冲信号和电平信号。
脉冲信号:在时间上离散的电信号,利用脉冲的有无表示不同的状态。
电平信号:在空间上离散的电信号,利用信号电平的高低表示不同的状态。
4.总线及其组成?一组能为多个部件分时共享的公共的信息传送线路。
总线由一组传送线与相应控制逻辑构成(包括CPU内设置控制逻辑、总线控制器)。
按照传输的信息类型可分为地址总线、数据总线、控制总线。
5.接口的概念?主机与外设之间的连接逻辑,控制外设的I/O操作。
6.基本字长?一般指参加一次定点运算的操作数的位数。
7.CPU主频?时钟频率?外部频率或基频,也叫系统时钟频率。
CPU主频=外频×倍频系数;CPU主频是指CPU内核的工作频率,即CPU的时钟频率,计算机的操作在时钟信号的控制下分步执行,每个时钟信号周期完成一步操作,时钟频率的高低在很大程度上反映了CPU速度的快慢。
计算机系统结构复习要点
计算机系统结构复习要点计算机系统结构是研究软件、硬件和固件的功能分配,确定软件和硬件的分界面,即哪些功能用硬件实现,哪些功能用软件实现。
计算机组成(Computer Organization):也称计算机组织,是在明确计算机系统结构分配给硬件的功能与概念性结构之后,研究硬件系统各组成部分的内部构造和相互联系,以实现机器语言级指令的功能与特性。
计算机组成是计算机系统结构的逻辑实现,包括机器级内部数据流和控制流的组成及其逻辑设计等。
计算机实现(Computer Implementation):是计算机组成的物理实现。
目前,计算机实现所涉及的主要内容包括:(1)处理机、主存等部件的物理结构(2)器件的集成度和速度(3)器件、模块、插件、底板的划分与连接(4)专用器件的设计、微组装技术(5)信号传输、电源、冷却及整机装配技术以及有关的制造工艺和技术等系列机指基本指令系统相同、基本体系结构相同的一系列不同型号的计算机。
系列机的概念就是指先设计好一种系统结构,而后就按这种系统结构设计它的系统软件,按器件状况和硬件技术研究这种结构的各种实现方法。
并按照速度、价格等不同要求,分别提供不同速度、不同配置的各档机器。
系列机必须保证用户看到的机器属性一致。
冯·诺依曼计算机的主要特点如下:(1)机器以运算器为中心。
(2)采用存储程序原理。
(3)存储器是按地址访问的、线性编址的空间。
(4)控制流由指令流产生。
(5)指令由操作码和地址码组成。
(6)数据以二进制编码表示,采用二进制运算。
冯·诺依曼结构两个最重要特征:➢指令驱动计算机内部的信息流动➢计算机应用主要面向数值计算和数据处理Flynn分类法把计算机系统的结构分为4类:➢单指令流单数据流(SISD)➢单指令流多数据流(SIMD)➢多指令流单数据流(MISD)➢多指令流多数据流(MIMD)四种定量分析技术的概念,及其相关计算:运用Amdahl定量的计算,CPI的计算大概率事件优先原则:对于大概率事件(最常见的事件),赋予它优先的处理权和资源使用权,以获得全局的最优结果。
02325计算机系统结构复习资料全
第一章计算机系统结构的基本概念从处理数据的角度看,并行级别有位串字串,位并字串,位片串字并,全并行。
位串字串和位并字串基本上构成了SIMD。
位片串字并的例子有:相联处理机STARAN,MPP。
全并行的例子有:阵列处理机ILLIAC IV。
从加工信息的角度看,并行级别有存储器操作并行,处理器操作步骤并行,处理器操作并行,指令、任务、作业并行。
存储器操作并行是指可以在一个存储周期内并行读出多个CPU字的,采用单体多字、多体单字或多体多字的交叉访问主存系统,进而采用按内容访问方式,位片串字并或全并行方式,在一个主存周期内实现对存储器中大量字的高速并行操作。
例子有并行存储器系统,以相联存储器为核心构成的相联处理机。
处理器操作步骤并行是指在并行性概念中引入时间因素,让多个处理过程在时间上错开,轮流重复地执行使用同一套设备的各个部分,加快硬件周转来赢得速度。
例子有流水线处理机。
处理器操作并行是指一个指令部件同时控制多个处理单元,实现一条指令对多个数据的操作。
擅长对向量、数组进行处理。
例子有阵列处理机。
指令、任务、作业并行是指多个独立的处理机分别执行各自的指令、任务、作业。
例子有多处理机,计算机网络,分布处理系统。
并行性的开发途径有时间重叠(Time Interleaving),资源重复(ResourceReplication),资源共享(Resource Sharing)。
时间重叠是指在并行性概念中引入时间因素,让多个处理过程在时间上错开,轮流重复地执行使用同一套设备的各个部分,加快硬件周转来赢得速度。
例子有流水线处理机。
资源重复是指一个指令部件同时控制多个处理单元,实现一条指令对多个数据的操作。
例子有阵列处理机,相联处理机。
资源共享是指用软件方法让多个用户按一定时间顺序轮流使用同一套资源以提高资源的利用率,从而提高系统性能。
例子有多处理机,计算机网络,分布处理系统。
SISD:一个指令部件控制一个操作部件,实现一条指令对一个数据的操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机系统结构复习要点第一章计算机系统结构的基本概念1、计算机系统的层次结构第1级:微程序机器;第2级:机器语言;第3级:操作系统虚拟机;第4级:汇编语言虚拟机;第5级:高级语言虚拟机;第6级:应用语言虚拟机。
2、计算机组成指的是计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。
它着眼于物理机器级内各事件的排序方式与控制方式、各部件的功能以及各部件之间的联系。
3、计算机实现指的是计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。
它着眼于器件技术和微组装技术,其中器件技术在实现技术中起主导作用。
4、CPU性能公式CPU时间=IC×CPI×时钟周期时间其中,IC为所执行的指令条数;CPI为每条指令的平均时钟周期数例1.3 考虑条件分支指令的两种不同设计方法:(1)CPU A:通过比较指令设置条件码,然后测试条件码进行分支。
(2)CPU B:在分支指令中包括比较过程。
在这两种CPU中,条件分支指令都占用2个时钟周期,而所有其他指令占用1个时钟周期。
对于CPU A,执行的指令中分支指令占20%;由于每条分支指令之前都需要有比较指令,因此比较指令也占20%。
由于CPU A在分支时不需要比较,因此CPU B的时钟周期时间是CPU A的1.25倍。
问:哪一个CPU更快?如果CPU B的时钟周期时间只是CPU A的1.1倍,哪一个CPU更快呢?解我们不考虑所有系统问题,所以可用CPU性能公式。
占用2个时钟周期的分支指令占总指令的20%,剩下的指令占用1个时钟周期。
所以CPI A = 0.2 ×2 + 0.80 ×1 = 1.2则CPU A性能为总CPU时间A = IC A×1.2 ×时钟周期A根据假设,有时钟周期B = 1.25 ×时钟周期A在CPU B中没有独立的比较指令,所以CPU B的程序量为CPU A80%,分支指令的比例为20%/80% = 25%这些分支指令占用2个时钟周期,而剩下的75%的指令占用1个时钟周期,因此CPI B = 0.25 ×2 + 0.75 ×1 = 1.25因为CPU B不执行比较,故IC B = 0.8 ×IC A因此CPU B性能为总CPU时间B = IC B×CPI B×时钟周期B= 0.8 ×IC A×1.25 ×(1.25 ×时钟周期A)= 1.25 ×IC A×时钟周期A在这些假设之下,尽管CPU B执行指令条数较少,CPU A因为有着更短的时钟周期,所以比CPU B快。
如果CPU B的时钟周期时间仅仅是CPU A的1.1倍,则时钟周期B = 1.10 ×时钟周期A CPU B的性能为总CPU时间B = IC B ×CPI B×时钟周期B= 0.8 ×IC A×1.25 ×(1.10 ×时钟周期A)= 1.10 ×IC A×时钟周期A因此CPU B由于执行更少指令条数,比CPU A运行更快。
5、程序的局部性原理程序的局部性原理是常用的程序属性。
它是指程序执行时所访问的存储器地址分布不是随机的,而是相对的簇聚。
局部性包括时间局部性和空间局部性。
时间局部性是指,程序即将用到的信息很可能就是目前正使用的信息;程序的空间局部性是指,程序即将用到的信息很可能与目前正在使用的信息在空间上相邻或者临近。
第二章计算机指令集结构1、对指令集的基本要求:完整性、规整性、高效率和兼容性。
2、CISC指令集存在的问题:(1)各种指令的使用频度相差悬殊,许多指令很少用到。
(2)指令集庞大,指令条数多,许多指令的功能有很复杂。
(3)许多指令由于操作繁杂,其CPI值比较大,执行速度慢。
采用复杂指令可能使整个程序的执行时间增加。
(4) 由于指令功能复杂,规整性不好,不利于采用流水线提高性能。
3、 设计RISC 机器一般遵循的原则:(1) 指令条数少而简单。
(2) 采用简单而又统一的指令格式,并减少寻址方式。
(3) 指令的执行在单个机器周期内完成(采用流水线机制后)。
(4) 只有load 和store 指令才能访问存储器,其他指令的操作都是在寄存器之间进行。
(5) 大多数指令都采用硬连逻辑来实现。
(6) 强调优化编译器的作用,为高级语言程序生成优化的代码。
(7) 充分利用流水线技术来提高性能。
第三章 流水线技术1、 衡量流水线性能的主要指标有吞吐率、加速比和效率。
(1) 吞吐率:在单位时间内流水线所完成的任务数量或输出结果的数量◎各段时间均相等的流水线:实际吞吐率:最大吞吐率:◎各段时间不完全相等的流水线:实际吞吐率:最大吞吐率:(2) 效率:流水线中的设备实际使用时间与整个运行时间的比值,即流水线设备的利用率。
◎各段时间均相等的流水线: E =TP △t◎各段时间不完全相等的流水线:2、 解决流水线瓶颈问题的常用方法:细分瓶颈段、重复设置瓶颈段。
3、 习题3.12 有一条流水线如下所示:入出50ns100ns(1) 求连续输入10条指令的情况下,该流水线的实际吞吐率和效率;(2) 该流水线的“瓶颈”在哪一段?请采用两种不同的措施消除此“瓶颈”;对于所给出的两种新的流水线,连续输入10条指令时,其实际吞吐率和效率各是多少? 解:(1)实际吞吐率 045.0200940010)1(max1=⨯+=∆-+=∑=t n tnTP ki i效率 45.0)2009400(440010])1([max 11=⨯+⨯⨯=∆-+∆∆=∑∑==t n t k t n E ki i ki i(2)瓶颈在第3段和第4段 I 、细分瓶颈段入出50ns50ns50ns吞吐率 012.0)1(=∆-+=tn k nTP效率 59.01=-+=∆⋅=n k nt TP EII 、重复设置瓶颈段入出吞吐率 012.0)1(=∆-+=tn k nTP效率 59.01=-+=∆⋅=n k nt TP E注意:须画图习题3.13 有一个流水线由4段组成,其中每当流经第3段时,总要在该段循环一次,然后才能流到第4段。
如果每段经过一次所需要的时间都是Δt ,问:(1) 当流水线的输入端连续的每Δt 时间输入一个任务时,该流水线会发生什么情况?(2) 此流水线的最大吞吐率为多少?如果每2Δt 输入一个任务,连续处理10个任务时的实际吞吐率和效率是多少?(3) 当每段时间不变时,如何提高该流水线的吞吐率?仍连续处理10个任务时,其吞吐率提高多少? 解 (1)根据条件,其时空图如下:(2)最大吞吐率 tTP ∆=21max 10个任务需要在t t t ∆=⨯∆+∆23925中完成,因此 实际吞吐率tTP ∆=2310效率 54.0=∆⋅=t TP E 画图(3)若要提高吞吐率,主要解决在第3段中出现的瓶颈问题,所以可利用细分瓶颈段:入出则吞吐率可达到 tt n k n TP ∆=∆-+=1410)1('所以,吞吐率提高了39.0'=-TPTPTP 4、 相关是指两条指令间的依赖关系。
相关的三种类型:数据相关(具有传递性),名相关,控制相关。
5、 流水线冲突有三种类型:结构冲突,数据冲突,控制冲突。
解决方法:结构冲突:插入暂停周期和设置相互独立的指令存储器和数据存储器或设置相互独立的指令Cache 和数据Cache 。
数据冲突:定向技术,停顿,依靠编译器 控制冲突:6、在流水线处理机中,设置向量数据表示和相应的向量指令,称为向量处理机。
不具有向量数据表示和相应的向量指令的流水线处理机,称为标量处理机。
提高向量处理机性能的方法:设置多个功能部件,链接技术,分段开采技术,采用多处理机系统7、习题3.18 在CRAY-1机器上,按照链接方式执行下述4条向量指令(括号中给出了相应部件的执行时间),如果向量寄存器和功能部件之间的数据传送器需要1拍,试求此链接流水线的通过时间是多少拍?如果向量长度为64,则需要多少拍才能得到全部结果?V0<—存储器 (从存储器中读数:7拍) V2<—V0+V1 (向量加:3拍) V3<—V2<A3 (按A3左移:4拍) V5<—V3^V4 (向量逻辑乘:2拍) 解 向量指令的重叠并行执行的示意图:则根据条件,设向量长度为N ,则此链接流水线的通过时间为274]1)121[(]1)141[(]1)131[(]1)17[(+=-++++-++++-++++-++N N N N N (拍)若向量长度为64,则此链接流水线的通过时间为 4X64+27=283 (拍) 第4章 指令级并行 1、记分牌图 采用记分牌技术的DLX 处理器的基本结构记分牌技术的目标:在资源充足时,尽可能早地执行没有数据阻塞的指令,达到每个时钟周期执行一条指令。
例:LD F6 , 34(R2)LD F2 , 45(R3) MULTD F0 , F2 , F4 SUBD F8 , F6 , F2 DIVD F10 , F0 , F6 ADDD F6 , F8 , F2代码段和记分牌信息的起始点状态:再例:假设浮点流水线中执行的延迟如下: 加法需2个时钟周期 乘法需10个时钟周期除法需40个时钟周期代码段和记分牌信息的起始点状态如上图所示。
分别给出MULTD和DIVD准备写结果之前的记分牌状态。
解:在分析记分牌状态之前,首先需要分析指令之间存在的相关性,因为相关性会影响指令进入记分牌DLX流水线的相应段。
(1) 第二个LD指令到MULD和SUBD、MULTD到DIVD之间以及SUBD到ADDD之间存在着先写后读相关;(2) DIVD和ADDD之间存在着先读后写相关;(3) ADDD和SUBD指令关于浮点加法部件还存在着结构相关。
图4.3和图4.4分别给出了MULTD指令和DIVD指令将要写结果时记分牌的状态。
图4.3 程序段执行到MULTD将要写结果时记分牌的状态图4.4 程序段执行到DIVD将要写结果时记分牌的状态分析记分牌是如何控制指令执行的:操作在记分牌流水线中前进时,记分牌必须记录与操作有关的信息,如寄存器号等。
约定:Fj(FU) ‘S1’:将寄存器S1的名字送入Fj(FU)FU :指令使用的功能部件D :目的寄存器的名字S1和S2:源操作数寄存器的名字,Op:进行的操作Fj(FU):功能部件FU的Fj域result(D):结果寄存器状态表中对应于寄存器D的内容,为产生寄存器D中结果的功能部件名 流出(IS)(1) 进入条件not Busy(FU) and not result(’D’);//判断结构阻塞和写后写(2) 计分牌记录内容Busy(FU)←yes;OP(FU)←Op;Fi(FU)←’D’;Fj(FU)←’S1’;Fk(FU)←’S2’;Qj←result(’S1’);//处理’S1’的FUQk←result(’S2’);//处理’S2’的FURj←not Qj;//Rj是否可用?Rk←not Qk;//Rk是否可用?result(’D’)←FU;//’D’被FU用作目的寄存器读操作数(RO)(1)进入条件Rj·Rk; //解决先写后读,两个源操作数须同时就绪(2)计分牌记录内容Rj←no;//已经读走了就绪的数据RjRk←no;//已经读走了就绪的数据RkQj←0;//不再等待其它FU的计算结果Qk←0;执行(EX)(1)结束条件功能部件操作结束写结果(WR)(1)进入条件∀f((Fj(f)≠Fi(FU) or Rj(f)=no)and (Fk(f)≠Fi(FU) or Rk(f)=no)); //检查是否存在先读后写 (2)计分牌记录内容∀f(if Qj(f)=FU then Rj(f)←yes); //有等结果的指令,则数据可用 ∀f(if Qk(f)=FU then Rk(f)←yes);result(Fi(FU))←0; //没有FU 使用寄存器Fi 为目的寄存器 busy(FU)=no //释放FU 2、 Tomasolu 算法核心思想:记录和检测指令相关,操作数一旦就绪就立即执行,把发生RAW 冲突的可能性减少到最小;通过寄存器换名来消除WAR 冲突和WAW 冲突基本结构:例4.1 对于下述指令序列,给出当第一条指令完成并写入结果时,Tomasulo 算法所用的各信息表中的内容。