前瞻性的手机设计会是什么模样?从即将在2006年第一、二季度上市的Nokia N92(图1)这部手机上我们可以看出一些端倪。N92能够未上演先轰动,正因为它既是手机,也是相机、收音机,而且还可以是一台电视机。
在通讯的部分,N92既支持GSM 900/1800/1900三频,也支持WCDMA的3G网络,不仅如此,它还可连接Wi-Fi局域网,更支持双向视频电话;照相方面,它可支持200万像素,相机功能包括内置闪光灯、数码变焦,以及景物、肖像、夜间和运动等设置模式,提供白平衡等功能;最炫的是它同时支持DVB-H数字广播电视,能通过2.8英寸的QVGA TFT LCD来收看实时视频节目;而在音频部分,除了支持MP3、AAC,也能收听FM收音机节目。
这样的一部手机早已跨越我们对传统手机的印象,可说是不折不扣的前瞻性智能手机,也是手机设计厂商今后要全力以赴的开发方向。这其中包含的开发挑战不少:调制解调器部分,针对天线、射频、基带的部分,将要求多模多频的设计;应用上,需要更高的处理效能、更庞大的内存、更清晰的显示质量,但又不能缩短电池的寿命。为满足以上林林总总的需求,本文将针对移动多媒体平台的开放性架构和系统规划分别进行探讨。
开放性平台架构具有 多种优异性能
首先我们来看看开发前瞻性手机的几项基本条件。除了通话外,多媒体的视听娱乐将成为手机应用上的一大趋势,因此手机平台应具备更强大的音频、视频处理能力;与此同时,由于是手持装置,电池的长续航力是基本不变的要求;此外,现今的产品上市周期越来越短,生产商需要取得更快速的开发途径,以抢得上市的最佳时机。
在这些条件下,一个完善的多媒体移动终端开发架构必须同时具备易用性、弹性与延展性,这已非过去的封闭性开发环境所能满足。为了不被特定技术所限制,厂商需要的是可自行搭配的非专属性(Non-proprietary)CPU、操作系统、无线调制解调器(Radio Modem)等单元,而这种开放式的软硬件平台架构也能刺激新产品的不断创新。一般来说,一个开放性的平台架构必须应具备以下多个条件。
支持通用性处理器核心
处理器核心是移动平台的心脏,它将决定一款手机的运算架构与功能,因此一个移动平台要能支持提供授权以及广泛被移动设备使用的第三方(3rd-party)处理器,如ARM核心等,这一特性非常重要。
支持多种主流操作系统
目前手机类型大致可分语音手机(Voice Phone)、多功能手机(Feature Phone)和智能手机(Smart Phone)。前两类的功能有限,对多任务(Multi-task)的要求也不高,因此很多仍采用专属的封闭式操作软件。但对智能手机来说,为了具有复杂的控制以及多任务处理功能,就必须采用更高阶的操作系统,目前手机中主要的操作系统包括Symbian、Windows Mobile和Linux等,一个开放式的移动平台应该都能够支持所有这些操作系统。
支持丰富的外围设备
由于目前手机的功能多样,移动开发平台也必须支持包括照相、彩色显示、TV输出、IrDA、Bluetooth、USB、音频和多种类型的存储卡,以及传统键盘和复杂的无线调制解调器等广泛的外围设备接口标准。
支持开放性及说明文档齐备的API
智能手机采用具有开放性API(Application Programming Interface)分享架构的好处是显而易见的,除了让制造商能降低开发成本、加速进入市场外,也让多媒体的应用能跨越多种提供支持的产品。不过,这种开放性有赖于业界领导厂商的合作,才能定义出标准化接口。目前相当重要的移动产业标准组织包括3G、MIPI(Mobile Industry Processor Interface)、TCG(Trusted Computing Group)、OMA(Open Mobile Alliance)、OMTP(Open Mobile Terminal Platform)、OpenMAX和Global Platform等。
就MIPI而言,其目标就在于推动应用处理器接口的一致性、倡导移动设备间的再利用性和兼容性,进而简化软硬件设计和建置。其接口标准化的工作将会让移动设备制造商提升开发效率,为他们带来在LCD、相机和通信IC等外围设备的理想应用软件可移植性和更广的可用性。这个非营利组织是在2003年由ST、ARM、Nokia和TI共同创立的,会员包括手机制造商、半导体公司、硬件外围制造商、操作系统厂商、中介软件厂商和软件应用程序开发商等。
具有高度的功能延展性
目前手机不断出现新功能、新需求,或对处理效能有更高的要求,因此常常需要添加一些新的软硬件单元,这时,一个好的移动平台就应该提供开发上的延展性。举例来说,为提升音效处理能力,可能会需要添加专门的应用协处理器(Co-processor),这时应能满足该延展需求。
提供高阶语言开发环境
要让制造商掌握更大的设计弹性,一个先进的开放性平台还必须能提供一个高阶语言的开发环境,这也是一项关键的开发要素。这一做法是将物理层抽象化(Abstraction),进而将应用软件从底层的平台架构分离出来,这让产品能更快速地开发,在平台更新时也无需牺牲效能或程序码的可互操作性(Interoperability)。
这是从上层架构的观点让应用程序码能以抽象层级来开发,而不用对底层的物理平台作直接调用。这样一来,对于不同或未来的产品,应用功能只需要写一次就够了。不仅如此,这也让制造商能在硬件和软件中对各种功能进行无缝的升级。
开放性架构平台优化系统规划
在确立了对开放性架构的需求之后,我们再进一步来看前瞻性手机在系统规划上的变化。移动多媒体应用的出现,对手机系统的规划造成了极大的冲击,进而出现从过去集中在基带的无线移动处理工作,转变为是否要将多媒体处理功能分离出来的抉择性问题,以及如何在不增加耗电的情况下,提升多媒体的运算能力。
Modem-agnostic的分离处理架构
为了提供强大的多媒体功能,我们相信应用处理器引擎(Application Processor Engine,APE)会从移动基带中分离出来,也就是未来主流的多媒体解决方案将是以开放性操作系统搭配高效应用处理器。这是一种“独立于调制解调器(Modem-agnostic)”的处理架构,一方面让应用处理器充分发挥Symbian、Windows Mobile或Linux等高阶操作系统的应用能力,另一方面也确保各种服务与应用不会受无线技术的影响,进而赋予产品更高的可移植性。
处理架构的选择
耗电性是手持式系统规划需要反复探究的另一个问题。多样化的移动多媒体应用显然会是手机耗电的一大元凶,因为音频、视频的压缩与解压缩将需要更高效能的处理器来进行运算,而这需要消耗更多的电量。例如在160×160的屏幕上进行每秒15祯的视频会议,每秒大约需要运算13亿次,如果换作320×240等更高分辨率的屏幕,运算任务又会大幅度提升。
由于耗电性和处理器的频率及电压的平方直接成正比,因此以较低的频率进行操作能降低电源消耗。至少有两种方法能降低时钟同时又不会冲击效能:一是采用单一指令处理多笔数据(Single Instruction Multiple Data,SIMD),并由此达成图像编码(Image Coding)演算法的数据级平行运算(Data-Level Parallelism);另一种方法则是采用超长指令集(Very Long Instruction Word,VLIW)架构,它能在每个循环中同步运行多个运算动作。
VLIW和SIMD结构都能接受单一指令流,每条指令可以包含多个操作,其中VLIW指令字较长,而SIMD具有很强的数据压缩能力。若能将VLIW和SIMD技术相结合,则可获得更高的性能加速比,非常适合多媒体数据处理。目前手机的多媒体应用处理器/平台多试图善用这两项技术优势,不过所采取的技术途径却各有不同,主要差异在于对软硬件资源的依赖程度,以及是否采用多核心处理架构。
采用纯粹的软件对多媒体内容进行编/解码对具有强大处理器效能的PC或许可行,但对嵌入式的移动设备来说显然并不适用。在通常情况下,以一颗RISC主处理器搭配专门处理移动功能的DSP是理想的双核心处理架构,但当系统对处理效能提出更高的要求,例如要进行H.264的电视移动编码时,不仅软件达不到要求,DSP也会显得捉襟见肘,这就需要适时采用额外的硬件线路(如加速器)或算法协处理器来获得更佳的视频处理效率。
由于硬件线路逻辑可降低频率(耗电)和软件依存度(延迟和降低效能),纯粹的硬件作法很适合用来运行对CPU或DSP运算来说太耗电的实时工作,代价是软件的可升级性、更长的开发周期以及可能增加的硬件成本。
目前的设计挑战是如何在提供卓越的多媒体功能和效能的同时,也能满足低廉的价格、容易开发和低耗电等要求。单纯的软件或硬件方案都不能完全满足,充分利用两者的优点,如效率和弹性,才是明智的做法。
高阶语言与汇编语言
实时是采用相同的移动开发平台,也可能产生功能与效能表现上的差异。这主要在于对系统底层的调校,通常能运用汇编语言编译程序(Assembler)的编码对程序进行优化设计,以达成更佳的效能等级。不过,采用汇编语言的优化途径相当耗时,对于强调程序可移植性(Code Portability)和快速上市(Time-To-Market)的开发方案来说,反而是道不低的门槛。这时,开发平台就得为DSP核心提供高阶C语言的可编程途径,才能缩短开发周期。
开放性平台实例剖析
目前业界已经推出了多款开放性移动开发平台,以ST的Nomadik为例,它采用分布式处理架构,将多媒体的运算处理分散到多个可编程智能加速器(Smart Accelerator)中,他们各自独立工作,但同时又一起处理特定的视频和音频编、解码功能。在350MHz的ARM926EJ RISC主处理器核心下,搭配视频智能加速器(Video Smart Accelerator),可以提供30fps的VGA实时编解码能力,也可以在进行视频会议时提供30fps的CIF画质;其音频智能加速器(Audio Smart Accelerator)则是能够采用C语言编程的多媒体VLIW DSP,并支持丰富的音频库。
除了让影音表现得到优化外,分布式处理让这些耗时又耗电的工作不占用CPU资源,让CPU专注于控制及程序流程的处理,或让它能进入节电模式来延长电池的使用寿命。通过尽可能避开对高时钟速度的需求来节省能源,但也从各个等级的系统化设计中得到降低耗电需求的好处。
创新的算法、具能源效率的指令集和在ARM处理器中的Java加速器,这些都为编码提供了很高的运行效率;数据压缩和图像缩放能有效地使用芯片上的带宽。此外,积极的电源管理会关掉芯片上非活动的区域,让CPU尽可能保持在节电模式下进行工作。
为了适应移动设备的空间限制,采用12×12 TFBGA封装的Nomadik本身的尺寸已经相当小巧,但在它的三层堆栈版本中,还将高达512Mbits的SDRAM和NAND Flash与处理器集成在单一的、极省空间的封装中。在这个封装当中,处理器和内存芯片堆栈在彼此的上方,这个堆栈版本也提供了极佳的生产线弹性。
移动解决方案有待优化完善
在以上的探讨中,我们了解到前瞻性移动多媒体开发平台未来将要面临的设计挑战与需求,然而,手机开发的方面有很多,在本文中很难一一涵盖。例如多媒体内容的接收,难免会涉及数字版权管理(DRM)、认证(CA)和付款方式等,这需要一套完善的安全架构,例如在硬件上需能保护对安全性RAM及ROM的接取行为。此外,要让用户愿意停留在小小的手机窗口上,移动设备还得具备更直观的使用界面,并为这个窗口量身订制合适的多媒体内容。
对于移动平台的供应商来说,只提供开放性的架构或完善的系统功能仍显不够。为了加速设计进程,核心平台的供应商往往要全程参与客户的开发方案,最好还要能协助客户整合完整的软硬件资源,并解决种种除错或移动干扰等难题。因此,发展通透的结盟体系并提出便利且弹性的参考设计,才是移动解决方案供应商今后的重点所在。