FPGA学习-将modelsim中的波形数据保存到TXT文件方便MATLAB画图分析
- Verilog编写代码即可 可根据状态标志控制输出
 - 1.RTL代码输出TXT案例
 - 2.TXT输出
 
- 总结
 
–
Verilog编写代码即可 可根据状态标志控制输出
1.RTL代码输出TXT案例
在RTL代码中添加输出短句即可
 根据DOUT_VLD和DOUT_INDEX两个状态量控制
always @ (negedge rst_n or posedge sys_clk)	 beginif (!rst_n)   begin       Dout_Vld   <= 0;Dout_Index <= 0;end else  if( outfifo_rd_en ) begin				 Dout_Vld   <= 1; Dout_Index <= out_Index;endelse beginDout_Vld <= 0;  Dout_Index <= 0;endend  assign     outfifo_rd_en =  out_flag && ~outfifo_empty ;assign     Dout_Re  = outfifo_dout[7:0];assign     Dout_Im  = outfifo_dout[15:8];integer w_file; // w_file 是一个文件描述,需要定义为 integer 类型
//initial w_file = $fopen("/home/work/output_file/data_o.txt");//Linux系统下文件保存路径示例
initial w_file = $fopen("F:/data_o.txt");//win系统下文件保存路径示例always@(posedge sys_clk) begin//仅在valid_flag变化的情况下才将wr_txt写入文件if(Dout_Vld) begin$fwrite(w_file,"%d ",Dout_Re);// %h 十六进制保存,\n:换行符if(Dout_Index==6'd63) $fwrite(w_file," \n");end
endinteger w_file1; // w_file 是一个文件描述,需要定义为 integer 类型
//initial w_file = $fopen("/home/work/output_file/data_o.txt");//Linux系统下文件保存路径示例
initial w_file1 = $fopen("F:/data1_o.txt");//win系统下文件保存路径示例always@(posedge sys_clk) begin//仅在valid_flag变化的情况下才将wr_txt写入文件if(Dout_Vld) begin$fwrite(w_file1,"%d ",Dout_Im);// %h 十六进制保存,\n:换行符if(Dout_Index==6'd63) $fwrite(w_file1," \n");end
end
 
2.TXT输出
64个一行
总结
芝士就是力量,参考:Modelsim导出TXT文件
