一、序言
随着数字视频广播(DVB)技术的发展,国内开展了相关研究,其中真正研制数字视频广播流发射和接收系统的却很少。为满足DVB系统发射和接收的需要,基于DSP技术研制了可以进行0~8 Mbps的数字视频广播流(DVBS)发射/接收系统,误码率低于10-7。
二、系统框图及流程
为满足0~8 Mbps的数据处理能力,采用美国TI公司最新DSP处理芯片TMS320VC33-120(以下简称VC33)为系统控制及数据处理器,美国 Lucent公司E1/T1收发两用芯片T7688作为发射/接收系统E1数据接口。E1接口即时分复用TDM方式PCM30/32传输,对系统发送端的时钟同步有较高要求[1]。系统在硬件和软件共同控制下,将输入数据流分割为4个标准的E1接口数据。系统总体框图如图1所示。
1DVBS发射系统框图及流程
首先介绍DVBS发射系统数据流形成过程,如图2所示。发射系统接口电路中,为形成标准DVBS,系统将接口电路中接收到的6 Mbps视频流、384 kbps音频流、每188字节包含4字节的TS包头以及用户数据复合成传送流TS。系统在
传输中每隔40 ms还插入一个程序参考时钟PCR,相应TS包头将增加8个字节,插入PCR后系统速率增加为
在实际中,PES分组包头将会对视频和音频数据增加约1%,当数据送入系统信道之前,数据还需经过扰码及纠错编码,被分成4路分别送入4个E1接口电路。在图2中,纠错编码选用BCH(511,493)码,经过模2运算可实现纠正2个误码。由于纠错编码的加入,最后数据率增加为
系统在VC33 的控制下将数据等分为4, 每路TDM输出的信号为1.662 Mbps,随后数据在E1接口电路中经加入帧同步头,联络信号及特定的填充字比特后形成标准基群的2.048 Mbps比特流,经E1接口电路变换为HDB3码后直接送出E1接口。发射系统的具体流程如下:并行DVB流(串行异步DVB数据先经过串并转换成16位并行数据)送至发射缓存1(FIFO1为4 k×16 bit),VC33判断缓存1处于半满后,从缓存1读取半满数据量并按照E1格式划分帧时隙、组帧、添加帧同步头、复帧同步头、添加信令等,写入发射缓存 2(FIFO2为4k×16 bit)。缓存2数据经过16位并行—1路串行—4位并行变换电路,完成4路2.048 Mbps比特流E1分组,经E1接口电路变换为HDB3码后直接送出E1接口。为避免出现缓存2数据被读空而缓存1未处于半满的数据紊乱情况,我们采用 VC33自动添加特定格式的添加字(在接收通道中必须将添加字检测并剔除)方法处理。DVBS发射系统工作原理框图如图3所示,DVBS发射系统实现框图如图4所示。
2. DVBS接收系统流程
接收系统是发射系统的逆过程,其各框图与发射系统框图基本一致(本文略去)。接收系统流程是:接收变压器接收4 路E1数据,通过4位并行—1路串行—16位并行电路转换,送至接收缓存1(FIFO1)。当缓存1处于半满状态后,分别通过硬件电路及软件检测同步并执行接收主程序,完成去帧同步头、复帧同步头、信令及添加的特定比特的填充字工作,还原出并行DVB数据并送至缓存2(数据经过16位并行—1路串行转换电路,经发驱动电路完成串行异步DVB流的合成),完成并行DVB数据的接收。
三、系统硬件实现
1DSP工作方式的选择
VC33-120是C3X系列最新产品,指令周期为17 ns,具有32位浮点或24位整数精度,与其它C3X的DSP不同,其片载存取区容量明显得到增加,有34 kbit×32存储区,24 bit地址线可以访问16 M存储空间,功耗更小,集成了较大的片内存储区,性价比高,完全可以满足系统数据处理及控制要求[2~4]。
VC33有MCBL(Microcomputer Boot Loader)和MP(Microprocessor)2种工作方式[3]。MP 方式时,位于地址00H~03FH向量表中为中断和陷阱服务程序入口地址;MCBL方式时,位于809FC1H~809FFFH向量表中为各自中断和陷阱服务程序的跳转指令。MCBL方式是VC33所特有的,可将用户程序代码从主处理器(尤其是EPROM或者别的标准存储系统)引导加载到VC33的 SRAM区中并执行它[3,4]。本系统利用MCBL方式,将程序代码利用BOOT1_LOADER方式加载到VC33的内部SRAM中而不是固化到外部高速EPROM,既实现了系统高速实时处理控制又降低了成本。为满足运行程序与存储数据的需要,我们扩展了外部存储区,包括2片64 K×16bit SRAM组成64 K×32bit片外存储区以及128 K×16bit的FLASH ROM。
2数据缓存的设计和控制
在系统设计中,数据缓存的设计无疑是重要的,为满足VC33高速处理能力,采用IDT公司FIFO高速缓存器IDT7203-15,利用宽度扩展为4kbit×16的数据缓存器。对于发射及接收FIFO分别占用VC33的I/O地址FE0000H和FD0000H,输入输出数据利用VC33及ALTERA 公司的EPM7064LS84完成并-串-并转换、数据缓存的读、写信号和复位信号[5,6]。
3.系统并行和串行接口
系统接收或发送TS 流时,要满足一定的接口规范。接口共有3种:同步并行接口、同步串行接口和异步串行接口。在系统的设计中,为接收并行和串行DVB数据,根据DVB接口规范,我们设计了同步传输188byte包的并行和串行接收数据两种接口。在发射通路中,数据处理控制部分先将差分信号变为不归零(NRZ)码,经过 VC33的处理后,完成数据的PCM30/32格式处理及4路E1分组,经过E1接口的发射。接收系统设计与发射系统基本类似,此处略去。
4E1接口设计
T7688是具有4路发射和接收功能的
E1接口芯片,主要特性有:具有接收、驱动、均衡、时钟/数据恢复、抖动衰减功能;具有能提高灵敏度的片内发射均衡器;可供选择的发射或接收抖动衰减器;自动发射监视系统[7]。
在实际电路设计中,我们根据微处理器接口特点采取了较为灵活的设计。根据系统设计要求,我们将T7688 的MPMODE和MPMUX管脚接地,T7688工作在模式1并且地址和数据总线非复用。在微处理器接口各控制寄存器的设置中,为允许每个信道响应警报并产生中断,对寄存器2和3的各通道的信号损失警报屏蔽位无效;寄存器4的软件复位被禁止,每个信道的发射驱动器的TTIP和TRING 在复位后有效;为利用接收通道的抖动衰减功能,设置T7688寄存器5工作在单路模式下,时钟/数据恢复功能使能,在发射(接收)通道HDB3零替换编码(解码)使能;由于外围电路采用数字传输变压器T1010,初次级匝数比为1:1.36并使用75Ω同轴电缆,所以寄存器6~9是设计方式选择方式2,并将均衡器设置为101格式;寄存器10~15,在系统初始化时按要求置为零。
在设计中,我们还注意到:寄存器4 在初始化时必须第一个被初始化;由于T7688只有一个抖动衰减器,所以只能在发射或接收通道中使用,若同时选择JAT和JAR,抖动衰减器将被禁止;从 T7688的读写时序可以看出有5个时钟周期的延时,所以在VC33的初始化中必须对VC33的主总线初始化进行相应设置。
四、系统的软件实现
本系统为收发两用系统,整个系统必须在VC33的控制下,响应不同处理程序。
发射功能由系统控制处理电路VC33 的中断0和中断2程序完成,当前端数据缓存1达到半满状态时由硬件产生中断2信号并响应中断2程序,完成E1接口格式的帧同步头、复帧同步头、信令添加工作;为避免前端数据被读空而出现数据紊乱的情况,在前端数据缓存2被读空时产生中断0信号,随即系统立即响应中断0程序(优先级仅次于系统复位信号),完成添加特定格式的填充字工作,在第0或第16时隙时就调用相应的添加帧同步头、复帧同步头、信令的子程序,如此反复。有关发射系统中断0和中断2以及添加同步头、信令等软件流程略。
接收功能则由系统主程序完成,流程如图5所示。系统首先执行VC33 、T7688各状态寄存器初始化,在系统硬件电路检测到帧同步头后,接收主程序必须在软件上也保证检测到四路E1接口的同一个帧同步头,这样在硬件和软件双重保证下,完成E1接口数据的接收并正确恢复DVB流数据。
最后,我们根据VC33内部结构,采用宏指令编程,添加帧同步头等固定格式的子程序、根据数据量的大小执行块循环等方法;为提高程序的执行速度,还在避免流水线冲突、减少判断指令、解决数据处理速度瓶颈等方面进行了研究,完成软件优化编程,既减少了规模,又提高了处理效率[8,9]。
五、结论与展望
数字视频广播发射/接收系统是数字视频广播系统重要组成部分,该系统能实时接收/发射0~8Mbps的DVB流,充分证明设计思想的可行性。此外,为便于今后提高系统性能,我们在硬件电路中实际设计了8路E1接口,利用编程逻辑器件实现相应外围数据转换电路,扩展为0~16Mbps的发射/接收系统。