基于OS20的机顶盒软件体系及其应用设计2007-07-12 嵌入式在线 收藏|打印介绍了ST半导体公司的OS20实时嵌入式操作系统的基本特性。通过DVB-T数字电视机顶盒研发项目的应用设计,分析了机顶盒软件研发的主要问题和软件架构的实现,包括系统的状态机设计、搜台算法的实现、以EPG为主的SI解码系统的设计实现和优化,从各个方面讲述了OS20实时操作系统在机顶盒设计中的应用实践。 1引言在较短的时期内,DTV和SDTV不可能降到现有模拟电视接收机的价位,因此还必须通过地面数字STB将地面数字电视广播的节目显示在模拟电视接收机上。本文结合笔者在使用STDTTi5516主芯片开发DVB-T接收机的过程中的心得体会,结合ST半导体公司的OS20实时操作系统,谈谈数字电视接收机开发的应用设计的几个主要问题。2系统介绍以DVB-T为例,整个终端接收解码过程如下图所示。图1终端接收解码过程机顶盒对数字电视信号的处理过程为:电视射频信号经Tuner(高频头)调谐,进行模数转换,输出36MHz的中频数字信号送入OFDM解调模块进行解调之后,变成TS流后经信道解码得到MPEG-2TS流,经解复用模块(集成解扰模块)选出一路MPEG-2音视频流和对应的数据信息,经信源解码后得到所选节目的数字信息。由于机顶盒的输出端接模拟电视,所以数字信息经模拟信号编码后得到模拟信号输出到传统的模拟电视。3 软件层次结构软件结构层次主要分三层:驱动层、中间层和应用层。软件结构层次图见图2。图2软件层次图除了驱动层的turner驱动修改之外,主要工作集中在应用层和DVB-TmoduleAPI。其中,封装的API主要包括画点、线、框(可带各种前景色和背景色),画各种语言文字(可增减和更换字体),画位图,按菜单结构增减菜单,菜单翻页,dbase中EPG和teletext的请求与接收,subtitle的开关切换等等。 OS20实时操作系统在笔者设计的项目开发方案中,使用ST公司的STLite/OS20实时多任务操作系统,它具有以下一些基本特征:1) 采用基于优先级的多任务抢占式调度策略;2) 内核短小,实时性好,能进行快速的上下文切换(小于5μs),效率高;3) 开放源代码,并且支持一系列的处理器芯片(内核主要分C1和C2两个版本);4) 低的内存要求:对于内核,只要求600B的internal和11KRAM(C1核只需要3K);对于每个进程,只要求24B的internal(C1核是32B)和36B的external。这种高效率的操作系统能够为基于ST20平台开发的嵌入式系统提供高效的多任务环境,包括任务调度管理、时钟管理、内存管理、中断处理、通过信号量实现同步和互斥、以及通过消息队列实现消息通信等等。4 GUI和状态机的设计界面风格的选择:选择弹出式菜单和对话框。举例,Menu的数据结构包括标题栏、总项数、当前选择(高亮)项、菜单句柄、以及菜单项结构数组头指针;字库:生成点阵字库,包括英文变宽16点阵字库、中文简体繁体16*16(用于EPG和Teletext界面)和24*24(用于菜单和对话框)点阵字库(GB2312标准的一级字库)、lattin-1欧洲八国(英、法、德、西班牙、意大利、荷兰、葡萄牙、波兰)语言
机顶盒设计流程 来自淘豆网m.daumloan.com转载请标明出处.