一种双插槽数字电视接收机TS流切换装置和方法
技术领域
本发明属于数字电视应用领域,尤其涉及一种支持双CI(Common Interface,通用接口)插槽数字电视接收机的TS流切换装置和方法。
背景技术
随着数字电视的发展,越来越多的电视网络使用数字信号代替模拟信号作为基本的网络信号。而由于数字信号很容易编辑,因此也就很容易被不法分子盗播。为了防止盗播行为的发生,现行的网络运营商往往通过CA(Conditional Access,条件接入)系统,即通过特定的CA卡来允许客户接受特定的电视网络运营商的数字信号。早期的CA卡数字电视接收机,往往是一个接收机固定安装一个CA卡,这就导致一个接受机只能接收某个特定运营商的数字电视信号,若更换了运营商,则该数字电视接收机也就没用了,通用性很差。
为了解决数字电视接收机通用性的问题,欧洲DVB组织公布了DVB-CI标准,以便CA卡能够通过通用的接口插入接收机,从而实现机卡分离,增强数字电视接收机的通用性。其中接口为通用接口的CA卡即是通称的CI卡,接收机上的通用接口插槽即为CI插槽。
对于只有单个CI插槽的数字电视接收机来说,不需要对TS(Transport Stream,传送流)流进行复杂的配置。当有CI卡插入插槽时,从tuner(数字电视接收机调谐器,用于接收卫星信号,并将之解调为加扰的TS流)解调得到的加扰TS流通过插槽中的CI卡进行节目解扰,解扰后的TS流送入MCU进行解码播放;当插槽中没有模块时,tuner解调后的TS流从插槽旁路,直接送入MCU输出。
现有的数字电视接收机,为了能够接收更多的运营商的信号,往往有1个或者多个机卡分离的CI插槽,用于插入不同运营商的CI卡。而现有的多个CI插槽的数字电视接收机的CI卡往往相互分离,需要接到某一个运营商的网络时,再用某个CI卡。这就需要提前知道当前的TS流来自哪个运营商才能决定切换到哪个CI卡,数字电视接收机无法自动区分TS流属于哪个运营商,并自动进行解扰。
发明内容
针对上述问题,本发明的第一个目的在于提供一种双CI插槽的数字电视接收机的TS流切换装置,从而能够自动对来自不同运营商的TS流进行解扰。
针对上述问题,本发明的第二个目的在于提供一种双CI插槽的数字电视接收机的TS流切换方法,从而能够自动对来自不同运营商的TS流进行解扰。
本发明的第一个目的通过以下的技术方案来完成:一种双插槽数字电视接收机TS流切换装置,包括tuner、CI插槽A、CI插槽B,还包括CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)、MCU;所述MCU在数电电视接收机自检后,根据CI插槽A和CI插槽B中是否有CI卡,发送不同的控制数据到CPLD;所述tuner接收卫星数字电视信号后,将卫星数字电视信号解调为TS流并发送到CPLD;所述CPLD根据控制数据决定TS流是否流经CI插槽A或CI插槽B,并最后将TS流发送到MCU,由MCU将TS流对外发送。
进一步的,所述控制数据包括至少3位数据,用于表示TS流的流向。用至少3位数据能够完整的表述CI插槽A和B的状态,并能够很好的定义TS流的流向。
进一步的,还包括ASI(Asynchronous Serial Interface,异步串行接口)接口模块,该ASI接口模块接收来自CPLD的TS流,并对外发送该TS流。增加ASI接口模块,能够为后续的应用扩展提供基础,便于整个接收机提升性能。
本发明的第二个目的通过以下的技术方案来完成:一种双插槽数字电视接收机TS流切换方法,包括以下步骤:
S1:数字电视接收机启动自检,并把CI插槽A和CI插槽B中是否有CI卡的状态上报给MCU;
S2:MCU根据CI插槽A和CI插槽B的状态,向CPLD发送控制数据;
S3:tuner接收卫星数字电视信号后,将卫星数字电视信号解调为TS流并发送到CPLD;CPLD根据控制数据决定TS流是否流经CI插槽A或CI插槽B,并最后将TS流发送到MCU,由MCU将TS流对外发送。
进一步的,所述步骤S3还包括:CPLD还将TS流同时发送给ASI接口模块。将TS流发送给ASI接口模块,便于后续的性能扩展。
本发明的有益效果在于:本发明的双插槽数字电视接收机TS流切换装置,包括tuner、CI插槽A、CI插槽B、CPLD和MCU,MCU根据CI插槽A、B中是否有CI卡而向CPLD发送不同的控制数据,CPLD再根据控制数据决定TS流的流向;本发明的双插槽数字电视接收机TS流切换方法,包括接收机将CI插槽状态发送给MCU,MCU向CPLD发送控制数据,CPLD控制TS流流向三步;本发明可以切换不同状态下的TS流流向,在保证TS流连续高效的情况下,还能够自动对来自不同运营商的TS流进行解扰,使不同CI卡能够复用,提高数字电视接收机的使用效率。
附图说明
图1为本发明具体实施例插槽A和B中均无CI卡时的TS流向示意图;
图2为本发明具体实施例只有插槽A中有CI卡时的TS流向示意图;
图3为本发明具体实施例只有插槽B中有CI卡时的TS流向示意图;
图4为本发明具体实施例插槽A和B中均有CI卡时的TS流向示意图;
图5为本发明具体实施例的步骤流程示意图;
图6为本发明具体实施例的控制数据各bit位取值定义表。
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。同时本说明书中对替代特征的描述是对等同技术特征的描述,不得视为对公众的捐献。
本说明书(包括任何权利要求、摘要和附图)中用语若同时具有一般含义与本领域特有含义的,如无特殊说明,均定义为本领域特有含义。
本发明双插槽数字电视接收机TS流切换装置的具体实施例,由tuner、CI插槽A、CI插槽B、CPLD、MCU和ASI接口模块组成。该MCU在数电电视接收机自检后,根据CI插槽A和CI插槽B中是否有CI卡,发送不同的控制数据到CPLD;所述tuner接收卫星数字电视信号后,将卫星数字电视信号解调为加扰的TS流并发送到CPLD;所述CPLD根据控制数据决定TS流是否流经CI插槽A或CI插槽B,若CI插槽A或B中插有CI卡,则加扰的TS流会被CI卡将特定运营商的数字电视信号内容给解扰出来,该部分则成为解扰后的透明TS流。最后CPLD将TS流发送到MCU,由MCU将TS流对外发送,CPLD还将TS流发送到ASI接口模块,由ASI接口模块对外发送该TS流。
本发明中的tuner、CI插槽A、CI插槽B和ASI接口模块都是现有的标准技术,按照现有的技术标准制造即可。MCU和CPLD则需要进行相应的编程设定。
MCU中的程序应当设置为接收到CI插槽的状态后,能够根据该状态发送不同的控制数据给CPLD。在一个实施例中,MCU通过三个PIO口来对CPLD逻辑进行控制,三个PIO分别对应使能、时钟、数据三条信号线,当使能信号为低时,通过在时钟上升沿向CPLD输入串行的控制数据,按低位先传的原则进行发送。该控制数据应当至少包括3个bit位,用于表示流入MCU的TS流来源,和流入CI插槽B的TS来源,例如000表示流入MCU的TS流来源为tuner,同时TS流未流经插槽B;001表示MCU的TS流来源为插槽A,TS流未流经插槽B;010表示MCU的TS流来源为插槽B,插槽B的TS流来源为tuner,即插槽A中没有CI卡;110表示MCU的TS流来源为插槽B,插槽B的TS流来源为插槽A,即插槽A和插槽B中都有CI卡。如图6所示,为本发明一个具体实施例的控制数据的取值和定义,其中定义了带ASI接口模块时的控制数据bit位,同时由于一般串行数据多以8bit为一帧进行发送,故多了3个保留位。
CPLD作为复杂可编程逻辑器件,其本身的结构就是由程序所定义的。在一个实施例中,CPLD使用了七个PIO口用于别的器件的数据交流,并根据控制数据依次打开不同的PIO口,实现控制TS流在不同器件之间的流向的功能,具体见下。
如图1所示,为本发明具体实施例插槽A和B中均无CI卡时的TS流向示意图。首先是数字电视接收机自检,发现插槽A和插槽B中没有CI卡;MCU获得这一状态后,通过数据PIO口向CPLD的控制数据输入口发送控制数据,按具体实施例中的规则,该控制数据为01000000;CPLD接收到这个数据后,从tuner输入口接收TS流,然后通过对外输出口将TS流同时发送给MCU和ASI接口模块。
如图2所示,为本发明具体实施例只有插槽A中有CI卡时的TS流向示意图。MCU获得接收机自检后发现的只有插槽A中有CI卡的状态后,向CPLD发送控制数据01000101;CPLD从tuner输入口接收TS流,而后通过CPLD上的A槽输入口将TS流发送给插槽A中的CI卡,插槽A中的CI卡将解扰后的TS流通过A槽输出口发送回CPLD,CPLD最后再通过对外输出口将该TS流同时发送给MCU和ASI接口模块。
如图3所示,为本发明具体实施例只有插槽B中有CI卡时的TS流向示意图。MCU获得接收机自检后发现的只有插槽B中有CI卡的状态后,向CPLD发送控制数据01001010;CPLD从tuner输入口接收TS流,而后通过CPLD上的B槽输入口将TS流发送给插槽B中的CI卡,插槽B中的CI卡将解扰后的TS流通过B槽输出口发送回CPLD,CPLD最后再通过对外输出口将该TS流同时发送给MCU和ASI接口模块。
如图4所示,为本发明具体实施例插槽A和B中均有CI卡时的TS流向示意图。MCU获得接收机自检后发现的插槽A和B中均有CI卡的状态后,向CPLD发送控制数据01011010;CPLD从tuner输入口接收TS流,而后通过CPLD上的B槽输入口将TS流发送给插槽B中的CI卡,插槽B中的CI卡将解扰后的TS流通过B槽输出口发送回CPLD,接着CPLD通过B槽输入口将TS流发送给插槽B中的CI卡,插槽B中的CI卡将解扰后的TS流通过B槽输出口发送回CPLD,CPLD最后再通过对外输出口将该TS流同时发送给MCU和ASI接口模块。
如图5所示,为本发明具体实施例的步骤流程示意图。一种双插槽数字电视接收机TS流切换方法,包括以下步骤:
S1:数字电视接收机启动自检,并把CI插槽A和CI插槽B中是否有CI卡的状态上报给MCU;
S2:MCU根据CI插槽A和CI插槽B的状态,向CPLD发送控制数据;
S3:tuner接收卫星数字电视信号后,将卫星数字电视信号解调为TS流并发送到CPLD;CPLD根据控制数据决定TS流是否流经CI插槽A或CI插槽B;CPLD最后将TS流同时发送到MCU和ASI接口模块,由MCU将TS流对外发送,ASI接口模块负责后续的性能扩展。