FPGA和MATLAB仿真测试常会用的语句

一、FPGA

1.1 打印结果到TCL 中

直接打印,默认打印10进制,%h 打印16进制

always @(posedge i_clk)

if (!i_rstn) begin

// 复位时不操作

end else if (o_calc_valid) begin

$display("i_freq= ", i_freq);

$display("i_angle_thta= ", i_angle_thta);

$display("i_angle_phi= ", i_angle_phi);

$display("o_calc_data = %h", o_calc_data);

end

2.2 保存结果到txt中

integer data_file;

initial begin

data_file = $fopen("FPGA_tx_module_output.txt", "w");

// 等待仿真结束

#1000000; // 或者使用更精确的结束条件

$fclose(data_file); // 关闭文件,确保数据写入磁盘

$display("数据已保存到 FPGA_tx_module_output.txt");

$finish; // 结束仿真

end

// 保存文件的数据写入部分

always @(posedge i_clk) begin

if (i_rstn && o_valid ) begin

// 写入一行数据

$fdisplay(data_file, "%0d,%0d,%0d,%0d,%0d",

test_index + 1, // index从1开始

current_theta_reg/100, // theta/100

current_phi_reg/100, // phi/100

o_alpha, // alpha

o_beta); // beta

test_index = test_index + 1;

end

end

二、MATLAB

2.1 打印

fid = fopen('matlab_rx_calculation_results.txt', 'w');

fprintf(fid, '%d,%d,%d,%d,%d\n', row_idx, thta_scan, phi_scan, alpha_fpga, beta_fpga);

fclose(fid);

2.2 保存到txt

disp(hex_str);

或者需要打印的变量末尾直接去掉;

% 打印到控制台

fprintf('第%d组 | theta=%3d° | phi=%3d° | alpha_fpga=%d | beta_fpga=%d\n', ...

row_idx, thta_scan, phi_scan, alpha_fpga, beta_fpga);

相关推荐
物质波波波11 小时前
WS-RPE:面向边缘物理AI实时特征值计算的硬件工作窃取调度器与冗余PE激活架构
人工智能·fpga开发·架构·系统架构·硬件架构
我爱C编程14 小时前
基于FPGA的DSB调制解调系统verilog开发
fpga开发·verilog·fpga·dsb
zlinear数据采集卡14 小时前
USB HS 480M高速传输与SRAM记录仪:DABM-D223数据存储系统全解析
arm开发·嵌入式硬件·fpga开发·开源
逻辑诗篇16 小时前
基于 XCVU13P 的 4 路 100G 光纤 PCIe 处理板 PCIE727 硬件规格全解析
fpga开发
玩嵌入式谁会脱发呀20 小时前
【FPGA】 verilog设计spi读写flash实现数据DMA搬运
fpga开发
LabVIEW开发2 天前
LabVIEW 如何把地下震源定位误差做到5米内
fpga开发·labview·labview知识·labview功能·labview程序
Dr.kangder2 天前
嵌入式处理器架构解析(十)——DSP+FPGA
fpga开发·架构·嵌入式
szxinmai主板定制专家2 天前
Zynq MPSoC实现半导体真空腔体状态监测|FPGA多传感器时序同步采集方案
fpga开发·zynq·控制器·mpsoc·半导体设备·fpga同步
学习FPGA的电气小兴兴2 天前
基于FPGA的DDS信号发生器设计,生成频率可调的正弦波、三角波、锯齿波和方波
fpga开发·数字信号处理·fpga·vivado·dsp·dds·diy
szxinmai主板定制专家3 天前
Zynq MPSoC半导体高精度运动控制方案|FPGA硬件插补实现亚微米级伺服实时控制
人工智能·嵌入式硬件·fpga开发·zynq·运动控制·ethercat