找回密码
 注册
关于网站域名变更的通知
查看: 170|回复: 1
打印 上一主题 下一主题

基于FPGA的数字电视CAS系统设计

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-4-30 10:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
摘要:根据MPEG2协议和数字电视的条件接收原理,提出了一种只用条件接收表(CAT)来传输授权管理信息(EMM)和授权控制信息(ECM)的方法。该方法已经采用FPGA芯片成功实现。
; r( O2 U; K2 U2 Q4 A5 d. n/ d- k* ?1 C, E1 S4 J5 R
  关键词:条件接收;数字电视;CAT;EMM;ECM2 j" [7 Q5 ^/ v

2 J7 y# F2 f) y+ N      数字电视的影音效果、抗干扰性等特点是传统模拟电视所不能比拟的,是电视事业将来必然的发展趋势。为了保障并促进数字电视能健康快速的发展,我们必须保障数字电视运营商的利益。数字电视条件接收系统(简称CAS)就是保障运营商利益的技术基石。具体来说CAS是保证只有付费的用户才能正常收看节目的一系列技术。现成的许多CAS都是国外的方案,随着我国数字电视普及的展开,CAS国产化的要求就变得更加迫切了。& b& K6 p2 u* R9 i5 W, T+ J
! L- h. _- \7 L# C" Z6 C# H- O
       数字电视CAS系统的原理
# }. ?: K6 W6 h1 F" K9 f
      
/ |' u$ W9 G" [! c. ?         TS流的加扰和解扰7 t5 Z! \* x8 d% [
      现在数字电视大多采用了MPEG2传送流(TS)的方式来进行广播。在广播之前要先将TS按照一定的方法进行加扰,使得没有授权的用户不能收到正确的信号数据。而授权用户在接收到加扰的TS码流之后,他们的接收机能按照一定的方式进行解扰,恢复出正确的数据信号。具体来说加扰就是用一个控制字(CW)来产生一系列的伪随机序列码,用它跟TS中的数据进行异或,打乱原来TS中正确的信号数据。接收机在解扰时再根据相同的CW来产生和加扰时一样的随机序列,并通过异或的方式将被加扰的数据正确地恢复回来。因此解扰的关键就是要获得加扰时用的CW值。
9 o2 y1 u6 N: I, S* ^7 f
8 P# o1 X  s6 I+ j# N1 g        对CW的加密和解密
. h$ Y- e" v# m' X# k5 l  ]) \, x) j      如图1所示,要使得授权用户获得加扰时的CW,就必须在TS流中加载CW进行传输。为了不让未授权的用户也获得正确的CW,因此在广播CW时会用SK(业务密钥)对其进行加密形成ECM(授权控制信息)。同时SK本身也会被PDK(用户分配密钥)加密形成EMM(授权管理信息)之后,再通过TS流进行复用传输。由于PDK是授权用户机器本身的一个编号,它不需要通过TS在公用信道中传输。这样在公用传输信道里传输的ECM、EMM都是加密了的。只有授权用户才有正确的PDK来解密出SK,也只有正确的SK才能解密出正确的CW。而且为了进一步加强信号的安全性,CW一般来说几秒钟就会变化一次,SK也会在一个时间段后产生变化,来避免破解者对密钥进行系统性的搜索。/ r. R9 ^6 o" M1 D  U4 }* P5 f
8 g& ?6 z) i% Q" u( [; m
        用FPGA来实现CAS' m2 u- ]; S! m" v5 U
  ~0 R* _$ Q9 T0 m& {6 {9 P
      在用FPGA设计CAS时,必须要理解PSI(程序特殊信息)。PSI包含了要正常收看节目所需要的绝大部分信息,它由PAT(节目关联表)、PMT(节目映射表)、CAT(条件接收表)、NIT(网络信息表)4个表组成。为了新开机的用户能及时收看节目,PSI必须至少以20次/秒的频率不断发送。和条件接收有关的就只有CAT和PMT。其中CAT中的CA描述子包含了EMM和ECM的信息。表一介绍了CA描述子的语法结构。2 F8 z2 R' u6 [: ^: M/ [* Q4 I
+ {) P/ T/ B3 H% B# i! E( E

& n; F+ k+ P. [  其中CA-system-ID的最低位为零表示pri-vate-data-byte是EMM数据,否则private-databyte是ECM数据。CA-PID是相应加扰节目的PMT的包识别号(PID)。本方法通过在CA描述子中加入PMT包的PID的方法,来实现多个CA描述子和多个加扰节目之间的一一映射关系。  t2 m8 q9 {! a! E9 {

; P& a) r+ |% z4 h/ x( ~! P& o        CAS发送端FPGA的实现
& `3 L* c9 `9 Z4 i: y" b- O      CAS发送端FPGA实现的框图见图2所示。接收机序号,SK(业务密钥)和CW(控制字)发生器的初始值由PC机通过单片机来对FPGA芯片进行设定。FPGA芯片先检测TS流中PMT包的PID值,将这个值与EMM、ECM一起形成CAT包,等待前端的复用器将其插入TS流中。加扰器会每隔几秒钟就对CW进行更新,用新的CW来对TS加扰,同时CW发生器又将产生下一个CW,经过密钥SK对CW进行DES加密后,形成新的ECM。再打包形成CAT,等待前端插入(复用)TS流中。EMM信息的形成与此类似。; j/ Z3 u$ L% g2 ^# C
6 E; h4 g+ P/ [9 t; f, t
        CAS接收端FPGA的实现) X$ e! I7 A, C% B. x- ]  O, j# J
  CAS接收端FPGA实现的框图如图3所示。PDK信息通过智能卡送给FPGA芯片。FPGA芯片先检测解复用之后的TS流中PMT包的PID值,将其存在寄存器里,然后继续寻找CAT表,再找到TS中的CAT时,将其中的CA描述子提取出来,再根据描述子中CA-system-ID的值来决定是提取ECM信息还是EMM信息,根据PDK和EMM可以解密出SK,再通过和ECM信息解密出CW。具体是使用当前的CW还是使用下一个CW来解扰,由解扰器根据TS包头信息来决定。
5 ^) h8 f. k5 \* n6 j
    7 @+ A0 P, H, z7 f1 e
        结束语
) v" g0 t9 s- T6 x

! ^3 K2 m7 B' w" J( N9 D4 p   本文介绍了数字电视条件接收的基本原理,并提出了一种只用CAT表来传送EMM、ECM信息的方法。该方法不但可以对单节目流进行加扰,还能支持多节目流加扰后的复用传输。而且相比用CAT、PMT分别传输EMM和ECM的方法,该电路更加简单,用FPGA也更容易实现。
) y$ r9 O( @' S, Q3 I0 r% I' C

该用户从未签到

2#
发表于 2020-4-30 13:29 | 只看该作者
现成的许多CAS都是国外的方案,随着我国数字电视普及的展开,CAS国产化的要求就变得更加迫切了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-21 10:53 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表