计算机系统结构的基本概念.ppt
《计算机系统结构的基本概念.ppt》由会员分享,可在线阅读,更多相关《计算机系统结构的基本概念.ppt(82页珍藏版)》请在三一办公上搜索。
1、计算机系统结构课件编著:陈建铎设计:程俊波西安石油大学计算机学院,目录 第一章 计算机系统结构的基本概念 第二章 数据与指令系统设计 第三章 存储器体系结构 第四章 标量流水线技术 第五章 向量流水与向量处理机 第六章 互连网络第七章 并行处理技术与SIMD阵列机 第八章 多处理机 第九章 计算机体系结构的发展,第1章 计算机系统结构的基本概念,内容提要:,本章首先简要介绍计算机系统结构的含义、层次结构类型,然后讲述计算机系统结构性能分析的方法、计算机系统结构的发展及计算机系统的成本、性能与价格。重 点是计算机系统的层次结构、按“流”分类、定量分析、Amdahl定律、影响计算机系统结构的要素。
2、难点是计算机系统的层次结构、按“流”分类、定量分析及Amdahl定律。,第1章 计算机系统结构的基本概念,1.1 概 述 1.2 计算机系统结构的定义与内涵 1.3 计算机系统结构的类型1.4 计算机系统性能分析 1.5 计算机系统结构的发展过程 1.6 计算机系统的成本、性能与价格,1.1概 述,自从上世纪40年代上第一台数字计算机诞生以来,其结构、规模、类型、性能、应用领域发生了翻天覆地的变化,其中决定因素是器件和系统结构的发展与变化。人们把计算机的发展过程归结为四个历史时期,也称为四代。现在,正在向第五代发展。各历史时期及其主要特征如表1.1 所示。,计算机科学家恩斯洛(P.H.Ensl
3、ow)曾对19651975年间计算机的发展进行了研究。结果表明,计算机系统的性能提高了100倍,其中10倍归功于器件的发展,而另外10倍归于系统结构的变化。在计算机进入第四代以后,人们认为第五代计算机应当是智能化计算机。但是,经过多年的努力,一时还难以实现。而在上世纪90年代以后,计算机的硬件体系结构有了新的突破性的发展,于是人们把其归结为第五代系统结构的发展时期。典型机种除了表1.1中所列举的几种之外,还有:Fujitsu的VPP500、Cray Research的MPP、Thinking Machines公司的CM-5、Intel超级计算机系统Paragon、SGI的Origin2000以
4、及SUN 10000服务器等。目前,就计算机的规模而言,有微型机、小型机、中型机、大型机和巨型机;就计算机的体系结构而言,有标量流水机、向量流水机、阵列机、并行多处理机、数据流机以及规约机等;另外,人工智能计算机仍然在发展之中。,在进入上世纪80年代以后,由于软件技术的发展,对计算机系统结构的发展也起到了一定的促进作用。一方面是对汇编语言的要求有所降低,放宽了对目标代码兼容性的苛刻要求;另一方面,与厂商无关、类似 于UNIX操作系统那样的标准化的建立,使新的系统结构的设计成本与风险有所降低,这就促使许多厂商相继推出了许多新型计算机,比如小巨型机、高性能的微处理机、工程工作站以及各种多处理机等。
5、在微型计算机的发展中,随着芯片集成度的提高,一方面向工程工作站、小型机靠拢;另一方面,各种高性能的微控制器、嵌入式芯片大量涌现出来,广泛地用于自动控制、电信和智能化仪器仪表中。在进入80年代以后,另一个突破性的进展出现了。这就是精简指令系统计算机RISC,它是对CISC计算机的一种挑战,使计算机的体系结构再一次发生了质的改变。,1.2 计算机系统结构的定义与内涵,1.2.1 计算机系统的层次结构1.2.2 计算机系统结构的定义与内涵1.2.3 计算机系统的组成与实现,计算机系统的层次结构,随着软件技术的发展,人们使用不同的高级语言编程,站在不同的层面上使用计算机。于是,产生了计算机系统的多层次
6、结构,如图1.1 所示。,图1.1 计算机系统的层次结构,图中每一层对应一种“机器”,为该层的操作者所使用。操作者通过该层的语言与“机器”对话,或者交互信息,而不必关心其内层的结构和工作过程。这体现的是一种称之为透明性的特性。,L0 和L1级是计算机的底层硬件,指中央控制器。其中 L0级由电子线路组成,用来实现微指令的功能。L1是微程序控制器,也称为固件。L2是传统的机器语言级机器,也称为物理机,程序员通过机器语言指令编程。向下,进入L1级,每一条机器语言指令对应于一段微程序,通过执行其微程序,实现该指令的功能。,L3是操作系统虚拟机。在这一级,多数指令是传统的机器语言指令,操作系统提供自己的
7、命令集,比如打开/关闭文件、读/写文件等。程序员主要使用操作系统的命令对文件进行操作,其功能由软件来实现,因此称为操作系统虚拟机。L4是汇编语言虚拟机。程序员通过对汇编语言指令的编程,来实现外部的功能要求。汇编语言程序需要翻译成L3和L2级语言,然后再由机器执行。这种翻译程序称为汇编程序。,L5是高级语言虚拟机。程序员使用高级语言进行程序设计,然后再由编译或解释程序翻译成L4级或L3级上的语言,然后由下一级机器执行。L6是应用语言虚拟机,是为某些专门的应用而设计的,使用面向问题或对象语言,可设计出用于不同领域的虚拟机。应用语言编写的程序一般是由应用程序包翻译到L5级上,然后再一级一级地翻译或解
8、释执行。,计算机系统结构(Computer architecture)这一概念,是在1962年Buchholz描述IBM 7030的扩展性(Stretch)时首先提出来的;主要是指计算机的外貌,也称为外特性。1964年,IBM 370的主设计师Amdahl给出了它的定义:计算机系统结构就是程序员所看到的计算机的基本属性,即概念性结构与功能特性。对于不同层次上的程序员来说,由于使用的程序设计语言不同,可能看到的概念性结构与功能特性会有所不同。例如,使用机器语言或汇编语言分别在PDP-11和80X86机上进行程序设计,就会发现两种机器的基本属性截然不同;如果使用高级语言,比如FORTRAN或C/C
9、+,进行程序设计,经编译后再在这两种机器上运行,就会发现它们之间不再有多大的区别。,计算机系统结构的定义与内涵,是什么原因呢?主要是编译程序填补了两种机器之间的差异。象这种本来存在差异或区别的事物或特性,站在某一角度来看,似乎不再有什么差异或者区别,这种现象或概念称为透明性(Transparency)。由此可见,在层次结构的各级机器上都有相应的系统结构。Amdahl提出的系统结构是指传统机器语言级的系统结构,即机器语言程序员所看到的计算机外特性,是在传统的硬件层面上看到的特性。这种外特性主要有:指令系统 数据表示 寻址规则 寄存器结构 中断系统 工作状态的定义与切换 存储系统 信息保护方式 I
10、/O结构等。,这些在计算机系统中是由硬件或固件完成的功能。由图1.1可以看出,计算机系统的概念性结构和功能特性实质上是由计算机系统中软件与硬件之间的界面所确定,界面之上主要是软件功能,界面之下则主要是硬件。以上是针对经典的计算机系统结构的概念而言的。随着计算机技术的发展,计算机系统结构的概念和它所包含的内容也正处在不断的发展与变化之中,它涉及到广义计算机系统结构的概念,包括计算机新的组成与实现技术。,图1.1 计算机系统的层次结构,1.2.3 计算机系统的组成与实现,1.计算机组成与实现2.外特性、内特性与微外特性3.计算机系统的组成与实现,1.计算机组成与实现,所谓计算机组成是在明确计算机系
11、统结构分配给硬件的功能与概念性结构之后,研究如何组成其硬件体系,并建立相互之间的联系,以实现机器语言级指令的功能与特性。其中包括各功能部件的配置、组成、相互之间的连接与相互作用等。各功能部件的性能、参数以及相互之间的合理匹配是计算机组成的重要指标。例如,运算器的组成、功能、运算速度,存储器的层次结构、容量、存取周期、虚拟存储技术、通道技术或I/O处理机、先行控制、流水线技术、多功能部件、阵列机以及并行多处理机技术等。计算机组成是计算机系统结构的逻辑实现,包括机器内部数据流和控制流的组成及其逻辑设计。在研究计算机组成时,又涉及到各种功能部件的组成逻辑、时序电路以及时钟信号的设计与选用。,例如,在
12、设计运算器时,既涉及到时序电路,又涉及到算法;在设计存储器时既涉及到采用什么样的器件,又涉及到它的容量、外围电路和速度;在设计输入输出通道时,同样也涉及到采用什么样的器件及外围电路。另外,在构成计算机时还涉及到信号的传输方式、模块的划分、插件与底版的连接,以及电源、冷却方式、组装工艺和技术等。这些,统称为计算机组成的物理实现。计算机系统结构、计算机组成和计算机实现是三个不同的概念。系统结构是计算机系统的软件与硬件之间的界面;计算机组成是指计算机系统结构的逻辑实现;计算机实现是指计算机组成的物理实现。它们各自包含有不同的内容,相互之间又有着密切的联系。,上述三种概念所包含的内容随不同的机器可能有
13、所变化。在一些机器中属于系统结构内容,到了另一种机器中可能成为计算机组成或实现的内容。例如高速缓冲存储器Cache一般是作为计算机组成提出来的,其中存储的信息全部由硬件管理,对程序员来说是透明的;然而在有的机器中为了提高效率,配置了Cache操作指令,使程序员可通过指令参与Cache的管理。这样,Cache就成为系统结构的一部分,对程序员不再透明了。按照Amdahl的定义,在一个系列机中不同档次的机器具有相同的系统结构。,2.外特性、内特性与微外特性,对于机器语言程序员所看到的计算机的概念性结构与功能特性,我们称之为计算机的系统结构,也就是“外特性”。这种外特性是由硬件和固件来实现的,而它们本
14、身则是由电子线路、逻辑门、寄存器等器件组成的。对这些器件和电子线路的抽象,称为计算机系统的“内特性”,对应于计算机组成,其本身实际上就是计算机系统的实现。,计算机系统的内特性所涉及到的内容主要包括机器语言级内的数据流和控制流的组成,CPU与主存等部件的逻辑设计,各事件的排序方式与控制机构,以及各部件之间的联系等。它所涉及到的问题是如何合理地配置硬件功能和技术指标 在设有微程序控制器的计算机系统中,执行指令的过程实际上就是执行微程序的过程。这对于微程序设计人员来说,他们所看到的外特性实际上就是微程序控制器的外特性,也称为“微外特性”。,如果把它作为一个抽象级,可以视为硬件与固件之间的界面,也称为
15、微系统结构。外特性、内特性及微系统结构之间的关系如图1.2所示。由于计算机系统的外特性是对内特性的抽象,因此二者之间的影射关系是一对多的关系,即某一外特性可以影射多种内特性;而某一内特性也可以影射多种物理实现。,图1.2 计算机的外特性、内特性与微系统结构的关系,3.计算机系统的组成与实现,计算机系统的组成既包括硬件系统,又包括软件系统。它的组成与实现如图1.1所示,即分为下层的物理机和上层的虚拟机。其系统的组成实际上就是各层的硬件和软件构成的统一体,由其硬件和软件实现各层次的功能。各层的组成与作用已在节介绍。,1.3 软件的产生、发展与软件危机,1.3.1 按“流”分类1.3.2 按“并行级
16、”和“流水线”分类1.3.3 冯氏分类法,计算机系统结构分类方式主要有三种。一种是按“流”分类,一种是按“并行级”和“流水线”分类,另一种是按照计算机系统结构的最大并行度进行分类。,按“流”分类法是Flynn教授在1966年提出的一种分类方法,他是按照计算机中指令流(Instruction stream)和数据流(Data stream)的多倍性进行分类。所谓指令流是指机器执行的指令序列;所谓数据流是指指令流调用的数据序列。多倍性是指在机器中最受限制(瓶颈最严重)的部件上,在同一时间单位中,最多可并行执行的指令条数或处理的数据个数。,1.3.1 按“流”分类,这样,可分成如表1.2所示的四种类
17、型,即:单指令流单数据流(SISD)单指令流多数据流(SIMD)多指令流单数据流(MISD)多指令流多数据流(MIMD)四种类型如图1.3所示,其中CU表示控制部件,PU表示处理部件,MM是主存模块,CS表示控制流,DS表示数据流,IS表示指令流,SM表示共享主存。,1.SISD计算机 单指令流单数据流计算机如图1.3(a)所示,控制部件(CU)只有一个,处理部件(PU)也只有一个。同一时间单元中只能对一条指令进行译码和执行。由于主存模块(MM)也是一个,因此一次所能处理的数据也是一个。2.SIMD计算机 单指令流多数据流计算机如图1.3(b)所示,控制部件(CU)只有一个,在同一时间单元内只
18、能对一条指令进行译码和执行;但是有多个处理部件(PU),同时执行控制单元分配给各自的任务,对多个数据进行处理,即多数据流。并行处理机可谓这种结构的典型代表。例如ILLIAC-,ICL-DAP,CRAY-1,YH-1以及CM-2等。,图1.3 Flynn分类法中4种类型的逻辑结构,3.MISD计算机 多指令流单数据流计算机如图1.3(c)所示,控制部件(CU)有多个,处理部件(PU)也有多个,在同一时间单元内可对多条指令进行译码和执行,即多个指令流。但是主存模块(SM)只有一个数据通路,仅对一个数据流进行处理。目前,有人认为这种结构尚不存在;但是也有学者认为,超级标量机、超长指令字计算机、退耦以
19、及脉动阵列机可归属于SIMD计算机。4.MIMD计算机 多指令流多数据流计算机如图1.3(d)所示,有多个控制部件(CU)和多个处理部件(PU),可对多个数据流进行处理。目前的大多数多处理机系统和多计算机系统当属这种类型。其中,多个处理机共享一个主存空间,并由共享主存交换或传递数据信息的称为紧耦合MIMD系统;对于不直接共享一个主存空间的,称为松耦合MIMD系统。实际上,它也是多个独立的SISD计算机系统的集合。例如IBM 370/168MP,CRAY X-MP,YH-2等。,1.3.2 按“并行级”和“流水线”分类,按“并行级”和“流水线”分类法是Wolfgan Hndler在1977年提出
20、的。是在计算机系统的三个子系统集上,按照并行性和流水线的处理程度分类。三个层次是处理控制器(PCU)、运算部件(ALU)和位级电路(BLC)。这样,一个计算机系统可描述为:T(C)=其中:C表示计算机系统型号;k表示计算机系统中处理控制器(PCU)的个数;k表示可组成流水线的处理控制器的个数;d表示每一个PCU中运算部件(ALU或PE)的个数;d表示可组成流水线的ALU或PE的个数;w表示ALU或PE的字长;w表示所有ALU或一个PE中的流水段数。如果任意一对参数的第二个元素值为1,则可以省略。,【例1.1】CDC6600计算机系统有一个CPU,它的ALU有10个功能部件,所有的功能部件可以连
21、成一条流水线,字长60位;此外,配有10个可并行工作的I/O处理机,每一个I/O处理机有一个ALU,字长12位。则CDC6600计算机系统可以描述为:T(CDC6600)=T=【例1.2】CRAY-1计算机有一个CPU,12个相当于ALU或PE的处理部件,最多可实现8级流水线;字长64位,可实现114位流水线处理。则CRAY-1计算机系统可描述为:T(CRAY-1)=按照Wolfgan Hndler分类法,一些典型计算机可表示为:T(PDP11)=(1,1,16)T(ILLIAC)=(1,64,64)T(STARAN)=(1,8192,1)T(MPP)=(1,16384,1)T(C.mmp)=
22、(16,1,16)T(PEPE)=(13,288,32),冯氏分类法是美籍华人冯泽云于1972年提出来的一种分类方法。他是按照“最大并行度”对计算机系统结构进行分类。所谓最大并行度用Pm表示,定义为计算机系统在单位时间内所能处理的最大二进制位数。若设每一个时钟周期ti内能同时处理的二进制位数为Pi,则T个时钟周期内平均并行度为:,1.3.3 冯氏分类法,平均并行度取决于系统的运行程度,与应用程序有关。为了表示这一特性,可引入系统在T个时钟周期内的平均利用率,用表示:,下面可通过图1.4给出用“最大并行度”对计算机系统结构进行分类的方法。其中直角坐标系中的一个点代表一个计算机系统;横坐标表示字宽
23、(n位),即在一个字中可同时处理的二进制位数;纵坐标表示位片宽度(m字),即在一个位片中可同时处理的字数。这样,对于一个计算机系统的最大并行度可用两个量的乘积来表示,即通过该点的水平线、垂直线与两坐标轴围成的矩形面积。,图1.4 冯氏分类法,由图1.4可见,按照对数据处理的方式,可得到4种不同处理方式的计算机系统结构:字串位串(WSBS,Word Serial and Bit Serial),即 n=1,m=1。这主要是第一代计算机发展的初期,采用纯串行工作方式的一类计算机。字并位串(WPBS,Word Parallel and Bit Serial),即 n1,m=1。这主要是传统的并行单处
24、理机。字串位并(WSBP,Word Serial and Bit Parallel),即 n=1,m1。STARAN、MPP、DAP等属于这种结构。字并位并(WPBP,Word Parallel and Bit Parallel),即 n1,m1。PEPE、ILLIAC-、C.mmp等属于这种结构。,1.4 计算机系统性能分析,1.4.1 定量分析法1.4.2 CPU性能分析1.4.3 MIPS与MFLOPS指标1.4.4 性能测试结果的统计与比较,1.4.1 定量分析法,1.大概率事件优先原理 大概率事件优先原理的基本思想是对大概率事件(最常见的事件)赋予优先处理权和资源使用权,以获得全局最
25、优结果。例如在CPU的加法运算中,溢出是小概率事件,无溢出是大概率事件。相比之下,应对无溢出加法进行优化设计,加快无溢出加法的速度;而溢出会降低机器的运算速度,但是它的概率很小。因此,从总体上来看,机器的性能还是提高了。2.Amdahl定律 Amdahl定律是Amdahl于1967年提出来的。他指出,对某一部件采取某种更快的执行方式,所获得的系统性能改进程度取决于这种执行方式被使用的概率或所占用总执行时间的比例。简言之,加快某种部件执行的速度所获得系统性能加速比,受限于该部件在系统中的重要性或使用概率。,若用To表示某部件改进前执行某一任务所用的时间,Te表示改进后执行该任务所用的时间;re表
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机系统 结构 基本概念
链接地址:https://www.31ppt.com/p-5009045.html