基于EM8620的IPTV机顶盒设计
时间:09-03
来源:互联网
点击:
制器
USB2.0主控制器采用威盛公司的VT6212,它是一个四端口USB2.0控制芯片,能支持高达480Mbps的传输速度,并采用动态中止时序控制(Dynamic Stop Clock Control)降低功耗。VT6212利用主机端控制接口(Enhanced Host Controller Interface)方式提供高速数据传输,利用通过控制芯片接口(Universal Host Controller Interface)方式向下兼容低速的USB1.1数据传输,此外TV6212也支持32-bit卡总线模式、可搭配PCMCIA接口作为USB 2.0集线器,增加外设的接入数量。
1.3.4 视频输出
EM8620能够提供模拟和数字两种视频信号输出,模拟视频采用复合(CVBS)、分量(S-Video和YPrPb)方式直接输出,输出中都可采用Macrovision技术进行防盗版录制保护。数字视频(24bit RGB)连接到DVI信号合成芯片(SIL164),编码为DVD格式后输出。
1.3.5 DVI信号合成
DVI是目前使用非常广泛的数字视频接口,既可以适应于高/标清数字电视显示、也可以用于普通的电脑监视器显示。此处选择Silicon Image公司的SIL164实现DVI信号合成和发送。SIL164采用PaneILink数字技术设计,支持从VGA到UXGA(640×480-1600×1200)的清晰度显示范围,数据速率范围为25-165Mbps,具有12bit(半像素时钟沿)和24bit(真彩色支持)两种设计模式,同时支持I2C总线控制,具有热插拔特性,完全兼容DVI1.0规范。
1.3.6 音频输出
EM8620可提供三路I2S和一路SPDIF等两种串行数字音频信号,其中每路I2S信号承载两个声道的PCM数据,三路I2S信号连接到音频DAC
后,转换为6路模拟音频,用于实现Dolby AC3的5.1声道环绕声;SPDIF串行数字信号直接输出,可承载两路PCM音频或压缩的5.1 声道Dolby AC3音频。
1.3.7 外设总线
外设总线上连接有IDE硬盘、DVD光驱和Flash存储器,IDE硬盘用于实现个人录像机功能,用户可以将播放的电路节目方便地存储到IDE硬盘,同时也可以用于存储通过增殖业务从网络上下载的各类其他数据;DVD光驱可使机顶盒实现DVD播放功能,Flash存储器的作用非常重要,用于存储整个机顶盒的操作系统软件。虽然也可以将操作系统安装到IDE硬盘,但是IDE硬盘的稳定性远不如Flash存储器,并且还会受到其他应用程序,特别是病毒的攻击,非常容易造成系统崩溃。
1.3.8 FP/VFD和红外信号接收
FP/VFD用于机顶盒的前面板控制和状态显示,红外信号接收用于接收遥控器发送的控制信号。
1.3.9 UART
虽然IPTV具有双向业务通道,能够采用认证的方式实现节目的版权保护,但是考虑到目前数字电视中的条件接收到多采用智能卡方式,为保护系统的兼容性,此处仍然设计有基于UART的智能卡通信模块,用于支持使用智能卡进行密钥解密的工作方式。
2 软件设计
软件主要包括嵌入式的操作系统和各类驱动及应用软件。由于当前Linux有着优良的可移植性和广泛的兼容性,因此在本方案中操作系统采用μCLinux实现,而应用软件主要包括电子节目指南、数字版权保护和条件接收、浏览器、图形用户界面、软件解码模块等。
2.1 嵌入式操作系统
μCLinux是面向MMU(内存管理单元)设计的嵌入式操作系统。内核由Linux2.0 Kernel发展而来,同标准Linux相比,它继承了原有的工作稳定性强、网络功能强大等主要优点。此外,它具有占用空间小、执行效率高等特点,由于IPTV机顶盒需要实现各种基于网络的增殖业务,因此对于网络通信协议的需求比较广泛,μCLinux包括TCP/IP等多种网络协议,能够支持当前各种基于IP的业务,同时它还具有良好的开放性,任何新协议都可以很方便地加入到内核中,具备了持续升级的可扩展能力。
在使用μCLinux进行软件设计时,一个需要着重考虑的问题是内存管理,由于EM8620没有MMU管理存储器,因此μCLinux不能使用虚拟内存管理技术,内存访问应采用直接寻址方式,所有程序访问的地址都是实际的物理地址,操作系统内存空间失去保护后,系统内各个进程实际上是共享同一个内存空间,因此在设计多进程任务时就需要特别注意进行内存保护,防止程序操作越界溢出。具体而言,就是在每个进程初始化时,μCLinux会根据用户的申请分配一段连续的堆栈地址空间,而后该进程中所有的数据操作都在此内存空间内完成,所以开发人员必须对每个任务进程所需的最大内存空间做出正确估计和分配,一旦生成的数据空间大于所分配的内存空间,就会产生内存溢出,侵犯其他程序的地址空间,从而导致程序的运行异常,严重者将导致系统崩溃。
传统Linux最大的缺点之一是,系统非正常关闭后,经常会产生硬盘碎片,使操作系统无法正常引导启动,此处,将μCLinux编译后烧写到Flash上采用Flash内核启动方式,避免了上述缺点。
USB2.0主控制器采用威盛公司的VT6212,它是一个四端口USB2.0控制芯片,能支持高达480Mbps的传输速度,并采用动态中止时序控制(Dynamic Stop Clock Control)降低功耗。VT6212利用主机端控制接口(Enhanced Host Controller Interface)方式提供高速数据传输,利用通过控制芯片接口(Universal Host Controller Interface)方式向下兼容低速的USB1.1数据传输,此外TV6212也支持32-bit卡总线模式、可搭配PCMCIA接口作为USB 2.0集线器,增加外设的接入数量。
1.3.4 视频输出
EM8620能够提供模拟和数字两种视频信号输出,模拟视频采用复合(CVBS)、分量(S-Video和YPrPb)方式直接输出,输出中都可采用Macrovision技术进行防盗版录制保护。数字视频(24bit RGB)连接到DVI信号合成芯片(SIL164),编码为DVD格式后输出。
1.3.5 DVI信号合成
DVI是目前使用非常广泛的数字视频接口,既可以适应于高/标清数字电视显示、也可以用于普通的电脑监视器显示。此处选择Silicon Image公司的SIL164实现DVI信号合成和发送。SIL164采用PaneILink数字技术设计,支持从VGA到UXGA(640×480-1600×1200)的清晰度显示范围,数据速率范围为25-165Mbps,具有12bit(半像素时钟沿)和24bit(真彩色支持)两种设计模式,同时支持I2C总线控制,具有热插拔特性,完全兼容DVI1.0规范。
1.3.6 音频输出
EM8620可提供三路I2S和一路SPDIF等两种串行数字音频信号,其中每路I2S信号承载两个声道的PCM数据,三路I2S信号连接到音频DAC
后,转换为6路模拟音频,用于实现Dolby AC3的5.1声道环绕声;SPDIF串行数字信号直接输出,可承载两路PCM音频或压缩的5.1 声道Dolby AC3音频。
1.3.7 外设总线
外设总线上连接有IDE硬盘、DVD光驱和Flash存储器,IDE硬盘用于实现个人录像机功能,用户可以将播放的电路节目方便地存储到IDE硬盘,同时也可以用于存储通过增殖业务从网络上下载的各类其他数据;DVD光驱可使机顶盒实现DVD播放功能,Flash存储器的作用非常重要,用于存储整个机顶盒的操作系统软件。虽然也可以将操作系统安装到IDE硬盘,但是IDE硬盘的稳定性远不如Flash存储器,并且还会受到其他应用程序,特别是病毒的攻击,非常容易造成系统崩溃。
1.3.8 FP/VFD和红外信号接收
FP/VFD用于机顶盒的前面板控制和状态显示,红外信号接收用于接收遥控器发送的控制信号。
1.3.9 UART
虽然IPTV具有双向业务通道,能够采用认证的方式实现节目的版权保护,但是考虑到目前数字电视中的条件接收到多采用智能卡方式,为保护系统的兼容性,此处仍然设计有基于UART的智能卡通信模块,用于支持使用智能卡进行密钥解密的工作方式。
2 软件设计
软件主要包括嵌入式的操作系统和各类驱动及应用软件。由于当前Linux有着优良的可移植性和广泛的兼容性,因此在本方案中操作系统采用μCLinux实现,而应用软件主要包括电子节目指南、数字版权保护和条件接收、浏览器、图形用户界面、软件解码模块等。
2.1 嵌入式操作系统
μCLinux是面向MMU(内存管理单元)设计的嵌入式操作系统。内核由Linux2.0 Kernel发展而来,同标准Linux相比,它继承了原有的工作稳定性强、网络功能强大等主要优点。此外,它具有占用空间小、执行效率高等特点,由于IPTV机顶盒需要实现各种基于网络的增殖业务,因此对于网络通信协议的需求比较广泛,μCLinux包括TCP/IP等多种网络协议,能够支持当前各种基于IP的业务,同时它还具有良好的开放性,任何新协议都可以很方便地加入到内核中,具备了持续升级的可扩展能力。
在使用μCLinux进行软件设计时,一个需要着重考虑的问题是内存管理,由于EM8620没有MMU管理存储器,因此μCLinux不能使用虚拟内存管理技术,内存访问应采用直接寻址方式,所有程序访问的地址都是实际的物理地址,操作系统内存空间失去保护后,系统内各个进程实际上是共享同一个内存空间,因此在设计多进程任务时就需要特别注意进行内存保护,防止程序操作越界溢出。具体而言,就是在每个进程初始化时,μCLinux会根据用户的申请分配一段连续的堆栈地址空间,而后该进程中所有的数据操作都在此内存空间内完成,所以开发人员必须对每个任务进程所需的最大内存空间做出正确估计和分配,一旦生成的数据空间大于所分配的内存空间,就会产生内存溢出,侵犯其他程序的地址空间,从而导致程序的运行异常,严重者将导致系统崩溃。
传统Linux最大的缺点之一是,系统非正常关闭后,经常会产生硬盘碎片,使操作系统无法正常引导启动,此处,将μCLinux编译后烧写到Flash上采用Flash内核启动方式,避免了上述缺点。
机顶盒 FPGA 数字电视 电子 嵌入式 总线 USB DAC 电路 红外 Linux 相关文章:
- 科胜讯针对有线机顶盒和宽带数据应用发布DOCSIS 2.0+解决方案 (02-07)
- NXP半导体推出全球第一款完全整合型低功耗移动WiMAX收发器(09-20)
- 宽带接入在终端用户中的应用(09-04)
- 基于AVS标准的IPTV业务的解决方案(08-05)
- Broadcom试图用以太网技术取代HDMI(04-01)
- IPTV测试仪网络层测试的设计与实现(08-11)
