Matlab生成txt文件导入到Vivado仿真

Matlab处理数据并将其写入txt文件

matlab 复制代码
%% Txt Generate
pre_RS_data=dec2bin(simDataIn,8);       %将数据转化为8bit的二进制
fid=fopen("F:\FPGA\Xilinx_vivado\project\dvbstestbench\dbvs\matlab\pre_RS_data.txt","wt");
for i=1:n*nMessages         %数据长度
    fprintf(fid,"%s\n",pre_RS_data(i,1:8));  %由于二进制数据为8位,因此是1:8
end
fclose(fid);

使用fopen函数获取文件id,fopen的语法如下

其中permisson为文件访问类型,有以下几种权限

'r' 打开要读取的文件。
'w' 打开或创建要写入的新文件。放弃现有内容(如果有)。
'a' 打开或创建要写入的新文件。追加数据到文件末尾。
'r+' 打开要读写的文件。
'w+' 打开或创建要读写的新文件。放弃现有内容(如果有)。
'a+' 打开或创建要读写的新文件。追加数据到文件末尾。
'A' 打开文件以追加(但不自动刷新)当前输出缓冲区。
'W' 打开文件以写入(但不自动刷新)当前输出缓冲区。

💡 要以文本模式打开的话,要附加't'

Vivado中testbench写法

verilog 复制代码
`timescale 1ns/1ps

module top_tb();

reg clk;
reg rst_n;
reg [7:0]SEQ_IN_0;
reg [7:0] data_mem[1:1020];
reg [31:0] i;
wire BIN_OUT;
wire ce_out;
wire locked;

//clk & rst_n gen
initial begin
    clk=1'b0;
    rst_n=1'b0;
    #100
    rst_n=1'b1;  
end
always #5 clk=~clk;

//data read
initial begin
    $readmemb("F:/FPGA/Xilinx_vivado/project/dvbstestbench/dbvs/matlab/pre_RS_data.txt",data_mem);
  
end

initial begin
    i=1;
    forever @(posedge clk) begin
        if(i<1020)  begin
            i=i+1;
        end
        else 
            i=1;
    end
    $display("%s",data_mem[i]);
end

always @(posedge clk) begin
    SEQ_IN_0<=data_mem[i];
end

top_wrapper top_wrapper_u0(
    .clk_0    (clk),
    .rst_n_0  (rst_n),
    .SEQ_IN_0(SEQ_IN_0),
    .BIN_OUT_0  (BIN_OUT),
    .ce_out_0   (ce_out),
    .locked_0   (locked)
);

endmodule

💡 直接在文件夹内部复制的文件路径是\,但是testbench中要将所有反斜杠改为/,否则无法读取txt文件

相关推荐
Tatalaluola1 小时前
【《游戏编程模式》实战04】状态模式实现敌人AI
学习·游戏·unity·c#·状态模式
9命怪猫3 小时前
AI大模型-提示工程学习笔记5-零提示
人工智能·笔记·学习·ai·提示工程
生如夏花℡5 小时前
JAVA学习记录3
java·学习·idea
shaxin观yin5 小时前
python反序列化+沙箱逃逸++js+redis
python·学习·https
高 朗5 小时前
【GO基础学习】项目日志zap Logger使用
服务器·学习·golang·日志·zap
LLLuckyGirl~8 小时前
计算机网络学习
网络·学习·计算机网络
紫云_Zyun8 小时前
JAVA开发学习Day8
java·开发语言·学习·vue
Spcarrydoinb9 小时前
python学习笔记—14—函数
笔记·python·学习
PyAIGCMaster9 小时前
docker学习记录:创建python环境,使用vscode连接远程docker环境,使其访问同为docker镜像的mongodb的设置。
学习·docker·容器
私人珍藏库9 小时前
《繁星路》V1.8.3(Build16632266)官方中文学习版
学习