微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > 一种宽带复接器的设计与实现

一种宽带复接器的设计与实现

时间:03-11 来源:互联网 点击:

数据并将数据送给输出ASI接口。

e.输出模块:由CPLD提供控制信号,将数据从发送FIFO读出来,同时写入发送ASI接口。

f.命令通信接口:复接器通过串口与播控服务器通信,从服务器接收系统复位、状态查询、PID置换、PSI/SI插入和提取等命令,并向服务器反馈必要的信息。

为保证数据信号接收端解码器能正确解码,缓冲区不会上溢或下溢,解码输出信号平稳,要求复接器输入的各路TS包均匀分布在输出数据流中,所以必须在发送之前对输入的各路TS包做交织。采用实时交织的方法,FPGA能够在每次帧切换的时候记录各路TS包的数目,然后计算交织表。交织表依照如下方式计算:

设数据流共有K路MPTS流,数据流的一个数据帧有M个TS包,每路MPTS有m(i)(i=0,1,...K-1)个TS包, 假设各路TS包由大到小排序,m(0)最大,否则首先排序。根据M、K、m(i)对输入的TS流进行交织,对第i路有:用p(i,n)指示第i路是否将一个TS包输出到MPTS中的第n个TS包,q(i)表示第i路中已输出到MPTS中的TS包数,初值为0;

i=0,n=0;

while(nM)

{

p(i,n)=[m(i) * n/M]+1; [ ]表示取整

if (p(i,n)-q(i)>=1)

{

将第i路的第q(i)个TS包输出到MPTS中的第n个TS包;

q(i)++;

n++;

}

i++;

if ( i=K ) i=0;

}

最后在Xilinx的Xilinx Foundation Series先对所设计的逻辑进行仿真,利用DSP的simulation进行程序的仿真,仿真结束后在单板上进行调试。由于选用的FPGA的容量限制,门数有限,能够进行PID置换的个数受到限制,但是可以根据估算出的各路TS包数对每一路能够置换的PID数目进行动态调整;由于采用了交织算法,能够对突发数据进行很好的平滑作用,利于后级进行处理。把复接器接到图1所示的系统中去,通过复接器处理的节目流在STB(机顶盒)上能够接收到稳定清晰的节目,并且系统稳定工作,说明本文所设计的复接器达到了预期目的。

本文详细分析了DVB-C数据广播系统中的关键部件――复接器的一种实现方法,该方法基于DSP+FPGA的结构,便于以后的升级与扩展。同时,所设计的复接器除了应用在DVB-C数据广播系统外,凡是输入符合DVB-C的TS流标准均可以使用。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top