readmemh函数引用的txt格式_verilog的系统函数$readmemh的使用

在 Verilog 中使用 $readmemh 函数加载内存数据时,应注意文件路径需使用正斜杠'/'. 例如:`$readmemh(""F:/mydesigen/re_input.txt"
摘要由CSDN通过智能技术生成

在verilog中有$readmemh(“filename”, mem_name)命令,在使用这个命令时,”filename”中的路径要用反斜杠’/’,而不是斜杠’\’。如

$readmemh("F:/mydesigen/re_input.txt",re_input);

上面的语句是正确的,而如果用斜杠就有问题,如

$readmemh("F:\mydesigen\re_input.txt",re_input);

对于需要的txt文件,其格式为每行一个数据,例如用matlab产生文件则可以这样写

fid0 = fopen('F:\mydesigen\re_input.txt','w+');

fprintf(fid0,'%x \n',real(info));

其中的换行符是必须的。同时,在matlab中,路径语句的斜杠’\’或是反斜杠’/’都没有问题。

modulememory();reg [7:0] my_mem [0:255];initial

begin

/*$readmemh("file",mem_array,start_addr,stop_addr);*/$readmemh("mem.list", my_mem);

$display("0x00: %h", my_mem[8'h00]);

$display("0x01: %h", my_mem[8'h01]);

$display("0x55: %h", my_mem[8'h55]);

$display("0x56: %h", my_mem[8'h56]);

end

endmodule

/*//comments are allowed

0xab //addr 8'h00

0xba //addr 8'h01

@55 //jump to 8'h55

0x55 //addr 8'h55

0xaa //addr 8'h56*/

我常用的是:

a0=funcCensusOneImage('im0.pgm',3);

fid0=fopen('G:\data.txt','wt');

fprintf(fid0,'%x\n',a0);

fclose(fid0);

向G:\data.txt文件写入经过ct变换的8位16进制数据,且每一个数据占一行,符合modelsim仿真时将data.txt数据读入存储器寄存器的规范。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值