... | ... | @@ -142,7 +142,7 @@ RAM の初期化は、モジュール内に次の記述をすることで行う |
|
|
|
|
|
## ROM の記述
|
|
|
|
|
|
ROM の場合も、write 線がないだけで RAM と同様です。すなわち、読み出しタイミングを同期すれば ブロックRAM で構成されます。
|
|
|
ROM の場合も、write 線がないだけで RAM と同様です。すなわち、読み出しのタイミングを同期すれば ブロックRAM で構成されます。
|
|
|
|
|
|
```verilog
|
|
|
module rom(clk, r_addr, r_data);
|
... | ... | @@ -151,7 +151,7 @@ ROM の場合も、write 線がないだけで RAM と同様です。すなわ |
|
|
output reg [31:0] r_data;
|
|
|
reg [31:0] mem [0:31]
|
|
|
always @(posedge clk) begin
|
|
|
r_data <= mem[r_addr]; // 読み出しタイミングを同期
|
|
|
r_data <= mem[r_addr]; // 読み出しのタイミングを同期
|
|
|
end
|
|
|
endmodule
|
|
|
``` |