一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于PCIE的ADC板卡实现波形绘制的方法、设备及介质与流程

2021-11-29 13:57:00 来源:中国专利 TAG:

一种基于pcie的adc板卡实现波形绘制的方法、设备及介质
技术领域
1.本说明书实施例涉及电子技术领域,尤其涉及一种基于pcie的adc板卡实现波形绘制的方法、设备及介质。


背景技术:

2.超导量子计算机的核心是量子芯片和量子测控系统,量子测控系统可用于返回经过量子芯片算法运算处理后的数据波形。
3.在现有技术中,为绘制波形数据通常使用带有多路ad信号通道的板卡,这种情况下板卡通常采用国外成品数据采集卡绘制波形数据,而国外成品数据采集卡价格昂贵,且采购较为困难。
4.基于此,在不依靠国外成品数据采集卡的前提下,现需要一种波形绘制的方法。


技术实现要素:

5.本说明书实施例提供一种基于pcie的adc板卡实现波形绘制的方法、设备及介质,用以解决现有技术中的如下技术问题:
6.为绘制波形数据通常使用带有多路ad信号通道的板卡,这种情况下板卡通常采用国外成品数据采集卡绘制波形数据,而国外成品数据采集卡价格昂贵,且采购较为困难。
7.为解决上述技术问题,本说明书实施例是这样实现的:
8.一方面,本说明书实施例提供一种基于pcie的adc板卡实现波形绘制的方法,包括:若确定机箱指定槽位号匹配到指定adc板卡,启动所述指定adc板卡,并获取所述指定adc板卡的句柄;对所述指定adc板卡进行ad信号采样相关的配置参数设置,其中,所述配置参数包括采样点数;根据所述句柄与所述配置参数,启动所述ad信号采样,确定期望采样点数与实际采样点数一致,将采样到的所述ad信号发送至数据处理端,以使所述数据处理端进行数据处理并对所述ad信号进行波形绘制,其中,所述期望采样点数为预先设置的所述ad信号采样时的采样点数;所述实际采样点数为所述ad信号采样时实际的采样点数。
9.在一个实施例中,所述采样点数的配置,具体包括:调用set_record_size()接口进行所述采样点数的设置,所述采样点数包括触发前需采样点数和所述期望采样点数;所述触发前需采样点数为0。
10.在一个实施例中,所述配置参数还包括一项或多项:参考时钟、输入电压幅值、波形偏移、触发类型和触发参数。
11.在一个实施例中,所述波形偏移的配置,具体包括:调用offset_adjust()接口进行所述波形偏移的设置,所述波形偏移的设置包括对ad信号接收通道的设置和偏移量值的设置。
12.在一个实施例中,所述启动所述ad信号采样,具体包括:调用sync_read()接口启动所述ad信号采样。
13.在一个实施例中,所述根据所述句柄与所述配置参数,启动所述ad信号采样之前,
所述方法还包括:调用post_sync_buffer()接口,进行内存buffer地址分配,其中所述内存buffer地址分配的设置包括开辟的内存buffer的地址指针和所述内存buffer的长度。
14.在一个实施例中,所述将采样到的所述ad信号发送至数据处理端之前,所述方法还包括:获取采样到的所述ad信号,通过所述句柄确定所述ad信号对应的所述adc板卡;将所述ad信号通过所述adc板卡传输至所述内存buffer地址对应的内存buffer。
15.在一个实施例中,所述确定期望采样点数与实际采样点数一致,具体包括:调用readfile()接口,获取实际采样点数,确定期望采样点数与实际采样点数一致。
16.另一方面,本说明书实施例提供一种基于pcie的adc板卡实现波形绘制的设备,包括:至少一个处理器,以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令能被所述至少一个处理器执行,以使所述至少一个处理器能够:若确定机箱指定槽位号匹配到指定adc板卡,启动所述指定adc板卡,并获取所述指定adc板卡的句柄;对所述指定adc板卡进行ad信号采样相关的配置参数设置,其中,所述配置参数包括采样点数;根据所述句柄与所述配置参数,启动所述ad信号采样,确定期望采样点数与实际采样点数一致,将采样到的所述ad信号发送至数据处理端,以使所述数据处理端进行数据处理并对所述ad信号进行波形绘制,其中,所述期望采样点数为预先设置的所述ad信号采样时的采样点数;所述实际采样点数为所述ad信号采样时实际的采样点数。
17.本说明书实施例采用上述至少一个技术方案能够达到以下有益效果:以相对较低的成本,在不依靠国外成品数据采集卡的前提下,通过adc板卡实现对一路或多路ad信号的采样,并通过数据处理将ad信号输出为完整的数据波形。
附图说明
18.此处所说明的附图用来提供对本说明书实施例的进一步理解,构成本说明书实施例的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对申请的不当限定。在附图中:
19.图1为本技术实施例提供的一种基于pcie的adc板卡实现波形绘制的方法的流程示意图;
20.图2为本技术实施例提供的一种基于pcie的adc板卡实现波形绘制的方法的示意图;
21.图3为本技术实施例提供的一种基于pcie的adc板卡实现波形绘制的设备的结构示意图。
具体实施方式
22.为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本技术技术方案进行清楚、完整的描述。显然,所描述的实施例仅是本技术的一部分实施例,而不是全部的实施例。基于说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
23.本技术实施例提供了一种基于pcie的adc板卡实现波形绘制的方法、设备及介质,下面进行具体说明:
24.需要说明的是,本技术提供的一种基于pcie的adc板卡实现波形绘制的方法可以应用在计算机领域、云终端、物联网终端、多媒体终端、汽车电子终端等需要一路或者多路ad信号输入的应用场景中。
25.图1为本技术实施例提供的一种基于pcie的adc板卡实现波形绘制的方法的流程示意图,如图1所示,本技术实施例提供的一种基于pcie的adc板卡实现波形绘制的方法可以包括以下步骤:
26.s101:若确定机箱指定槽位号匹配到指定adc板卡,启动所述指定adc板卡,并获取所述指定adc板卡的句柄。
27.首先,可以通过调用相关接口,枚举机箱上的所有pcie设备,adc板卡是pcie设备中的一种。例如,可以调用get_devices()接口枚举机箱上的所有pcie设备。
28.其中,get_devices()接口获取机箱所有板卡信息的核心代码可参考如下:
[0029][0030][0031]
需要说明的是,主板上都有扩展槽用于扩充计算机功能,现在最常见的扩展槽是pcie插槽,实际上在我们看不见的计算机主板芯片内部,各种硬件控制模块大部分也是以pcie设备的形式挂载到了一颗或者几颗pci/pcie设备树上。固件和操作系统正是通过枚举设备树们才能发现绝大多数即插即用(pnp)设备的。
[0032]
在枚举机箱上的所有pcie设备后,可以调用check_device_exist()接口,检测指定槽位号是否存在指定的adc板卡;若没有匹配到该指定的adc板卡的信息,则打印报错信息;若成功检测到指定的adc板卡,可以通过调用createfile()接口,打开该adc板卡,并返回该adc板卡的句柄。
[0033]
需要说明的是,句柄为一种特殊的智能指针,当一个应用程序要引用其他系统(如数据库、操作系统)所管理的内存块或对象时,就要使用句柄。
[0034]
s102:对所述指定adc板卡进行ad信号采样相关的配置参数设置,其中,所述配置参数包括采样点数。
[0035]
在本说明书的一些实施例中,所述采样点数的配置,具体包括:调用set_record_size()接口进行所述采样点数的设置,所述采样点数包括触发前需采样点数和所述期望采样点数;所述触发前需采样点数为0。
[0036]
例如,调用set_record_size(pretriggersamples,posttriggersamples)接口,进行采样点数设置,其中参数pretriggersamples为触发前需采样点数,设置为0,posttriggersamples为触发后需采样点数即期望采样点数。
[0037]
其中,调用set_record_size()接口进行所述采样点数的设置的核心代码可参考如下:
[0038][0039]
s103:根据所述句柄与所述配置参数,启动所述ad信号采样,确定期望采样点数与实际采样点数一致,将采样到的所述ad信号发送至数据处理端,以使所述数据处理端进行数据处理并对所述ad信号进行波形绘制,其中,所述期望采样点数为预先设置的所述ad信号采样时的采样点数;所述实际采样点数为所述ad信号采样时实际的采样点数。
[0040]
此外,需要调用start_capture()接口使能ad信号采样开关;利用write_register(address,data)接口实现对fpga数据采样配置寄存器的配置,其中,参数address为要写的fpga目标寄存器;参数data为寄存器要写入的值。
[0041]
其中,调用start_capture()接口使能所述ad信号采样开关的核心代码可参考如下:
[0042][0043][0044]
在本说明书的一些实施例中,所述确定期望采样点数与实际采样点数一致,具体包括:调用readfile()接口,获取实际采样点数,确定期望采样点数与实际采样点数一致。
[0045]
在采样之前,设置一个期望的采样点数,但是实际能不能真的能采到这些点需要去记录一下,以确定期望采样点数与实际采样点数一致。如果实际采样点数大于或小于期
望采样点数,就会报错;采样点数设置好了就不变了,报错会丢弃这次采样的数值,然后继续再采。在本说明书的一些实施例中,所述配置参数还包括一项或多项:参考时钟、输入电压幅值、波形偏移、触发类型和触发参数。
[0046]
在本说明书的一些实施例中,所述波形偏移的配置,具体包括:调用offset_adjust()接口进行所述波形偏移的设置,所述波形偏移的设置包括对ad信号接收通道的设置和偏移量值的设置。
[0047]
例如,调用offset_adjust(channel,offset_value)接口,进行波形偏移设置,其中参数channel为ad信号接收通道,可以包括a、b、c、d四路通道;offset_value为偏移量值,默认值设为0。
[0048]
优选地,调用set_capture_clock(clock_source,reference_clock)接口,进行参考时钟设置。其中,参数clock_source为时钟源,包括内部和外部时钟源;参数reference_clock为面板选择,包括前面板和后面板。
[0049]
其中,调用set_capture_clock(clock_source,reference_clock)接口,进行参考时钟设置的核心代码可以参考如下:
[0050][0051][0052]
优选地,调用voltage_adjust(channel,adjust_value_float)接口,进行输入电压幅值设置。其中,参数channel为ad信号接收通道,可以包括a、b、c、d四路通道;参数adjust_value_float为电压幅值大小,设定的电压幅值范围可以为0

0.7v。
[0053]
优选地,调用set_external_trigger(coupling,trigger_signal)接口,进行触发类型设置。其中,参数coupling为电源属性,可以包括ac交流电压和dc直流电压;参数trigger_signal为触发方式,可以包括single

ended单端信号触发和differential差分信号触发。
[0054]
优选地,调用set_trigger_operation(trigger_mode,trigger_source,trigger_slope)接口,进行触发参数设置。其中,参数trigger_mode为触发模式,可以包括软触发模式和外部触发模式;参数trigger_source为触发源,可以包括channala

channald四路通道;参数trigger_slope为触发电平,可以包括positive高电平和negative负电平两种触发方式。
[0055]
在本说明书的一些实施例中,所述根据所述句柄与所述配置参数,启动所述ad信号采样之前,所述方法还包括:调用post_sync_buffer()接口,进行内存buffer地址分配,其中所述内存buffer地址分配的设置包括开辟的内存buffer的地址指针和所述内存buffer的长度。
[0056]
在本说明书的一些实施例中,所述将采样到的所述ad信号发送至数据处理端之
前,所述方法还包括:获取采样到的所述ad信号,通过所述句柄确定所述ad信号对应的所述adc板卡;将所述ad信号通过所述adc板卡传输至所述内存buffer地址对应的内存buffer。
[0057]
例如,调用sync_read()接口,开启ad信号采集;然后调用readfile()接口,readfile()接口至少包括以下参数:fd1、buffer_address、bytes_per_read和size。此时接口参数fd1为adc板卡设备的句柄;参数buffer_address为数据缓冲区buffer的地址,参数bytes_per_read为要读取的字节大小;参数size为本次读取实际读取到的字节长度。
[0058]
经过此步骤即可获取采样到的ad信号,通过句柄确定ad信号对应的adc板卡,将ad信号通过adc板卡传输至内存buffer地址对应的内存buffer,供数据处理端进并对ad信号进行波形绘制,从而得到需要的数据波形。
[0059]
例如,在windows10环境下,安装pcie xilinx dma驱动程序,在应用层与fpga开启dma通信,机箱插入adc板卡,并且利用信号发生器提供触发信号和ad信号两路信号。确定机箱成功识别到所有adc板卡设备,配置相应模块的寄存器,包括时钟周期、电源幅值、偏移大小、输入范围、触发类型等内容,设置采样周期与采样点数,并针对采样点数开辟相应的内存buffer。下发开始采样的指令,通过dma通道,将采样到的数据填充到对应buffer中。由此,数据处理端可以通过相应槽位号实现adc板卡的控制与波形数据的采样。
[0060]
在本说明书的一些实施例中,图2为本技术实施例提供的一种基于pcie的adc板卡实现波形绘制的方法的示意图,如图2所示,设备上电后,枚举机箱上的所有pcie设备,由客户端为槽位号指定adc板卡;在对ad信号进行采样之前,应当判断机箱指定槽位号是否与指定adc板卡匹配;若是,此时启动指定adc板卡,并获取指定adc板卡的句柄;若否,设备会打印报错信息供用户进行修改;获取到句柄后,需要对相关的配置参数进行设置,包括设置参考时钟、输入电压幅值、波形偏移、触发类型、触发参数、采样点数等;基于采样点数的设置可以进行内存buffer分配;使能采样开关,启动ad信号采样,在采样过程中,应当判断期望采样点数与实际采样点数是否一致;若是,将采样到的ad信号发送至数据处理端以使得数据处理端进行数据处理并对ad信号进行波形绘制;若否,则会进行相应的报错处理。由此,通过adc板卡实现对一路或多路ad信号的采样,并通过数据处理将ad信号输出为完整的数据波形。
[0061]
综上,本技术提供的一种基于pcie的adc板卡实现波形绘制的方法,能够以相对较低的成本,在不依靠国外成品数据采集卡的前提下,通过adc板卡实现对一路或多路ad信号的采样,并通过数据处理将ad信号输出为完整的数据波形。
[0062]
图3为本技术实施例提供的一种基于pcie的adc板卡实现波形绘制的设备的结构示意图,如图3所示,本技术实施例提供的一种基于pcie的adc板卡实现波形绘制的设备,可以包括:至少一个处理器,以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令能被所述至少一个处理器执行,以使所述至少一个处理器能够:若确定机箱指定槽位号匹配到指定adc板卡,启动所述指定adc板卡,并获取所述指定adc板卡的句柄;对所述指定adc板卡进行ad信号采样相关的配置参数设置,其中,所述配置参数包括采样点数;根据所述句柄与所述配置参数,启动所述ad信号采样,确定期望采样点数与实际采样点数一致;所述期望采样点数为预先设置的所述ad信号采样时的采样点数;所述实际采样点数为所述ad信号采样时实际的采样点数;将采样到的所述ad信号发送至数据处理端,以使所述数据处理端进行数据处理并对所述ad信号
进行波形绘制。
[0063]
处理器与存储器之间可以通过总线通信,设备还可以包括与其他设备通信的输入/输出接口。
[0064]
本技术的一些实施例提供的对应于图1的一种基于pcie的adc板卡实现波形绘制的非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:若确定机箱指定槽位号匹配到指定adc板卡,启动所述指定adc板卡,并获取所述指定adc板卡的句柄;对所述指定adc板卡进行ad信号采样相关的配置参数设置,其中,所述配置参数包括采样点数;根据所述句柄与所述配置参数,启动所述ad信号采样,确定期望采样点数与实际采样点数一致;所述期望采样点数为预先设置的所述ad信号采样时的采样点数;所述实际采样点数为所述ad信号采样时实际的采样点数;将采样到的所述ad信号发送至数据处理端,以使所述数据处理端进行数据处理并对所述ad信号进行波形绘制。
[0065]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备、非易失性计算机存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0066]
以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献