工学1计算机系统结构的基本知识教学提纲.ppt
《工学1计算机系统结构的基本知识教学提纲.ppt》由会员分享,可在线阅读,更多相关《工学1计算机系统结构的基本知识教学提纲.ppt(85页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、工学1计算机系统结构的基本知识第一章 计算机系统结构的基本知识n1.1 计算机系统结构的基本概念n1.2 计算机系统的设计n1.3 计算机系统的性能评测n1.4 计算机系统结构的发展n1.5 计算机系统结构中并行性的发展n自第一台通用计算机诞生以来,计算机技术取自第一台通用计算机诞生以来,计算机技术取得飞速发展,这一方面得益于计算机制造技术得飞速发展,这一方面得益于计算机制造技术的发展,另一方面则是计算机系统结构的创新。的发展,另一方面则是计算机系统结构的创新。在计算机开始发展的在计算机开始发展的25年中,两种因素都起着主要年中,两种因素都起着主要作用,使得计算机的性能每年提高约作用,使得计算
2、机的性能每年提高约25%。20世纪世纪70年代末到年代末到80年代初,大规模集成电路和年代初,大规模集成电路和微处理器的出现使计算机性能的年增长率提高到约微处理器的出现使计算机性能的年增长率提高到约35%,主要归功于以集成电路为代表的制造技术的,主要归功于以集成电路为代表的制造技术的发展。发展。1.1 计算机系统结构的基本概念20世纪世纪80年代初年代初RISC结构的出现使得计算机系统结构的出现使得计算机系统结构发生重大变革,从结构发生重大变革,从80年代中期开始,计算机性年代中期开始,计算机性能增长达到了每年能增长达到了每年50%以上。以上。2002年以来,计算机性能的增长率下降到约年以来,
3、计算机性能的增长率下降到约30%。主要原因是:主要原因是:n大功耗问题;大功耗问题;n可以进一步有效地开发的指令级并行性已经很少;可以进一步有效地开发的指令级并行性已经很少;n存储器访问速度的提高缓慢。存储器访问速度的提高缓慢。很多计算机公司放弃高性能单处理机项目,专项多很多计算机公司放弃高性能单处理机项目,专项多核的研发,标志着系统结构从单纯依靠指令级并行核的研发,标志着系统结构从单纯依靠指令级并行转向开发线程级并行和数据级并行。转向开发线程级并行和数据级并行。1.1 计算机系统结构的基本概念1.1.1 计算机系统的层次结构n计算机系统硬件计算机系统硬件/固件软件固件软件n从计算机语言的角度
4、,把计算机系统按功能划分从计算机语言的角度,把计算机系统按功能划分成成多级层次结构多级层次结构。每一层以一种语言为特征每一层以一种语言为特征计算机语言从低级向高级发展,计算机语言从低级向高级发展,高一级语言的语句高一级语言的语句相对于低一级语言来说功能更强,更便于应用,但相对于低一级语言来说功能更强,更便于应用,但又都以低级语言为基础。又都以低级语言为基础。L6:应用语言虚拟机L5:高级语言虚拟机L4:汇编语言虚拟机L3:操作系统虚拟机L2:机器语言(传统机器级)L1:微程序机器级软件硬/固件 本级的机器语言是指本级的机器语言是指微指令集微指令集。微程序一般是。微程序一般是直接由直接由硬件解释
5、实现硬件解释实现的,的,因此工作于该级的程序员因此工作于该级的程序员实际上是计算机系统的设实际上是计算机系统的设计人员。计人员。1.1.1 计算机系统的层次结构L6:应用语言虚拟机L5:高级语言虚拟机L4:汇编语言虚拟机L3:操作系统虚拟机L2:机器语言(传统机器级)L1:微程序机器级软件硬/固件 本级机器语言是本级机器语言是指指令集令集。由微程序解释指。由微程序解释指令集又称作仿真。可以令集又称作仿真。可以通过仿真在一台机器上通过仿真在一台机器上实现多种指令集。实现多种指令集。也可以没有微程序机也可以没有微程序机器级,如器级,如RISCRISC处理器的处理器的指令集全部用硬件直接指令集全部用
6、硬件直接实现以提高指令执行速实现以提高指令执行速度。度。1.1.1 计算机系统的层次结构L6:应用语言虚拟机L5:高级语言虚拟机L4:汇编语言虚拟机L3:操作系统虚拟机L2:机器语言(传统机器级)L1:微程序机器级软件硬/固件 提供传统机器所没有提供传统机器所没有的的基本操作和数据结构基本操作和数据结构,和传统机器的指令集一起和传统机器的指令集一起提供给更高层次的提供给更高层次的虚拟机虚拟机使用,称为系统功能调用、使用,称为系统功能调用、系统参数。系统参数。1.1.1 计算机系统的层次结构L6:应用语言虚拟机L5:高级语言虚拟机L4:汇编语言虚拟机L3:操作系统虚拟机L2:机器语言(传统机器级
7、)L1:微程序机器级软件硬/固件 本级的机器语言是本级的机器语言是汇编语言。用汇编语言汇编语言。用汇编语言编写的程序,首先编写的程序,首先翻译翻译成第成第3 3级和第级和第2 2级语言,级语言,然后再由相应的机器执然后再由相应的机器执行。通常的第行。通常的第1 1、2 2和和3 3级级是用是用解释解释方法实现的,方法实现的,而第而第4 4级或更高级则级或更高级则经常经常是用翻译方法实现。是用翻译方法实现。1.1.1 计算机系统的层次结构L6:应用语言虚拟机L5:高级语言虚拟机L4:汇编语言虚拟机L3:操作系统虚拟机L2:机器语言(传统机器级)L1:微程序机器级软件硬/固件 这一级的机器语言是这
8、一级的机器语言是各种高级语言各种高级语言。用这些。用这些语言所编写的程序一般语言所编写的程序一般是由称为编译程序的是由称为编译程序的翻翻译程序译程序翻译到第翻译到第4 4级或第级或第3 3级上,个别的高级语言级上,个别的高级语言也用解释的方法实现,也用解释的方法实现,如绝大多数如绝大多数BASICBASIC语言系语言系统。统。1.1.1 计算机系统的层次结构L6:应用语言虚拟机L5:高级语言虚拟机L4:汇编语言虚拟机L3:操作系统虚拟机L2:机器语言(传统机器级)L1:微程序机器级软件硬/固件 这一级是为满足某种这一级是为满足某种特殊用途而专门设计的,特殊用途而专门设计的,因此这一级的语言就是
9、因此这一级的语言就是各种面向问题的应用语各种面向问题的应用语言。例如可以设计专门言。例如可以设计专门用于人工智能、教育、用于人工智能、教育、行政管理、计算机设计行政管理、计算机设计等方面的虚拟机。等方面的虚拟机。1.1.1 计算机系统的层次结构n虚拟机:由软件实现的机器,以区别于由硬件虚拟机:由软件实现的机器,以区别于由硬件/固件实现的物理机器。固件实现的物理机器。n语言实现的两种基本技术:语言实现的两种基本技术:翻译:先把翻译:先把N+1N+1级程序全部变换成级程序全部变换成N N级程序后,再级程序后,再去执行新产生的去执行新产生的N N级程序,在执行过程中级程序,在执行过程中N+1N+1级
10、程级程序不再被访问。序不再被访问。解释:每当一条解释:每当一条N+1N+1级指令被译码后,就直接去执级指令被译码后,就直接去执行一串等效的行一串等效的N N级指令,然后再去取下一条级指令,然后再去取下一条N+1N+1级级的指令,依此重复进行。的指令,依此重复进行。解释执行比翻译花的时间多,但存储空间占用较少解释执行比翻译花的时间多,但存储空间占用较少。1.1.1 计算机系统的层次结构1 1、计算机系统结构概念的提出、计算机系统结构概念的提出n6464年年AmdahlAmdahl提出提出:程序员所看到的计算机的属性,即概程序员所看到的计算机的属性,即概念性结构与功能特性。念性结构与功能特性。n分
11、析:分析:(1)按照计算机系统的多级层次结构,不同级程序员所)按照计算机系统的多级层次结构,不同级程序员所看到的同一计算机系统具有不同的属性。看到的同一计算机系统具有不同的属性。(2)不同计算机系统从传统机器级或汇编语言程序员角)不同计算机系统从传统机器级或汇编语言程序员角度看,具有不同属性,但从高级语言程序员角度看,几乎度看,具有不同属性,但从高级语言程序员角度看,几乎没差别,例如没差别,例如C语言程序员。也就是说,传统机器级所存在语言程序员。也就是说,传统机器级所存在的差别对于高级语言程序员来讲是的差别对于高级语言程序员来讲是“看不见看不见”的,此即的,此即“透明性透明性”。1.1.2 计
12、算机系统结构的定义2 2、透明性:在计算机技术中,对这种本来是存、透明性:在计算机技术中,对这种本来是存在的事物或属性,但从某种角度看又好象不在的事物或属性,但从某种角度看又好象不存在的概念称为透明性。存在的概念称为透明性。3 3、计算机系统结构科学定义:机器语言程序员、计算机系统结构科学定义:机器语言程序员或编译程序编写者所看到的计算机的属性,或编译程序编写者所看到的计算机的属性,即概念性结构与功能特性。即概念性结构与功能特性。4 4、计算机系统结构的实质:确定、计算机系统结构的实质:确定 计算机系统中计算机系统中软硬件的交界面,界面之上是软件实现的功软硬件的交界面,界面之上是软件实现的功能
13、,界面之下是硬件和固件实现的功能。能,界面之下是硬件和固件实现的功能。1.1.2 计算机系统结构的定义1、计算机组成:计算机系统结构的逻辑实现n包含物理机器级中的数据流和控制流的组成以及逻包含物理机器级中的数据流和控制流的组成以及逻辑设计等。辑设计等。n着眼于:物理机器级内各事件的排序方式与控制方着眼于:物理机器级内各事件的排序方式与控制方式、各部件的功能以及各部件之间的联系。式、各部件的功能以及各部件之间的联系。2、计算机实现:计算机组成的物理实现n包括处理机、主存等部件的物理结构,器件的集成包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号度和速度,模
14、块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。传输,电源、冷却及整机装配技术等。n着眼于:器件技术(起主导作用)、微组装技术。着眼于:器件技术(起主导作用)、微组装技术。1.1.3 计算机组成和计算机实现3、计算机系统结构、组成与实现各自包含不同、计算机系统结构、组成与实现各自包含不同的内容,但又有紧密的关系。的内容,但又有紧密的关系。n一种体系结构可以有多种组成;一种体系结构可以有多种组成;n一种组成可以有多种物理实现。一种组成可以有多种物理实现。计算机系统结构、计算机组成、计算机计算机系统结构、计算机组成、计算机实现的界限模糊。实现的界限模糊。1.1.3 计算机组成和计
15、算机实现n概念举例概念举例确定指令系统中是否有乘法指令属于计算确定指令系统中是否有乘法指令属于计算机系统结构的内容;机系统结构的内容;乘法指令是用乘法器实现还是用加法器经乘法指令是用乘法器实现还是用加法器经多步操作来实现属于计算机组成;多步操作来实现属于计算机组成;乘法器、加法器的物理实现,如器件的选乘法器、加法器的物理实现,如器件的选定及所用的微组装技术等属于计算机实现。定及所用的微组装技术等属于计算机实现。1.1.3 计算机组成和计算机实现一、冯氏分类法1、用系统的最大并行度对计算机进行分类。、用系统的最大并行度对计算机进行分类。2 2、最大并行度:计算机系统在单位时间内能够、最大并行度:
16、计算机系统在单位时间内能够处理的最大的二进制位数。处理的最大的二进制位数。3 3、按冯氏分类法可得出四类不同处理方法的计、按冯氏分类法可得出四类不同处理方法的计算机系统结构算机系统结构:n字串位串字串位串 WSBSn字并位串字并位串 WPBS n字串位并字串位并 WSBP n字并位并字并位并 WPBP1.1.4 计算机系统结构的分类二、Flynn分类法按“流”分类1 1、指令流:机器执行的指令序列。、指令流:机器执行的指令序列。2 2、数据流:由指令流调用的数据序列,包括输入数据和、数据流:由指令流调用的数据序列,包括输入数据和中间结果。中间结果。3 3、多倍性:在系统最受限制的元件上同时处于
17、同一执行、多倍性:在系统最受限制的元件上同时处于同一执行阶段的指令或数据的最大可能个数。阶段的指令或数据的最大可能个数。4 4、按照指令流和数据流的不同组织方式,分为以下四类:、按照指令流和数据流的不同组织方式,分为以下四类:n单指令流单数据流单指令流单数据流 SISD SISD n单指令流多数据流单指令流多数据流 SIMD SIMDn多指令流单数据流多指令流单数据流 MISD MISD n多指令流多数据流多指令流多数据流 MIMD MIMD1.1.4 计算机系统结构的分类n典型的典型的SISD机器:传统的顺序计算机机器:传统的顺序计算机nSISD机器结构机器结构 CU:控制部件:控制部件 I
18、S:指令流:指令流 PU:处理部件:处理部件 DS:数据流:数据流 MU:存储部件:存储部件CUMUPUI/OCSDSIS单指令流单数据流SISDn典型典型SIMDSIMD机器:阵列处理机机器:阵列处理机n在同一控制部件控制下,多个处理部件同时执行在同一控制部件控制下,多个处理部件同时执行同一条指令所规定的操作,分别对各自的数据进同一条指令所规定的操作,分别对各自的数据进行处理。行处理。单指令流多数据流SIMDn多个处理器,对同一数据流进行处理多个处理器,对同一数据流进行处理nMISD只是一种认为的划分,目前没有实际的机只是一种认为的划分,目前没有实际的机器。器。多指令流单数据流MISDn多机
19、系统:多个处理器系统或多计算机系统,多机系统:多个处理器系统或多计算机系统,每个处理机可以独立执行指令和处理数据。一每个处理机可以独立执行指令和处理数据。一般并行计算机大多采用这种结构。般并行计算机大多采用这种结构。多指令流多数据流MIMD1 1、以经常性事件为重点(大概率事件优先原则)、以经常性事件为重点(大概率事件优先原则)n对经常发生的情况采用优化方法的原则,以得对经常发生的情况采用优化方法的原则,以得到更多的总体上的改进。到更多的总体上的改进。n优化是指分配更多的资源、达到更高的性能或优化是指分配更多的资源、达到更高的性能或 者分配更多的电能等。者分配更多的电能等。1.2 计算机系统的
20、设计1.2.1 计算机系统设计的定量原理2 2、AmdahlAmdahl定律定律n加速比(加速比(SpSp)定义:)定义:nAmdahlAmdahl定律:加快某部件执行速度所能获得的定律:加快某部件执行速度所能获得的系统性能加速比,受限于该部件的执行时间占系统性能加速比,受限于该部件的执行时间占系统中总执行时间的百分比。系统中总执行时间的百分比。加速比系统性能改进后系统性能改进前总执行时间改进前总执行时间改进后 1.2.1 计算机系统设计的定量原理n加速比的大小与两个因素有关加速比的大小与两个因素有关可改进比例(可改进比例(f fe e):在改进前的系统中,可):在改进前的系统中,可改进部分的
21、执行时间在总的执行时间中所占改进部分的执行时间在总的执行时间中所占的比例。它总是小于等于的比例。它总是小于等于1 1。例如:一个需运行例如:一个需运行6060秒的程序中有秒的程序中有2020秒的运算可以秒的运算可以加速,那么这个比例就是加速,那么这个比例就是20/6020/60。1.2.1 计算机系统设计的定量原理n加速比的大小与两个因素有关加速比的大小与两个因素有关部件加速比(部件加速比(r re e):可改进部分改进以后性):可改进部分改进以后性能提高的倍数。它是改进前所需的执行时间能提高的倍数。它是改进前所需的执行时间与改进后执行时间的比。一般情况下部件加与改进后执行时间的比。一般情况下
22、部件加速比是大于速比是大于1 1的。的。例如:若系统改进后,可改进部分的执行时间是例如:若系统改进后,可改进部分的执行时间是2 2秒,秒,而改进前其执行时间为而改进前其执行时间为5 5秒,则部件加速比为秒,则部件加速比为5/25/2。1.2.1 计算机系统设计的定量原理设:改进前系统总执行时间为设:改进前系统总执行时间为To;改进后系统总执行时间为改进后系统总执行时间为Te则:则:1.2.1 计算机系统设计的定量原理系统加速比为改进前与改进后总执行时间之比系统加速比为改进前与改进后总执行时间之比Sp ToTe(1fe)+fere11.2.1 计算机系统设计的定量原理例例1 1 将计算机系统中某
23、一功能的处理速度提高到将计算机系统中某一功能的处理速度提高到原来的原来的2020倍,但该功能的处理时间仅占整个倍,但该功能的处理时间仅占整个系统运行时间的系统运行时间的40%40%,则采用此提高性能的,则采用此提高性能的方法后,能使整个系统的性能提高多少?方法后,能使整个系统的性能提高多少?(1.6131.613)1.2.1 计算机系统设计的定量原理例例2 2 某计算机系统采用浮点运算部件后,使浮点某计算机系统采用浮点运算部件后,使浮点运算速度提高到原来的运算速度提高到原来的2020倍,而系统运行某倍,而系统运行某一程序的整体性能提高到原来的一程序的整体性能提高到原来的5 5倍,试计倍,试计算
24、该程序中浮点操作所占的比例。算该程序中浮点操作所占的比例。(84.2%84.2%)1.2.1 计算机系统设计的定量原理nAmdahlAmdahl定律性能增加递减规则:定律性能增加递减规则:如果仅仅对计算机中的一部分做性能改进,如果仅仅对计算机中的一部分做性能改进,则改进越多,系统获得的效果越小。则改进越多,系统获得的效果越小。n推论:推论:如果只针对整个任务的一部分进行优化,那如果只针对整个任务的一部分进行优化,那么所获得的加速比不大于么所获得的加速比不大于1/(1-f1/(1-fe e)。1.2.1 计算机系统设计的定量原理3 3、CPUCPU性能公式性能公式n执行一个程序所需的执行一个程序
25、所需的CPUCPU时间时间 CPUCPU时间时间=执行程序所需的时钟周期数执行程序所需的时钟周期数时钟周期时间时钟周期时间 其中,时钟周期时间是系统时钟频率的倒数。其中,时钟周期时间是系统时钟频率的倒数。n每条指令执行的平均时钟周期数每条指令执行的平均时钟周期数CPICPI CPI=CPI=执行程序所需的时钟周期数执行程序所需的时钟周期数ICIC 其中,其中,ICIC是所执行的指令条数是所执行的指令条数n程序执行的程序执行的CPUCPU时间可以写成时间可以写成 CPUCPU时间时间=IC CPI =IC CPI 时钟周期时间时钟周期时间 1.2.1 计算机系统设计的定量原理nCPUCPU的性能
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工学 计算机系统 结构 基本知识 教学 提纲
限制150内