具有多媒体和网络处理功能的SoC芯片

一种多媒体功能丰富的SoC芯片技术与应用

目前,便携式设备中的应用正日益丰富。随着拍照、音乐、电影、可视电话、移动电视、3D游戏、定位服务、Web浏览、Email、即时通信、电子支付等各种应用的不断涌现,推动着便携式设备的数据处理能力以超“摩尔定律”的速度增长。在高端的便携式设备中(比如智能手机、硬盘式PMP等),一般会有一颗应用处理器。这些处理器为日新月异的应用提供运行平台和强大动力,并为设备厂商提供至关重要的产品差异化。据权威市场调查机构分析,2005年至2009年,应用处理器的复合年均增长率(CAGR)高达48%;到2009年,中国应用处理器的销售额将达到36亿美元。

上海杰得微电子有限公司的Z228芯片正是一款典型的应用处理器,它采用TSMC 0.13um工艺,核心电压为1.2V,I/O电压为2.5/3.3V,而封装为441-TFBGA。从图1可以看出,Z228芯片外观比人民币5角硬币还要略小一些。

图1:Z228芯片实物图。

你可以想象Z228就是一块超小的笔记本电脑主板(不带DRAM和硬盘等),加上显示屏、键盘、鼠标、网口和其它外设,它就变成了一台袖珍笔记本电脑。这正体现了系统级芯片(SoC)的概念。事实上,Z228正是一款高集成度的SoC芯片,兼具硬件的高性能、低成本和软件的灵活性。其模块框图如图2所示。

从图2可以看出,该芯片软件的灵活性主要由ARM926EJ内核体现。目前几乎所有的应用处理器都采用ARM内核,从某种意义讲,ARM在便携式终端领域可被认为是事实上的标准,在互联网上可以下载到很多兼容ARM指令集的软件。芯片中硬件的高性能、低成本主要由MPEG-4引擎和图像处理引擎来体现。视频编解码运算和图像处理采用全硬件实现,从而使ARM内核的负担大大减轻,终端的电池续航时间得以显著延长。采用硬件方案的另一好处是无需自主开发或从第三方购买多媒体编解码软件,从而缩短开发周期,降低研发成本。

以下将介绍Z228芯片的技术特点及其应用。

1. ARM926EJ内核

Z228采用了ARM9系列中最高端的ARM926EJ处理器内核,在0.13um工艺下内核主频可达300MHz。它专为多任务的移动应用软件而设计,兼顾高性能和低功耗的要求。在该内核的支持下,Z228能流畅地运行音频、视频、图像、2D图形、Java 3D游戏等多媒体应用软件。

图2:Z228芯片功能方框图

Z228中的ARM926EJ内核包含16KB指令Cache和16KB数据Cache,具有TCM接口。内存管理单元(MMU)支持WinCE、Linux等嵌入式OS。Z228采用矩阵式的AMBA总线(MAB),为高吞吐量的数据应用提供充足的带宽。ARM926EJ采用ARMv5TEJ指令集,后向兼容ARMv4指令集,并支持流行的ARM开发调试体系,能最大程度地保护终端设备厂商的软件投资。

Z228支持ARM的JazelleTM加速技术,可大大提高Java程序的运行速度,并保持极低的功耗。MOVE协处理器通过实现SAD引擎,使得视频编码的效率提高50%以上。

2. MPEG-4编解码引擎

Z228内置MPEG-4/H.263的全硬件编解码引擎,在进行VGA@30fps的全双工编解码时,ARM926EJ的负荷极低(小于5%),可流畅运行操作系统和其它应用程序。与市面上主流的仅支持CIF尺寸的芯片相比,Z228的视频性能更具优势。在进行码率高达8Mbps的实时解码时,画面没有停顿感。另外,高质量VGA录像与CIF相比,在PC上回放时具有更大的图像画面,输出到电视的效果也更出色。

其全硬件实现的特点使得软件干预极少,提高了产品的稳定性。该引擎采用获得专利的运动估计技术,非常省电,在VGA@30fps全双工编解码时,功耗低于120mW。

图3:无防错的解码图像。图4:Z228的解码图像。

为了在低码率传输条件下提供优秀的图像质量,该引擎具有视频防错的功能,包括条带重同步(Slice resynchronization)、数据分割(Data partition)、可逆变长编码(RVLC)和头扩展码(HEC)等,显著地改善了无线环境下视频传输的鲁棒性。对比图3和图4,即可显示Z228的防错技术在改善画质方面的优越性能。

Z228还内置高性能的全硬件视频后处理引擎,支持色度空间转换、任意尺度图像缩放、去块/去环滤波、亮度/对比度/饱和度校正、抖动(Dithering)、图像掩模、画中画等功能。解码后的视频图像经该引擎处理后直接上屏,无须CPU干预,在不增加功耗的前提下,实现视频的流畅播放。

3. 视频接口加速引擎

Z228内置视频接口加速引擎,采用了杰得专利的可配置图像处理管道技术,包含EBBI插值还原、AWBA白平衡调节、IBCSA图像校正、Gamma色彩校正、HPFS数字变焦、ADNR去噪、DES边缘增强等模块。该加速引擎通过CMOS/CCD图像传感器接口电路,可与市场上主流的CMOS/CCD传感器模组连接,支持RAW、RGB、YUV等多种输入格式。Z228集成了高质量的JPEG编解码模块,可胜任高达1,600万像素的静态图片的拍摄。电子取景和屏上菜单功能也由硬件完成。

图5:Z228芯片的软件架构。

此外,该加速引擎还具备CCIR656/601输入输出接口,方便与电视接口相连,提供电视录制和电视输出等颇受欢迎的娱乐性应用。

4. 外设接口

作为一款高集成度的SoC芯片,Z228内置了多种硬件接口,不仅能给系统开发者带来诸多方便,而且能有效降低产品的成本和减小产品的体积。

Z228支持双屏显示:高达SVGA(800x600)分辨率的24位真彩的主液晶屏,另带一个智能LCD模块,作为副屏与主屏同时工作。Z228支持触摸屏,便于开发PDA、学习机和高端智能手机。

Z228内置了USB OTG接口,使得产品不仅能便捷地与PC主机及其周边设备进行通讯,而且能方便地连接USB存储设备、USB打印机或其它支持USB协议的移动设备。

图6 :用于Z228芯片的开发板。

针对移动设备对大容量存储卡的要求,Z228集成了SD/CF/PCMCIA接口,支持高达4GB容量的扩展。

Z228还内置了其它外设接口,使之可与2G/2.5G/3G基带芯片、蓝牙控制器、以太网芯片、模拟音频编解码器、电视编码器、红外收发器、微硬盘等各种设备互联,开发出具有差异化的产品。

5. 嵌入式软件

在SoC研发中,嵌入式软件占有非常重要的地位。它体现产品的差异化,并充当用户和硬件之间的桥梁,是决定产品成败的关键。Z228的嵌入式软件采用了可分层的弹性架构,如图5所示。

硬件抽象层包括板级支持包(BSP)、驱动程序和诊断调试工具。BSP由启动代码(Bootloader)和硬件配置文件组成,提供系统启动时的软件环境。硬件抽象层在逻辑上把软硬件模块的耦合度降到最低,便于加快软硬件协同验证,缩短开发周期。OS层提供对主流的嵌入式操作系统的支持,比如WinCE5.0、Linux2.6.15。协议层主要包含必要的中间件,如SIP、RTP、RTSP、多媒体库等。由协议层抽象出若干API,供应用层调用。

从硬件抽象层到应用层构成了Z228的软件开发包。它遵循模块化的设计原则,在结构上具有可扩展性和灵活性。针对不同的设备和应用,开发人员可进行适当的裁减,以成本和性能之间取得平衡。

6. 应用举例

基于Z228芯片,杰得提供接口丰富的系统板和开发包,如图6所示。以此为基础,研发人员能够快速地开发出功能各异的产品。

智能手机。基于Z228芯片,只需使用较少的器件,研发人员就能较快地开发出功能强大的多媒体智能手机。Z228可以通过UART或68K接口与基带芯片通信。Z228支持主流的嵌入式操作系统,支持高质量的音视频通讯,具有数码相机/视频摄像功能和PDA功能,并具有软件扩展能力。Z228实现了高效的电源管理,提供多种工作模式,能有效延长智能手机的电池寿命。

PMP/MP4。Z228强大的多媒体性能和丰富的外设接口是高端融合型PMP的必备特点。基于Z228的PMP可外接硬盘、存储卡、摄像头模组、FM模组、蓝牙模组、802.11模组,集拍照、摄像、音乐、FM收音、录音、电视录制和输出、无线传输、数码伴侣等诸多功能于一身。内置的ARM926EJ处理器还可运行嵌入式操作系统,支持Java游戏、Flash插件、即时通信软件、电子图书等,充分体现PMP产品的差异化。

视频监控。Z228是构建视频监控系统的理想选择。其内置的ARM9处理器和硬件视频编解码器有利于研制更加灵活和廉价的分布式终端设备和基于IP的监控网络,符合视频监控向网络化、数字化和智能化方向发展的趋势。Z228的先进的视频压缩算法,能在较低带宽下(小于700kbps)下提供良好的画质(大于30dB);在低延迟模式下,端到端延迟(不计传输延迟)小于60ms;ARM9处理器的存在使得音视频同步的实现更为方便。

可视电话。Z228可用于设计低成本的可视电话和视频会议系统。使用Z228,并配合彩色图像传感器模块和LCD显示模块,产品可传送双向的MPEG-4视频信号。VGA尺寸的画面,再加上低延迟模式和防错技术,可显著改善用户体验。ARM926EJ处理器可运行SIP协议栈,并对视频流的码率进行即时动态调整,以适应不同的信道带宽。