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);

相关推荐
1560820721918 小时前
关于AGC性能测试
fpga开发
威嵌神州1 天前
国产化加固计算机项目选型笔记|板卡、整机、平板与定制模块评估要点
笔记·fpga开发·电脑
泡泡糖的中文规格书1 天前
HDLbits 1.2 学习笔记
fpga开发·学习笔记·verilog
樱木花道長1 天前
AMD Ross 深度系列 5:实战演示 —— MATLAB 到 FPGA,edge-detection 边缘检测全流程
fpga开发
吉他英雄一里2 天前
FPGA--RAM
fpga开发
szxinmai主板定制专家2 天前
储能 EMS、微网控制器选型:RK3588、RK3576、RK3568+FPGA 怎么选?多网、多 CAN、EMC 设计权衡
人工智能·深度学习·机器学习·fpga开发·工业网关·rk3576·电力网关
XMAIPC_Robot2 天前
ARM+FPGA+AI船舶/工业自动化控制器EMC测试等级解析(IEC60533/IEC60945)
arm开发·人工智能·fpga开发·zynq·arm+fpga·rk3588+fpga
ALINX技术博客2 天前
ALINX 亮相 2026 工博会,聚焦 FPGA 行业应用场景
ai·fpga开发·射频工程
星夜离尘562 天前
FPGA 复位回归实验:双时钟停钟、释放中重入与消费端首拍自检
fpga开发
szxinmai主板定制专家2 天前
ZYNQ 数据采集方案踩坑总结:电力强电磁干扰、工业现场多协议适配优化
运维·人工智能·fpga开发·机器人·zynq