DSP的宽带信息终端设计与实现
随着家电、通信、消费电子"3C"合一的大趋势,基于IP宽带网络的IPTV系统逐渐成为热点。IPTV(Internet Protocol TV or InteracTIve Personal TV)也叫交互式网络电视,是利用宽带网的基础设施,一般以IP机顶盒作为主要终端设备,集互联网、多媒体、通信等多种技术于一体,通过IP协议向家庭用户提供包括数字电视在内的多种交互式数字媒体服务的崭新技术。
本文提出并设计实现了一种基于Blackfin BF561的宽带信息终端。该终端采用目前计算机领域最为活跃的嵌入式系统技术,以高性能DSP处理器和嵌入式Linux操作系统为核心[1],对宽带信息终端进行设计实现。
该宽带信息终端实际上是一款低端的IPTV机顶盒,可为用户提供互联网信息浏览和流媒体视频播放服务。该终端在国内电信运营商现有网络条件(主要是网络带宽)下,能够呈现比较理想的媒体播放效果。
该终端已经成功商用,在四川电信的农村信息化工程中得到批量采购。目前,依托四川电信部署的农村综合信息内容平台,已有数千台该款宽带信息终端推广到四川各地农村使用。
2 系统设计
2.1 系统总体设计
基于DSP的宽带信息终端的系统设计原理如图1所示,uClinux操作系统、音视频解码、各种网络协议、嵌入式浏览器、流媒体播放器、图形用户界面均由BF561处理,通过PPI、SPORT、UART等多种通讯接口,和外接外围器件进行连接。
图1 基于DSP的宽带信息终端系统设计原理图
Blackfin BF561是Analog Devices公司近年针对高端多媒体应用推出的双核DSP处理器。BF561作为对称多处理器(SMP)器件,它的每一颗内核都有自己的高速L1指令和数据存储器,同时两颗内核共享128KB的L2存储器。每颗内核都能访问多种外设,包括视频接口、串口和定时器等。[2] 此外,Blackfin处理器还拥有高性能处理器内核、高带宽DMA性能、专为增强视频处理定义的指令集、高效控制处理、分层存储器、动态电源管理等特性。[3]
在设计中,采用BF561的一颗内核处理所有"MCU型"任务,例如图形重叠、网络管理和流程控制,同时运行uClinux操作系统;另一颗内核则执行主要的DSP功能。我们将MP3音频解码也置于处理"MCU型"任务的那颗内核中,而另一颗内核则只进行MPEG4视频解码处理。[4]
下面从视频流程、音频流程、网络通讯对系统主机进行描述。
2.1.1 视频信号的再现
从网络传输到本地的视频信号(视频、文本),经过以太网控制器的信号处理,通过总线输入到BF561,经过MPEG4解码器处理成ITU656格式,再经过 DAC转换成CVBS或Y/C信号,在电视上显示,从而实现了视频图像的重现。DAC采用Analog Devices公司的ADV7179KCP芯片。
2.1.2 音频信号的拾取和再现
从网络传输到本地的音频信号(MP3),经过以太网控制器的信号处理,通过总线输入到BF561,经过MP3解码器处理成ITU656格式,再经过 DAC转换成模拟音频信号,在电视上实现重放。DAC采用WOLFSON公司的WM8731S芯片。[5]
2.1.3 网络处理
本系统采用单网口设计。以太网控制器采用SMSC公司的LAN9115全双工16BIT以太网控制器, 可适应100Base-TX/10Base-T。
2.2 系统软件设计
系统软件设计原理如图2所示,系统应用程序运行于uClinux操作系统之上,内核版本为2.6.11,终端应用采用多进程并行和进程间通信机制。
系统软件由运行于uClinux内核的驱动程序、内核任务以及用户程序组成。
● 内核驱动程序
⑴网络驱动;⑵PPI视频输出模块;⑶基于SPORT0音频驱动程序;⑷和另一核交互的模块。
● 运行于内核态的功能模块
⑴基于Timer驱动的视频解码模块;
⑵完成音频Adaptive Jitter Buffer功能以及音频解码。
● 用户程序
⑴GUI用户程序界面模块;⑵嵌入式浏览器模块;⑶RTSP流媒体播放器模块;⑷解码器接口,RTP/RTCP模块。
3 系统实践
该终端已经实现,并经过数轮系统测试与质量改进,已成功推向市场,并在现阶段具有优异的成本优势和良好的扩展性。如图3所示,是该终端图形用户界面的主菜单截图。
在实现过程中,由于是面向客户进行定制设计,视频解码和音频解码分别取定为MPEG4和MP3。实际上,基于BF561的DSP特性,还可以在系统中设计H264、AVS等其它多种解码器,从而实现支持多种解码器格式的宽带信息终端,具有良好的扩展性。而事实上,Analog Devices公司的很多合作伙伴,都已经在BF561上成功实现MPEG4/H264的CIF/D1解码器。
4 结论
本系统成本优势明显。其中采用的Blackfin uClinux操作系统,由ADI公司支持的技术网站(http://blackfin.uclinux.org)免费提供;ADI公司还携该网站一起,向用户提供持续的技术支持(如版本升级、新项目资源提供等)。
实际上,由
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)
- DSP+FPGA结构在雷达模拟系统中的应用(01-02)