基于fpga的多通道数据记录与回放方法

文档序号:9489399阅读:1153来源:国知局
基于fpga的多通道数据记录与回放方法
【技术领域】
[0001]本发明涉及数据传输控制,具体地,涉及一种基于FPGA的多通道数据记录与回放方法,用于记录数据源端发送的实时数据,需要时可随时回放数据重现试验情形。实现时需要一款数据记录仪配合完成。
【背景技术】
[0002]—般地,数据记录仪采用“点对点”方式记录每通道数据,形成的多个数据任务在管理与使用时带来诸多不便,有时甚至会造成记录的数据任务丢失。对于单总线数据记录仪一次记录操作也只能记录分时工作的多通道数据,若要完成对同步工作的多通道数据的记录,需要辅以数据交换机配合完成,即使数据记录仪提供多套数据总线接口,但受限于其自身带宽,一次记录操作记录的每路通道的数据吞吐率也不得不降低。若需要一次记录操作记录同步工作的多通道数据,需定制专用的数据记录仪或者配置数据交换机,造成系统成本的增加。为了方便数据的高效管理和使用,同时一定程度上取代数据交换机的功能,需要实现对同步工作的多通道高吞吐率数据的记录并形成单个数据任务;回放操作时将单个任务的数据从各个通道回放至系统显控台。为了实现该记录与回放数据的效果,需要对数据传输过程进行精确控制。
[0003]需要一种数据传输控制方法,这种方法可以满足一次记录操作就可记录同步工作的多通道高吞吐率的数据,形成的单个任务在回放操作时数据可从相应通道回传且不发生丢包现象。

【发明内容】

[0004]针对现有技术中的缺陷,本发明的目的是提供一种基于FPGA的多通道数据记录与回放方法,可实现一次记录操作完成同步工作的多通道数据的记录功能;同时,一次记录形成的单个任务在回放操作时,数据可从相应通道回传且不发生丢包现象。
[0005]根据本发明提供的基于FPGA的多通道数据记录与回放方法,包括以下步骤:
[0006]步骤1:接收待记录数据,具体为,记录仪接口板上的FPGA接收数据源发送的数据包;
[0007]步骤2:记录同步工作的多通道数据,具体为,从所述FPGA的FIFO队列中读取数据并送入数据记录仪的数据总线上,通过数据选择器进行数据的记录;
[0008]设每路通道数据的发送频率为f,则设置数据选择器的时钟为nXf,η为通道数量;
[0009]步骤3:添加标记记录数据,具体为,记录仪接口板将从FIFO队列中读出的数据添加标记,记录操作触发数据记录仪内部的记录写时钟,依次将各个通道的数据记录至数据记录仪的硬盘且形成单个任务;
[0010]步骤4,数据记录仪回放数据,具体为,将存储在数据记录仪硬盘的单个任务里各通道数据回放至记录仪接口板并写入FIFO队列中;
[0011]步骤5:根据回放间隔时间将剥离标记后的回放数据发送回数据源。
[0012]优选地,所述步骤I包括如下步骤:
[0013]步骤101:记录仪接口板上的FPGA通过光纤以Sbit形式接收数据源发送的数据包,所述数据包包括数据传输的目的MAC地址、源MAC地址、实际数据帧长度以及数据源端发送数据;
[0014]步骤102 =FPGA通过MAC传输的帧协议依次接收所述数据包的每个字节数据;
[0015]步骤103 =FPGA最大化的开辟若干FIFO队列,用以缓存所述数据包并将数据包中数据位宽转换成16bit。
[0016]优选地,所述步骤3包括如下步骤:
[0017]步骤301:添加所述标记中的帧长度值,帧长度值用于记录一帧数据的总长度;
[0018]步骤302:添加所述标记中的通道号,通道号用于表示不同的物理通道上的数据;
[0019]步骤303:记录操作触发数据记录仪内部的记录写时钟,依次将各个通道的数据记录至数据记录仪的硬盘且形成单个任务。
[0020]优选地,所述步骤4包括如下步骤:
[0021]步骤401:记录仪接口板向数据记录仪发送请求振荡时钟,数据记录仪返回给记录仪接口板回放读时钟,其中回放读时钟频率与请求时钟频率一致;
[0022]步骤402:记录仪接口板将单个任务里各个通道的数据回放至16bit数据宽度的数据总线并写入FIFO队列,并缓存回放数据的FIFO队列将数据位宽转换成8位;
[0023]步骤403:等待通过光纤将回放的数据发送回数据源。
[0024]优选地,回放数据的标记剥离,具体为,
[0025]-所述FPGA的光纤以太网MAC核在发送回放的数据时,判断完整一帧数据传输的控制信号,所述控制信号在发送完整一帧数据时一直保持低电平有效;
[0026]-在所述FPGA的逻辑设计中,建立计数器,当计数器计数到需要剥离的标记的位置时,将控制完整一帧数据传输的控制信号拉为高电平,若干个时钟周期后恢复为低电平有效传输状态。
[0027]优选地,所述回放间隔时间,具体为,根据光纤以太网发送时钟,相邻两帧数据的包头信息,得到所述回放间隔时间;所述回放间隔时间与所述数据源发送数据的频率一致。
[0028]优选地,还包括如下步骤:
[0029]检测数据是否丢失;
[0030]具体地,所述检测数据是否丢失的步骤,包括如下步骤:
[0031]-当数据源发送数据时,对数据加入了批次号,所述批次号用于对发送的帧数据进行计数;
[0032]-数据源接收回放的数据时将批次号暂存于寄存器中,并将接收到的相邻两帧数据的批次号相减,若检测到的值恒为1,则认为回放的数据没有发生丢失;否则认为数据丢失。
[0033]优选地,在步骤2中通过提高所述数据选择器的处理时钟,根据每帧数据的同步头信息,将多通道的数据依次被数据记录仪记录形成单个任务。
[0034]与现有技术相比,本发明具有如下的有益效果:
[0035]1、本发明可实现一次记录操作完成同步工作的多通道数据的记录功能;同时,一次记录形成的单个任务在回放操作时,数据可从相应通道回传且不发生丢包现象;
[0036]2、本发明中能够将多通道数据记录形成单任务,数据管理较为方便;
[0037]3、本发明中的方法采用大规模集成芯片实现,可实现大吞吐率数据的记录和回放的功能;
[0038]4、本发明记录数据灵活,回放数据可控;
[0039]5、本发明的实现系统结构简单,设计简化,一定程度上可取代数据交换机的部分功能;
[0040]6、本发明记录回放接口技术通用性较强;
[0041]7、本发明能够有效管理和使用数据,同时一定程度上取代数据交换机的功能,简化系统设计,降低系统成本。
【附图说明】
[0042]通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0043]图1是本发明基于的硬件平台的连接框图。
[0044]图2是本发明的待记录的光纤以太网传输的帧格式及部分内容图。
[0045]图3是本发明的记录仪接口板上FPGA内部数据流图。
[0046]图4是本发明的记录仪接口板上光纤以太网接收数据时序图。
[0047]图5是本发明的记录接口时序图。
[0048]图6是本发明的FPGA逻辑设计流程图。
[0049]图7是本发明的记录仪接口板回放接口时序图。
[0050]图8是本发明的记录仪接口板上光纤以太网发送数据时序图。
[0051]图9是本发明的记录仪接口板回放过程的逻辑设计流程图。
【具体实施方式】
[0052]下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
[0053]在本实施例中,本发明中记录仪接口板通过光纤与多个数据源连接,记录仪接口板通过数据总线和记录仪母板连接器连接所述数据记录仪,数据源以光纤以太网传输的帧协议格式,同时发送帧长度为638个Byte的数据包,数据包格式如图2所示,内容依次为“00 22 19 05 Ib 9b 00 22 19 05 Ib 9d 02 70 和实际传输的 624 个 Byte 的数据”,实际传输的624个Byte的数据中含有“批次号”、“数据头5A5A”和“数据尾BF
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1