引言
在我国,数字电视节目在许多省市已经开始试播,由于用户端使用的基本都是模拟电视机,无法接收数字信号,因此需要一种接收装置来担当二者之间的桥梁,这就是机顶盒(SetTopBox,简称STB)。它是一种扩展电视机功能的一种新的家用电器。它可以把卫星直播数字电视信号、地面数字电视信号、有线电视网数字信号甚至互联网的数字信号转换成模拟电视机可以接收的信号,使现有的模拟电视机用户也能分享数字化革命带来的科技成果。文中主要介绍笔者开发的基于DVB-C的有线数字电视机顶盒。
DVB-C数字机顶盒的硬件设计
LSI2005主芯片介绍
DVB-C数字机顶盒采用LSILogic公司的SC2005作为主芯片。SC2005采用最新的1.27mmPBGA封装,将LSIL641x8传输译码器和L64105MPEG-2音视频解码器集成在一块芯片里,集成度高,内置工业标准的TinyRISC108MHzMIPSCPU,5层图形引擎,DMA控制器,以及统一的OSG存储器和A/V存储器;集成有多标准的编码器、可独立编程的视频DAC,音频DAC。
SC2005接收来自信道解码器的TS流后,送到内部的L641x8模块中,由L641x8对数据进行解复用,形成音频和视频PES分组数据,通过A/V接口输出给L64105MPEG-2解码器进行解码。L64105将PES分组进行解码,输出数字视频和数字音频信号各两组。一组数字视频和一组数字音频信号直接输出。另外一组数字视频信号送到视频编码器中,被转换成全电视信号(CVBS)或S端子信号(Y/C),经过外部低通滤波后,便可直接送到电视机中。另一路数字音频信号送到音频DAC中,转换成立体声模拟信号,经外部低通滤波后输出。
SC2005提供了多种外围设备接口,包括两个UART接口、两个智能卡接口、I2C接口、IEEEl284接口、红外接口、图文电视接口、通用I/O控制以及调制解调器接口。通过这些接口,SC2005可以和多种外围设备相连,其功能更加强大。另外,SC2005还有一个硬盘接口,可以将节目下载到硬盘中,以后再看。
DVB-C机顶盒的硬件总体设计
为了实现有线数字机顶盒的功能,从技术实现上要达到以下要求:
(1)接收CATV网络上110MHz~855MHz频率范围内的射频信号,并转换为中频信号。
(2)实现QAM解调制功能,将调制信号恢复为数字基带信号。
(3)完成信道解码处理,实现前向纠错功能。
(4)完成TS传送流解复用、MPEG-2解码功能,并且能够实现电视信号解码和音频DAC功能,输出符合要求的模拟音视频信号。
本设计实现了以上所有功能,设计总框图如图1所示。
图1SC2005机顶盒系统总框图
1、数字高频头:接收CATV电缆上的射频信号,由高频头电路将射频信号下变频为中频信号,并将中频信号送到内部得解调制芯片,由解解调制芯片完成QAM解调制及FEC前向纠错芯片,而后以并行或串行方式送出TS(传送流信号)。
2、SC2005:LSIlogic公司的传送流处理芯片。
3、CPU_SDRAM:提供SC2005内嵌CPU运行时所需要的存储空间。
4、AV_SDRAM:提供SC2005内部MPEG解码器对PES流进行处理时所需的存储空间。
5、BOOT_FLASH:存放系统BOOT程序、引导系统正常启动。
6、SYS_FLASH:存放系统工作软件,实现系统功能。
7、串口:串口模块电路对SC2005的串行I/O口进行电平转换,提供标准的RS232串行接口,提供RS232调测接口。
8、SMARTCARD:实现授权、加密、收费等功能。
9、用户接口:提供给用户简单得输出、输入接口,如系统工作状态显示接口、按键接口、遥控接口等。
10、USB:提供给用户一个USB1.1兼容的接口,最高数据率12Mb/s;可以用于支持U盘,保存节目或者播放U盘上的节目。
11、IDE:提供给用户一个标准的IDE接口。挂接硬盘后可以用来实现保存节目或者播放硬盘上的节目。
DVB-C机顶盒的软件总体设计
DVB-C机顶盒软件实现方案基于稳定性、可靠性和可扩展性的原则进行设计,所有软件系统应该达到功能完备,使用简便和便于扩充几个特性。跟据上述分析,机顶盒软件体系结构如图2所示。
图2机顶盒软件模块层次图
整个机顶盒软件的结构采取开放式的模块化结构。其中硬件抽象层可以增加软件的硬件无关性;操作系统抽象层用于实现操作系统层的可移植性,以支持多种RTOS;中间件移植层用于各种商业化的中间件软件的移植。
从底下往上看,整个体系从硬件层到应用层分为以下几个层次:
1、硬件抽象层:通过提炼一些硬件操作的特性,将一些与硬件相关紧密的操作抽象出来,从而将操作系统和硬件层分开,这使得BSP和Driver的设计更简洁,有利于提高软件的可重用性和易移植性。
2、BSP层:用于将引导操作系统,对操作系统提供板级支持。同时提供一些近设备的驱动。
3、操作系统及硬件驱动层:提供操作系统内核和硬件驱动。操作系统主要提供内存管理、任务调度、时钟管理、资源共享和互斥等功能。硬件驱动层在操作系统和硬件抽象层的基础上实现对硬件的驱动。
4、中间件:是一种将应用程序和操作系统、硬件细节隔离开来的软件环境,通常它都是由一些虚拟机器构成的,如HTML虚拟机、JavaScript虚拟机、MHEG-5虚拟机、Java虚拟机等。这使得应用不依赖于特定的硬件平台。著名的中间件提供商有:OpenTV和Canal+。
5、DVB引擎:实现DVB/DAVIC协议的解析。包括MPEG2解码器、SI引擎和DSM-CC数据接口。
6、应用层。建立在上述各个模块的基础上的应用程序片。包括:频道管理、系统自检、电子节目导航、软件下载与升级管理和家长控制等模块。
操作系统的选型
机顶盒作为一个典型的嵌入式系统,对其操作系统有更高的稳定性和实时性要求,一般选用实时嵌入式操作系统,这里我们选用uCOS-Ⅱ操作系统:一个源码公开、可移植、可固化、可裁剪、占先式的实时多任务操作系统。由于uCOS-Ⅱ属于开放源码操作系统,所以开发包投入可以免除,而且去了版税。同时该操作系统在工业控制,消费电子和国防等领域已经得到了广泛的应用,实践证明该操作系统在稳定性和可用性上是完全适合在本方案中是选用的。
uCOS-Ⅱ内核精简,效率高,对存储器和内存的需求低,对于降低系统成本有利。此外,uCOS-Ⅱ所有源代码都公开,而且很多著名科研机构包括大学、研究所都对该操作系统进行了支持,提供了大量的已经经过工业验证的软件包,这对于开发人员来说很便利,有利于加快开发进度。
结束语
数字电视机顶盒是模拟电视机向数字电视机过渡的最佳解决方案。数字电视机顶盒是未来家庭必备的多媒体信息终端,使用数字电视机顶盒的有线电视用户,可以享受电视、数据、话音等全方位的信息服务。随着数字技术、多媒体技术和网络技术的发展,数字电视机顶盒的功能将逐步得到完善。