袁三男
(上海电力学院 电子与信息工程学院, 上海 200090)
基于CIMAX和CAM卡的双TS流解扰系统在数字电视监测中的应用
袁三男
(上海电力学院 电子与信息工程学院, 上海 200090)
针对数字电视监测系统中传输流TS的解扰问题,分析了TS流的加扰和解扰原理,提出了基于CIMAX接口芯片和大小CAM卡、同时实现两路独立TS流的解扰方案,解扰系统采用硬件和软件相结合的方式,并在数字电视监测系统中得到了成功应用.
数字电视监测; 传输流TS; 解扰; 接口芯片CIMAX; 大小CAM卡
数字电视采用数字处理技术将模拟的电视信号进行数字化,在系统传输运行过程中,数字信号的完整性和接收效果比模拟电视信号好,因此目前已经大规模发展起来了.传统的模拟电视监测方式主要是针对模拟电视信号,对数字电视播出过程中数字信号的故障和隐患不能做出判断,因此数字电视监测管理系统的建立是保障数字电视系统安全运行的必要条件[1].然而在发展过程中也出现了一些问题,利用数字电视传播不合法的增值业务甚至传播不良内容这些现象也在日益增加,因此数字电视的监测除了码流层和信道传输层引起的出错监测外,还需要进行大量的视音频内容的监测,以便为大家提供一个良好的环境.
为了实现视音频内容的监测,在监测系统中还需要对数字电视TS流进行解码、视音频内容监测(包括视频同步头、黑场、蓝屏、彩条;音频音量及静音检测;特殊图像识别、语音识别等),然后按照设定的码率、帧率等要求重新对解码后的视音频进行编码,以便进行网络传输、存储等,这就是视音频的转码处理.当前数字电视TS流通常都进行加扰,所以若要对TS流解码,先需要对TS流实施解扰以获取干净的TS流,之后由专用解码器实现解码,输出视音频数据.
数字电视为了保证传输的某些特定信息的安全,只允许具备条件的用户接收,因而采用加扰措施.数字电视的条件接收(Conditional Access,CA)就是只允许符合条件的用户接收特定的电视节目.加扰就是对数字电视信号进行规律的变换或增加信号的复杂性,其基本过程是在发送端电视信号进行载波调制前,将欲加扰的数字电视信号和一个伪随机数字序列(Pseudo random number sequence,PRBS)做“异或”运算,输出就是加扰的数字电视信号.在接收端使用同一个伪随机序列对加扰的电视信号作“异或”运算,从而重现原始视信号.因此,收发端伪随机序列在时间上必须一致,跟原先设定的初始值一样,又称为控制字(Control Word,CW),正确的CW是解扰的关键.为了安全起见,需要增加获取CW的复杂程度,因此对其进行加密,形成授权控制信息(Entitlement Control Message,ECM),该过程中的加密密钥称为授权密钥(Authorization Key,AK)或业务密钥(Service Key,SK)[2].发送端与接收端传送的信息包括加扰的数字电视信号,ECM,SK[3],缺一不可.CW的具体加扰实现方式如图1所示.
图1 加扰实现方式
用户获得SK需要具备一定的条件,如交费.这些条件形成分配密钥(Distribution Key,DK),DK对SK加密形成授权管理信息(Entitlement Management Message,EMM),一起传送给用户.用户授权管理系统和用户之间DK的交互,一般会通过相当安全的渠道,如DK固化并以加密形式存储的智能卡方式[4].用户作为接收端,对接收的数字电视载波信号进行一层一层、一环一环的处理,ECM和EMM信息的取出必须在解调、解复用后[4].在智能卡中用DK解密EMM获取SK,再用SK解密ECM得到CW和电视节目的其他相关控制参数,最后利用解出来的CW对伪随机序列发生器进行控制,解出与发送端相一致的伪随机序列并送至解扰器[4],与加扰的电视信号进行异或,恢复出原始的数字电视信号,从而实现数字电视信号的解码或转码,这样便于监测系统的分析处理,有助于及时发现故障并实施相应的保护措施,保证系统的安全运行.
CIMAX是NUERATECH公司生产的DVB-CI/Cable CARD多功能接口芯片,支持DVB-CI/CI Plus以及S-CARD/M-CARD标准,支持多高频头或多个插槽接收端设计,支持多种串行接口(如SPI,USB,TS并USB接口)桥接功能,其核心架构是带内置缓冲和中断处理的MIPS指令处理器,可过滤高达16个PID的TS包码流处理器,并可实现对混合码流或调整后码流的同步收看与录像功能,同时可应用于带多高频头接收机/PVR设计、USB-DVB-CI桥接系统或多码流源带CI+/CI PVR/一体机设计系统.
CIMAX的主机接口包括SPI接口或USB接口,通信按照主机发命令、CIMAX响应的方式,处理的信息主要有两种,即CAM信息(主机和CA间)、REG信息(主机和CIMAX间).数据传输可选择TS接口或USB接口中任意一种完成.
数字电视监测总系统如图2所示.图2中独立输入两路有线电视信号进入高频头,总控CPU通过I2C接口控制选择高频头频率后,分别进行解调,输出两路独立的TS流.此TS流一般包含多套节目,以及节目的管理信息(包括加解扰信息)[5].该TS流由原始信息进行加扰后形成,为了能够解码,必须首先解扰.解扰采用CIMAX接口芯片配合大小CAM卡实现,通过总控CPU配置CIMAX后,大小CAM卡协同完成TS流的解扰工作.
图2 解扰系统及其在数字电视监测中的应用系统
我国数字电视采用DVB标准,为了实现DVB解码器和CA的独立运行,DVB在解码器和CA系统之间定义了一个公共接口,选用个人计算存储卡国际协会PCMCIA连接方式,同时规定了CA模块的形式、参数和性能.因此,本文的数字电视监测系统采用PCMCIA的连接方式,通过DVB_CI模块与主机进行连接,具体如图3所示.
公共接口包括两个分层结构的逻辑接口,即TSI数据流接口和CMD命令接口.TSI接口是主机将解调出的TS数据送入外部CA模块,加密和未加密的TS数据流处理方式不一样,如果数据未加密,模块将对信息不作处理,直接将该包原样返回;如果数据包是加密或属于在选定的服务列表中,则模块需要将加密包进行解扰并返回结果.CMD命令接口主要负责传送CA模块和主机之间通信的命令、密钥、地址等,接口从上到下可分为5层,分别为应用层、会话层、传输层、链路层、物理层.命令接口层如图4所示.应用层基于资源实现一整套协议,包括资源管理器RM、应用信息AI和条件接收支持CA 3个基本资源,以及主机控制、日期/时间、人机接口、低速通信等辅助资源,将其定义为应用可以使用的功能单元.会话层的功能主要给应用提供资源的利用机制,即先与主机或其他模块建立会话连接,再使用提供的资源[6].传输层采用命令响应的形式,主机将C_TPDU命令发送给模块,模块接收到命令后向主机发送R_TPDU表示响应,但是对中断方式的命令不支持[7].链路层位于物理层和传输层中间,主要对下面物理层传来的LPDU(链路协议数据单元)和上面传输层传来的TPDU(传送协议数据单元)进行处理,对TPDU进行拆分和重组,使其大小控制在初始化时主机预先设定的缓冲区范围内,同时把多个传输连接整合成一个链路连接,便于传输.物理层主要是接收处理链路层发来的LPDU,同时是与大卡直接相连的层,也会负责与其相关的一些操作.
图3 DVB_CI模块和主机连接结构
命令接口(Command Interface,CI)作为公共接口,其功能的实现主要依赖于底层驱动模块、CI协议栈和上层应用的协调并共同完成.底层驱动模块主要是针对大卡设计的,当有大卡插入或拔出时,底层驱动模块要提供相应的服务;当大卡进行读写操作时,亦是如此[8].CI协议栈部分完成命令接口中的物理层、链路层、传输层、会话层、应用层之间的通信,一般有6个任务,即:Physical,Link,Transport,Session,RM,Timer,分别实现对应层和定时器的功能[3],其中,各层之间的通信选用消息队列的方式来实现.上层应用要完成的任务有两项:一是在按要求切换节目时,分析所选节目的PMT表,提取CA_PMT并将其发送给相应的CA模块,并判定是否为符合条件的节目,若是,则将进行解扰,否则直接返回;二是将CA模块通过人机接口进行传输显示.
图4 命令接口层
常用的CA接入方式有3种:一是采用机卡分离的小卡方式;二是CA系统集成到解码芯片中;三是CA和机顶盒解调、解码完全分离的大卡方式.目前市场上条件接收系统的主流是第3种方式,它将所有CA信息和功能都集成到一个可插拔分离的条件接收组件(CA模块大卡)中[9],解调解码过程是透明的,因此可以批量生产,节约成本.系统工作时,通过CA大卡和智能小卡协同进行,采用DVB_CI公共接口,硬件接口和软件接口都符合行业规范,便于与其他设备连接.DVB_CI接口功能强大,可同时支持两个独立的CA模块,当然也可只支持一个CA模块,本系统采用的CIMAX就是支持两个独立CA模块的DVB_CI/Cable CARD的多功能接口芯片,以提高系统的接口能力.
由于数字电视信号传播形式、传播媒介的不同,增大了接收模块设计的复杂程度,从节约资源和大范围符合多种形式信号接收要求方面考虑,本系统的CA接入方式采用机卡分离方案,将数字电视终端中的通用部分(硬件)独立出来,做成“机”的形式[10],而把各地广电运行商的条件接收系统CA,以及中间件、数据广播、电子节目指南EPG等诸多增值服务部分做成“卡”.如今对于用户来说,“机”好比一把智能“锁”,“卡”就相当于“钥匙”,将CA和机顶盒分离,有利于更好地保护节目制造商的产权.
PCMCIA接口方案采用DVB-CI大卡,将其解扰、解密等需要保密的专有功能集中在一个可拆卸的CA模块(PC卡)中,而机顶盒只包含调谐器、解调器、解复用器和MPEG2解码器等必须的设备,其功能趋于通用化[11],可插入不同厂家、不同类型的PC卡,机顶盒与CA模块之间通过一个公共接口CI来连接和通信,完成节目解密.公共接口在逻辑上分为传输流接口(TSI)和命令接口,它们协议的具体实现都是分层的.传输流接口主要承担TS流的传输,比较专一;命令接口需要承担建立和维护机卡之间的所有通信连接,所以其结构相对复杂一些.
系统的建立由硬件和软件部分共同协调完成,实现CIMAX解扰TS流的软件模块主要有CI初始化、主机与应用建立连接、主机与CA进行交换等.模块流程如图5所示.
由图5可知,CI初始化主要是将解扰过程中所用到的参数进行初步设置,比如对CAM插入的检测,主机与CA模块所设定的缓冲区大小等信息的设定;主机与应用之间根据资源及所提供的管理机制建立正常通信,在建立过程之中,主机查询所有传输连接上的轮廓并得到响应,列出所有可用资源列表并继续进行应用信息以及CA信息的查询;主机与CA模块的交换主要是发送命令,并得到回应,比如发送CAPMT,获取选定节目的相关信息.
命令接口传输层协议中主机及模块状态转移如图6所示.主机及模块状态转移,一般是处在空闲状态下,当收到主机命令时,需要建立请求进入工作状态,即切换到有效状态,有效请求建立完成以后发送请求内容,相反,若超时,则直接到空闲状态.发送完毕后会进行删除请求回到空闲状态,删除过程若是超时也会自动切换到空闲状态,以节省空间,提高CPU运行效率.模块一般是在收到主机命令Create_T_C时,发送C_T_C_Reply请求,并建立有效请求,当有效请求完成任务时,会发送D_T_C_Reply,收到Delete_T_C后,直接切换到空闲状态,或者处于“正在删除”过程中,若此过程超时,自动转入空闲状态.
图5 软件模块流程
图6 主机及模块状态转移流程
数字电视监测系统中,TS流的解扰是关键环节.本文分析了TS流的加扰和解扰的原理,采用CIMAX接口芯片和大小CAM卡,实现两路独立TS流的解扰功能,对于解扰后的TS流可以直接送给通用解码器进行解码以实现视音频识别处理等功能,也可以传送至网络,从而分配给不同的解码器实现解码或直接进行网络存储,以及监测系统的智能化,方便值班人员对信息及故障的查询.该方案功能强大,系统性价比高,具有很高的实用价值.
[1] 袁三男.数字电视监测系统的码流分析和3级报警的研究和实现[J].上海电力学院学报,2013(5):472-476.
[2] 黄珊.数字机顶盒机卡分离方案研究与设计[D].福州:福州大学,2010.
[3] 胡戈,任胜兵,王国军,等.条件接收系统中的密钥分配及寻址优化研究[J].计算机技术与发展,2009,19(11):143-146.
[4] 张德树.数字电视智能卡条件接收系统加解扰与加解密[J].滁州职业技术学院学报,2009(2):55-57.
[5] 袁三男,王绍徐.数字电视码流的分析转换[J].电视技术,2010(12):11-14.
[6] 廖敏捷.数字电视条件接收系统多密技术的研究与实现[D].成都:电子科技大学,2007.
[7] 龙跃.数字电视机卡分离标准符合性测试系统的研究[D].哈尔滨:哈尔滨理工大学,2006.
[8] 廖敏捷,于鸿洋.支持多模块的DVB通用接口的实现[J].中国有线电视,2006(22):2 172-2 174.
[9] 袁吉.DVB-C 机顶盒信源解码器主控部分的硬件设计与实现[D].成都:电子科技大学,2007.
[10] 昂志敏,段勇.基于 SCAI 的通用 CA 软件架构的研究与实现[J].中国有线电视,2007(22):2 088-2 091.
[11] 杨婕婕,叶宇煌,苏凯雄.数字机顶盒公共接口的设计与实现[J].有线电视技术,2011(8):104-106.
ApplicationofDoubleTSStreamsDescramblerBasedonCIMAXandCAMCardsinDigitalTVMonitoringSystem
YUAN Sannan
(SchoolofElectronicsandInformationEngineering,ShanghaiUniversityofElectricPower,Shanghai200090)
Digital TV system monitoring and descrambling of Transport Stream(TS) is introduced,and the principle of scrambled and descrambled TS stream is analyzed.Interface chip cards based on CIMAX and big/small CAM cards are proposed to achieve two independent TS stream.This descrambling system combines hardware and software to realize the completion of descrambling,and has been successfully used in digital television monitoring system.
digital TV monitoring; transport stream(TS); descrambler; interface chip CIMAX; Big/small CAM cards
10.3969/j.issn.1006-4729.2017.05.019
2016-03-18
袁三男(1967-),男,博士,副教授,江苏苏州人.主要研究方向为通信与信息系统,流媒体网络,数字电视,嵌入式系统.E-mail:samuel.yuan@shiep.edu.cn.
TN949.197
A
1006-4729(2017)05-0505-06
(编辑 桂金星)