您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 高级计算机体系结构(精编)
1一.高级计算机体系结构基础•计算机的基本概念•什么是计算机•计算机的基本组成•衡量计算机的因素•影响计算机设计的主要因素及其发展趋势•摩尔定律和工艺的发展•计算机市场发展趋势•多核结构的发展趋势•计算机重要指标•性能、成本、功耗•我国计算机发展历史2现在的计算机中为什么用二进制?计算机是由电子元器件构成的,二进制最易实现。•冯诺亿曼结构:数据和程序都在存储器中,CPU从内存中取指令和数据进行运算并把结果也放到内存中外存储器内存储器输出役备输入设备运算器控制器外存储器输入设备输出设备控制器运算器数据线控制线CPU内存3用最少的指令描述一件事情--算法,编译提高‘芯’跳的速度--主频每拍做更多的事情--体系结构计算机怎样才能跑得快4第一代到第四代•第一代:电子管计算机(1946-1958)•每秒几千到几万次运算•冯诺依曼结构•第二代:晶体管计算机(1958-1964)•每秒几十万次•高级程序语言出现:FORTRAN、COBOL等•IBM7094、CDC1604等•第三代:中小规模集成电路计算机(1964-1975)•每秒几百万次•操作系统逐步成熟、小型机出现•IBM360、PDP11、VAX11•第四代:大规模集成电路计算机(1975-)•每秒亿次以上•微处理器出现:Intel,AMD......5摩尔定律到达尺寸极限后怎么办?•会不会有新材料及新器件技术取代CMOS?•硅的平台不可能被取代,但硅平台上生长的器件会不断改进•摩尔定律的进一步延续的技术:纳米线技术、碳纳米管技术•一个普及性的技术必须可以工业大规模可制备•其他任何技术都不具备这个特点•成为成熟的产业,从高向广发展•飞机满天飞了,汽车还遍地跑6摩尔定律与系统结构•第一阶段:晶体管不够用•计算机由很多独立芯片构成•计算机结构受限于晶体管数目不够•第二阶段:存储器速度太慢•集成度提高,微处理器蓬勃发展•存储容量指数增加,但访存速度增加缓慢•Cache占多达80%的芯片面积•第三阶段:晶体管越来越多而“难”用•设计验证能力提高与晶体管增加形成剪刀差•功耗问题突出、连线成为主要矛盾•不得已向多核发展•第四阶段:够用就行?7CPU发展趋势:高性能,低成本•高性能多核CPU正从向千亿次量级向万亿次量级迈进•片上运算能力的增加使带宽问题日益突出•结合一定领域需求的XPU开始盛行,处理器核加向量处理器(VPU)和图形处理器(GPU)等属于这类结构。•继功耗问题之后,带宽问题导致第二次结构变革•功耗问题导致多核结构,带宽问题导致专用核结构•为了提高性能而牺牲微处理器的通用性和可编程性8Question?1多核技术出现原因?22个1G的多核Vs2G的单核处理器3编程模型:SIMDvsMIMD?4虚拟化技术的意义?9主频障碍•过去主频的提高一半靠摩尔定律,一半靠结构优化•如P3是10级流水线,P4是20级流水线•流水线很难再细分•随着晶体管尺寸的缩小,连线延迟成为主要延迟•局部线延迟不变(变短了,但也变细了)•全局的连线延迟还会不断变长(芯片面积不变)•高主频的复杂设计正在终结•强调:局部化、流水化、异步、自定时10复杂度障碍•晶体管数目的指数增加与设计队伍的增加形成剪刀差•设计能力、验证能力•晶体管越来越难用•串扰问题、片上漂移、可制造性设计•处理器结构经历了简单、复杂、简单、复杂的螺旋上升过程•最早期的处理器结构由于工艺技术的限制,不可能做得很复杂,一般都是串行执行•随着流水线、动态调度、CACHE、向量机技术等技术的发展,处理器结构变得复杂,如IBM360系列的机器以及Cray的向量机•RISC技术的提出使处理器结构得到一次较大的简化•随着多发射乱序执行技术的实现,RISC结构越来越复杂,Intel和HP研制的EPIC结构没有从根本上对处理器结构进行简化11未来可能会流行的CPU结构•多核+向量处理•典型:Larrabee(16wayALU/512bit)•向量的位宽:64/128/256/512/1024……•众核:同构的基于分片的多核(tilebased)•典型:Tile64•处理器核的个数:64/128512/1024•带有协处理器的异构多核•典型:CELL•通用处理器+专用的协处理器(GPU、流处理器)12摩尔定律发展过程中碰到的“墙”•1980’s:存储墙•CPU变快,内存只变大不变快•80%的晶体管用于片内高速缓存等•2000’s:功耗墙•一Intel放弃4GHz的PentiumIV为标志,终止复杂的高主频设计•多核设计成为主流•未来还有可能碰到的“墙”•带宽墙:“茶壶里倒饺子”(性能和带宽1-2FLOPS:1BPS的关系)•成本墙:太贵了做不起(目前只剩Intel、IBM、TSMC三家)或用不起(10nm以后单片成本反而增加)•应用墙:16核以上的CPU卖给谁?量大面广的应用需要多少核?•如果克服不了上述“墙”,通用CPU的摩尔定律到2015年即告终止13带宽障碍•摩尔定律的新定义•片内处理器核的个数指数增长•封装引脚增加缓慢•每个核使用的引脚数指数下降•茶壶里倒饺子•高速信号传输缓解带宽瓶颈•目前引脚上的信号频率已经达到GHz•很快会出现板上频率高于片内频率的现象14提高计算机的性能:减少指令数和提高IPC•结构提高计算机性能的常用方法和原则•加快经常性事件的速度•局部性原理•利用并行性归一化时间计算方法•当负载中各程序的执行百分比不同时,计算加权执行时间是一种方法,另一种方法是“归一化”。就是说,将执行时间对一台参考机器进行归一化,然后取其归一化执行时间的平均值。SPEC测试程序套件采用了该方法。•平均归一化时间既可表示为算术平均值,也可表示为几何平均值。15影响CPU性能的因素Inst.CountCPIClockRateProgramXCompilerX(X)ISAXXOrganizationXXTechnologyXCycleSecondsnInstructioCyclesogramnsInstructioogramSecondsCPUTimePrPr•性能的最本质定义•完成一个任务(如后天的天气预报)所需的时间•以指令为基本单位16CountnInstructioCPITimeCycleICPITimeCycletimeCPU1jnjjCountnInstructioIFwhereFCPICPI1jjnjjjCPI及IPC•在指令系统确定后,系统结构设计者的主要目标就是降低CPI或提高IPC•平均CPI“AverageCyclesperInstruction”•CPI=(CPUTime*ClockRate)/InstructionCount=Cycles/InstructionCount•InstructionFrequency17开发并行性•指令级并行•是过去的20年里体系结构设计者提升性能的主要途径•时间并行性:指令流水线•空间并行性:SuperScalar(Out-of-Order)和EPIC(编译器优化)•进一步挖掘指令级并行的空间不大•数据级并行:SIMD•向量机•SSE多媒体指令•作为指令级并行的有效补充,在高性能计算及流媒体等领域发挥重要作用,在专用处理器中应用较多•线程级并行•线程级并行大量存在于Internet应用•多核处理器•多线程处理器•是目前的热点18低功耗优化方法•优化对象•动态功耗优化•静态功耗优化•优化层次•系统级•算法级•逻辑级•电路级•版图及工艺级1.在三台不同指令系统的计算机上运行同一程序P时,A机需要执行1.0*108条指令,B机需要执行2.0*108条指令,C机需要执行4.0*108条指令,但实际执行时间都是10秒,请分别计算这三台机器在实行程序P时的实际运行速度,以MIPS为单位。这三台计算机在运行程序P时,哪台性能最高?为什么?2.如果要给标量处理器增加向量运算部件,并且假定向量模式的运算速度是标量模式的8倍,这里把向量模式所占的百分比时间称作向量化百分比。a)画出一张图来表示加速比和向量化百分比的关系,X轴为向量化百分比,Y轴为加速比。b)向量化百分比为多少时,加速比能达到2?当加速比达到2时,向量模式占了运算运行时间的百分之多少?向量化百分比为多少时,加速比能达到最大加速比的一半?c)假设程序的向量化百分比为70%。如果需要继续提升处理器的性能,一种方法是增加硬件成本将向量部件的速度提高一倍,另外一种方法是通过改进编译器来提高向量模式的应用范围,那么需要提升多少向量化百分比才能得到与向量部件运算速度提高一倍得到相同的性能?你推荐哪一种设计方案?3.假设有一个代表典型应用的基准测试程序。一款不包含浮点部件的处理器(可以通过整数指令的模拟来执行浮点指令)运行该基准程序的运行速度是120MIPS,在该处理器上增加浮点协处理器后运行该基准程序的运行速度是80MIPS。下面给出了一些参数:I-基准测试中整数指令的数目,F-基准测试中浮点指令的数目,Y-模拟一条浮点指令需要的整数指令的数目,W-无浮点协处理器时基准程序的运行时间,B-有浮点协处理器时基准程序的运行时间。a)用上面的参数符号表示出两种配置处理器的MIPS值。b)在没有协处理器的配置下,假定F=8*106,Y=50,W=4秒,求I的值。c)在上题的条件下,求B的值。d)在包含协处理器的配置下,系统的MFLOPS是多少?e)你的同事想要购买这种协处理器来提高性能,而该配置下MIPS降低了,请问他的决策正确吗?解释你的观点5.对某处理器进行功耗测试,得到如下数据:时钟不翻转,电压1.2V时,电流为500mA;时钟频率为1GHz,电压1.2V时,电流为2500mA。请计算此处理器的静态功耗以及500MHz下的总功耗。1.解:A为10MIPS,B为20MIPS,C为40MIPS。三台机器实际性能相同。2.解:加速比y与向量化比例x之间的关系是:y=1/((1-x)+x/8)=1/(1-7x/8)……(A)(2)在式(A)中令y=2,可解得x=4/7≈57.14%。此时向量模式运行时间占总时间比例是((4/7)/8)/(3/7+((4/7)/8))=1/7=14.29%(3)硬件方法,整体加速比为1/(1-0.7*(1-1/16))=2.91软件方法,设相同加速比下向量化比例为x,即1/(1-7x/8)=2.91,x=0.75所以推荐软件方法。3.解:(1)MIPSEMUL=(I+F×Y)/(W×106);MIPSFPU=(I+F)/(B×106)(2)120=(I+8×106×50)/(4×106)=I=80×106(3)80=(80×106+8×106)/(B×106)=B=1.1(4)MFLOPS=F/((B-((W*I)/(I+F*Y)))×106)≈18.46(5)决策正确,因为执行时间缩短了,这才是关键标准。5.解:1.1V下静态功耗1.1*1.1/(1.05/0.5)=0.576W1.1V下1GHZ时动态功耗为1.1*2.5-0.576=2.174W1.1V下0.5GHZ功耗功耗为2.174*0.5/1=1.087W1.1V下0.5GHZ总功耗为1.087+0.576=1.663W2021二.二进制与逻辑电路•计算机中数的表示•CMOS门电路及工艺•CMOS组合逻辑与时序逻辑•CMOS电路延迟•从Verilog到GDSII•其它“0”和“1”表示方法22计算机中数的表示•二进制•最容易逻辑实现•自然界中的二值系统较多•“1”和“0”的表示•用电压的高低表示,半导体工艺,CMOS•用磁通量的有无表示,超导体工艺•用能级的高低表示,量子计算机•用基因序列表示,A,G,C,T,DNA计算机,非二进制?23定点数的表示(1)•原码:A=an-1an-2…...a1a0表示•最高位an-1为符号位,0表示正,1表示负。•其它位an-2…...a1a0表示数值。•原码的问题:加减法效率低,两个“0”•补码•本质是取模运算,如-2%12=10•最高位an-1为符号位,0表示正,1表示负。•A=an-1an-2…...
本文标题:高级计算机体系结构(精编)
链接地址:https://www.777doc.com/doc-4399488 .html