基于ARM和STi5x数字网络机顶盒的设计
扫描二维码
随时随地手机看文章
关键词:数字网络机顶盒;双口RAM;ARM9核;STi5518
1 前 言
随着计算机技术的纵深发展,后PC机时代的来临,有线电视网络、互联网、电信网络的融合成为时代发展的必然趋势。但由于三网在数据传输方式上有很大的不同,所以要将三网在技术层面上融合,目前来讲还不太可能,所以要实现三网的融合,还必须借助于类似网络机顶盒(IPTV)的设备来完成三网的融合。中国有线数字电视标准采用的是欧洲的DVB-C标准,现在虽然市面上有数字电视机顶盒,但它们采用的都是一些企业完整的机顶盒方案,如采用菲利浦公司的DVB-C机顶盒方案,调谐器和信道解码器分别采用TDA8274和TDA10023[1],CPU采用MIPS核的PNX831X;美国ST公司的以STi5518为CPU的机顶盒方案[2],其CPU核心是ST20等等,这些完整的数字机顶盒方案的中央控制模块往往将重点放到数字电视信号的解复用、视频解码、音频解码及PAL/NTSC编码等功能,所以这些机顶盒的刻录功能和上网功能等都非常的弱,再者因为它们不能够很好的嵌入常见的嵌入式操作系统,所以很多应用程序的编写工作量都非常的大,很多功能都难以实现。
2 传统数字机机顶盒和数字网络机盒的比较
数字电视系统分成数字电视的发送,数字电视的传输和数字电视的接收。数字电视的发送主要包括数字节目的制作,音视频编码,其标准采用MPEG-2标准的MP@ML,其数据的压缩率可达到30~50倍,以便于信息的存储和传输;然后将数字节目复用以增加通道传输容量;信号调制,不同的传输方式采用不同的调制方式。信号的传输方式有三种形式,卫星传输,调制方式采用四相移位键控(QPSK)。地面广播传输,其调制方式采用DMB。有线电缆传输方式,其调制方式采用正交幅度调制(MQAM)。传统的数字机顶盒的逻辑结构如下图1所示:
图1 传统的数字机顶盒逻辑结构
本设计将数字电视的解复用模块STi5518和ARM9核技术有机的结合起来,设计一款基于ARM9和STi5518有线数字网络机顶盒。有线数字机顶盒前端的调谐器和信道解码器采用菲利浦公司的TDA8274和TDA10023,解复用器采用STi5518,ARM9核采用三星公司S3C2410A,两个CPU的数据通信采用IDT公司的双口RAM。其硬件结构如下图2所示:
图2 数字网络机顶盒逻辑结构
该数字网络机顶盒和传统的机顶盒相比较,仅多了ARM模块和双口RAM模块,而功能却大为增加,数字网络机顶盒主要的功能是完成数字电视节目的接收,将处理好的节目信号保存到存储设备和送到显示设备显示,同时能够完成与互联网的连接。由这样几步完成:机顶盒的硅调谐器接收到射频信号,下行变换到中频信号后放大,然后送AD转换器进行模拟量到数字的转换,再送入解调器模块进行解调,输出串行或并行的MPEG-2格式的传输流(TS)。这部分的功能主要由菲利浦公司的TDA8274和TDA10023芯片组完成,经过该芯片组的调谐、下变换放大、AD转换后输出传输流(TS)。
STi5518接收前端送来的传输流后,先进行解复用、解扰,MPEG-2音视频解码,然后再完成PAL/NTSC&SECAM编码和VGA转换输出,送给电视机或CRT显示,同时支持多种音频编码和杜比5.1音频标准输出。前端接口支持VCD、DVD、SVCD和CD-DA I2S、串行口,并且支持I2C控制接口。并且通过双口RAM完成与ARM CPU的通信。
机顶盒的主CPU采用三星公司ARM核S3C2410A,该CPU的工作频率可达203MHz,集成Flash、SDRAM控制器,硬盘接口、USB接口、I2C控制器、多串行口、互联网接口等。其主要功能是对整个数字网络机顶盒进行控制,完成与Internet的连接,电视节目的存储,完成视频点播等功能。利用双口RAM完成与STi5518的数据交换,利用I2C完成对前端解调器的控制。
3 网络数字机顶盒的硬件结构
3.1 数字网络机顶盒前端硬件设计
数字网络机顶盒前端功能是完成射频信号的接收、下变换放大、通道解码输出传输流(TS)。RF接收器和通道解码器采用菲利浦公司TDA8274和TDA10023。TDA274是一款功能强大的RF集成电路,嵌入了低噪声的输入放大器,并且为处理RF信号提供了一个图像抛弃混合和向下转换成IF的电路,经过滤波后送给通道解码器TDA10023,完成通道解码功能。
TDA10023是一款电缆通道解码器,提供4,16,32,64,128和256正交频幅解调功能,具备IF信号输入接口,通过内部10位A/D转换器将模拟信号转换成数字信号。芯片包括两个前向纠错编码器(FEC),在DVB-C模式中,使用MPEG-2的同步字节进行纠错,能够纠正8个错误字节,在MCNS模式决策中,使用软解码器纠正随机的通道错误,送给TDA10023的IF信号经过A/D转换,QAM解调,前向纠错、滤波,最后输出串行/并行传输流。
3.2 解复用及音视频处理
本数字网络机顶盒CPU采用ST公司的专用解复用和音视频处理器芯片STi5518, STi5518是一款32位的高性能的CPU,专门用于DVB数字电视信号的解复用、解扰和MPEG-2音视频解码的专用芯片。其指令Cache和数据Cache分设各2KB,另带4KB SRAM可以设置为数据Cache。它支持PAL/NTSC/&SECAM编码输出,音视频解码器的支持多种编码格式。前端接口兼容DVD、VCD、SVCD、和CD-DA,硬件TS解复用器支持串/并输入,集成了丰富的外围接口,它支持ANSI C编译器和库,给开发带来极大的方便。
STi5518以串行或并行的方式接收来自前端输出的传输流,其内部解复用器解调出不同的节目频道,提取相应的音视频流和数据流,其输出为MPEG-2音视基本流及一些数据净荷。MPEG-2解码器和相应的解析软件用数字信息的还原。对于加密的电视节目,条件接收模块可以通过智能卡对音视频进行解扰。MPEG-2解码器用于音视频解压缩,经过视频编码器和音频编码器还原模拟音视频信号。解复用及音视频解码STi518扩展功能模块如下图所示:
图3 解复用、音视频解码模块
在STi5518模块中,E2PROM用于存放工作过程中的配置参数,同步存储器SDRAM用来运行程序,Flash用于烧写启动程序,智能卡接口用于完成条件接收功能。同时该扩展模块输出数字电视和VGA显示器所需要的信号,双口RAM用于完成STi5518和ARM板之间的通信。
3.3中央处理器ARM9模块
S3C2410是三星公司设计开发的基于精简指令集的ARM9核的CPU,工作频率可以达到了203MHz,且具有丰富的外围组件,其中主要包括:存储器管理单元MMU,16KB的指令缓冲器和16KB数据缓冲器[3],存储器控制器(SDRAM控制器)、NAND Flash 和NOR Flash 控制器,4通道的外部DMA请求控制,3个串行口,SD存储卡读取接口,2个USB接口(1个USB主机接口和1个USB设备接口),5个脉宽调制定时器,看门狗定时器,117个通用I/O端口(其中24可用于中断请求)。正因为S3C2410有如此强大的外围控制组件,所以在电子产品中的应用十分广泛。其ARM9扩展板的逻辑结构如下图4所示:
图4 ARM9扩展板的逻辑结构
ARM9扩展板中由S3C2410CPU、64M闪存、64M的同步存储器、键盘和USB接口;处理数字电视信号的部件主要由硬盘、互联网接口、红外线发送与接收和双口RAM组成。该模块的主要功能是完成数字电视节目的存储,连接到互联网,红外线的控制,通过I2C接口控制前端调谐器,通过双口RAM完成与STI5518的数据交换。系统中的64M闪存用来存放CPU的启动程序和Linux操作系统;64M的同步存储器用来运行操作系统和应用程序;键盘用来输入数字;USB接口用来外接USB设备,如USB 移动硬盘、USB打印机等等;硬盘用来存储数字电视节目和其它信息、数据;互联网接入模块用于宽带接入互联网;红外线模块控制遥控器的发送与接收,选择电视节目或实现其它功能;双口RAM用来实现与STI5518的数据交换。
4 数字网络机顶盒的软件和功能
由于嵌入式系统软件和微处理器密切相关,所以通常采用分层模型来描述,软件层次结构自底而上分为固件层、驱动层、中间件、应用层,这样,一旦硬件模块发生变化,软件的修改只发生在和硬件相关的固件层,中间件和应用层可以保持不变,能够减少编程工作量,缩短软件开发时间。层次构建遵循的原则:某一层的模块可调用下层模块,同时又能被上层调用,同层之间一般不能调用。
数字网络机顶盒的硬件组成相当于一台奔Ⅲ的计算机和数字机顶盒,所以其功能既能够完成计算机的功能又能够完成数字机顶盒的功能。该数字网络机顶盒的能完成主要功能是:
1)数字电视节目的接收 2)DVB公共解扰算法和条件接收 3)支持PAL/NTSC/SECAM 4)支持MPEG-2图像和MP3、杜比5.1音质 5)远程教育 6)按次付费电视收看
7)电子节目指南 8)互联网的接入[4] 9)数字电视节目存储 10)视频点播(VOD)
11)交互式电视游戏等等,可以看出,数字网络电视机顶盒的功能十分强大。
5 总结
本文作者的创新点是完成了基于ARM9和STi5518的数字网络机顶盒硬件平台的设计。文中对传统的数字机顶盒和数字网络机顶盒作了比较,同时给出了数字网络机顶盒的硬件逻辑方框图,以及软件模型和功能。该设计实现后,不仅能够完成传统数字机顶盒的功能,还能够完成电视节目的存储和连上互联网的功能,有理由相信,随着数字电视时代的到来,该设计能得到广泛的应用。
[1] Philips Electronics Co., Ltd. TDA827x User’s Manual[OL].2003.
[2] ST Electronics Co., Ltd. Sti5518 User’s Manual[OL].2001.
[3] 张颖,林孝康.基于ARM和FPGA的嵌入式网关设计[J].微计算机信息,2006,8-2:32~35.
[4] 侯冬晴,赵金.基于ARM9和GSM的远程数据采集平台的设计[J],机电产品开发与创新.2006,2:84~85.
[5] Samsung Electronics Co., Ltd. S3C2410X Microprocessor User’s Manual[OL].2003.