目前市面上的行动通讯装置整合了许多多媒体应用,不论是影音播放,或是图片浏览,甚至是实时的录像编码。我们可以说,藉由这些多媒体功能的引进,行动装置不再只是一个单纯的通讯设备而已,而可以说是一个行动娱乐中心,而随着整个计算环境的变迁,有许多业界研究指出,目前的运算环境将从固定应用转移至行动应用,行动装置对效能需求也将越来越迫切。
单核心架构在固定式应用环境已经逐渐淡出,即便是行动应用也多已经逐渐从异质多核心转移到同质多核心与异质处理单元的结合。基于单核的架构将会在多媒体应用市场面临严峻的挑战。
这些性能上的要求有很大的因素要肇因于消费者对多媒体处理能力的需求逐渐攀升,不论是视讯、音效编译码,游戏软件、或是日常的通用处理能力(比如说文书软件的加载与处理、网页的开启,或者是导航装置的地点搜寻功能)。而在多种无线标准的整合也是消耗处理器资源的原凶之一,Wi-Fi、UWB、A-GPS、蓝牙、红外线、3D游戏、电子支付、安全等应用需求都将大量出现,随之而来的庞大数据流量,以及运算复杂度的提升,甚至是多种工作的同步处理,对处理器效能的需求已经远超过传统单核心嵌入式处理器架构的速度成长幅度。解决行动装置以及嵌入式应用上的的效能瓶颈,成为半导体业界极为重视的一环。

图说:面对未来的挑战,市场多了多核心的选择。
多任务处理逐渐成为行动装置的必备能力
发展至新一代行动通讯装置,消费者需要的不再只是一个单纯的语音通讯设备,而是必须整合各式各样的多媒体应用,如数字相机(DSC)、 MP3播放机、MPEG4译码器和游戏机等。
人们希望只要带着一个行动电话出门,就可以做到许多事,例如能够同时利用行动电话听音乐和玩游戏;在观看储存于行动电话中的电影时,若有人打电话来,行动电话必须能明确且实时的通知使用者,使重要电话不至于漏接,甚至是影片照样播放,手机仅仅是将影片的声音暂停,而将通话信息以覆迭的方式显示在影片的最上层。
这种功能在手机逐渐增加影像输出到电视的能力之后,可能会日趋重要。更进一步的,当使用者在通话时,通话信息仅显示在手机端,影像输出端仍要能维持影音播放,并能够提示使用者控制影片的播放动作或者是音量,以避免干扰通话过程。

图说:Nokia N800是基于ARM体系之下的行动网络终端,早了Intel的MID概念好几年。
传统行动通讯装置采用单处理器的解决方案,即利用一颗处理器来处理与行动通讯相关的功能,此处理器称之为基频处理器。而下一代的行动通讯装置除原有的通讯功能外,还整合许多的多媒体应用。如不改变原有的设计架构,仍利用原先的基频处理器来处理这些附加的多媒体应用的话,基频处理器除原有通讯任务外还要处理新增多媒体应用,将大大增加其负担进而使其效能降低,同时服务质量相对的也会下降。
况且下一代行动通讯装置的许多功能都是同时发生的,如边听音乐边玩游戏,一颗基频处理器无法处理这些同时发生的任务,光是在不同的任务间做切换(Context Switch),就会浪费掉许多时间,进而造成音讯停顿、视讯闪烁等现象而无法做到实时的反应时间。另外,基频处理器在处理如此多样的工作时,需要花许多时间做任务转换,其功耗也相对地提升而减少电池使用寿命。
异质多核心应用受局限 未来以同质多核心为主流
由于行动应用所需要的处理工作逐渐增加,这些工作往往又是发生在同一时间,要满足这样的处理需求,我们需要单核心架构之外的解决方案。要开发这样一个多功能的多媒体行动通讯装置将面临到许多新的挑战,如服务质量、反应时间和功率消耗等问题,传统的单核心系统芯片面对庞大的运算需求将如老牛拖车一般,系统响应不仅缓慢也难以确保应用软件的执行质量。
因此目前常见的多媒体行动通讯装置皆采用多核心系统芯片的解决方案,把通讯系统和多媒体处理分开在不同的处理器上执行,以达到在不影响原有通讯功能的情况下,提供高质量的多媒体服务,这种就是我们过去常见的异质多核心架构。异质多核心架构会把通讯系统和多媒体应用分开在不同的处理器上来执行,可以减少任务转换的负担并节省系统功耗。
但是过不久,这样的设计方式又面临挑战,由于异质多核心的应用处理器在通用核心部分依旧维持单核心架构,即便芯片本身内嵌相当强大DSP处理单元,能够好好分担多媒体部分的工作,然而未来行动运算体系中多种通用运算的平行处理比例将会逐渐加重,但DSP单元对于通用运算相对吃力,这时我们就需要同质多核心架构的整合。比如说藉由ARM的多核心架构,我们可以同时处理通讯、录音、系统导航定位、数据库搜寻、无线传输等,过去的单核心架构很难完全兼顾到这些应用同时发生时的运算需求。
导入多核心所需要的挑战
多核心所能带来的潜在优势是相当惊人。处理器的频率并不能有效地进行调整,这是由于处理器比内存快得多,而且增加的高速缓存仅在某种程度上对延迟有所帮助。此外,相同制程节点的处理器频率越来越高,也导致功耗倍增。
另一方面,多核心处理器可以将高速、长度较短的芯片上互连用于核心通讯,使其可更快地定时、独立地实现超纯量执行、管线和多执行绪等最佳化。此外,与单核心处理器相较它们所占用的电路板空间也较少。因此,阻碍多核心处理器迅速抢占运算市场的是什么呢?答案便是软件。
众所周知,信息产业的脚步,向来是硬件驱动着软件,软件多半扮演支持者的角色。但是导入多核心体系之后,不同软件和不同应用之间的互相搭配与运算资源分配,将会是信息产业界最大的挑战。
举例来说,当一个应用程序,像是微软Outlook或影音播放器之类要做平行化处理的时候,会有一定的工作被分摊到各处理核心之间。通常这些个别的任务需要再向一个共享的高速缓存中进行数据存取的动作,然而当其中一个执行绪正在存取内存,另一个执行绪也要去存取同一个区域的内存时,则必须要有适当的防护来避免互相冲突,否则就可能造成系统当机。
标准的平行处理程序需要程序人员预先考虑到这些同时间发生的内存存取动作,而且必须确保作业能够一定程度的持续地存取内存来运行,所以要「锁住」其它正在执行的工作直到特定权限或优先度较高的记忆体操作完成。锁定的项目固然可以加快平行系统的处理,但要实行这些频繁的异动还是相当复杂一件事。因此问题来了,2个不同应用软件可能同时都取得暂时「锁住」的指令,而它们又得相互等待对方的作业完成;如果遇到这样的情形,却又没有第三者进来打破这个僵局(deadlock),那么这2个应用软件就只有一直冻结在那里。
多核心架构将成行动运算主流架构
既然单核心架构难以满足下一代行动通讯装置的需求,多核心架构应运而生,IC设计厂商在选择架构时就必须选择未来5到10年内不会被淘汰的架构。从系统延展性、效能的可伸缩性以及架构的未来性,多核心体系是未来必走的趋势。即便是X86平台,也从过去的单核心转而成为多核心的绝对支持者。

图说:NEC目前已经有多款基于ARM多核心架构处理器,提供业界最高效能的嵌入式解决方案。
以目前市场上的趋势来看,ARM旗下MPCore(包含ARM11与Cortex-A9),其纯种的多核心体系具备优于市面上的其它嵌入式架构的优秀演算能力,Cortex-A9甚至能提供总计超过8,000 DMIPS以上的效能表现,远远超越现有行动平台处理器的一般水平。不仅能支持各种要求严苛的高效能消费性与企业应用,同时能在仅250mW移动平台功耗预算内,大幅超越现今手持式装置的性能。采用台积电的65 nm原生制程,Cortex-A9提供2,000 DMIPS 的效能,同时核心逻辑成本占用不到1.5 mm2面积的硅组件。Cortex-A9拥有范围涵盖2,000至8,000 DMIP的可扩展效能,是现今高阶手机或视讯转换器的4到16倍,未来手持式装置能够藉此达到HD质量录放影功能,超越PSP的游戏画质,支持多方向的视讯对话,甚至是取代传统计算机,成为行动运算中心!(本文由ARM提供)