【技术实现步骤摘要】
一种基于FPGA的变长接口数据传输结构
[0001]本专利技术涉及通信数据链领域中的数据传输技术,尤其涉及一种基于FPGA的变长接口数据传输结构。
技术介绍
[0002]在数据链通信场景中,物理层调制的有效数据长度和接口数据长度关系一般是相同的。也即,中控机将固定长度的一包数据通过接口(如串口、网口、SRIO等)送给任务机FPGA,FPGA将该数据存入缓存,并触发物理层完成组帧、编码、调制,再将数据送ADC,直至通过功放及天线将调制后的信号发送到自由空间。
[0003]但是,有一种特殊场景,物理层需要将中控机发送的多包数据通过物理层传输,这表现为在每个物理层发送时间段内,FPGA会收到多包中控机通过接口发送来的数据,且每次收到的包数是不固定的,物理层要按照接收的顺序将所有接口数据依次完整下发。这首先需要将接口数据按顺序拼包发送,且每包数据不应分散到多次物理层发送过程。
[0004]现有论文/专利罕有提出明确通用化处理方式。实际工程中,常规处理流程一般过于繁琐,鲁棒性较差不够稳定,容易出现串数、数据半旧,甚至野值的情况。
技术实现思路
[0005]本专利技术的目的在于提供一种基于FPGA的变长接口数据传输结构,具有极强的鲁棒性和通用性,且部件清晰,时序稳定,占用资源极小。
[0006]为了达到上述目的,本专利技术提供一种基于FPGA的变长接口数据传输结构,包含接口处理模块、数据校验模块和延时乒乓异步重构模块;
[0007]所述接口处理模块用于接收来自中控机的数据; >[0008]所述数据校验模块用于将所述接口处理模块接收的数据进行校验后送至所述延时乒乓异步重构模块进行数据处理;
[0009]所述延时乒乓异步重构模块将处理后的数据发送至物理层调制模块;
[0010]所述延时乒乓异步重构模块包含:
[0011]第一数据缓存单元,其输入端连接所述接口数据校验模块的输出端,用于分时存储收到的接口数据;
[0012]第二数据缓存单元,其输入端连接所述接口数据校验模块的输出端,用于分时存储收到的接口数据;
[0013]第一异步复位模块,其输出端连接所述第一数据缓存单元,用于在所述第一数据缓存单元中的数据被搬移到终端扇出缓存单元后执行快速复位;
[0014]第二异步复位模块,其输出端连接所述第二数据缓存单元,用于在所述第二数据缓存单元中的数据被搬移到终端扇出缓存单元后执行快速复位;
[0015]延时乒乓控制模块,其输出端分别连接所述第一数据缓存单元和所述第二数据缓存单元,用于控制所述第一数据缓存单元和所述第二数据缓存单元的乒乓切换;
[0016]数据重构读取模块,其输入端连接所述第一数据缓存单元的输出端和所述第二数据缓存单元的输出端,用于在异步计时中断生成时及时从所述第一数据缓存单元和所述第二数据缓存单元搬移数据;
[0017]异步计时中断生成模块,其输出端连接所述数据重构读取模块,用于生成异步计时中断;
[0018]终端扇出缓存单元,其输入端连接所述数据重构读取模块的输出端,用于在异步读取中断生成时及时将数据提供给所述物理层调制模块;
[0019]异步读取中断生成模块,其输出端连接所述终端扇出缓存单元,其输入端连接所述物理层调制模块,用于生成异步读取中断。
[0020]利用FPGA芯片实现所述接口处理模块、数据校验模块和延时乒乓异步重构模块。
[0021]中控机每隔T1时间发送N个数据给所述接口处理模块,物理层调制模块的发送间隔为T2(T2>T1),信道每次可容纳实际数据量为M个数据;
[0022]对于floor(T2/T1)不为整数的情况,物理层调制模块每次实际发送数据包为floor(T2/T1)或floor(T2/T1)+1,并满足M>N*(floor(T2/T1)+1)。
[0023]所述延时乒乓控制模块需要等第一数据缓存单元或第二数据缓存单元存入完整的数据包之后,再执行乒乓切换。
[0024]所述数据重构读取模块对从所述第一数据缓存单元和所述第二数据缓存单元搬移的数据进行填充,令存入所述终端扇出缓存单元的数据量为M个数据。
[0025]第一个异步计时中断来到时,所述数据重构读取模块搬移第一数据缓存单元中的数据,第二个异步计时中断来到时,所述数据重构读取模块搬移第二数据缓存单元中的数据,第三个异步计时中断来到时,所述数据重构读取模块再搬移第一数据缓存单元中的数据,以此类推。
[0026]所述异步计时中断和所述异步读取中断的周期均为T2。
[0027]本专利技术具有极高的通用性,适用于触发式、应答式等多种应用场景,也适用于变长或定长应用场景,不考虑几乎可以忽略的多余资源消耗时,整个架构无需做任何修改,可直接套用,故本专利技术存在真正实现流片的可能。
附图说明
[0028]图1是本专利技术提供的一种基于FPGA的变长接口数据传输结构的框图。
[0029]图2是延时乒乓异步重构模块的结构框图。
[0030]图3为延时乒乓异步重构状态机跳转图。
[0031]图4为两级中断示意图。
具体实施方式
[0032]以下根据图1~图4,具体说明本专利技术的较佳实施例。
[0033]如图1所示,为了保证数据的顺序准确发送,提供一种基于FPGA的变长接口数据传输结构,包含接口处理模块1、数据校验模块2和延时乒乓异步重构模块3。中控机0按照约定协议通过接口发送数据给FPGA,FPGA通过接口处理模块1接收数据,经接口数据校验模块2校验成功后,将该接口数据送至延时乒乓异步重构模块3进行数据处理,之后送物理层调制
模块4完成后续操作,再将数据送ADC模块5,直至通过功放及天线将调制后的信号发送到自由空间。
[0034]为了方便说明,记中控机0每隔T1时间发送N个数据给FPGA,物理层调制模块4的发送间隔为T2(T2>T1),信道每次可容纳实际数据量为M个数据。对于floor(T2/T1)不为整数的情况,物理层调制模块4每次实际发送数据包为floor(T2/T1)或floor(T2/T1)+1,并满足M>N*(floor(T2/T1)+1)。
[0035]如图2所示,所述延时乒乓异步重构模块3包含:
[0036]第一数据缓存单元301,其输入端连接所述接口数据校验模块2的输出端,用于分时存储在T2时间内收到的接口数据;
[0037]第二数据缓存单元302,其输入端连接所述接口数据校验模块2的输出端,用于分时存储在T2时间内收到的接口数据;
[0038]第一异步复位模块303,其输出端连接所述第一数据缓存单元301,用于在所述第一数据缓存单元301中的数据被搬移到终端扇出缓存单元308后执行快速复位,以避免存储区残留数据造成残影,导致后续数据出现野值;
[0039]第二异步复位模块304,其输出端连接所述第二数据缓存单元302,用于在所述第本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种基于FPGA的变长接口数据传输结构,其特征在于,包含接口处理模块、数据校验模块和延时乒乓异步重构模块;所述接口处理模块用于接收来自中控机的数据;所述数据校验模块用于将所述接口处理模块接收的数据进行校验后送至所述延时乒乓异步重构模块进行数据处理;所述延时乒乓异步重构模块将处理后的数据发送至物理层调制模块;所述延时乒乓异步重构模块包含:第一数据缓存单元,其输入端连接所述接口数据校验模块的输出端,用于分时存储收到的接口数据;第二数据缓存单元,其输入端连接所述接口数据校验模块的输出端,用于分时存储收到的接口数据;第一异步复位模块,其输出端连接所述第一数据缓存单元,用于在所述第一数据缓存单元中的数据被搬移到终端扇出缓存单元后执行快速复位;第二异步复位模块,其输出端连接所述第二数据缓存单元,用于在所述第二数据缓存单元中的数据被搬移到终端扇出缓存单元后执行快速复位;延时乒乓控制模块,其输出端分别连接所述第一数据缓存单元和所述第二数据缓存单元,用于控制所述第一数据缓存单元和所述第二数据缓存单元的乒乓切换;数据重构读取模块,其输入端连接所述第一数据缓存单元的输出端和所述第二数据缓存单元的输出端,用于在异步计时中断生成时及时从所述第一数据缓存单元和所述第二数据缓存单元搬移数据;异步计时中断生成模块,其输出端连接所述数据重构读取模块,用于生成异步计时中断;终端扇出缓存单元,其输入端连接所述数据重构读取模块的输出端,用于在异步读取中断生成时及时将数据提供给所述物理层调制模块;异步读取中断生成模块,其输出端连接所述终端扇出缓存单元,其输入端连接所述物理层调制模块,用于生成异步读取中...
【专利技术属性】
技术研发人员:贾继鹏,于军,韩宁,汪吕喜,黄云龙,李阿明,谢先群,
申请(专利权)人:上海无线电设备研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。