CN113010177B - 软件定义的仪器和信息采集方法、计算机、存储介质 - Google Patents

软件定义的仪器和信息采集方法、计算机、存储介质 Download PDF

Info

Publication number
CN113010177B
CN113010177B CN202110178919.XA CN202110178919A CN113010177B CN 113010177 B CN113010177 B CN 113010177B CN 202110178919 A CN202110178919 A CN 202110178919A CN 113010177 B CN113010177 B CN 113010177B
Authority
CN
China
Prior art keywords
algorithm
external data
transmitting
extracting
instrument
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
CN202110178919.XA
Other languages
English (en)
Other versions
CN113010177A (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.)
Guangzhou Silinger Technology Co ltd
Original Assignee
Guangzhou Silinger Technology Co ltd
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 Guangzhou Silinger Technology Co ltd filed Critical Guangzhou Silinger Technology Co ltd
Priority to CN202110178919.XA priority Critical patent/CN113010177B/zh
Publication of CN113010177A publication Critical patent/CN113010177A/zh
Application granted granted Critical
Publication of CN113010177B publication Critical patent/CN113010177B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例属于智能仪器领域,涉及一种软件定义的仪器,包括信号获取模块,用于采集外部数据,并存储在DMA存储器中;操作指令生成模块,用于从所述DMA存储器中提取所述外部数据,从算法库中提取算法,并且将所述算法和所述外部数据整合为操作指令;仪器数据获取模块,用于通过J I T编译器将所述操作指令实时编译成二进制代码,并传输至FPGA加速器,以通过所述FPGA加速器将所述外部数据计算为运算结果;传输模块,用于将所述运算结果传输至用户端。本申请还提供信息采集方法、计算机、存储介质。本申请能够使使用者仅仅通过使用高级语言,无需进行FPGA程序或驱动程序的设计即可实现通过FPGA加速器获取仪器数据的过程,该方案提升了软件定义仪器的效率。

Description

软件定义的仪器和信息采集方法、计算机、存储介质
技术领域
本申请涉及智能仪器领域,尤其涉及一种软件定义的仪器和信息采集方法、计算机、存储介质。
背景技术
在电子产品生产过程中需要对产品的硬件功能进行检测和程序烧录,例如测量产品的上电时序并输出时序图、测量产品某个测试点的电压或电流、输出指定电压或波形信号给待测产品等。在传统方式中,代工厂或夹具供应商需要根据测试需求购买相应的标准仪器设备,然后再通过编写代码控制仪器完成相应需求功能,如此生产环境搭建的成本高昂并且效率很低。
基于此,有人提供了FPGA实现的软件定义仪器,主要是通过FPGA的可编程特性来达到软件定义的目的。例如NI的CompactRIO就是用户使用LabVIEW对硬件上的FPGA进行编程来实现各类嵌入式控制和监测应用。该种方法虽然通过提供LabVIEW图形化工具来简化FPGA的开发难度,但是对于在线测试和功能测试夹具厂商来说,使用FPGA开发功能的难度还是太大。
因此,有必要提出一种无需了解FPGA技术,仅仅通过高级语言调用即可使用的软件定义仪器,用以解决上述问题。
发明内容
本申请实施例的目的在于提出一种软件定义的仪器,以提升软件定义仪器的效率。
为了解决上述技术问题,本申请实施例提供一种软件定义仪器的方法,采用了如下所述的技术方案:
一种软件定义的仪器,包括:
信号获取模块,用于采集外部数据,并存储在DMA存储器中;
操作指令生成模块,用于从所述DMA存储器中提取所述外部数据,从算法库中提取算法,并且将所述算法和所述外部数据整合为操作指令;
仪器数据获取模块,用于通过JIT编译器将所述操作指令实时编译成二进制代码,并传输至FPGA加速器,以通过所述FPGA加速器将所述外部数据计算为运算结果;
传输模块,用于将所述运算结果传输至用户端。
进一步的,所述操作指令生成模块,包括:
算法提取子模块,用于根据用户端的指定从算法库中提取至少一组算法;
数据提取子模块,用于在所述DMA存储器中提取与所述算法对应的外部数据;
整合子模块,用于将所述外部数据作为参数或操作数与所述算法整合,以形成所述算法相对应的至少一组操作指令。
进一步的,所述仪器数据获取模块具体包括:
编译子模块,用于根据一组所述操作指令通过JIT编译器编译为二进制文件;
运算子模块,用于将所述二进制文件传输至FPGA加速器中,以控制FPGA加速器执行所述二进制文件并且获取运算结果;
获取子模块,用于将所述运算结果传输至DMA存储器中。
为了解决上述技术问题,本申请实施例还提供一种信息采集方法,采用了如下所述的技术方案:
一种信息采集方法,该方法包括:
采集外部数据,并存储在DMA存储器中;
从所述DMA存储器中提取所述外部数据,从算法库中提取算法,并且将所述算法和所述外部数据整合为操作指令;
通过JIT编译器将所述操作指令实时编译成二进制代码,并传输至FPGA加速器,以通过所述FPGA加速器将所述外部数据计算为运算结果;
将所述运算结果传输至用户端。
进一步的,所述步骤从所述DMA存储器中提取所述外部数据,从算法库中提取算法,并且将所述算法和所述外部数据整合为操作指令,具体包括:
根据用户端的指定从算法库中提取至少一组算法;
在所述DMA存储器中提取与所述算法对应的外部数据;
将所述外部数据作为参数或操作数与所述算法整合,以形成所述算法相对应的至少一组操作指令。
进一步的,所述步骤通过JIT编译器将所述操作指令实时编译成二进制代码,并传输至FPGA加速器,以通过所述FPGA加速器将所述外部数据计算为运算结果,具体包括:
根据一组所述操作指令通过JIT编译器编译为二进制文件;
将所述二进制文件传输至FPGA加速器中,以控制FPGA加速器执行所述二进制文件并且获取运算结果;
将所述运算结果传输至DMA存储器中。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现如上所述的一种信息采集方法的步骤。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:
一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的一种信息采集方法的步骤。
与现有技术相比,本申请实施例主要有以下有益效果:通过操作指令生成模块从算法库中提取通过仪器获取数据所需的算法,同时从DMA存储器中提取与算法相对应的外部数据,组合为仪器所需的操作指令,之后通过JIT编译器将操作指令实时编译并交于FPGA加速器运行,以产生运算结果,并且通过传输模块传输至用户端,供用户使用,如此使用者能够根据需要通过仪器获取的具体数据,通过终端设备的高级语言调用算法库中的算法形成操作指令,而JIT在实现对操作指令实现实时编译的过程当中,提供了C++的API供算法库中的算法轻易调用,以实现对FPGA加速器的操作,而获取外部数据并存储在DMA的过程则可以通过通用的驱动程序驱动实现,因此,使用者能够仅仅通过使用高级语言,无需进行FPGA程序或驱动程序的设计即可实现通过FPGA加速器获取仪器数据的过程,该方案提升了软件定义仪器的效率。
附图说明
为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请的软件定义的仪器一个实施例的结构示意图;
图2是图1中操作指令生成模块200的结构示意图;
图3是图1中仪器数据获取模块300的结构示意图;
图4是根据本申请的数据采集方法的一个实施例的流程图;
图5是根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
参考图1至图3,一种软件定义的仪器,包括:
信号获取模块100,用于采集外部数据,并存储在DMA存储器中;
具体的,信号获取模块100通过外界的数据采集板卡获取数据,数据采集板卡是通用模块,通常通过传感器以及其他形式的传感电路或者信号采集电路获取外部的声光电磁等数据,信号获取模块100将采集到的数据存放在DMA存储器当中,DMA存储器以及数据采集板卡等外界设备通过数据总线连接,同时,数据总线还与FPGA加速器连接,最终获取的数据也是通过数据总线,经IO设备传输至用户端。
操作指令生成模块200,用于从所述DMA存储器中提取所述外部数据,从算法库中提取算法,并且将所述算法和所述外部数据整合为操作指令;
具体的,操作指令生成模块200根据用户的调用,通过算法库提取相应的算法,之后将DMA存储器中的外部数据作为操作数或参数,添加到算法当中去以形成操作指令,其中用户通过高级语言编辑仪器的功能,以调取相应的算法,在一种实施例中,用户的编程过程,通过图形化界面实现。算法库中预先存储有相应的算法,以适应不同预设的通用模块获取的信息的处理。
仪器数据获取模块300,用于通过JIT编译器将所述操作指令实时编译成二进制代码,并传输至FPGA加速器,以通过所述FPGA加速器将所述外部数据计算为运算结果;
具体的,JIT编译器提供C++的API接口供算法库中的算法调用,JIT编译器是实时编译器,能够将程序分段实时编译,同时本实施例中FPGA加速器使用的一套RISC指令,能够把大的任务打碎成基本的计算单元,根据计算单元单独调用内存等运算资源,并且使用了显式的控制流依赖操作,在此基础之上,配合JIT编译器,FPGA加速器能够直接在软件层面实现动态的流水线。由此简化了在算法库中加入新算法的过程。算法库和驱动程序通过JIT运行时使用FPGA加速器进行算法加速,提高算法性能,解决软件定义仪器中算法运行效率的问题
传输模块400,用于将所述运算结果传输至用户端。
具体的,操作指令生成模块从算法库中提取通过仪器获取数据所需的算法,同时从DMA存储器中提取与算法相对应的外部数据,组合为仪器所需的操作指令,之后通过JIT编译器将操作指令实时编译并交于FPGA加速器运行,以产生运算结果,并且通过传输模块传输至用户端,供用户使用,如此使用者能够根据需要通过仪器获取的具体数据,通过终端设备的高级语言调用算法库中的算法形成操作指令,而JIT在实现对操作指令实现实时编译的过程当中,提供了C++的API供算法库中的算法轻易调用,以实现对FPGA加速器的操作,而获取外部数据并存储在DMA的过程则可以通过通用的驱动程序驱动实现,因此,使用者能够仅仅通过使用高级语言,无需进行FPGA程序或驱动程序的设计即可实现通过FPGA加速器获取仪器数据的过程,该方案提升了软件定义仪器的效率。
进一步的,所述操作指令生成模块200,包括:
算法提取子模块201,用于根据用户端的指定从算法库中提取至少一组算法;
数据提取子模块202,用于在所述DMA存储器中提取与所述算法对应的外部数据;
整合子模块203,用于将所述外部数据作为参数或操作数与所述算法整合,以形成所述算法相对应的至少一组操作指令。
该方案提升了操作指令获取的灵活性,提升了软件定义仪器的效率。
进一步的,所述仪器数据获取模块300具体包括:
编译子模块301,用于根据一组所述操作指令通过JIT编译器编译为二进制文件;
运算子模块302,用于将所述二进制文件传输至FPGA加速器中,以控制FPGA加速器执行所述二进制文件并且获取运算结果;
获取子模块303,用于将所述运算结果传输至DMA存储器中。
该方案能够通过实时编译的方式,控制FPGA加速器处理数据,提升了软件定义仪器获取数据的灵活性,该方案能够提升通过软件定义仪器的效率。
为了解决上述技术问题,本申请实施例还提供一种信息采集方法,采用了如下所述的技术方案:
参考图4,一种信息采集方法,该方法包括:
步骤100:采集外部数据,并存储在DMA存储器中;
步骤200:从所述DMA存储器中提取所述外部数据,从算法库中提取算法,并且将所述算法和所述外部数据整合为操作指令;
步骤300:通过JIT编译器将所述操作指令实时编译成二进制代码,并传输至FPGA加速器,以通过所述FPGA加速器将所述外部数据计算为运算结果;
步骤400:将所述运算结果传输至用户端。
具体的,操作指令生成模块从算法库中提取通过仪器获取数据所需的算法,同时从DMA存储器中提取与算法相对应的外部数据,组合为仪器所需的操作指令,之后通过JIT编译器将操作指令实时编译并交于FPGA加速器运行,以产生运算结果,并且通过传输模块传输至用户端,供用户使用,如此使用者能够根据需要通过仪器获取的具体数据,通过终端设备的高级语言调用算法库中的算法形成操作指令,而JIT在实现对操作指令实现实时编译的过程当中,提供了C++的API供算法库中的算法轻易调用,以实现对FPGA加速器的操作,而获取外部数据并存储在DMA的过程则可以通过通用的驱动程序驱动实现,因此,使用者能够仅仅通过使用高级语言,无需进行FPGA程序或驱动程序的设计即可实现通过FPGA加速器获取仪器数据的过程,该方案提升了软件定义仪器的效率。
进一步的,所述步骤200:从所述DMA存储器中提取所述外部数据,从算法库中提取算法,并且将所述算法和所述外部数据整合为操作指令,具体包括:
步骤201:根据用户端的指定从算法库中提取至少一组算法;
步骤202:在所述DMA存储器中提取与所述算法对应的外部数据;
步骤203:将所述外部数据作为参数或操作数与所述算法整合,以形成所述算法相对应的至少一组操作指令。
进一步的,所述步骤300:通过JIT编译器将所述操作指令实时编译成二进制代码,并传输至FPGA加速器,以通过所述FPGA加速器将所述外部数据计算为运算结果,具体包括:
步骤301:根据一组所述操作指令通过JIT编译器编译为二进制文件;
步骤302:将所述二进制文件传输至FPGA加速器中,以控制FPGA加速器执行所述二进制文件并且获取运算结果;
步骤303:将所述运算结果传输至DMA存储器中。
在本实施例中,一种测控固件生成方法运行于其上的电子设备(例如图1所示的服务器/终端设备)可以通过有线连接方式或者无线连接方式接收请求。需要指出的是,上述无线连接方式可以包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图5,图5为本实施例计算机设备基本结构框图。
所述计算机设备7包括通过系统总线相互通信连接存储器61、处理器62、网络接口63。需要指出的是,图中仅示出了具有组件61-63的计算机设备6,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable GateArray,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器61至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器61可以是所述计算机设备6的内部存储单元,例如该计算机设备6的硬盘或内存。在另一些实施例中,所述存储器61也可以是所述计算机设备6的外部存储设备,例如该计算机设备6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。当然,所述存储器61还可以既包括所述计算机设备6的内部存储单元也包括其外部存储设备。本实施例中,所述存储器61通常用于存储安装于所述计算机设备6的操作系统和各类应用软件,例如信息采集方法的程序代码等。此外,所述存储器61还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器62在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器62通常用于控制所述计算机设备6的总体操作。本实施例中,所述处理器62用于运行所述存储器61中存储的程序代码或者处理数据,例如运行所述信息采集方法的程序代码。
所述网络接口63可包括无线网络接口或有线网络接口,该网络接口63通常用于在所述计算机设备6与其他电子设备之间建立通信连接。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有信息采集程序,所述信息采集程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的信息采集方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。

Claims (8)

1.一种软件定义的仪器,其特征在于,包括:
信号获取模块,用于采集外部数据,并存储在DMA存储器中;
操作指令生成模块,用于从所述DMA存储器中提取所述外部数据,从算法库中提取算法,所述算法适应于预设的通用模块获取信息的处理,所述外部数据通过所述通用模块采集;所述算法通过终端设备的高级语言调用,并且将所述算法和所述外部数据整合为操作指令;
仪器数据获取模块,用于通过JIT编译器提供C++的API接口供算法库中的算法调用,并将所述操作指令分段实时编译成二进制代码,并传输至FPGA加速器,以通过所述FPGA加速器基于RISC指令使用显式的控制流依赖操作实现软件层面上的动态流水线,之后将所述外部数据计算为运算结果;
传输模块,用于将所述运算结果传输至用户端。
2.根据权利要求1所述的一种软件定义的仪器,其特征在于:所述操作指令生成模块,包括:
算法提取子模块,用于根据用户端的指定从算法库中提取至少一组算法;
数据提取子模块,用于在所述DMA存储器中提取与所述算法对应的外部数据;
整合子模块,用于将所述外部数据作为参数或操作数与所述算法整合,以形成所述算法相对应的至少一组操作指令。
3.根据权利要求2 所述的一种软件定义的仪器 ,其特征在于:所述仪器数据获取模块具体包括:
编译子模块,用于根据一组所述操作指令通过JIT编译器编译为二进制文件;
运算子模块,用于将所述二进制文件传输至FPGA加速器中,以控制FPGA加速器执行所述二进制文件并且获取运算结果;
获取子模块,用于将所述运算结果传输至DMA存储器中。
4.一种信息采集方法,其特征在于,该方法包括:
采集外部数据,并存储在DMA存储器中;
从所述DMA存储器中提取所述外部数据,从算法库中提取算法,所述算法适应于预设的通用模块获取信息的处理,所述外部数据通过所述通用模块采集;所述算法通过终端设备的高级语言调用,并且将所述算法和所述外部数据整合为操作指令;
通过JIT编译器提供C++的API接口供算法库中的算法调用,并将所述操作指令分段实时编译成二进制代码,并传输至FPGA加速器,以通过所述FPGA加速器基于RISC指令使用显式的控制流依赖操作实现软件层面上的动态流水线,将所述外部数据计算为运算结果;
将所述运算结果传输至用户端。
5.根据权利要求4 所述的一种信息采集方法,其特征在于:所述从所述DMA存储器中提取所述外部数据,从算法库中提取算法,并且将所述算法和所述外部数据整合为操作指令,具体包括:
根据用户端的指定从算法库中提取至少一组算法;
在所述DMA存储器中提取与所述算法对应的外部数据;
将所述外部数据作为参数或操作数与所述算法整合,以形成所述算法相对应的至少一组操作指令。
6.根据权利要求5所述的一种信息采集方法,其特征在于:所述步骤通过JIT编译器将所述操作指令实时编译成二进制代码,并传输至FPGA加速器,以通过所述FPGA加速器将所述外部数据计算为运算结果,具体包括:
根据一组所述操作指令通过JIT编译器编译为二进制文件;
将所述二进制文件传输至FPGA加速器中,以控制FPGA加速器执行所述二进制文件并且获取运算结果;
将所述运算结果传输至DMA存储器中。
7.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求4至6中任一项所述的一种信息采集方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求4至6中任一项所述的一种信息采集方法的步骤。
CN202110178919.XA 2021-02-09 2021-02-09 软件定义的仪器和信息采集方法、计算机、存储介质 Active CN113010177B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110178919.XA CN113010177B (zh) 2021-02-09 2021-02-09 软件定义的仪器和信息采集方法、计算机、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110178919.XA CN113010177B (zh) 2021-02-09 2021-02-09 软件定义的仪器和信息采集方法、计算机、存储介质

Publications (2)

Publication Number Publication Date
CN113010177A CN113010177A (zh) 2021-06-22
CN113010177B true CN113010177B (zh) 2022-04-05

Family

ID=76383954

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110178919.XA Active CN113010177B (zh) 2021-02-09 2021-02-09 软件定义的仪器和信息采集方法、计算机、存储介质

Country Status (1)

Country Link
CN (1) CN113010177B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115685858B (zh) * 2023-01-05 2023-04-07 苏州慧工云信息科技有限公司 一种基于jit的电子看板数据控制器及控制方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101350036A (zh) * 2008-08-26 2009-01-21 天津理工大学 一种高速实时数据采集系统
CN112070202A (zh) * 2020-07-09 2020-12-11 安徽寒武纪信息科技有限公司 一种融合图的生成方法、生成装置和计算机可读存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105828041A (zh) * 2016-04-11 2016-08-03 上海大学 一种支持并行预处理的视频采集系统
US10169513B2 (en) * 2016-05-06 2019-01-01 Baidu Usa Llc Method and system for designing FPGA based on hardware requirements defined in source code
US10387319B2 (en) * 2017-07-01 2019-08-20 Intel Corporation Processors, methods, and systems for a configurable spatial accelerator with memory system performance, power reduction, and atomics support features
CN108256636A (zh) * 2018-03-16 2018-07-06 成都理工大学 一种基于异构计算的卷积神经网络算法设计实现方法
US10713151B1 (en) * 2019-04-18 2020-07-14 Microsoft Technology Licensing, Llc Program execution coverage expansion by selective data capture
CN110727633A (zh) * 2019-09-17 2020-01-24 广东高云半导体科技股份有限公司 基于SoC FPGA的边缘人工智能计算系统构架

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101350036A (zh) * 2008-08-26 2009-01-21 天津理工大学 一种高速实时数据采集系统
CN112070202A (zh) * 2020-07-09 2020-12-11 安徽寒武纪信息科技有限公司 一种融合图的生成方法、生成装置和计算机可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MCU vs FPGA — What’s the diff?;Lynnette Reese;《https://www.microcontrollertips.com/faq-mcu-vs-fpga-whats-the-diff/》;20161216;全文 *
如何将MCU应用到FPGA中:关于FPGA(1);工程师3;《http://www.elecfans.com/emb/danpianji/20180428669828.html》;20180508;全文 *

Also Published As

Publication number Publication date
CN113010177A (zh) 2021-06-22

Similar Documents

Publication Publication Date Title
CN110096338B (zh) 智能合约执行方法、装置、设备及介质
CN103136107A (zh) 一种嵌入式程序动态分配内存的变量调试方法
CN101976187B (zh) 反编译过程中的堆栈跟踪方法、装置及反编译器
CN109255107A (zh) 组态软件处理方法、装置、计算机设备和存储介质
CN101344857B (zh) 用于加速Java翻译的设备和方法
CN113010177B (zh) 软件定义的仪器和信息采集方法、计算机、存储介质
CN113010188B (zh) 模块化测控系统生成方法、装置、计算机设备及存储器
CN116841564B (zh) 一种数据处理方法、装置、设备以及计算机可读存储介质
CN113168552A (zh) 人工智能应用开发系统、计算机设备及存储介质
CN116225501A (zh) Ecu升级方法、装置及可读存储介质
CN113220306A (zh) 操作执行方法、装置和电子设备
CN115237399A (zh) 用于采集数据的方法、存储介质、处理器及工程车辆
CN115237753A (zh) 固件排错方法、系统、终端设备及存储介质
CN112346736B (zh) 一种数据处理方法和系统
CN114238130A (zh) 性能测试方法、装置、设备及存储介质
CN111124423B (zh) 一种基于多平台的编译检测方法、装置、服务器及介质
CN113626022A (zh) 物模型创建方法、装置、存储介质及电子设备
CN112860237B (zh) 一种测控固件生成方法、装置、计算机设备及存储介质
CN110110523A (zh) 一种提升规则代码扫描准确率的方法
CN111782208A (zh) 指标预警方法、装置、计算机设备及存储介质
CN112882715B (zh) 一种测控装置定义方法、计算机及可定义的测控装置
CN114661980B (zh) 一种网页数据推送方法、系统及云平台
CN116646911B (zh) 应用于数字化电源并联模式的电流均流分配方法及系统
CN113032003B (zh) 开发文件导出方法、装置、电子设备及计算机存储介质
CN111857678B (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