mips

更快的频率速度或更多的平行处理?这的确是个问题!

0
阅读(1545)

用于移动设备的基带处理器通常都尽量以250-500MHz的低频率速度执行,以便将功耗降至最低。但是,最新的空中接口标准大幅提升了数据处理能力,使得基带处理器必须在性能增加的同时,还要降低时延。

这是不需要火箭科学家努力研究就能了解的道理。LTE,亦即长期演进(Long Term Evolution),是最新的空中接口标准,目前已有Verizon、NTT DoCoMo和Telia Sonera等电信运营商支持这项技术。LTE与其3G技术的前身W-CDMA相比,在最大配置条件下,增加了50倍的最大用户数据量(当然,我们都知道理论最大数据传输率是永远不可能达到的,但这个数据量仍属合理)。由于基带数据的实时特性,用户数据量的增加也大幅增加了需要实时处理的数据。因此,对基带系统来说,要补偿数据处理能力增加的唯一方法便是显著降低时延。所以,相对于W-CDMA的10ms传输间隔(TTI),LTE的时间传输间隔只有1ms。TTI本质上是传输一个数据模块所需的时间长度。若要达到超过一个数量级的数据处理和传输提升,最起码也要大幅提升蜂窝式基带处理器的性能。对于承诺要达到1Gbps的数据传输速度的下一代WiFi标准即802.11ac来说也是如此。

通常,要同时增加处理器的用户和控制平面,就必须增加处理器的时钟频率。当然,这会不利于功率耗散,因此一般不会予以优先考虑。所以,另一种做法是采用多核心设计,这是一种常用的方法,可以分散处理负荷,可以实现较高的性能提升而又无需大幅增加时钟频率。然而因为此法会增加晶体管数量,因此会增加静态功率消耗。与因为时钟频率加倍而提升的动态功耗相比,静态功耗增加的程度相对较低。多核心的另一个潜在缺点是,第二个核心会增加额外的授权和版权费,同时也会因较大的芯片面积而增加制造成本。

幸运的是,除了多核心之外,还有其它的可能性。另一种可能性是采用硬件多线程,它能使一个处理器核心就像有两个核心一样,每个核心都能单独执行一个操作系统或实时操作系统(RTOS)。在此情况下,对RTOS来说,处理器负荷就像是被分散到两个核心上。在MIPS32® 34K®核心中,这些被称为虚拟处理单元(Virtual Processing Element,VPE)。采用多线程核心,不会明显增加芯片面积,而且无需支付第二个核心的授权或版权费。此外,由于线程能以零开销的内容进行切换,因此能显著缩短时延,以达到性能提升和时延缩短两项重要的技术需求。我们的一家基带客户模拟其多模调制解调器,发现运用MIPS多线程技术,可减少处理器延迟达20%!由于反应能力大幅提升,因此能增强移动设备的用户体验。

硬件多线程技术的最大缺点是,它会增加软件的复杂度,以及必须移植既有软件。单线程处理器的软件必须重新架构,才能充分发挥多线程的效益。虽然不需要全部重写软件,但工作量还是很可观的。当然,对多核心来说,情况也是如此。所以,一定要有能支持多线程的软件。不管如何,此需求必须能被满足。实际需投入的工作量主要取决于程序代码的架构(模块化程度越高越好)、撰写和建档方式是否妥当。对多模调制解调器来说,程序代码能以数种不同的方式进行分割,以充分运用多线程技术,并将移植成本降至最低。我将会在下一篇博客中详细说明。

所以,对以上问题的答案当然是,一切都得视情况而定。它取决于应用程序的需求,特别是功率水平。但对移动基带处理器来说,相较于加倍频率速度或采用多核心设计,多线程显然可提供一种能显著提升效能但又不会增加太多功耗的解决方案。

若要了解更多有关多线程的信息,请浏览http://www.mips.com/mtp/

作者:Manuel Uhm