一种PCIe信号处理卡的级联方法

文档序号:1815825 发布日期:2021-11-09 浏览:22次 >En<

阅读说明:本技术 一种PCIe信号处理卡的级联方法 (Cascade method of PCIe signal processing cards ) 是由 杨庸 于 2021-08-11 设计创作,主要内容包括:本发明公开了一种PCIe信号处理卡的级联方法,将多张相同的PCIe信号处理卡通过板间数据高速级联通道级联起来,其中一张PCIe信号处理卡连接FMC子卡作为主卡,其余作为协处理卡,每张PCIe信号处理卡通过PCIe插槽与上位机通信连接;FMC子卡将采集的原始数据发送主卡进行分片和封装,封装头包含对应PCIe信号处理卡的板卡ID;主卡通过板间数据高速级联通道将全部数据传输到协处理卡,每张协处理卡处理与自身板卡ID匹配的数据,并将处理结果数据传输给上位机,上位机对数据进行重组。本发明解决了硬件加速时受限于FPGA资源的问题,实现了弹性扩展的级联通道;适用于采集场景和发射场景。(The invention discloses a cascade method of PCIe signal processing cards, which is characterized in that a plurality of same PCIe signal processing cards are cascaded through inter-board data high-speed cascade channels, wherein one PCIe signal processing card is connected with an FMC daughter card as a main card, the rest are used as co-processing cards, and each PCIe signal processing card is in communication connection with an upper computer through a PCIe slot; the FMC sub-card sends the acquired original data to the main card for fragmentation and packaging, and a packaging head comprises a card ID corresponding to a PCIe signal processing card; the main card transmits all data to the co-processing cards through the inter-board data high-speed cascade channel, each co-processing card processes data matched with the ID of the board card, the processed result data is transmitted to the upper computer, and the upper computer recombines the data. The invention solves the problem that hardware is limited by FPGA resources during acceleration, and realizes an elastically expanded cascade channel; the method is suitable for acquisition scenes and emission scenes.)

一种PCIe信号处理卡的级联方法

技术领域

本发明涉及信号处理技术领域,具体的说,是一种PCIe信号处理卡的级联方法。

背景技术

基于PCIe的信号处理卡,通常用FPGA实现信号处理的硬件加速。应用场景主要是插在PC机或者服务器的PCIe插槽中,将外部的中射频信号硬件运算处理后,数据结果传输至上位机CPU做进一步处理。比如在特定的FPGA器件内,实现多个通道的硬件DDC或者FFT运算。但是受限于以下两个方面的限制,导致单张PCIe卡的加速能力到达天花板:(1)受限于FPGA资源。当FPGA内的逻辑资源用完以后,就无法实现更多通道的硬件加速,只能更换更大规模的FPGA器件。(2)受限于PCIe的连接带宽。单张卡的PCIe3.0 X8或者X16的带宽存在最大限制,而某些FPGA或者上位机又不支持PCIe4.0,当更多的硬件通道需要与上位机通信时,总是存在带宽瓶颈。

发明内容

本发明的目的在于提供一种PCIe信号处理卡的级联方法,用于解决现有技术中采用FPGA实现PCIe信号处理硬件加速时受限于FPGA资源的问题,以及进一步解决PCIe的连接带宽限制使单张PCIe卡的加速能力受到限制的问题。

本发明通过下述技术方案解决上述问题:

一种PCIe信号处理卡的级联方法,包括:

步骤S110,将多张相同的PCIe信号处理卡通过板间数据高速级联通道级联起来,其中一张PCIe信号处理卡连接FMC子卡作为主卡,其余PCIe信号处理卡作为协处理卡,每张PCIe信号处理卡通过PCIe插槽与上位机通信连接;

步骤S120,FMC子卡将采集的原始数据发送主卡,主卡对原始数据进行分片和封装,得到封装数据,封装数据的封装头包含对应PCIe信号处理卡的板卡ID;

步骤S130,主卡通过板间数据高速级联通道将全部数据传输到协处理卡,每张协处理卡处理全部原始数据,并将处理结果数据传输给上位机,上位机对接收到的处理结果数据进行重组。

每一张PCIe信号处理卡都与上位机通信。在计算机系统中,每一张PCIe信号处理卡都要占用一个PCIe插槽。采集场景下,在解决PCIe信号处理卡的FPGA硬件资源不够的问题时,主卡需要传输全部的原始数据,下游的级联板卡使用全部的原始数据才能进行硬件加速计算。每张PCIe信号处理卡使用全部原始数据并根据本卡的配置进行独立的硬件加速计算,多个PCIe信号处理卡并行处理,并将处理结果数据独立传输给上位机。

一种PCIe信号处理卡的级联方法,包括:

步骤S210,将多张相同的PCIe信号处理卡通过板间数据高速级联通道级联起来,其中一张PCIe信号处理卡连接FMC子卡作为主卡,其余PCIe信号处理卡作为协处理卡,每张PCIe信号处理卡通过PCIe插槽与上位机通信连接;

步骤S220,FMC子卡将采集的原始数据发送主卡,主卡对原始数据进行分片和封装,得到封装数据,封装数据的封装头包含对应PCIe信号处理卡的板卡ID和数据块序列号等信息;

步骤S230:主卡从封装数据中取出与自身板卡ID对应的数据,再将剩余数据通过板间数据高速级联通道发送到下一级的协处理卡,同样,该协处理卡取出与自身板卡ID对应的数据后将其他数据通过板间数据高速级联通道发送到其下一级的协处理卡,以此类推,直到每张协处理卡均收到与自身板卡ID对应的数据;

每张PCIe信号处理卡将与自身板卡ID对应的数据通过PCIe插槽上传到上位机,上位机根据板卡ID和数据块序列号等信息对所有收到的数据进行重组。

应用于采集场景下解决与上位机的PCIe传输带宽不够的问题,这种情况下,主卡可以仅传输部分数据,主卡从封装数据中取出与自身板卡ID对应的数据,将与自身板卡ID匹配的数据通过PCIe插槽上传给上位机,因此这部分数据则不必再传递给下游级联的PCIe信号处理卡了,仅将剩余数据通过板间数据高速级联通道发送到下一级的协处理卡则可;同样,该协处理卡取出与自身板卡ID对应的数据后,同样通过PCIe插槽上传给上位机,将其他数据通过板间数据高速级联通道发送到其下一级的协处理卡,以此类推,直到每张协处理卡均收到与自身板卡ID对应的数据并独立上传至上位机,上位机根据板卡ID和数据块序列号等信息再对收到的所有数据进行重组。

采集场景下,FMC子卡为AD芯片或至少包含AD芯片。

一种PCIe信号处理卡的级联方法,包括:

步骤S310,将多张相同的PCIe信号处理卡通过板间数据高速级联通道级联起来,其中一张PCIe信号处理卡连接FMC子卡作为主卡,其余PCIe信号处理卡作为协处理卡,每张PCIe信号处理卡通过PCIe插槽与上位机通信连接;

步骤S320:上位机将调制数据进行分片和封装,得到封装数据,封装数据的封装头中包含对应PCIe信号处理卡的板卡ID和数据块序列号等信息;

步骤S330:上位机通过PCIe插槽将全部封装数据发送到每张PCIe信号处理卡,每张PCIe信号处理卡上的FPGA根据各自的设置处理数据,并根据自己在堆叠场景中的位置对调制结果数据进行分片封装,每个协处理卡将数据发送给主卡,由主卡根据板卡ID和数据块序列号等信息进行数据重组后发射出去。

应用于发射场景下解决PCIe信号处理卡的FPGA硬件资源不够的问题,这种情况下,上位机需要发送调制数据出去,而调制功能要在FPGA上实现,此时需要不同的硬件加速通道处理不同的调制参数,因此,上位机通过PCIe插槽将全部数据发送到每张PCIe信号处理卡,每张PCIe信号处理卡上的FPGA根据各自的设置(每个加速通道可能有不同的参数设置)处理收到的数据,并根据自己在级联堆叠场景中的位置对调制结果数据进行分片封装,封装数据同样含有板卡ID、序列号等信息。板间高速级联通道上,可能同时有多张PCIe信号处理卡的分片数据在交织传输。主卡收到这些数据后,将每张PCIe信号处理卡传过来的数据进行分类、重组,重组后得到源自多张处理卡的完整调制数据,再通过FMC子卡发射。

一种PCIe信号处理卡的级联方法,包括:

步骤S410,将多张相同的PCIe信号处理卡通过板间数据高速级联通道级联起来,其中一张PCIe信号处理卡连接FMC子卡作为主卡,其余PCIe信号处理卡作为协处理卡,每张PCIe信号处理卡通过PCIe插槽与上位机通信连接;

步骤S420:上位机将调制数据进行分片和封装,得到封装数据,封装数据的封装头中包含对应PCIe信号处理卡的板卡ID;

步骤S430:上位机根据封装数据的封装头包含的板卡ID和序列号等信息,通过PCIe插槽将封装数据分发到对应的PCIe信号处理卡,每张协处理卡通过板间数据高速级联通道将收到的数据传输到主卡,主卡进行数据重组后发射出去。

当上位机需要将调制好的数据发送到到PCIe插卡进行发射,但是由于数据量特别大,单张PCIe插卡的PCIe通道的带宽不足,这时就需要将数据切片,封装header,在header中对应有每张处理卡的ID以及该数据块的序列号,如图3.每个数据分片只能从CPU通过PCIe发送到与ID对应的插卡上,然后再通过板间高速级联通道传输到主卡,主卡根据header中的ID和序列号进行排序,完成数据分片的重组,最后通过DA发射。

应用于发射场景解决与上位机的PCIe传输带宽不够的问题,上位机需要发送调制数据出去,但是单张PCIe信号处理卡的PCIe传输带宽不够高,传不过来,这时就用协处理卡来分担传输,这时上位机将数据分片,同样每一片数据都有板卡ID,序列号等信息,对应的分片通过对应的PCIe插槽发送到对应的PCIe信号处理卡,这些卡收下来后,将数据通过板间高速级联通道,就传输到主卡,主卡根据板卡ID、序列号等进行数据重组。

发射场景下,FMC子卡为DA芯片或至少包括DA芯片。

当我们把器件规模或者PCIe的传输带宽提升以后,在某些场景,不需要使用这么多资源或者带宽的时候,又存在浪费。本发明通过在封装头中添加PCIe信号处理卡的板卡ID,根据FPGA的加速通道个数或者PCIe的带宽,判断使用场景需要几张卡,则级联几张卡即可,整个级联通道是弹性扩展的。

本发明与现有技术相比,具有以下优点及有益效果:

(1)本发明解决了现有技术中采用FPGA实现PCIe信号处理硬件加速时受限于FPGA资源的问题,当需要更多的硬件加速通道时,仅仅需要通过封装头的板卡ID选择处理卡的数量;且实现了弹性扩展的级联通道;适用于采集场景和发射场景。

(2)本发明解决PCIe的连接带宽限制使单张PCIe卡的加速能力受到限制的问题,通过每张处理卡只处理与自身板卡ID匹配的数据库,并独立上传主卡或上位机,突破了单张PCIe卡的加速能力受限的瓶颈;且实现了弹性扩展的级联通道;适用于采集场景和发射场景。

附图说明

图1为本发明的第一种实施方式的原理框图;

图2为本发明的第一种实施方式的原理框图;

图3为采集场景实现硬件加速的流程图。

具体实施方式

下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。

实施例1:

结合附图1和图3所示,一种PCIe信号处理卡的级联方法,包括:

步骤S110,将多张相同的PCIe信号处理卡通过板间数据高速级联通道级联起来,其中一张PCIe信号处理卡连接FMC子卡作为主卡,其余PCIe信号处理卡作为协处理卡,每张PCIe信号处理卡通过PCIe插槽与上位机通信连接;

步骤S120,FMC子卡将采集的原始数据发送主卡,主卡对原始数据进行分片和封装,得到封装数据,封装数据的封装头包含对应PCIe信号处理卡的板卡ID和序列号等信息,封装头的数据格式如下表所示:

步骤S130,主卡通过板间数据高速级联通道将全部数据传输到协处理卡,每张协处理卡处理全部原始数据并进行独立运算,并将处理结果数据传输给上位机,上位机对接收到的处理结果数据进行重组。

每一张PCIe信号处理卡都与上位机通信。在计算机系统中,每一张PCIe信号处理卡都要占用一个PCIe插槽。采集场景下,在解决PCIe信号处理卡的FPGA硬件资源不够的问题时,主卡需要传输全部的原始数据,下游的级联板卡使用全部的原始数据才能进行硬件加速计算。每张PCIe信号处理卡仅处理与自己的板卡配置信息相关的硬件加速任务(每个项目或者应用有自己的计算方法,比如完成数字信号处理领域的FFT、DDC等,每一个FFT或者DDC通道的参数不一样,计算结果也就不一样),多个PCIe信号处理卡并行处理,并将处理结果数据独立传输给上位机。对于硬件加速场景,每张卡完成的工作都是独立的,比如主卡完成FFT通道1-16,第一个协处理卡完成通道17-32,第二稿协处理卡完成通道33-48,……每张卡的FPGA完成的工作都是独立的。因为这些工作很耗费硬件资源,单张卡可能做不了这么多通道,所以把工作分配到多张卡完成。因为每张卡的工作都是独立的,结果是完整的,所以传输到上位机的运算结果也是各自独立的。

实施例2:

一种PCIe信号处理卡的级联方法,包括:

步骤S210,将多张相同的PCIe信号处理卡通过板间数据高速级联通道级联起来,其中一张PCIe信号处理卡连接FMC子卡作为主卡,其余PCIe信号处理卡作为协处理卡,每张PCIe信号处理卡通过PCIe插槽与上位机通信连接;

步骤S220,FMC子卡将采集的原始数据发送主卡,主卡对原始数据进行分片和封装,得到封装数据,封装数据的封装头包含对应PCIe信号处理卡的板卡ID和数据块序列号等信息;

步骤S230:主卡从封装数据中取出与自身板卡ID对应的数据,再将剩余数据通过板间数据高速级联通道发送到下一级的协处理卡,同样,该协处理卡取出与自身板卡ID对应的数据后将其他数据通过板间数据高速级联通道发送到其下一级的协处理卡,以此类推,直到每张协处理卡均收到与自身板卡ID对应的数据;

每张PCIe信号处理卡将与自身板卡ID对应的数据通过PCIe插槽上传到上位机,上位机根据板卡ID和数据块序列号对所有收到的数据进行重组。

应用于采集场景下解决与上位机的PCIe传输带宽不够的问题,这种情况下,主卡可以仅传输部分数据,主卡从封装数据中取出与自身板卡ID对应的数据,将与自身板卡ID匹配的数据通过PCIe插槽上传给上位机,因此这部分数据则不必再传递给下游级联的PCIe协处理卡了,因此仅将剩余数据通过板间数据高速级联通道发送到下一级的协处理卡则可;同样,该协处理卡取出与自身板卡ID对应的数据后,同样通过PCIe插槽上传给上位机,将其他数据通过板间数据高速级联通道发送到其下一级的协处理卡,以此类推,直到每张协处理卡均收到与自身板卡ID对应的数据并独立上传至上位机,上位机再对收到的所有数据进行重组。

采集场景下,FMC子卡为AD芯片(模数芯片)或至少包含AD芯片。

实施例3:

结合附图2所示,一种PCIe信号处理卡的级联方法,包括:

步骤S310,将多张相同的PCIe信号处理卡通过板间数据高速级联通道级联起来,其中一张PCIe信号处理卡连接FMC子卡作为主卡,其余PCIe信号处理卡作为协处理卡,每张PCIe信号处理卡通过PCIe插槽与上位机通信连接;

步骤S320:上位机将调制数据进行分片和封装,得到封装数据,封装数据的封装头中包含对应PCIe信号处理卡的板卡ID和数据块序列号等信息;

步骤S330:上位机通过PCIe插槽将全部封装数据发送到每张PCIe信号处理卡,每张PCIe信号处理卡上的FPGA根据各自的设置处理数据,并根据自己在堆叠场景中的位置对调制结果数据进行分片封装,每个协处理卡将数据发送给主卡,由主卡进行数据重组后发射出去。

应用于发射场景下解决PCIe信号处理卡的FPGA硬件资源不够的问题,这种情况下,上位机需要发送调制数据出去,而调制功能要在FPGA上实现,此时需要不同的硬件加速通道处理不同的调制参数,因此,上位机通过PCIe插槽将全部数据发送到每张PCIe信号处理卡,每张PCIe信号处理卡上的FPGA根据各自的设置(每个加速通道可能有不同的参数设置)处理收到的数据,并根据自己在级联堆叠场景中的位置对调制结果数据进行分片封装,封装数据同样含有板卡ID、序列号等信息。板间高速级联通道上,可能同时有多张PCIe信号处理卡的分片数据在交织传输。主卡收到这些数据后,将每张PCIe信号处理卡传过来的数据进行分类、重组,重组后得到源自多张处理卡的完整调制数据,再通过FMC子卡发射。

实施例4:

一种PCIe信号处理卡的级联方法,包括:

步骤S410,将多张相同的PCIe信号处理卡通过板间数据高速级联通道级联起来,其中一张PCIe信号处理卡连接FMC子卡作为主卡,其余PCIe信号处理卡作为协处理卡,每张PCIe信号处理卡通过PCIe插槽与上位机通信连接;

步骤S420:上位机将调制数据进行分片和封装,得到封装数据,封装数据的封装头中包含对应PCIe信号处理卡的板卡ID和数据块序列号等信息;

步骤S430:上位机根据封装数据的封装头包含的板卡ID,通过PCIe插槽将封装数据分发到对应的PCIe信号处理卡,每张协处理卡通过板间数据高速级联通道将收到的数据传输到主卡,主卡进行数据重组后发射出去。

当上位机需要将调制好的数据发送到到PCIe插卡进行发射,但是由于数据量特别大,单张PCIe插卡的PCIe通道的带宽不足,这时就需要将数据切片,封装header,在header中对应有每张处理卡的ID以及数据块的序列号等信息,如图3.每个数据分片只能从CPU通过PCIe发送到与ID对应的插卡上,然后再通过板间高速级联通道传输到主卡,主卡根据header中的ID和序列号进行排序,完成数据分片的重组,最后通过DA发射。

应用于发射场景解决与上位机的PCIe传输带宽不够的问题,上位机需要发送调制数据出去,但是单张PCIe信号处理卡的PCIe传输带宽不够高,传不过来,这时就用协处理卡来分担传输,这时上位机将数据分片,同样每一片数据都有板卡ID,序列号等信息,对应的分片通过对应的PCIe插槽发送到对应的PCIe信号处理卡,这些卡收下来后,将数据通过板间高速级联通道,就传输到主卡,主卡根据板卡ID、序列号等进行数据重组。

对于解决PCIe传输带宽的场景,如上位机CPU通过软件完成了信号通道的调制工作,仅仅需要解决传输问题,由于单张卡或者几张卡的PCIe带宽不够,传输不了这么多数据,这时就需要更多的协处理卡。上位机就需要对数据进行分片,封装,标识出该片数据是由哪张卡处理,这样通过对应的PCIe插槽传输到对应的PCIe信号处理卡上,PCIe信号处理卡再将数据通过板间高速级联通道传输的主卡上。由于板间高速级联通道是上面可能同时有很多板卡的分片数据在进行传输,所有数据是交织在一起的,到达主卡的顺序可能也是乱序的,这就需要主卡对各卡汇聚过来的数据进行重组。

发射场景下,FMC子卡为DA芯片(模数芯片)或至少包括DA芯片。

采集和发射是两种独立场景,互为逆过程,当FMC子卡同时包括AD芯片和DA芯片,同一个产品中同时存在采集和发射。只需要根据场景,选择数据的流向即可。

尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:内存控制器的读取校准方法、计算机装置和可读存储介质

网友询问留言

已有0条留言

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

精彩留言,会给你点赞!