FPGA在卫星数字电视码流转发器设计中的应用
发布时间:2007/9/8 0:00:00 访问次数:876
西南交通大学 周明彪 1 引 言 由于数字电视能提供更清晰的图像、更逼真的声音、更大的屏幕,以及数字化传输方式所特有的高效数据传输率,可以在有限的传输频带内传送更多的电视节目,正成为数字化视听技术发展的一个新方向。作为数字电视前端设备中的卫星数字电视码流转发器,简称为码流机,其主要功能就是接收频率为950~2 150 MHz的国内外数字卫星节目信号进行QPSK解调,并转换成ASI格式的MPEG-2传输流,输出给TS流复用器、QAM调制器等前端设备处理后发射到数字电视终端用户,即相当于有线电视台转播节目的信号源;同时他还输出模拟视频和音频信号,供管理人员监控使用。本文主要讨论如何把调谐器输出的TS流转换为ASI格式的MPEG-2传输流。 2 系统硬件组成及ASI接口 卫星数字电视码流转发器主要由调谐器,FPGA,ASI输出,SPI输出以及音视频解码输出部分构成,其中调谐器部分负责接收来自卫星的节目信号;音视频解码输出是供管理人员监控使用;FPGA主要负责ASI的数据链路层的具体实现、SPI输出以及TS流的转接到音视频解码芯片上;控制部分主要负责码流路由选择和音视频解码部分的控制。其内部结构如图1所示。 由于SPI接口采用的是低电压差分信号,其传输距离短、抗干扰性差,因此当今数字电视前端设备的输入输出接口一般都要求配有ASI接口。DVB-ASI是一种传输速率恒定,允许具有不同数据速率的串行编码传输系统,我国的ASI接口没有采用ISO/IEC规定的265.625 Mb/s传输速率,而是采用了270.000 Mb/s的传输速率。DVB-ASI接口协议是基于MPEG-2传输包的分层结构,共分3层[1],如图2所示。 第0层:物理层,传输介质可以是电缆或光纤; 第1层:数据链路层,主要定义了8 B/10 B编码,同步 字节插入以及串并转换; 第2层:传输层,采用MPEG-2的传输包,有两种传输数据格式:一种是每个TS包中的188 B是连续的,同步字插在两个包间,称为突发模式(burst);另外一种是同步字随机均匀地插在TS数据之间,称为非突发模式,一般设备只支持非突发模式的传输。 下面主要讨论数据链路层的。FPGA的具体实现。 3 8 B/10 B编码的理论基础 DVB-ASI的8 B/10 B编码[2,3]主要包括数据编码,插入特殊字符和误差控制。通过8 B/10 B映射保证发射信号正负均衡,即‘O i和‘1 i为1∶1的直流信号,并且不会有连续的‘0 i或连续的‘1 i。每8 b分成3 b和5 b两组,分别映射成4 b和6 b两部分,合起来就是10 b。其中每部分按照‘0 i和‘1 i的数量关系有惟一的奇偶特性,称之为RD(Running Disparity),当‘1 i的个数大于‘0 i的个数时,RD为正,反之为负。个数相等时,RD保持不变[4]。具体的编码规则见表1。 每个编码字符可表示为Dx.y或Kx.y,D表示是数据信号,K表示是字符信号。 其中x,y为十进制数,编码中依次对一个信息字符的x和y部分进行编码,其编码的结果取决于当前x或y的值和前一次编码结果的RD。若前一次RD为正,则后一次编码采用RD为负的码字编码,反之亦然。这样编码的结果保证传输信号的电平统计上的直流特性。 在这种编码控制下,根据RD的变化一方面可以保证比特流的直流特性且不会存在多个的连续‘O i或连续‘1 i;另一方面可以进行自动检测,实现误差控制。ASI传输系统中的误比特率小于10-13。系统中插入的特殊符号实现控制功能,包括同步信号K28.5,在接收端的字节同步正是依
西南交通大学 周明彪 1 引 言 由于数字电视能提供更清晰的图像、更逼真的声音、更大的屏幕,以及数字化传输方式所特有的高效数据传输率,可以在有限的传输频带内传送更多的电视节目,正成为数字化视听技术发展的一个新方向。作为数字电视前端设备中的卫星数字电视码流转发器,简称为码流机,其主要功能就是接收频率为950~2 150 MHz的国内外数字卫星节目信号进行QPSK解调,并转换成ASI格式的MPEG-2传输流,输出给TS流复用器、QAM调制器等前端设备处理后发射到数字电视终端用户,即相当于有线电视台转播节目的信号源;同时他还输出模拟视频和音频信号,供管理人员监控使用。本文主要讨论如何把调谐器输出的TS流转换为ASI格式的MPEG-2传输流。 2 系统硬件组成及ASI接口 卫星数字电视码流转发器主要由调谐器,FPGA,ASI输出,SPI输出以及音视频解码输出部分构成,其中调谐器部分负责接收来自卫星的节目信号;音视频解码输出是供管理人员监控使用;FPGA主要负责ASI的数据链路层的具体实现、SPI输出以及TS流的转接到音视频解码芯片上;控制部分主要负责码流路由选择和音视频解码部分的控制。其内部结构如图1所示。 由于SPI接口采用的是低电压差分信号,其传输距离短、抗干扰性差,因此当今数字电视前端设备的输入输出接口一般都要求配有ASI接口。DVB-ASI是一种传输速率恒定,允许具有不同数据速率的串行编码传输系统,我国的ASI接口没有采用ISO/IEC规定的265.625 Mb/s传输速率,而是采用了270.000 Mb/s的传输速率。DVB-ASI接口协议是基于MPEG-2传输包的分层结构,共分3层[1],如图2所示。 第0层:物理层,传输介质可以是电缆或光纤; 第1层:数据链路层,主要定义了8 B/10 B编码,同步 字节插入以及串并转换; 第2层:传输层,采用MPEG-2的传输包,有两种传输数据格式:一种是每个TS包中的188 B是连续的,同步字插在两个包间,称为突发模式(burst);另外一种是同步字随机均匀地插在TS数据之间,称为非突发模式,一般设备只支持非突发模式的传输。 下面主要讨论数据链路层的。FPGA的具体实现。 3 8 B/10 B编码的理论基础 DVB-ASI的8 B/10 B编码[2,3]主要包括数据编码,插入特殊字符和误差控制。通过8 B/10 B映射保证发射信号正负均衡,即‘O i和‘1 i为1∶1的直流信号,并且不会有连续的‘0 i或连续的‘1 i。每8 b分成3 b和5 b两组,分别映射成4 b和6 b两部分,合起来就是10 b。其中每部分按照‘0 i和‘1 i的数量关系有惟一的奇偶特性,称之为RD(Running Disparity),当‘1 i的个数大于‘0 i的个数时,RD为正,反之为负。个数相等时,RD保持不变[4]。具体的编码规则见表1。 每个编码字符可表示为Dx.y或Kx.y,D表示是数据信号,K表示是字符信号。 其中x,y为十进制数,编码中依次对一个信息字符的x和y部分进行编码,其编码的结果取决于当前x或y的值和前一次编码结果的RD。若前一次RD为正,则后一次编码采用RD为负的码字编码,反之亦然。这样编码的结果保证传输信号的电平统计上的直流特性。 在这种编码控制下,根据RD的变化一方面可以保证比特流的直流特性且不会存在多个的连续‘O i或连续‘1 i;另一方面可以进行自动检测,实现误差控制。ASI传输系统中的误比特率小于10-13。系统中插入的特殊符号实现控制功能,包括同步信号K28.5,在接收端的字节同步正是依
|