《计算机体系结构-浙江大学课件.ppt》由会员分享,提供在线免费全文阅读可下载,此文档格式为ppt,更多相关《计算机体系结构-浙江大学课件.ppt》文档请在天天文库搜索。
1、计算机体系结构学科发展简介石教英浙江大学计算机学院计算机系统研究所2004年12月目录一、计算机体系结构学科发展回顾1.计算机性能高速发展及其原因2.计算机的分类3.计算机设计的任务4.技术发展趋向二、指令级并行性开发技术1.RISC与CISC2.流水线技术3.指令级并行性技术三、指令多发射技术1.指令多发射技术概述2.超标量处理器3.超长指令字处理器4.多发射处理器的技术难点四、Cache技术1.为什么要引入Cache2.为什么引入Cache能提高计算机性能?3.Cache技术的发展五、多处理器技术 1. 并行计算机体系结构分类2. 集中共享存储器型多处理计算机3. 分布式存储器型多处理器计算机4. 并行处理的难点六、我国计算机体系结构研究进展 一、计算机体系结构学科发展回顾Computer Architecture定义应用机器语言的程序员为了能正确编写时序无关的程序所必须了解的。
2、计算机的结构。简单讲:计算机体系结构是一门设计计算机的学科,包括计算机的指令系统设计,结构设计,实现技术,以及与系统软件操作系统和编译器相关的技术。1、计算机性能高速发展及其原因1946年第一台通用电子计算机ENIAS诞生至今仅56年——每秒5000次运算加法计算机技术以惊人速度发展,并将继续高速发展1980年百万美元机器的性能比不上今年1CPI的作用:CPI数越小,CP。省略部分。 instruction word)根据指令发射机制,即调度、组织可同时发射指令的机制,也可分为两类:动态多发射机制,即由硬件在程序执行过程中调度静态多发射机制,即由编译器在程序编译过程中调度 2.超标量处理器 超标量处理器流水线操作超标量处理器的特点 在一个周期里能发射可变数量的指令,通常为1~8条指令/周期同时发射的指令按规定搭配,不能自由搭配,即有限制:如同时发射的指令必须是独立的,即无数据竞争,以及满足。
3、访存次数规定等等。采用静态调度(compiler完成)和/或动态调度(硬件完成)方法确定可同时发射的指令 3.超长指令字处理器(VLIW) VLIW处理器特点一次发射一条超长指令,其中包含7个操作,而不像超标量处理器那样一次发射多条指令在超长指令当中多个操作按规定搭配顺序排列,即指令类型不能任意搭配,操作顺序不能任意颠倒VLIW究竟有多长? 以一个拥有多个功能单元的VLIW处理器为例:设7个功能单元可支持:2个整数操作、2个FP操作、2个存储器访问操作和1个转移操作,这样这条含7个操作的VLIW的功能相当于7条指令,为支持每一功能单元正常工作,应分配每一功能单元相应的数据域;一般每个数据域为16~24位这一VLIW长度为:16 bits×7 = 112 bits 或为: 24 bits×7 = 168 bits 比较:一个拥有7个功能单元的超标量处理器,一次发射7条指令,总长度为32 bi。
4、ts×7=224 bits 超长指令字的组装由编译器完成,即由编译器作静态调度,选择无相关性指令按搭配顺序填入超长指令字为充分发挥VLIW处理器功能单元的作用,必须要有足够多的可并行执行指令提供给VLIW,编译器必须采用功能更强的全局调度技术 4.多发射处理器的技术难点 程序固有指令级并行性有限是多发射处理器的本质困难,需要的可并行执行的指令数大致等于功能单元数乘以流水线级数。多发射处理器硬件数量多、速度快,且复杂性高,从而成本高。 超标量处理器的特殊困难发射逻辑复杂且高速动态调度硬件极其复杂超长指令字处理器的特殊困难 对编译器的要求高 VLIW系列机二进制代码兼容困难 四、Cache技术Cache—一种小容量的高速缓冲存储器Cache 在计算机中的位置1、为什么要引入Cache?首先看一下CPU芯片速度与内存储器DRAM芯片速度的差别有多大CPU与DRAM速度差意味着什么? 说明单纯地改。
5、善CPU的设计,一味追求提高CPU的速度,并不能提高计算机整机的性能,因为高速CPU的性能被低速的存储器访问所抵销。为了提高计算机整机性能,必须消除两者性能差,或者仅可能缩小两者性能差。 解决办法 在高速CPU与低速Memory之间引入一个小容量的高速缓冲存储器(Cache),Cache速度与CPU速度之差(不足1个数量级)远远小于CPU与DRAM速度差(3个数量级~4个数量级),通过将存储器分级的方法来缓解这一巨大的速度差,提高计算机的性能。 2、为什么引入Cache能提高计算机性能? 问: 既然用作Cache的SRAM芯片的速度远远高于用作主存储器的DRAM芯片,那么为什么主存储器不用SRAM芯片来实现?答案: SRAM的价格远高于DRAM,而且主存储器的容量大,采用高速SRAM使成本急剧上升,因此从性能/价格综合考虑只能采用小容量的Cache。 问: 小容量的Cache能否满足程序存。
6、取指令和数据的需求?答案:计算机设计定量原理中有一条局部性原理告诉我们:程序总是倾向于重用那些刚刚用过的数据和指令,这是计算机程序非常重要的性质。局部性原理的另一种表述:程序90%的执行时间是花在10%的代码上。局部性原理告诉我们:可以根据程序最近访问的数据和指令来预测程序将要调用的数据和指令,且这一预测正确度是比较高的。所以小容量的Cache能满足程序存取数据和指令的需求 3. Cache技术的发展 采用多级Cache1980年代的微处理器大多没有片上Cache,只有片外Cache2001年的微处理器大多都有2级片上Cache,再加上一级片外Cache增加Cache容量1980年代的片外Cache通常只有几十KB2001年的微处理器三级Cache的容量可达16MB采用各种优化技术来提高Cache性能,包括减少失配造成的代价减少失配率减少命中时间五、多处理器技术单处理器计算机性能是否已接近。
7、其极限? 然而从1985起到2000,这一段正是单处理器计算机性能突飞猛进的时代单处理器计算机至少在未来5年仍将以目前速度发展多处理器计算机将越来越重要的理由 微处理器已主宰单处理器计算机技术,因此为了提高单处理器计算机性能而将多个微处理器连接起来就成为很自然的选择现在还不清楚使计算机体系结构不断创新的指令级并行技术能否继续无限地发展下去曾经是并行机发展障碍的软件有了新的发展和进展,主要是在服务器和嵌入式系统方面为多处理器计算机发展带来曙光 1.并行计算机体系结构分类 Flynn在1966年提出的计算机分类方法,即按指令流和数据流进行计算机分类的方法仍适用至今 单指令流,单数据流(SISD)—单处理器计算机单指令流,多数据流(SIMD)—矢量计算机多指令流,单数据流(MISD)—市场上无此类计算机多指令流,多数据流(MIMD)—通用多处理器并行计算机,是广泛应用的多处理器并行计算机体系结构。
8、 MIMD多处理器计算机分类可按处理器数目,存储器组织以及互连网络的策略来分类 按存储器组织进行分类的两种多处理器计算机 :集中共享存储器体系结构 分布式存储器体系结构 2.集中共享存储器型多处理器计算机基本结构 此类计算机适用于处理器数目相对较少的场合,对于只有几个、十几个处理器,有可能共享一个主存储器,以及采用总线实现处理器和主存的互连对于含有二、三十个处理器的机器需用多总线,甚至用交换器才能满足存储器带宽的要求 集中共享存储器型多处理器计算机只有一个主存储器,对所有处理器都是对称的,访问存储器的时间都是均等的,所以这种体系结构又称为对称(共享存储器)处理器(SMP)集中共享存储器型多处理器是目前最成功的多处理器计算机 3.分布式存储器型多处理器计算机 基本结构 此类计算机适用于处理器相对较多的场合,可以是上百个、上千个、甚至数千个之多。此类计算机要求互连网络的带宽较高,通常采用交换机或多维网格实现处理器之间的直接互连。分布式存储器型体系结构的最大缺点是处理器之间的数据通信变得非常复杂(一致性问题),并且延时较长。 4.并行处理的难点 程序固有并行性不足,导致并行计算机很难达到理想的加速比 处理器之间通信代价高(即延时长),同样将导致加速比下降 六、我国计算机体系结构研究进展 过去重视多处理器并行计算机,即高性能计算机的研制,如银河系列超级计算机,以及不对外公布的军用超级计算机,曙光服务器运行速度已达万亿次/秒前不久对外宣布的“龙芯”研制成功的消息表明我国有能力研制高性能微处理器。龙芯相当于Intel 1997推出的PentiumⅡ 谢 谢。