计算机体系结构量化研究法.ppt

上传人:小飞机 文档编号:6376185 上传时间:2023-10-22 格式:PPT 页数:95 大小:645KB
返回 下载 相关 举报
计算机体系结构量化研究法.ppt_第1页
第1页 / 共95页
计算机体系结构量化研究法.ppt_第2页
第2页 / 共95页
计算机体系结构量化研究法.ppt_第3页
第3页 / 共95页
计算机体系结构量化研究法.ppt_第4页
第4页 / 共95页
计算机体系结构量化研究法.ppt_第5页
第5页 / 共95页
点击查看更多>>
资源描述

《计算机体系结构量化研究法.ppt》由会员分享,可在线阅读,更多相关《计算机体系结构量化研究法.ppt(95页珍藏版)》请在三一办公上搜索。

1、,第 1 章 计算机系统结构的基本概念,1.1 计算机系统的多级层次结构 1.2 计算机系统结构、组成与实现1.3 计算机系统的软硬取舍、性能评测及定量设计原理1.4 软件、应用、器件对系统结构的影响1.5 系统结构中的并行性发展和计算机系统的分类,1.1 计算机系统的多级层次结构,1.计算机系统的多级层次结构划分角度2.各机器级间实现的主要方式3.实际机器和虚拟机器4.多级层次结构划分的意义,从使用语言的角度进行划分:可以将系统看成是按功能划分的多层机器级组成的层次结构,层次结构由高到低分别为应用语言机器级、高级语言机器级、汇编语言机器级、操作系统机器级、传统机器语言机器级和微程序机器级。对

2、于一个具体的计算机系统,层次的多少会有所不同。,1.计算机系统的多级层次结构划分角度,图 1.1 计算机系统的多级层次结构,翻译(Translation)是先用转换程序将高一级机器级上的程序整个地变换成低一级机器级上等效的程序,然后再在低一级机器级上实现的技术。解释(Interpretation)则是在低级机器级上用它的一串语句或指令来仿真高级机器级上的一条语句或指令的功能,是通过对高级的机器级语言程序中的每条语句或指令逐条解释来实现的技术。,2.各机器级的实现方式,翻译实现应用语言虚拟机器级M5是为满足专门的应用设计的。使用面向某种应用的应用语言(L5)编写的程序。一般是经应用程序包翻译成高

3、级语言(L4)程序后,再逐级向下实现。,应用语言虚拟机器级M5的实现,翻译实现 高级语言机器级M4上的程序可以先用编译程序整个翻译成汇编语言(L3)程序或机器语言(L1)程序,再逐级或越级向下实现.解释实现 也可以用汇编语言(L3)程序、机器语言(L1)程序,甚至微指令语言(L0)程序解释实现。,高级语言机器级M4的实现,翻译实现汇编语言(L3)源程序则是先用汇编程序整个将它变换成等效的二进制机器语言(L1)目标程序,再在传统机器级M1上实现。,汇编语言(L3)源程序的实现,解释实现 操作系统程序虽然已经发展成用高级语言(如C语言)编写,但最终还是要用机器语言程序或微指令程序来解释。,操作系统

4、程序的实现,传统机器级 采用组合逻辑电路控制,其指令可直接用硬件来实现,也可以采用微程序控制,用微指令(L0)程序来解释实现。微指令 直接控制硬件电路的动作。,传统机器级和微程序机器的实现,所谓固件(Firmware),是一种具有软件功能的硬件,例如将软件固化在只读存储器这种大规模集成电路的硬、器件上,就是一种固件。以软件为主实现的机器称为虚拟机器,以区别于由硬件或固件实现的实际机器。虚拟机器不一定全由软件实现,有些操作也可用固件或硬件实现。例如操作系统的某些命令可用微程序或硬件实现。,3.实际机器和虚拟机器,将计算机系统看成是多级机器构成的层次结构推动了计算机系统结构的发展。例如,可以重新调

5、整软、硬件比例,为各级提供更多更好的硬件支持,改善硬、器件迅速发展而软件日益复杂、开销过大的状况;或直接用硬件或固件实现,发展高级语言机器或操作系统计算机结构。可让各虚拟机器级用真正的实处理机代替,摆脱以往各级功能都在同一台实际机器上实现的状况,发展多处理机、分布处理、计算机网络等系统结构。可以在一台宿主机上模拟或仿真另一台机器,推动自虚拟机、多种操作系统共行等技术的采用,从而促进软件移植、计算机系统性能评价、计算机设计自动化等技术的发展。,4.多级层次结构划分的意义,1.2计算机系统结构、组成与实现,计算机系统结构、组成、实现的定义和内涵计算机系统结构、组成和实现的相互关系,1系统结构定义:

6、从计算机系统的层次结构定义,系统结构(SystemArchitecture)是对计算机系统中各级界面的划分、定义及其上下的功能分配。每级都有其自己的系统结构。2透明性:客观存在的事物或属性从某个角度看不到,简称透明(Transparent)。不同机器级程序员所看到的计算机属性是不同的,它就是计算机系统不同层次的界面。3系统结构研究的内容:就是要研究对于某级,哪些属性应透明,哪些属性不应透明。透明可简化该级的设计,但因无法控制,也会带来不利影响。因此,要正确进行透明性取舍。,计算机系统结构、组成、实现的定义和内涵(一)计算机系统结构,3.计算机系统结构也称计算机系统的体系结构(ComputerA

7、rchitecture),它只是系统结构中的一部分,指的是传统机器级的系统结构。它是软件和硬件/固件的交界面,是机器语言、汇编语言程序设计者,或编译程序设计者看到的机器物理系统的抽象。4计算机系统结构研究的内容:是软、硬件之间的功能分配以及对传统机器级界面的确定,提供机器语言、汇编语言程序设计者或编译程序生成系统为使其设计或生成的程序能在机器上正确运行应看到和遵循的计算机属性。,(1)硬件能直接识别和处理的数据类型及格式等的数据表示;(2)最小可寻址单位、寻址种类、地址计算等的寻址方式;(3)通用/专用寄存器的设置、数量、字长、使用约定等的寄存器组织;(4)二进制或汇编级指令的操作类型、格式、

8、排序方式、控制机构等的指令系统;,5.计算机系统结构的属性:,(5)内存的最小编址单位、编址方式、容量、最大可编址空间等的存储系统组织;(6)中断的分类与分级、中断处理程序功能及入口地址等的中断机构;(7)系统机器级的管态和用户态的定义与切换;(8)输入/输出设备的连接、使用方式、流量、操作结束、出错指示等的机器级I/O结构;(9)系统各部分的信息保护方式和保护机构等属性。,1.计算机组成的定义:计算机组成(computer organization,又称计算机设计)是指计算机系统的逻辑实现。包括机器内部的数据流和控制流的组成以及逻辑设计等。它着眼于机器内各事件的排序方式与控制机构、各部件的功

9、能以及各部件间的联系。2.计算机组成的设计是按所希望达到的性能价格比,最佳、最合理的把各种设备和部件组成计算机,以实现所确定的计算机系统结构。对传统机器程序员来说,计算机组成的设计内容一般是透明的。3.计算机组成的任务是在计算机系统结构确定分配给硬件子系统的功能及其概念结构之后,研究各组成部分的内部构造和相互联系,以实现机器指令级的各种功能和特性。,(二)计算机的组成,(1)数据通路宽度:数据总线上一次并行传送的信息位数。(2)专用部件的设置:是否设置乘除法、浮点运算、字符处理、地址运算等专用部件,设置的数量与机器要达到的速度、价格及专用部件的使用频度等有关。(3)各种操作对部件的共享程度:分

10、时共享使用程度高,虽限制了速度,但价格便宜。设置部件多降低共享程度,因操作并行度提高,可提高速度,但价格也会提高。(4)功能部件的并行度:是用顺序串行,还是用重叠、流水或分布式控制和处理。,4.计算机组成设计要确定的方面(内容),(5)控制机构的组成方式:用硬联还是微程序控制,是单机处理还是多机或功能分布处理。(6)缓冲和排队技术:部件间如何设置及设置多大容量的缓冲器来协调它们的速度差;用随机、先进先出、先进后出、优先级,还是循环方式来安排事件处理的顺序。(7)预估、预判技术:为优化性能用什么原则预测未来行为。(8)可靠性技术:用什么冗余和容错技术来提高可靠性。,4.计算机组成设计要确定的方面

11、(内容),1.定义:计算机实现(Computer Implementation)指的是计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,器件、模块、插件、底板的划分与连接,专用器件的设计,微组装技术,信号传输,电源、冷却及整机装配技术等。2.它着眼于器件技术和微组装技术,其中,器件技术在实现技术中起着主导作用。,(三)计算机实现,关于指令系统:指令系统的确定属于计算机系统结构。指令的实现,如取指令、指令操作码译码、计算操作数地址、取数、运算、送结果等的操作安排和排序属于计算机组成。实现这些指令功能的具体电路、器件的设计及装配技术属于计算机实现。,(四)举例:计算机系统

12、结构、组成和实现区别。,确定指令系统中是否要设乘法指令属于计算机系统结构。乘法指令是用专门的高速乘法器实现,还是靠用加法器和移位器经一连串时序信号控制其相加和右移来实现属于计算机组成。乘法器、加法-移位器的物理实现,如器件的类型、集成度、数量、价格,微组装技术的确定和选择属于计算机实现。,具体的某条指令,按位、按字节还是按字访问等的确定属于计算机系统结构。为达到性能价格要求,主存速度应该为多少,逻辑结构是否采用多体交叉属于计算机组成。主存器件的选定、逻辑设计、微组装技术的使用属于计算机实现。,主存容量与编址方式,它们结构相同如图1-2所示,组成和实现不同。设计何种系列机属于计算机系统结构,而系

13、列内不同型号计算机的组织属于计算机组成。IBM370系列有115、125、135、145、158、168等由低档到高档的多种型号机器。IBM370系列的都有相同的机器指令和汇编指令系统,只是指令的分析、执行在低档机上采用顺序进行,在高档机上则采用重叠、流水或其他并行处理方式。,对于系列机,图1-2IBM370系列的概念性结构,数据形式(即数据表示)都是相同的32位字长,定点数都是半字长16位或全字长32位,浮点数都是单字长32位、双字长64位或四字长128位,如图1-3(a)所示。属于计算机系统结构。数据通路宽度不同:由于速度、价格的要求不同,在组成和实现时,数据通路宽度(数据总线线数)可以分

14、别采用8位、16位、32位或64位,如图1-3(b)所示。数据总线宽度对程序员是透明的,是他不需要知道的,属于计算机组成。,图1-3IBM370系列字长、数的表示和数据通路宽度(a)统一的字长与定、浮点数表示;(b)不同的数据通路宽度,以单总线结构著称的,实际上它不属于计算机系统结构。是计算机组成,为适应不同速度和价格的要求,不同型号机器仍使用多种不同的总线。它们都具有相同的I/O连接和使用方式,将I/O设备端口寄存器在逻辑上看做是主存的一部分,与主存统一编址,通过访问主存这些指定单元来实现与指定的I/O设备通信,完成对该设备的读/写等。属于计算机系统结构,是程序设计者编写I/O程序时应当看到

15、的。,DEC公司早先推出的PDP-11系列,计算机系统结构、组成、实现三者互不相同,但又相互影响。1.同结构(如指令系统相同)的计算机,可以因速度不同而采用不同的组成。2.一种组成可有多种不同的实现方法。如主存器件可用双极型的,也可用MOS型的;可用VLSI单片,也可用多片小规模集成电路组成。这取决于要求的性能价格比及器件技术状况。,计算机系统结构、组成和实现的相互关系,3.结构不同会使可能采用的组成技术不同。如为了实现:A=B+CD=E*F,如果采用面向寄存器的系统结构,其程序可以是LOAD R1,BADD R1,CSTORER1,ALOADR2,EMPYR2,FSTORER2,D而对面向主

16、存的具有三地址寻址方式的系统结构,其程序可以是ADDB,C,A;MPYE,F,D,4.反过来,组成也会影响结构,微程序控制就是一个典型的例子。5.三者在不同时期所包含的具体内容不同。在某些系统中作为结构的内容,在另些系统中可能是组成和实现的。6.计算机组成和实现关系密切,都可称为计算机实现。即计算机系统的逻辑实现和物理实现。作业(1):P29 6,7,8,1.3 计算机系统的软硬取舍、性能评测及 定量设计原理,软、硬件取舍的基本原则1.确定软、硬件功能分配比例的第一个基本原则:考虑在现有硬、器件(主要是逻辑器件和存储器件)条件下,系统要有高的性能价格比,主要从实现费用、速度和其他性能要求来综合

17、考虑。,图1-4计算机系统的软、硬件功能分配比例,(1)不同时期软、硬件功能分配比例,设计费用:假设某功能的软、硬件实现的每次设计费用分别为Ds和Dh,则Dh 100Ds是完全可能的。生产费用:设该功能软、硬件实现的每次重复生产费用分别为Ms和Mh,则Mh100 Ms也是可能的。软件实现重新设计费用:CDs.软件实现重复生产费用:RMs。同一功能的软件在存贮介质上有可能多次出现,每出现一次都需要有复制和存贮费用。,(2)软、硬件功能分配实现的费用分析,每台计算机用硬件实现的费用就为 Dh/V+Mh。若改用软件实现则为 CDs/V+RMs。,假定某计算机系统生产了V台:,只有当 Dh/V+MhC

18、Ds/V+RMs 才用硬件实现,在C和R的值较大时,这个不等式才越能够成立。即只有这个功能是经常要用的基本单元功能,才宜于用硬件实现。100Ds/V+100Ms CDs/V+RMs 在V值较大,即只有对产量大的计算机系统,增大硬件功能实现的比例才是适宜的。Ds104Ms也是完全可能的,106/V+100104C/V+R,要考虑到准备采用和可能采用的组成技术,使它尽可能不要过多或不合理地限制各种组成、实现技术的采用。,2.确定软、硬件功能分配的第二个基本原则,不能仅从“硬”的角度考虑如何便于应用组成技术的成果和便于发挥器件技术的进展,还应从“软”的角度把如何为编译和操作系统的实现以及为高级语言程

19、序的设计提供更多更好的硬件支持放在首位。,3.确定软、硬件功能分配的第三个基本原则,计算机系统的性能评测与定量设计原理,1.计算机系统的性能评测 峰值性能和实际性能(又称持续性能)。持续性能:算术性能平均值、调和性能平均值、几何性能平均值,另有加权性能表示。2.计算机系统的定量设计原理 1)哈夫曼(Huffman)压缩原理 2)Amdahl定律 3)程序访问的局部性定律,峰值性能:是指在理想情况下计算机系统可获得的最高理论性能值,它不能反映出系统的实际性能。实际性能又称持续性能,它的值往往只是峰值性能的5%30%(因算法而异)。持续性能的表示:算术性能平均值、调和性能平均值 几何性能平均值 另

20、有加权性能表示,算术性能平均值Am 是n道程序运算速度或运算时间的算术平均值。,以执行时间评价:,以速率评价:,调和性能平均值Hm,Hm的值与运行全部程序所需的时间成反比,用它来衡量计算机的时间(速度)性能比较准确。,Hm=1/Am,几何性能平均值Gm,由于,因此,对不同机器进行性能比较时,可以对性能采取归一化,即可以以某台机器性能作为参考标准,让其他机器的性能与参考标准去比,不论哪台机器作参考机,Gm值均能正确地反映出结果的一致性,Gm1的机器性能相对就好,Gm 1的机器性能相对就差。,如果考虑工作负荷中各个程序出现的比例不同,可以将各程序的执行速率或执行时间加权。例如,一个任务由4个程序组

21、成,程序A的比例占10%,程序B的比例占30%,程序C的比例占40%,程序D的比例占20%,则可以分别加0.1、0.3、0.4、0.2的权值,只需将权值i与对应程序的执行速率或执行时间相乘,就可求得加权后的算术平均值、几何平均值、调和平均值。,(1)加权算术平均值:,(2)加权调和平均值:,(3)加权几何平均值:,加权性能表示,考虑工作负荷中各个程序出现的比例不同,可以将各程序的执行速率或执行时间加权。,计算CPU的程序执行时间TCPU,2.有n种指令,第i种指令的时钟周期数为CPIi,第i种指令在程序中出现的次数为Ii,则,1.程序执行的总指令条数IC(InstructionCounter)

22、、平均每条指令的时钟周期数CPI(CyclesPerInstruction)、主时钟频率fc。,CPI 因子,其中,Ii/IC为第i种指令在程序总指令数IC中所占的比值。,反映程序的运行速度的定量指标:,这样,程序的执行时间为,(1)MIPS(MillionInstructionsPerSecond(每秒百万条指令数)。,(2)MFLOPS(MillionFloatingPointOperationsPerSecond,每秒百万次浮点运算)。IFN表示程序运行中的浮点运算总次数,有,1MFLOPS3MIPS,(3)MFLOPS与MIPS的折算一般的标准,(1)采用实际的应用程序测试。例如,C语

23、言的各种编译程序,Tex正文处理程序,或Spice那样的CAD工具软件。(2)采用核心程序测试。实际的应用程序往往较大,核心程序则是从实际的程序中取出其中最关键的短程序部分,如循环部分或线性方程求解的部分。(3)合成测试程序。这是人为地编写的核心程序,程序的规模较小,一般在10100行左右,容易输入,而且运行的结果是预知的。(4)综合基准测试程序。这是考虑了各种可能的操作和各种程序的比例,人为地平衡编制的基准测试程序。显然,它与实际的应用差别较大,所测得的性能往往不真实。,用不同层次的基准程序(Benchmark)要对系统性能进行客观的评测的方法:,1)哈夫曼(Huffman)压缩原理尽可能加

24、速处理高概率事件远比加速处理概率很低的事件对性能提高要显著。例如,CPU在运算中发生溢出的概率是很低的,为此,设计时可考虑加快不溢出时的运算速度,而对溢出时的速度不予考虑。,2.计算机系统的定量设计原理,该定律可用于确定对系统中性能瓶颈部件采取措施提高速度后能得到系统性能改进的程度,即系统加速比Sp。系统加速比Sp定义为系统改进后的性能与未改进时的性能的比值,或者定义为系统未改进时的程序执行时间Told与改进后程序执行时间Tnew的比值。系统加速比Sp与两个因素有关,即性能可改进比fnew和部件加速比rnew。,2)Amdahl定律,性能改进比fnew:可改进部分占用的时间与未改进时系统总执行

25、时间的比值,显然,0fnew1。部件加速比rnew:是系统性能可改进部分在改进后性能提高的比值,显然rnew 1。系统加速比为,Amdahl定律 系统加速比的计算,当系统性能可改进比fnew为0时,Sp=1;当部件加速比rnew趋于无穷大时,分母中的fnew/rnew将趋于0,这时有,性能提高的幅度受限于性能改进部分所占的比例大小,而性能改善的极限又受性能可改进比fnew的约束。,系统加速比的分析,如果系统中某部件处理速度提高到10倍,即rnew=10,但该功能的处理时间仅占整个系统运行时间的40%,则改进后,整个系统的性能提高为,举例:,如果部件加速比rnew由10增大到100,在fnew仍

26、为0.4的条件下,其Sp只约为1.66,性能提高的增量仅为0.1。,Amdahl定律表明了性能提高量的递减规律,如果只对系统中的一部分进行性能改进,改进的越多,整体系统性能提高的增量却越小。Amdahl定律告诉我们,改进好的高性能系统应是一个各部分性能均能平衡地得到提高的系统,不能只是其中某一个功能部件性能的提高。,结论,程序访问的局部性包括了时间上和空间上的两个局部性。时间上的局部性指的是最近的将来要用到的信息很可能就是现在正在使用的信息,这是因为程序存在着循环。空间上的局部性指的是最近的将来要用到的信息很可能与现在正在使用的信息在程序位置上是邻近的。统计表明,程序执行时,90%的时间只访问

27、整个程序的10%那一部分,而其余10%的时间才访问90%的那部分程序。甚至于有的程序部分访问时间连1%都不到。这为设计指令系统提供了重要的依据,即指令硬件的设计应尽量加速高频指令的执行。,3)程序访问的局部性定律,1.4软件、应用、器件对系统结构的影响,1.4.1 软件对系统结构的影响(解决好软件的可移植性问题)软件的可移植性(Portability)指的是软件不修改或只经少量修改就可由一台机器移到另一台机器上运行,同一软件可应用于不同的环境。要解决好软件移植的原因:目前已积累了大量成熟的软件,加上软件生产率又很低,软件的排错比编写难,除非特殊情况,程序设计者一般不愿意,也不应该在短时间里按新

28、的系统结构、新的指令系统去重新设计软件。为此,在系统结构设计时,提出应在新的系统结构上解决好软件的可移植性问题。,1.统一高级语言 2.采用系列机 3.模拟和仿真,实现软件移植的几个基本技术:,1.统一高级语言实现软件移植的一种技术是如何统一高级语言,设计出一种完全通用的高级语言,为所有程序员所使用。这样,结构相同以至完全不同的机器之间都能实现高级语言程序的软件移植。,第一,不同的用途要求语言的语法、语义结构不同。如FORTRAN适用于科学计算,COBOL适用于事务处理,它们的语义、语法结构差异较大,难以一致。程序员又都希望使用特别适合其用途的语言,不愿增加那些不想要的功能,否则语言难以掌握,

29、编译程序过大,编译效率过低。,高级语言难统一的原因有以下几种:,第二,人们对语言的基本结构看法不一。第三,即使同一种高级语言在不同厂家的机器上也不能完全通用。第四,受习惯势力阻挠,人们不愿抛弃惯用的语言,因为熟悉、有经验,也不愿抛弃长期积累的、用原有语言编写并已被实践证明是正确的软件。,2.采用系列机,系列机:从中间向两边设计相呼应。在软、硬件界面上设定好一种系统结构(系列机中称系列结构),其后,软件设计者按此设计软件,硬件设计者根据机器速度、性能、价格的不同,选择不同器件、硬件和组成、实现技术,研制并提供不同档次的机器。,向上(下)兼容:指的是按某档机器编制的软件,不加修改就能运行于比它高(

30、低)档的机器上。同一系列内的软件一般应做到向上兼容,但向下兼容就不一定。向前和向后兼容:为了提高操作系统的实现效率和质量,可增加操作系统的专用指令和硬件等,这样,软件兼容又有向前和向后兼容之分。其指的是某个时期投入市场的该型号机器上编制的软件,不加修改就能运行在它之前(后)投入市场的机器上。,系列机要解决的问题,在系列机中,中档机的性能价格比通常总比低档和高档的要高,如图1-5所示。因此,对系列机来说,所谓优化性能价格比,指的是在满足性能的前提下尽量降低价格,或在某种价格情况下尽量提高性能。,系列机的性能价格比,图1-5系列机中各档机器的性能价格比状况,3.模拟和仿真,B机器的每条机器指令用A

31、机器一段机器语言程序解释,如同A机器上也有B机器的指令系统一样。这种用机器语言程序解释实现软件移植的方法称为模拟(Simulation)。进行模拟的A机器称为宿主机,被模拟的B机器称为虚拟机。用微程序直接解释另一种机器指令系统的方法就称为仿真(Emulation)。,图1-6用模拟方法实现应用软件的移植,图1-7用仿真方法实现应用软件的移植,(1)解释的语言不同,模拟用机器语言程序解释实现软件移植,其解释程序存于主存中;仿真用微程序直接解释另一种机器指令系统,其解释程序存于控制存储器中。(2)仿真可提高移植软件的运行速度。(3)仿真适合机器结构差别不大的机器,特别I/O系统差别较大时,难以仿真

32、。一般仿真和模拟并行实现不同系列机的软件移植。,模拟(Simulation)仿真(Emulation)的区别,1.4.2 应用的发展对系统结构的影响,从性能上,微型机的发展有两个趋势:一是利用VLSI的进展,维持价格提高性能,向小型机靠拢;二是维持性能降低价格,发展更低档的亚微型和微微型(掌上型)计算,进一步扩大应用。不断降低价格,可促进计算机的推广使用,反过来对计算机工业迅速发展可起更为重要的作用。从系统结构的观点看,各型(档)计算机性能随时间推移,其实就是在低档(型)机上引用甚至照搬高档(型)机的结构和组成。这有利于扩大计算机的应用,促进计算机工业的发展。,图1-8各型机器性能、价格随时间

33、变化的趋势,器件的发展:从功能和使用方法发生了很大变化,由早先使用非用户片,发展到现场片和用户片,它影响着结构和组成技术的发展。,器件的发展对系统结构的影响,非用户片也称通用片,其功能是由器件厂家生产时固定的,器件的用户(即机器设计者)只能使用,不能改变器件内部功能。现场片用户根据需要可改变器件内部功能。如PROM,FPLA等 用户片是专门按用户要求生产的高集成度VLSI器件。全用户片:完全按用户要求设计的用户片。半用户片:生产工序基本按通用片的进行,仅最后在门电路或触发器间连线时按用户要求制作。,器件的发展,(1)器件的发展改变了逻辑设计的传统方法。过去,逻辑设计主要是逻辑化简,节省门的个数

34、、门电路的输入端数及门电路的级数,以节省功耗、降低成本、提高速度。但对于VLSI来说,这样做反而使设计周期延长,组成实现不规整,故障诊断困难,机器产量低,这些都将使成本反而加大。(2)器件的发展加速结构的“下移”,大型机的数据表示,指令系统,操作系统出现的小、微型机上。同时为多处理机分布处理,智能机提供基础。(3)器件的发展促进了算法、语言和软件的发展。,器件的发展的主要影响,1.5系统结构中的并行性发展和计算机系统的分类,并行性概念1.并行性的含义与级别 并行性包含同时性和并发性二重含义。同时性(Simultaneity)指两个或多个事件在同一时刻发生。并发性(Concurrency)指两个

35、或多个事件在同一时间间隔内发生。,(1)从计算机系统执行程序的角度看分分为:指令内部一条指令内部各个微操作之间的并行。指令之间多条指令的并行执行。任务或进程之间多个任务或程序段的并行执行。作业或程序之间多个作业或多道程序的并行。,并行性的分级,位串字串同时只对一个字的一位进行处理,这通常是指传统的串行单处理机,没有并行性。位并字串同时对一个字的全部位进行处理,这通常是指传统的并行单处理机,开始出现并行性。位片串字并同时对许多字的同一位(称位片)进行处理,开始进入并行处理领域。全并行同时对许多字的全部或部分位组进行处理。,(2)从计算机系统中处理数据的并行性可以分为:,存储器操作并行可用单体单字

36、、多体单字或多体多字方式在一个存储周期内访问多个字。典型的例子就是并行存储器系统和以相联存储器为核心构成的相联处理机。处理器操作步骤并行指令的取指、分析、执行,浮点加法的求阶差、对阶、尾加、舍入、规格化等操作,执行步骤在时间上重叠流水地进行。典型的例子是流水线处理机。处理器操作并行通过重复设置大量处理单元,让它们在同一控制器控制下按同一指令要求对向量、数组中各元素同时操作。典型的例子是阵列处理机。,(3)从计算机信息加工的各个步骤和阶段分为:,指令、任务、作业并行这是较高级的并行。与操作级并行不同:指令级以上的并行是多个处理机同时对多条指令和相关的多数据组进行处理;操作级并行是对同一条指令及其

37、相关的数据组进行处理。前者属多指令流多数据流计算机,后者属单指令流多数据流计算机。典型的例子是多处理机。,开发并行性的途径有时间重叠、资源重复和资源共享等。(1)时间重叠(TimeInterleaving)是在并行性概念中引入时间因素,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,加快硬件周转来赢得速度。图1-9所示的指令内各操作步骤采用重叠流水就是最典型的例子。,2.并行性开发的途径,图1-9时间重叠的例子(a)指令流水线;(b)指令在流水线各部件中流过的时间关系,(2)资源重复(ResourceReplication)是在并行概念中引入空间因素,通过重复设置硬件资

38、源来提高可靠性或性能。(并行性的同时性)图1-10通过设置N个完全相同的处理单元(PE),在同一控制器(CU)控制下,给各处理单元分配不同数据完成指令要求的同一种运算或操作,以提高速度性能。,图1-10资源重复的例子,(3)资源共享是用软件的方法让多个用户共用同一套,通过提高系统的利用率来提高系统的性能和效率。典型例子:多道程序分时系统、计算机网络和分布处理系统等。(并行性的并发性),3.计算机系统的并行性发展,科学计算中的重大挑战性课题往往要求计算机系统能有1TFLOPS的计算能力、1TB的主存容量、1TB/s的I/O带宽,称之为3T性能目标。,多机系统包含多处理机系统和多计算机系统。多处理

39、机系统是由多台处理机组成的单一系统。各处理机都有自己的控制部件,可带本地存储器,能执行各自的程序,但都受逻辑上统一的操作系统控制。处理机之间以文件、单一数据或向量、数组等形式交互作用。全面实现作业、任务、指令、数据各级的并行。多计算机系统则是由多台独立的计算机组成的系统。机间可以互不通信,即使通信也只是经通道或通信线路以文件或数据集形式进行,实现多个作业间的并行。,4.多机系统的耦合度,一般用耦合度反映多机系统中各机器之间物理连接的紧密度和交叉作用能力的强弱。它可有最低耦合、松散耦合、紧密耦合之分。最低耦合系统(LeastCoupledSystem),其耦合度最低,除通过某种存储介质外,各计算

40、机之间无物理连接,也无共享的联机硬件资源。例如,独立外围计算机系统由主机和外围计算机组成,后者脱机工作,只通过磁盘、磁带等对主机的输入/输出提供支持。,多机系统耦合方式,松散耦合系统(LooselyCoupledSystem)或间接耦合系统(IndirectlyCoupledSystem):多台计算机通过通道或通信线路实现互连,共享某些如磁带、磁盘等外围设备,以较低频带在文件或数据集一级相互作用。它有两种形式:一种是多台功能专用的计算机通过通道和共享的外围设备相连,各计算机以文件或数据集形式将结果送到共享的外设,供它机继续处理,使系统获得较高效率;另一种是各计算机经通信线路互连成计算机网,各尽

41、所长,求得更大范围内的资源共享。,松散耦合系统,紧密耦合(TightlyCoupledSystem)系统或直接耦合系统(DirectlyCoupledSystem)。多台计算机经总线或高速开关互连,共享主存,有较高的信息传输速率,可实现数据集一级、任务级、作业级并行。它可以是主辅机方式配合工作的非对称型系统,但更多的是对称型多处理机系统,在统一的操作系统管理下求得各处理机的高效率和负荷的均衡。,紧密耦合,弗林分类法:弗林(MichaelJ.Flynn)提出按指令流和数据流的多倍性对计算系统分类。指令流是指机器执行的指令序列。数据流是指由指令流调用的数据序列,包括输入数据和中间结果。多倍性是指在

42、系统性能瓶颈部件上处于同一执行阶段的指令或数据的最大可能个数。,计算机系统的分类,单指令流单数据流Single Instruction Stream Single Data Stream,SISD;单指令流多数据流Single Instruction Stream Multiple DataStream,SIMD);多指令流单数据流(MISD);多指令流多数据流(MIMD)。对应于这四类计算机的基本结构框图如图1-11所示。,弗林分类法的四种类型,图1-11弗林分类的四类系统的基本结构(a)SISD计算机;(b)SIMD计算机;(c)MISD计算机;(d)MIMD计算机,作业:P29 6,7 P29 8,11 P30 13,15,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号