CN116048453B - 一种基于fpga的多通道触发异步调度系统及方法 - Google Patents

一种基于fpga的多通道触发异步调度系统及方法 Download PDF

Info

Publication number
CN116048453B
CN116048453B CN202310070611.2A CN202310070611A CN116048453B CN 116048453 B CN116048453 B CN 116048453B CN 202310070611 A CN202310070611 A CN 202310070611A CN 116048453 B CN116048453 B CN 116048453B
Authority
CN
China
Prior art keywords
channel
sampling
data
scheduling
trigger
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310070611.2A
Other languages
English (en)
Other versions
CN116048453A (zh
Inventor
孔洁
梁根源
颜俊伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Modern Physics of CAS
Original Assignee
Institute of Modern Physics of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Modern Physics of CAS filed Critical Institute of Modern Physics of CAS
Priority to CN202310070611.2A priority Critical patent/CN116048453B/zh
Publication of CN116048453A publication Critical patent/CN116048453A/zh
Application granted granted Critical
Publication of CN116048453B publication Critical patent/CN116048453B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/065Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/7825Globally asynchronous, locally synchronous, e.g. network on chip
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

本发明涉及一种基于FPGA的多通道触发异步调度系统及方法,包括FPGA系统,其中,FPGA系统内设置有:通道采样模块,用于对电子学信号进行对应通道的采样,得到对应通道的采样点数据;通道独立处理模块,用于接收对应通道采样模块传输的采样点数据,进行相应多个采样点数据的组帧,并生成有效信号;总体调度模块,用于进行各通道之间的通道标识比较和相应数据的记录,将顺序的数据帧存储至对应的寄存器组内,并将相应数量的寄存器内容依次打出;阵列读出模块,用于将调度完成的数据帧进行并串转换,并与数据读出接口进行位宽匹配,本发明可广泛用于核探测器高集成度读出电子学信号采集传输领域中。

Description

一种基于FPGA的多通道触发异步调度系统及方法
技术领域
本发明涉及核探测器高集成度读出电子学信号采集传输领域,特别是关于一种基于FPGA(可编程逻辑列阵)的多通道触发同步调度系统及方法。
背景技术
核探测领域由于其探测粒子种类繁多且微观数量极多,采用大面积、高灵敏度探测器实现粒子探测与鉴别,常对应庞大的事件量及海量数据读出通道,因而对应的读出电子学常采用高集成度、高速、多通道的采样处理系统。然而,海量的数据通道读出要求电子学具备低死时间、高数据吞吐率及灵活可扩展,同时也会带来较多的逻辑资源消耗。
现有技术中的多通道采样系统主要包括交叉(交替)采样、选通采样和并行采样。其中,交叉采样是通过多个通道顺序轮询等待来进行采样,即当通道一采样完后通道二开始采样,同时通道一进入等待轮换状态,通道二采样完成后通道三开始采样,同时通道二进入等待状态,依次完成最后一个通道的采样,当最后一个通道采样完毕且此时通道一已经转换完成则可以准备下一轮的循环,交叉采样可以充分利用转换阶段时间达到高速数据采集系统速度的需求,同一时刻真正进行采样的只有当前通道,是通过通道交替达到多通道的采样,其实际的吞吐率不高。并行采样是通过将所有的数据通道全部选通进行采样,且所有采样通道同时工作,当有任一数据通道对应触发到来时,所有的处理逻辑同时对采样的数据进行处理和组帧,并将数据上传,这种并行方式能达到多通道采样的效果,且有较大的吞吐率。但是在实际工作情况下,各数据通道对应的触发到来时刻是随机的,在当前采样逻辑处理及组帧时,各个通道是否有触发也是随机的,这种方式会浪费大量的数据带宽,即使整体有较大的吞吐量,但实际传输的数据中有效信息量是有限的。选通采样是针对多数据通道其一一对应的触发是固定且已知的采样系统,通过预先设定固定的数据通道数量来进行采样,即需预先知道有多少个通道采样及相应的触发数量,并需要与其实际应用场景相匹配,再来设计开发相应的采集处理逻辑固件,基于该选通采样可以实现多通道采样系统需求,但每次只能采集有固定触发相对应的数据通道,专用性强,在硬件和固件层面不易更改,导致系统灵活性和可扩展性较差。
上述现有技术中的多通道采样模式,或吞吐率不高或灵活性较差,均会给整体系统引入较大的死时间,不利于在对死时间要求较高的多通道采样传输场景下使用。
发明内容
针对上述问题,本发明的目的是提供一种灵活度高、死时间小且能够实时有效地处理多探测器采样数据的基于FPGA的多通道触发异步调度系统及方法。
为实现上述目的,本发明采取以下技术方案:一方面,提供一种基于FPGA的多通道触发异步调度系统,包括FPGA系统,其中,所述FPGA系统内设置有:
通道采样模块,用于对电子学信号进行对应通道的采样,得到对应通道的采样点数据;
通道独立处理模块,用于根据外部触发信号以及预先设定的采样点数,接收对应所述通道采样模块传输的采样点数据,进行相应多个采样点数据的组帧,对组帧后的采样点数据进行通道标识,并生成有效信号;
总体调度模块,用于根据不同通道数据帧的标记包头以及相应的触发信号和有效信号,进行各通道之间的通道标识比较和相应数据的记录,将顺序的数据帧存储至对应的寄存器组内,并根据触发信号的数量,将相应数量的寄存器内容依次打出,完成总体同步调度;
阵列读出模块,用于将调度完成的数据帧进行并串转换,并与数据读出接口进行位宽匹配,将并串转换后的串行数据通过所述数据读出接口串行传输至外部上位机。
进一步地,所述通道采样模块包括:
预采样单元,用于一直进行采样,当触发到来时将预采样的多点值和触发采样生成的数据帧传入所述通道独立处理模块,在触发到来的前一段时间进行信号基线恢复;
触发采样单元,用于当触发到来时对当前通道的信号值进行采样。
进一步地,各通道的所述通道独立处理模块在进行组帧后处于空闲状态,立即响应下一次外部触发信号。
进一步地,所述总体调度模块包括:
数据缓存单元,用于缓存各通道的通道标识后的数据帧以及相应的触发信号和有效信号;
第一保留站,用于根据不同通道数据帧的标记包头和对应的有效信号,对整体的数据帧进行新一轮的标记;
第二保留站,用于对各通道的新通道标识进行互相比较,并记录比较结果,将顺序的数据帧存储至对应的寄存器组内,并根据触发信号的数量,将相应数量的寄存器内容依次打出;
输出缓存单元,用于存储调度完成的有序数据帧;
控制单元,用于控制所述数据缓存单元的读写使能信号,控制所述第一保留站和第二保留站在相应的时序状态下是否开始运行的使能信号以及控制所述输出缓存单元的写使能;
最小单元调度单元,用于根据采样点数量、所述通道采样模块采样一组数据帧所需采样时间以及所述第一保留站和第二保留站同步调度所用的实际时间,对所有通道重新划分通道组,进行相应资源量的优化。
进一步地,所述数据缓存单元包括:
第一FIFO阵列,用于存储经所述通道独立处理模块处理完成的数据帧,所述第一FIFO阵列的位宽即为单个数据帧的长度;
第二FIFO阵列,用于存储各通道数据帧相应的有效信号,所述第二FIFO阵列的位宽与整体的通道数量一致。
另一方面,提供一种基于FPGA的多通道触发异步调度方法,包括:
对电子学信号进行对应通道的采样,得到对应通道的采样点数据;
根据外部触发信号以及预先设定的采样点数,接收对应的采样点数据,进行相应多个采样点数据的组帧,对组帧后的采样点数据进行通道标识,并生成有效信号;
缓存各通道的通道标识后的数据帧以及相应的触发信号和有效信号,各通道组帧完成后处于空闲状态,立即响应下一次外部触发信号,进行新一轮通道的采样;
根据不同通道数据帧的标记包头以及相应的触发信号和有效信号,进行各通道之间的通道标识比较和相应数据的记录,将顺序的数据帧存储至对应的寄存器组内,并根据触发信号的数量,将相应数量的寄存器内容依次打出,完成总体同步调度;
将调度完成的数据帧进行并串转换,并与数据读出接口进行位宽匹配,将并串转换后的串行数据通过所述数据读出接口串行传输至外部上位机。
进一步地,所述对电子学信号进行对应通道的采样,得到对应通道的采样点数据,包括:
通道采样模块的预采样单元一直进行采样,只有当触发到来时,才将预采样的多点值和触发采样生成的数据帧传入通道独立处理模块,通过预采样单元进行触发到来的前一段时间的信号基线恢复;
当触发到来时,通道采样模块的触发采样单元对当前通道的信号值进行采样。
进一步地,所述根据不同通道数据帧的标记包头以及相应的触发信号和有效信号,进行各通道之间的通道标识比较和相应数据的记录,将顺序的数据帧存储至对应的寄存器组内,并根据触发信号的数量,将相应数量的寄存器内容依次打出,完成总体同步调度,包括:
第一保留站根据不同通道数据帧的标记包头和对应的有效信号,对整体的数据帧进行新一轮的标记;
第二保留站对各通道的新通道标识进行互相比较,并记录比较结果;
第二保留站根据比较信息序列,统计各通道的比较信息序列中‘1’的个数,得到各通道对应的比较结果;
第二保留站以比较结果的值作为寄存器组的地址,将各通道的数据帧按照相应的地址值填到相应寄存器组内;
第二保留站根据触发信号的数量,将寄存器组内与触发信号个数相对应的寄存器数量的内容依次输出;
输出缓存单元存储调度完成的有序数据帧;
控制单元设置相应的状态机控制数据缓存单元的读写使能信号,控制第一保留站和第二保留站在相应的时序状态下是否开始运行的使能信号。
进一步地,还包括:
对于特定的FPGA逻辑资源,进行资源量优化。
进一步地,所述对于特定的FPGA逻辑资源,进行资源量优化,包括:
最小单元调度单元根据采样点数量、通道采样模块采样一组数据帧所需采样时间以及第一保留站和第二保留站同步调度所用的实际时间,计算最小调度单元系数;
最小单元调度单元根据最小调度单元系数,对所有通道重新划分通道组。
本发明由于采取以上技术方案,其具有以下优点:
1、本发明对应要求低死时间,灵活性高的数据采样场景,整体采样和调度逻辑只有3个时钟周期的死时间,能够连续、快速、有效地处理多个采样通道的采样点数据,同时最后上传结果只包含有触发的通道对应的数据帧,整个系统逻辑上传的数据包是一种变长不定点的传输格式,对于没有触发的通道,则不会占用额外的带宽,在实现低死时间、高灵活性的同时,还拥有较高的吞吐量,满足工程需求。
2、本发明各通道均设置对应的通道采样模块和通道独立处理模块,通道独立处理模块在组帧完成后将数据帧及相应的触发信号扇出至后级的总体调度模块,因而当不同通道有不同的触发信号产生时,都可以有及时快速的响应触发完成处理,极大地减小不同通道调度的死时间。
3、本发明的总体调度模块设置有数据缓存单元用于缓存数据,缓存起来的数据即可交由后续的单元继续进行调度,同时,各个通道的通道独立处理模块在组帧完成后处于空闲状态,可以立即响应下一次外部触发,快速进行新一轮各通道的采样,而无需等待后级模块整体调度完毕,可以极大地减小单通道多次触发时的系统死时间。
4、本发明的总体调度模块设置有输出缓存单元,在完成总体调度后,为适配传输接口的位宽及速率,设置一级缓存存储已经完成调度的有序数据帧,以减小因接口速率不匹配,或因组包的传输位宽不一致而导致丢数的情况出现。
综上所述,本发明可以广泛应用于核探测器高集成度读出电子学信号采集传输领域中。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。在整个附图中,用相同的附图标记表示相同的部件。在附图中:
图1是本发明一实施例提供的系统结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施方式。虽然附图中显示了本发明的示例性实施方式,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本发明,并且能够将本发明的范围完整地传达给本领域的技术人员。
应理解的是,文中使用的术语仅出于描述特定示例实施方式的目的,而无意于进行限制。除非上下文另外明确地指出,否则如文中使用的单数形式“一”、“一个”以及“所述”也可以表示包括复数形式。术语“包括”、“包含”、“含有”以及“具有”是包含性的,并且因此指明所陈述的特征、步骤、操作、元件和/或部件的存在,但并不排除存在或者添加一个或多个其它特征、步骤、操作、元件、部件、和/或它们的组合。文中描述的方法步骤、过程、以及操作不解释为必须要求它们以所描述或说明的特定顺序执行,除非明确指出执行顺序。还应当理解,可以使用另外或者替代的步骤。
尽管可以在文中使用术语第一、第二、第三等来描述多个元件、部件、区域、层和/或部段,但是,这些元件、部件、区域、层和/或部段不应被这些术语所限制。这些术语可以仅用来将一个元件、部件、区域、层或部段与另一区域、层或部段区分开。除非上下文明确地指出,否则诸如“第一”、“第二”之类的术语以及其它数字术语在文中使用时并不暗示顺序或者次序。因此,以下讨论的第一元件、部件、区域、层或部段在不脱离示例实施方式的教导的情况下可以被称作第二元件、部件、区域、层或部段。
本发明实施例提供的基于FPGA的多通道触发异步调度系统及方法,针对多探测器前端高集成度读出和海量数据通道独立触发系统,基于FPGA对随机、无序的触发信号进行异步调度和实时数据处理,能够提高数字信号处理系统的灵活性,实现无死时间、高速数据传输的需求。
实施例1
如图1所示,本实施例提供一种基于FPGA的多通道触发异步调度系统,包括FPGA系统1,其中,FPGA系统1内设置有通道采样模块2、通道独立处理模块3、总体调度模块4和阵列读出模块5。另外,通道采样模块2和通道独立处理模块3的数量与通道数量相同,即每一通道采样模块2和通道独立处理模块3均对应一通道。
通道采样模块2用于对处理多探测器系统输出的电子学信号进行对应通道的采样,得到对应通道的采样点数据。
通道独立处理模块3用于根据外部触发信号以及预先设定的采样点数,接收对应通道采样模块2传输的采样点数据,进行相应多个采样点数据的组帧,对组帧后的采样点数据进行通道标识,并生成有效信号,各通道的通道独立处理模块3在进行组帧后处于空闲状态,可立即响应下一次外部触发信号。
总体调度模块4用于根据不同通道数据帧的标记包头以及相应的触发信号和有效信号,进行各通道之间的通道标识比较和相应数据的记录,将顺序的数据帧存储至对应的寄存器组内,并根据触发信号的数量,将相应数量的寄存器内容依次打出,完成总体同步调度。
阵列读出模块5用于将调度完成的数据帧进行并串转换,由于在总体调度模块4中预输出存储的寄存器内容为二维阵列,需将其转化为串行数据,并与数据读出接口进行位宽匹配,将并串转换后的串行数据通过数据读出接口串行传输至外部上位机进行数据接收。
在一个优选的实施例中,通道采样模块2采用ADC(模数装换)串行采样模块,通道采样模块2采样出来的数字信号为单bit(比特)信号,需要通道独立处理模块3将多bit信号处理组合在一起,得到具体的多比特数字信号。
在一个优选的实施例中,通道采样模块2包括预采样单元和触发采样单元。
预采样单元用于一直进行采样,当触发到来时将预采样的多点值和触发采样生成的数据帧传入通道独立处理模块3,在触发到来的前一段时间进行信号基线恢复。
触发采样单元用于当触发到来时对当前通道的信号值进行采样。
在一个优选的实施例中,总体调度模块4包括数据缓存单元41、第一保留站42、第二保留站43、输出缓存单元44、控制单元45和最小单元调度单元46。
数据缓存单元41用于缓存各通道的通道标识后的数据帧以及相应的触发信号和有效信号。
第一保留站42用于根据不同通道数据帧的标记包头和对应的有效信号,对整体的数据帧进行新一轮的标记。
第二保留站43用于对各通道的新通道标识进行互相比较,并记录比较结果,将顺序的数据帧存储至对应的寄存器组内,并根据触发信号的数量,将相应数量的寄存器内容依次打出。
输出缓存单元44用于存储调度完成的有序数据帧,以减小因接口速率不匹配或因组包的传输位宽不一致而导致丢数的情况出现。
控制单元45用于设置相应的状态机,控制数据缓存单元41的读写使能信号,控制第一保留站42和第二保留站43在相应的时序状态下是否开始运行的使能信号以及控制输出缓存单元44的写使能。
最小单元调度单元46用于根据采样点数量、通道采样模块2采样一组数据帧所需采样时间以及第一保留站42和第二保留站43同步调度所用的实际时间,对所有通道重新划分通道组,进行相应资源量的优化,即当FPGA系统1进行通道数量扩展或硬件资源占用过高时,通过EDA工具综合实现最小单元调度,完成硬件资源量的优化。
具体地,数据缓存单元41包括第一FIFO(先进先出)阵列和第二FIFO阵列。
第一FIFO阵列用于存储经通道独立处理模块3处理完成的数据帧,第一FIFO阵列的位宽即为单个数据帧的长度;第二FIFO阵列用于存储各通道数据帧相应的有效信号,第二FIFO阵列的位宽与整体的通道数量一致,例如对应N通道的有效信号,则第二fifo阵列宽度为Nbit,被缓存起来的数据即可交由第一保留站42和第二保留站43继续调度,同时各个通道独自的通道独立处理模块3在完成数据组帧后也可以立即下一次触发动作,而无需等待后级模块整体调度完毕,可以极大地减小单通道多次触发时的系统死时间。
实施例2
本实施例提供一种基于FPGA的多通道触发异步调度方法,包括以下步骤:
1)对处理多探测器系统输出的电子学信号进行对应通道的采样,得到对应通道的采样点数据,具体为:
1.1)通道采样模块2的预采样单元一直进行采样,只有当触发到来时,才将预采样的多点值和触发采样生成的数据帧传入通道独立处理模块3,通过预采样单元进行触发到来的前一段时间的信号基线恢复。
1.2)当触发来临时,通道采样模块2的触发采样单元对当前通道的信号值进行采样,并生成对应的数据帧。
2)根据外部触发信号以及预先设定的采样点数,接收对应通道采样模块2传输的采样点数据,进行相应多个采样点数据的组帧,对组帧后的采样点数据进行通道标识,并生成有效信号。
具体地,对于N个通道,每一通道的通道独立处理模块3在接收到外部触发信号后,根据对应通道采样模块2传输的采样点数据,组装带有当前通道标识F(i)=i,(i=1,2……N)的数据帧,并生成有效信号(valid标识)V(i),(i=1,2……N),N为通道的数量,V(i)的值为‘0’或‘1’,各通道的数据帧和有效信号被扇入至总体调度模块4进行总体调度。
3)缓存各通道的通道标识后的数据帧以及相应的触发信号和有效信号,与此同时,各通道组帧完成后处于空闲状态,可立即响应下一次外部触发信号,快速进行新一轮通道的采样。
4)根据不同通道数据帧的标记包头以及相应的触发信号和有效信号,进行各通道之间的通道标识比较和相应数据的记录,将顺序的数据帧存储至对应的寄存器组内,并根据触发信号的数量,将相应数量的寄存器内容依次打出,完成总体同步调度,具体为:
4.1)总体调度模块4的第一保留站42根据不同通道数据帧的标记包头和对应的有效信号,对整体的数据帧进行新一轮的标记。
具体地,标记的产生由逻辑根据相应通道有效信号V(i)的有无来判断,若有效信号V(i)=1,则当前通道对应生成的通道标识为F(i)+N,;若无触发,则生成的通道标识仍为原通道标识F(i),N个通道对应判断的结果存储至第一保留站42内。
4.2)总体调度模块4的第二保留站43对各通道的新通道标识进行互相比较,并记录比较结果。
具体地,第二保留站43中存储新的序列信息,即N个通道均有各自对应的N个bit的比较信息,每一通道在第二保留站43中存放一组对应大小比较结果的数,比较规则为:
若第一保留站42中通道1的新通道标识大于通道2的新通道标识,则第二保留站43中通道1对应的比较信息的第0bit位记为‘1’,反之则记为‘0’;若第一保留站42中通道1的新通道标识大于通道3的新通道标识,则第二保留站43中通道1对应的比较信息的第1bit位记为‘1’,反之则记为‘0’……若第一保留站42中通道1的新通道标识大于通道N的新通道标识,则第二保留站43中通道1对应的比较信息的第Nbit位记为‘1’,反之则记为‘0’,同时通道1至通道N均进行比较,最后每一通道均有一个自身对应的Nbit位宽的比较信息序列C(i),i=(1,2……N)
4.3)第二保留站43根据比较信息序列,统计各通道的比较信息序列C(i)中‘1’的个数,得到各通道对应的比较结果S(i),(i=1,2……N)。
4.4)第二保留站43以比较结果S(i)的值作为寄存器组的地址,将各通道的数据帧按照相应的地址值填到相应寄存器组内,寄存器组内存储空间与N个通道各自独立对应。
4.5)第二保留站43根据触发信号的数量,将寄存器组内与触发信号个数相对应的寄存器数量的内容依次输出。
4.6)输出缓存单元44存储调度完成的有序数据帧。
4.7)控制单元45设置相应的状态机控制数据缓存单元41的读写使能信号,控制第一保留站42和第二保留站43在相应的时序状态下是否开始运行的使能信号。
5)由于上述步骤1)至步骤4)将调用大量的FPGA逻辑资源,对于特定的FPGA逻辑资源,总体调度模块4进行资源量优化,但这需要加大总体调度模块4中数据缓存单元41的两个FIFO阵列的深度,以达到该固件系统整体死时间不变,具体为:
5.1)总体调度模块4的最小单元调度单元46根据采样点数量、通道采样模块2采样一组数据帧所需采样时间以及第一保留站42和第二保留站43同步调度所用的实际时间,计算最小调度单元系数。
具体地,对于第一保留站42和第二保留站43内的数据同时规划时,会调用大量的FPGA逻辑资源,对此采用一种最小调度单元规划,对于步骤1)中的通道采样模块2一共采样M个采样点,系统时钟周期为τ,则采样一组数据帧所需采样时间为T1=M*τ,对于第一保留站42和第二保留站43的同步调度,所用的实际时间为三个时钟周期,即T2=3*τ,通道采样模块2与总体调度模块4之间存在一个时间墙,最小单元调度单元46计算的最小调度单元系数为μ=[T1/T2]=[M/3]([]表示取整,其值为不小于原值的最小整数)。
5.2)总体调度模块4的最小单元调度单元46根据最小调度单元系数,对所有通道重新划分通道组。
具体地,最小单元调度单元46将原本对应于N个通道的总体调度模块4重新规划为对应于μ个通道的总体调度模块4,将N个通道重新划分为β组,β=[N/μ],将对应于μ个通道的总体调度模块4对不同的通道组进行β次轮询,由于时间墙的存在,步骤1)中通道采样模块2采样的所有采样点数据均会存储至数据缓存单元41内,输出最后一组同步调度结果时,通道采样模块2已完成不同通道的当前采样,总体调度模块4也已完成所有通道的同步调度,节约的硬件逻辑资源量为占比为(1-μ/N)*100%。
6)阵列读出模块5将调度完成的数据帧进行并串转换,将输出缓存内的二维阵列转换为串行数据,使得数据输出位宽与数据读出接口相匹配,并将并串转换后的串行数据通过数据读出接口串行传输至外部上位机进行数据接收。
上述各实施例仅用于说明本发明,其中各部件的结构、连接方式和制作工艺等都是可以有所变化的,凡是在本发明技术方案的基础上进行的等同变换和改进,均不应排除在本发明的保护范围之外。

Claims (7)

1.一种基于FPGA的多通道触发异步调度系统,其特征在于,包括FPGA系统,其中,所述FPGA系统内设置有:
通道采样模块,用于对电子学信号进行对应通道的采样,得到对应通道的采样点数据;
通道独立处理模块,用于根据外部触发信号以及预先设定的采样点数,接收对应所述通道采样模块传输的采样点数据,进行相应多个采样点数据的组帧,对组帧后的采样点数据进行通道标识,并生成有效信号;各通道的所述通道独立处理模块在进行组帧后处于空闲状态,立即响应下一次外部触发信号;
总体调度模块,用于根据不同通道数据帧的标记包头以及相应的触发信号和有效信号,进行各通道之间的通道标识比较和相应数据的记录,将顺序的数据帧存储至对应的寄存器组内,并根据触发信号的数量,将相应数量的寄存器内容依次打出,完成总体同步调度;
阵列读出模块,用于将调度完成的数据帧进行并串转换,并与数据读出接口进行位宽匹配,将并串转换后的串行数据通过所述数据读出接口串行传输至外部上位机;
所述通道采样模块包括:
预采样单元,用于一直进行采样,当触发到来时将预采样的多点值和触发采样生成的数据帧传入所述通道独立处理模块,在触发到来的前一段时间进行信号基线恢复;
触发采样单元,用于当触发到来时对当前通道的信号值进行采样。
2.如权利要求1所述的一种基于FPGA的多通道触发异步调度系统,其特征在于,所述总体调度模块包括:
数据缓存单元,用于缓存各通道的通道标识后的数据帧以及相应的触发信号和有效信号;
第一保留站,用于根据不同通道数据帧的标记包头和对应的有效信号,对整体的数据帧进行新一轮的标记;
第二保留站,用于对各通道的新通道标识进行互相比较,并记录比较结果,将顺序的数据帧存储至对应的寄存器组内,并根据触发信号的数量,将相应数量的寄存器内容依次打出;
输出缓存单元,用于存储调度完成的有序数据帧;
控制单元,用于控制所述数据缓存单元的读写使能信号,控制所述第一保留站和第二保留站在相应的时序状态下是否开始运行的使能信号以及控制所述输出缓存单元的写使能;
最小单元调度单元,用于根据采样点数量、所述通道采样模块采样一组数据帧所需采样时间以及所述第一保留站和第二保留站同步调度所用的实际时间,对所有通道重新划分通道组,进行相应资源量的优化。
3.如权利要求2所述的一种基于FPGA的多通道触发异步调度系统,其特征在于,所述数据缓存单元包括:
第一FIFO阵列,用于存储经所述通道独立处理模块处理完成的数据帧,所述第一FIFO阵列的位宽即为单个数据帧的长度;
第二FIFO阵列,用于存储各通道数据帧相应的有效信号,所述第二FIFO阵列的位宽与整体的通道数量一致。
4.一种基于FPGA的多通道触发异步调度方法,其特征在于,包括:
对电子学信号进行对应通道的采样,得到对应通道的采样点数据,包括:
通道采样模块的预采样单元一直进行采样,只有当触发到来时,才将预采样的多点值和触发采样生成的数据帧传入通道独立处理模块,通过预采样单元进行触发到来的前一段时间的信号基线恢复;
当触发到来时,通道采样模块的触发采样单元对当前通道的信号值进行采样;
根据外部触发信号以及预先设定的采样点数,接收对应的采样点数据,进行相应多个采样点数据的组帧,对组帧后的采样点数据进行通道标识,并生成有效信号;
缓存各通道的通道标识后的数据帧以及相应的触发信号和有效信号,各通道组帧完成后处于空闲状态,立即响应下一次外部触发信号,进行新一轮通道的采样;
根据不同通道数据帧的标记包头以及相应的触发信号和有效信号,进行各通道之间的通道标识比较和相应数据的记录,将顺序的数据帧存储至对应的寄存器组内,并根据触发信号的数量,将相应数量的寄存器内容依次打出,完成总体同步调度;
将调度完成的数据帧进行并串转换,并与数据读出接口进行位宽匹配,将并串转换后的串行数据通过所述数据读出接口串行传输至外部上位机。
5.如权利要求4所述的一种基于FPGA的多通道触发异步调度方法,其特征在于,所述根据不同通道数据帧的标记包头以及相应的触发信号和有效信号,进行各通道之间的通道标识比较和相应数据的记录,将顺序的数据帧存储至对应的寄存器组内,并根据触发信号的数量,将相应数量的寄存器内容依次打出,完成总体同步调度,包括:
第一保留站根据不同通道数据帧的标记包头和对应的有效信号,对整体的数据帧进行新一轮的标记;
第二保留站对各通道的新通道标识进行互相比较,并记录比较结果;
第二保留站根据比较信息序列,统计各通道的比较信息序列中‘1’的个数,得到各通道对应的比较结果;
第二保留站以比较结果的值作为寄存器组的地址,将各通道的数据帧按照相应的地址值填到相应寄存器组内;
第二保留站根据触发信号的数量,将寄存器组内与触发信号个数相对应的寄存器数量的内容依次输出;
输出缓存单元存储调度完成的有序数据帧;
控制单元设置相应的状态机控制数据缓存单元的读写使能信号,控制第一保留站和第二保留站在相应的时序状态下是否开始运行的使能信号。
6.如权利要求4所述的一种基于FPGA的多通道触发异步调度方法,其特征在于,还包括:
对于特定的FPGA逻辑资源,进行资源量优化。
7.如权利要求6所述的一种基于FPGA的多通道触发异步调度方法,其特征在于,所述对于特定的FPGA逻辑资源,进行资源量优化,包括:
最小单元调度单元根据采样点数量、通道采样模块采样一组数据帧所需采样时间以及第一保留站和第二保留站同步调度所用的实际时间,计算最小调度单元系数;
最小单元调度单元根据最小调度单元系数,对所有通道重新划分通道组。
CN202310070611.2A 2023-01-19 2023-01-19 一种基于fpga的多通道触发异步调度系统及方法 Active CN116048453B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310070611.2A CN116048453B (zh) 2023-01-19 2023-01-19 一种基于fpga的多通道触发异步调度系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310070611.2A CN116048453B (zh) 2023-01-19 2023-01-19 一种基于fpga的多通道触发异步调度系统及方法

Publications (2)

Publication Number Publication Date
CN116048453A CN116048453A (zh) 2023-05-02
CN116048453B true CN116048453B (zh) 2023-08-08

Family

ID=86113430

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310070611.2A Active CN116048453B (zh) 2023-01-19 2023-01-19 一种基于fpga的多通道触发异步调度系统及方法

Country Status (1)

Country Link
CN (1) CN116048453B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117354256B (zh) * 2023-12-05 2024-03-19 鹏城实验室 速率匹配方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10134981A1 (de) * 2001-07-16 2003-02-13 Frank Aatz Massiv-parallel-gekoppeltes-Multi-Prozessor-System
CN104849698A (zh) * 2015-05-21 2015-08-19 中国人民解放军海军工程大学 一种基于异构多核系统的雷达信号并行处理方法及系统
CN110532104A (zh) * 2019-09-06 2019-12-03 中国科学院近代物理研究所 一种多通道数据实时排序方法及系统
CN111211863A (zh) * 2019-12-20 2020-05-29 西安云维智联科技有限公司 Mac发射端、mac接收端及电路、fpga芯片及数据传输系统
CN113535620A (zh) * 2021-06-29 2021-10-22 电子科技大学 一种多通道同步高速数据采集装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10439639B2 (en) * 2016-12-28 2019-10-08 Intel Corporation Seemingly monolithic interface between separate integrated circuit die

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10134981A1 (de) * 2001-07-16 2003-02-13 Frank Aatz Massiv-parallel-gekoppeltes-Multi-Prozessor-System
CN104849698A (zh) * 2015-05-21 2015-08-19 中国人民解放军海军工程大学 一种基于异构多核系统的雷达信号并行处理方法及系统
CN110532104A (zh) * 2019-09-06 2019-12-03 中国科学院近代物理研究所 一种多通道数据实时排序方法及系统
CN111211863A (zh) * 2019-12-20 2020-05-29 西安云维智联科技有限公司 Mac发射端、mac接收端及电路、fpga芯片及数据传输系统
CN113535620A (zh) * 2021-06-29 2021-10-22 电子科技大学 一种多通道同步高速数据采集装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FPGA-Based High-Performance Time-to-Digital Converters by Utilizing Multi-Channels Looped Carry Chains;Ke Cui等;IEEE;全文 *

Also Published As

Publication number Publication date
CN116048453A (zh) 2023-05-02

Similar Documents

Publication Publication Date Title
CN116048453B (zh) 一种基于fpga的多通道触发异步调度系统及方法
CN101408770B (zh) 用于工业控制的i/o数据的高速顺序采样
CN1352502A (zh) 分组传输系统
US20070008904A1 (en) Controller area network performance parameters measurement
CN112100119A (zh) 一种基于fpga的高速以太网帧重构系统
CN111339003A (zh) 一种基于fpga的通用多通道数据发送系统及方法
CN109788214B (zh) 一种基于fpga的多路视频无缝切换系统和方法
CN109600532B (zh) 无人机多路视频无缝切换系统和方法
CN107908357A (zh) 命名数据网转发平面pit存储结构及其数据检索方法
EP3657744A1 (en) Message processing
CN111949577A (zh) 一种高速高精度采样数据大容量存储快速传输方法
CN206564662U (zh) 一种视频质量检测系统
CN102638649B (zh) 一种usb3.0高速高清工业摄像机
CN1292568C (zh) 一种多队列数据分组连续转发的装置和方法
US6958768B1 (en) CMOS inspection apparatus
CN105516023A (zh) 一种报文转发方法和装置
CN110532104B (zh) 一种多通道数据实时排序方法及系统
JP2006309315A (ja) データ記録装置ならびにデータ記録装置を備えた検査装置および制御装置
CN100559414C (zh) 多维同步高速测量的集群控制系统及方法
US8345701B1 (en) Memory system for controlling distribution of packet data across a switch
CN1147798C (zh) 处理在数据信道上接收的或发射的数据包的装置和方法
CN101222600A (zh) 一种基于内存条阵列的高速图像记录方法
JPS61102840A (ja) 受信デ−タ処理装置
CN112689072A (zh) 一种相机系统
CN1674477B (zh) 一种实现时分复用电路位宽转换的装置及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant