首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于STB7100的高清IPTV机顶盒总设计方案

基于STB7100的高清IPTV机顶盒总设计方案

4 IPTV机顶盒软件结构设计
考虑到成本和通用性,机顶盒采用Linux操作系统。嵌入式操作系统负责机顶盒系统的全部软件和硬件资源的分配、调度工作,控制并协调并发活动,能通过装卸某些模块来达到系统所要求的功能。图4表示了系统的软件结构,以Linux操作系统为核心,向下通过各个驱动程序面向硬件系统,调配各种硬件资源,向上可加载与音视频相关的应用程序和完成其他任务的应用程序[4]。
机顶盒可划分为3层结构:操作系统以下主要用于完成对硬件设备的操作,为上层提供支持;API层承上启下,将应用程序翻译成CPU能够识别的指令,去调用硬件设备完成相应的操作;最上层主要实现媒体播放、浏览器以及EPG等应用,由用户直接操作。
图5为Linux网络驱动基本结构,在发送数据时,应用层数据通过dev_queue_xmit( )向下层发送数据,dev_queue_xmit( )通过网络设备接口hard_star_xmit( )函数指针向设备发送数据,将应用层的数据发送给硬件设备;在接受数据时,当网络数据到达设备后产生中断,进人中断处理子程序,然后调用接受函数接受数据,再通过netif_ix( )函数发送给上层。编写DM9000AE驱动时,除实现探测、发送接受及中断等函数外,还要与开放的板子相对应,需注意网卡的基地址和中断。由于DM9000AE的地址线和数据线是复用的,所以要根据电路原理图来确定用来读取数据的I/O端口地址线和数据线的关系。
在网络功能实现的基础上,本设计采用NFS协议实现网络挂载文件系统,把boot loader和内核镜像写到FLASH上,这样可把应用程序直接放到PC机的文件系统里,节省了机顶盒的内存空间。目前,硬件电路设计已完成,经过测试,可播放H.264和MPEG一2的高清和标清视频码流,同时可播放MPEG一1,AAC,PCM等格式的音频内容。另外,采用了基于GTK的Dillo浏览器,由于不支持.1avaScript,Java等附加功能,使得它具有规模小速度快的优点。可以把视频模块、EPG模块等各种功能模块以插件方式与Dillo浏览器一起使用。当需要进行交互服务时,可通过HTTP协议访问EPG服务器,得到EPG相关信息,并在本地进行解析重构出EPG。如果需要点播视频,就通过:EPG去视频服务器上得到视频源的URL,然后对URL进行解析,再交给视频功能模块进行解码播放。
5 小结
介绍了IPTV机顶盒硬件电路的基本组成模块,确定了以STB7100为核心的系统解决方案。STB7100具有强大的音视频处理能力,并可通过其丰富的外围接口进行功能芯片的扩展,实现各种需要的功能。笔者虽然已实现了部分功能,但机顶盒设计仍需完善,还需要对智能卡、数字版权管理等扩展功能做更深一步的研究。
返回列表