| nbsp; 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内核启动方式,避免了上述缺点。
2.2 应用软件
2.2.1 电子节目指南
电子节目指南是用户获取电视节目播出信息的直接途径,从现有数字电视用户的调查中发现,电子节目指南是当前最受用户欢迎的功能,电子节目指南一般包括电视节目单、节目简介、当前节目信息显示、节目预定等多个环节,通常它的设计采用基于中间件或定制编写软件模块的方式实现,过程复杂、灵活度差。此处采用基于浏览器的电子节目指南设计,电视节目信息以HTML方式或XML方式传送,机顶盒接收后利用浏览器显示给用户观看,其风格和浏览方式都具有很强的灵活性,由于其他类型的增殖业务如网络浏览、电视购物等方式都需要浏览器,因此使用浏览器不会增加系统的额外开销。
2.2.2 数字版权保护
数字版权保护设计分为两种,一种是针对已录制节目的保护,另一种是针对实时播出节目的保护,由于机顶盒具有个人录像机功能,用户能够方便地将实时播出的电视节目录制到硬盘上,并通过USB接口拷贝出去进行散发。为防止这种盗版拷贝的情况发生,设计了严格的 |