我正在尝试将文件中的值加载到这样的二维数组中。
reg [31:0] RAM[63:0];
initial
$readmemh("memory.dat",RAM);
有哪些替代方案?如果我想改为对这些值进行硬编码,那么代码是做什么的呢?
答案 0 :(得分:5)
如果要对值进行硬编码,只需分配给每个内存位置:
initial begin
RAM[0] = 32'h1234_5678;
RAM[1] = 32'h9abc_def0;
RAM[2] = 32'haaaa_5555;
// etc.
end
$readmemh
的另一种替代方法是使用文件IO系统任务,例如$fopen
和$fscanf
(请参阅IEEE标准或您的模拟器文档)。