2019独角兽企业重金招聘Python工程师标准>>>
CPU的工作原理浅析
一个完整的微型计算机系统包括硬件系统和软件系统两大部分。 计算机硬件是指组成一台计算机的各种物理装置,
它们是由各种实在的器件所组成,是计算机进行工作的物质基础。计算机硬件系统中最重要的组成部分是中央处理器(CPU ) 。
(一)CPU的基本概念和组成
中央处理器简称CPU(Central Processing Unit),它是计算机系统的核心,主要包括运算器和控制器两个部件。如果把计算机比作一个人,那么CPU就是心脏,其重要作用由此可见一斑。CPU的内部结构可以分为控制单元、逻辑单元和存储单元三大部分,三个部分相互协调,便可以进行分析,判断、运算并控制计算机各部分协调工作。 计算机发生的所有动作都是受CPU控制的。其中运算器主要完成各种算术运算(如加、减、乘、除)和逻辑运算( 如逻辑加、逻辑乘和非运算);
而控制器不具有运算功能,它只是读取各种指令,并对指令进行分析,作出相应的控制。通常,在CPU中还有若干个寄存器,它们可直接参与运算并存放运算的中间结果。我们常说的CPU都是X86系列及兼容CPU ,所谓X86指令集是美国Intel公司为其第一块16位CP U(i8086)专门开发的,美国IBM公司1981年推出的世界第一台PC机中的CPU— i8088(i8086 简化版)使用的也是X86指令,同时电脑中为提高浮点数据处理能力而增加的X87芯片系列数学协处理器则另外使用X87指令,以后就将X86指令集和X87指令集统称为X86指令集。虽然随着CPU技术的不断发展,Intel陆续研制出更新型的i80386、i80486直到今天的Pentium Ⅲ系列,但为了保证电脑能继续运行以往开发的各类应用程序以保护和继承丰富的软件资源,Intel公司所生产的所有CPU仍然继续使用X86指令集。
另外除Intel 公司之外,AMD和Cyrix等厂家也相继生产出能使用X86指令集的CPU,由于这些CPU能运行所有的为Inte l CPU所开发的各种软件,所以电脑业内人士就将这些CPU列为Intel的CPU兼容产品。由于Intel X86系列及其兼容CPU都使用X86指令集,就形成了今天庞大的X86系列及兼容CPU阵容。
(二)CPU主要技术参数
CPU品质的高低直接决定了一个计算机系统的档次,而 CPU的主要技术特性可以反映出CPU的大致 性能。
1、位、字节和字长
CPU可以同时处理的二进制数据的位数是其最重要的一个品质标志。人们通常所说的16位机、32位机就是指该微机中的CPU可以同时处理16位、32位的二进制数据。早期有代表性的IBM PC/XT、IBM PC/AT与286机是16位机,386机和486机是32位机,586机则是64位的高档微机。
CPU按照其处理信息的字长可以分为:八位微处理器、十六位微处理器、三十二位微处理器以及六十四位微处理器等。
位:在数字电路和电脑技术中采用二进制,代码只有“0”和“1”,其中无论是 “0”或是“1”在CPU中都是一“位”。
字节和字长:电脑技术中对CPU在单位时间内(同一时间)能一次处理的二进制数的位数叫字长。所以能处理字长为8位数据的CPU通常就叫8位的CPU。同理32位的CPU就能在单位时间内处理字长为32位的二进制数据。由于常用的英文字符用8位二进制就可以表示,所以通常就将8位称为一个字节。字节的长度是不固定的,对于不同的CPU、字长的长度也不一样。8位的CPU一次只能处理一个宇节,而32位的CPU一次就能处理4个宇节,同理字长为64位的CPU一次可以处理8个字节。
2、CPU外频
CPU外频也就是常见特性表中所列的CPU总线频率,是由主板为CPU提供的基准时钟频率,而CPU的工作主频则按倍频系数乘以外频而来。在Pentium时代, CPU的外频一般是60/66MHz,从Pentium II 350开始,CPU外频提高到1O0MHz。由于正常情况下CPU总线频率和内存总线频率相同,所以当CPU外频提高后,与内存之间的交换速度也相应得到了提高,对提高电脑整体运行速度影响较大。
3、前端总线(FSB)频率
前端总线也就是以前所说的CPU总线,由于在目前的各种主板上前端总线频率与内存总线频率相同,所以也是 CPU与内存以及L2
Cache(仅指Socket7主板)之间交换数据的工作时钟。由于数据传输最大带宽取决所同时传输的数据位宽度和传输频率,即数据带宽=(总线频率(数据宽度)/8。例如Intel公司的PⅡ333使用6 6MHz的前端总线,所以它与内存之间的数据交换带宽为528MB/s =(66×64)/8,而其PⅡ350则使用100MHz的前端总线,所以其数据交换峰值带宽为800MB/s=(100×64)/8。由此可见前端总线速率将影响电脑运行时CPU与内存、(L2 Cache)之间的数据交换速度,实际也就影响了电脑的整体运行速度。因此目前 Intel正开始将其P Ⅲ的前端总线频率从100MHz向133MHz过渡。 AMD公司新推出的K7虽然使用20 0MHz的前端总线频率,但有资料表明K7CPU内核与内存之间数据交换时钟仍然是100MHz,主频也是以100 MHz为基频倍频的。
4、CPU主频
CPU主频也叫工作频率,是CPU内核(整数和浮点运算器)电路的实际运行频率。在486 DX2CPU之前。CPU的主频与外频相等。从486DX2开始,基本上所有的CPU主频都等于“外频乘上倍频系数”了。CPU的主要技术特征 。主频是CPU内核运行时的时钟频率,主频的高低直接影响CPU的运算速度。我们知道仅Pentium就可以在一个时钟周期内执行两条运算指令,假如主频为100MHz的Pentium可以在1秒钟内执行2亿条指令,那么主频为200MHz的Pentium每秒钟就能执行4亿条指令,因此CPU主频越高,电脑运行速度就越快。需要说明的是Cyrix的CPU对主频这项指标是采用PR性能等级参数(Performance Rating)来标称的,表示此时CPU性能相当于Intel某主频CPU的性能。用PR参数标称的CPU实际运行时钟频率与标称主频并不一致。例如MⅡ-300的实际运行频率为233MHz(66×3.5),但PR参数主频标为300MHz,意思就是MⅡ-300相当于Intel的PⅡ-300。不过事实上也仅是MⅡ-300的Business Winston指标(整数性能)能与PⅡ-300相当而已。
5、L1和L2 Cache的容量和速率
L1和L2 Cache的容量和工作速率对提高电脑速度起关键作用,尤其是L2 Cache对提高运行2 D图形处理较多的商业软件速度有显著作用。
设置L2 Cache是486时代开始的,目的是弥补L1 Cache(一级高速缓存)容量的不足,以最大程度地减小主内存对CPU运行造成的延缓。
CPU的L2 Cache分芯片内部和外部两种。设在CPU芯片内的L2 Cache运行速度与主频相同,而采用PⅡ方式安装在CPU芯片外部的L2 Cache运行频率一般为主频的二分之一,因此其效率要比芯片内的L2 Cache要低,这就是赛扬只有128KB片内Cache但性能却几乎超过同主频PⅡ(有512KB但工作时钟为主频一半的片外L2Cache)的重要原因。
(三)CPU主要技术术语浅析
1、流水线技术
流水线(pipeline)是InteI首次在486芯片中开始使用的。流水线的工作方式就象工业生产上的装配流水线。在CPU中由5~6个不同功能的电路单元组成一条指令处理流水线,然后将一条X86指令分成5~6步后再由这些电路单元分别执行,这样就能实现在一个CPU时钟周期完成一条指令,因此提高CPU的运算速度。由于486CPU只有一条流水线,通过流水线中取指令、译码、产生地址、执行指令和数据写回五个电路单元分别同时执行那些已经分成五步的指令,因此实现了486CPU设计人员预期的在每个时钟周期中完成一条指令的目的(按笔者看法,CPU实际上应该是从第五个时钟周期才达到每周期能完成一条指令的处理速度)。到了Pentium时代、设计人员在CPU中设置了两条具有各自独立电路单元的流水线,因此这样CPU在工作时就可以通过这两条流水线来同时执行两条指令,因此在理论上可以实现在每一个时钟周期中完成两条指令的目的。
2、超流水线和超标量技术
超流水线是指某些CPU内部的流水线超过通常的5~6步以上,例如Pentium pro的流水线就长达14步。将流水线设计的步(级)数越多,其完成一条指令的速度越快,因此才能适应工作主频更高的CPU。超标量(supe rscalar)是指在 CPU中有一条以上的流水线,并且每时钟周期内可以完成一条以上的指令,这种设计就叫超标量技术。
3、乱序执行技术
乱序执行(out-of-orderexecution)是指CPU采用了允许将多条指令不按程序规定的顺序分开发送给各相应电路单元处理的技术。比方说程序某一段有7条指令,此时CPU将根据各单元电路的空闹状态和各指令能否提前执行的具体情况分析后,将能提前执行的指令立即发送给相应电路执行。当然在各单元不按规定顺序执行完指令后还必须由相应电路再将运算结果重新按原来程序指定的指令顺序排列后才能返回程序。这种将各条指令不按顺序拆散后执行的运行方式就叫乱序执行(也有叫错序执行)技术。采用乱序执行技术的目的是为了使CPU内部电路满负荷运转并相应提高了CPU的运行程序的速度。
4、分技预溯和推测执行技术
分枝预测(branch prediction)和推测执行(speculatlon execution)是CPU动态执行技术中的主要内容,动态执行是目前CPU主要采用的先进技术之一。采用分枝预测和动态执行的主要目的是为了提高CPU的运算速度。推测执行是依托于分枝预测基础上的,在分枝预测程序是否分枝后所进行的处理也就是推测执行。
5、指令特殊扩展技术
自最简单的计算机开始,指令序列便能取得运算对象,并对它们执行计算。对大多数计算机而言,这些指令同时只能执行一次计算。如需完成一些并行操作,就要连续执行多次计算。此类计算机采用的是“单指令单数据”(SISD)处理器。在介绍CPU性能中还经常提到“扩展指令”或“特殊扩展”一说,这都是指该CPU是否具有对X86指令集进行指令扩展而言。扩展指令中最早出现的是InteI公司自己的“MMX”,其次是AMD公司的“3D
Now!”,最后是最近的Pentium III中的“SSE”。MMX和SSE:MMX是英语“多媒体指令集”的缩写。共有57条指令,是Intel公司第一次对自1985 年就定型的
X86指令集进行的扩展。MMX主要用于增强CPU对多媒体信息的处理,提高CPU处理3D图形、视频和音频信息能力。但由于只对整数运算进行了优化而没有加强浮点方面的运算能力。所以在3D图形日趋广泛,因特网3D网页应用日趋增多的情况下,MMX已心有余而力不足了。MMX指令可对整数执行SIMD运算,比如-40、0、1、469或32766等等;SSE指令则增加了对浮点数的SIMD运算能力,比如-40.2337,1.4355或877343226.012等等。利用MMX和SSE,一条指令可对2个以上的数据流执行计算。就前面的例子来说,再也不必每秒执行529000条指令了,只需执行264600条即可。因为同样的指令可同时对左、右声道发生作用。显示时,每秒也不需要70778880条指令,只需23592960条,因为红、绿、蓝通道均可用相同的指令控制。
SSE:SSE是英语“因特网数据流单指令序列扩展/Internet Streaming SIMDExt ensions”的缩写。它是InteI公司首次应用于 Pentium III中的。实际就是原来传闻的MMX2以后来又叫KNI(Katmai NewInstruction), Katmai实际上也就是现在的Pentium III。SSE共有70条指令,不但涵括了原MMX和3DNow!指令集中的所有功能,而且特别加强了SIMD浮点处理能力,另外还专门针对目前因特网的日益发展,加强了CPU处理3D网页和其它音、象信息技术处理的能力。CPU具有特殊扩展指令集后还必须在应用程序的相应支持下才能发挥作用,因此,当目前最先进的PenthmIII 450和 Pentium II 450运行同样没有扩展指令支持的应用程序时,它们之间的速度区别并不大。
SSE除保持原有的MMX指令外,又新增了70条指令,在加快浮点运算的同时,也改善了内存的使用效率,使内存速度显得更快一些。对游戏性能的改善十分显著,按Intel的说法,SSE对下述几个领域的影响特别明显:3D几何运算及动画处理;图形处理(如Photoshop);视频编辑/压缩/解压(如MPEG和DVD);语音识别;以及声音压缩和合成等。
3D
NOW!:AMD公司开发的多媒体扩展指令集,共有27条指令,针对MMX指令集没有加强浮点处理能力的弱点,重点提高了AMD公司K6系列CPU对3D图形的处理能力,但由于指令有限,该指令集主要应用于3D游戏,而对其他商业图形应用处理支持不足。
(四) CPU的生产工艺及产品构架
1、CPU的生产工艺
表明CPU性能的参数中常有“工艺技术”一项,其中有“0.35um”或“0.25um”等。一般来说“工艺技术”中的数据越小表明CPU生产技术越先进。目前生产CPU主要采用CMOS技术。CMOS是英语“互补金属氧化物半导体”的缩写。采用这种技术生产CPU时过程中采用“光刀”加工各种电路和元器件,并采用金属铝沉淀在硅材料上后用 “光刀”刻成导线联接各元器件。现在光刻的精度一般用微米(um)表示,精度越高表示生产工艺越先进。因为精度越高则可以在同样体积上的硅材料上生产出更多的元件,所加工出的联接线也越细,这样生产出的CPU工作主频可以做得很高。正因为如此,在只能使用0.65u m工艺时生产的第一代Pentium CPU的工作主频只有60/66MHz,在随后生产工艺逐渐发展到0.35um、0.25um时、所以也相应生产出了工作主额高达266MHz的Pentium MMX和主频高达500MHz的Pentium II CPU。由于目前科学技术的限制,现在的CPU生产工艺只能达到0.25 um,因此Intel、AMD、 Cyrix以及其它公司正在向0.18um和铜导线(用金属铜沉淀在硅材料上代替原来的铝)技术努力,估计只要生产工艺达到0.18um后生产出主频为l000MHz的CPU就会是很平常的事了。
AMD为了跟Intel继续争夺下个世纪的微处理器发展权,已经跟摩托罗拉(Motorola)达成一项长达七年的技术合作协议。Motorola将把最新开发的铜导线工艺技术(Copper Interconnect) 授权给AMD。AMD准备在2000年之内,制造高达1000MHz(1GHz)的K7微处理器。CPU将向速度更快、64位结构方向前进。CPU的制作工艺将更加精细,将会由现在0.25微米向0.18微米过渡,到2000年中大部分CPU厂商都将采用0.18微米工艺,2001年之后,许多厂商都将转向0.13微米的铜制造工艺,制造工艺的提高,味着体积更小,集成度更高,耗电更少。铜技术的优势非常明显。主要表现在以下方面:铜的导电性能优于现在普遍应用的铝,而且铜的电阻小,发热量小,从而可以保证处理器在更大范围内的可靠性;采用0.13微米以下及铜工艺芯片制造技术将有效的提高芯片的工作频率;能减小现有管芯的体积。与传统的铝工艺技术相比,铜工艺制造芯片技术将有效地提高芯片的速度,减小芯片的面积,从发展来看铜工艺将最终取代铝工艺。各厂家所生产的每一种CPU都有名称(商标名)、代号(研制代号)和标志(专用图案)。其中Intel公司的早期产品以i80x86命名,即以前的286、386、486等,到Intel开发出第5代产品586时由于商标注册上的麻烦改为Pentium并同时为其注册中文商标名“奔腾”,由此也就有了后来的PentiumPr o(高能奔腾)、Pentium Ⅱ(奔腾2代)、PentiumⅢ(奔腾3代)以及Celeron(赛扬),目前名称并不能反映出同类型中CPU的规格,这点将从Intel正式推出前端总线为133MHz的PⅢ后开始改进,以后只要看见CPU的名称就可以了解这块CPU的大致技术特性。
另外厂家对每一种CPU包括同名但技术规格不同的产品都另有一个研制代号,例如Intel公司使用0.35和0.25工艺生产的PⅡ就各有一个代号分别为:Klamath和Destrutes。同时Itel每一种名称的CPU都有还一个专用商标图案作为标志。AMD和Cyrix公司的情况与Intel相近,它们的每一种CPU也都有一个名称、代号和标志,但都还没有正式的中文名称。
2、CPU的内部结构
当前我们使用的CPU内部结构实际可分为单总线和双总线两种结构,由于CPU内部结构特征决定CPU的封装形式和安装规范,所以在此作些简单的介绍。在Intel公司研制出Pentium Pro之前,各种486以上CPU,如经典Pentium内部由主处理器、数学协处理器、控制器、各种寄存器和L1 Cache组成。至今为止仍然有大量的CPU继续以这种内部结构模式进行生产,例如AMD的K6-2、Cyrix的MⅡ以及IDT-C6等CPU。从P6(Pen-tium Pr o的研制代号)起,Intel为进一步提高CPU与L2 Cache间的数据交换速度,将原来设置在电脑主板上的高速缓存控制电路和L2 Cache(二级高速缓存)采用在同一块硅材料上制作的方法集成到CPU芯片上,这样CPU内核与高速缓存之间的数据交换就无需经过外部总线而直接通过CPU内部的缓存总线进行,由于CPU内核与内存和CPU与高速缓存之间的数据交换通道分离而形成首创的P6双总线架构模式(见图1)。从Pentium Pro 的实际应用效果看这一技术措施非常成功,是CPU研制技术上的一次重大改进。由于P6双总线结构的优越性,因此凡是内部具有L2 Cache 和高速缓存控制器的CPU都由传统的单总线模式过渡到双总线模式,例如Intel公司的P Ⅱ、新赛扬和P Ⅲ;AMD公司的K6-Ⅲ和K7等。
3、CPU的构架和封装方式
CPU架构是按CPU的安装插座类型和规格确定的。目前常用的CPU按其安装插座规范可分为Socket x和Slotx两大架构。
其中Socket x架构CPU中又分Socket 7和Socket 370两种,分别使用321针的Socket 7和370针的Socket370插座进行安装。Socket 7和Socket 370插座在外形上非常相似尺寸也相同,但Socket 370插座上比Socket7多了一圈针插孔。在Slot x架构CPU中可分为Slot 1、Slot 2和Slot A三种,分别使用对应规格的Slot槽进行安装。其中Slot 1和Slot A都是242线插槽,但在机械和电气标准上都不相同,所以互不兼容。Slot2 是尺寸较大的插槽,专门用于安装P Ⅱ和P Ⅲ序列中的Xeon。Xeon是一种专用于工作组服务器上的CPU。
封装是CPU生产过程中的最后一道工序,封装是采用特定的材料将CPU芯片或CPU模块固化在其中以防损坏的保护措施,一般必须在封装后CPU才能交付用户使用。CPU的封装方式取决于CPU安装形式和器件集成设计,通常采用Socket插座进行安装的CPU只能使用PGA(栅格阵列)方式封装,而采用Slot x槽安装的CPU则全部采用SEC(单边接插盒)的形式封装。
目前采用PGA封装的CPU主要有Intel公司的赛扬,AMD的K6-2、K6-Ⅲ和Cyrix公司的MⅡ,以前赛扬曾采用SEC封装,现已逐渐全部改用PGA封装(见图4)。采用SEC封装的CPU有Intel的PⅡ、PⅢ和AMD公司的K7。其中Intel的Slot架构CPU实际上分别使用SEPP、SECC和SECC2三种单边接插盒进行封装。
以上CPU中虽然赛扬和K6-Ⅲ内部分别集成了128KB和256KB的L2 Cache和高速缓存控制器,但由于它们是采用在同一片硅材料上一次制造出CPU内核和L2 Cache、高速缓存控制器的方法制造,所以它们的体积较小并能采用PGA方式进行封装。不过赛扬采用PGA封装的主要原因是降低生产成本,而K6-Ⅲ采用PGA封装的主要原因则是因为Intel对其开发的Slot
1、Slot 2和Socket 370插座进行专利保护,所以A MD只能沿用Socket 7架构和采用PGA封装方式生产K6-Ⅲ。
目前Slot架构的CPU有两种制造方法,一是将分别制造的CPU内核芯片、高速Cache控制器芯片和 L2 Cache芯片安装在一块PCB(电路板)上,然后再安装上单边接插盒和风扇以完成CPU的最终制作。采用这类结构和方法制作的CPU有Intel的PⅡ、PⅢ和AMD的K7。二是将完整的CPU(内含CPU内核、高速Cache 控制器芯片和L2Cache芯片)芯片安装在电路板上,此时电路板纯粹只起Slot接口的安装作用。最后同样再安装单边接插盒和风扇也就形成完整的CPU。采用这种结构和方法制作的CPU只有Intel公司的部分赛扬。
Slot与Socket:CPU插槽简介
Slot1是Intel PⅡ等CPU同主板的接口方式,采用的是SEC(单边接触插槽)接口。
Slot2是近期才出现的专用于PⅡ服务器的一种CPU同主板的接口。
Socket7是目前Pentium、Pentuim MMX、AMD K6、Cyrix 6x86以及IDT的WinChip等处理器广泛使用的接口方式。
Super7是AMD公司提出的一种新的CPU接口,支持100MHz的总线频率和AGP技术,并与Socket7完全兼容。主要用于配合AMD的K6-2及最新推出的K6-3CPU。
Socket370是INTEL专为赛扬配备的具有370条针状引线(与Socket 7插座不兼容)的CPU插槽。
SlotA是AMD一种同Intel PⅡ在尺寸和结构上兼容的接口方式,与AMD推出的K7处理器配合。
奔腾IV处理器架构剖析
P4处理器硬件架构
这次正式零售版本的P4处理器全部为防静电袋单颗封装,产地是哥斯达黎加在处理器表面有大大的淡金黄“Pentium4”的蚀刻字样,处理器表面全部字体如下:
1.4GHz「Intel(R) Pentium(R) 4 1.4GHZ/256/400/1.7V SL4SG COSTA RICA
3039A662-0437 i(M)(c)"00 4039A633」
1.5GHz「Intel(R) Pentium(R) 4 1.5GHZ/256/400/1.7V SL4SH COSTA RICA
3038A605-0285 i(M)(c)"00 4039A506
P4处理器采用了Socket423接口,因此不能用在现有的PIII主板上,从实物图中我们
可以看出来,P4处理器内核的上方和外表面有一层金属板覆盖,主要是散热之用。整个处理器的尺寸要现在的PIII铜矿FCPGA封装的处理器大不少。
如果大家仔细观察一下P4处理器的表面金属散热片,就可以发现在其表面右下方有一个圆形小孔,通过向多家P4散热风扇生产厂商的询问,我们大致可以得到两类答案,一种说法是当使用者涂抹好散热膏,安装好散热风扇并开机运行之后,由于挤压作用和受热膨胀,部分的散热膏将进入处理器表面右下角这个小孔,在处理器内腔和散热片之间形成粘合作用,有助于更好的散热。另外一种说法是这个小孔在处理器运行的时候,有助于平衡处理器内腔和外部的气压,帮助热量从处理器向外对流。由于部分的散热膏含有银,铜等帮助散热的金属微粒,具有导电能力,让这种散热膏进入处理器内腔的后果不堪设想,因此P4处理器表面小孔的后一种解释比较有说服力,因此在使用含有金属微粒的散热膏时一定要注意涂抹的范围,不能让这种散热膏进入小孔。
技术前沿:芯片集成的未来趋势
整个有关如何在系统芯片(SoC)方案中集成知识产权(IP)模块的争论中,多数讨论都集中在IP的设计和传递机制上。很明显,IP是未来SoC设计的核心,但还必须考虑一个重要的问题基础硅芯片制造技术本身。
目前,多数的注意力都集中在选择单层多元而又成熟的CMOS技术做为SoC器件的传递机制。确实,CMOS技术近期仍将是主导技术。CMOS技术适用的范围不断改变,深亚微米技术和硅工艺设计以及封装技术的革新使器件密度达到了前所未有的高度。为在一块硅片(或封装单元)内实现一个电子系统所有功能的梦想提供新的机遇。
硅技术优化
在这一领域常问的一个关键问题是,硅芯片的工艺设计和开发过程是否有区别。在深亚微米技术的世界里,所有的方法最终都会融合成“标准”工艺,这些工艺的面市时间取决于关键的制造工具是否具备,特别是在光刻领域。
这种看法忽略了半导体技术发展的另一个关键因素如何选择为达到目标应用的关键功能所需的半导体技术。
考虑一个深亚微米CMOS晶体管设计时面临的选择会使我们对这一问题有较好的理解。从这幅复杂的图片中可以得到一个明显的结论。不可能在大驱动电流的情况下同时得到低的亚阈值漏电流。低的亚阈值漏电流(即晶体管关断时的电流消耗)对用电池供电的器件来说是至关重要的。以系统术语来说,这一电流直接与器件备用电流相关,因此也直接影响电池寿命。与此对比,对要求内部时钟速度优化的设计来说,驱动电流应尽可能高。因为对驱动深亚微米金属互连线的高金属负载来说,大驱动电流有内在的优点。
因此如何开发可以同时适用这两种类型应用的技术方案呢?LSI
Logic公司的(0.18μm)G12技术中采用了模块化处理以及严格针对两种不同应用的软件库。
结构设计时允许在同一工艺流程中制造两个晶体管(需要的话可在一个片芯上),其中一个在1.8V时具有极佳的性能,另一个性能稍差,但在1.8V时的亚阈值漏电流极小。在一个工艺中包括这两个晶体管,就解决了一个工艺流程中同时保证高性能和低漏电流的难题。
上面的例子很好地表明了如何根据最终应用的要求选择合适的技术。在构建完善的技术方面存在一整套的选择。大体上,人们可以预见完善的技术可以在单一芯片上集成DRAM、非易失存储器、混合信号甚至RF功能。然而,不能仅从技术层面上来考虑这一问题;关键是要以合理的成本提供具有竟争力的解决方案。
LSI Logic的G12技术的一个关键集成部分仍然是混合信号的集成。对混合信号来说,必须在工艺复杂性和集成方案性能做出明确的折衷。
LSI Logic解决这一问题的方法是采用一系列工艺模块,以针对LSI
Logic的目标市场提供具有合适性能特点的,而且价格具有竟争力的混合信号集成。
LSI Logic的G12
0.13μm(Leff)工艺中增加了两个混合信号晶体管,从而可以集成电源供电电压范围宽混合信号内核,在低至1.8V或2.5V的低电压下,净空和信号摆动问题减弱了,结果达到了较好的功率/性能平衡点。还可以支持针对机顶盒等应用中的全3.3V供电的高速度、高性能混合信号核心。
G12工艺中,混合信号模块中无源无件的精确度也增加了。有了改进的电阻技术以及优化金属/金属电容技术,设计者就可以实现高精度数据转换器和集成高阶滤波等数据处理功能。系统设计者会注意到板级外部器件的成本节约十分明显。
在两种情况下,混合信号和晶体管结构的取舍,都可以看到明显的成本和性能优势。然而,这并不意味着可以扩展到所有可能的技术集成。
有明确性能要求的一个例子是嵌入式DRAM领域的嵌入技术。在某些应用中,例如网络交换机,嵌入DRAM可使系统性能获得明显提高。其它领域,如公共通信中,系统制造商非常喜欢嵌入DRAM,因为可以避免由于PC DRAM产品寿命周期短的影响。
在传统数字CMOS工艺中嵌入DRAM并不是直接了当的。DRAM采用的叠层(或埋沟)电容器构造单元(通常用双层多元工艺实现)和高性能逻辑电路的结合带来了独特的具有挑战性的问题。这种情况下,成本和性能的平衡点是由采用的具体技术决定的,而非仅仅是对逻辑CMOS技术的优化扩展。
未来技术集成面临众多选择?
那么未来技术的发展方向到底如何?在半导体业,预测未来是一项危险的事情。如果从今天看,我们已经有了许多具有竞争力的技术方案。今天市场上我们已经有了嵌入闪存、嵌入DRAM、嵌入混合信号和嵌入FPGA的技术。
此外,我们也注意到一些针对此类竞争性技术集成的创新封装技术。例如,将闪存和数字CMOS电路封装在单一芯片内并不是显而易见的解决方案。闪速存储器使工艺复杂性大大增加,从而增加了单位芯片面积的成本。这一成本发生在整个芯片上,对像移动电话这样的应用,闪速存储器在包括基带处理及存储器的整个芯片上占的比例很小。因此在整个数字基带区域都要付出额外的成本。
嵌入技术的性能也在提高。0.18μm CMOSN沟道晶体管的ft大于60GHz,因此可以考虑集成IF甚至RF方案在数字CMOS工艺中。下一代技术中可能还会走得更远。
真正成功的集成工艺技术必须能以适当的价格提供某种系统级性能。这一不证自明的陈述表述了这样的事实,即集成本身不是追求的目的。
最大的挑战?
如果还有什么日益成为ASIC和SoC技术的发展障碍的话,那就是利用新技术开发此类器件的成本。
利用0.13μm工艺开发此类器件掩膜的成本一般会超过40万美元。对系统设计者、芯片设计室和芯片制造商来说,需要提供某些新的推动力。当然,人们会追求可以降低硅芯片掩膜制作成本的光刻解决方案,然而,物理定律是不能超越的,即使最好的芯片工程师也不行。这对SoC设备以及相关系统的设计意味着什么呢?
显然,有两个紧逼问题:其一是要求保证领先设计成功;第二是希望尽可能广泛应用硅器件。两种情况下,灵活性都是成功的关键。
嵌入FPGA提供了一个解决方案,至少可部分解决上述两个问题。在原型硅片生产后,将设计的一些器件做为可编程器件以提供灵活性来适应不断变化和发展的标准。这也为将设计中最困难的挑战性部分留给可编程逻辑来解决提供了可能性。
此外,硅产品可重编程或重配置的能力提供了将同一硅片利用到不同应用中去的机会。很明显,一些系统设计室会从中受益。
Cisco Systems公司工程部经理Bill Harris在FPGA’99会议上说:“当需要现场编程时我们宁愿不要大容量可编程器件,也不要在大块硬件旁边带上可编程器件。我们只要ASIC器件中装有FPGA内核。也就是说,通常我们需要的是固定硬件外的少量可重配置逻辑。”
结论
下一代技术的可能性有很多。成功的关键不仅依赖于工程师们决定怎样去做,在技术开发的针对性以及技术为系统设计师的实际设计提供的条件也起着关键的作用。十分清楚的是客户将继续需要高水平的集成和每功能成本更低的器件。
从各个方便来看,摩尔定律仍在起作用。系统设计师将不断挑战更新、密度更高的技术。深亚微米几何结构也使在单个器件内集成更多的功能成为可能,同时也对硅芯片设计者针对最终应用的设计提出了更大的挑战。
高度集成、高密度的SoC器件的多种变化之一就是尽可能扩展其功能和用途。嵌入FPGA为此类复杂器件的用途最大化提供了可行的解决方案。
片上系统是今天的技术并代表了ASIC设计的未来。深亚微米技术不断发展,使更加复杂的应用可以集成在单一硅芯片内,这样的激动时刻一定会来临的。(电子产品世界)
测试你的硬件:CPU篇
在一台电脑中,CPU应该属于个部件中的心脏部件,CPU的性能直接关系到我们在电脑中的所有操作,所以说检验一台电脑整体性能的好坏,首先要检测的就是CPU的性能。因为的在电脑中的所有操作,都要经过CPU的处理,速度越快的CPU越能在单位时间内处理更多的工作。
从总体测试角度来讲,在CPU的测试中主要测试的应该是CPU基本工作性能和CPU的超频能力两个部分。
一、基本性能测试
CPU的基本性能是在CPU的出厂频率(即为CPU所标注的频率)下进行测试,根据各种测试软件的不同,所进行的测试项目大致有:CPU的符点运算、CPU的整数运算、CPU的商业软件应用、CPU的稳定性、CPU的多媒体方面应用等许多项目的测试。在这里,我们根据测试软件的不同,来向大家介绍一下几个主要的测试项目。
首先要介绍的当然要算是鼎鼎大名的Winbench 99了,这是ZD所制作的一系列评测软件中的一款,可以说是最权威、也是最全面的评测软件,其它ZD系列的评测软件还有3D Winbench、Audio Winbench等等。在Winbench 99中,主要测的CPU数值有两个:一个是CPUmark 99,这项数值表明的是CPU的整数运算的能力;另一个是FPU Win Mark,它是CPU浮点运算的能力数值。这两项是CPU最直接测试结果,CPU的整数运算能力的应用主要表现在Windows等实际应用软件使用上面,而对于复杂的3D游戏,除了要有性能出众的显卡以外,最重要的,就是要看CPU的浮点能力了,否则就算有再好的显卡,也只会出现小马拉大车的情况。举个例子:有两台机器A和B,A的基本配置为赛扬450+Riva128显卡,B为K6-2 450+VooDooⅡ显卡,其它配置均基本相同。大家都知道,K6-2的整数运算是相当出众的,而浮点运算则一直是K6-2
CPU的弱点。在运行一般Windows软件时,两台机器同时启动,结果肯定是B电脑速度领先一步,但是在运行游戏时A电脑却明显表现出优势来。VooDooⅡ不用说大家也知道要比Riva 128高一个档次,但在640x480下进行QuakeⅢDemo001的测试,A电脑的分数为26,而使用VooDooⅡ的B电脑只有21。可见CPU的整数和浮点两个指标的区别了。
接下来向大家介绍的是另一个比较知名的软件SiSoft Sandra 2001
Standard(以下简称Sandra)。这是除了ZD的Bench系列以外的另一个比较权威的测试软件了。它可以显示你的机器中的所有性能指数,与CPU有关的测试为:CPUBenchmark和CPU Multi-Media Benchmark这两项。这两项测试,可以对当前的CPU测试结果提供其它的级别CPU的测试结果进行比较,从而判断当前CPU的性能。在CPU
Multi-Media Benchmark这项测试中是检测MMX、3D
Now!、SSE、SSE2等多媒体指令集的表现。至于Sandra所提供的比较数据,则是根据软件的版本的更新而改变,目前最新的版本即为:SiSoft
Sandra 2001 Standard。
还有一些其它软件,它们在一般的测试中使用的不是很多,比如:CPU
Stability是一款测试CPU稳定性的软件,还有专门测试PⅢCPU系列号等软件。
在以上测试中,都需要在一个干净的系统中进行基本条件要求Windows中只有一些基本必备的程序运行,而且在每次测试之前需要进行磁盘碎片整理,然后重起进行测试,这样才能保证测试数据的准确性。在Winbench的Startup
Manager中,把所有选项设为Disable即可关闭Windows启动时不必要的程序。
二、超频测试
一块CPU的超频性能也是CPU测试中的重要项目,即使是同一种型号的、同一批次的CPU它们的超频性能也不相同,所以必须进行仔细的超频测试,才能判断出一块CPU的实际超频性能如何。
CPU的外频、倍频、核心电压是CPU超频中的几个重要参数,CPU的实际频率=外频×倍频,而CPU的核心电压直接影响到CPU寿命,我们不建议大家来采用提高核心电压来超频。在目前的CPU中大都是在出厂时就把倍频锁死,因此,现在最简单的超频方法就是超外频了。在过去的主板上是通过主板上的跳线来实现改变外频的,现在的主板都是通过BIOS中的调节来进行要简单得多。
现在以一款超频性能比较强的赛扬Ⅱ533为例,向大家介绍一下什么叫做超频的成功。赛扬Ⅱ533的倍频为8,外频为66MHz,我们首先把外频设为100MHz,这时的实际频率为800MHz,这样就算是超频成功了吗?不,这只是成功超频的第一部,下面我们来看看CPU的温度,CPU在高速运行的时候会产生出很多的热量,超频以后热量产生的更过,过多的热量会使CPU的寿命大大的减少,甚至造成CPU的烧毁,所以必须想办法将CPU的温度迅速的降下来,给CPU降温有很多的方法,但我们还是推荐使用传统的风扇冷却的方法,风冷相比水冷等等新型的散热设备虽然散热的效果不如它们,但是风冷还是最安全的,所以我们还是使用风冷吧。给你的CPU配备一个好一些的风扇就已经足可以应付超频以后CPU产生的热量了,这样CPU的高温问题就轻松的解决了,所有的问题我们都已经解决了,下面我们就要开始对CPU进行测试了,也就是来测试我们CPU的超频是否成功,要看超频是否成功就要进行测试来看看它的稳定性,如果稳定性没有问题就证明CPU超频是成功的了,测试的方法和我们上面讲的方法是一样的,我们在这就不多说了!
其实超频的方法有很多种的,大多数人会使用主板上的硬跳线来对CPU超频,这样的主板跳线超频很不方便,需要对照随机说明书,打开机箱,找到相应设置跳针,如果用户对计算机并不怎么熟悉,而随机说明书配置说明讲得又不是很清楚,这种硬跳线超频就非常危险。BIOS
Jumpless免跳线超频需要用户熟悉计算机BIOS的确切含义,弄不好会把BIOS设置搞得一塌糊涂,如果超频不成功就必须清除CMOS,又是一阵大动作。不过现在通过软件就可以实现超频了,这个软件的名字是SoftFSB,通过这个软件就可以直接在Windows窗口下调节系统总线频率,达到超频目的。若超频成功,系统以后就将在此设定频率下工作,连重新开机都不需要;超频失败,重新开机,系统回到原来状态,丝毫不受影响。所谓FSB,指的是PentiumⅡ的Front
Side Bus,实际上就是系统频率,Intel只不过想表明Front Side Bus比以往传统的系统频率表现更好。SoftFSB通过软件改变时钟芯片(ClockGenerator Chip)部分寄存器(Register)数值,进而让该芯片根据这些数值产生相应的系统总线频率。目前许多Intel
CPU的倍频被锁定,通过提高系统总线频率成了唯一的超频方法。SoftFSB用法比较简单,如果你知道主板型号,那就通过选择主板型号来设定CPU的外频。也可以通过时钟芯片(Target Clock Generator)来设定CPU的外频,所以通过软件实现超频才是最佳的方案。
2
21世纪的微处理器构架:IA--64概述
IA是英语“英特尔体系/IntelArchitecture”的缩写,人们将Intel生产的CPU统称为英特尔体系(IA)CPU。从386开始,桌面PC使用的CPU,包括最新推出的PentiumⅣ都还是32位构架的,所以都被列为IA-32。而IA-64是Intel即将推出的64位CPU,其物理结构和工作机理与目前的X86序列的IA-32
CPU完全不同。传统IA-32微处理器架构存在一些基本的性能限制。为了达到更高的性能,处理器不仅要能更快地执行指令,而且还要在每个周期中执行更多的指令,即通常所说的"并行执行"。较好的并行执行可同时处理更多的信息,也就是提高了处理器的总体性能。在传统的系统架构下,处理器的性能并没有得到充分发挥。分支指令(在程序内改变执行流程)、存储器等待时间(数据到达存储器的时间)和现有处理器的局限性使真正的并行处理成为必要。
为了克服上述局限性,需要采用新的系统架构。传统IA-32系统架构通过对处理器暗示并行的排序密码来向处理器传递并行命令。在IA-64构架中英特尔和惠普联合定义了一种新的被称作"显性并行指令计算"(EPIC)的全新系统架构技术。此软件技术能在原有的条件下获得最大限度的并行能力(即并行工作的潜力),并以明显的方式传达给硬件。同时,他们联合在EPIC技术的基础上定义了一种新的64位指令架构(ISA),英特尔将此技术融入其IA
64架构之中。新的64位ISA采用全新的方式,把显式并行性能与推理和判断技术结合起来,因而大大跨越了传统架构的局限性。EPIC技术支持的IA64架构,打破了传统架构的顺序执行限制,使并行能力达到了新的水平。预测、判断功能与显性并行功能的创新应用令EPIC技术打破了传统架构的局限性(如错误预测分支、存储等待等),使各种运行都在业界领先。而这些概念不能直接加到现有的系统架构上,必须创立一个新的系统架构,即IA64。IA64是首个旨在充分利用并执行指令的主流系统架构。IA64架构的广泛资源、固有可扩展性和全面兼容性,将使它成为可支持更高性能的服务器和工作站的新一代处理器系统架构。
对英特尔而言,IA-64是其下一个10到15年的架构。新的ISA将使英特尔摆脱X86架构的限制,从而设计出超越所有现有RISC
CPU和X86CPU的新型处理器。IA-64的处理器,具有64位寻址能力和64位宽的寄存器,所以我们称它为64位CPU。由于具有64位寻址能力,它能够使用1百万TB的地址空间,足以运算企业级或超大规模的数据库任务;64位宽的寄存器可以使CPU浮点运算达到非常高的精度。粗看起来,IA-64很像其他的64位RISC
CPU:指令的长度是固定的,由一个指令、两个输入和一个输出寄存器组成;指令只对寄存器操作;超标量,具有多个不同的流水线或执行单元,能够并行执行许多指令。其实IA--64处理器还具有:显性并行性、分支预测、投机装载等特性。IA-64确实是为提高速度而设计的,使用IA-64指令可以制造一个具有比今天的X86CPU更多执行单元的CPU,比X86CPU能进行多得多的并行处理工作。指令级并行性可促进最优化的软件指令结构,从而使处理器能够在相同时间内执行更多的指令。推测:推测技术允许提前载入数据,甚至在代码分支发生以前进行。通过尽早从内存载入数据,推测技术可以避免内存等待时间。预测:预测技术避免了许多代码分支,以及因相关的数据分支预测错误而导致的性能下降。IA-64还允许处理器上有更多的空间用于执行指令--更多的执行单元、更多的寄存器和更多的高速缓存。随着处理器技术的发展为这些执行资源提供更多的空间,IA-64的性能将相应地得到增长。
自英特尔于1985年通过80386从16位跨越到32位计算以来,IA-64是迄今为止最重要的体系结构发展。作为64位处理器架构,IA-64代表了一种新型微处理器的发展方向,英特尔和惠普早在4年前就开始共同开发,并将于2001年投入批量生产。在其产品尚未正式露面前,已引起了业界的广泛关注,同时,世界上各大计算机厂商也大幅度调整各自的战略,以迎接挑战。与传统的体系结构相比,基于IA-64的处理器可以提供更高的指令级并行性(ILP)。这是通过使用推测和预测等先进技术,并辅以大量的内部硬件资源来实现的。这些技术使编译器能够发挥最大效能来安排指令执行,而同时使处理器亦发挥最佳效能来执行指令。这种编译器和处理器间的合力也正是IA-64有别于其它体系结构的优势所在。