verilog给数组集体赋值_verilog ⼆维数组不能赋值满意答案
tegg12
推荐于 2017.06.06
怎么给数组赋值采纳率:51%    等级:9
已帮助:4213⼈
没有所谓的“三维数组”。
只有这种
reg [7:0] mem [0:255];
initial的时候可以做到初始化,但仅限于仿真,initial是不回可综合的答。
integer k;
initial begin
for(k=0;k<256;k=k+1) begin mem[k] = 8'h55; end
end
如果是要求可以综合的电路的话,可以这样(addr和wr_en,rd_en你⾃⼰定义吧。):
integer k2;
reg [7:0] dout;
always @(posedge clk or negedge rst_n) begin
if(~rst_n) for(k=0;k<256;k=k+1) begin mem[k] = 8'h55; end
else if(wr_en) mem[addr] <= din;
end
always @(posedge clk or negedge rst_n) begin
if(~rst_n) dout <= 8'h0;
else if(rd_en) dout <= mem[addr];
end
00分享举报

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。