从一些最新发表的移动电话中,例如Motorola ROKR以及Palm Treo,可以发现移动电话与其他消费性装置,如PDAs、MP3播放器、数字相机和摄影机的数字整合方案正在快速演进。因此在工程上也产生了一个典型的矛盾处:超高效能手持式装置还得具备极低的耗电量。而且随着处理器的运算效能大幅提高,手机制造商与设计业者也必须开始采用双处理器架构。由于3G/3.5G无线系统本身拥有的较高数据传输率,处理器之链接埠带宽与延迟率的要求势必随之提升,以因应多媒体功能的需求。
目前在双处理器PDA与智能型手机的设计中,处理单元通常包含一个基频处理器与一个特定功能的协同处理器,例如应用处理器或多媒体处理器。这两个处理器在手机中各自运作,执行所属的特定工作。基频处理器扮演RF调制解调器的角色,而应用处理器则负责执行操作系统,以及处理各种多媒体应用。如Linux、Symbian与Windows CE/Mobile等常见较复杂的操作系统,通常需要运算能力强大的应用处理器,来管理影音数据及其他如:Wi-Fi与Bluetooth等的无线功能。(图一)所示为高阶手机中的双处理器架构。
《图一 3G/3.5G Smart/PDA手机中的双处理器架构》 |
|
(图二)所示则为数据流的范例。语音和多媒体数据经由天线接收后送入基频处理器,接着这些数据在经过封包之后,传送至应用处理器。应用处理器则会将这些多媒体内容储存至文件系统中,或是将其实时播放出来。我们将会发现基频与应用处理器间的链接埠带宽可能成为下一代3G/3.5G无线移动电话的瓶颈。
技术带宽需求
双处理器架构在高阶2G与2.5G手机设计中,已受到广泛的运用。然而,由于多数的传输数据为语音、简单的电子邮件或文字简讯,因此这些网络的数据传输速率通常在每秒数百kb的范围内。以GPRS与EDGE(2.5G)网络为例,最大数据传输速率分别为171.2kbps与384kbps。因此在此世代的无线手持式装置中,处理器相互通讯(inter-processor communication;IPC)通常是透过SPI、UART、或USB这类的接口,而且两个处理器都必须要支持相同的接口。但另一方面,如(图三)所示,在3G/3.5G无线标准中,CDMA2000与WCDMA支持的高速下行封包接取High-Speed Downlink Packet Access(HSDPA)规格则要求高达10Mbps以上,才足以支持多样化的多媒体内容。
(图三)明显表示无论是UART或是SPI的有效传输速率(约1Mbps),皆不能满足3G/3.5G无线网络所要求的带宽。至于目前行动无线处理器所支持的USB(全速模式)接口,理论上可提供高达12Mbps的带宽。有人可能会认为这样就能满足3G/3.5G对于有效传输速率的要求,然而如果考虑到通讯协议的overhead,则实际带宽可能低于2Mbps(这是根据某家主要手机制造商所得到的测试结果)。此外,由于USB主机端端口需要随时保持运作状态,这表示即使没有任何数据在互连信道中传递,仍须消耗电力。更何况USB的高耗电量对于其扮演IPC机制的角色是一项重大缺点。此外,由于链接PC与周边配备的时候也会用到USB端口,因此,在处理器上的USB端口可用数也有其限制,这也是其不利于IPC方面应用的原因之一。因此,目前并没有任何一个串行接口可以提供3G/3.5G手机中足够的数据传输速率。
基于3G/3.5G无线网络标准的概念,智能型手机与PDA手持式装置设计业者不断努力寻找有效的处理器互连解决方案。许多新的设计中采用了各式现有序列标准的组合,藉此创造出多重数据信道,以供处理器间的数据传输。这虽然看来似乎可行,但处理此种数据类型所需的软件会变得相当复杂,并容易产生数据完整性的疑虑。由于这些手机设计有时间上的紧迫性,而且上市时程也是决定产品成功的一大因素,因此系统设计业者不能浪费时间去担心处理器相互通讯的问题。另一种解决方案是运用CPLD作为双处理器之间通讯的组件。
运用CPLD也会出现四种问题。第一,CPLD需要经过重新编程,需要更多开发时间与资源,这将增加系统设计不必要的复杂度。第二,由于CPLD并非专为行动应用进行优化,因此相较于其他方法,CPLD更占机板空间。第三,因为CPLD是一颗相当复杂的硅芯片,其整体成本可能随着开发机板与其他杂项支出的增加而提高,最后将导致整体材料列表(BOM)的增加。此外,CPLD通常比许多专用装置需要更多的电力。因此采用CPLD作为IPC不仅不是一个快捷方式,更可能不利于行动装置的设计。
低功耗双埠(Low-Power Dual-Port)组件于处理器相互通讯(Inter-Processor Communication;IPC)的应用
低功耗双埠RAM作为系统互连的组件是最近才在行动手持式装置领域中出现的应用。双埠RAM具备高带宽的有效传输速率,不仅能够符合下一世代无线数据传输速率的需求;同时,相较于其他串行接口,其所具备的高效率带宽能维持最低耗电量,因此可让电池续航力最大化。
透过双埠RAM的链接程序很直接,而且所用的机制也都是设计人员所熟悉的。内存接口不仅可直接链接至现成处理器上的标准界面,也无须复杂的设备驱动器,因为此处所谓的「界面」其实就是两个处理器之间所对映的记忆区,如此能更进一步简化软件的开发工作,并且缩短产品上市时程。硬件中断(hardware interrupts)可提供处理器握手协议(handshaking)的一个简单机制;与其他接口(例如USB)比较起来,此种方法在管理通信链接时,能具备更大的效率与最少的协议overhead。因此,在两边处理器都不需要维持周期频繁的各层通讯协议,造成不必要的储存与加载的动作的情形下,此方法可以减少overhead,并节省耗电量。
我们必须进一步评估低功耗双埠IPC方法的整体效率,因为对手机设计人员与设计业者来说,IPC的实际有效传输速率的评估是他们关心的重点,而不是理论值。为了量测有效传输速率,Cypress与TI开发了一套平台,其中包含两TI的应用处理器以及Cypress的低电源MoBL双埠RAM。硬件配置如(图四)所示。
在软件部分,则是在Symbian平台上开发,并采用简单的non-double/rotational缓冲硬件中断机制作为握手协议之用。有效传输速率的计算是以主端(server)至从端(client)处理器的数据群传输为基础,而其封包大小为预先设定的。不同大小的封包可用来测量随着硬件中断频率而改变的系统实际有效传输速率。虽然改用double/rotational缓冲配置时,有效传输速率的效能可能会有所提升,然而设计业者通常宁愿采取较为谨慎保守的方式,以简化软件复杂度,并且将中断的数量降至最低。测量结果分别列于(表一)以及(图五)中。
表一 有效传输速率摘要
封包大小 |
有效传输速率 |
8kB ( 4k x 16 ) |
50 Mbps |
4kB ( 2k x 16 ) |
48 Mbps |
2kB ( 1k x 16 ) |
31 Mbps |
1kB ( 512 x 16 ) |
19 Mbps |
512B ( 256 x 16 ) |
10 Mbps |
《图五 实际有效传输速率与不同封包大小之间的关系 》 |
|
在此用全速USB互连的作法与双埠RAM接口的比较为例,若要将一个1Mbit的多媒体档案由基频处理器传输至应用处理器时,由于USB接口具备2Mbps的有效传输速率,因此需要0.5秒完成该传输(1Mb / 2Mbps = 0.5秒)。此时两个处理器上的串行接口也必须要在该数据传输期间都「醒着」(awake)状态,相对地也会造成耗电量增加。而在相同状况下,低功耗双埠RAM 仅需耗费0.02秒就能以48Mbps的速率(1Mb / 48Mbps = 0.02秒)传输,此外,双埠RAM和其他处理器还可以在数据传输后自动进入休眠状态,可让两个处理器减少超过96%的耗电时间,藉以大幅节省电力。
与其他机制比较起来,低功耗双埠RAM不但能提供高效能与低耗电,也能内建在超小型的vfBGA封装中,能将所占的机板空间降至最低。低功耗双埠RAM的其他特点,例如:输入读取与输出驱动缓存器,也可以减少处理器上重要的GPIO使用量,如(图六)所示。
随着3G/3.5G无线网络的日益盛行,丰富的多媒体内容也大幅提高了便携设备处理器相互通讯之带宽需求。因此,传统串行接口(UART、SPI与全速USB)已不足以应付3G/3.5G系统中传输实时视讯、音乐、游戏等多媒体应用。低功耗双埠RAM在扮演处理器通讯机制时,其高带宽、低功耗的特点,不但能满足严苛的设计需求,同时具备各类功能,来简化软件与硬件的设计,所以能在许多状况下,为下一世代移动电话处理器通讯机制提供最佳的解决方案。(作者Danny Tseng为Cypress数据通讯部门资深应用工程师;Lawrence Wong为TI无线应用小组技术应用工程师;Hung Vuong为TI无线终端事业部移动电话系统资深系统设计师以及系统暨软件技术长)