计算机体系结构基础.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《计算机体系结构基础.ppt》由会员分享,可在线阅读,更多相关《计算机体系结构基础.ppt(60页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Computer System ArchitectureComputer System Architecture 第1章 计算机系统结构的基本概念张云春张云春云南大学软件学院(Source:张晨曦计算机体系结构)1Computer System ArchitectureComputer System Architecture1.1 引言1.2 计算机系统结构的概念1.3 定量分析技术1.4 计算机系统结构的发展1.5 计算机系统结构中并行性的发展2Computer System Architecture第一台通用电子计算机诞生于1946年 计算机技术的飞速发展得益于两个方面 计算机制造技术的发
2、展 计算机系统结构的创新经历了4个发展过程 31.1 1.1 引引 言言Computer System ArchitectureComputer System Architecture时 间原 因每年的性能增长19461946年起的年起的2525年年 两种因素都起着主要的作用两种因素都起着主要的作用 25%25%2020世纪世纪7070年代末年代末8080年代初年代初 大规模集成电路和微处理器大规模集成电路和微处理器出现出现,以集成电路为代表的制以集成电路为代表的制造技术的发展造技术的发展 约约35%35%2020世纪世纪8080年代中开年代中开始始 RISCRISC结构的出现,系统结构不断结
3、构的出现,系统结构不断更新和变革,制造技术不断发展更新和变革,制造技术不断发展50%50%以上以上维持了约维持了约1616年年 20022002年以来年以来 功耗问题(已经很大)功耗问题(已经很大);可以进一步有效开发的指令级并可以进一步有效开发的指令级并行性已经很少行性已经很少;存储器访问速度的提高缓慢存储器访问速度的提高缓慢 约约20%20%41.1 1.1 引引 言言Computer System Architecture系系统结构的重大构的重大转折:折:从从单纯依靠指令依靠指令级并行并行转向开向开发线程程级并行和数据并行和数据级并行。并行。计算机系算机系统结构在构在计算机的算机的发展中
4、有着极其重要的作用。展中有着极其重要的作用。51.1 1.1 引引 言言Computer System Architecture计算机系统硬件/固件软件计算机语言从低级向高级发展 高一级语言的语句相对于低一级语言来说功能更强,更便于应用,但又都以低级语言为基础。从计算机语言的角度,把计算机系统按功能划分成多级层次结构。每一层以一种语言为特征 61.2 1.2 计算机系统结构的概念计算机系统结构的概念1.2.1 计算机系统的层次结构软软 件件硬件或固件硬件或固件微指令由硬件直接执行由微指令程序解释机器指令一般用机器语言程序解释作业控制语句汇编语言程序经汇编程序翻译成机器语言程序高级语言程序经编译
5、程序翻译成汇编语言(或是某种中间语言程序,或是机器语言程序)应用语言程序经应用程序包翻译成高级语言程序7Computer System Architecture1.2 1.2 计算机系算机系统结构的概念构的概念 虚拟机:由软件实现的机器 语言实现的两种基本技术翻译:先把N+1级程序全部转换成N级程序后,再去执行新产生的N级程序,在执行过程中N+1级程序不再被访问。解释:每当一条N+1级指令被译码后,就直接去执行一串等效的N级指令,然后再去取下一条N+1级的指令,依此重复进行。区别:p是否生成目标代码。p解释执行比编译后再执行所花的时间多,但占用的存储空间较少。8Computer System
6、Architecture1.2 1.2 计算机系算机系统结构的概念构的概念计算机系统结构的经典定义程序员的角度所看到的计算机系统的属性,即概念性概念性结构构与功能特性功能特性。(C.M.Amdahl,1964)按照计算机系统的多级层次结构,不同级程序员所看到的计算机具有不同的属性。透明性透明性在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。91.2.2 计算机系统结构的定义Computer System Architecture艺术和和结构构有何不同?有何不同?10Computer System Architecture1.2 1.2 计算机系算机系统结
7、构的概念构的概念广广义的系统结构定义:指令集指令集结构、构、组成、硬件成、硬件(计算机设计的3个方面)对于通用寄存器型机器通用寄存器型机器来说,这些属性主要是指:指令系统 包括机器指令的操作类型和格式、指令间的排序和控制机构等。数据表示 硬件能直接识别和处理的数据类型。寻址规则 包括最小寻址单元、寻址方式及其表示。11Computer System Architecture1.2 1.2 计算机系算机系统结构的概念构的概念寄存器定义(包括各种寄存器的定义、数量和使用方式)中断系统(中断的类型和中断响应硬件的功能等)机器工作状态的定义和切换(如管态和目态等)存储系统(主存容量、程序员可用的最大存
8、储容量等)信息保护(包括信息保护方式和硬件对信息保护的支持)I/O结构包括I/O连结方式、处理机/存储器与I/O设备之间数据传送的方式和格式以及I/O操作的状态等12Computer System Architecture1.2 1.2 计算机系算机系统结构的概念构的概念计算机系统结构概念的实质:确定确定计算机系算机系统中中软、硬件的界面、硬件的界面界面之上是界面之上是软件件实现的功能的功能界面之下是硬件和固件界面之下是硬件和固件实现的功能的功能131.2.3 计算机组成和计算机实现1.计算机系统结构:计算机系统的软、硬件的界面即机器语言程序员所看到的传统机器级所具有的属性。Computer
9、System Architecture1.2 1.2 计算机系算机系统结构的概念构的概念2.计算机算机组成成:计算机系统结构的逻辑实现包含物理机器包含物理机器级中的数据流和控制流的中的数据流和控制流的组成以及成以及 逻辑设计等。等。着眼于:物理机器着眼于:物理机器级内各事件的排序方式与控制内各事件的排序方式与控制 方式、各部件的功能以及各部件之方式、各部件的功能以及各部件之间的的联系。系。3.计算机算机实现:计算机组成的物理物理实现包括包括处理机、主存等部件的物理理机、主存等部件的物理结构,器件的集构,器件的集 成度和速度,模成度和速度,模块、插件、底板的划分与、插件、底板的划分与连接,接,信
10、号信号传输,电源、冷却及整机装配技源、冷却及整机装配技术等。等。着眼于:器件技着眼于:器件技术(起主(起主导作用)、微作用)、微组装技装技术。14Computer System Architecture1.2 1.2 计算机系算机系统结构的概念构的概念 一种体系一种体系结构可以有多种构可以有多种组成。成。一种一种组成可以有多种物理成可以有多种物理实现。4.系列机由同一厂家生由同一厂家生产的具有相同系的具有相同系统结构、但构、但具有不同具有不同组成和成和实现的一系列不同型号的的一系列不同型号的计算机。算机。例如,IBM公司的IBM 370系列,Intel公司的x86系列等。15Computer
11、System Architecture1.2 1.2 计算机系算机系统结构的概念构的概念常见的计算机系统结构分类法有两种:1.冯氏分氏分类法法p用系用系统的最大并行度的最大并行度对计算机算机进行分行分类。p最大并行度:最大并行度:计算机系算机系统在在单位位时间内能内能够处理的理的最大的二最大的二进制位数。制位数。用平面直角坐标系中的一个点代表一个计算机系统,其横坐标表示字宽(n位),纵坐标表示一次能同时处理的字数(m 字)。mn 就表示了其最大并行度。161.2.4 计算机系统结构的分类Computer System Architecture1.2 1.2 计算机系算机系统结构的概念构的概念1
12、.Flynn分分类法法 p按照指令流和数据流的多倍性按照指令流和数据流的多倍性进行分行分类。p指令流:指令流:计算机算机执行的指令序列。行的指令序列。p数据流:数据流:由指令流由指令流调用的数据序列。用的数据序列。p多倍性:多倍性:在系在系统受限的部件上,同受限的部件上,同时处于同一于同一执行行阶段的指令或数据的最大数目段的指令或数据的最大数目17Computer System Architecture1.2 1.2 计算机系算机系统结构的概念构的概念Flynn分类法把计算机系统的结构分为4类:单指令流单数据流(SISD)单指令流多数据流(SIMD)多指令流单数据流(MISD)多指令流多数据流
13、(MIMD)4类计算机的基本结构IS:指令流,DS:数据流,CS:控制流,CU:控制部件,PU:处理部件,MM和SM:存储器。1819Computer System Architecture1.3 1.3 定量分析技定量分析技术4 4个个定量原理:定量原理:1.大概率事件大概率事件优先原先原则对经常常发生的情况采用生的情况采用优化方法的原化方法的原则进行行选择,以得到更多的,以得到更多的总体上的改体上的改进。优化化是指分配更多的是指分配更多的资源、达到更高的性源、达到更高的性能或者分配更多的能或者分配更多的电能等。能等。201.3.1 计算机系统设计的定量原理Computer System A
14、rchitecture1.3 1.3 定量分析技定量分析技术2.Amdahl定律定律 加快某部件加快某部件执行速度所能行速度所能获得的系得的系统性能性能加速比,受限于加速比,受限于该部件的部件的执行行时间占系占系统中中总执行行时间的百分比。的百分比。系统性能加速比:21加速比系统性能改进后系统性能改进前总执行时间改进前总执行时间改进后 Computer System Architecture1.3 1.3 定量分析技定量分析技术加速比依加速比依赖于两个因素于两个因素:可改可改进比例比例:在改在改进前的系前的系统中,可改中,可改进部分的部分的执行行时间在在总的的执行行时间中所占的比例。中所占的比
15、例。它它总是小于等于是小于等于1 1。例如:一个需运行60秒的程序中有20秒的运算可以加速,那么这个比例就是20/60。部件加速比部件加速比:可改可改进部分改部分改进以后性能提高的倍数。以后性能提高的倍数。它是改它是改进前所需的前所需的执行行时间与改与改进后后执行行时间的比。的比。一般情况下部件加速比是大于一般情况下部件加速比是大于1的。的。例如:若系统改进后,可改进部分的执行时间是2秒,而改进前其执行时间为5秒,则部件加速比为5/2。22Computer System Architecture1.3 1.3 定量分析技定量分析技术改进后程序的总执行时间改进后程序的总执行时间总执行时间改进后
16、不可改进部分的执行时间 可改进部分改进后的执行时间总执行时间改进后 (1可改进比例)总执行时间改进前 +(1 可改进比例)+总执行时间改进前 可改进比例部件加速比可改进比例总执行时间改进前部件加速比Computer System Architecture1.3 1.3 定量分析技定量分析技术系统加速比为改进前与改进后总执行时间之比24加速比 总执行时间改进前总执行时间改进后(1可改进比例)+可改进比例部件加速比1Computer System Architecture1.3 1.3 定量分析技定量分析技术解解 由由题可知,可改可知,可改进比例比例 =40%=0.4=40%=0.4,部件加速比部
17、件加速比 =20=20 根据根据AmdahlAmdahl定律可知:定律可知:采用此提高性能的方法后,能使整个系采用此提高性能的方法后,能使整个系统的性能提高到原的性能提高到原来的来的1.6131.613倍倍。25总加速比=10.6+0.420=1.613 例例1.1 1.1 将计算机系统中某一功能的处理速度提高到原来的将计算机系统中某一功能的处理速度提高到原来的2020倍,但该倍,但该功能的处理时间仅占整个系统运行时间的功能的处理时间仅占整个系统运行时间的40%40%,则采用此提高性能的方,则采用此提高性能的方法后,能使整个系统的性能提高多少?法后,能使整个系统的性能提高多少?Computer
18、 System Architecture1.3 1.3 定量分析技定量分析技术 例例1.2 1.2 某某计算机系算机系统采用浮点运算部件后,使浮点运算速采用浮点运算部件后,使浮点运算速度提高到原来的度提高到原来的2020倍,而系倍,而系统运行某一程序的整体性能提高到运行某一程序的整体性能提高到原来的原来的5 5倍,倍,试计算算该程序中浮点操作所占的比例。程序中浮点操作所占的比例。解解 由由题可知,部件加速比可知,部件加速比 =20=20,系,系统加速比加速比 =5=5 根据根据AmdahlAmdahl定律可知定律可知 由此可得:可改由此可得:可改进比例比例 =84.2%=84.2%即程序中浮点
19、操作所占的比例即程序中浮点操作所占的比例为84.2%84.2%。26Computer System Architecture1.3 1.3 定量分析技定量分析技术AmdahlAmdahl定律定律:一种性能改一种性能改进的的递减减规则如果如果仅仅对计算任算任务中的一部分做性能改中的一部分做性能改进,则改改进得越多,所得到的得越多,所得到的总体性能的提升就越有限。体性能的提升就越有限。重要推论:如果只如果只针对整个任整个任务的一部分的一部分进行改行改进和和优化,那么所化,那么所获得的加速比不超得的加速比不超过 1/1/(1 1可改可改进比例)比例)27Computer System Archite
20、cture1.3 1.3 定量分析技定量分析技术3.CPU性能公式性能公式p执行一个程序所需的行一个程序所需的CPUCPU时间CPUCPU时间=执行程序所需的行程序所需的时钟周期数周期数时钟周期周期时间 其中,时钟周期时间是系统时钟频率的倒数。p每条指令每条指令执行的平均行的平均时钟周期数周期数CPI(Cycles Per Instruction)CPI=CPI=执行程序所需的行程序所需的时钟周期数周期数ICIC IC:所执行的指令条数p程序程序执行的行的CPU时间可以写成可以写成 CPUCPU时间=IC CPIIC CPI 时钟周期周期时间 28Computer System Archite
21、cture1.3 1.3 定量分析技定量分析技术CPUCPU的性能取决于的性能取决于3个参数个参数时钟周期周期时间:取决于硬件取决于硬件实现技技术和和计算机算机组成。成。CPICPI:取决于取决于计算机算机组成和指令集成和指令集结构。构。ICIC:取决于指令集取决于指令集结构和构和编译技技术。对CPUCPU性能公式性能公式进行行进一步一步细化化 假假设:计算机系算机系统有有n n种指令;种指令;CPICPIi i :第第i i种指令的种指令的处理理时间;ICICi i :在程序中第在程序中第i i种指令出种指令出现的次数;的次数;则 CPUCPU时钟周期数周期数 =(CPI(CPIi i IC
22、 ICi i)29n ni i=1=1Computer System Architecture1.3 1.3 定量分析技定量分析技术CPUCPU时间=执行程序所需的行程序所需的时钟周期数周期数时钟周期周期时间 =(CPICPIi iICICi i)时钟周期周期时间CPICPI表表示示为CPI CPI=其中,其中,(IC(ICi i/IC/IC)反映了第反映了第i i种指令在程序中所占的比例。种指令在程序中所占的比例。30i i=1=1n n时钟周期数IC(CPIiICi)i=1nIC(CPIi )i=1nICiICComputer System Architecture1.3 1.3 定量分析
23、技定量分析技术例例1.3 1.3 考考虑条件分支指令的两种不同条件分支指令的两种不同设计方法:方法:(1 1)CPUCPUA A:通通过比比较指令指令设置条件置条件码,然后,然后测试条件条件码进行分支。行分支。(2 2)CPUCPUB B:在分支指令中包括比在分支指令中包括比较过程。程。在在这两种两种CPUCPU中,条件分支指令都占用中,条件分支指令都占用2 2个个时钟周期,而所有周期,而所有其他指令占用其他指令占用1 1个个时钟周期。周期。对于于CPUCPUA A,执行的指令中分支指令占行的指令中分支指令占20%20%;由于每条分支指令之前都需要有比;由于每条分支指令之前都需要有比较指令,因
24、此比指令,因此比较指令也指令也占占20%20%。由于。由于CPUCPUA A在分支在分支时不需要比不需要比较,因此,因此CPUCPUB B的的时钟周期周期时间是是CPUCPUA A的的1.251.25倍。倍。问:哪一个:哪一个CPUCPU更快?如果更快?如果CPUCPUB B的的时钟周期周期时间只是只是CPUCPUA A的的1.11.1倍,哪一个倍,哪一个CPUCPU更快呢?更快呢?31Computer System Architecture1.3 1.3 定量分析技定量分析技术 解解 我我们不考不考虑所有系所有系统问题,所以可用,所以可用CPUCPU性能公式。占用性能公式。占用2 2个个时钟
25、周期的分支指令占周期的分支指令占总指令的指令的20%20%,剩下的指令占用,剩下的指令占用1 1个个时钟周期。周期。所以所以 CPICPIA A=0.2 =0.2 2+0.80 2+0.80 1=1.2 1=1.2则CPUCPUA A性能性能为 总CPUCPU时间A A=IC=ICA A 1.2 1.2 时钟周期周期A A根据假根据假设,有,有 时钟周期周期B B=1.25 =1.25 时钟周期周期A A 在在CPUCPUB B中没有独立的比中没有独立的比较指令,所以指令,所以CPUCPUB B的程序量的程序量为CPUCPUA A的的80%80%,分支指令的比例,分支指令的比例为32Compu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机体系结构 基础
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内