|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
就是这样的一个模型,我是要实现一个能用的接口和计算模块。
但是听说真实的存储器access latency和delay都是更复杂,我就怕设计来设计去,综合后的电路无法和真正SRAM的读写时许匹配。。。
请问如下的简单模型能用吗?
module SRAM (Address, Data, CS, WE, OE);
parameter AddressSize = 12;
parameter WordSize = 8;
input [AddressSize-1:0] Address;
inout [WordSize-1:0] Data;
input CS, WE, OE;
integer i;
reg [WordSize-1:0] Mem [0:1<<AddressSize];
initial
begin
$readmemb("C:/Users/Administrator/Desktop/sram.txt", Mem);
for(i=0;i<8;i=i+1)
$display("Mem=%b",Mem[i]);
end
assign Data = (!CS && !OE) ? Mem[Address] : {WordSize{1'bz}} ; // Very important, don't forget this "z"
always @(CS or WE)
if (!CS && !WE) // CS, WE, OE are all active low
Mem[Address] = Data;
always @(WE or OE)
if (!WE && !OE)
$display("Operational error in RamChip: OE and WE both active");
endmodule |
|