- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
!!!分散RAM
非同期読み出し同期書き込みのメモリ
FPGA内のフリップフロップを用いて実装される.
FPGAのスライスにあるフリップフロップに実装される.
module dram(clk, load1, load2, addr1, addr2, d1, d2, q1, q2);
parameter DWIDTH=16,AWIDTH=4,WORDS=16;
input clk,load1,load2;
input [AWIDTH-1:0] addr1,addr2;
input [DWIDTH-1:0] d1,d2;
output [DWIDTH-1:0] q1,q2;
reg [DWIDTH-1:0] mem [WORDS-1:0];
always @(posedge clk)
begin
if(load1) mem[addr1] <= d1;
if(load2) mem[addr2] <= d2;
end
assign q1 = mem[addr1];
assign q2 = mem[addr2];
endmodule