版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 1/77/77 计算机系统结构计算机系统结构张晨曦张晨曦 主编主编2 2/77/77l 计算机系统结构的英文是计算机系统结构的英文是Computer Architecture。Architecture本来是用在建筑方面的一个词,其含义是本来是用在建筑方面的一个词,其含义是“建筑学、建筑术、建筑建筑学、建筑术、建筑样式、构造、结构样式、构造、结构”等。在计算机领域中,这个词一般被翻译成系等。在计算机领域中,这个词一般被翻译成系统结构或体系结构。统结构或体系结构。 v 课程简介课程简介3 3/77/77l 本课程主要用于培养抽象思维能力和自顶向下、系统地分析和解本课程主要用于培养抽象思维能力和
2、自顶向下、系统地分析和解决问题的能力。其目标是从决问题的能力。其目标是从总体结构总体结构、系统分析系统分析这一层次来研究和这一层次来研究和分析计算机系统的能力;掌握计算机系统结构的基本概念、基本原分析计算机系统的能力;掌握计算机系统结构的基本概念、基本原理、基本结构、基本设计和分析方法,并对计算机系统结构的发展理、基本结构、基本设计和分析方法,并对计算机系统结构的发展历史和现状有所了解。通过学习本课程,能把在历史和现状有所了解。通过学习本课程,能把在“计算机组成原计算机组成原理理”、“操作系统操作系统”、“数据结构数据结构”、“汇编语言程序设计汇编语言程序设计”等课等课程中所学的软、硬件知识有
3、机地结合起来,从而建立起计算机系统程中所学的软、硬件知识有机地结合起来,从而建立起计算机系统的完整概念。的完整概念。v 课程简介课程简介4 4/77/77l 重点讲述现代大多数计算机都采用的比较成熟的结构、方法和技重点讲述现代大多数计算机都采用的比较成熟的结构、方法和技术等,重点介绍和分析经典的结构和设计思想;本课程强调采用量术等,重点介绍和分析经典的结构和设计思想;本课程强调采用量化的方法来学习和研究计算机系统结构,这种方法使我们能更具体、化的方法来学习和研究计算机系统结构,这种方法使我们能更具体、实际地分析和设计计算机系统结构;强调以并行性开发为主线,讲实际地分析和设计计算机系统结构;强调
4、以并行性开发为主线,讲述从系统结构和组成的不同层次来开发并行性的概念、结构、方法述从系统结构和组成的不同层次来开发并行性的概念、结构、方法和技术。和技术。l 主要内容包括:计算机系统结构的基本概念,计算机指令集结构主要内容包括:计算机系统结构的基本概念,计算机指令集结构设计,流水线技术和向量处理机,指令级并行,存储器层次结构,设计,流水线技术和向量处理机,指令级并行,存储器层次结构,输入输出系统,多处理机系统。输入输出系统,多处理机系统。 v 课程简介课程简介5 5/77/771.1 引言1.2 计算机系统结构的概念1.3 定量分析技术1.4 计算机系统结构的发展1.5 计算机系统结构中并行性
5、的发展第1章 计算机系统结构的基本概念6 6/77/771. 第一台通用电子计算机诞生于1946年 2. 计算机技术的飞速发展得益于两个方面 计算机制造技术的发展 计算机系统结构的创新3. 经历了4个发展过程 1.1 引 言7 7/77/77时 间原 因每年的性能增长19461946年起的年起的2525年年 两种因素都起着主要的作用两种因素都起着主要的作用 25% 25% 2020世纪世纪7070年代末年代末8080年代初年代初 大规模集成电路和微处理器大规模集成电路和微处理器出现出现, ,以集成电路为代表的制以集成电路为代表的制造技术的发展造技术的发展 约约35% 35% 2020世纪世纪8
6、080年代中开年代中开始始 RISCRISC结构的出现,系统结构不断更结构的出现,系统结构不断更新和变革,制造技术不断发展新和变革,制造技术不断发展50%50%以上以上维持了约维持了约1616年年 20022002年以来年以来 3 3个(见下页)个(见下页)约约20%20%1.1 引言8 8/77/771.1 引言 功耗问题(已经很大)。 可以进一步有效开发的指令级并行性已经很少。 存储器访问速度的提高缓慢。 9 9/77/771.1 引言系统结构的重大转折: 从单纯依靠指令级并行转向开发线程级并行和数从单纯依靠指令级并行转向开发线程级并行和数据级并行。据级并行。 计算机系统结构在计算机的发展
7、中有着极其重要计算机系统结构在计算机的发展中有着极其重要的作用。的作用。1010/77/771. 计算机系统硬件/固件软件2. 计算机语言从低级向高级发展 高一级语言的语句相对于低一级语言来说功能更强,高一级语言的语句相对于低一级语言来说功能更强,更便于应用,但又都以低级语言为基础。更便于应用,但又都以低级语言为基础。 3. 从计算机语言的角度,把计算机系统按功能划分成 多级层次结构。 每一层以一种语言为特征 1.2 计算机系统结构的概念1.2.1 计算机系统的层次结构 第第 6 级级:应应用用语语言言虚虚拟拟机机 第第 5 级级:高高级级语语言言虚虚拟拟机机 第第 4 级级:汇汇编编语语言言
8、虚虚拟拟机机 第第 3 3 级级:操操作作系系统统虚虚拟拟机机 第第 2 2 级级:机机器器语语言言( (传传统统机机器器级级) ) 第第 1 1 级级:微微程程序序机机器器级级 软件软件硬件或固件硬件或固件1212/77/771.2 计算机系统结构的概念 虚拟机:由软件实现的机器 语言实现的两种基本技术q翻译:翻译:先把先把N N+1+1级程序全部转换成级程序全部转换成N N级程序后,再去执级程序后,再去执行新产生的行新产生的N N级程序,在执行过程中级程序,在执行过程中N N+1+1级程序不再被级程序不再被访问。访问。 q解释:解释:每当一条每当一条N N+1+1级指令被译码后,就直接去执
9、行级指令被译码后,就直接去执行一串等效的一串等效的N N级指令,然后再去取下一条级指令,然后再去取下一条N N+1+1级的指令,级的指令,依此重复进行。依此重复进行。 解释执行比编译后再执行所花的时间多,但占用的存储空间较少。 1313/77/771.2 计算机系统结构的概念1. 计算机系统结构的经典定义程序员所看到的计算机属性,即概念性结构与功能特性。2. 按照计算机系统的多级层次结构,不同级程序员所看到的计算机具有不同的属性。3. 透明性在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。1.2.2 计算机系统结构的定义1414/77/771.2 计算机
10、系统结构的概念1. Amdahl提出的系统结构 传统机器语言级程序员所看到的计算机属性。1. 广义的系统结构定义:指令集结构、组成、硬件 (计算机设计的(计算机设计的3 3个方面)个方面)2. 对于通用寄存器型机器来说,这些属性主要是指:指令系统 包括机器指令的操作类型和格式、指令间的包括机器指令的操作类型和格式、指令间的排序和控制机构等。排序和控制机构等。数据表示 硬件能直接识别和处理的数据类型。硬件能直接识别和处理的数据类型。寻址规则 包括最小寻址单元、寻址方式及其表示。包括最小寻址单元、寻址方式及其表示。 1515/77/771.2 计算机系统结构的概念寄存器定义 (包括各种寄存器的定义
11、、数量和使用方式)(包括各种寄存器的定义、数量和使用方式) 中断系统(中断的类型和中断响应硬件的功能等)(中断的类型和中断响应硬件的功能等) 机器工作状态的定义和切换(如管态和目态等)(如管态和目态等) 存储系统 (主存容量、程序员可用的最大存储容量等)(主存容量、程序员可用的最大存储容量等) 信息保护(包括信息保护方式和硬件对信息保护的支持)(包括信息保护方式和硬件对信息保护的支持) 1616/77/771.2 计算机系统结构的概念I/O结构包括包括I/OI/O连结方式、处理机连结方式、处理机/ /存储器与存储器与I/OI/O设备之间设备之间数据传送的方式和格式以及数据传送的方式和格式以及I
12、/OI/O操作的状态等操作的状态等计算机系统结构概念的实质: 确定计算机系统中软、硬件的界面,界面之上是软件实现的功能,界面之下是硬件和固件实现的功能。1.2.3 计算机组成和计算机实现1. 计算机系统结构:计算机系统的软、硬件的界面即机器语言程序员所看到的传统机器级所具有的属性。 1717/77/771.2 计算机系统结构的概念1. 计算机组成:计算机系统结构的逻辑实现包含物理机器级中的数据流和控制流的组成以及 逻辑设计等。着眼于:物理机器级内各事件的排序方式与控制 方式、各部件的功能以及各部件之间的联系。2. 计算机实现:计算机组成的物理实现包括处理机、主存等部件的物理结构,器件的集 成度
13、和速度,模块、插件、底板的划分与连接, 信号传输,电源、冷却及整机装配技术等。着眼于:器件技术(起主导作用)、微组装技术。1818/77/771.2 计算机系统结构的概念 一种体系结构可以有多种组成。 一种组成可以有多种物理实现。1. 系列机 由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。 例如,例如,IBMIBM公司的公司的IBM 370IBM 370系列,系列,IntelIntel公司的公司的x86x86系列等。系列等。1.2.4 计算机系统结构的分类常见的计算机系统结构分类法有两种: Flynn分类法、冯氏分类法1919/77/771.2 计算机系统结构
14、的概念1. 冯氏分类法用系统的最大并行度对计算机进行分类。最大并行度:计算机系统在单位时间内能够处理 的最大的二进制位数。 用平面直角坐标系中的一个点代表一个计算机系用平面直角坐标系中的一个点代表一个计算机系统,其横坐标表示字宽(统,其横坐标表示字宽(n n位位),纵坐标表示一次能同),纵坐标表示一次能同时处理的字数(时处理的字数(m m字字)。)。m mn n就表示了其最大并行度。就表示了其最大并行度。 2. Flynn分类法 按照指令流和数据流的多倍性进行分类。指令流:计算机执行的指令序列。2020/77/771.2 计算机系统结构的概念数据流:由指令流调用的数据序列。多倍性:在系统受限的
15、部件上,同时处于同一执 行阶段的指令或数据的最大数目。Flynn分类法把计算机系统的结构分为4类:q 单指令流单数据流单指令流单数据流(SISD)(SISD)q 单指令流多数据流单指令流多数据流(SIMD)(SIMD)q 多指令流单数据流多指令流单数据流(MISD)(MISD)q 多指令流多数据流多指令流多数据流(MIMD)(MIMD)4类计算机的基本结构ISIS:指令流,:指令流,DSDS:数据流,:数据流,CSCS:控制流,:控制流,CUCU:控制部件,:控制部件,PUPU:处理部件,:处理部件,MMMM和和SMSM:存储器。:存储器。 CU PU MM IS CS PU1 PU2 PUn
16、 PU1 PU2 PUn CU1 CU2 CUn CS1 CS2 CSn PU1 PU2 PUn CU1 CU2 CUn CS1 CS2 CSn MM1 MM2 MMm DS IS1 IS2 ISn SM DS (c)MISD 计计算算机机 DS1 DS2 DSn MM1 MM2 MMm SM IS1 IS2 ISn (d)MIMD 计计算算机机 (a)SISD 计计算算机机 MM1 MM2 MMm SM CU DS1 DS2 DSn IS (b)SIMD 计计算算机机 CS DS 2222/77/774个定量原理:1. 以经常性事件为重点对经常发生的情况采用优化方法的原则进行选 择,以得到更
17、多的总体上的改进。优化是指分配更多的资源、达到更高的性能或 者分配更多的电能等。 1.3 定量分析技术1.3.1 计算机系统设计的定量原理2323/77/771.3 定量分析技术1. Amdahl定律 加快某部件执行速度所能获得的系统性能加速比,受限于该部件的执行时间占系统中总执行时间的百分比。系统性能加速比:加速比系统性能改进后系统性能改进前总执行时间改进前总执行时间改进后 2424/77/771.3 定量分析技术加速比依赖于两个因素q可改进比例:可改进比例:在改进前的系统中,可改进部分的执在改进前的系统中,可改进部分的执 行时间在总的执行时间中所占的比例。行时间在总的执行时间中所占的比例。
18、 它总是小于等于它总是小于等于1 1。例如:例如:一个需运行一个需运行6060秒的程序中有秒的程序中有2020秒的运算可以加速,秒的运算可以加速, 那么这个比例就是那么这个比例就是20/6020/60。q部件加速比:部件加速比:可改进部分改进以后性能提高的倍数。可改进部分改进以后性能提高的倍数。 它是改进前所需的执行时间与改进后执行时间的比。它是改进前所需的执行时间与改进后执行时间的比。 一般情况下部件加速比是大于一般情况下部件加速比是大于1 1的。的。例如:例如:若系统改进后,可改进部分的执行时间是若系统改进后,可改进部分的执行时间是2 2秒,秒, 而改进前其执行时间为而改进前其执行时间为5
19、 5秒,则部件加速比为秒,则部件加速比为5/25/2。2525/77/771.3 定量分析技术改进后程序的总执行时间总执行时间改进后 不可改进部分的执行时间 可改进部分改进后的执行时间总执行时间改进后 (1可改进比例)总执行时间改进前 + (1 可改进比例) + 总执行时间改进前 可改进比例部件加速比可改进比例总执行时间改进前部件加速比2626/77/771.3 定量分析技术系统加速比为改进前与改进后总执行时间之比加速比 总执行时间改进前总执行时间改进后 (1可改进比例)+可改进比例部件加速比12727/77/771.3 定量分析技术 例例1.1 1.1 将计算机系统中某一功能的处理速度提高到
20、原来的将计算机系统中某一功能的处理速度提高到原来的2020倍,但该功能的处理时间仅占整个系统运行时间的倍,但该功能的处理时间仅占整个系统运行时间的40%40%,则采,则采用此提高性能的方法后,能使整个系统的性能提高多少?用此提高性能的方法后,能使整个系统的性能提高多少? 解解 由题可知,可改进比例由题可知,可改进比例 = 40% = 0.4= 40% = 0.4, 部件加速比部件加速比 = 20= 20 根据根据AmdahlAmdahl定律可知:定律可知: 采用此提高性能的方法后,能使整个系统的性能提高到原采用此提高性能的方法后,能使整个系统的性能提高到原来的来的1.6131.613倍倍。 总
21、加速比 = 10.6 +0.420= 1.6132828/77/771.3 定量分析技术 例例1.2 1.2 某计算机系统采用浮点运算部件后,使浮点运算速某计算机系统采用浮点运算部件后,使浮点运算速度提高到原来的度提高到原来的2020倍,而系统运行某一程序的整体性能提高到倍,而系统运行某一程序的整体性能提高到原来的原来的5 5倍,试计算该程序中浮点操作所占的比例。倍,试计算该程序中浮点操作所占的比例。 解解 由题可知,部件加速比由题可知,部件加速比 = 20= 20,系统加速比,系统加速比 = 5= 5 根据根据AmdahlAmdahl定律可知定律可知 由此可得:可改进比例由此可得:可改进比例
22、 = 84.2% = 84.2% 即程序中浮点操作所占的比例为即程序中浮点操作所占的比例为84.2%84.2%。20115可改进比例可改进比例 2929/77/771.3 定量分析技术Amdahl定律:一种性能改进的递减规则q如果仅仅对计算任务中的一部分做性能改进,则改如果仅仅对计算任务中的一部分做性能改进,则改 进得越多,所得到的总体性能的提升就越有限。进得越多,所得到的总体性能的提升就越有限。重要推论:如果只针对整个任务的一部分进行改 进和优化,那么所获得的加速比不超过 1/(1可改进比例) 3030/77/771.3 定量分析技术1. CPU性能公式执行一个程序所需的CPU时间CPU时间
23、 = 执行程序所需的时钟周期数时钟周期时间其中,时钟周期时间是系统时钟频率的倒数。每条指令执行的平均时钟周期数CPI (Cycles Per InstructionCycles Per Instruction) CPI = 执行程序所需的时钟周期数IC ICIC:所执行的指令条数所执行的指令条数程序执行的CPU时间可以写成 CPU时间 = IC CPI 时钟周期时间 3131/77/771.3 定量分析技术CPU的性能取决于3个参数q时钟周期时间:时钟周期时间:取决于硬件实现技术和计算机组成。取决于硬件实现技术和计算机组成。qCPICPI:取决于计算机组成和指令集结构。取决于计算机组成和指令集
24、结构。qICIC:取决于指令集结构和编译技术。取决于指令集结构和编译技术。结论:只要改进任何一个参数,都能提高CPU的性能。不过这些参数都是相互关联的。3232/77/771.3 定量分析技术1. 程序的局部性原理 程序执行时所访问的存储器地址分布不是随机的,而是相对地簇聚。常用的一个经验规则程序执行时间的程序执行时间的90%90%都是在执行程序中都是在执行程序中10%10%的代码。的代码。程序的时间局部性程序即将用到的信息很可能就是目前正在使用的信息。程序即将用到的信息很可能就是目前正在使用的信息。程序的空间局部性 程序即将用到的信息很可能与目前正在使用的信息程序即将用到的信息很可能与目前正
25、在使用的信息在空间上相邻或者临近。在空间上相邻或者临近。3333/77/771.3 定量分析技术 结论:利用程序的局部性原理,可以根据程序最近的访问情况来比较准确地预测将要访问的指令和数据。它是存储层次的基础。3434/77/771.3 定量分析技术1. 执行时间和吞吐率 如何评测一台计算机的性能,与测试者看问题的角度有关。用户关心的是:单个程序的执行时间(执行单个 程序所花的时间很少)数据处理中心的管理员关心的是:吞吐率(在单 位时间里能够完成的任务很多 )1.3.2 计算机系统的性能评测3535/77/771.3 定量分析技术假设两台计算机为X和Y,X比Y快的意思是: 对于给定任务,X的执
26、行时间比Y的执行时间少。X的性能是Y的n倍,即而执行时间与性能成反比,即 执行时间Y执行时间X=nn= = =执行时间Y执行时间X性能Y1性能X1性能X性能Y3636/77/771.3 定量分析技术执行时间可以有多种定义:q计算机完成某一任务所花费的全部时间,包括计算机完成某一任务所花费的全部时间,包括磁盘访磁盘访问、存储器访问、输入问、存储器访问、输入/输出、操作系统开销等。输出、操作系统开销等。qCPU时间:时间:CPUCPU执行所给定的程序所花费的时间,不执行所给定的程序所花费的时间,不包含包含I/OI/O等待时间以及运行其他程序的时间。等待时间以及运行其他程序的时间。n用户用户CPUC
27、PU时间:时间:用户程序所耗费的用户程序所耗费的CPUCPU时间。时间。n系统系统CPUCPU时间:时间:用户程序运行期间操作系统耗费的用户程序运行期间操作系统耗费的 CPUCPU时间。时间。3737/77/771.3 定量分析技术1.基准测试程序 用于测试和比较性能的基准测试程序的最佳选择是真实应用程序。 (例如编译器)(例如编译器) 以前常采用简化了的程序,例如: q核心测试程序:核心测试程序:从真实程序中选出的关键代码段构从真实程序中选出的关键代码段构 成的小程序。成的小程序。q小测试程序:小测试程序:简单的只有几十行的小程序。简单的只有几十行的小程序。q合成的测试程序:合成的测试程序:
28、人工合成出来的程序。人工合成出来的程序。从测试性能的角度来看,上述测试程序就不可信了。 3838/77/771.3 定量分析技术原因:p这些程序比较小,具有片面性;这些程序比较小,具有片面性;p系统结构设计者和编译器的设计者可以系统结构设计者和编译器的设计者可以“合谋合谋”把他把他们的计算机面向这些测试程序进行优化设计,使得们的计算机面向这些测试程序进行优化设计,使得 该计算机显得性能更高。该计算机显得性能更高。性能测试的结果除了和采用什么测试程序有关以 外,还和在什么条件下进行测试有关。基准测试程序设计者对制造商的要求q采用同一种编译器;采用同一种编译器;q对同一种语言的程序都采用相同的一组
29、编译标志。对同一种语言的程序都采用相同的一组编译标志。 1. 性能比较A机 B机 C机 W(1) W(2) W(3) 程序程序1 1 1.00 1.00 10.00 10.00 20.00 20.00 0.50 0.50 0.909 0.909 0.999 0.999 程序程序2 2 1000.00 1000.00 10.00 10.00 20.0020.000.50 0.50 0.091 0.091 0.001 0.001 加权算术加权算术平均值平均值A Am m(1 1) 500.50 500.50 10.00 10.00 20.0020.00加权算术加权算术平均值平均值A Am m(2
30、2) 91.91 91.91 10.00 10.00 20.0020.00加权算术加权算术平均值平均值A Am m(3 3) 2.00 2.00 10.00 10.00 20.0020.00两个程序在A、B、C三台计算机上的执行时间4040/77/771.3 定量分析技术如何比较这3台计算机的性能呢?从该表可以得出:执行程序执行程序1:1:qA A机机的速度是的速度是B B机机的的1010倍倍qA A机机的速度是的速度是C C机机的的2020倍倍qB B机机的速度是的速度是C C机机的的2 2倍倍执行程序执行程序2:2:qB B机机的速度是的速度是A A机机的的100100倍倍qC C机机的速
31、度是的速度是A A机机的的5050倍倍qB B机机的速度是的速度是C C机机的的2 2倍倍4141/77/771.3 定量分析技术总执行时间:计算机执行所有测试程序的总时间qB B机机执行程序执行程序1 1和程序和程序2 2的速度是的速度是A A机机的的50.0550.05倍倍qC C机机执行程序执行程序1 1和程序和程序2 2的速度是的速度是A A机机的的24.0224.02倍倍qB B机机执行程序执行程序1 1和程序和程序2 2的速度是的速度是C C机机的的2 2倍倍平均执行时间:各测试程序执行时间的算术平均值其中其中,T Ti i:第:第i i个测试程序的执行时间个测试程序的执行时间 n
32、 n:测试程序组中程序的个数:测试程序组中程序的个数 niimTnS114242/77/771.3 定量分析技术加权执行时间:各测试程序执行时间的加权平均值其中,其中,W Wi i:第:第i i个测试程序在测试程序组中所占的比重个测试程序在测试程序组中所占的比重 T Ti i:该程序的执行时间:该程序的执行时间niiimTWA111niiW4343/77/771.4 计算机系统结构的发展1.4.1 冯诺依曼结构 运算器 (ALU) 控制器 存储器 数数据据流流 控控制制流流 输输入入 指指令令流流 输入 设备 输输出出 输出 设备 存储程序计算机的结构存储程序计算机的结构 4444/77/77
33、1.4 计算机系统结构的发展1. 存储程序原理的基本点:指令驱动程序预先存放在计算机存储器中,计算机一旦启动,就能按照程序指定的逻辑顺序执行这些程序,自动完成由程序所描述的处理工作。2. 冯诺依曼结构的主要特点以运算器为中心。在存储器中,指令和数据同等对待。 指令和数据一样可以进行运算,即由指令组成的程指令和数据一样可以进行运算,即由指令组成的程序是可以修改的。序是可以修改的。存储器是按地址访问、按顺序线性编址的一维结 构,每个单元的位数是固定的。4545/77/771.4 计算机系统结构的发展指令的执行是顺序的。q一般是按照指令在存储器中存放的顺序执行。一般是按照指令在存储器中存放的顺序执行
34、。q程序的分支由转移指令实现。程序的分支由转移指令实现。q由指令计数器由指令计数器PCPC指明当前正在执行的指令在存储器指明当前正在执行的指令在存储器 中的地址。中的地址。指令由操作码和地址码组成。指令和数据均以二进制编码表示,采用二进制运算。4646/77/771.4 计算机系统结构的发展1. 对系统结构进行的改进输入/输出方式的改进采用并行处理技术 q如何挖掘传统机器中的并行性?如何挖掘传统机器中的并行性?q在不同的级别采用并行技术。在不同的级别采用并行技术。 例如,微操作级、指令级、线程级、进程级、任务级等。例如,微操作级、指令级、线程级、进程级、任务级等。 程序控制程序控制 输入输出方
35、式输入输出方式 DMA I/O 处理机处理机 程序等待程序等待 程序中断程序中断 成组传递成组传递 周期挪用周期挪用 通道通道 外围处理机外围处理机 4747/77/771.4 计算机系统结构的发展存储器组织结构的发展q相联存储器与相联处理机相联存储器与相联处理机q通用寄存器组通用寄存器组q高速缓冲存储器高速缓冲存储器CacheCache指令集的发展 两个发展方向:q复杂指令集计算机(复杂指令集计算机(CISCCISC)q精减指令集计算机(精减指令集计算机(RISCRISC)4848/77/771.4 计算机系统结构的发展软件的可移植性:一个软件可以不经修改或者只 需少量修改就可以由一台计算机
36、移植到另一台计算机上正确地运行。差别只是执行时间的不同。 我们称这两台计算机是软件兼容的。实现可移植性的常用方法 采用系列机,模拟与仿真,统一高级语言采用系列机,模拟与仿真,统一高级语言 。1.4.2 软件对系统结构的影响 4949/77/771. 系列机 由同一厂家生产的具有相同的系统结构,但具有不同组成和实现的一系列不同型号的机器。q较好地解决软件开发要求系统结构相对稳定与器较好地解决软件开发要求系统结构相对稳定与器 件、硬件技术迅速发展的矛盾。件、硬件技术迅速发展的矛盾。软件兼容 时间时间 机器档次机器档次 高高 低低 向上兼容向上兼容 向下兼容向下兼容 向前兼容向前兼容 向后兼容向后兼
37、容 当前机器当前机器 1.4 计算机系统结构的发展5050/77/771.4 计算机系统结构的发展q向上(下)兼容:向上(下)兼容:按某档机器编制的程序,不加修改按某档机器编制的程序,不加修改 就能运行于比它高(低)档的机器。就能运行于比它高(低)档的机器。q向前(后)兼容:向前(后)兼容:按某个时期投入市场的某种型号机按某个时期投入市场的某种型号机 器编制的程序,不加修改地就能运行于在它之前器编制的程序,不加修改地就能运行于在它之前 (后)投入市场的机器。(后)投入市场的机器。 向后兼容是系列机的根本特征。兼容机:由不同公司厂家生产的具有相同系统结 构的计算机 。5151/77/771.4
38、计算机系统结构的发展1. 模拟和仿真使软件能在具有不同系统结构的机器之间相互移植。q在一种系统结构上实现另一种系统结构。在一种系统结构上实现另一种系统结构。q从指令集的角度来看,就是要在一种机器上实现从指令集的角度来看,就是要在一种机器上实现 另一种机器的指令集。另一种机器的指令集。模拟:用软件的方法在一台现有的机器(称为宿主机)上实现另一台机器(称为虚拟机)的指令集。q通常用解释的方法来实现。通常用解释的方法来实现。q运行速度较慢,性能较差。运行速度较慢,性能较差。5252/77/771.4 计算机系统结构的发展仿真:用一台现有机器(宿主机)上的微程序 去解释实现另一台机器(目标机)的指令集
39、。q运行速度比模拟方法的快运行速度比模拟方法的快q仿真只能在系统结构差距不大的机器之间使用仿真只能在系统结构差距不大的机器之间使用1. 统一高级语言 实现软件移植的一种理想的方法较难实现5353/77/771.4 计算机系统结构的发展1. 摩尔定律 集成电路芯片上所集成的晶体管数目每隔18个月就翻一番。2. 计算机的分代主要以器件作为划分标准。它们在器件、系统结构和软件技术等方面都有各 自的特征。1.4.3 器件发展对系统结构的影响 分代 器件特征 结构特征 软件特征 典型实例 第一代第一代(1945195419451954年)年) 电子管和继电器电子管和继电器 存储程序计算机存储程序计算机程
40、序控制程序控制I/O I/O 机器语言机器语言汇编语言汇编语言 普林斯顿普林斯顿ISAISA,ENIACENIAC,IBM 701 IBM 701 第二代第二代(1955196419551964年)年) 晶体管、磁芯晶体管、磁芯印刷电路印刷电路 浮点数据表示浮点数据表示寻址技术寻址技术中断、中断、I/OI/O处理机处理机 高级语言和编译高级语言和编译批处理监控系统批处理监控系统 Univac LAPCUnivac LAPC,CDC 1604CDC 1604,IBM 7030 IBM 7030 第三代第三代(1965197419651974年)年) SSISSI和和MSIMSI多层印刷电路多层印
41、刷电路微程序微程序 流水线、流水线、CacheCache先行处理先行处理系列机系列机 多道程序多道程序分时操作系统分时操作系统 IBM 360/370IBM 360/370,CDC 6600/7600CDC 6600/7600,DEC PDP-8 DEC PDP-8 第四代第四代(1975199019751990年)年) LSILSI和和VLSIVLSI半导体存储器半导体存储器 向量处理向量处理分布式存储器分布式存储器 并行与分布处理并行与分布处理 Cray-1Cray-1,IBM IBM 30903090,DEC VAX DEC VAX 90009000,Convax-1Convax-1第五
42、代第五代(19911991年年) 高性能微处理器高性能微处理器高密度电路高密度电路超标量、超流水超标量、超流水SMPSMP、MPMP、MPPMPP机群机群 大规模、可扩展大规模、可扩展并行与分布处理并行与分布处理 SGI Cray T3ESGI Cray T3E,IBM SP2IBM SP2,DECDECAlphaServerAlphaServer 8400 8400 5555/77/771.4 计算机系统结构的发展1. 不同的应用对计算机系统结构的设计提出了不同的要求2. 应用需求是促使计算机系统结构发展的最根本的动力3. 一些特殊领域:需要高性能的系统结构 高结构化的数值计算气象模型、流体
43、动力学、有限元分析气象模型、流体动力学、有限元分析非结构化的数值计算蒙特卡洛模拟、稀疏矩阵蒙特卡洛模拟、稀疏矩阵实时多因素问题语音识别、图像处理、计算机视觉语音识别、图像处理、计算机视觉1.4.4 应用对系统结构的影响 5656/77/771.4 计算机系统结构的发展大存储容量和输入输出密集的问题数据库系统、事务处理系统数据库系统、事务处理系统图形学和设计问题计算机辅助设计计算机辅助设计人工智能面向知识的系统、推理系统等面向知识的系统、推理系统等5757/77/771.4 计算机系统结构的发展1. 系统结构的生命周期:从诞生、发展、成熟到消亡从硬件成熟到系统软件成熟大约需要57年的时间从系统软
44、件成熟到应用软件成熟,大约也需要57年时间。再过57年的时间,这种系统结构就不会作为主流系统结构存在了。2. Intel的x86系列微处理器中32位系统结构的发展1.4.5 系统结构的生命周期 5858/77/771.4 计算机系统结构的发展 硬硬件件 系系统统软软件件 应应用用软软件件 57年年 57年年 一一般般发发展展 80386:1985 Windows32:1992 Windows 98 普普及及: 1998 32位位x86(IA-32) Iantium:2003 IA-64系系统统软软件件:? IA-64应应用用:? IA-64 消消亡亡 57年年 64位位x86出出现现:2003
45、 5959/77/771. 并行性:计算机系统在同一时刻或者同一时间间隔内 进行多种运算或操作。只要在时间上相互重叠,就存在并行性。只要在时间上相互重叠,就存在并行性。同时性:两个或两个以上的事件在同一时刻发生。并发性:两个或两个以上的事件在同一时间间隔 内发生。 1.5 计算机系统结构中并行性的发展1.5.1 并行性的概念 6060/77/771.5 计算机系统结构中并行性的发展1. 从处理数据的角度来看,并行性等级从低到高可分为:字串位串:每次只对一个字的一位进行处理。 最基本的串行处理方式,不存在并行性。最基本的串行处理方式,不存在并行性。字串位并:同时对一个字的全部位进行处理,不 同字
46、之间是串行的。 开始出现并行性。开始出现并行性。字并位串:同时对许多字的同一位(称为位片) 进行处理。 具有较高的并行性。具有较高的并行性。全并行:同时对许多字的全部位或部分位进行处理。 最高一级的并行。最高一级的并行。6161/77/771.5 计算机系统结构中并行性的发展1. 从执行程序的角度来看,并行性等级从低到高可分为:指令内部并行:单条指令中各微操作之间的并行。指令级并行:并行执行两条或两条以上的指令。线程级并行:并行执行两个或两个以上的线程。 通常是以一个进程内派生的多个线程为调度单位。通常是以一个进程内派生的多个线程为调度单位。任务级或过程级并行:并行执行两个或两个以上 的过程或
47、任务(程序段) 以子程序或进程为调度单元。以子程序或进程为调度单元。作业或程序级并行:并行执行两个或两个以上的 作业或程序。 6262/77/771.5 计算机系统结构中并行性的发展三种途径:1. 时间重叠 引入时间因素,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。2. 资源重复 引入空间因素,以数量取胜。通过重复设置硬件资源,大幅度地提高计算机系统的性能。1.5.2 提高并行性的技术途径 6363/77/771.5 计算机系统结构中并行性的发展1. 资源共享 这是一种软件方法,它使多个任务按一定时间顺序轮流使用同一套硬件设备。 6464/
48、77/771.5 计算机系统结构中并行性的发展1. 在发展高性能单处理机过程中,起主导作用的是时间 重叠原理。实现时间重叠的基础:部件功能专用化q把一件工作按功能分割为若干相互联系的部分;把一件工作按功能分割为若干相互联系的部分;q把每一部分指定给专门的部件完成;把每一部分指定给专门的部件完成;q按时间重叠原理把各部分的执行过程在时间上按时间重叠原理把各部分的执行过程在时间上 重叠起来,使所有部件依次分工完成一组同样的工作。重叠起来,使所有部件依次分工完成一组同样的工作。1.5.3 单机系统中并行性的发展 6565/77/771.5 计算机系统结构中并行性的发展 例如: 对于解释指令的5个过程,就分别需要5个专用的部件:取指令部件(IF)、指令译码部件(ID)、指令执行部件(EX)、访问存储器部件(M)和写结果部件(WB)。 IF ID EX M WB IF ID EX M WB IF ID EX M WB IF ID EX M WB IF ID EX M WB IF ID EX M WB IF ID EX M WB 指令指令 i 指令指令 i+1 指令指令 i+2 指令指令 i 指令指令 i+1 指令指令 i+2 指令指令 i+3 时间时间 串行执行串行执行 流水执
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年保险职业学院单招职业倾向性考试题库含答案详解(满分必刷)
- 会议使用管理制度
- 2026年南京城市职业学院单招综合素质考试题库附答案详解(模拟题)
- 2026年北海康养职业学院单招综合素质考试题库带答案详解(研优卷)
- 学生托管班的管理制度
- GB 2762-2025食品安全国家标准食品中污染物限量
- 职业学院教室考核制度
- 探寻平衡之径:中小学课堂师生对话失衡现象剖析与对策研究
- 2026年内蒙古机电职业技术学院单招职业倾向性考试题库附答案详解ab卷
- 2026年南京机电职业技术学院单招职业技能测试题库附参考答案详解(模拟题)
- 感动中国2025十大人物事迹及颁奖词
- 2026内蒙古地质矿产集团有限公司社会招聘65人笔试参考题库及答案解析
- 龙马精神启新程+聚力笃行向未来+-2025-2026学年高三下学期开学第一课
- 2026年春季苏教版小学数学三年级下册教学计划含进度表
- 2026及未来5年中国核辐射物位仪表行业市场运行态势及发展趋向研判报告
- (一模)2026届大湾区高三普通高中毕业年级联合模拟考试(一)生物试卷(含答案)
- 2025年长沙民政职业技术学院单招职业倾向性考试模拟测试卷附答案
- 英语试卷浙江省Z20名校联盟(浙江省名校新高考研究联盟)2026届高三第二次联考(Z20二模)(12.15-12.16)
- 2025年货运共享平台构建可行性研究报告
- 《城轨供电系统继电保护与二次回路》电子教案 10变压器瓦斯保护
- 线材规格基础知识课件
评论
0/150
提交评论