基于hp接口的多通道数据采集存储回放卡、系统及方法

文档序号:190311 发布日期:2021-11-02 浏览:43次 >En<

阅读说明:本技术 基于hp接口的多通道数据采集存储回放卡、系统及方法 (Multi-channel data acquisition, storage and playback card, system and method based on HP interface ) 是由 王利民 童智勇 王萌 孙恩元 于 2021-07-20 设计创作,主要内容包括:本发明提出一种基于HP接口的多通道数据采集存储回放卡、系统及方法,系统包括采集设备、采集存储回放卡和用户端,采集存储回放卡包括FPGA单元、存储单元,FPGA单元包括可编程逻辑组件和处理器系统,可编程逻辑组件、处理器系统和存储单元依次连接,可编程逻辑组件和外部的采集设备连接,可编程逻辑组件和处理器系统之间设有用于传输数据的HP总线,每一对可编程逻辑组件的HP接口和处理器系统的HP接口互相连接形成HP总线中用于传输被采集数据的第一通道或用于传输被回放数据的第二通道。本发明具有较高集成度,配置有多个独立的通道可以同时进行数据采集和回放并能够进行高速数据读写,并能通过多种方式回放所存储的采集数据。(The invention provides a multi-channel data acquisition, storage and playback card based on an HP interface, a system and a method, wherein the system comprises acquisition equipment, the acquisition, storage and playback card and a user terminal, the acquisition, storage and playback card comprises an FPGA unit and a storage unit, the FPGA unit comprises a programmable logic component and a processor system, the programmable logic component, the processor system and the storage unit are sequentially connected, the programmable logic component is connected with external acquisition equipment, an HP bus for transmitting data is arranged between the programmable logic component and the processor system, and the HP interface of each pair of programmable logic components and the HP interface of the processor system are mutually connected to form a first channel for transmitting acquired data or a second channel for transmitting played back data in the HP bus. The invention has higher integration level, is provided with a plurality of independent channels, can simultaneously acquire and playback data, can read and write high-speed data, and can play back the stored acquired data in various ways.)

基于HP接口的多通道数据采集存储回放卡、系统及方法

技术领域

本发明涉及数据采集回放领域,尤其涉及一种基于HP接口的多通道数据采集存储回放卡、系统及方法。

背景技术

随着数字信息的不断发展,雷达、气象以及通信等方面需要对海量的数据进行采集和分析,由于数据量大、类型多,同时为了做更多的对比以及状态的留存,往往需要将数据存储后做事后分析。有些场景中,系统功能比较复杂,设备种类繁多,需要配备体积小,功耗低的存储回放卡,现有附带主板的存储方案由于体积大,功耗高,已经不能满足要求。

如图1所示,现有的方案包含采集板卡、主板和磁盘三部分,采集板卡负责数据的采集,与外部设备通过SRIO总线传输数据,采集的数据先经过DDR3缓存,再通过PCIE总线和主板进行数据交互,最后由主板将数据存入磁盘中。在SRIO总线下采集卡单个通道的采集速率最高2640MB/s,一路PCIE总线传输数据总速率最高8GB/s,磁盘大小可以根据需求改变。现有的方案回放有两种方式,一种是在带有操作系统的主板上直接读取磁盘数据,另一种是上位机下发回放指令,磁盘中的数据通过PCIE总线传输至采集卡,然后通过采集卡上的SRIO总线回放数据。

这种方案有三个特点:其一,一块采集卡中带有多个采集通道时,在PCIE传送过程中需要将多个通道的数据合并后打包上传,至多只能实现四个通道的独立采集存储,且采集总速率为8GB/s,回放该数据时需要由主板上的FPGA对数据进行解析,然后分通道回放,使得采集和回放不能同时进行;其二,为实现采集和回放同时进行,一个主板上可挂载多个采集板卡,相当于主板上挂载多路PCIE总线,每路总线相互独立,每块采集卡的数据可以独立存放,但这种情况对主板的性能要求较高;其三,由于需要多块板卡协同实现该存储回放功能,因此系统体积庞大,功耗较高且成本也较高。

发明内容

本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种基于HP接口的多通道数据采集存储回放卡、系统及方法,具有较高集成度,能够在独立的不同通道下同时进行数据采集和回放,还能够对同一通道的数据同时进行采集和回放,并能够保持高速数据读写,还能通过多种方式访问存储的采集数据。

为解决上述技术问题,本发明提出的技术方案为:

一种基于HP接口的多通道数据采集存储回放卡,包括FPGA单元、存储单元,所述FPGA单元包括可编程逻辑组件和处理器系统,所述可编程逻辑组件通过处理器系统和存储单元连接,所述可编程逻辑组件和外部的采集设备连接,所述可编程逻辑组件和处理器系统之间设有用于传输数据的HP总线,所述可编程逻辑组件的第一HP接口和处理器系统的第二HP接口一一对应,部分第一HP接口和对应的第二HP接口连接形成HP总线中用于传输被采集数据的第一通道,部分第一HP接口和对应的第二HP接口连接形成用于传输被回放数据的第二通道。

进一步的,还包括网络连接单元,所述网络连接单元、处理器系统和存储单元依次连接形成用于回放存储单元中的数据的第三通道。

进一步的,还包括第一缓存单元和第二缓存单元,所述可编程逻辑组件和第一缓存单元连接,使得待发送至处理器系统或者外部的采集设备的数据被缓存,所述处理器系统和第二缓存单元连接,使得待发送至可编程逻辑组件或者存储单元的数据被缓存。

进一步的,所述第一缓存单元、第二缓存单元分别为DDR4内存,所述处理器系统包括第三缓存单元和第四缓存单元,所述处理器系统对应的DDR4内存、第三缓存单元、第四缓存单元和存储单元依次连接,使得处理器系统对应的DDR4内存和存储单元的读写速度匹配。

本发明还提出一种基于HP接口的多通道数据采集存储回放系统,包括采集设备、采集存储回放卡、用户端、回放设备和用于下发采集和回放指令的上位机,所述采集存储回放卡为任一所述的基于HP接口的多通道数据采集存储回放卡,所述采集设备、回放设备和上位机分别和采集存储回放卡连接,所述用户端和采集存储回放卡的网络连接单元连接,每个第一通道分别对应至少一个采集设备,所述采集设备与对应的第一通道连接,每个第二通道分别对应至少一个回放设备,所述回放设备与对应的第二通道连接。

本发明还提出一种基于HP接口的多通道数据采集存储回放方法,应用于所述的基于HP接口的多通道数据采集存储回放系统,具体包括以下步骤:

S1)划分第一缓存单元得到第一缓存空间,划分第二缓存单元得到第二缓存空间,所述第一缓存空间、第二缓存空间与HP总线中的通道一一对应;

S2)FPGA单元的处理器系统通过可编程逻辑组件接收上位机的指令,若为采集指令则跳转步骤S3),若为回放指令则跳转步骤S4);

S3)选择HP总线中采集设备对应的第一通道,可编程逻辑组件从采集设备获取数据,将数据缓存在对应的第一缓存空间,然后将缓存的数据通过对应的第一通道发送给处理器系统,处理器系统将接受的数据缓存在第二缓存单元中对应的第二缓存空间,然后在存储单元中配置对应的文件夹并将缓存的数据存储在对应的文件夹中,返回步骤S2);

S4)若回放指令指定通过回放设备回放,处理器系统从存储单元2中获取回放指令指定的文件夹中的数据,选择HP总线中回放设备对应的第二通道,并将数据缓存在对应的第二缓存空间,然后将缓存的数据通过对应的第二通道发送给可编程逻辑组件,可编程逻辑组件将接受的数据缓存在第二通道对应的第一缓存空间,然后将缓存的数据发送给回放设备,返回步骤S2);若回放指令指定通过用户端回放,处理器系统从存储单元中获取回放指令指定的文件夹中的数据并将获取的数据通过网络连接单元发送给用户端,返回步骤S2)。

进一步的,步骤S1)之前还包括在线更新程序的步骤,具体包括:

A1)在FLASH中配置G镜像和M镜像的存放和加载地址;

A2)FPGA单元的处理器系统通过网络连接单元接受用户端发送的更新程序,解析判断数据类别并将更新程序的数据保存在第二缓存单元中进行校验,校验通过后,将更新程序的数据通过QSPI方式写入M镜像的存放地址更新M镜像;

A3)FPGA单元的处理器系统从M镜像的存放地址读取M镜像的数据并与第二缓存单元中的数据进行比较,若数据一致则通过网络连接单元向用户端发送更新完成报告;

A4)FPGA单元的处理器系统根据M镜像的加载地址加载M镜像,若加载成功则运行M镜像,否则根据G镜像的加载地址加载G镜像并运行。

进一步的,步骤S3)的具体步骤包括:

处理器系统根据采集设备的数量选取HP总线中的通道作为对应的第一通道,通过GP总线发送写使能信号、第二缓存空间的起始地址,以及单次的传输数据长度给可编程逻辑组件,可编程逻辑组件获取写使能信号后生成写指令并发送给第一缓存单元,等待并获取采集设备传输的数据,将数据存储在对应的第一缓存空间中,第一缓存空间中存储的数据达到阈值后则通过对应的第一通道发往对应的第二缓存空间的起始地址进行存储,发送的数据大小达到单次的传输数据长度后可编程逻辑组件通过GP总线发送完成中断给处理器系统,并将第二缓存空间的写地址根据传输的数据大小进行自增,处理器系统收到中断信号后,通过GP总线再次发送写使能信号给可编程逻辑组件,同时在存储单元设置与采集设备一一对应的文件夹并设置文件属性,将第二缓存空间中存储的数据保存在对应的文件夹中。

进一步,处理器系统根据采集设备的数量选取HP总线中的通道作为对应的第一通道具体包括:若采集设备数量小于或等于HP总线中的通道数量,为每个采集设备分别选取一个HP总线中的通道作为对应的第一通道;若采集设备数量大于HP总线中的通道数量,统计所有采集设备的数据速率后进行分组,每组采集设备的数据速率之和小于或等于HP总线中单个通道的速率,为每组采集设备分别配置一个HP总线中的通道作为对应的第一通道。

进一步,所述采集设备通过SRIO总线和采集存储回放卡连接,步骤S3)中还包括根据优先级发送数据的步骤,具体包括:若SRIO总线单个通道速率小于采集设备输入的数据速率,配置SRIO总线每个通道的优先级并发送给处理器系统,处理器系统将优先级通过GP总线发送给可编程逻辑组件,可编程逻辑组件按照优先级从大到小的顺序依次将SRIO总线每个通道的数据写入对应的第一缓存空间;

或者,若SRIO总线单个通道速率小于采集设备输入的数据速率,采集设备根据预设的优先级并按照从大到小的顺序依次将对应数据通过SRIO总线发送给可编程逻辑组件,可编程逻辑组件依次将每个数据写入对应的第一缓存空间。

与现有技术相比,本发明的优点在于:

1.本发明的采集存储回放卡中,FPGA单元的可编程逻辑组件和处理器系统之间设有用于传输数据的HP总线,可编程逻辑组件的第一HP接口和处理器系统的第二HP接口一一对应且第一HP接口和对应的第二HP接口互相连接形成HP总线中用于传输被采集数据的第一通道或者用于传输被回放数据的第二通道,提供了多个互相独立的数据传输通道,省去了数据通道解析后存储的工作,提高存储效率,降低数据传输过程中出错的概率,使得第一通道中的采集数据和第二通道中的回放数据可以同时反向传输,同时HP总线中每一路通道提供高达1200MB/s的传输速率,从而保证了多通道下的数据高速传输;

2.本发明的采集存储回放卡中还配置了网络连接单元,网络连接单元、处理器系统和存储单元依次连接形成用于回放存储单元中的数据的第三通道,可以通过第三通道来回放存储单元中的文件,使得第一通道中的采集数据和第三通道中的回放数据可以同时传输,互不干扰,极大的方便了用户的操作;

3.本发明的采集存储回放卡为FPGA芯片的可编程逻辑组件和处理器系统分别配置了缓存单元,缓存单元采用DDR4内存,具有高达1600MHz/s的读写频率,同时在可编程逻辑组件和处理器系统之间通过GP总线进行控制信息传输,GP总线中每一路通道的传输速率高达500MB/s,从而实现了多通道下的数据高速缓存和控制信息的高速传输;

4.本发明的数据采集存储回放系统中每个第一通道分别对应至少一个采集设备,每个第二通道分别对应至少一个回放设备,可以同时接收多个采集设备的数据也可以同时向多个回放设备发送进行回放,并且每个第一通道、第二通道彼此间互相独立,省去了存储端数据通道解析后存储的工作,提高存储效率,降低数据传输过程中出错的概率;

5.本发明的方法中,第一缓存单元与第二缓存单元按照HP总线的通道数量分割为第一缓存空间和第二缓存空间,存储单元中也设置与采集设备对应的文件夹,因此对于每个采集设备,HP总线中有对应的第一通道来传输数据,第一缓存单元以及第二缓存单元有独立的缓存空间、存储单元中有独立的存储空间,便于进行数据管理;同时本发明的方法还根据回放指令指定的回放方式,可以通过采集设备进行数据采集并由网络连接单元直接读取存储单元中的数据进行数据同时采集和回放,也可以通过采集设备采集数据并由回放设备回放数据来同时进行数据在不同通道的采集和回放,从而以两种方式实现同时进行数据采集和回放。

附图说明

图1为现有采集存储回放系统的方框图。

图2为本发明实施例的采集存储回放系统的方框图。

图3为本发明实施例的方法中分割第一、第二缓存单元空间的示意图。

图例说明:1-FPGA单元、2-存储单元、3-网络连接单元、4-第一缓存单元、5-第二缓存单元、6-第三缓存单元、7-第四缓存单元、101-采集设备、102-用户端、103-回放设备、104-上位机。

具体实施方式

以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。

基于XILINX公司的16nm制程的新一代双核ARM+FPGA处理器的Zynq UltraScale系列,内部包含用户可编程逻辑PL(Programmable Logic)(后文为PL端)和处理器系统PS(ProcessorSytem)(后文为PS端),处理器系统核心主要采用了ARM旗舰产品,包含64位双核处理器和双核处理器,其主频高达1.5GHz,可以配置不同的功耗和性能要求,高速Bank数量多,可以配置多个高速接口,逻辑资源庞大,现场可编程便于不同需求的应用和开发。

如图2所示,基于该FPGA芯片,本发明提出一种基于HP接口的多通道数据采集存储回放卡,包括FPGA单元1、第一缓存单元4、第二缓存单元5、存储单元2和网络连接单元3,所述FPGA单元1包括PL端和PS端,所述PL端通过PS端和存储单元2连接,所述PL端和外部的采集设备连接,所述PL端和PS端之间设有用于传输数据的HP总线,HP总线是Zynq芯片的重要数据通道,是高性能/带宽的AXI3.0(advanced extensible interface)标准的接口,主要用于PL端访问PS端上的寄存器(DDR或on-chcip RAM),速率高达1200MB/s,所述PL端的第一HP接口和PS端的第二HP接口一一对应,部分第一HP接口和对应的第二HP接口连接形成HP总线中用于传输被采集数据的第一通道,部分第一HP接口和对应的第二HP接口连接形成用于传输被回放数据的第二通道,第一通道和第二通道就是HP总线中的一路通道,FPGA单元1中,HP总线中的通道包括至少一路第一通道以传输被采集数据,还包括至少一路第二通道以传输被回放数据,从而提供了多个互相独立的数据传输通道,省去了数据通道解析后存储的工作,提高存储效率,降低数据传输过程中出错的概率,使得第一通道中的采集数据和第二通道中的回放数据可以同时反向传输,同时HP总线中每一路通道提供高达1200MB/s的传输速率,从而保证了多通道下的数据高速传输。

本实施例中,网络连接单元3用于接收外部指令并发送给FPGA单元1或者导出存储单元2的数据,因此依次连接的存储单元2、PS端和网络连接单元3形成了用于回放存储单元2中的数据的第三通道,可以通过第三通道来回放存储单元2中的文件,使得第一通道中的采集数据和第三通道中的回放数据可以同时传输,互不干扰,极大的方便了用户的操作。

如图2所示,PL端和PS端之间设有用于传输控制信息的GP总线,GP总线是通用的AXI(advanced extensible interface)接口,GP总线中每一路通道的传输速率高达500MB/s,提供了高速传输控制信息的通道,所述PL端的第一GP接口和PS端的第二GP接口一一对应,第一GP接口和对应的第二GP接口连接形成的形成用于交互控制信息的第四通道就是GP总线中的一路通道,所述PL端和第一缓存单元4连接,使得待发送至PS端或者外部的采集设备的数据被缓存,所述PS端和第二缓存单元5连接,使得待发送至PL端或者存储单元2的数据被缓存。

如图2所示,本实施例中的PL端设有SRIO接口或Aurora接口或万兆网接口等高速数据传输接口,所述PL端通过SRIO接口或Aurora接口或万兆网接口和外部的采集设备连接。本实施例中采用SRIO接口,SRIO协议可选1.25Gbps、2.5Gbps、3.125Gbps、5Gbps和6.25Gbps五种速度能满足不同应用需求。

本实施例中基于HP接口的多通道数据采集存储回放卡与外部的设备可以采用光纤连接或者VPX背板连接的方式,光纤连接的情况下,本实施例中的回放卡还包括光电转换模块,所述PL端的SRIO接口通过光电转换模块和外部的采集设备连接,光电转换模块用于连接光纤,可以从光纤获取被采集的数据,通过FPGA单元1将被采集的数据发送给存储单元2进行数据采集存储,或者将来自FPGA单元1的数据通过光纤进行回放。

如图2所示,本实施例中的第一缓存单元4、第二缓存单元5分别为DDR4内存,所述PL端对应的DDR4内存、PL端的HP接口、PS端的HP接口、PL端对应的DDR4内存依次连接,DDR4内存的读写频率高达1600MHZ/s,可以实现采集和回放过程中数据的高速缓存和传输。

本实施例中的存储单元2为SATA硬盘,SATA硬盘挂载在PS端,用于存储采集的数据,容量可以根据需要选择。如图2所示,本实施例中的PS端包括第三缓存单元6和第四缓存单元7,所述PS端对应的DDR4内存、第三缓存单元6、第四缓存单元7和存储单元2依次连接,这是因为数据从DDR4中读取的速率很快,而写入SATA硬盘较慢,加入第三缓存单元6和第四缓存单元7可以使得PS端对应的DDR4内存和存储单元2的读写速度匹配,实现数据的高效存储。本实施例中,第三缓存单元6和第四缓存单元7分别对应PS端内部的内核空间和用户空间这两个区域的缓存块,内核空间和用户空间均有三级缓存,PS端将数据从DDR4取出后,通过DMA(自动操作)先放置到内核空间,再搬运到用户空间,实现自动写盘。在此过程中,内核可以进行其他操作,从而不影响系统的运行效率。

如图2所示,本实施例还提出一种基于HP接口的多通道数据采集存储回放系统,包括采集设备101、采集存储回放卡和用户端102,还包括回放设备103和用于下发采集和回放指令的上位机104,所述采集存储回放卡为任一上述的基于HP接口的多通道数据采集存储回放卡,所述采集设备101、回放设备103、上位机104分别通过光纤或VPX背板和采集存储回放卡连接,所述用户端102通过千兆网和采集存储回放卡的网络连接单元3连接,所述采集存储回放卡包括至少一路第一通道和至少一路第二通道,每个第一通道分别对应至少一个采集设备101,每个第二通道分别对应至少一个回放设备103,所述采集设备101和对应的第一通道连接,所述回放设备103与对应的第二通道连接,因此本实施例中的系统可以同时接收多个采集设备101的数据并且同时向多个回放设备103进行数据回放,使得不同通道的数据采集和回放同时进行,并且每个第一通道以及每个第二通道互相独立,降低FPGA单元1内部数据传输过程中出错的概率,省去了数据通道解析后存储的工作,提高存储效率;同时本实施例中的系统也可以同时接收多个采集设备101的数据并且将所采集的数据存储后通过第三通道由网络连接单元3向用户端102进行回放,从而使得数据的采集和回放同时进行且互不干扰,极大的方便了用户的操作。

本实施例还提出一种基于HP接口的多通道数据采集存储回放方法,应用于所述的基于HP接口的多通道数据采集存储回放系统,具体包括以下步骤:

S1)根据HP总线中的通道的数量划分第一缓存单元4得到第一缓存空间,并划分第二缓存单元5得到第二缓存空间,如图3所示,HP总线中每一个通道分别对应第一缓存单元4和第二缓存单元5中一段缓存地址,输入和输出数据时分别对相应地址空间进行操作,省去后续的数据通路解析,由于DDR4每次只能执行一个通道的写或读,因此可以设定每次写或读的大小,可以根据要求单次调节读写的大小以提高通路效率,本实施例在DDR4内存前后均加入缓存FIFO,采用乒乓法往DDR4内存中写入或读出数据;

S2)FPGA单元1的PS端通过PL端接收上位机104的指令,若为采集指令则跳转步骤S3),若为回放指令则跳转步骤S4);

S3)选择HP总线中采集设备101对应的第一通道,PL端从采集设备101获取数据,将数据缓存在第一缓存单元4中对应的第一缓存空间,然后将缓存的数据通过对应的第一通道发送给PS端,PS端将接受的数据缓存在第二缓存单元5中对应的第二缓存空间,然后在存储单元2中配置采集设备101对应的文件夹并将缓存的数据存储在对应的文件夹中,返回步骤S2);

S4)若回放指令指定通过回放设备103回放,PS端从存储单元2中获取回放指令指定的文件夹中的数据,选择HP总线中回放设备103对应的第二通道,并将数据缓存在对应的第二缓存空间中,然后将缓存的数据通过对应的第二通道发送给PL端,PL端将接受的数据缓存在第二通道对应的第一缓存空间,然后将缓存的数据发送给回放设备103,返回步骤S2);若回放指令指定通过用户端102回放,PS端从存储单元2中获取回放指令指定的文件夹中的数据并将获取的数据通过网络连接单元3发送给用户端102,返回步骤S2)。

本实施例的步骤S1)中,由于前后端数据读写速率存在中断现象,因此采集和回放的数据均需要通过PL端的DDR4即第一缓存单元4以及PS端的DDR4即第二缓存单元5缓存后再进行数据存储或回放。根据HP总线中用于采集的数据通道个数,将PL端DDR4的空间进行划分得到第一缓存空间,且第一缓存空间个数大于等于用于采集的数据通道个数,具体划分个数可以根据实际需求进行设置,用于采集的数据通道个数越多,每个第一缓存空间缓存数据数量越少。

对于本实施例中FPGA单元1的PL端和PS端,DDR4输出的数据送至HP总线接口,PS端的DDR4地址映射到HP总线接口,PL端直接将数据写入到PS端的DDR4中。根据HP总线中实际的用于采集和用于回放的通道个数,将PS端DDR4进行空间划分得到第二缓存空间,实际划分的第二缓存空间个数为用于采集和用于回放的通道个数之和,PS端带有DDR4 Control控制器并对DDR4读写进行管理,在应用层设置通道的个数和通道与划分空间一一对应关系。PL端数据通过HP总线直接写到DDR4 Control中,由DDR4 Control判断当前的读写状态并返回指令至应用层,应用层实现HP读写指令的控制。

GP接口提供PL与PS间控制信息和状态交互通道。上电后,PS端发送写使能信号、DDR4起始地址,以及单次的传输数据长度,PL端接收到写使能信号后,先发送写DDR4地址指令,并等待采集数据的到来,如果PL端的DDR4缓存空间中有数据,通过HP总线接口传送一次burst大小长度的数据,传输完成后发送完成中断,写地址根据传输的数据大小进行自增,PS端收到中断,则一次传输完成,然后PS再次发送写使能信号,开启下一次数据传输,同时存储在PS端的DDR4中的数据,经过内核空间、用户空间逐级搬运后,写入Sata盘中。

因此,本实施例的步骤S3)的具体步骤包括:PS端根据采集设备101的数量选取HP总线中的通道作为对应的第一通道,由于第一缓存空间、第二缓存空间和HP总线中的通道一一对应,因此采集设备101具有对应的第一通道、对应的第一缓存空间和对应的第二缓存空间,通过GP总线发送写使能信号、第二缓存空间的起始地址,以及单次的传输数据长度给PL端,PL端获取写使能信号后生成写指令并发送给第一缓存单元4,等待并获取采集设备101传输的数据,将数据存储在采集设备101对应的第一缓存空间中,第一缓存空间中存储的数据达到阈值后则通过对应的第一通道发往第二缓存单元5中对应的第二缓存空间的起始地址进行存储,发送的数据大小达到单次的传输数据长度后,PL端通过GP总线发送完成中断给PS端,并将第二缓存空间的写地址根据传输的数据大小进行自增,PS端收到中断信号后,通过GP总线再次发送写使能信号给PL端,同时在存储单元2设置与采集设备101一一对应的文件夹并设置文件属性,将第二缓存空间中存储的数据保存在对应的文件夹中。

本实施例的步骤S3)中,如果采集设备101过多,并且个别采集设备101的数据速率较低时,可以考虑将其中几个合并到HP总线的一路通道上。单个HP总线通道可以进行拆分为独立的子通道,后端存盘时根据每个子通道分开存储文件,即针对不同采集设备101分别存储所采集的数据,但被合并的采集设备101传输总速率最大为1200MB/s,因此PS端根据采集设备101的数量选取HP总线中的通道作为对应的第一通道具体包括:若采集设备101数量小于或等于HP总线中的通道数量,为每个采集设备101分别选取一个HP总线中的通道作为对应的第一通道;若采集设备101数量大于HP总线中的通道数量,统计所有采集设备101的数据速率后进行分组,每组采集设备101的数据速率之和小于或等于HP总线中单个通道的速率,为每组采集设备101分别配置一个HP总线中的通道作为对应的第一通道。

同理,步骤S4)中选择HP总线中回放设备103对应的第二通道也是PS端根据回放设备103的数量选取HP总线中的通道作为对应的第二通道,具体包括:若回放设备103数量小于或等于HP总线中的通道数量,为每个回放设备103分别选取一个HP总线中的通道作为对应的第二通道;若回放设备103数量大于HP总线中的通道数量,统计所有回放设备103的数据速率后进行分组,每组回放设备103的数据速率之和小于或等于HP总线中单个通道的速率,为每组回放设备103分别配置一个HP总线中的通道作为对应的第二通道。

本实施例中SRIO总线支持优先级控制,可以直接定义SRIO总线中每个通道的优先级,保证主要通道的数据被存储。SRIO总线单个通道速率可达6.25Gbs,根据应用的需要,如果输入的数据速率大于SRIO总线中通道的最高速率时,需要控制SRIO总线的通道的数据存储优先级,控制方式可以通过采集设备输入时直接控制,或者收取通道优先级指令。

因此本实施例的步骤S3)中还包括根据优先级发送数据的步骤,具体包括:若SRIO总线单个通道速率小于采集设备101输入的数据速率,配置SRIO总线每个通道的优先级并发送给PS端,PS端将优先级通过GP总线发送给PL端,PL端按照优先级从大到小的顺序依次将SRIO总线每个通道的数据写入第一缓存单元4中采集设备101对应的第一缓存空间;

或者,若SRIO总线单个通道速率小于采集设备101输入的数据速率,采集设备101根据预设的优先级并按照从大到小的顺序依次将对应数据通过SRIO总线发送给PL端,PL端依次将每个数据写入第一缓存单元4中采集设备101对应的第一缓存空间。

本实施例中,采集设备101、回放设备103和SRIO总线中的通道一一对应,PL端DDR4中的第一缓存空间可采用循环就近切换法进行切换,实现数据在外部设备和采集回放板卡连接的SRIO总线中的通道同时进行数据的采集和回放操作。初始状态下,默认为采集模式,选取第一缓存空间以及HP总线中对应的通道作为第一通道以实现数据采集的同时进行缓存;当回放指令下发时,监测当前是否有空闲第一缓存空间,如果有,空闲第一缓存空间对应的HP总线中的通道作为第二通道,同时回放的数据通过空闲第一缓存空间进行数据的缓存,然后通过SRIO总线中回放设备103对应的通道号将数据回放到回放设备103。

本实施例中循环就近切换法,对SRIO总线中每个通道和PL端DDR4中的第一缓存空间从0开始进行编号,具体控制过程如下:

1、默认为空闲模式,所有第一缓存空间均空闲;

2、采集模式时,获取设备101对应的SRIO总线中的通道编号,选取编号大于或等于其编号的第一缓存空间作为对应缓存空间;如果编号大于或等于其编号的的第一缓存空间均处于忙碌状态,则选择空闲的且编号最小的第一缓存空间作为对应缓存空间;

3、回放模式时,PL端检测处在空闲状态的第一缓存空间,并查找编号比当前回放设备103对应的SRIO总线中的通道编号大,且与其编号差值最小的第一缓存空间,作为对应缓存空间;如果编号比当前回放设备103对应的SRIO总线中的通道编号大的第一缓存空间均处于忙碌状态,则选择空闲的且编号最小的第一缓存空间作为对应缓存空间;

4、如果采集时没有空闲的第一缓存空间,则停止用于回放的优先级最低的第一缓存空间;

5、第一缓存空间的优先级从编号0开始逐渐降低。

本实施例中,回放有两种方式,第一种如步骤S4)中指定回放设备103进行回放的情况,上位机104或者其他外部接口发送回放指令,PS端根据回放设备103的数量选取HP总线中的通道作为对应的第二通道,并指定待回放的数据,PS端读取Sata盘中对应文件夹得到待回放数据,通过对应的第二通道将数据发送给回放设备103回放。第二种如步骤S4)中指定用户端102进行回放的情况,用户端102通过千兆网连接采集存储回放卡,可以通过浏览器IP访问、NAS网盘共享转存方式挂载或者上位机三种方式访问SATA硬盘进行数据回放。两种方式均可以实现采集和回放同时进行,互不干扰,极大的方便了用户的操作。

本实施例中,基于HP接口的多通道数据采集存储回放上还设有Flash,还具备在线更新功能。结合此类板卡应用场景的复杂性和保密性,对于批量的设备应具备程序在线更新功能。其采用Multiboot方式。此方式可以根据需求在同一Flash中保存多个镜像。本方案使用两个镜像,分别是G镜像和M镜像。G镜像作为永久镜像,存放于基地址中,永远不主动擦除。每次程序更新时,擦除替换Flash中的M镜像。上电后,FPGA先加载M镜像,配置完成后,如果成功,则运行M镜像,如果运行失败,则重新加载G镜像。此方法避免了由于断电等原因导致更新失败或加载失败时,FPGA仍可以自动从G镜像实现程序的主动加载,保证系统工作的正常,同时可以请求程序二次更新。本发明中,首先配置为多镜像加载方式,预设M镜像的存放和加载地址,配置为M镜像优先加载。用户可以通过客户端或者千兆网,将需要更新的程序传输给PS端,PS端解析判断数据类别,然后在DDR4中做数据的校验,校验通过后,通过QSPI方式写入Flash指定的地址中,烧写完成后,读出Flash的内容,再次与DDR4中数据进行比较,无误后上传更新完成指令。

因此,步骤S1)之前还包括在线更新程序的步骤,具体包括:

A1)在FLASH中配置G镜像和M镜像的存放和加载地址;

A2)FPGA单元1的PS端通过网络连接单元3接受用户端102发送的更新程序,解析判断数据类别并将更新程序的数据保存在第二缓存单元(5)中进行校验,校验通过后,将更新程序的数据通过QSPI方式写入M镜像的存放地址更新M镜像;

A3)FPGA单元1的PS端从M镜像的存放地址读取M镜像的数据并与第二缓存单元5中的数据进行比较,若数据一致则通过网络连接单元3向用户端102发送更新完成报告;

A4)FPGA单元1的PS端根据M镜像的加载地址加载M镜像,若加载成功则运行M镜像,否则根据G镜像的加载地址加载G镜像并运行。

本实施例中,FPGA单元1的PS端运行linux操作系统,运行标准Sata协议,设置文件属性,读写Sata盘,每个通道采集的数据存储在各自的文件夹中,用户可以手动设定每次存储的文件大小,实现不同时刻的数据在同一文件中的连续存储,便于文件的管理。同时本实施例中采用对应的上位机软件,可以控制通道采集使能、优先级,以及监测采集存储板卡的状态。通过嵌入linux操作系统,实现对sata文件的人性化管理,用户可以通过网络,实现和不同操作系统的连接,用户可以通过远程控制方式,操作上位机软件,实现采集、回放等指令操作,另外可以在上位机手动设置不同文件的单次或循环回放,以及设定回放的通道、回放的路径,回放的不同时间段采集的文件,给实际的应用带来极大的便利。

上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。

16页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种CNN协处理器

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!