CN109240965B - Fpga逻辑捕获处理显示套件及其使用方法 - Google Patents

Fpga逻辑捕获处理显示套件及其使用方法 Download PDF

Info

Publication number
CN109240965B
CN109240965B CN201810863597.0A CN201810863597A CN109240965B CN 109240965 B CN109240965 B CN 109240965B CN 201810863597 A CN201810863597 A CN 201810863597A CN 109240965 B CN109240965 B CN 109240965B
Authority
CN
China
Prior art keywords
fpga
data
trigger
logic
upper computer
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
CN201810863597.0A
Other languages
English (en)
Other versions
CN109240965A (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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN201810863597.0A priority Critical patent/CN109240965B/zh
Publication of CN109240965A publication Critical patent/CN109240965A/zh
Application granted granted Critical
Publication of CN109240965B publication Critical patent/CN109240965B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • 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/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Logic Circuits (AREA)

Abstract

本发明公开了一种FPGA逻辑捕获处理显示套件及其使用方法,套件包括:FPGA内嵌逻辑,为标准FPGA IP核,且具有固定不变的上下位机接口及接口协议和片外存储器读写接口及接口协议,且FPGA内嵌逻辑具有数量可变的触发输入端口及数据输入端口;上位机显控软件,上位机显控软件通过FPGA芯片外存储器与FPGA内嵌逻辑进行捕获数据缓存及交互,且对触发条件和触发运行方式进行设置,并根据FPGA内嵌逻辑反馈的捕获状态信息读取FPGA片外存储器缓存的捕获数据,以对数据进行处理、显示和存储。该套件通过片外大容量存储、高速传输总线和GPU加速技术,实现更大容量的数据捕获、更快的数据上传,更快的数据处理和显示。

Description

FPGA逻辑捕获处理显示套件及其使用方法
技术领域
本发明涉及电子测量技术领域,特别涉及一种FPGA(Field-Programmable GateArray,可编程的半定制逻辑集成芯片)逻辑捕获处理显示套件及其使用方法。
背景技术
由于具有可重构特性、可进行并行计算且能够实现灵活的对外接口,近年来FPGA被广泛应用于高速信号处理、IC验证、机器学习、硬件加速等领域。
为便于FPGA芯片内部功能验证,FPGA厂商提供了内嵌的在线逻辑分析工具,如Xilinx的ChipScope、Intel(原Altera)的SignalTap等。这些逻辑分析工具相对专用数字信号调试设备(如逻辑分析仪、示波器、频谱仪等)来说具有灵活性好、成本低、可观测FPGA芯片内部任意信号的优点。
FPGA厂商提供的内嵌逻辑分析工具同时也存在着一些不足。首先,FPGA厂商提供的内嵌逻辑分析工具要占用FPGA内部宝贵的存储器资源,且会影响原有用户逻辑的布局布线结果。当前性能较高的FPGA芯片内部块RAM资源在几十MB量级,因此,FPGA厂商提供的内嵌逻辑分析工具单次捕获数据量很小,仅能支持MB级,不能满足大数据量连续捕获分析需求。其次,FPGA厂商提供的内嵌逻辑分析工具通过JTAG接口实现波形显控界面与FPGA间的数据交互,数据交互速率很低。再次,FPGA厂商提供的内嵌逻辑分析工具数据接口不便,不易将捕获数据导出到主流信号分析软件进行事后分析。最后,FPGA厂商提供的内嵌逻辑分析工具仅能对数字逻辑进行简单的数字及模拟波形的显示,不能基于捕获波形进行二次处理(如插值、滤波、频谱分析等),不利于***级功能调试。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种FPGA逻辑捕获处理显示套件,该套件具有不占用FPGA片内宝贵RAM资源、对FPGA编译结果影响小、可实现高达GB量级的数据存储容量、数据传输速率可达百MB/s量级、数据接口灵活、二次开发及扩展能力良好等优点。
本发明的另一个目的在于提出一种FPGA逻辑捕获处理显示套件的使用方法。
为达到上述目的,本发明一方面实施例提出了一种FPGA逻辑捕获处理显示套件,FPGA芯片的***电路中至少包括片外存储器和与上位机通信的总线接口,其中,所述套件包括:FPGA内嵌逻辑,所述FPGA内嵌逻辑为标准FPGA IP核,在FPGA工程中嵌入IP后,根据需求进行相应设置及端口连接后,将所述IP跟随整个所述FPGA工程一起进行编译,所述FPGA内嵌逻辑具有固定不变的上下位机接口及接口协议和片外存储器读写接口及接口协议,且所述FPGA内嵌逻辑具有数量可变的触发输入端口及数据输入端口;上位机显控软件,所述上位机显控软件通过FPGA芯片外存储器与所述FPGA内嵌逻辑进行捕获数据缓存及交互,且对触发条件和触发运行方式进行设置,并根据所述FPGA内嵌逻辑反馈的捕获状态信息读取所述FPGA片外存储器缓存的捕获数据,以对数据进行处理、显示和存储。
本发明实施例的FPGA逻辑捕获处理显示套件,通过片外大容量存储、高速传输总线和GPU加速技术,实现了更大容量的数据捕获、更快的数据上传,以及更快的数据处理和显示,基于FPGA片外存储器进行捕获数据存储,上下位机通过高速总线协议进行数据交互,具备不占用FPGA片内宝贵RAM资源、对FPGA编译结果影响小、可实现高达GB量级的数据存储容量、数据传输速率可达百MB/s量级、数据接口灵活、二次开发及扩展能力良好等优点。
另外,根据本发明上述实施例的FPGA逻辑捕获处理显示套件还可以具有以下附加的技术特征:
进一步地,在本发明的一个实施例中,所述FPGA内嵌逻辑与所述上位机显控软件通过高速总线协议进行数据交互。
进一步地,在本发明的一个实施例中,所述FPGA内嵌逻辑在随所述FPGA工程编译时,自动生成具有预设格式的数据格式定义文件,并且通过所述数据格式定义文件向所述上位机显控软件传递FPGA逻辑例化信息。
进一步地,在本发明的一个实施例中,所述FPGA逻辑例化例化信息包括FPGA工程版本信息、使用的外部存储器类型、缓存深度、触发端口总数量及总位宽、数据端口总数量及总位宽、各个触发端口的名称、所述各个触发端口的类型、所述各个触发端口的位宽、所占用的触发总线的数据位范围、各个数据端口的名称、所述各个数据端口的类型、位宽和所占用的数据总线的数据位范围中的一种或多种。
进一步地,在本发明的一个实施例中,所述FPGA内嵌逻辑包括:上下位机接口模块,用于与所述上位机显控软件的配置及状态信息进行交互;触发产生模块,用于根据所述上下位机接口模块输出的相关配置信息及所述FPGA内嵌逻辑的触发输入信号进行触发生成触发标志;数据捕获模块,用于根据所述触发产生模块发送的所述触发标志进行数据捕获,并将捕获状态信息反馈给所述上下位机接口模块,并且将捕获到的数据通过标准存储器接口及协议写入到符合接口要求的所述FPGA芯片的片外存储器中。
为达到上述目的,本发明另一方面实施例提出了一种FPGA逻辑捕获处理显示套件的使用方法,采用上述的FPGA逻辑捕获处理显示套件,其中,所述方法包括:将含有FPGA内嵌逻辑的FPGA配置文件加载到FPGA芯片内;启动上位机显控软件;将FPGA内嵌逻辑实例化过程中生成数据格式定义文件导入到所述上位机显控软件中;通过上位机显控软件界面进行触发条件及触发运行方式设置;在开始运行后,发送所述上位机显控软件的相关配置信息到FPGA内嵌逻辑;所述FPGA内嵌逻辑开始运行后,如果满足预设触发条件,则将所述FPGA内嵌逻辑捕获数据写入FPGA片外存储器中,并反馈捕获完成状态给所述上位机显控软件;在等待触发完成过程中,通过所述上位机显控软件对触发过程进行停止和立即触发设置;捕获完成后,根据数据处理设置信息通过所述上位机显控软件进行相应数据处理;数据处理完成后,显示处理结果。
本发明实施例的FPGA逻辑捕获处理显示套件的使用方法,通过片外大容量存储、高速传输总线和GPU加速技术,实现了更大容量的数据捕获、更快的数据上传,以及更快的数据处理和显示,基于FPGA片外存储器进行捕获数据存储,上下位机通过高速总线协议进行数据交互,具备不占用FPGA片内宝贵RAM资源、对FPGA编译结果影响小、可实现高达GB量级的数据存储容量、数据传输速率可达百MB/s量级、数据接口灵活、二次开发及扩展能力良好等优点。
另外,根据本发明上述实施例的FPGA逻辑捕获处理显示套件的使用方法还可以具有以下附加的技术特征:
进一步地,在本发明的一个实施例中,所述FPGA内嵌逻辑实例化过程,包括:将FPGA内嵌逻辑IP核添加到用户FPGA工程中;根据用户FPGA工程中调用的外部存储器容量设置FPGA内嵌逻辑的捕获深度;根据所述用户FPGA工程中的触发信号数量及数据信号数量设置所述FPGA内嵌逻辑IP核的触发端口数量和数据端口数量;将所述用户FPGA工程中的触发信号和数据信号分别连接到所述FPGA内嵌逻辑IP核的触发端口和数据端口上;将所述FPGA内嵌逻辑IP核的上下位机接口连接到对应的用户逻辑上;将所述FPGA内嵌逻辑IP核的外部存储器接口连接到对应的所述用户逻辑上;生成满足预设格式要求的数据格式定义文件;调用FPGA厂商开发工具生成FPGA配置文件。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本发明一个实施例的FPGA逻辑捕获处理显示套件的结构示意图;
图2为根据本发明一个实施例的FPGA内嵌逻辑功能框图;
图3为根据本发明一个实施例的上位机软件图形用户界面布局图;
图4为根据本发明一个实施例的FPGA逻辑捕获处理显示套件的使用方法的流程图。
图5为根据本发明一个实施例的***工作流程示意图;
图6为根据本发明一个实施例的FPGA内嵌逻辑例化的流程图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参照附图描述根据本发明实施例提出的FPGA逻辑捕获处理显示套件及其使用方法,首先将参照附图描述根据本发明实施例提出的FPGA逻辑捕获处理显示套件。
图1是本发明一个实施例的FPGA逻辑捕获处理显示套件的结构示意图。
如图1所示,FPGA芯片的***电路中至少包括片外存储器和与上位机通信的总线接口,其中,该FPGA逻辑捕获处理显示套件10包括:FPGA内嵌逻辑100和上位机显控软件200。
其中,FPGA内嵌逻辑100为标准FPGA IP核,在FPGA工程中嵌入IP后,根据需求进行相应设置及端口连接后,将IP跟随整个FPGA工程一起进行编译,FPGA内嵌逻辑100具有固定不变的上下位机接口及接口协议和片外存储器读写接口及接口协议,且FPGA内嵌逻辑100具有数量可变的触发输入端口及数据输入端口。上位机显控软件200通过FPGA芯片外存储器与FPGA内嵌逻辑100进行捕获数据缓存及交互,且对触发条件和触发运行方式进行设置,并根据FPGA内嵌逻辑100反馈的捕获状态信息读取FPGA片外存储器缓存的捕获数据,以对数据进行处理、显示和存储。本发明实施例的套件10通过片外大容量存储、高速传输总线和GPU加速技术,实现了更大容量的数据捕获、更快的数据上传,以及更快的数据处理和显示。
可以理解的是,FPGA芯片***电路中至少包括存储器、与上位机通信的总线接口,套件包含FPGA内嵌逻辑100;套件包含上位机显控软件200。FPGA内嵌逻辑100为标准FPGAIP核,用户手动在FPGA工程中嵌入该IP,根据需求进行相应设置及端口连接后,该IP跟随整个FPGA工程一起进行编译;FPGA内嵌逻辑100具有固定不变的上下位机接口及接口协议;FPGA内嵌逻辑100具有固定不变的片外存储器读写接口及接口协议;FPGA内嵌逻辑100具有数量可变的触发输入端口及数据输入端口;FPGA内嵌逻辑100与上位机显控软件200通过FPGA芯片外存储器进行捕获数据缓存及交互。上位机显控软件200对触发条件、触发运行方式等信息进行设置,并根据FPGA内嵌逻辑100反馈的捕获状态信息,读取FPGA片外存储器缓存的捕获数据,对数据进行处理、显示和存储。
综上,套件10由FPGA内嵌逻辑100和上位机显控软件200组成。FPGA内嵌逻辑100主要负责触发逻辑产生及数据捕获,并反馈捕获状态信息给上位机显控软件。上位机显控软件200负责套件的触发条件设置、运行控制、数据处理及结果显示等。
进一步地,在本发明的一个实施例中,FPGA内嵌逻辑100与上位机显控软件200通过高速总线协议进行数据交互。
下面将分别对FPGA内嵌逻辑100和上位机显控软件200进行进一步阐述,首选对FPGA内嵌逻辑100进行详细介绍。
进一步地,在本发明的一个实施例中,FPGA内嵌逻辑100在随FPGA工程编译时,自动生成具有预设格式的数据格式定义文件,并且通过数据格式定义文件向上位机显控软件传递FPGA逻辑例化信息。
可以理解的是,FPGA内嵌逻辑在随整个FPGA工程编译时能够自动生成具有标准格式的数据格式定义文件,并且通过该文件向上位机显控软件传递FPGA逻辑例化信息
进一步地,在本发明的一个实施例中,FPGA逻辑例化例化信息包括FPGA工程版本信息、使用的外部存储器类型、缓存深度、触发端口总数量及总位宽、数据端口总数量及总位宽、各个触发端口的名称、各个触发端口的类型、各个触发端口的位宽、所占用的触发总线的数据位范围、各个数据端口的名称、各个数据端口的类型、位宽和所占用的数据总线的数据位范围中的一种或多种。
可以理解的是,例化信息包含但不限于:FPGA工程版本信息,使用的外部存储器类型,缓存深度,触发端口总数量及总位宽,数据端口总数量及总位宽,各个触发端口的名称、类型、位宽、所占用的触发总线的数据位范围,各个数据端口的名称、类型、位宽、所占用的数据总线的数据位范围等。
进一步地,在本发明的一个实施例中,FPGA内嵌逻辑100包括:上下位机接口模块、触发产生模块和数据捕获模块。
其中,上下位机接口模块,用于与上位机显控软件的配置及状态信息进行交互;触发产生模块,用于根据上下位机接口模块输出的相关配置信息及FPGA内嵌逻辑的触发输入信号进行触发生成触发标志;数据捕获模块,用于根据触发产生模块发送的触发标志进行数据捕获,并将捕获状态信息反馈给上下位机接口模块,并且将捕获到的数据通过标准存储器接口及协议写入到符合接口要求的FPGA芯片的片外存储器中。
可以理解的是,如图2所示,FPGA内嵌逻辑包含上下位机接口模块;FPGA内嵌逻辑包含触发产生模块;FPGA内嵌逻辑包含数据捕获模块;上下位机接口模块实现FPGA内嵌逻辑与上位机显控软件的配置及状态信息交互;触发产生模块根据上下位机接口模块输出的相关配置信息及FPGA内嵌逻辑的触发输入信号进行触发生成,并将触发标志输出给数据捕获模块;数据捕获模块根据上下位机接口模块及触发产生模块输出的相关信息进行数据捕获,并将捕获状态信息反馈给上下位机接口模块;数据捕获模块将捕获到的数据通过标准存储器接口及协议写入到符合接口要求的FPGA芯片的片外存储器中。
具体而言,FPGA内嵌逻辑100为标准FPGA IP核,用户手动在FPGA工程中嵌入该IP,根据需求进行相应设置及端口连接后,该IP跟随整个FPGA工程一起进行编译。FPGA内嵌逻辑100主要由上下位机接口模块、触发产生模块及数据捕获模块组成。上下位机接口模块负责FPGA内嵌逻辑与上位机显控软件间的通信,对上位机显控软件下发的控制信息进行解析,并将FPGA内嵌逻辑的状态信息上传;触发产生模块根据上位机显控软件下发的触发配置信息及用户触发输入进行触发产生,当满足触发条件时输出触发标志给数据捕获模块;数据捕获模块根据上下位机接口模块及触发产生模块输出的相关信息进行数据捕获,并将捕获状态信息反馈给上下位机接口模块。数据捕获模块将捕获数据通过标准存储器接口及协议写入到符合接口要求的FPGA片外存储器中。
FPGA内嵌逻辑100具有固定不变的上下位机接口及接口协议,具有固定不变的片外存储器读写接口及接口协议,具有数量可变的触发输入端口及数据输入端口。FPGA内嵌逻辑100与上位机显控软件200通过高速总线协议进行数据交互。FPGA内嵌逻辑在随整个FPGA工程编译时能够自动生成具有标准格式的数据格式定义文件,并且通过该文件向上位机显控软件传递FPGA逻辑例化信息。例化信息包含但不限于:FPGA工程版本信息,使用的外部存储器类型,缓存深度,触发端口总数量及总位宽,数据端口总数量及总位宽,各个触发端口的名称、类型、位宽、所占用的触发总线的数据位范围,各个数据端口的名称、类型、位宽、所占用的数据总线的数据位范围等。
下面将对上位机显控软件200进行详细介绍。
上位机显控软件200利用GPU对数据处理和图形显示进行加速。上位机软件可通过插件方式进行扩展,以增加针对具体应用的数据处理算法和显示方法。另外,上位机软件图形用户界面布局图如图3所示。
上位机显控软件200负责发出数据捕获指令、读取下位机存储器中捕获到的数据、把数据经处理后进行显示和存储。
上位机显控软件200从数据定义文件中获得原始数据的总位宽,以及各数据的bit位范围。软件在界面上显示可用的触发信号,用户可选择各个触发信号的具体触发条件。用户设定完毕后,启动捕获过程,上位机软件下发具体捕获指令,并等待下位机完成捕获过程。
当上位机显控软件200检测到下位机已经完成捕获时,就开始读取预定存储器中的数据。这些原始数据被放入GPU一侧,并根据数据的bit位定义,利用GPU程序进行数据拆解和转换。如果需要做FFT变换,也在GPU端进行。最终得到时域和对应的频域数据,这些数据直接用作图形显示;同时,在需要时这些计算结果也可被复制到CPU端,例如当需要把数据存储至文件时。
在上位机显控软件200处理过程中,一方面利用GPU做数据拆解这种大量简单的计算,充分利用了GPU并行计算的优势;另一方面,数据保持在GPU端,避免了数据在CPU和GPU之间传输的时间损耗,提高了整体的数据处理和显示的效率。这些措施使上位机显控软件200的性能与下位机硬件的大容量存储和高速数据传输总线相匹配。
上位机显控软件200可通过插件方式进行扩展,以增加针对不同应用的具体数据处理算法和显示方法。插件可以用编译类语言开发,以追求高性能;也可用脚本类语言开发,以追求修改的简便性。
综上,本发明实施例具有以下有益效果:
(1)片外存储不占用FPGA片内宝贵RAM资源且对用户FPGA逻辑综合及布局布线结果影响小。
(2)片外存储器容量大可实现高达GB量级的数据存储,尤其适用于需要一次性捕获大量数据进行分析的***级功能调试、监测。
(3)FPGA内嵌逻辑与上位机显控软件通过PCI、PCIE、千兆以太网等高速总线协议进行数据交互,数据传输速率可达百MB/s量级。
(4)上位机软件可以调用GPU进行相关运算及图形显示加速,能够满足大计算量运算需求及大数据量的无卡顿波形刷新显示。
(5)上位机软件可通过插件方式进行扩展,以增加针对具体应用的数据处理算法和显示方法。
(6)上位机显控软件数据接口灵活,便于实现灵活的数据处理及显示,具有良好的二次开发及扩展能力。
为实现以上有益效果,相对于FPGA厂商提供的内嵌逻辑分析工具用户需要增加的额外工作在于:
(1)FPGA厂商提供的内嵌逻辑分析工具中FPGA内嵌逻辑与上位机显控软件通过标准JTAG协议进行通信,可复用电路中FPGA加载用的JTAG接口,不会给用户FPGA板卡设计带来额外工作。
(2)发明涉及的基于片外存储的FPGA逻辑分析仪实现方案要求在FPGA板卡设计过程中预留片外存储器接口及电路、预留与上位机交互的高速总线接口。
根据本发明实施例提出的FPGA逻辑捕获处理显示套件,通过片外大容量存储、高速传输总线和GPU加速技术,实现了更大容量的数据捕获、更快的数据上传,以及更快的数据处理和显示,基于FPGA片外存储器进行捕获数据存储,上下位机通过高速总线协议进行数据交互,具备不占用FPGA片内宝贵RAM资源、对FPGA编译结果影响小、可实现高达GB量级的数据存储容量、数据传输速率可达百MB/s量级、数据接口灵活、二次开发及扩展能力良好等优点。
其次参照附图描述根据本发明实施例提出的FPGA逻辑捕获处理显示套件的使用方法。
图4是本发明一个实施例的FPGA逻辑捕获处理显示套件的使用方法的流程图。
如图4所示,该FPGA逻辑捕获处理显示套件的使用方法,采用上述的FPGA逻辑捕获处理显示套件,其中,方法以下步骤:
在步骤S401中,将含有FPGA内嵌逻辑的FPGA配置文件加载到FPGA芯片内;
在步骤S402中,启动上位机显控软件;
在步骤S403中,将FPGA内嵌逻辑实例化过程中生成数据格式定义文件导入到上位机显控软件中;
在步骤S404中,通过上位机显控软件界面进行触发条件及触发运行方式设置;
在步骤S405中,在开始运行后,发送上位机显控软件的相关配置信息到FPGA内嵌逻辑;
在步骤S406中,FPGA内嵌逻辑开始运行后,如果满足预设触发条件,则将FPGA内嵌逻辑捕获数据写入FPGA片外存储器中,并反馈捕获完成状态给上位机显控软件;
在步骤S407中,在等待触发完成过程中,通过上位机显控软件对触发过程进行停止和立即触发设置;
在步骤S408中,捕获完成后,根据数据处理设置信息通过上位机显控软件进行相应数据处理;
在步骤S409中,数据处理完成后,显示处理结果。
进一步地,在本发明的一个实施例中,FPGA内嵌逻辑实例化过程,包括:将FPGA内嵌逻辑IP核添加到用户FPGA工程中;根据用户FPGA工程中调用的外部存储器容量设置FPGA内嵌逻辑的捕获深度;根据用户FPGA工程中的触发信号数量及数据信号数量设置FPGA内嵌逻辑IP核的触发端口数量和数据端口数量;将用户FPGA工程中的触发信号和数据信号分别连接到FPGA内嵌逻辑IP核的触发端口和数据端口上;将FPGA内嵌逻辑IP核的上下位机接口连接到对应的用户逻辑上;将FPGA内嵌逻辑IP核的外部存储器接口连接到对应的用户逻辑上;生成满足预设格式要求的数据格式定义文件;调用FPGA厂商开发工具生成FPGA配置文件。
具体而言,基于片外存储的FPGA逻辑捕获处理显示套件在使用过程中,应先进行FPGA内嵌逻辑在用户FPGA工程中的实例化,具体步骤如图5所示,具体包括:
步骤1:将FPGA内嵌逻辑IP核添加到用户FPGA工程中;
步骤2:根据用户FPGA工程中调用的外部存储器容量设置FPGA内嵌逻辑的捕获深度;
步骤3:根据用户FPGA工程中关心的触发信号数量及数据信号数量设置FPGA内嵌逻辑IP核的触发端口数量和数据端口数量;
步骤4:将用户FPGA工程中的触发及数据信号分别连接到FPGA内嵌逻辑IP核的触发及数据端口上;
步骤5:将FPGA内嵌逻辑IP核的上下位机接口连接到相应用户逻辑上;
步骤6:将FPGA内嵌逻辑IP核的外部存储器接口连接到相应用户逻辑上;
步骤7:生成符合标准格式要求的数据格式定义文件;
步骤8:调用FPGA厂商开发工具生成FPGA配置文件。
完成FPGA内嵌逻辑的实例化后,可以使用上位机显控软件进行测试,使用上位机显控软件进行***调试的具体流程如图6所示,具体包括:
步骤1:将含有FPGA内嵌逻辑的FPGA配置文件加载到FPGA芯片内;
步骤2:启动上位机显控软件;
步骤3:用户手动将FPGA内嵌逻辑实例化过程中生成数据格式定义文件导入到上位机显控软件中;
步骤4:用户通过上位机显控软件界面进行触发条件及触发运行方式设置;
步骤5:点击开始运行,上位机显控软件的相关配置信息被发送到FPGA内嵌逻辑内;
步骤6:FPGA内嵌逻辑开始运行,当满足触发条件时FPGA内嵌逻辑将捕获数据写入FPGA片外存储器中,并反馈捕获完成状态给上位机显控软件;
步骤7:在等待触发完成过程中用户可以通过上位机显控软件对触发过程进行停止和立即触发设置;
步骤8:捕获完成后,上位机显控软件根据数据处理设置信息进行相应数据处理;
步骤9:数据处理完成后,显示处理结果。
根据本发明实施例提出的FPGA逻辑捕获处理显示套件的使用方法,通过片外大容量存储、高速传输总线和GPU加速技术,实现了更大容量的数据捕获、更快的数据上传,以及更快的数据处理和显示,基于FPGA片外存储器进行捕获数据存储,上下位机通过高速总线协议进行数据交互,具备不占用FPGA片内宝贵RAM资源、对FPGA编译结果影响小、可实现高达GB量级的数据存储容量、数据传输速率可达百MB/s量级、数据接口灵活、二次开发及扩展能力良好等优点。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (5)

1.一种FPGA逻辑捕获处理显示套件,其特征在于,FPGA芯片的***电路中至少包括片外存储器和与上位机通信的总线接口,其中,所述套件包括:
FPGA内嵌逻辑,所述FPGA内嵌逻辑为标准FPGA IP核,在FPGA工程中嵌入IP后,根据需求进行相应设置及端口连接后,将所述IP跟随整个所述FPGA工程一起进行编译,所述FPGA内嵌逻辑具有固定不变的上下位机接口及接口协议和片外存储器读写接口及接口协议,且所述FPGA内嵌逻辑具有数量可变的触发输入端口及数据输入端口;其中,所述FPGA内嵌逻辑包括:上下位机接口模块,用于与所述上位机显控软件的配置及状态信息进行交互;触发产生模块,用于根据所述上下位机接口模块输出的相关配置信息及所述FPGA内嵌逻辑的触发输入信号进行触发生成触发标志;数据捕获模块,用于根据所述触发产生模块发送的所述触发标志进行数据捕获,并将捕获状态信息反馈给所述上下位机接口模块,并且将捕获到的数据通过标准存储器接口及协议写入到符合接口要求的所述FPGA芯片的片外存储器中;
上位机显控软件,所述上位机显控软件通过FPGA芯片片外存储器与所述FPGA内嵌逻辑进行捕获数据缓存及交互,且对触发条件和触发运行方式进行设置,并根据所述FPGA内嵌逻辑反馈的捕获状态信息读取所述FPGA片外存储器缓存的捕获数据,以对数据进行处理、显示和存储,其中,所述FPGA内嵌逻辑与所述上位机显控软件通过高速总线协议进行数据交互;具体地:
所述上位机显控软件利用GPU对数据处理和图形显示进行加速,并通过插件方式进行扩展,以增加针对具体应用的数据处理算法和显示方法;所述上位机显控软件负责发出数据捕获指令、读取下位机存储器中捕获到的数据、把数据经处理后进行显示和存储;所述上位机显控软件从数据定义文件中获得原始数据的总位宽,以及各数据的bit位范围,并在界面上显示可用的触发信号,用户选择各个触发信号的具体触发条件,用户设定完毕后,启动捕获过程,所述上位机显控软件下发具体捕获指令,并等待下位机完成捕获过程;
当所述上位机显控软件检测到下位机已经完成捕获时,开始读取预定存储器中的数据,原始数据被放入GPU一侧,并根据数据的bit位定义,利用GPU程序进行数据拆解和转换;如果需要进行FFT变换时,通过GPU端进行变换;最终得到时域和对应的频域数据直接用作图形显示;将计算结果也复制到CPU端。
2.根据权利要求1所述的FPGA逻辑捕获处理显示套件,其特征在于,所述FPGA内嵌逻辑在随所述FPGA工程编译时,自动生成具有预设格式的数据格式定义文件,并且通过所述数据格式定义文件向所述上位机显控软件传递FPGA逻辑例化信息。
3.根据权利要求2所述的FPGA逻辑捕获处理显示套件,其特征在于,所述FPGA逻辑例化信息包括FPGA工程版本信息、使用的外部存储器类型、缓存深度、触发端口总数量及总位宽、数据端口总数量及总位宽、各个触发端口的名称、所述各个触发端口的类型、所述各个触发端口的位宽、所占用的触发总线的数据位范围、各个数据端口的名称、所述各个数据端口的类型、位宽和所占用的数据总线的数据位范围中的一种或多种。
4.一种FPGA逻辑捕获处理显示套件的使用方法,其特征在于,采用如权利要求1-3任一项所述的FPGA逻辑捕获处理显示套件,其中,所述方法包括以下步骤:
将含有FPGA内嵌逻辑的FPGA配置文件加载到FPGA芯片内;
启动上位机显控软件;
将FPGA内嵌逻辑实例化过程中生成数据格式定义文件导入到所述上位机显控软件中;
通过上位机显控软件界面进行触发条件及触发运行方式设置;
在开始运行后,发送所述上位机显控软件的相关配置信息到FPGA内嵌逻辑;
所述FPGA内嵌逻辑开始运行后,如果满足预设触发条件,则将所述FPGA内嵌逻辑捕获数据写入FPGA片外存储器中,并反馈捕获完成状态给所述上位机显控软件;
在等待触发完成过程中,通过所述上位机显控软件对触发过程进行停止和立即触发设置;
捕获完成后,根据数据处理设置信息通过所述上位机显控软件进行相应数据处理;
数据处理完成后,显示处理结果。
5.根据权利要求4所述的FPGA逻辑捕获处理显示套件的使用方法,其特征在于,所述FPGA内嵌逻辑实例化过程,包括:
将FPGA内嵌逻辑IP核添加到用户FPGA工程中;
根据用户FPGA工程中调用的外部存储器容量设置FPGA内嵌逻辑的捕获深度;
根据所述用户FPGA工程中的触发信号数量及数据信号数量设置所述FPGA内嵌逻辑IP核的触发端口数量和数据端口数量;
将所述用户FPGA工程中的触发信号和数据信号分别连接到所述FPGA内嵌逻辑IP核的触发端口和数据端口上;
将所述FPGA内嵌逻辑IP核的上下位机接口连接到对应的用户逻辑上;
将所述FPGA内嵌逻辑IP核的外部存储器接口连接到对应的所述用户逻辑上;
生成满足预设格式要求的数据格式定义文件;
调用FPGA厂商开发工具生成FPGA配置文件。
CN201810863597.0A 2018-08-01 2018-08-01 Fpga逻辑捕获处理显示套件及其使用方法 Active CN109240965B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810863597.0A CN109240965B (zh) 2018-08-01 2018-08-01 Fpga逻辑捕获处理显示套件及其使用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810863597.0A CN109240965B (zh) 2018-08-01 2018-08-01 Fpga逻辑捕获处理显示套件及其使用方法

Publications (2)

Publication Number Publication Date
CN109240965A CN109240965A (zh) 2019-01-18
CN109240965B true CN109240965B (zh) 2021-02-12

Family

ID=65073386

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810863597.0A Active CN109240965B (zh) 2018-08-01 2018-08-01 Fpga逻辑捕获处理显示套件及其使用方法

Country Status (1)

Country Link
CN (1) CN109240965B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110222519B (zh) * 2019-06-05 2021-02-05 郑州信大捷安信息技术股份有限公司 一种可配置通道的数据处理***及方法
CN110597678B (zh) * 2019-09-09 2022-05-31 腾讯科技(深圳)有限公司 一种调试方法及调试单元
CN112255534B (zh) * 2020-10-14 2023-03-24 天津津航计算技术研究所 一种基于fpga的ip核模块调试***
CN114866488A (zh) * 2021-01-18 2022-08-05 阿里巴巴集团控股有限公司 信息流识别方法、网络芯片及网络设备
CN114741133B (zh) * 2022-04-21 2023-10-27 中国航空无线电电子研究所 一种基于模型的综合模块化航电***资源配置与评估方法
CN116306429A (zh) * 2023-01-18 2023-06-23 广东高云半导体科技股份有限公司 实现状态数据捕获的方法、装置、计算机存储介质及终端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201285527Y (zh) * 2008-11-03 2009-08-05 北京瑞智创通***科技有限公司 一种基于fpga的网络计算机
CN101833424A (zh) * 2010-03-26 2010-09-15 中国科学院光电技术研究所 基于fpga的高速存储与传输装置
CN104461994A (zh) * 2014-11-12 2015-03-25 中国航空工业集团公司洛阳电光设备研究所 一种基于fpga的嵌入式处理器动态配置电路及方法
CN107516296A (zh) * 2017-07-10 2017-12-26 昆明理工大学 一种基于fpga的运动目标检测跟踪***及方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050015029A (ko) * 2003-08-01 2005-02-21 비오이 하이디스 테크놀로지 주식회사 액정 표시 장치의 에이징 테스트 구동 회로
CN101807214A (zh) * 2010-03-22 2010-08-18 湖南亿能电子科技有限公司 一种基于fpga的高速信号采集存储及回放装置
CN104061931B (zh) * 2014-05-21 2017-05-10 中国民航大学 一种基于fpga的小型便携式多传感器姿态检测***
CN106815157A (zh) * 2016-12-20 2017-06-09 北京旋极信息技术股份有限公司 一种数据采集模块及数据采集***
CN107290654A (zh) * 2017-06-27 2017-10-24 济南浪潮高新科技投资发展有限公司 一种fpga逻辑测试结构及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201285527Y (zh) * 2008-11-03 2009-08-05 北京瑞智创通***科技有限公司 一种基于fpga的网络计算机
CN101833424A (zh) * 2010-03-26 2010-09-15 中国科学院光电技术研究所 基于fpga的高速存储与传输装置
CN104461994A (zh) * 2014-11-12 2015-03-25 中国航空工业集团公司洛阳电光设备研究所 一种基于fpga的嵌入式处理器动态配置电路及方法
CN107516296A (zh) * 2017-07-10 2017-12-26 昆明理工大学 一种基于fpga的运动目标检测跟踪***及方法

Also Published As

Publication number Publication date
CN109240965A (zh) 2019-01-18

Similar Documents

Publication Publication Date Title
CN109240965B (zh) Fpga逻辑捕获处理显示套件及其使用方法
US9032344B2 (en) Verification module apparatus for debugging software and timing of an embedded processor design that exceeds the capacity of a single FPGA
CN106680697A (zh) 一种数字信号处理器试验检测装置
US6820222B2 (en) Apparatus and method for processor power measurement in a digital signal processor using trace data and simulation techniques
JPH01134541A (ja) 情報処理装置
CN106649101A (zh) 一种ice自动化测试***及测试方法
CN109061446A (zh) 一种单端口传输芯片的测试方法及***
CN115309602B (zh) Gpu的调试装置、gpu及调试***
CN101237365A (zh) 一种eda网络实验***及实验方法
CN109426594A (zh) 一种芯片调试装置、方法及计算机可读存储介质
KR101422212B1 (ko) 시험 패턴 생성 장치, 시험 프로그램 생성 장치, 생성 방법, 프로그램 및 시험 장치
CN113433450B (zh) 一种基于图形化控制的混合信号测试装置
CN109407655A (zh) 一种调试芯片的方法及装置
CN116521468B (zh) 一种fpga在线调试方法及支持在线调试的fpga
CN114611445A (zh) 基于FPGA原型的SoC软硬件协同验证***及方法
CN110376503A (zh) 一种ai加速芯片性能测试方法及其装置
CN110196388A (zh) 集成芯片及其测试方法
CN114113990A (zh) 嵌入式边界扫描控制器
WO2019022956A1 (en) LOGIC ANALYZER FOR INTEGRATED CIRCUITS
CN101998135A (zh) 移动电视信号采集及播放***、控制方法
US20040153799A1 (en) Enabling at speed application of test patterns associated with a wide tester interface on a low pin count tester
CN116486892A (zh) 存储器功能验证与数据采集***、测试方法及电子设备
CN115658415A (zh) 一种芯片调试装置和方法
CN104572515A (zh) 跟踪模块、方法、***和片上***芯片
CN207832962U (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