CPU生产商Intel和AMD都计划推出集成双处理器内核的单芯片以解决单引擎的发热问题,这种体系结构将对运行状态和待机状态的中央处理降低功耗起到决定性作用。本文分析了双核芯片出现的必然性以及发展趋势,并认为双核中的一个核应该是DSP类型的才有真正意义。
因为计算的需要,CPU的频率要越做越高。那么,现在CPU都在计算什么呢?计算机操作系统支持从文字界面向图形界面、从单任务向多任务发展,其中具体业务从简单的文字处理到MP3、flash播放、音视频编解码,到3D游戏等,通讯、网络功能需要支持不同层次的协议,多个业务还可能同时进行,并不断提出了实时、高保真、高分辨率、低延迟的质量要求,而这些需求似乎还没有止境,所以CPU的计算性能不断接受挑战。
如果当前的CPU不能满足新的业务要求时,在半导体工艺允许的情况下,那么生产具有更高频率的CPU显然是可能解决问题的途径。因为一般地,对于同一系列芯片,更高的频率就代表更高的计算能力。所以,我们熟悉的PC平台所使用的Intel处理器,从1981年4.77MHz的8088到1995年100MHz的奔腾处理器,再到现在3GHz以上的奔腾四代,除了特征、结构上的变化之外,功能越来越强大,它们的频率无一例外也越来越高。
CPU发展的功耗代价
CPU的发展却无法回避功耗的问题,CPU与功耗具有以下的关系:
1. CPU的特征,如CPU指令、流水线和片上高速缓存都需要更多的晶体管,而晶体管的工作一定需要消耗功率。
2. 对于同样的操作,高速运行一定比低速运行的功耗多,在同一个芯片上也是这样。
所以,i386DX-20M的最大功耗在1.3W左右,AMD 5x86-133是3.7W,Pentium-133是11W左右,Pentium III-1.33G就需要33.9W左右(赛扬1.3G 33.4W),而Pentium 4-1.3G则需要68.8W,新型的最大功率都超过了百瓦。
目前在我们常用的x86台式应用,CPU主频应该至少为1GHz。仅CPU的功耗就在30W以上,功率的释放会使得CPU温度升高,而CPU只能工作在一定的温度之内,一般在60-95摄氏度之内。所以,从Intel奔腾级别的处理器开始,CPU都需要带一个风扇或冷凝器来降温。然而,这样一来会带来以下的新问题:
1. 风扇本身也产生功耗;
2. CPU和风扇均须占用较大的体积,这在嵌入式系统中常常是不能忍受的;
3. 风扇的运转经常能产生噪音,不利于在安静环境中的应用;
4. 在高温、灰尘大的环境里,非常容易导致风扇机械性损坏,不可避免地烧坏CPU。
功耗问题对CPU的应用是至关重要的。此外,对于一个总是加电的系统,空闲待机时节省不必要的运转使系统能保持低功耗也非常有意义。
替代解决体系--多CPU处理
除了使用冷却系统,是否有其它解决CPU功耗问题的方法呢?
CPU的工艺设计可以解决一部分问题,比如使用较小的晶体管(如90nm工艺等)或低电压结构等。此外,降低主频是另外一个选择。但要保证在降低频率的同时应用又能正常运行并不容易。这里先分析一下台式应用软件分配(使用)CPU频率的情况,主要包括:
1. 应用软件的总体控制任务;
2. 应用软件的用户界面;
3. 应用软件的通讯;
4. 应用软件中的多媒体处理任务;
5. 操作系统开销,单CPU系统中多任务间切换的开销是不可避免的。
这些任务有以下的不同特点:
1. 控制任务、用户界面以及协议运算并不复杂,主要是分支控制型的操作,但响应性要求较高,频率需求不高,假设为f1;
2. 多媒体处理的特点是一定时间内,处理的数据量大、成块,运算复杂但相对重复,总的吞吐率应该高,频率需求很高,假设为f2;
3. 任务的合理安排可能大大减少操作系统的开销,频率需求为fs,暂不考虑。
当然,我们可以使用多个处理器来完成以上的任务。但必须解决功耗问题。
如果我们的应用在两个处理器(假设单处理频率需求为f)上运行,一个用来运行控制和用户任务,另一个专门进行多媒体计算。假设两个处理器与单处理时的CPU类型相同,不妨令一个处理器频率为f1,第二个频率为f2。值得注意的是,这时又多了一些CPU间通讯开销。
根据经验,两个相同类型的CPU的功耗一定远大于一个相同类型CPU的功耗,即使后者的主频高于前者之和(我们的情况,前者之和大于后者)。例如,P4-1.5G功率为57W左右,而P4-3.0G功率为81W左右;P4-1.3G功率为48W左右,P4-2.8G功率为68W左右。当然,考虑外围逻辑,双核系统的功率不能简单相加,但这种简单的多处理分配一定使得功耗大大增加,并不最优。
实际上,由于媒体处理的特点,它更适合在DSP(数字信号处理器)上进行。
DSP:特定的CPU
x86、PowerPC、ARM等均可认为是GPP(通用CPU,也常作MPU),那什么是DSP?它与GPP有什么不同呢?首先,DSP也是一种CPU,它们经特别设计适合数字信号处理算法,多媒体处理一般正属于这种算法。首先来认识DSP的主要特点:
1. 算法主要的处理时间用于计算某个循环内的指令,所以DSP的循环控制开销可以很小,甚至是零开销;
2. 算法运算中使用乘加操作(MAC),DSP常常都有特定的乘法器单元,并设有更宽的累加寄存器,甚至指令集中都含有特定的乘加指令;
3. 常常使用定点计算,使用饱和、进位和移位处理浮点运算,这样一般效率都会较高;
4. DSP一般都有特定的寻址方式,如按模(循环寻址);
5. DSP的存储使用Harvard体系,程序和数据空间分开,所以指令和数据可以并行访问;
6. DSP的片上内存,可以如通用CPU一样配置成高速缓存,但高速缓存的行为对使用是透明的,执行时间有不确定性;DSP的片上内存也常常可以作为快速内存使用,片上内存访问的周期数是确定的,因此也使得操作执行时间是确定的;
7. DSP一般都有高效灵活的DMA管理,甚至能够进行二维传送操作等;
8. DSP的处理单元常常在操作(取指令、译码、分配和执行等)上形成流水线,几条指令相随执行,提高了性能也降低了功耗;
9. DSP也开始采用了VLIW(超长指令字),实际上是多条指令分别在多个硬件功能单元上能够并行处理,也可以形成多条流水线并行,但这个
并行功能不很好利用,实际上显然是功耗相对高的;
10. 高端的DSP也采用SIMD(单指令多数据),一个操作可以作用在多个同类的数据上,减少了总操作次数。
基于以上特点,对于特定的多媒体处理运算,一个有8个功能单元的DSP可以使用远远低于f2的频率(因为DSP的功能单元并行处理,仅仅从DSP的频率不能说明它的能力,MIPS常被作为能力的指标,而实际操作中两者可以结合起来描述DSP的性能),考虑到多处理器间通讯开销,1/3f2 - 1/5f2也就可以完成,而DSP支持的外围相对简单逻辑也较少,因此整个功耗非常非常的低(常常为数十到百mA级别),体积较小,价格也十分便宜。
但采用DSP在下面四个方面没有优势:
1. DSP的设计主要围绕常用信号处理提供了优化实现方式,而外围支持相对简单,为了支持更多的设备和网络要做更多的工作;
2. DSP对于成块数据的优化使用,也使得在流水和并行常常不能被打断,中断响应可能延迟;
3. DSP的软件优化较为复杂,最好的优化肯定是调度汇编级的,成本较高,开发周期较长;如果不进行很好的优化,或者对于软件中分支操作多、中断需要及时响应的情况,在DSP上的实现不能很好的利用流水和并行特征,反而可能会导致效率不高,而且功耗较高;
4. 无特殊设计的情况下,DSP即使在待机状态也可能有一定的功耗。
双内核芯片的现实与发展方向
首先来比较GPP与DSP的优劣:
1. GPP常常可以支持多样的外围设备,并提供实时控制,而DSP可以以很低的功耗完成多媒体处理的密集计算。从这点来看,两者不应对立地比较。
2.因为DSP的特点,两者相互融合,一些GPP也增加了DSP特征。另一方面,数字媒体处理器(DMP)的出现则是尝试支持更多外围(如网络、视频出入)的DSP,简化了DSP的应用。但本质上,单处理所进行的多种任务DSP可以做,但并不是DSP所擅长的,典型的DSP优化操作也常常会影响系统的响应性。
3. 先进的体系结构应该是中央处理应具备GPP/MPU和DSP,系统运行时MPU和DSP可以同时工作,而待机时DSP可以被关闭仅仅MPU工作。
这样的应用体系演化已经常常出现在功耗很关键的系统设计和CPU设计中:
1. 首先低功耗的MPU,可能是CISC,更高功耗要求的则会选用RISC,如ARM。
2. MPU+DSP,发现前者性能无法满足,则加入DSP,通过PCI或其它接口连接。
3. GPP+DSP芯片,正因为GPP+DSP体系的前景,TI已提供了OMAP芯片,它是将ARM和DSP做在了一个芯片里,两者从内部到软件支持都被高效地桥接起来。据说,TI将推出OMAP2,以及ARM+C64x的芯片,那目前绝大多数应用都可以很方便地移植到嵌入式设备上运行了。
4. Intel的IXP NP(网络处理器)芯片实际上也是XScale+微引擎的多处理结构,只不过那个微引擎功能更特定、结构更简单罢了。
本文小结
因此,Intel的双核芯片方向不是最新的,但应该是明智的,因为从技术上看是先进的,至少嵌入式市场已经接受。不过,这块双核芯片市场将会复杂起来,因为TI OMAP中的DSP核与独立的DSP是一致的,对于使用GPP+TI DSP很容易向TI OMAP移植。而Intel的双核中GPP之外的那个核将是如何呢?方向上应该是具有显著DSP特征,但针对DSP的应用较为复杂,所以Intel可能在这方面有很多工作要做,不过增加新特征(如MMX/SSE指令集)而带来对开发者新的优化需求也应该被理解。当然,对于通用市场,若不追求性能/功耗比最优,对称多核对于现有的大多数GPP开发者相对容易,也不妨为权宜之计。
作者:钱浙滨
Email: zhebin@
北京中庆现代技术有限公司
京公网安备 11011202001138号
