双口RAM的verilog描述
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
双口RAM的verilog描述
分类:数字电路
* RAM的verilog描述如下:
module ram(din,ain,dout,aout,rd,wr);//这是一个双口RAM,分别有:
//输入端:输入地址ain;输入数据din;上升沿有效的写信号wr;
//输出端:输出地址aout;输出数据dout;高电平有效的读信号rd;
inout [7:0] din;
input [7:0] ain,aout;
input rd,wr;
output [7:0] dout;
reg [7:0] memory [0:255]; //请注意这是存储阵列的描述方法,描述了一个共有2 56个字的存储阵列,
//每个字是8位
assign dout = rd ? memory[aout] : 8'bz; //"assign"关键字表示并行赋值语句的
开始
//"?"运算符的作用和在C语言中一样
//"?"运算符的作用和在C语言中一样
//"8'bz"是一个常量,表示一个字节的高阻态,其中
//8表示长度是8bit,"'"是固定分割符,"b"表示后面的数据是以比特形式给出的, //"z"表示高阻;
//举例:4'ha表示长4bit的数"1010"
//类似的还可举出5'b10111,6'o33等等
always @(posedge wr)
memory[ain] = din;
endmodule