行动终端设备的发展可说是一日千里,诚如本系列文章第一篇所述,在高阶设备中已能见到包括影像及音乐下载、视讯传送等多媒体功能,未来利用手机监看家中小孩、老人或收看新闻、运动等视频剪辑,将是指日可待的服务。
要在小小的一台行动终端设备上达成的任务愈来愈多样,其核心的关键将在于内部的行动平台是否能支持照相、彩色显示、TV输出、IrDA、Bluetooth、USB、音频和多种型式的记忆卡,以及传统式键盘和复杂的无线调制解调器等广泛的接口标准。
在本系列文章第一篇中已指出,封闭且专属的开发环境将不再受到市场的青睐,唯有让制造商能自由地对自己的产品进行差异化设计的开放式环境,才能满足今日的需求。本文将进一步探讨一个开放式行动平台的软硬件架构。
平台架构考虑
目前市面上常见的应用处理器中,大多是采用单一的ARM核心,或是采用DSP加ARM核心的双核心架构。这两种途径虽然能满足一般性的需求,但当频率提高而造成数据在处理器和内存间快速传递时,采用单一性或区隔性的运算架构都会显得力有未逮。这时,为了强化处理功能,在行动平台中加入加速器硬件,将能更理想的执行视讯等多媒体任务。
以Nomadik平台为例,它采用的是分布式处理架构,在此架构中配备了专为实时应用处理而开发的可程序智能加速器。在任务执行中,这些智能加速器能独立且同时的运作,进而让系统能在低耗电的条件下达成需求的应用菜单现。
在这个平台中采用的主处理器是ARM926EJ-S,能达到行动处理器的最高等级标准,但由于有智能加速器来分担应付所有在音频和视讯上的前、后处理任务,让这颗主处理器能长期处于省电模式下,并更专注于适合它来发挥的控制及程序流执行等工作。为了处理更多的专属应用功能,未来平台中计划再加入新的智能加速器,包括DSP核心或另外的专属硬件,或两者同时加入等作法,以提供专为3D绘图、数据加密和生物辨识等服务而设计的硬件。
<数据源:ST>
分布式处理模式(以Nomadik为例)
硬件架构剖析由于行动设备内部的数据传输日趋复杂而频繁,行动平台的硬件部分中除了处理器架构的选择外,也得采用恰当的连接接口技术,同时得考虑对操作系统及各种接口的支持性。
以Nomadik来说,它采用了多层式AMBA crossbar互连技术,这能让在CPU、多媒体加速器、系统内存和外围之间的数据带宽能达到最大;其外围支持Symbian、Linux和Windows CE.NET等高阶操作系统,也支持行动多媒体应用所需要的外部接口,如LCD、MMC和安全性数字适配卡和外部的音频编译码器(codecs)。
ARM926EJ-S包含ARM针对Java加速而推出的Jazelle技术,这项ARM的延伸功能可以执行139个在硬件中,以及88个以上在软件中最常用的Java字节程序代码。在运作时,大约95%的Java字节程序代码一般可由硬件加速器来执行,其他5%较少使用的Java字节程序代码是由与Jazelle硬件工作而撰写的优化Java虚拟机(JVM)来执行。ARM926的主要功能特色整理如下:
- ●32/16-bit RISC架构,并采用业界标准的AMBA bus AHB接口;
- ●16-bit Thumb指令集,用于增加的程序代码空间;
- ●DSP指令延伸和单一循环MAC;
- ●Java程序代码字节的高执行效率:0.075mW/CaffeineMarks, 6 CM/MHz=2100CM@ 350MHz。
<数据源:ST>
行动平台架构(以Nomadik为例)
采用智能加速器的分布式处理技术
视讯传输将是行动设备上的杀手级应用,但由于视讯内容属于占用带宽大且不容许延迟的一种应用,因此如何透过适当的压缩传输技术来保证传输质量,就成了这项应用能否被广泛接受的关键。
以既有的H.263和MPEG-4视讯标准来说,只定义了译码和位串流语法(bit-stream syntax),以及定义规格(profile)或等级(level)在互操作性上所需的最小值,虽然编码和后处理(post-processing)对于译码视讯的主观质量是很重要的,但因这两者都没有被标准化而允许厂商自行做差异化的设计,这意味着H.263和MPEG-4兼容的编译码在表现上可能会存在着很大的落差。
这里提出的智能加速器分布式架构,可以改善这样的问题。这些加速器在产生图像、录像、播放节目和双向影音通讯时,展现了极低的耗电性,所提供处理动力和内存带宽,足以驱动VGA形式的屏幕(640×480 pixels);此外,这些复杂的加速器能独立地与区域DMA和内存资源一起工作,让主处理器能在同一时间中更专注于处理应用功能,或进入省电状态来延长电池寿命。
VLIW DSP核心
- 智能加速器具有可程序性的特色,适用于与媒体内容相关的处理,以及协议、负载平衡和多任务架构等用途。以Nomadik来说,这些功能是靠多媒体讯号处理器(MMDSP)来达成的,这个微小的175MHz嵌入式核心包括以下功能:
- ●每指令执行为一个循环;
- ●完全是C语言撰写的程序;
- ●16/24-bit fixed-point数据模式;
- ●32-bit floating-point数据模式;
- ●2-level指令快取(instruction cache);
加速功能硬件(Acceleration hardware)
为了要进一步降低耗电,有必要将硬件线路运算器(hardwired operator)和MMDSP一起使用,这样能保证即使在最糟的状况下还有足够的效能表现。低频率的硬件负责处理动作估计(motion estimation)、编码转换(transform coding)、变量长度译码(variable length decoding)、图像过滤(image filtering)和色彩转换(color conversion)等工作。由于Nomadik处理器能做到VGA等级画质的视讯编码与译码,很适合广泛可携式设备的极佳低耗电多媒体处理器。
智能性视讯加速器(Smart video accelerator)
对于平台的一个很重要考虑是视讯编码和译码的内存需求,以CIF的显示器加上抓取缓冲(grab buffer)就需要1200Kbyte以上才够。想降低内存大小和耗电性的最佳方式是开发一套智能性的动作估计算法(motion estimation algorithm),这套算法能将搜寻窗口(search window)的大小最小化,此窗口是用于找寻最佳候选的区块[kh1][kh2](macro-block)和相应的动作向量。
在Nomadik中是以48Kbyte的on-chip SRAM来支持VGA视讯编码,它用在视讯讯框的抓取和搜寻窗口的储存,外部的内存则被用于其余视讯功能的处理。此一作法降低了记忆处理的延?,让效能可以大幅提升,同时也对I/O和总线的设计做了改善,能降低耗电,在成本上也因芯片尺寸的缩小而降低。
<数据源:ST>
智能视讯加速器
智能音频加速器(Smart audio accelerator)
<数据源:ST>
智能音频加速器
软件架构剖析
吸引人、负担得起和互动性的多媒体通讯、信息和娱乐将在新兴行动服务中处处可见。但对软件厂商和设备制造商来说,如果每次都要针对不同的无线平台重新撰写同样的应用功能,自然是让人很气馁的经验。Java这类run-time技术能支持下载游戏和应用,但需要有足够的程序资源。有趣的多媒体应用需要愈来愈多的资源和耗电,这对于体积小的手机设备是很大的挑战。
<数据源:ST>
软件架构示意图
小结从封闭式的手机系统迈向开放式的行动设备开发环境,已是业界停不下来的脚步。从行动产业处理器接口(Mobile Industry Processor Interface;MIPI)联盟的组成可以清楚了解到这个趋势。这个联盟的任务是透过建立硬件和软件接口对于行动应用处理器的开放标准,让新的行动通讯服务能够更加速地被建置,并鼓励这个产业中的业者能够采用这些标准。
这个非营利的组织是在2003年由ST、ARM、Nokia和TI共同创立的,会员中包括手机制造商、半导体公司、硬件外围制造商、操作系统厂商、中间件厂商和软件应用程序开发商。
其一般目标是推动应用处理器接口的一致性、倡导行动设备间的再利用性和兼容性,进而简化硬件和软件的设计和建置。这个接口标准化的工作将会让行动设备制造商提升开发的效率,为他们带来在LCD、camera和通讯IC等外围设备的最大的应用软件可移植性和更广的可用性。(作者为意法半导体多媒体应用处理器部门营销经理)
[2] D.A. Smolyansky, Time Domain Network Analysis:Getting S-parameters from TDR/T Measurements - Infiniband PlugFest, 2004> |
|
|
|