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

2006-05-07 15:50:09来源: 电子技术应用

复接器在整个系统中的重要性与功能,提出一种DSPFPGA相结合的实现方案,及其设计方法和系统结构。

信息时代的到来使人们需要共享越来越多的信息。随着信息及其需求的爆炸性增长,信息的选择及传输速率成为一个重要问题。有线电视网络有其固有的高带宽特性,适合大容量的数据传输和实时性要求,使宽带数字接入成为可能。在我国由于有线电视网是一个已经存在的接入网络,成本低、可维护性强、频率资源丰富、覆盖面广、用户量大,因而通过有线电视网进行数据广播是目前国内应用领域的一大热点。DVB-C是ETSI(European Telecommunications Standards Institute)提供的基于Cable上数据广播的一整套标准[1,2,3],本文首先介绍DVB-C数据广播系统的基本结构,接着详细分析TS复接器在整个系统中的重要性与功能,然后详细说明利用DSP(数字信号处理器)与FPGA(现场可编程门阵列)相结合的一个实现方案,阐明了其中的设计方法和系统结构。

1 DVB-C数字广播系统简介

一个实用的DVB-C广播系统的结构如图1所示[3-6],整个系统可以大致分为三个部分:(1)信息前端,包括视频服务器、播控服务器、通信控制服务器、用户管理工作站、节目采集工作站、节目 编排工作站等;(2)传输网络,利用现有的HFC网络巨大的频带资源实现数据传输;(3)用户终端,用户利用机顶盒或者Cable-Modem接收和浏览信息。

从图1可以看到,在DVB-C数字广播系统中,一个通道上传输的数据可能包含多路节目或来自多个节目源,因此需要对多路多节目TS流(MPTS)进行复合转接,生成一个符合DVB-C标准的MPTS,再经调制后在一个通道上传输。由TS复接器来完成这个功能。TS复接器在前端系统中相当于一个交换机,它负责对多个MPTS进行转换和复合,生成一个MPTS。在复合过程中,要完成服务信息(PSI/SI)、多路MPTS的交织等工作[4,5]。从中可以看出复接器在整个系统中的重要性,TS复接器工作是否稳定可靠,直接影响整个系统的正常运作。

2 TS复接器的设计方法

在该系统中需要对6路数字卫星电视节目进行复接。各路有效速率为0~15Mbps的异步串行接口(ASI)输入,6路总速率不超过36Mbps,输出为恒定速率38.1Mbps的ASI输出,输出的MPTS为符合DVB-C标准的传送流;复接器度同PID,包括将输入MPTS中的PSI/SI等不需要的信息过滤掉以及对有效TS包重新分配PID。新的PSI/SI信息作为复接器的输入按一定速率插入到MPIS中,插入的PSI/SI信息包括节目关联表(PAT)、节目映射表(PMT)、网络信息表(NIT)、服务描述表(SDT)等[4,5],复接器还能接受来自播控系统的数据信息,作为复接器输出流的一部分。系统的功能模块结构如图2所示。

由图2可以看到,由于需要处理的数据速率快、数据量大、要求实时性,一般的处理芯片无法完成。为了达到上述目的,采用高速DSP和FPGA一起来完成。整个系统基于DSP和FPGA,配以CPLD、高速SRAM、异步FIFO等。DSP具有运算速度快、计算能力哟、可用资源比较丰富的特点,尤其适合于实现各种数字信号的处理功能,在各种领域具有广泛的应用。但由于所要处理的数量太大,仅靠DSP片内RAM是远远不够的,所以还必须要有大容量、访问速度快的缓冲区对接收到的数据进行缓冲,以便于DSP进行处理。基本思想是FPGA完成TS包过滤和PID置换、PSI/SI提取等工作,系统的控制工作、TS包交织算法则由DSP完成,整个控制逻辑则由CPLD完成。

3 TS复接器的一种实现方案

针对上述分析,采用DSP与FPGA相结合的方法成功实现了TS复接器,该实现方案如图3所示。图3中的DSP采用TI公司的TMS320VC5410-100,它具有100MIPS的快速处理能力,以及片内64K的RAM和多个串口等资源,其片外寻址空间可以多达8M Word。FPGA则采用了Xilinx公司的XCV300。

笔者为DSP扩展了2M Word的高速SRAM作缓冲,分为两个1M Word的双缓冲,处理时以帧为单位,DSP和FPGA只能访问其中一个1M Word的SRAM。一般情况下,FPGA从输入接口把一帧数据存入其中一个缓冲区,DSP对另外一个缓冲区进行操作,根据交织表把数据送到FIFO,再输出到输出接口,两者的总线切换由FPGA负责完成。

图3可以分为以下几个模块:

a.输入模块:使用ASI接口将270M串行编码数据转换成27M并行数据,并提供接收时钟、数据有效等控制信号。

b.FPGA模块:接收ASI接口输出的并行数据,实现同步、PID置换、PSI/SI提取等,并将数据写入SRAM中,跟踪记录每路的TS包数;产生帧切换脉冲,控制双缓冲区的切换。

c.DSP主控模块:DSP完成整个系统的控制功能,计算交织表,负责与播控系统的通信等。

d.CPLD模块:根据DSP提供的地址和数据进行译码,对总线上的各设备进行互斥片选;产生中断申请信号;对发送FIFO的全空信号进行采样,控制从发送FIFO读数据并将数据送给输出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(n

{

p(i,n)=[n(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流标准均可以使用。

关键字:宽带  复接  设计  实现

编辑: 引用地址:http://www.eeworld.com.cn/wltx/qtjs/200605/3067.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
宽带
复接
设计
实现

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved