收藏 分享(赏)

第1章 计算机系统结构概论.ppt

上传人:fmgc7290 文档编号:8306020 上传时间:2019-06-19 格式:PPT 页数:132 大小:742KB
下载 相关 举报
第1章  计算机系统结构概论.ppt_第1页
第1页 / 共132页
第1章  计算机系统结构概论.ppt_第2页
第2页 / 共132页
第1章  计算机系统结构概论.ppt_第3页
第3页 / 共132页
第1章  计算机系统结构概论.ppt_第4页
第4页 / 共132页
第1章  计算机系统结构概论.ppt_第5页
第5页 / 共132页
点击查看更多>>
资源描述

1、第1章 计算机系统结构概论,1.1 计算机系统的多级层次结构 1.2 计算机系统结构、组成与实现 1.3 软硬件取舍、性能测评及定量设计原理 1.4 软件、应用、器件对系统结构的影响 1.5 系统结构中的并行性发展和计算机系统的分类,1.1 计算机系统的多级层次结构,1.六个层次结构现代通用的计算机系统是由紧密相关的用硬 件和软件组成的。从使用语言的角度,可以将系 统看成是按功能划分的多个机器级组成的以下六 个层次结构:,VM5 应用语言机器M5 VM4 高级语言机器M4VM3 汇编语言机器M3VM2 操作系统机器M2RM1 传统机器M1RM0 微程序机器M0图1.1 计算机系统的多级层次结构

2、,机器:并非是指真正的一台有鼠标、键盘、显 示器等的机器实体,而是指能够存贮和执行相应 语言程序的算法和数据结构的集合体,是同时存 在于计算机内的。,这样,对于会使用某一级高级语言编程的程序员来说,只要他熟悉和遵守该级语言的规定,所编写的程序总能在这一机器上运行,得到结果,而不用管这个机器级是如何实现的。就好像该程序员有了可以直接使用这种语言作为机器语言的机器一样。,实际上,只有二进制机器指令即传统所说的机器语言才与硬件直接对应,方可以被硬件直接识别和执行。,解释:是在低一级机器级上用它的一串语句或指令来仿真高一级机器级上的一条语句或指令的功能,通过高一级机器语言程序中的每条语句或指令逐条解释

3、来实现的技术。,翻译:是先用转换程序将高一级机器级上的程序整个地变成低一级机器级上可运行的等效程序,然后再在低一级机器级上去实现的技术。,各机器级的实现主要靠翻译或解释,或两者的结合。,VM5 应用语言机器M5 VM4 高级语言机器M4VM3 汇编语言机器M3VM2 操作系统机器M2RM1 传统机器M1RM0 微程序机器M0图1.1 计算机系统的多级层次结构,应用语言虚拟机器VM5是为了满足管理、人工智能、图像处理、辅助设计等专门的应用来设计的。使用面向某一种应用环境的的应用语L5编写的程序一般是经过应用程序包翻译成高级语言L4程序后,再逐级向下实现的。,高级语言机器级M4上的程序可以先用编译

4、程序整个的翻译成汇编语言L3程序或机器语言L1程序,再逐级或越级向下实现,也可以用汇编语言L3程序、机器语言L1程序,甚至是微指令语言L0 程序解释实现。,VM5 应用语言机器M5 VM4 高级语言机器M4VM3 汇编语言机器M3VM2 操作系统机器M2RM1 传统机器M1RM0 微程序机器M0图1.1 计算机系统的多级层次结构,对汇编语言L3源程序则先用汇编程序整个将其变换成等效的二进制机器语言L1目标程序,再在传统机器级M1上实现。,VM5 应用语言机器M5 VM4 高级语言机器M4VM3 汇编语言机器M3VM2 操作系统机器M2RM1 传统机器M1RM0 微程序机器M0图1.1 计算机系

5、统的多级层次结构,操作系统程序虽然已发展成用高级语言编写,但最终还要用机器语言程序或微指令程序来解释。,VM5 应用语言机器M5 VM4 高级语言机器M4VM3 汇编语言机器M3VM2 操作系统机器M2RM1 传统机器M1RM0 微程序机器M0图1.1 计算机系统的多级层次结构,VM5 应用语言机器M5 VM4 高级语言机器M4VM3 汇编语言机器M3VM2 操作系统机器M2RM1 传统机器M1RM0 微程序机器M0图1.1 计算机系统的多级层次结构,操作系统提供了传统机器级M1所没有,但为汇编语言和高级语言使用和实现所用的基本操作、命令和数据结构。如文件管理、存贮管理、进程管理、多道程序共行

6、、多重处理等。因此,操作系统机器级M2放在传统机器机M1和汇编语言机器级M3之间是适宜的。,VM5 应用语言机器M5 VM4 高级语言机器M4VM3 汇编语言机器M3VM2 操作系统机器M2RM1 传统机器M1RM0 微程序机器M0图1.1 计算机系统的多级层次结构,传统机器级M1采用组合逻辑电路控制,其指令可以直接用硬件来实现,也可以采用微程序控制,用微指令L0程序来解释实现。微指令直接控制硬件电路的动作。,VM5 应用语言机器M5 VM4 高级语言机器M4VM3 汇编语言机器M3VM2 操作系统机器M2RM1 传统机器M1RM0 微程序机器M0,目前, M0用硬件实现; M1用微程序(固件

7、)实现; M2到M5大多用软件实现。,2实现方式,称以软件为主实现机器为虚拟机器VM,以区别于用硬件实现的实际机器RM。虚拟机器不一定全都由软件实现,有些操作可以用固件或硬件实现。具体采用何种实现方式,要从整个计算机系统的效率、速度、造价、资源状况等方面全面考虑,对软件、硬件、固件取舍进行综合平衡。 固件:是一种具有软件功能的硬件,如将软件固化在只读存储器器件上就是一种固件。,2实现方式,3.分层的意义 推动了计算机系统结构的发展。,1.2 计算机系统结构、组成与实现,1.2.1定义和内涵 1.系统结构:回到层次结构上,系统结构是对计算机系统中各级界面的划分、定义及其上下的功能分配。 每级都有

8、自己的系统结构。 系统结构的设计就是研究针对某级,哪些应当透明,哪些不可以的。,透明性概念:在计算机中,客观存在的事物或属性从某个角度看不到,称这些事物或属性对它是透明的。透明就会简化某一级的设计,但同时由于看不到,就会无法控制,带来不利。所以,要正确的进行透明性分析和取舍。,VM5 应用语言机器M5 VM4 高级语言机器M4VM3 汇编语言机器M3VM2 操作系统机器M2RM1 传统机器M1RM0 微程序机器M0,2.计算机系统结构:,计算机系统结构指的是层次结构中传统机器级的系统结构。 其界面之上的功能包括:操作系统级,汇编语言级,高级语言级和应用语言级中所有软件的功能; 界面之下的功能包

9、括:所有硬件和固件的功能; 因此,这个界面实际是软件与硬件或固件的分界面。,计算机系统结构研究:软、硬件功能的划分和传统机器级界面的确定,为机器语言、汇编语言程序设计者或编译程序生成系统提供保证程序运行的计算机属性。,计算机系统结构属性包括:数据表示寻址方式寄存器组织指令系统存贮系统中断机构及I/O结构信息保护方式和保护机构,3.计算机组成:计算机组成指的是计算机系统结构的逻辑实现,包括机器级内的数据流和控制流的组成以及逻辑设计等。着眼于机器级内各事件的排序方式与控制机构、各部件的功能及各部件间的联系。研究在所期望达到的性价比下,怎样最佳、最合理的把各种设备和部件组织成计算机,以实现所确定的系

10、统结构。,计算机组成要确定的方面包括:数据通路宽度专用部件的设置各种操作对部件的共享程度功能部件的并行度控制机构的组织方式缓冲和排队技术预估、预判技术可靠性技术,4.计算机实现:计算机实现指的是计算机组成的物理实现。 研究:实际器件技术和微组装技术。 包括:处理机、主存等的物理结构器件的集成度和速度 器件、模块、插件、底板的划分与连接专用器件的设计微组装技术,举例1: 指令系统的确定计算机系统结构 指令的实现计算机组成 具体电路、器件设计及装配技术计算机实现,举例2: 是否设乘法指令计算机系统结构 用高速乘法器还是加法移位器实现计算机组成 器件的类型、数量及组装技术的确定计算机实现,举例3:

11、主存容量与编址方式的确定计算机系统结构 主存速度的确定、逻辑结构的模式计算机组成 器件的选定、电路的设计、组装技术计算机实现,举例4: 设计什么样的系列机属于系统结构、系列内的不同型号计算机的组织属于组成 。,IBM370不同型号机器 从M4、M3到M1:概念性结构相同性价比不同组成技术不同实现技术不同 具有不同的微程序机器级,高级语言编译软件和应用软件 可以通用于不同型号机器, 只是运行速度不同, 机器价格不同,IBM370系列机,指令系统 IBM370系列机的中央处理机都具有相同的机器指令和汇编指令系统; 只是指令的分析执行,在低档机上采用顺序处理方式,在高档机上采用重叠、流水或其他并行处

12、理方式。,相同系统结构,不同组成,数据表示与数据通路宽度 程序设计者编程序时看到的数据形式(即数据表示)都是相同的32位字长,定点数都是半字长16位或全字长32位,浮点数都是单字长32位,双字长64位或四字长128位;,IBM370系列机,数据通路宽度(数据总线线数)由于速度、价格的要求不同,在组成和实现时,可以分别采用8位、16位、32位或64位,这样一个64位的字,分别要传送8次、4次、2次、1次,速度不同,价格不同。,数据总线宽度对程序员是透明的。,相同系统结构,不同组成,IBM370系列机,通道方式 IBM370系列机的各档机器都采用通道方式进行I/O;,相同系统结构,不同组成,在计算

13、机组成上: 低档机器可以采用结合型通道,让通道的功能借用中央处理机的某些部件来完成。同一套硬件分时执行中央处理机和通道的功能。速度性能低,成本低。,高档机上却采用独立型通道,让通道单独设置硬件,与中央处理机并行工作。成本虽高,速度性能高。,结论:机器/汇编指令系统、数据表式、是否采用通道方式输入/输出的确定属于系统结构研究的范畴;指令采用顺序、重叠、流水还是其它方式解释,数据通路宽度的确定,通道采用结合型还是独立型,均属于计算机组成研究的范畴。,1.联系: 1)具有相同系统结构(如指令系统相同)的计机 可因速度等因素的要求不同而采用不同组成。例如:对于乘法指令,可以使用专用的乘法 器来实现,也

14、可以使用加法器重复相加、右移来实现。,1.2.2结构、组成与实现的相互关系 三者互不相同又相互影响。,1.联系: 2)相同的计算机组成可以采用多种不同的实现方法。例如:主存器件既可以选用双极型的,也可以选用MOS型的;可以使用单片大规模集成电路,也可以用多片小规模集成电路进行组搭。显然,这取决于所要求的性价比和当时的器件技术。,1.2.2结构、组成与实现的相互关系 三者互不相同又相互影响。,2.影响:,1.2.2结构、组成与实现的相互关系 三者互不相同又相互影响。,1)不同的系统结构会使组成技术产生差异。 比如:为实现 A:=B+C D:=E*F 采用面向寄存器的系统结构,程序可以是: LOA

15、D R1,B LOAD R2,E ADD R1,C MPY R2,F STORE R1,A STORE R2,D,2.影响:,1.2.2结构、组成与实现的相互关系 三者互不相同又相互影响。,1)不同的系统结构会使组成技术产生差异。 比如:为实现 A:=B+C D:=E*F 采用面向主存的具有三地址寻址方式的系统结构,程序可以是: ADD B,C,A MPY E,F,D,2.影响:,1.2.2结构、组成与实现的相互关系 三者互不相同又相互影响。,2) 计算机组成会影响系统结构,计算机组成技术的进步促进了系统结构的发展。 如:,2.影响:,1.2.2结构、组成与实现的相互关系 三者互不相同又相互影

16、响。,3)计算机实现,特别是器件技术的进展构成了计算机系统结构和组成的基础,对系统结构有很大影响。 结论:系统结构设计的任务是进行软硬件功能分配,作为学科,实际上包括了系统结构和组成两个方面的内容。他研究的是软、硬加功能的分配以及如何更好、更合理的实现分配给硬件的功能。,1.3 软硬取舍、性能评测及定量设计原理,软件和硬件在逻辑功能上是等效的。原理上,软件的功能可用硬件或固件完成,硬件的功能也可以用软件模拟完成,只是性能、价格、实现的难易程度不同。 例如:编译子程序-硬件固件;乘除法运算;向量数组运算;十进制运算等。,1.3.1软件取舍的基本原则,具有相同功能的系统,其软硬件功能分配比例的变化

17、范围也是很宽的。而且随不同时期及同一时期的不同机器也在动态改变。,1.3 软硬取舍、性能评测及定量设计原理,1.3.1软件取舍的基本原则,1)提高硬件功能的比例,可以提高解题速度,减少程序所需的存贮空间;但是,会提高硬件的成本,降低硬件的利用率和系统的灵活性与适应性。,1.3 软硬取舍、性能评测及定量设计原理,1.3.1软件取舍的基本原则,2)提高软件功能的比例,可以降低硬件的造价,提高系统的灵活性和适应性。但解题速度要下降,软件设计费用和所需的存贮空间要增加。,1.3 软硬取舍、性能评测及定量设计原理,1.3.1软件取舍的基本原则,1.3.1软件取舍的基本原则 1.原则一:在现有的硬件和器件

18、(主要是逻辑器件和存贮器件)的条件下,系统要有高的性价比。 仅从实现费用分析。,硬件比例高:解题速度快,程序所需存贮空间少, 硬件的成本高,硬件利用率低,系统灵活性适应性低 软件比例高:硬件成本低,系统灵活性适应性高, 解题速度低,软件设计费用、所需存贮空间增加。,性能:综合指标,包含很多方面,速度是主要方面。某个功能用软件还是用硬件实现好,主要可从实现费用、速度和其他性能要求来考虑。,1.3.1软件取舍的基本原则 (原则一:高性价比),性能:以实现费用为例分析:(:软件;:硬件),h100Ds,软件设计费用=CDs,软件重复生产费用=RMs,设:计算机系统共生产了V台,Mh100Ms,硬件实

19、现一个功能只需设计一次 软件每次用到该功能要重新设计 C:软件实现该功能需重新设计次数,Ms:每次复制和存贮费用 R:该功能在存贮介质出现次数,Mh:硬件每次重复生产费用,每台机器用硬件实现该功能费用: Dh/V+Mh,用软件实现费用:CDs/V+RMs,当Dh/V+MhCDs/V+RMs时,适宜硬件实现。,100Ds/V+100Ms CDs/V+RMs,结论:C和R较大时,式子才成立,即只有某个功能是经常用到的基本单元功能,才适宜用硬件实现。,软件设计费用远比重复生产费用高, Ds104Ms,106Ms/V+100Ms C104Ms /V+RMs,结论:计算机系统生产量大,才适宜增大硬件实现

20、比例。,1.3.1软件取舍的基本原则 (原则一:高性价比),2.原则二:充分考虑准备采用和可能要用的的组成技术,使它尽可能不要过多或不合理地限制各种组成、实现技术的采用。,1.3 软硬取舍、性能评测及定量设计原理,1.3.1软件取舍的基本原则,3.原则三:不能仅从“硬”的角度去考虑如何便于应用组成技术的成果和发挥器件技术的进展,还应从“软”的角度把为编译和操作系统的实现,以至高级语言程序的设计提供更多、更好的硬件支持放在首位。 结论:应当进一步缩短高级语言与机器语言操作系统与计算机系统机构,程序设计环境与系统结构之间存在的语义差距。系统结构与机器语言是用硬件实现的,语义差距是用软件填补的。,1

21、.3 软硬取舍、性能评测及定量设计原理,1.3.1软件取舍的基本原则,1.3 软硬取舍、性能评测及定量设计原理,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测计算机系统的性能指标体现于时间和空间两方面。其中,在系统上程序实际运行的时间是衡量机器时间(速度)性能最可靠的标准。,1.3 软硬取舍、性能评测及定量设计原理,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测高性能计算机系统应让系统结构在机器的功能与程序的行为上有良好的适配。机器的性能是通过采用好的硬件、系统结构及高效的资源管理等技术来提高的。,1.3 软硬取舍、性能评测及定量设计原理,1.3

22、.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测但程序的行为又与应用中程序运行的条件密切相关,很难确切地确定。此外,算法设计、数据结构、语言、程序员的水平、编译技术等也会影响到程序的行为。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,计算机的性能通常用峰值性能及持续性能来评价。,峰值性能是指在理想情况下计算机系统可获得的最高理论性能值,它不能反映出系统的实际性能。,实际性能又称持续性能,它的值往往只是峰值性能的5%30%(因算法而异)。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,持续性能的表示有算术性能平均值、调和性能平

23、均值和几何性能平均值三种。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,A机执行程序1的速度是B机的10倍; B机执行程序2的速度是A机的10倍; A机执行程序1的速度是C机的20倍;,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,C机执行程序2的速度是A机的50倍; B机执行程序1的速度是C机的2倍; C机执行程序2的速度是B机的5倍;,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,孤立地看,上面都对,综合起来考虑,A、B、C三种机器的性能怎样比较?,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的

24、性能评测,1)总执行时间:一致的衡量标准,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,2)平均执行时间:各执行时间的算术平均值,算术性能平均值Am是n道程序运算速度或运算时间的算术平均值。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,2)平均执行时间:各执行时间的算术平均值,如以速率评价,就有:,Ti是第i个程序的执行时间; Ri是第i个程序的执行速率。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,2)平均执行时间:各执行时间的算术平均值,如以速率评价,就有:,Ti是第i个程序的执行时间,1.3.2计算机系统的

25、性能评测与定量设计原理,1 计算机系统的性能评测,2)平均执行时间:各执行时间的算术平均值,如以执行时间评价,就有:,若性能用速度表示,平均时间是调和性能平均值Hm:,Hm的值与运行全部程序所需的时间成反比,用它衡量计算机的时间(速度)性能较准确。,Ti是第i个程序的执行时间; Ri是第i个程序的执行速率。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,2)平均执行时间:各执行时间的算术平均值,对不同机器进行性能比较时,可以对性能采取归一化,即可以以某台机器性能作为参考标准,让其他机器的性能与参考标准去比,可以用几何平均来表示。,1.3.2计算机系统的性能评测与定量设

26、计原理,1 计算机系统的性能评测,几何性能平均值Gm为:,由于,不论哪台机器作参考机,Gm值均能正确地反映出结果的一致性。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,几何性能平均值Gm为:,Gm1的机器性能相对就较好,Gm1的机器性能相对就差。 Am和Hm没有这一特性,因此常用Gm来作比较。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,如果考虑工作负荷中各个程序出现比例不同,可将各程序的执行速率或执行时间加权。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,例如:一个任务由4个程序组成,程序A的比例占10%,程

27、序B的比例占30%,程序C的比例占40%,程序D的比例占20%,则可以分别加0.1、0.3、0.4、0.2的权值。 Ti:第i个程序的执行时间; Ri:第i个程序的执行速率,(1)加权算术平均值:,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,例如:一个任务由4个程序组成,程序A的比例占10%,程序B的比例占30%,程序C的比例占40%,程序D的比例占20%,则可以分别加0.1、0.3、0.4、0.2的权值。 Ti:第i个程序的执行时间; Ri:第i个程序的执行速率,(2)加权调和平均值:,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,例如:

28、一个任务由4个程序组成,程序A的比例占10%,程序B的比例占30%,程序C的比例占40%,程序D的比例占20%,则可以分别加0.1、0.3、0.4、0.2的权值。 Ti:第i个程序的执行时间; Ri:第i个程序的执行速率,(3)加权几何平均值:,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,机器性能因负荷不同而改变,任何时候都要达到峰值(最大)性能是不可能的。实际上,系统性能的评测总是通过执行一系列有代表性的程序实测来获得的。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,在计算机上执行一个程序的时间可用解题时间衡量。,1.3.2计算机系统的

29、性能评测与定量设计原理,1 计算机系统的性能评测,解题时间包括:磁盘的访问时间主存的访问时间输入/输出的时间编译和操作系统运行的辅助操作开销CPU的运行时间,多道程序运行时,程序的I/O、系统开销可以与其他程序的CPU运行时间重叠,所以,比较系统执行程序时的解题时间可以简化为CPU的运行时间。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,CPU同时运行系统程序和用户程序,对用户来说,更关心的是用户的CPU时间。,计算CPU的程序执行时间TCPU有3个因素: IC : 程序执行的总指令条数 CPI :平均每条指令的时钟周期数 fc: 主时钟频率,1.3.2计算机系统的

30、性能评测与定量设计原理,1 计算机系统的性能评测,假设系统共有n种指令,第i种指令的时钟周期数为CPIi,第i种指令在程序中出现的次数为Ii,则,Ii/IC为第i种指令在程序总指令数IC中所占的比例。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,为反映程序的运行速度,通常引入一些定量指标:,(1)MIPS (Million Instructions Per Second)每秒百万条指令数 (2)MFLOPS (Million Floating Point Operations Per Second)每秒百万次浮点运算,1.3.2计算机系统的性能评测与定量设计原理,1

31、 计算机系统的性能评测,(1)MIPS 每秒百万条指令数,IC : 程序执行的总指令条数 CPI :平均每条指令的时钟周期数 fc: 主时钟频率,程序的执行时间为:,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,机器主频fc 越高,其MIPS越高;MIPS越高,一定程度上反映了机器性能越好。,(1)MIPS 每秒百万条指令数,但,MIPS很大程度上依赖于机器的指令系统,用它很难准确衡量指令系统不同的机器之间的性能。 故,MIPS只能用于比较相同机器指令系统的计算机间的性能。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,(1)MIPS 每秒百

32、万条指令数,即使在同一台计算机上,程序(负荷)不同,其CPI也不同,因此,运行程序不同时,其性能的差异会很大。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,(1)MIPS 每秒百万条指令数,同时,MIPS还与机器硬件的实现有关。 例如,在有加速浮点运算部件的机器上,虽然MIPS很低,但浮点运算速度会很高,而在软件实现浮点运算的机器上,MIPS虽然很高,但浮点运算速度可能很低。所以,MIPS来衡量标量处理机的性能比较合适,衡量向量处理机就不合适。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,(1)MIPS 每秒百万条指令数,1.3.2计算机

33、系统的性能评测与定量设计原理,1 计算机系统的性能评测,(2)MFLOPS 每秒百万次浮点运算,设IFN表示程序运行中的浮点运算次数,则:,MIFOPS只能反映机器执行浮点操作的性能,不能反映机器的整体性能。例如,在程序编译过程中,不管MFLOPS有多高,对编译速度都不会有影响。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,设IFN表示程序运行中的浮点运算次数,则:,MIFOPS是基于浮点操作而不是指令的,较适用于衡量处理机中向量的运算性能。因此,MIFLOPS可用于比较不同向量计算机的向量运算性能。,(2)MFLOPS 每秒百万次浮点运算,1.3.2计算机系统的性

34、能评测与定量设计原理,1 计算机系统的性能评测,设IFN表示程序运行中的浮点运算次数,则:,同一个程序,不同计算机运行所需的指令数会不同,但运算所用到的浮点数的个数却是相同的,因此,用MFLOPS衡量系统性能时,要注意,它会随整数、浮点数的个数的比例不同而不同,也会因快速浮点操作与低速浮点操作的比例不同而不同。,(2)MFLOPS 每秒百万次浮点运算,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,设IFN表示程序运行中的浮点运算次数,则:,所以, 用MFLOPS有时也难以准确反映出机器的性能。,(2)MFLOPS 每秒百万次浮点运算,1.3.2计算机系统的性能评测与定

35、量设计原理,1 计算机系统的性能评测,MFLOPS与MIPS的折算:一般认为在标量处理机上执行一次浮点操作平均需要3条指令,所以一般折算为1 MFLOPS3 MIPS,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,评价一个计算机系统的性能除机器的结构、功能外,还与工作负荷关系很大,工作负荷不同时,性能差异很大。因此,要对系统性能进行客观的评测,就需要选择较能真实反映出系统性能的工作负荷(程序),通常可用不同层次的基准程序来评测。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,用基准程序评测的方法有:,1)采用实际的应用程序测试。 如C语言的各

36、种编译程序,Tex正文处理程序、或CAD工具Spice等。,2)采用核心程序测试。 实际的应用程序一般较大,核心程序是从实际程序中提取出其中最关键的短程序部分,如循环部分或线性方程求解的部分。,1.3.2计算机系统的性能评测与定量设计原理,1 计算机系统的性能评测,用基准程序评测的方法有:,3)合成测试程序。 就是人为地编写核心程序,程序规模较小,一般在10100行左右,容易输入且运行结果是预知的。,4)综合基准测试程序。 类似于核心程序,但考虑了各种操作和各种程序的比例,人为地平衡编制的基准测试程序。它与实际应用差别较大,所测得的性能往往不真实。,1.3.2计算机系统的性能评测与定量设计原理

37、,2 计算机系统的定量设计原理,设计计算机时,一般应遵循的定量设计原理:,1)哈夫曼压缩原理 2)Amdahl定律 3)程序访问的局部性定律,1.3.2计算机系统的性能评测与定量设计原理,2 计算机系统的定量设计原理,设计计算机时,一般应遵循的定量设计原理:,1)哈夫曼压缩原理即尽可能加速处理高概率事件远比加速处理概率很低的事件对性能提高要显著。,1.3.2计算机系统的性能评测与定量设计原理,2 计算机系统的定量设计原理,设计计算机时,一般应遵循的定量设计原理:,2)Amdahl定律该定律可用于确定对系统中性能瓶颈部件采取措施提高速度后能得到系统性能改进的程度,即系统加速比Sp。,1.3.2计

38、算机系统的性能评测与定量设计原理,2 计算机系统的定量设计原理,设计计算机时,一般应遵循的定量设计原理:,2)Amdahl定律Sp定义为系统改进后的性能与未改进时的性能的比值,或者定义为系统未改进时的程序执行时间Told与改进后程序执行时间Tnew的比值。,1.3.2计算机系统的性能评测与定量设计原理,2 计算机系统的定量设计原理,设计计算机时,一般应遵循的定量设计原理:,2)Amdahl定律Sp与两个因素有关,性能可改进比fnew 部件加速比rnew,fnew:系统性能可改进部分占用的时间与未改进时系统总执行时间的比值。0 fnew1 rnew:系统性能可改进部分在改进后性能提高的比值。 r

39、new 1,1.3.2计算机系统的性能评测与定量设计原理,2 计算机系统的定量设计原理,设计计算机时,一般应遵循的定量设计原理:,2)Amdahl定律 系统加速比为:,当fnew=0时,Sp=1; rnew趋于时,fnew/rnew趋于0,则,即,性能提高的幅度受限于性能改进部分所占比例,而性能改进的极限受fnew的约束。,1.3.2计算机系统的性能评测与定量设计原理,2 计算机系统的定量设计原理,设计计算机时,一般应遵循的定量设计原理:,2)Amdahl定律,例:若系统中某部件处理速度提高到10倍,即rnew=10,但该功能的处理时间仅占整个系统运行时间的40%,则改进后,整个系统的性能提高

40、为,1.3.2计算机系统的性能评测与定量设计原理,2 计算机系统的定量设计原理,设计计算机时,一般应遵循的定量设计原理:,3)程序访问的局部性定律,a)时间局部性:在最近的未来要用到的信息很可能是现在正在使用的信息,这是由程序循环造成的,即循环中的语句要被重复执行。 b)空间局部性:在最近的未来要用到的信息很可能与现在正在使用的信息在程序空间上相邻或相近,这是由于指令通常是顺序存放、顺序执行的。,1.3.2计算机系统的性能评测与定量设计原理,2 计算机系统的定量设计原理,设计计算机时,一般应遵循的定量设计原理:,3)程序访问的局部性定律,统计表明,程序执行时,90%的时间之访问整个程序的10%

41、。这为设计指令提供了重要依据,即指令硬件的设计应尽量加速高频指令的执行。,1.3.2计算机系统的性能评测与定量设计原理,2 计算机系统的定量设计原理,总之,现在通用计算机的设计,一般先选择从层次结构的主要软、硬件界面之间进行合理的软硬件功能分配;同时还要考虑硬件对OS、编译系统提供哪些支持,然后由这个中间界面分别向上、向下进行软件和硬件设计。,1.3.3计算机系统设计的主要任务和方法,任务包括系统结构,组成和实现的设计.功能分配,指令系统,逻辑设计,电路设计,对编译及操作系统的支持. 考虑市场和应用的情况,满足应用的需求.,(1)要弄清其应用领域是专用的还是通用的. (2)要弄清软件兼容是放在

42、那级层次. (3)要弄清操作系统有何种要求. (4)要如何保证有高的标准化程度. 优化,提高性价比.系统结构设计应 适应硬件技术,软件技术,器件技术,应用需求的发展变化.,计算机系统的设计方法,(1)由上往小 (2)由下往上 (3)从中间开始,1.4软件、应用、器件对系统结构的影响,1.4.1软件对系统结构的影响,定义:可移植性是指软件可以不加修改或经少量修改,就可以由一台机器搬到另一台机器去运行,使得同一套软件可以应用于不同的硬件环境。,优点:可以大量节省重复工作量,使软件设计者可以集中精力更好的改进或开发全新的软件。,软件可移植性,实现软件可移植的基本技术:,1统一高级语言,统一出满足各种

43、应用的高级语言,该高级语言编写程序可移植,该语言编写操作系统,系统软件可移植,实现软件可移植的基本技术:,1统一高级语言,难度很大,原因:,1)不同的用途往往要求语言有不同的语法结构和语义结构。,2)人们对语言的基本结构看法不一。,3)即使同一种高级语言在各个不同厂家的机器上也不能完全通用,因为各种机器字长、“机器零“定义、I/0设备种类和数量、子程序结构、寻址空间、操作系统等不尽相同。,4)习惯势力的影响。,实现软件可移植的基本技术:,2采用系列机思想,系列机思想:,在软、硬件界面上确定好一种系统结构之后软件设计者按此设计软件;硬件设计者根据机器速度、性能、价格的不同,选择不同的器件,采用不

44、同的硬件技术和组成、实现技术,研制并提供不同档次的机器。,系列机结构相同,通过统一机器语言来达到软件的移植,确定系列机结构时要慎重。,实现软件可移植的基本技术:,2采用系列机思想,软件兼容:由于系列内各档机器从程序设计者看都具有相同的机器属性,因此按这个属性编制的机器语言程序以及编译程序都能不加修改地通用于各档机器,我们称这种情况下的各档机器是软件兼容的.,实现软件可移植的基本技术:,2采用系列机思想,向上(下)兼容:指按某档机器编制的软件,不加修改就能运行于比它高(低)档的机器上。,同一系列内的软件一般应做到向上兼容,向前(后)兼容:指在按某个时期投人市场的该型号机器上编制的软件,不加修改就

45、能运行于在它之前(后)投入市场的机器上。,系列机软件必须保证做到向后兼容,实现软件可移植的基本技术:,3模拟与仿真,实现在具有不同系统结构的机器间软件移植。,从指令系统看: 在一种机器的系统结构上实现另一种机器的指令系统。,实现软件可移植的基本技术:,3模拟与仿真,模拟: 将B机每条机器指令都用A机的一段机器语言程序解释,A:宿主机 B:虚拟机,还需模拟B机存贮体系、I/O系统、控制台操作,形成虚拟OS,适合于移植运行时间短使用次数少,时间关系没约束限制的软件,实现软件可移植的基本技术:,3模拟与仿真,仿真: 用A的微程序直接解释B的机器指令,A:宿主机 B:目标机,需模拟B机存贮体系 I/O

46、系统、控制台操作,形成虚拟OS,实现软件可移植的基本技术:,3模拟与仿真,模拟与仿真的区别:,实现软件可移植的基本技术比较:,解决结构相同或不同机器软件移植,重要方向。,普遍采用的方法。结构相同机器软件移植,兼容会阻碍系统结构进展。,不同结构机器软件移植。模拟灵活,结构差别太大时,效率速度急剧下降。 仿真速度损失小,灵活性小,目前在结构差别不大机器间采用,否则效率显著降低且难仿真,同时需结合采用模拟方法才能真正实现。,1.4.1软件对系统结构的影响,系统结构设计者在设计机器时,一定要考虑满足软件兼容,并提供实现软件可移植的手段。 还应考虑支持操作系统的兼容。,1.4.2 应用对系统结构的影响(

47、自学),1.4.3 器件发展对系统结构的影响(自学),1.5 系统结构中的并行性发展及计算机系统的分类,1.5.1 并行性概念,1并行性含义与级别 含义:,1)定义:将解题中具有可以同时进行运算或操作的特性,称为并行性,2)开发并行性目的: 为了能并行处理,以提高计算机解题效率,3)广义并行性:只要在同一时刻或是在同一时间间隔内完成两种或两种以上性质相同或不同的工作,在时间上能相互重叠,都称为并行性。包括同时性与并发性。 4)同时性:两个或多个事情在同一时刻发生。5)并发性:两个或多个事情在同一时间间隔内发生。,并行性级别,1)从执行程序角度分(低-高),a)指令内部一条指令内部各个微操作之间

48、的并行执行。(主要取决于硬件和组成的设计),b)指令之间多条指令的并行执行。(主要应解决和处理好指令之间存在的相互关联),c)任务或进程之间多个任务或程序段的并行执行(主要涉及如何进行任务分解),d)作业或进程之间多个作业或多道程序的并行。(关键在于并行算法,即怎样将有限的软硬件资源有效的同时分配给正在解题的多个程序),并行性等级由高到低反映了硬件实现的比例在增大。所以并行性的实现是一个软硬件功能分配的问题,需要折衷权衡。,并行性等级,2)从处理数据角度分(低-高),a)位串字串单字单位,通常指串行单处理机 (无并行性),b)位并字串单字全位,通常指并行单处理机 (开始出现并行性),c)位片串字并多字同位(位片),多机串行 (开始进入并行处理领域),d)全并行多字多位,多机并行,并行性等级,3)从信息加工角度分,a)存贮器操作并行同一个存贮周期访问多字;(并行存贮器、相联处理机),b)处理器操作步骤并行操作步骤在时间上重叠流水进行;(流水线处理机),c)处理器操作并行对同一条指令的多个数据组同时操作;(阵列处理机),d)指令、任务、作业并行多处理机同时对多条指令及相关多数据组的操作。(多处理机),2.并行性开发途径,1)时间重叠,a)方法:在并行性中引入时间因素,让多个处理过程在时间上错开,轮流重复的使用同一套硬件设备的各个部分,以加快硬件周转而提高速度。,

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报