我正在尝试使用以下凿子为具有同步读取的内存生成verilog
val my_mem = Mem(Bits(width=64), 4096, seqRead=true)
val read_data = Reg(Bits(width=64))
when(io.re) {
read_data := my_mem(io.addr)
}
io.ret_data := read_data
但是,这会生成带有此的verilog
wire[63:0] T1;
reg [63:0] read_data;
assign T1 = my_mem[io_addr];
always @(posedge clk) begin
if(io_re) begin
read_data <= T1;
end
为了让凿子生成在 always 块内读取内存的verilog,我做错了什么?