2022年2022年计算机组成与体系结构 4.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年2022年计算机组成与体系结构 4.pdf》由会员分享,可在线阅读,更多相关《2022年2022年计算机组成与体系结构 4.pdf(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 第 1 章计算机组成与体系结构根据考试大纲,本章内容要求考生掌握3 个知识点。(1)构成计算机的各类部件的功能及其相互关系;(2)各种体系结构的特点与应用(SMP、 MPP) ;(3)计算机体系结构的发展。1.1 计算机体系结构的发展冯诺依曼等人于1946 年提出了一个完整的现代计算机雏形,它由运算器、控制器、存储器和输入 /输出设备组成。 现代的计算机系统结构与冯诺依曼等人当时提出的计算机系统结构相比,已发生了重大变化,虽然就其结构原理来说,占有主流地位的仍是以存储程序原理为基础的冯诺依曼型计算机,但是,计算机系统结构有了许多改进,主要包括以下几个方面。(1)计算机系统结构从基于串行算法
2、改变为适应并行算法,从而出现了向量计算机、并行计算机、多处理机等。(2)高级语言与机器语言的语义距离缩小,从而出现了面向高级语言机器和执行高级语言机器。(3)硬件子系统与操作系统和数据库管理系统软件相适应,从而出现了面向对象操作系统机器和数据库计算机等。(4)计算机系统结构从传统的指令驱动型改变为数据驱动型和需求驱动型,从而出现了数据流计算机和归约机。(5)为了适应特定应用环境而出现了各种专用计算机。(6)为了获得高可靠性而研制容错计算机。(7)计算机系统功能分散化、专业化,从而出现了各种功能分布计算机,这类计算机包括外围处理机、通信处理机等。(8)出现了与大规模、超大规模集成电路相适应的计算
3、机系统结构。(9)出现了处理非数值化信息的智能计算机。例如自然语言、 声音、图形和图像处理等。1.2 构成计算机的各类部件的功能及其相互关系计算机由控制器、运算器、存储器、输入设备和输出设备组成。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 11 页 - - - - - - - - - 2 1966 年, Michael.J.Flynn 提出根据指令流、数据流的多倍性特征对计算机系统进行分类(通常称为Flynn 分类法),有关定义如下:指令流:指机器执行的指令序列。数据
4、流: 指由指令流调用的数据序列,包括输入数据和中间结果,但不包括输出数据。多倍性:指在系统性能瓶颈部件上同时处于同一执行阶段的指令或数据的最大可能个数。Flynn 根据不同的指令流-数据流组织方式,把计算机系统分成4 类。(1)单指令流单数据流(SISD) :SISD 其实就是传统的顺序执行的单处理器计算机,其指令部件每次只对一条指令进行译码,并只对一个操作部件分配数据。流水线方式的单处理机有时也被当作SISD。值得注意的是,Intel 公司的 P中开始采用MMX 技术,引进了一些新的通用指令,从某种意义上使用了单指令流多数据流的思想,但是,与Intel 公司的前几代产品( X86/Penti
5、um )相比,其指令序列的执行方式和调用数据的方式没有发生根本性的变化,所以从整体上来看,采用P芯片的 PC 仍属于 SISD。(2)单指令流多数据流(SIMD ) :SIMD以并行处理机(阵列处理机)为代表,并行处理机包括多个重复的处理单元PU1-PUn,由单一指令部件控制,按照同一指令流的要求为它们分配各自所需的不同数据。相联处理机也属于这一类。(3)多指令流单数据流(MISD ) :MISD 具有 n 个处理单元,按n 条不同指令的要求对同一数据流及其中间结果进行不同的处理。一个处理单元的输出又作为另一个处理单元的输入,这类系统实际上很少见到。有文献把流水线看做多个指令部件,称流水线计算
6、机是 MISD 。(4)多指令流多数据流(MIMD ) :MIMD是指能实现作业、任务、指令等各级全面并行的多机系统。多处理机属于MIMD 。当前的高性能服务器与超级计算机大多具有多个处理机,能进行多任务处理,称为多处理机系统。不论是大规模并行处理机MPP( Massively Parallel Processor)还是对称多处理机SMP( Symmetrical Multi Processor) ,都属于这一类。Flynn 分类法是最普遍使用的。其他的分类法还有:(1)冯氏分类法:由冯泽云在1972 年提出,冯氏分类法以计算机系统在单位时间内所能处理的最大二进制位数来对计算机系统进行分类。(
7、2)Handler 分类法:由WolfganHandler 在 1977 年提出, Handler 分类法根据计算机指令执行的并行度和流水线来对计算机系统进行分类。(3)Kuck 分类法:由DavidJKuck 在 1978 年提出, Kuck 分类法与Flynn 分类法相似,也是用指令流、执行流和多倍性来描述计算机系统特征,但其强调执行流的概念,而不是数据流。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 11 页 - - - - - - - - - 3 1.3 各种体
8、系结构的特点与应用1.3.1 复杂指令系统计算机复杂指令系统计算机(CISC)的主要特点如下。 指令数量众多:指令系统拥有大量的指令,通常有100250 条。 指令使用频率相差悬殊:指令使用频率相差悬殊,最常使用的是一些比较简单的指令,仅占指令总数的20%,但在程序中出现的频率却占80%,而大部分复杂指令却很少使用。 支持很多种寻址方式:支持的寻址方式通常为5 20 种。 变长的指令:指令长度不是固定的,变长的指令增加指令译码电路的复杂性。 指令可以对存储器单元中的数据直接进行处理:典型的 CISC 处理器通常都有指令能够直接对内存单元中的数据进行处理,其执行速度较慢。1.3.2 精简指令系统
9、计算机精简指令系统计算机(RISC)不是简单地把指令系统进行简化,而是通过简化指令的途径使计算机的结构更加简单合理,以减少指令的执行周期数,从而提高运算速度。RISC 的主要特点:(1)指令数量少:优先选取使用频率最高的一些简单指令以及一些常用指令,避免使用复杂指令。大多数指令都是对寄存器操作,对存储器的操作仅提供了读和写两种方式。(2)指令的寻址方式少:通常只支持寄存器寻址方式、立即数寻址方式以及相对寻址方式。(3)指令长度固定、格式种类少:因为RISC 指令数量少,格式相对简单,其指令长度固定,指令之间各字段的划分比较一致,译码相对容易。(4)只提供了 Load/Store 指令访问存储器
10、:只提供了从存储器读数Load 和把数据写入存储器 Store 两条指令,其余所有的操作都在CPU 的寄存器间进行。(5)以硬布线逻辑控制为主:为了提高操作的执行速度,通常采用硬布线逻辑(组合逻辑)来构建控制器。而CISC 的指令系统很复杂,难以用组合逻辑电路实现控制器,通常采用微程序控制。(6)单周期指令执行:因为简化了指令系统,很容易利用流水线技术使得大部分指令都能在一个机器周期内完成。少数指令可能会需要多个周期执行,例如Load/Store 指令因为需要访问存储器,其执行时间就会长一些。(7)优化的编译器:RISC 的精简指令集使编译工作简单化。因为指令长度固定、格式少、寻址方式少,编译
11、时不必在具有相似功能的许多指令中进行选择,也不必为寻址方式名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 11 页 - - - - - - - - - 4 的选择而费心,同时易于实现优化,从而可以生成能够高效执行的机器代码。采用 RISC 技术的 CPU 硬件一般具有如下特点:寄存器数量多;采用流水线组织;控制器的实现采用硬布线控制逻辑电路。大多数RISC 采用了Cache(缓存)方案,使用Cache 来提高取指的速度。而且有的RISC 甚至使用两个独立的Cache来改善
12、性能: 一个称为指令Cache, 另一个称为数据Cache。这样,取指和读数可以同时进行,互不干扰。典型的RISC 处理器有DEC 公司的 Alpha21164 、IBM 公司的PowerPC620、HP 公司的 PA-8000、SGI 公司 MIPS 分部的 TS 和 Sun 公司的 Ultra SPARC 等。从理论上来看,CISC 和 RISC 都有各自的优势,不能认为精简指令计算机就好,复杂指令计算机就不好,事实上, 这两种设计方法很难找到完全的界线,而且在实际的芯片中,这两种设计方法也有相互渗透的地方,表1-1 所示是两者的简单对比。表 1-1 CISC 和 RISC 的简单对比项目
13、CISC RISC 指令条数多只选取最常见的指令指令复杂度高低指令长度变化短、固定指令执行周期随指令变化大大多在一个机器同期完成指令格式复杂简单寻址方式多极少涉及访问主存指令多极少,大部分只有两条指令通用寄存器数量一般大量译码方式微程序控制硬件电路对编译系统要求低高1.3.3 流水线技术流水线技术是把一个任务分解为若干个顺序执行的子任务,不同的子任务由不同的执行机构负责执行,而这些机构可以同时工作。在任一时刻,任一任务只占用其中一个执行机构,这样就可以实现多个任务的重叠执行,以提高工作效率。流水线的关键之处在于重叠执行。为了得到高性能的表现,流水线应该满负荷工作,即各个阶段都要同时并行地工作。
14、但是在实际情况中,流水线各个阶段可能会相互影响,阻塞流水线,使其性能下降。阻塞主要由以下两种情形引起:执行转移指令和共享资源冲突。(1)转移指令的影响通常在顺序执行指令的情况下,当 CPU 取一条指令时, 流水线的地址计算部件可以独立地把当前PC 值加上当前指令长度来计算下一条指令的地址,从而可以并行地工作,但名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 11 页 - - - - - - - - - 5 是当流水线执行一条转移指令时,就会引起流水线的阻塞。因为在该转移指
15、令完成之前,流水线不能确定出下一条指令的地址。所以为了保证指令的正确执行,必须把取指段和指令地址计算段互锁。在取出转移指令后,立即锁住指令地址计算段,直到转移指令执行完成。互锁阶段流水线处于等待状态,不能满负荷工作,因而性能下降。(2)共享资源访问冲突当多条指令以流水线方式重叠执行时,由于可能会引起对共享的寄存器存储器资源访问次序的变化,因此将导致冲突,这种情况又称为数据相关。为了避免这种冲突,就需要把相互有关的指令进行阻塞,这样就会引起流水线效率的下降。一般来说,指令流水线级数越多,越容易导致数据相关,阻塞流水线。1 指令流水线计算机中,一条指令的执行需要若干步,通常采用流水线技术来实现指令
16、的执行,以提高 CPU 性能。典型的指令执行共分7 个阶段: 计算指令地址,修改程序计数器PC;取指, 即从存储器中取出指令;指令译码;计算操作数地址;取操作数;执行指令;保存结果。对指令执行阶段的划分也可以把取指作为第一阶段,其他阶段顺序前移,而在最后一个阶段计算下一条指令的地址。若假定指令执行的各个阶段的执行时间相同,都是一个周期。执行一条指令就需要花费7 个周期的时间。采用流水线技术以后,当满负荷时,每个周期都能从流水线上完成一条指令,相当于性能大约改善了7 倍。实际上,流水线技术对性能的提高程度取决于其执行顺序中最慢的一步。例如,在指令执行的7 个阶段中,如果访问存储器需要4 个周期,
17、而其他操作只需一个周期,一条指令的执行共需访存3 次再加上 4 个周期的执行段,所以共需要16 个周期。采用流水线以后,由于受限于访存操作,4个周期才能完成一条指令的执行,因此性能提高了大约4 倍。2 运算操作流水线计算机在执行各种运算操作时,也可以应用流水线技术来提高运算速度。例如执行浮点加法运算,可以把它分成3 个阶段:对阶、尾数相加和结果规格化。流水线的3 个阶段用锁存器进行分割,锁存器用来在相邻两段之间保持处理的中间结果,以供下一阶段使用。这样在满负荷时,该流水线可以同时处理3 条浮点加法指令。1.3.4 并行处理1 超级标量处理机在超级标量处理机中,配置了多个功能部件和指令译码电路,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年计算机组成与体系结构 2022 计算机 组成 体系结构
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内