《软件应用器件对系统结构的影响.ppt》由会员分享,可在线阅读,更多相关《软件应用器件对系统结构的影响.ppt(43页珍藏版)》请在三一办公上搜索。
1、4 软件、应用、器件对系统结构的影响,软件对系统结构的影响应用系统对系统结构的影响 器件发展对系统结构的影响,软件的可移植性,是指软件不用修改或只需经少量加工就能由一台机器搬到另一台机器上运行。统一高级语言 采用系列机思想 模拟与仿真,统一高级语言,采用与硬件平台无关的高级程序设计语言标准如FORTRAN、COBOL等不同用途的高级语言有不同的语法结构和语义人们对语言的基本结构看法不一即使统一种高级语言在各个不同厂家的机器上也不能完全通用即使同一种高级语言在不同厂家的机器上也不能完全通用在不同平台上高级语言有所扩充。如:Visual C+、VB等受习惯势力阻扰,不愿放弃惯用的语言,开放系统,是
2、指一种独立于厂商,且遵循有关国际标准而建立的,具有系统可移植性、交互操作性,从而能允许用户自主选择具体实现技术和多厂商产品渠道的系统集成技术的系统。PCI、USB、TCP/IPLinux、Java、CORBA、Web Services等,系列机,在软、硬件界面上确定好一种系统结构,之后软件设计者按此设计软件,硬件设计者根据机器速度、性能、价格的不同,选择不同的器件,在用不同的硬件技术和组成、实现技术,研制并提供不同档次的机器。IBM/360,370:115,125,135,145,158,168等DEC PDP-11 VAX-11/780,750Intel 80 x86系列:8086,8028
3、6,80386,PI,P2,P3,P4IBM P系列Unix服务器,p690,p670,p660,p665等,相同的指令系统,采用顺序执行、重迭、流水和并行处理方式相同的32位字长,数据通路宽度为8位、16位、32位、64位。如PC系列机有:不同主频:4.7MHz,500MHz,1GHz,2.4GHz,3GHz,不同扩展:Pentium、Pentium Pro、Pentium MMX、Pentium SSE、Pentium SSE2不同Cache:Pentium、Celeron、Xeon不同字长:8位、16位、32位、64位,系列机的性能价格比,低档,性能,性能,中档,高档,价格,性能/价格,
4、采用系列机的优缺点,优点:采用系列机之间软件兼容,可移植性好插件、接口等相互兼容;便于实现机间通信;便于维修、培训;有利于提高产量、降低成本缺点:采用新技术困难-如Itanium(32bit64bit)限制了计算机系统结构的发展,软件兼容,向上(下)兼容:指按某一档机器编制的软件,不加修改就能运行于比它高(低)档的机器上。向前(后)兼容:在按某一时期投入市场的该型号机器上编制的软件,不加修改就能运行宇在它之前(后)投入市场的机器上。兼容机:把不同公司厂家生产的具有同一系统结构的计算机。,系列机发展新机型的判断方法,举例1,增加字符数据类型和指令,支持事务处理判断:不改变原有系统结构,满足软件向
5、后兼容。结论:可采用为增强中断处理功能,将中断分级4级改为5级,并重新调整中响应的优先次序判断:终端系统属系统结构,改变结论:不可采用,举例2,在CPU和主存之间增设Cache,克服因主存访问速度过低而造成性能瓶颈判断:是否增设Cache,不属于结论:可采用为解决计算误差大,将机器中浮点数的下溢处理方法由原来的恒置“1”法,改为ROM存放下溢处理结果的查表舍入法判断:不属于结论:可采用,举例3,为增加寻址灵活性和减少平均指令字长,将原等长操作码改为3类不同码长的扩展操作码,将原操作数寻址方式由操作码指明改为如VAX-11那种寻址方式位字段指明判断:改变系统结构结论:不可采用把原0号通用寄存器改
6、为堆栈指示器判断:属于系统结构结论:不可采用,举例4,将CPU与主存间的数据通路宽度由16位扩展成32位,加快主机内部信息的传送判断:不属于结论:可采用为减少公用总线的使用冲突,将单总线改为双总线判断:不属于结论:可采用,模拟 Simulation,用机器语言程序实现软件移植的方法。进行模拟工作的A机称为宿主机(Host Machine)被模拟的B机称为虚拟机(Virtual Machine)所有为各种模拟所编制的解释程序通称为模拟程序;编制非常复杂和费时 只适合于移植运行时间短,使用次数少,而且在时间关系上没有约束和限制的软件;,用模拟方法实现应用软件的移植,仿真 Emulation,用微程
7、序直接解释另一种机器指令的方法。进行仿真工作的A机称为宿主机被仿真的B机称为目标机(Target Machine)所有为仿真所编制的解释微程序通称为仿真微程序;,用仿真方法实现应用软件的移植,仿真与模拟的区别,解释用的语言不同 解释程序所存的位置不同:仿真存在控制寄存器,模拟存在主存中 说明:模拟适用于运行时间不长、使用次数不多的程序 仿真提高速度,但难以仿真存储系统、I/O系统,只能适用于系统结构差异不大的机器间;在开发系统中,两种方法共用,模拟与仿真的比较,三种方法的比较,采用统一高级语言最好,是努力的目标系列机是暂时性方法,也是目前最好的方法仿真的速度低,芯片设计的负担重目前用于同一系列
8、机内的兼容1/101/2的芯片面积用于仿真发展异种机通过网络互联是实现软件移植的新途径,虚拟计算系统,虚拟计算系统能够隔离具体的硬件系统结构和软件系统之间的依赖关系,实现透明化的可伸缩计算系统架构。透明、高效、可定制地使用计算资源,实现灵活构建、按需计算的理念。VMware、Xen、Paralles、VirtualBox、Hyper-V,etc,面向目标代码的编译,一种机器的目标代码重新编译到另一种机器的目标代码两种方法:动态代码转换例1:IBM的DAISY(Dynamically Architected Instruction Set from Yorktown)处理机,开放源代码,实现IB
9、M的VLIW处理器与X86处理器之间的二进制兼容,以及与PowerPC、S/390、Java虚拟机等IBM国的所有处理器之间的二进制兼容例2:Transmeta公司的Crusoe处理机,“代码映射软件”,Code Morphing Software,可以保证Transmeta公司的VLIW处理器Crusoe能够与X86处理器之间实现二进制兼容。已经大量应用于笔记本计算机,其功耗很低静态重编译:正在研究过程中,难度很大,还没有商品化,五种方法比较,方法一:采用统一高级语言是努力的目标,但不能解决已有目标代码的兼容。方法二:目前最有效的方法,但限制了计算机系统结构的发展。方法三:仿真的速度低,芯片
10、设计的负担重。用于同一系列机内的兼容,1/101/2的芯片面积用于仿真。方法四:采用虚拟计算机比方法三稍好,但仍然不能完全解决已有目标代码的兼容问题方法五:目标代码的静态重编译是最有效的方法,但实现的难度很大。,计算机的四类应用,数据处理(Data Processing)可计算性 信息处理(Information Processing)数据的可管理性知识处理(Knowledge Processing)数据的可组织性、可理解性智能处理(Intelligence Processing)可智能性,应用系统对系统结构的影响,应用需求高结构化数值计算:气象模型,流体流动,有限元分析非结构化的数值计算:蒙
11、特卡洛模拟,稀疏矩阵。实时多因素问题:语音识别,图象处理,计算机视觉海量存储和输入输出密集问题:数据库,事务处理。图形学和设计系统:计算机辅助设计。三个时期通用计算机:主要是通用科学计算专用计算机:科学计算、事务处理、实时控制高性能通用机:满足多种需求目前又开始多种专用处理机的研制,应用系统对系统结构的影响,两个发展趋势维持价格不变,利用VLSI技术等,提高性能性能基本不变,价格迅速下降一般先推出中间机型,然后再分别向高端和低端两个方向发展三种设计思想最高性能价格比:商用机。主要发展方向最高性能:国家安全需要,科技发展需要 例如:银河计算机、神州计算机、天河计算机最低价格:家用学习机等,应用系
12、统对系统结构的影响,应用要求:高速度、大容量、大吞吐率应用场合:大、中、小、巨、微型机大、巨型机趋势:研究新的系统结构、组成技术,并推广,向通用结构发展;中、小、微型机趋势:保持价格基本不变,提高性能;保持性能基本不变,降低价格。从系统结构的观点来看,各型(档)计算机的性能随时间下移,实质上就是在低档(型)机上引用,甚至照搬高档(型)机的系统结构和组成。,各型机器价格性能随时间变化的趋势,价格和应用对系统结构的影响,要全面评价一个系统结构,既要考虑性能又要考虑价格。当两个系统的功能类似或性能接近时,性价比的比较才有意义。改进系统结构应使性能或价格产生较小变化,以获得更好的性价比。改进系统结构可
13、提高系统的绝对性能,并使价格的增加比较合理。针对特殊负载(特殊应用)的专用计算机系统结构往往具有高效率,但缺乏通用性,市场面小。通用系统结构可适应各种应用场合,市场面大,但效率低。设计的出发点是使专用系统结构的高效率与通用系统结构的广泛市场成均势。,器件发展对系统结构的影响,器件发展过程:通用片现场片半用户片用户片器件的发展推动系统结构与组成技术的发展,同样系统结构的发展要求器件不断发展。新结构的使用,取决于器件发展能否提供可能器件性能/价格提高,使新结构、组成下移速度更快器件的发展,推动算法、语言的发展器件的发展,改变了逻辑设计方法。,器件种类,通用片:逻辑关系确定大批量生产,如:CPU、存
14、储器、寄存器现场片:可以一次或多次改写逻辑关系如:PLD、PAL、PROM、EPROM、FPGA半用户片:门阵列片等标准的门电路,前几到工序已经完成;根据用户需要确定最终连线。用户片:各种专用芯片需要单独设计和生产。,器件发展的特点,器件集成度迅速提高目前水平:每个芯片有1012个晶体管单芯片内可以做大于10GB存储器,单芯片内可以集成多个CPU全部Cache每4年左右提高一个数量级,摩尔定理问题?如何利用器件集成度的提高,不断改进计算机系统的性能:例如,有更多指令并行执行,采用更深的流水线,集成更多的Cache等,提高器件速度的空间不大提高主频的空间已经很小。微处理器主频已达6GHz,门延迟
15、小于0.01ns信号延时:30万公里/秒/21.5mm/0.01nsPentium芯片面积600mm2,即25mm25mm当半导体工艺进入0.18m以后,线延时已经超过了门延迟提高微处理器速度的途径之一:依靠更加精密的布线技术还有少量余地开发新的器件,生物芯片和光电子器件等,微处理器主频预测,根据微处理器主频近28年的增长数据,运用增长极限存在的增长曲线模型计算出微处理器主频的增长极限约为7250MHz,将在2020年左右基本达到,在2040年完全达到。,提高微处理器性能的途径之二提高指令级并行度有很大潜力几个SPEC2000基准测试程序,在理想处理器中的指令级并行度:编译器gcc(C语言83
16、589行):58.4最小化布尔函数espresso(C语言13500):62.6量子化学积分求导fpppp(fortran2718行):75.2原子反应堆模拟器dodnc(fortran5334行):118.7向量化网格生成tomcatv(fortran1950行):150.1,价格直线下降CPU芯片的价格每年要下降80%可靠性越来越高芯片可靠性达到108小时,连续使用1万年以上,综述,软件是促使计算机系统结构发展的最重要的因素没有软件,机器就不能运行,所以为了能方便地使用现有软件,就必须考虑系统结构的设计软件最重要应用需求是促使计算机系统结构发展的最根本的动力机器是给人用的,我们追求更快更好
17、,机器就要做得更快更好需求最根本器件是促使计算机系统结构发展最活跃的因素没有器件就产不出电脑,器件的每一次升级就带来计算机系统结构的改进器件最活跃,改进算法的影响,在多个层次上,算法影响着系统结构,例如:快速乘法、除法、开平方等的实现:记分板算法、Tomasulo算法提高指令级并行性消除名字相关、数据相关、控制相关的算法有些问题,如果算法上有突破,不需要高性能的系统结构,而在普通系统上就能得到解决。许多算法还有改进的余地,通过算法的研究能够大幅度提高系统的性能。系统结构设计者要研究算法,应该研究一系列算法,使所有同类问题都能很好解决。,微处理器的发展,计算机性能提高的几个阶段20世纪70年代末
18、之前,大型机和小型机,计算机性能每年提高25%30%20世纪80年代初,出现微处理机依靠集成电路技术,性能每年提高35%20世纪80年中期,出现RISC技术、高级语言和操作系统等,性能每年提高50%20世纪90年代,先进系统结构对微处理器性能的贡献是单纯技术进步的5倍计算机性能:摩尔定理?计算机系统的设计者们要不断创新,微处理器发展的途径,指令级并行显式并行计算线程级并行单片多处理器,CISC:Complex Instruction Set Computer 复杂指令系统计算机RISC:Reduced Instruction Set Computer 精简指令系统计算机EPIC:Explicitly Parallel Instruction Computing 显示并行指令计算VLIW:Very Long Instruction Word 超长指令字MT:Multi-Threading 多线程HT:Hyper Threading 超线程SMT:Simultaneous MultiThreading同时多线程CMP:Chip MultiProcessor单片多处理器MCP:Multi-Core Processor 多内核处理器,