当前位置: 首页 > 传感测量产品 > 数据采集产品 > 数据采集卡

类型分类:
科普知识
数据分类:
数据采集卡

MPEG-2复用器PSI信息分析部分的FPGA实现

发布日期:2022-04-17 点击率:45

        复用器是数字电视前端平台的关键设备,它的主要功能是完成对输入多路传输流(Transport Stream,TS)的复用工作,它的性能稳定性直接影响前端平台的运行。而复用器对传输流中节目特殊信息(Program Spe-cial Information,PSI)的分析处理是否完整全面,则直接影响到复用器其他功能部分的运行结果是否正确。对PSI信息的检测分析是复用器设计中首要的也是最重要的部分之一。下文将对PSI信息检测问题进行深入的分析探讨。


1 TS流语法结构
     传输流以TS包为单位,其中每个包的长度为188 B,这188个字节大致可以分为:包头、调整字段和有效负载三个主要部分。包头占4个字节,如图1所示。



     同步字节:8 b,值为0x47,表示一个TS包的开始。传输错误指示:1b,当置为1时,表明在相关的TS包中至少有一个不可纠正的错误。有效负载起始指示:1 b,在带有PSI信息时,置1表示TS包含有PSI部分的第一个字节并带有pointer field字段,否则表示不含有PSI的第一个字节。传输优先级:1 b,置1表明相关的包比其他具有相同PID但此位没有置1的TS包有更高的优先级。PID:13 b字段,指示传输流有效负载的数据类型。传输加扰控制:2b,用来指示TS包有效负载的加扰方式。自适应字段控制:2b,用来指示本TS包首部是否跟有调整字段。连续计数器:4b,随着每一个具有相同PID的传输流包而增加,当它达到最大值后又恢复到0。
     节目专用信息PSI用来描述TS流的组成结构。它包括节目关联表(Program Association Table,PAT)、节目映射表(Program Map Table,PMT)、网络信息表(Network Information Table,NIT)和条件访问表(Conditional Access Table,CAT)。PAT是PSI信息的最上层,列出了传输流中所有节目所对应的PMT的PID值,可以根据节目的PID值找到相应的PMT信息及NIT信息。节目映射表PMT提供节目号码与组成它们的原始流之间的映射关系,这种映射表是一个TS流中所有节目定义的集合。网络信息表NIT是可选的,其内容是私有的,通常包括用户选择的服务和通道频率、卫星脉冲发射机、调制特性等的映射。条件接收表CAT提供条件接收(CA)系统的相关信息,指定EMM的PID值及相关的参数。



2 PSI信息提取分析
     由于PSI信息四个表结构差别不大,所以提取算法也大致相似,在此主要以PAT表为例详细介绍J"SI信息的提取流程。对TS流的分析在FPGA内部以字节为单位。PAT语法结构如图2所示。



     PAT的提取流程:
     (1)首先应在传输流中找到包首PID 13位全为0且有效负载起始指示位为l的TS包。
     (2)然后根据自适应字段控制位判断是否含有调整字段,再结合pointer_field字段值找到table_id,从此字段开始到CRC校验字节之前,将对所有有效数据进行CRC校验。
     (3)接下来是section_length字段,由此字段可以得到该PAT分段的TS包个数。    (4)接下来两字节是传输流标识字段,再接下来的一个字节包含着版本号信息及当前段是否可用信息。保留当前版本号并与下一次的版本号对比以确定版本是否有更新。若当前段可用,则继续,否则返回(1)。
     (5)接下来的两个字节分别是当前分段号和最后分段号,由此信息可以得知是否提取了所有分段的信息,即对整个PAT表是否进行了一次完整的分析。
     (6)对循环字段的处理,每4字节一次循环,由前两字节的节目号可以得知后2字节的PID是PMTPID还是NIT—PID。在循环字段结束后立即停止CRC校验并把校验的结果和码流中的CRC四字节进行比较从而得知传输是否有误。

下一篇: PLC、DCS、FCS三大控

上一篇: 索尔维全系列Solef?PV

推荐产品

更多