首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» MPEG-2复用器PSI信息分析部分的FPGA实现
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
MPEG-2复用器PSI信息分析部分的FPGA实现
发短消息
加为好友
yuchengze
当前离线
UID
1062083
帖子
5837
精华
0
积分
2921
阅读权限
70
在线时间
222 小时
注册时间
2016-6-30
最后登录
2018-9-9
金牌会员
UID
1062083
性别
男
1
#
打印
字体大小:
t
T
yuchengze
发表于 2016-8-23 10:05
|
只看该作者
MPEG-2复用器PSI信息分析部分的FPGA实现
复用器
,
稳定性
,
数字电视
,
信息
,
包头
复用器是数字电视前端平台的关键设备,它的主要功能是完成对输入多路传输流(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四字节进行比较从而得知传输是否有误。
(7)在TS包结尾处判断当前PAT分段是否结束,否则继续检测下一TS包,是则进一步判断是否分析了所有分段,若已经分析了所有分段则给出一个表示PAT分析全部结束的信号,否则转到(1)继续分析下一分段。
3 信息提取的硬件实现
信息提取框图如图3所示。
一路TS流首先经过芯片CY78933进行串并转换再进入同步模块进行同步锁定后,其他各模块才开始工作。由图3可看出,以上各检测模块是并行独立工作的,但是PMT检测模块、ELE检测模块、NIT检测模块和EMM检测模块要想进行有效工作,需要先接受其他模块提供的信息,具体为PMT和N1T检测模块要接受PAT检测模块提供的PID信息,ELE检测模块要接受PMT检测模块提供的PID信息,EMM检测模块要接受CAT检测模块提供的PID信息。
3.1 信息提取同步模块
根据MPEG一2标准可知,一个有效的TS包长为188 B,且其同步头为8′h47,只有在有效地识别了包头,才能严格地按照MPEG一2标准对数据包的每一位进行分析。在同步模块检测中,当找到8′h47时,必须连续3~5次(可通过参数设置)隔188 B都找到8′h47,才能认为实现了同步。另外考虑到TS包可附加16 B的前向纠错码,故该模块做成188/204 B自适应,这样可以提高通用性。
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
X86
电源与功率管理
无线技术
综合技术交流
嵌入式技术
职场驿站
测试测量
工业控制
传感器技术
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议