基于SoC技术的OMAP1510解析方案
扫描二维码
随时随地手机看文章
引言
传统的手持设备,如人们较为熟悉的PDA,基本功能均比较简单,主要是管理个人信息,如通讯录、备忘录,以及计算器、录音和辞典等功能。这些功能都是固化的,不能根据用户的要求进行改进,而且在人机接口、多媒体和影音支持方面都还有很大的欠缺。随着 3G时代的到来,结合人们对未来新信息家电的要求,新一代手持设备将定位于整合宽带通讯与多媒体功能,支持彩色液晶屏幕以及更快速的数据处理能力等。显而易见,这样的手持设备将会是一个复杂的嵌入式系统,因此其设计实现也不同于传统的以单一微处理器为核心,以专用的控制程序实现应用功能的简单设备;而代之以SoC为核心,以通用性较强的嵌入式操作系统为软件平台,应用软件可扩展的设计方案。
硬件平台核心—SoC
传统的手持设备通常使用一个RISC微处理器,处理数据的输入输出、数字计算以及屏幕输出等工作,如市面上最常见的PALMPDA就采用Motorola的 DragonBall32位RISC微处理器。而对于复杂的嵌入式系统,仅有微处理器是不够的,要额外再加上其它特殊的处理芯片,比如说DSP(数字信号处理器)、闪存或者LCD驱动等,这就产生了SoC,即结合多种芯片架构,将许多特殊功能的处理单元整合到一块芯片中。这样做的优点不仅是提供了一个功能强大,易于开发的硬件平台,而且由于整合多个功能模块在一块芯片上,在功率消耗方面将会有显著的降低,并且可以避免信号处理中产生的杂波。
现在SoC的最新技术,在于结合RISC微处理器与数字信号处理器DSP和其它外围控制器于一身,通过整合RISC微处理器的通用性功能和DSP多媒体通讯的专用特性来达到效率成本和省电的最佳比例。由于SoC在设计和制造中的复杂性,现在只有为数不多的大型半导体厂商可以完成。其中,最具有代表性的是 Intel公司推出的Xscale架构和德州仪器公司(TI)的OMAP架构,这两种SoC均定位于面向新一代个人移动信息平台。本设计使用的SoC核心是TI公司的OMAP1510,下面将结合它的结构和功能阐述具体设计方案。
TI的OMAP1510
OMAP为德州仪器公司(TI)最新推出的一项先进的SoC技术,其最大特点是整合了TI的DSP核心和ARM的RISC微处理器以及各种外围控制器。各部分的功能和作用简介如图1所示。
图1 OMAP1510的核心部分
OMAP1510SoC 的核心有两部分,一是175MHz的ARM925RISC微处理器,可作为嵌入式操作系统的控制核心,处理人机接口等系统功能主控的相关运算;另一个是 200MHz的数字信号处理器———TMS320c55x,用于处理大量的实时多媒体信息,如MPEG1、MPEG2、MPEG4或是其它的音频、视频信息流。
DSP和ARM RISC微处理器分别由两个操作系统所控制,DSP采用TI自己的微核心———DSP/BIOSII,可以在上面方便地开发符合实时运算效率的软件组件; 而ARM微处理器则使用一般的嵌入式操作系统来控制,如我们熟悉的WindowsCE,Linux等。为有效地支持整个OMAP平台,两个处理器之间的资料通信就成为关键。针对这一点,TI提出DSP/BIOSBridge作为解决方案,能够让应用程序开发人员在双处理器架构下撰写程序,就有如在单一处理器上一样方便。
OMAP SoC在开发工具方面使用的是TI流行的CodeComposerStudio(CCS),这套开发工具包含了程序编译器、仿真器以及程序调试器等,熟悉 CCS后,使用这些工具可以很方便地开发各种基于OMAP的应用程序,尤其在撰写DSP的应用组件时,通过CCS可以很容易的在DSP/BIOS上整合支持影像及音频数据处理的组件,而不必花太多心思了解底层操作系统的运作方式。
目前,对于OMAP1510,支持得比较好的操作系统是 Symbian公司的EPOC。它的整个系统为Client-Server架构,可以在Windows操作系统上使用Symbian QuartzC++SDK6.0开发EPOC上的OMAP应用程序,应用程序采用OMAP中的DSP用来处理多媒体资料,并在上面执行 TIDSP/BIOS,而ARM处理一般性工作。举例来说,在上面开发的MPEG4播放功能,就是由DSP实现MPEG4的解压缩功能,在ARM上面执行如档案处理、画面处理等工作,同时EPOC建立一个Multimedia Server来负责相互之间的信息沟通,并建立相关的API以利于应用程序的扩充。
在系统调试方面,OMAP提供了一个JTAG接口,在芯片上还整合了多功能的周边控制组件。例如LCD控制器、内存扩充接口,红外接口、蓝牙接口,触控式面版扩充接口及USB接口等等,可以方便的配合各种输入输出设备使用以及进行功能扩充。
[!--empirenews.page--]
软件设计
图 2是本系统完整的软件构架框图。其中,驱动程序(DeviceDrivers),微核心(MicroKernel)和系统服务三层组成了操作系统。与一般的计算机系统不同,由于嵌入式系统的硬件都已经固定下来,所以驱动程序都内建在操作系统里。微内核完成狭义的“操作系统”功能,如控制计算机的硬件装置, 内存和档案系统的管理,系统资源的分配和内存管理等等。
图2 软件架构框图
为了实现“跨平台”要求,操作系统在驱动程序之上再建立一层硬件抽象层,通过对硬件的抽象描述,可降低和底层硬件的耦合度。即使底层的硬件不同,只要有适当的驱动程序,整个系统的架构不需改变就可以运作。这主要是为以后的系统扩展和移植做准备。
系统服务指的是位于语言层次,提供程序语言呼叫的一组接口及其操作。其作用类似于Dos下的“int21h”指令,即提供中断服务程序。只要应用程序向操作系统请求协助,系统服务就会被调用。这一层还包含了对系统语言库的支持。次上层的图形用户接口(GUI)与其它函数库的作用是提供可视化组件,供在上面开发的应用程序直接调用,做成接口。此外,还有一些较高级的函数库也在这一层出现,如多媒体函数库。这一层是决定应用程序设计难易的关键。最上层是应用程序,主要包括网络浏览器、e-mail、文件管理等常用功能。应用程序的质量和数量是手持设备产品主要的竞争力之一,如市场占有率第一的PalmOS机种就有数万种应用程序,并提供完善的接口供用户开发和扩展.
扩展应用
如前文所述,OMAP1510提供了多个周边组件作为扩充功能的接口,只要加入适当的驱动程序和设置,即可以方便的进行各种应用功能扩充。如其中的蓝牙接口,就是为了实现现在对手持设备越来越重要的无线接入功能而准备。另外,为了成功的过渡到第三代移动通信,OMAP还提供了一个语音通信的接口模块,开发者可以选择将手机的功能集成在其中,做成类似于Smartphone 的产品。以此SoC为核心的PDA ,不但大大提高了原有功能的处理效率,而且具有多媒体和宽带通讯功能,在服务商的支持下,可以实现与朋友通过无线数据传输联机玩身历其境的游戏。
发展趋势
未来的手持设备将是计算、通信、网络、存储、娱乐、电子商务等多功能的融合。而OMAP 架构的SoC ,以其强大的多媒体处理能力,丰富的扩展功能接口和本身的高效、省电等优点,广泛应用于实时的多媒体影音数据处理、语音识别系统、网络通信、无线通讯与电子商务等领域。目前已经有许多世界性的大厂宣布将以OMAP 作为新一代无线通讯的新信息家电产品核心,如Nokia 、SONY、Handsprin 及Ericsson 等; 此外,还有超过400 家的厂商正在发展与 OMAP 架构相关的应用软件与周边装置。