verilog 中实现 sram 代码
目次[*]verilog/systemverilog中sram的实现
[*]sram的基本知识
[*]verilog/systemverilog中sram的实现
[*]单口SSRAM(同步SRAM)
[*]单时钟简双口SSRAM(同步SRAM)
[*]单时钟真双口SSRAM(同步SRAM)
[*]双时钟简双口SSRAM(同步SRAM)
[*]双时钟真双口SSRAM(同步SRAM)
[*]多bank SRAM
verilog/systemverilog中sram的实现
sram的基本知识
SRAM 即静态随机存取存储器,它是随机存取存储器的一种。所谓的“静态”,是指这种存储器只要保持通电,里面储存的数据就可以一直保持。
在IC设计中,常用SRAM在各个block中实现存储单元,用这些存储单元来缓存数据,交换数据,从而实现block的功能。
verilog/systemverilog中sram的实现
在verilog中,我们可以用变量数组来描述sram,一般每一bit都将综合成一个触发器。好比下面的代码,将界说一个宽度为8,深度为256的sram。
logic sram
根据读写控制的不同,我们可以把sram的实现分类为,单口sram,单时钟简双口sram,单时钟真双口sram,双时钟简双口sram,双时钟真双口sram,下面分别来学习这几种sram的verilog实现。
单口SSRAM(同步SRAM)
下面是同步先读模式的单口SRAM代码,如果we=1,会并行读写ram中的值,所以这时qout中保存的是写之前的值。
文件名称 code4_18.v
`timescale 1ns/1psmodule TestMem; logic clk = 1'b0; initial begin $display("start a clock pulse"); $dumpfile("testmem.vcd"); $dumpvars(0, TestMem); #300 $finish; end always begin #5 clk = ~clk; end logic a=0,d=0,q; logicwe=0; initial begin #10 we
页:
[1]