- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
用于实时数据传输的滑动帧方法及其实现
1 引 言
某雷达系统要求在发送/接收过程中,采取时分多路方式,在实现多个辅助信息复接传输的同时,完成某信号的实时传输。而基于传统时分多路复接帧的处理技术不能很好地满足实时传输的要求,特别是当信号的发送/接收实时性要求非常高时,显得尤为突出。
针对工程应用中的实际问题,经过研究和实验,本文提出了滑动帧处理方法。滑动帧处理是一种面向比特的时分多路复接同步通信协议处理技术,该技术可根据业务需求的变化,改变待传输数据在帧结构中的起始位置,实时完成需快速传输数据的复接,从而能很好地支持不同业务的复接传输,满足有关实时数据的要求。考虑到现场可编程门阵列(Field ProgrammableGate Array,FPGA)可以通过软件反复编程使用,能够兼顾速度和灵活性,可实时地对所构造的帧结构进行预测和仿真。因此采用FPGA设计滑动帧是一种可行的方法。下面将详细介绍基于FPGA的滑动帧结构的设计思想及具体实现。
2 滑动帧结构的技术基础
如图1所示,传统帧处理的思想在于,不同支路的数据信息是在各自定时信号的控制下交替地完成复接功能,接收下来的支路数据信息再按照支路时钟进行分接处理。即针对特定的数据信息,在传统帧结构中,需按照固定的时隙进行复接发送和接收分接处理。
而采用滑动帧结构技术时的帧构成与传统的帧构成是相似的,如图2所示,在一帧内要包含以下基本内容:帧定位信号、数据或辅助信息位、标志位。
而帧定位信号选用最佳的帧同步码,依据其在一帧中的位置分布,可分为集中式帧定位信号(bunchedframe alignment signal)和分散式帧定位信号(distributed frame alignment signal),详细内容可参考文献[2]。考虑到需实时传输有关信号,经分析比较,滑动帧结构采用分散式帧定位信号。
帧复接过程中,需完成多个不同支路信息的打包传输,传统帧结构常常对不同的支路数据信息分配了固定的传输时隙。而滑动帧结构突破了传统的帧处理方法,需快速传输数据根据到达帧的起始位置开始传输,传输起点因数据到达的起始位置变化而变化,处于动态滑动中;同时,在快速传输相关数据的间隙,完成实时性要求不高的辅助信息的传输,这类数据在帧中传输的时隙也不固定。
滑动帧结构的显著特点在于增加了标志位。由于帧通常需完成实时数据和非实时辅助信息两类数据的发送传输,因此,在对标志位字段值功能进行定义时,要专门保留一个标志位字段值,根据这个标志位,对奇/偶帧的数据特性进行定义,以便在实时复接传输有关数据的间隙,完成辅助信息的传输。同时,其他标志位字段值随实时传输数据在帧结构中起始位置的变化而变化,标志位字段值等同于实时传输数据在帧结构中的起始位置,如果实时传输数据的起始位置和保留的标志位字段值相同,延迟一个时钟码元再传输。
3 滑动帧结构的技术优点
相比于传统帧处理方法,滑动帧技术具有下列优点:
实时性 传统帧处理由于采用固定时隙传输对应支路信息,一旦当前帧不能完成信息的有效传输,就需延迟到下一帧复接传输。而滑动帧处理技术,克服了传统帧处理方法的不足,实时地完成了有关信号的快速复接传输。
有效性 传统帧结构由于采用固定时隙传输不同支路信息,对速率相对较低的支路而言,时隙利用率低。而滑动帧技术采用标志位对数据信息进行定位,高效支持不同速率信息的复接,时隙利用率高,可以充分节省频带资源,在卫星通信中,还可降低地面站发送功率。
智能性 用户可根据业务的变化而动态改变支路业务的传输速率,同时设备可根据支路速率的变化而采取不同的工作速率,从而使用户对信道具有很强的控制力,以有限的功能组件实现多种业务。
经济性 由于采用滑动帧结构技术,简化了复分接功能的实现,降低了设备成本,使设备具有非常好的性价比。
4 基于FPGA的滑动帧结构实现方法
考虑到实际需求,在可编程器件FPGA(XC2S300E)内设计滑动帧处理器,在该器件内可融合雷达系统的多种控制功能,可以在线编程、方便调试。
在FPGA内实现滑动帧功能采用的是"自顶向下"的设计方法,即根据要求的功能先设计出顶层的原理图,该图由若干个功能模块组成。再把各个模块细化为子模块,各层的功能采用电路图实现,也可用硬件描述语言实现。设计中主要采用电路图实现各种功能,经过综合和优化等过程,最终将程序下载到芯片中。
滑动帧处理器的工作原理:滑动帧处理器要复接需快速传输的数据和多种不同的辅助数据流。因此,为完成多种类数据的复接,需要对不同的数据进行缓冲存储。对需实时传输的数据,以并入串出的方式进行锁存,通过并/串转换,将数据按照滑动帧结构及时地复接传输出去。对其他辅助信息,由于无快速传输要求,因此,可将辅助信息存入缓存区内,在实时传输需快速传输信号的间隙传输辅助信息。
4.1 缓存区及端口控制
由于对实时传输信号的实时性要求非常高,因此,信号是由并入串出的锁存器进行缓存;而对其他辅助信息,为了平滑滑动帧结构与外围逻辑单元之间的数据传输速率,采用异步FIFO作为两者之间的接口。FIFO接收数据并由滑动帧时钟读出数据进行组帧输出。考虑到实际需求及FPGA的自身特性,需采用和辅助信息种类个数相同的多个FIFO完成速率转换和数据缓存功能。
FPGA内的功能模块如图3所示。
4.2 滑动帧结构处理器
要将信号传送出去,构造周期循环的滑动帧是必不可少的,滑动帧结构如图4所示。
图4中,当缓存器空,即无信号需复接时,滑动帧按周期自循环。在此过程中,需实时传输信号的有无一直处于检测过程中,一旦检测到有效的实时传输信号,按照图2所示帧结构,实时地将信号复接到滑动帧结构中。在复接时,按照实时传输信号在帧结构中的起始传送地址,在标志位字段插入标志位,以便接收端进行检测。如果在正传输辅助信息的过程中,有快速传输有关信号的要求,那么,需停止当前辅助信息的传输,传输需快速传输的信号。当前未传输完的辅助信息在不传输需快速传输信号的间隙重新传输。由滑动帧结构可以看出,在接收方,一旦检测到有效标志位,即可将移位寄存器的输出端数据进行锁存,确保最快锁存有效信号。
5 滑动帧设计实例和综合验证
根据某雷达测频系统的实际需求,构造滑动分帧结构如图5所示。在该系统中,所有需复接传输数据的宽度为8 b,滑动帧结构构造如下:采用12 b为周期的循环分帧结构,采用分散式同步码,标志位为3 b。多个分帧组成一复帧结构。
该系统除需快速传输某测量信号外,还需传输多种控制字等辅助信息。由滑动帧结构,当标志位1~3字段值为111时,当前帧发送的信息为辅助信息标志或辅助信息,标志位字段值为其他值时传输某测量信号。
针对图5所示滑动帧,完成FPGA程序设计后,在加载之前先用ISE开发工具进行逻辑综合和时序仿真。由于各功能模块之间多数信号相关,在各功能融合之前要对相关模块之间设计严格的时序约束条件,同时对时序逻辑进行优化设计,保证滑动帧处理器正确输出稳定的数据流。
为验证滑动帧处理器的设计正确性,按照要求,以最频繁的速率模拟复接发送某测量信号,程序加载到FPGA后,由示波器观测到的滑动帧处理后的发送/接收波形如图6所示,从上往下依次为发送信号使能,发送信号码字;接收信号使能,接收信号码字。由图可以看出,采用滑动帧处理器,能保证在下一组信号发送之前,及时地完成上一组信号的发送/接收处理,充分满足了实时传输的需求。
6 结 语
本文提出的滑动帧处理器,弥补了传统帧处理方法的缺陷,能很好地承载某信号的实时传输要求,同时能准确承载其他辅助信息的传送,充分满足了系统快速获取有关信号的要求。
在FPGA中设计实现滑动帧处理器,设计简洁灵活、性能可靠,而且可根据实际要求与FPGA内的多种设计功能进行融合,提高了设备的集成度,系统有效性得到了极大提高。通过实际工程的应用证明了设计可靠有效,取得了良好的社会效益。
作者:朱彦,高勇(四川大学 电子信息学院 610065) 来源:《现代电子技术》
上一篇:手机网络电话(VOIP)大比拼
下一篇:WLAN网络VoIP如何解决安全性问题