如何把FPGA调试中的数据给捕获出来并保存为文件

时间:2025-06-15  作者:Diven  阅读:0

在FPGA调试过程中,经常遇到这样的情况:出现BUG时,想采用仿真环境把FPGA调试中遇到的BUG给重现出来,但无论怎样改变仿真环境中的激励,都无法重现FPGA上的出现BUG的情况。
此时,如果有方法,能够把FPGA正在运行时产生BUG前所有的输入变量状态给捕获下来,然后作为激励,添加到仿真环境中去,这样以来,就能够重现FPGA运行时出现的BUG,就可以在仿真环境中去解决这个BUG,调试的复杂度瞬间降低很多,也能大大的提高FPGA调试的效率。  
本文介绍利用Vivado进行FPGA调试时,如何把FPGA调试中的数据给“捕获”出来,并保存为文件,转换到仿真环境中进行仿真,“重现”FPGA调试运行场景的方法。    

如何把FPGA调试中的数据给捕获出来并保存为文件

1、背景

从一个RTL代码描述的电路到FPGA样机的过程可以分为两个阶段,第一阶段为仿真验证,第二阶段为FPGA验证。仿真验证是激励数据源常常由自己编写,往往与板级验证数据源(如TestCenter等网络测试仪产生的以太网数据包)存在较大区别,因此在这里介绍将板级验证数据导入仿真Testbench中的方法。使用这种方法,可以使仿真验证数据源最大限度地接近板级数据源,可以辅助排除绝大部分的逻辑错误。  

2、操作流程

这里我们还以Zedboard Debug数据导出到Testbench为例,对具体实施流程进行介绍,如图1所示,该流程可以分为3个步骤: (1) Zedboard,抓取感兴趣的数据,并通过jtag线传输到上位机; (2) 在上位机Vivado软件的Tcl Console中输入命令,将抓取的数据另存为wave.csv文件; (3) 将wave.csv文件中的数据导入Testbench中,最终输出波形。  
 
图1 操作流程  

3、 操作实例

下面给出一个实例,针对图1的三个步骤,对操作流程进行详细介绍。
(1) 抓取感兴趣的数据,如图2所示。
   
图2 抓取感兴趣的数据  
(2) 如图3所示,在tclconsole中输入命令,将抓取的数据转存为wave,csv,转存后的文件如图4所示。  
图3 tcl console输入命令  
 
图4 wave.csv文件  
(3)将图4中的数据存入RAM中,并在Testbench中循环读取,获得波形数据,如图5所示。  
 
图5 波形数据
通过这样的方法,就可以把FPGA运行时的输入激励数据捕获到文件中,进而转换到仿真环境中进行调试。
按照惯例,我们给出上述过程的源码。

FPGA工程源代码

Zedboard开发板约束文件

仿真环境TESTBENCH文件


审核编辑:刘清

猜您喜欢

可调电阻作为调节电路参数的重要元件,应用于各种电子设备和仪器中。选择一个高品质的可调电阻品牌,对于确保产品的性能稳定和使用寿命非常重要。冠佐(SUSCON)作为...
2020-02-20 01:31:30

二极管是电子电路中常见的半导体元件,应用于整流、信号调制等多个领域。由于其在电路中的重要性,了解如何测试二极管的好坏显得尤为重要。本文将为您介绍几种简单而有效的...
2025-03-31 10:30:34


电子元件的设计与制造中,SMD(表面贴装器件)是现代电子产品不可或缺的一部分。SMD_P=1.25mm是指SMD元件的引脚间距为1.25毫米,这一参数在设计电路...
2025-03-09 00:22:18

熔断器作为重要的保护元件,有着着不可替代的作用。共禾6熔断器作为业内知名品牌,很好的性能和可靠的质量,受到了关注和认可。本文将详细介绍共禾6熔断器的特点与优势,...
2022-05-04 14:55:30

现代科技中,发光二极管(LED)和激光二极管(LD)是两种重要的光源。在日常生活和工业应用中是不可少的配件。尽管二者都是半导体器件,能够发出光线,但在工作原理、...
2025-04-08 23:30:35

专用电缆组件是指为特定应用或环境设计和制造的电缆系统,通常包括电缆、连接器、保护装置和其附件。这些组件经过精心选择和组合,以确保在特定条件下的最佳性能和安全性。...
2013-04-27 00:00:00

熔断器是电气设备中不可少的重要保护元件,其参数直接影响到设备的安全性和可靠性。熔断器的额定电流是一个关键参数,表示熔断器在正常工作状态下能够承受的最大电流值。熔...
2010-02-09 00:00:00

贴片电阻2002指的是其封装尺寸为2.0mm*0.2mm,而非阻值。2002封装的贴片电阻阻值范围非常宽泛,从几欧姆到几兆欧姆都有,选择最佳阻值取决于具体应用场...
2024-11-29 10:25:46

贴片电阻,顾名思义,就是表面贴装型的电阻器,因其体积小巧,常用于各种电子电路中。别看它身材迷你,却能在电路中扮演着至关重要的角色,控制电流、分配电压,保证电路稳...
2025-04-14 15:02:08