系统结构复习_第1页
系统结构复习_第2页
系统结构复习_第3页
系统结构复习_第4页
系统结构复习_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一章 计算机系统结构的基本概念 1986 年到 2002 年,体系结构进步主要依赖于什么技术?出现 RISC 技术、依靠指令级并行和 Cache 2002 年以后,计算机性能提高速度降低的原因是什么?2002 年以后,由于功耗,指令级并行和存储延迟进展缓慢,性能提高降到 20%。这一时期线程级并行和数据级并行成为主要的改进方向 现代计算机为什么不再采用微型机、小型机和大型机的分类方法?现在如何分类?小型计算机已经被基于微处理器的服务器取代,多处理器系统已经取代了大型机,甚至巨型机也可以由多个高性能微处理器(集群) 构成;目前一般把计算机分为 3 类: 1 桌面计算机:追求性价比为主 2 服务器:可靠性和可扩展性是关键 3 嵌入式计算机:以最低价格满足实际性能要求,实时性、最小的存储器和最小的功耗是其关键特性 不同角度所看到的计算机系统的属性是不同的,对不对?对,从不同角度所看到的计算机系统的属性是不同的,它是一个”虚拟计算机”。主要观察角度包括:应用程序员,系统程序员,硬件设计人员。对计算机系统的认识通常只需要在某一个层次上。 透明性的判断(判断题)定义:本来存在的事物或属性,从某种角度看似乎不存在例如:CPU 类型、型号、主存储器容量等对应用程序员 透明对系统程序员、硬件设计人员等 不透明例如:浮点数表示、乘法指令对高级语言程序员、应用程序员 透明对汇编语言程序员、机器语言程序员 不透明例如:数据总线宽度、微程序对汇编语言程序员、机器语言程序员 透明对硬件设计人员、计算机维修人员 不透明。 理解系统结构的概念计算机系统结构定义一:程序员所看到的计算机系统的属性, 即概念性结构和功能特性程序员:系统程序员(包括:汇编语言、机器语言、编译程序、操作系统)看到的:编写出能在机器上正确运行的程序所必须了解到的。计算机系统结构定义二:计算机系统由软件、硬件和固件组成,它们在功能上是同等的同一种功能可以用硬件实现,也可以用软件或固件实现计算机系统结构研究的是软硬件功能分配和对软硬件界面的确定。 计算机系统结构、组成和实现计算机组成是指计算机系统结构的逻辑实现(确定功能部件的并行度;设计缓冲和排队策略等) ;计算机实现是指计算机组成的物理实现(处理机、主存储器等部件的物理结构等) ; 三者关系:三者各自包含不同的内容,但又有着紧密的联系。一种系统结构可以有多种组成,同样,一种组成可以有多种物理实现。系统结构设计不应该对组成、实现技术的采用与发展有过多或不合理的限制;计算机组成与实现是可以折衷权衡的;系统结构的设计与硬件的设计不可混淆;三者的内容不同时期会有所变化。关系:外特性 内特性 物理实现: : 当前体系结构的研究已远超了指令集体系结构,对不对?对,过去体系结构通常指指令系统的设计,实际上是指令集体系结构,由于计算机应用领域的扩展,计算机体系结构的研究已经扩展到许多组成和实现的内容。 学会系统结构的 3 种分类方法1 弗林(Flynn)分类法通过指令流(Instruction stream,IS) 和数据流(Data stream ,DS) 进行分类 SISD(Single IS Single DS),SIMD(Single IS Multiple DS)MISD(Multiple IS Single DS),MIMD(Multiple IS Multiple DS)2 冯氏分类法冯氏分类法按最大并行度分类最大并行度(Pm)指单位时间内能处理的最大二进制位数,可分为:字串位串 WSBS(Word serial and bit serial);字并位串 WPBS(Word parallel and bit serial);字串位并 WSBP(Word serial and bit parallel );字并位并 WPBP(Word parallel and bit parallel)3 汉德勒(Hndler) 分类法根据并行度和流水线提出的一种分类法。t(系统型号)=(k,d,w) :程序控制部件 (PCU)的个数 k;算术逻辑部件(ALU)或处理部件(PE)的个数 d;每个算术逻辑部件包含基本罗辑线路(ELC) 的套数 w,如加法器位数。t(系统型号) (kk,dd,w w) :有流水线:k表示宏流水线中程控部件的个数;d表示指令流水线中算术逻辑部件的个数;w表示操作流水线中基本逻辑线路的套数。Cray1 有 1 个 CPU,12 个相当于 ALU 或 PE 的处理部件,最多 8 级流水线,字长为64 位,可以实现 114 位流水线。表示为:t(Cray1) (1 ,128,64(114)。 学会计算加速比Amdahl 定律Amdahl 定律认为:系统中改进某一部件对整个系统性能的提高与这种部件的使用频率或占总执行时间的比例有关。性 能没 有 采 用 改 进 措 施 前 的采 用 改 进 措 施 后 的 性 能加 速 比 nT0 eF eS)1(*SeFTon SeFTon)1(例题一:假设将某系统的某一部件的处理速度加快到 10 倍,但该部件的原处理时间仅为整个运行时间的 40%,则采用加快措施后能使整个系统的性能提高多少?解:由题意可知:Fe=0.4, Se=10,根据 Amdahl 定律 例题二:假设 FPSQR 操作占整个测试程序执行时间的 20%。一种方法是采用 FPSQR 硬件,使 FPSQR 操作的速度加快到 10 倍。另一种实现方法是使所有浮点数据指令的速度加快,使 FP 指令的速度加快到 1.6 倍,FP 指令占整个执行时间的 50%。请比较这两种设计方案。采用哪种实现技术来求浮点数平方根 FPSQR 的操作对系统的性能影响较大。解:分别计算出这两种设计方案所能得到的加速比 学会使用 cpu 性能公式CPU 的执行时间取决于三个要素:时钟频率 f(或时钟周期 t);每条指令所花的时钟周期数 CPI;指令条数 IC课件 P6.。 。 。例题 1.3 1.4 1.5 同一种指令的 CPI 是一定的吗?同一种指令的 CPI 由于流水线、Cache 等原因并不固定 访问的局部性分为哪 2 种,具体指的是什么局部性分时间上的局部性和空间上的局部性。时间上的局部性是指最近访问过的代码是不久将被访问的代码。 空间上的局部性是指那些地址上相邻近的代码可能会被一起访问。存储系统的构成就是以访问的局部性原理为基础的。 列举几种计算机系统中的并行采用并行性是改善计算机性能的重要方法系统级并行,例如多处理器和多磁盘技术,可以实现更大的吞吐量,而处理器和磁盘都可增加数目(可扩展性),对服务器来说具有重要价值。=单一处理器层面,一般采用指令级并行来提高性能,指令级并行的代表技术是流水线。= 在数字电路设计层面可以发掘并行性,比如,组相联的 Cache 可以同时使用多个存储块,先行进位链能够加速求和的过程。 计算机中的软硬件的发展趋势是怎样的?软硬件发展趋势:硬件实现的比例越来越高;硬件所占的成本越来越低; 软硬件的界面在上升. 系统结构的设计者不需要关注实现技术,对吗?56.14.06.1nS2.18.0)2.1(FPSQR3.5.6)5.0(FP不对,系统结构的设计者还应关注实现技术和计算机应用方面的重要发展趋势。因为这些发展趋势不仅影响机器未来的成本,也影响到所设计的系统结构的发展周期。 现代的计算机系统通常是由下往上、由上往下、还是由中间开始设计的?这个中间是指什么?由中间层开始设计其实就是由体系结构开始设计,是目前计算机的主要设计方法。 评价一个计算机系统结构好坏的标准主要是哪两个指标?评价一个计算机系统结构好坏的标准主要是性能和成本这两个指标。 衡量机器性能的唯一固定而且可靠的标准就是真正执行程序的时间。这个时间有哪2 种?时间分为响应时间和 CPU 时间,要根据需要选择:响应时间指完成任务的全部时间,包括磁盘、存储器、I/O 设备访问和操作系统开销等;CPU 时间指任务在 CPU 上消耗的时间,不包括 I/O 等待和执行其它优先级更高任务的时间。 学会 MIPS 的计算,举例说明为什么 MIPS 值可能和性能相反MIPS 表示每秒百万指令条数。对于一个给定的程序,MIPS 定义为:课件 P8主要优点:直观、方便。目前还经常使用主要缺点:(1) 指令集不同时不准确 ,依赖于指令集合; (2) 指令使用频度差别很大,依赖于程序; (3) 可能和性能相反,如用软硬件分别实现浮点运算 MFLOPS 不能体现机器的整体性能,对吗,举例说明MFLOPS 即每秒百万次浮点操作次数。 对。MFLOPS 仅仅只能用来衡量机器浮点操作的性能,而不能体现机器的整体性能。例如编译程序,不管机器的性能有多好,它的 MFLOPS 不会太高。 求平均性能时,什么时候用算术平均、调和平均和几何平均?(课件 P9)平均执行时间是各执行时间的算术平均值。如果性能是用速度(例如 MIPS 和 MFLOPS)表示,那么平均时间是调和平均SPECRatio 是一个比率,没有单位,算术平均没有意义,必须用几何平均计算。 使用参考机器比较机器性能时,和参考机器的性能有关吗?无关 (课件公式) 一个平均数是否能表示一个基准测试程序测量出的性能,用什么作指标?一个平均数是否能表示一个基准测试程序测量出的性能,可以标准偏差的大小作为指标。 (算术标准偏差能帮助我们评价其数据接近标准正态分布的程度,从而达到评价测试性能值的准确度的目的。数值越小,准确度越高。 ) 系列机和兼容机有相同的体系结构,对不对?的区别是什么对。 =系列机是同一个厂家生产的具有相同系统结构,不同的组成和实现技术的一系列不同型号的机器。不同的组成和实现只是性能和价格不同,他们的系统结构是相同的。=兼容机是不同厂家生产的具有相同系统结构,不同的组成和实现技术的性价比不同的机器。 几种兼容的概念向上(下) 兼容是指按某档机器编制的程序,不加修改就能运行于比它高(低)档的机器向前(后) 兼容是指按某个时期投入市场的某种型号机器编制的程序,不加修改就能运行于在它之前(后)投入市场的机器 模拟和仿真哪个速度更快,哪个需要硬件支持?模拟是用软件方法在一台现有机器上实现另一台机器的指令系统。=仿真是用微程序直接解释另一台机器的指令系统的方法。=模拟方法速度低,仿真方法速度高,但仿真需要硬件支持,系统结构差别大的机器难于完全用仿真方法来实现。=通常把 2 种方法混合起来,尽可能用仿真的方法,无法仿真的指令再用模拟方法实现。 计算机性能的发展,带宽和时延哪个进步更快?性能发展趋势:带宽优于时延。 (带宽或吞吐量:在给定时间内所完成的工作总量时延或响应时间:从事件开始到完成所需要的时间。 ) 集成电路的加工工艺是用什么来表示的?集成电路的加工工艺是用特征尺寸来表示的,特征尺寸即 CPU 表面电路的特征线宽。晶体管密度和特征尺寸大小的平方成反比。 学会集成电路动态和静态功率的计算。集成电路最主要的功耗来自开关晶体管,称为动态功率:功率动态= 1/2 电容负载电压 2开关频率晶体管停止工作时,仍然会有泄漏电流,这时芯片消耗的是静态功率。功率静态= 电流静态电压 了解晶片的成品数的计算方法。 晶片的成本增长速度大体与晶片面积增长速度的平方成正比,对吗?对。晶片的成本增长速度大体与晶片面积增长速度的平方成正比。第二章 指令系统 指令系统的概念是什么? 指令系统是计算机所有机器指令的集合,是软硬件的之间的主要分界面。 目前指令系统与软件之间的语义差距越来越大,对不对? 指令系统与软件之间存在语义差距,目前差距越来越大。 数据表示和数据结构的区别 数据表示:指计算机硬件能够直接识别,可以被指令系统直接调用的那些数据类型,是由硬件实现的数据类型。数据结构:指面向计算机系统软件、面向应用领域所需处理的数据类型,是由软件实现的数据类型。 会计算浮点数的表数范围、表数精度和表数效率 (见课件 P13 浮点数的表数范围,精度,效率) 如果不采用隐藏位,基数为 2 时,表数效率最低,对吗? 采用隐藏位,基数为几时,则 3 个参数都达到最好? 多数机器的尾数采用原码、小数表示,阶码一般机器都采用整数、移码表示,对吗? 是 了解 5 种舍入法。哪种最简单,哪种最复杂最精确,哪种一般用于软件等。P15 恒舍法、恒置法、下舍上入法 、R*舍入法 、查表法 ; P16 比较:恒舍法最简单R*舍入法最复杂最精确 ; 下舍上入法一般用于软件实现 警戒位什么时候使用?不设置警戒位,可能出现很大的误差或造成完全错误的运算结果,对吗 1)P17 警戒位在舍入和左规时使用 2)是 警戒位需要多少位?代价很大吗? P17 计算机中的操作数类型通常是由硬件解释的,对吗? 是,数据类型通过指令中的操作码来解释 带标志符的数据表示法和数据描述符表示法都属于自定义数据表示方法,对吗? 是 P18自定义数据表示方法:1)数据上有一个由硬件解释的表示数据类型的符号2)包括带标志符的数据表示方法(针对一个数据,如 R-2 计算机)和数据描述符表示法(针对一组数据,如 B-6700 计算机) 测试表明程序中访问的数据大多是字节类型,对吗 不对 寻址技术主要内容是什么? 寻找操作数及其他信息地址的技术称为寻址技术,主要包括:编址方式、寻址方式和定位方式。 计算机一般按字节编址,按字访问,对吗 P18 是 X86 处理器有几个零地址空间?都是什么? P19零地址空间个数:三个零地址空间:通用寄存器、主存储器和输入输出设备均独立编址两个零地址空间:主存储器与输入输出设备统一编址一个零地址空间:所有存储设备统一编址,最低端是通用寄存器,最高端是输入输出设备,中间为主存储器隐含编址方式(堆栈计算机),实际上没有零地址空间:堆栈 高位交叉和低位交叉编址的主要目的分别是什么?P19 高位交叉编址:主要目的是用来扩大存储器容量。低位交叉编址:主要目的是提高存储器速度。 立即寻址的使用频率很低,对吗? 各种存储器寻址方式的使用频率 存储器寻址方式数据对齐的原因是什么? 存储器寻址方式通常是数据对齐的,不对齐会导致硬件的复杂性,即使是支持不对齐的机器,对齐的指令也会运行的更快 间接寻址方式与变址寻址方式差别及优缺点 对于程序员,两种寻址方式的主要差别是:间址寻址方式:间接地址在主存中,无偏移量变址寻址方式:基地址在变址寄存器中,有偏移量主要优缺点比较:采用变址寻址方式编写的程序简单、易读。实现的难易程度:间址寻址方式容易指令的执行速度:间址寻址方式慢对数组运算的支持:变址寻址方式比较好自动变址:在访问间接地址过程中,地址自动增减 寄存器寻址和堆栈寻址的优缺点 P20寄存器寻址方式主要优点:指令字长短、指令执行速度快、支持向量和矩阵运算并能提高其速度主要缺点:现场切换困难、硬件复杂,如果寄存器不对称,不利于优化编译堆栈的寻址方式主要优点:指令字长短、指令执行速度快、支持向量和矩阵运算并能提高其速度主要缺点:现场切换困难、硬件复杂,如果寄存器不对称,不利于优化编译 理解程序的 3 种定位方式 P20三种定位方式:直接定位:在程序装入主存储器之前,程序中的指令和数据的主存物理就已经确定了的称为直接定位方式。静态定位:在程序装入主存储器的过程中随即进行地址变换,确定指令和数据的主存物理地址的称为静态定位方式。动态定位:在程序执行过程中,当访问到相应的指令或数据时才进行地址变换,确定指令和数据的主存物理地址的称为动态定位方式。 固定操作码长度计算 P 21就是所有指令使用相同的代码位数,其最小码长等于:式中 是平均码长, 是第 i 种指令的码长,n 是指令总数。优点:规整,译码简单缺点:浪费信息量(操作码的总长位数增加)例:已知 n = 15,求定长编码的最小平均码长。解:如:IBM 公司的大中型机:最左边 8 位为操作码Intel 公司的安腾(Intanium)处理机:14 位定长操作码许多 RISC 处理机采用定长操作码 最优 huffman 编码法如何计算机?能实际应用吗? 不能,操作码必须是正整数。 操作码最短平均长度: 学会计算信息冗余量 P22固定长操作码相对于 Huffman 操作码的信息冗余量为 学会使用最小概率合并法 p21 举例说明什么是扩展编码法 p22 4-8-12 的形式表示扩展编码,能代表一种具体编码方法吗 不能 P22 扩展编码法分别用保留 1 个码点和保留 1 位的方法进行扩展,支持指令种类一样多吗 (期待答案) 学会分析不同地址码个数指令的应用情况(见例子) P23P24 地址码个数不同的几种指令都适用什么情况? 不同地址个数指令的特点及适用场合地址数目程序的长度程序存储量程序执行速度 适用场合三地址 最短 最大 一般 向量,矩阵运算为主二地址 较短 很大 很低 一般不宜采用一地址 较长 较大 较快 连续运算,硬件结构简单零地址 最长 最小 最低 嵌套,递归,变量较多二地址寄存器型一般 最小 最快 多累加器,数据传送较多 指令系统的完整性、规整性(对称性、均匀性) 的含义 P24完整性:是指应该具备的基本指令种类,通用计算机必须有类基本指令规整性包括对称性和均匀性对称性:所有通用寄存器同等对待,操作码的设置等都要对称,如:A-B 与 B-AiniipH12lognRii2l均匀性:不同的数据类型(如定点数、逻辑数、浮点点数、十进制数、字符串)、字长(如 8 位、16 位、32 为、64 位)、存储设备(如寄存器、主存储器、堆栈)、操作种类(加减乘除等)要设置相同的指令 计算机的类基本指令是什么 指令的种类:1 数据传送类指令 2 运算类指令 3 程序控制指令 4 输入输出指令 5 处理机控制和调试指令 转移指令有哪 3 类? 转移指令一般可分为 3 类:无条件转移,条件转移指令(包括循环控制指令),调用与返回指令一般条件转移、复合条件转移、隐含条件转移指令含义 P25 一般条件转移:转移条件:零(Z)、正负(N)、进位(C)、溢出(V)及其组合复合条件转移:代替 2 条指令,首先进行运算,并根据运算的结果决定是否转移,不需要条件码,与高级语言一致。 保存现场有哪 2 种方式?保存现场的指令通常如何得到 保存现场分为调用者保存和被调用者保存 2 种方式,有时必须采用调用者保存方式(如涉及公用变量的情况),大多数实际使用的编译器都会结合这 2 种方式。这类指令涉及到现场的保存问题,至少要保存返回地址,现在的体系结构一般都由编译器生成指令来保存和恢复现场。 处理器可以不设置输入输出指令吗?为什么? P26可以输入输出操作主要有:启动、停止、测试、控制设备,数据输入、输出操作等,一般采用单一的直接寻址方式在多用户或多任务环境下,输入输出指令属于特权指令也可以不设置输入输出指令,输入输出设备与主存储器共用同一个零地址空间 可以不设处理机控制和调试指令吗?为什么? P26不可以处理机状态切换指令一般处理机有两状态:管态和用户态虚拟存储器管理指令硬件和软件的调试指令硬件调试指令,如:JTEG 支持指令寄存器及主存单元的显示等软件调试指令:断点的设置及跟踪指令等这类指令虽然使用频率不高,但对操作系统的实现很关键,不可或缺 指令系统的优化设计的两个方向是什么? P26早期计算机主要使用前 2 种,目前还在使用的则是后 2 种,分别代表指令系统的优化设计有两个截然相反的方向:1. 复杂指令系统计算机 CISC(Complex Instruction Set Computer)增强指令功能,设置功能复杂的指令面向高级语言和操作系统用一条指令代替一串指令2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论