计算机组成与体系结构.DOC

上传人:国*** 文档编号:1150513 上传时间:2018-12-14 格式:DOC 页数:11 大小:117KB
下载 相关 举报
计算机组成与体系结构.DOC_第1页
第1页 / 共11页
计算机组成与体系结构.DOC_第2页
第2页 / 共11页
计算机组成与体系结构.DOC_第3页
第3页 / 共11页
计算机组成与体系结构.DOC_第4页
第4页 / 共11页
计算机组成与体系结构.DOC_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、第 1 章 计算机组成与体系结构根据考试大纲,本章内容要求考生掌握 3 个知识点。(1)构成计算机的各类部件的功能及其相互关系;(2)各种体系结构的特点与应用(SMP、MPP) ;(3)计算机体系结构的发展。1.1 计算机体系结构的发展冯诺依曼等人于 1946 年提出了一个完整的现代计算机雏形,它由运算器、控制器、存储器和输入/输出设备组成。现代的计算机系统结构与冯诺依曼等人当时提出的计算机系统结构相比,已发生了重大变化,虽然就其结构原理来说,占有主流地位的仍是以存储程序原理为基础的冯诺依曼型计算机,但是,计算机系统结构有了许多改进,主要包括以下几个方面。(1)计算机系统结构从基于串行算法改变

2、为适应并行算法,从而出现了向量计算机、并行计算机、多处理机等。(2)高级语言与机器语言的语义距离缩小,从而出现了面向高级语言机器和执行高级语言机器。(3)硬件子系统与操作系统和数据库管理系统软件相适应,从而出现了面向对象操作系统机器和数据库计算机等。(4)计算机系统结构从传统的指令驱动型改变为数据驱动型和需求驱动型,从而出现了数据流计算机和归约机。(5)为了适应特定应用环境而出现了各种专用计算机。(6)为了获得高可靠性而研制容错计算机。(7)计算机系统功能分散化、专业化,从而出现了各种功能分布计算机,这类计算机包括外围处理机、通信处理机等。(8)出现了与大规模、超大规模集成电路相适应的计算机系

3、统结构。( 9) 出 现 了 处 理 非 数 值 化 信 息 的 智 能 计 算 机 。 例 如 自 然 语 言 、 声 音 、 图 形 和 图 像 处理 等 。21.2 构成计算机的各类部件的功能及其相互关系计算机由控制器、运算器、存储器、输入设备和输出设备组成。1966 年,Michael.J.Flynn 提出根据指令流、数据流的多倍性特征对计算机系统进行分类(通常称为 Flynn 分类法) ,有关定义如下: 指令流:指机器执行的指令序列。 数 据 流 : 指 由 指 令 流 调 用 的 数 据 序 列 , 包 括 输 入 数 据 和 中 间 结 果 , 但 不 包 括 输 出 数 据 。

4、 多倍性:指在系统性能瓶颈部件上同时处于同一执行阶段的指令或数据的最大可能个数。Flynn 根据不同的指令流- 数据流组织方式,把计算机系统分成 4 类。(1)单指令流单数据流(SISD):SISD 其实就是传统的顺序执行的单处理器计算机,其指令部件每次只对一条指令进行译码,并只对一个操作部件分配数据。流水线方式的单处理机有时也被当作 SISD。值得注意的是,Intel 公司的 P中开始采用 MMX 技术,引进了一些新的通用指令,从某种意义上使用了单指令流多数据流的思想,但是,与 Intel公司的前几代产品(X86/Pentium)相比,其指令序列的执行方式和调用数据的方式没有发生根本性的变化

5、,所以从整体上来看,采用 P芯片的 PC 仍属于 SISD。(2)单指令流多数据流(SIMD):SIMD 以并行处理机(阵列处理机)为代表,并行处理机包括多个重复的处理单元 PU1-PUn,由单一指令部件控制,按照同一指令流的要求为它们分配各自所需的不同数据。相联处理机也属于这一类。(3)多指令流单数据流(MISD):MISD 具有 n 个处理单元,按 n 条不同指令的要求对同一数据流及其中间结果进行不同的处理。一个处理单元的输出又作为另一个处理单元的输入,这类系统实际上很少见到。有文献把流水线看做多个指令部件,称流水线计算机是 MISD。(4)多指令流多数据流(MIMD):MIMD 是指能实

6、现作业、任务、指令等各级全面并行的多机系统。多处理机属于 MIMD。当前的高性能服务器与超级计算机大多具有多个处理机,能进行多任务处理,称为多处理机系统。不论是大规模并行处理机MPP(Massively Parallel Processor)还是对称多处理机 SMP(Symmetrical Multi Processor) ,都属于这 一类。Flynn 分类法是最普遍使用的。其他的分类法还有:(1)冯氏分类法:由冯泽云在 1972 年提出,冯氏分类法以计算机系统在单位时间内所能处理的最大二进制位数来对计算机系统进行分类。Error! No text of specified style in

7、document. 3(2)Handler 分类法:由 WolfganHandler 在 1977 年提出, Handler 分类法根据计算机指令执行的并行度和流水线来对计算机系统进行分类。(3)Kuck 分类法:由 DavidJKuck 在 1978 年提出,Kuck 分类法与 Flynn 分类法相似,也是用指令流、执行流和多倍性来描述计算机系统特征,但其强调执行流的概念,而不是数据流。1.3 各种体系结构的特点与应用1.3.1 复杂指令系统计算机复杂指令系统计算机(CISC)的主要特点如下。 指令数量众多:指令系统拥有大量的指令,通常有 100250 条。 指令使用频率相差悬殊:指令使用频

8、率相差悬殊,最常使用的是一些比较简单的指令,仅占指令总数的 20%,但在程序中出现的频率却占 80%,而大部分复杂指令却很少使用。 支持很多种寻址方式:支持的寻址方式通常为 520 种。 变长的指令:指令长度不是固定的,变长的指令增加指令译码电路的复杂性。 指令可以对存储器单元中的数据直接进行处理:典型的 CISC 处理器通常都有指令能够直接对内存单元中的数据进行处理,其执行速度较慢。1.3.2 精简指令系统计算机精简指令系统计算机(RISC)不是简单地把指令系统进行简化,而是通过简化指令的途径使计算机的结构更加简单合理,以减少指令的执行周期数,从而提高运算速度。RISC 的主要特点:(1)指

9、令数量少:优先选取使用频率最高的一些简单指令以及一些常用指令,避免使用复杂指令。大多数指令都是对寄存器操作,对存储器的操作仅提供了读和写两种方式。(2)指令的寻址方式少:通常只支持寄存器寻址方式、立即数寻址方式以及相对寻址方式。(3)指令长度固定、格式种类少:因为 RISC 指令数量少,格式相对简单,其指令长度固定,指令之间各字段的划分比较一致,译码相对容易。(4)只提供了 Load/Store 指令访问存储器:只提供了从存储器读数 Load 和把数据写入存储器 Store 两条指令,其余所有的操作都在 CPU 的寄存器间进行。(5)以硬布线逻辑控制为主:为了提高操作的执行速度,通常采用硬布线

10、逻辑(组4合逻辑)来构建控制器。而 CISC 的指令系统很复杂,难以用组合逻辑电路实现控制器,通常采用微程序控制。(6)单周期指令执行:因为简化了指令系统,很容易利用流水线技术使得大部分指令都能在一个机器周期内完成。少数指令可能会需要多个周期执行,例如 Load/Store 指令因为需要访问存储器,其执行时间就会长一些。(7)优化的编译器:RISC 的精简指令集使编译工作简单化。因为指令长度固定、格式少、寻址方式少,编译时不必在具有相似功能的许多指令中进行选择,也不必为寻址方式的选择而费心,同时易于实现优化,从而可以生成能够高效执行的机器代码。采用 RISC 技术的 CPU 硬件一般具有如下特

11、点:寄存器数量多;采用流水线组织;控制器的实现采用硬布线控制逻辑电路。大多数 RISC 采用了 Cache(缓存)方案,使用 Cache 来提高取指的速度。而且有的RISC 甚至使用两个独立的 Cache 来改善性能:一个称为指令 Cache,另一个称为数据Cache。这样,取指和读数可以同时进行,互不干扰。典型的 RISC 处理器有 DEC 公司的 Alpha21164、IBM 公司的 PowerPC620、HP 公司的 PA-8000、SGI 公司 MIPS 分部的 TS 和 Sun 公司的 Ultra SPARC 等。从理论上来看,CISC 和 RISC 都有各自的优势,不能认为精简指令

12、计算机就好,复杂指令计算机就不好,事实上,这两种设计方法很难找到完全的界线,而且在实际的芯片中,这两种设计方法也有相互渗透的地方,表 1-1 所示是两者的简单对比。表 1-1 CISC 和 RISC 的简单对比项目 CISC RISC指令条数 多 只选取最常见的指令指令复杂度 高 低指令长度 变化 短、固定指令执行周期 随指令变化大 大多在一个机器同期完成指令格式 复杂 简单寻址方式 多 极少涉及访问主存指令 多 极少,大部分只有两条指令通用寄存器数量 一般 大量译码方式 微程序控制 硬件电路对编译系统要求 低 高1.3.3 流水线技术流水线技术是把一个任务分解为若干个顺序执行的子任务,不同的

13、子任务由不同的执行机构负责执行,而这些机构可以同时工作。在任一时刻,任一任务只占用其中一个执行机构,这样就可以实现多个任务的重叠执行,以提高工作效率。Error! No text of specified style in document. 5流水线的关键之处在于重叠执行。为了得到高性能的表现,流水线应该满负荷工 作,即各个阶段都要同时并行地工作。但是在实际情况中,流水线各个阶段可能会相互影响,阻塞流水线,使其性能下降。阻塞主要由以下两种情形引起:执行转移指令和共享资源冲突。(1)转移指令的影响通常在顺序执行指令的情况下,当 CPU 取一条指令时,流水线的地址计算部件可以独立地把当前 PC

14、值加上当前指令长度来计算下一条指令的地址,从而可以并行地工作,但是当流水线执行一条转移指令时,就会引起流水线的阻塞。因为在该转移指令完成之前,流水线不能确定出下一条指令的地址。所以为了保证指令的正确执行,必须把取指段和指令地址计算段互锁。在取出转移指令后,立即锁住指令地址计算段,直到转移指令执行完成。互锁阶段流水线处于等待状态,不能满负荷工作,因而性能下降。(2)共享资源访问冲突当多条指令以流水线方式重叠执行时,由于可能会引起对共享的寄存器存储器资源访问次序的变化,因此将导致冲突,这种情况又称为数据相关。为了避免这种冲突,就需要把相互有关的指令进行阻塞,这样就会引起流水线效率的下降。一般来说,

15、指令流水线级数越多,越容易导致数据相关,阻塞流水线。1指令流水线计算机中,一条指令的执行需要若干步,通常采用流水线技术来实现指令的执行,以提高 CPU 性能。典型的指令执行共分 7 个阶段:计算指令地址,修改程序计数器 PC;取指,即从存储器中取出指令;指令译码;计算操作数地址;取操作数;执行指令;保存结果。对指令执行阶段的划分也可以把取指作为第一阶段,其他阶段顺序前移,而在最后一个阶段计算下一条指令的地址。若假定指令执行的各个阶段的执行时间相同,都是一个周期。执行一条指令就需要花费 7 个周期的时间。采用流水线技术以后,当满负荷时,每个周期都能从流水线上完成一条指令,相当于性能大约改善了 7

16、 倍。实际上,流水线技术对性能的提高程度取决于其执行顺序中最慢的一步。例如,在指令执行的 7 个阶段中,如果访问存储器需要 4 个周期,而其他操作只需一个周期,一条指令的执行共需访存 3 次再加上 4 个周期的执行段,所以共需要 16 个周期。采用流水线以后,由于受限于访存操作,4 个周期才能完成一条指令的执行,因此性能提高了大约 4 倍。2运算操作流水线计算机在执行各种运算操作时,也可以应用流水线技术来提高运算速度。例如执行浮点加法运算,可以把它分成 3 个阶段:对阶、尾数相加和结果规格化。流水线的 3 个阶段用锁存器进行分割,锁存器用来在相邻两段之间保持处理的中间结果,以供下一阶段使用。这

17、样在满负荷时,该流水线可以同时处理 3 条浮点加法指令。61.3.4 并行处理1超级标量处理机在超级标量处理机中,配置了多个功能部件和指令译码电路,采取了多条流水线,还有多个寄存器端口和总线,因此可以同时执行多个操作,以并行处理来提高机器的速度。它可以同时从存储器中取出几条指令同时送入不同的功能部件。超级标量机的硬件是不能重新安排指令的前后次序的,但可以在编译程序时采取优化的办法对指令的执行次序进行精心安排,把能并行执行的指令搭配起来。2超级流水线处理机超级流水线处理机的周期比其他结构的处理机的短。与超级标量计算机一样,硬件不能调整指令的执行次序,而由编译程序解决优先问题。3超长指令字处理机V

18、LIW 是一种单指令流多操作码多数据的系统结构,编译程序在编译时把这个能并行执行的操作组合在一起,成为一条有多个操作段的超长指令,这条超长指令控制 VLIW 中多个互相独立的功能部件,每个操作段控制一个功能部件,相当于同时执行多条指令。4向量处理机向量处理机是一种具有向量数据表示、设置有相应的指令和硬件、能对向量的各个元素进行并行处理的计算机。当进行向量运算时,它的性能要比大型机好得多。向量处理机有巨型计算机和向量协处理机(或称为数组处理机)两种类型,巨型计算机能对大量的数据进行浮点运算,同时它还可以进行标量计算和一般数据处理。向量处理机一般采用流水线工作,当它处理一条数组指令时,会对数组中的

19、每个元素执行相同的操作,而且各元素间是互相无关的,因此流水线不会阻塞,能以每个时钟周期送出一个结果的速度运行。为了存储系统能及时提供数据,向量处理器配有一个大容量的、分成多个模块交错工作的主存储器。为了提高运算速度,向量处理机的运算部件中可采用多个功能部件,例如向量部件、浮点部件、整数运算部件和计算地址用的地址部件。向量协处理机就是专门处理浮点和向量运算的数组处理机,它一般连接到主机总线上。5多处理机系统多处理机具有两个或两个以上的处理机,共享输入/输出子系统,在操作系统的统一控制下,通过共享主存或高速通信网络进行通信,协同求解一个个复杂的问题。多处理机通过利用多台处理机进行多任务处理来提高速

20、度,利用系统的重组能力来提高可靠性、适应性和可用性。多处理机具有共享存储器和分布存储器两种不同的结构。具有共享存储器的多处理机中,程序员无数据划分的负担,容易编程;系统处理机数目较少,不易扩充。具有分布式存储器的多处理机结构灵活;容易扩充;难以在各个处理单元之间实现复杂数据结构的数据传送;任务动态分配复杂;现有软件可继承性差,需要设计新的并行算法。多处理机系统属于 MIMD 系统,与 SIMD 的并行处理机相比,有很大的差别。其根源就Error! No text of specified style in document. 7在于两者的并行性的层次不同,多处理机要实现的是更高一层的作业任务间

21、的并行。6大规模并行处理机并行处理机有时也称为阵列处理机,它使用按地址访问的随机存储器,以单指令流多数据流方式工作,主要用于要求大量高速进行向量矩阵运算的应用领域。并行处理机的并行性来源于资源重复,它把大量相同的处理单元(PE)通过互联网络(ICN)连接起来,在统一的控制器(CU)控制下,对各自分配来的数据并行地完成同一条指令所规定的操作。PE 是不带指令控制部件的算术逻辑运算单元。并行处理机具有强大的向量运算能力,具有向量化功能的高级语言编译程序有助于提高并行处理机的通用性,减少编译时间。并行处理机有两种基本结构类型:采用分布存储器的并行处理结构和采用集中式共享存储器的并行处理结构。分布式存

22、储器的并行处理结构中,每一个处理机都有自己的存储器,只要控制部件将并行处理的程序分配至各处理机,它们便能并行处理,各自从自己的存储器中取得信息。而共享存储多处理机结构中的存储器是集中共享的,由于多个处理机共享,在各处理机访问共享存储器时会发生竞争。因此,需采取措施尽可能避免竞争的 发生。大规模并行处理机(MPP)是随着微处理器技术的飞跃和应用需求的不断攀升,在20 世纪 80 年代中期发展起来的一种新机型。它是由众多的微处理器(从几百到上万)组成的大规模的并行系统。MPP 的出现成为计算机领域中的一个研发热点,被用作开发万亿次甚至更高速的巨型机的主要结构。MPP 可以采用市场上的出售的 RIS

23、C 处理器,所以有很高的性价比。7对称处理机对称多处理机(SMP)目前也基于 RISC 微处理器。它与 MPP 最大的差别在于存储系统:SMP 有一个统一的共享主存空间,而 MPP 则是每个微处理器都拥有自己的本地存 储器。1.3.5 互联网络互联网络(ICN)是用来连接一个计算机系统中各个处理单元(或处理机) 、存储模块以及各种外部设备,在系统软件控制下,使各处理单元或各个功能部件相互通信的硬件网络结构。常见的互联网结构有总线结构、交叉开关和多级互联网。并行处理机互连有多种方法,分别举例如下:(1)恒等置换:相同编号的输入端与输出端一一对应互连。其表达式如下: 110110()nknkIxx

24、x (2)交换置换:实现二进制地址编号中第 0 位位值不同的输入端和输出端之间的连接。其表达式如下:8 011011()nknkExxx (3)方体置换:实现二进制地址编号中第 k 位位值不同的输入端和输出端之间的连接。其表达式如下: _110110()kknknCxxx (4)均匀洗牌置换(shuffle):将输入端二进制地址循环左移一位得到对应的输出端二进制地址。其表达式如下: 12102310()nnnS (5)蝶式置换:将输入端二进制地址的最高位和最低位互换位置得到对应的输出端二进制地址。其表达式如下: 121021()nnnBxxx (6)位序颠倒置换:将输入端二进制地址的位序颠倒过

25、来得到对应的输出端二进制地址。其表达式如下: 1210121()nnP 1.4 例题分析例题 1(2001 年试题 3132)按照 Flynn 的分类,P的 MMX 指令采用的是(31)模型,而当前的高性能服务器与超级计算机则大多属于(32)类。(31) 、 (32)ASISD BSIMD CMISD DMIMD例题 1 分析按照 Flynn 的分类,计算机可分为 SISD、SIMD 、MISD 和 MIMD 共 4 类。P中开始采用 MMX 技术,引进了一些新的通用指令,虽然使用了单指令多数据思想,但从整体上说 P仍属于 SISD 类。当前的高性能服务器与超级计算机大多具有多个处理器,多任务

26、处理并行处理,基本上都属于 MIMD。例题 1 答案(31)A (32)D例题 2(2002 年试题 50)微指令大体上可分为两类:水平型微指令和垂直型微指令。在下列几项中,不符合水平型微指令特点的是 (50) 。(50)A执行速度快 B并行度较低C更多地体现了控制器的硬件细节 D微指令长度较长Error! No text of specified style in document. 9例题 2 分析水 平 型 微 指 令 的 主 要 特 征 : 微 指 令 的 长 度 比 较 长 , 微 指 令 中 的 微 操 作 具 有 高 度 的 并 行性 , 微 指 令 编 码 简 单 , 减 少

27、了 译 码 时 间 , 使 其 执 行 速 度 快 , 更 多 地 体 现 了 控 制 器 的 硬 件 细节 。垂直型微指令的主要特征:长度短,功能弱,并行度低,编程容易但微程序长,效 率低。例题 2 答案(50)B例题 3(2002 年试题 4247)在下列体系结构中,最适合于多个任务并行执行的体系结构是 (42) 。流水线控制方式下, (43) 是全局性相关,流水线机器对全局性相关的处理不包括(44) 。静态流水线是指 (45) 。假设并行(阵列)处理器的 16 个处理器编号为 015,采用单级 Cube3 网络互联时,与 13 号处理器相连的处理器的编号为 (46) 。在下列几项中,不符

28、合 RISC 特点的是 (47) 。(42)A流水线向量机结构 B分布存储多处理机结构C共享存储多处理机结构 D堆栈处理机结构(43)A转移指令引起的相关 B先写后读相关C.先读后写相关 D写-写相关(44)A猜测法 B提前形成条件码C设置相关专用通道 D加快短循环程序的执行(45)A只有一种功能的流水线B功能不能改变的流水线C可同时执行多种功能的流水线D在同一时间段内,只能完成一种功能的流水线(46)A1 B5C7 D14(47)A指令长度固定,指令种类少B寻址方式种类丰富,指令功能尽量增强C设置大量通用寄存器,访问存储器指令简单D选取使用频率较高的一些简单指令例题 3 分析流水线向量处理机

29、是用于指令并行执行的而不是任务并行,并不属于多处理机。堆栈处理机用于特别的计算或用作外设的数据读写。这两种结构均不适于多个任务的并行执行。并行处理机可分两种类型,分别为采用分布存储器的并行处理结构和采用集中式共享存储10器的并行处理结构。其中分布式存储器的多处理机并行处理结构中,每一个处理器都有自己的存储器,只要控制部件将并行处理的程序分配各处理机,它们便能并行处理,各自从自己的存储器中取得信息。而共享存储多处理机结构中的存储器是集中共享的,由于多个处理机共享,在各处理机访问共享存储器时会发生竞争。因此,最适合于多个任务并行执行的体系结构是分布存储多处理机结构。在流水线机器中,指令相关、主存操

30、作数相关、通用寄存器组的操作数相关及变址寄存器变址值相关为局部性相关。在具体对局部性相关进行处理时,先写后读相关、先读后写相关和写-写相关都是控制机构能处理的局部性相关的内容。而转移指令引起的相关则会对流水线机器的吞吐能力和效率造成的影响较局部性相关要严重得多,被称为全局性相关。对全局性相关处理时,采用的方法有猜测法、加快和提前形成条件码、加快短循环程序的执行、转移指令迟延执行等。而设置相关专用通道是对局部性相关进行处理时所采取的多种措施之一。静态流水线的定义是指在某一时间内各段只能按一种功能连接流水线,只有等流水线全部流空后才能切换成按另一种功能连接流水线。并行处理机互联有多种方法,在构成单

31、级互联网络时可采用 n 个结点的立方体网络结构。在此立方体上的每一个顶点代表一个处理机。在编号为 015 的 16 个处理机构成的立方体上,每一个处理机均可用 4 位二进制编码来表示。利用 n 个结点的一般互联函数为:_110110()iininCubePP 因为 13= (1101)2,所以,它只能与编码为 (0101)2 =5 的处理机相连接。例题 3 答案(42)B (43)A (44)C (45)D (46)B (47)B例题 4(2003 年试题 4445)编号为 0、1、2、3、15 的 16 个处理器,采用单级互联网络联接。当互联函数为Cube3 时, 11 号处理器连接到 (44) 号处理器上。若采用 Shuffle 互联函数,则 11 号处理器应连接到 (45) 号处理器上。(44)A2 B3 C7 D9(45)A2 B5 C7 D11例题 4 分析并行处理机互联有多种方法,在构成单级互联网络时可采用 n 个节点的立方体网络结构。在此立方体上的每一个顶点(即节点)代表一个处理器。在编号为 015 的 16 个处理器构成的立方体上,每一个处理器均可用 4 位二进制编码来表示。利用 n 个结点的一般互联函数为:

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 重点行业资料库 > 1

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。