没有合适的资源?快使用搜索试试~ 我知道了~
(练习实验 3)数据存储器(用时钟)设计实验1
需积分: 0 0 下载量 78 浏览量
2022-08-03
13:12:07
上传
评论
收藏 85KB PDF 举报
温馨提示
试读
3页
1、项目名:RAM 2、代码文件内容,如下: 3、测试文件内容,如下: 4、相关波形
资源详情
资源评论
资源推荐
数据存储器设计实验
(练习实验三)
设计一个数据存储器,其存储单元为 8 位二进制数长度,由时钟边沿触发写。
1、项目名:RAM
2、代码文件内容,如下:
module RAM(
input clk,
input [31:0] address,
input [31:0] writeData, // [31:24], [23:16], [15:8], [7:0]
input nRD, // 为 0,正常读;为 1,输出高组态
input nWR, // 为 0,写;为 1,无操作
output [31:0] Dataout
);
reg [7:0] ram [0:60]; //存储器
// 读
assign Dataout[7:0] = (nRD==0)?ram[address + 3]:8'bz; // z 为高阻态
assign Dataout[15:8] = (nRD==0)?ram[address + 2]:8'bz;
assign Dataout[23:16] = (nRD==0)?ram[address + 1]:8'bz;
assign Dataout[31:24] = (nRD==0)?ram[address ]:8'bz;
// 写
always@( negedge clk ) begin
if( nWR==0 ) begin
ram[address] <= writeData[31:24];
ram[address+1] <= writeData[23:16];
ram[address+2] <= writeData[15:8];
ram[address+3] <= writeData[7:0];
end
end
endmodule
3、测试文件内容,如下:
module RAM_sim;
// input
reg clk;
reg [31:0] address;
reg [31:0] writeData;
忧伤的石一
- 粉丝: 26
- 资源: 332
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0