本资源包含SDRAM读写FPGA控制的Verilog代码与Modelsim仿真文件,适用于Quartus 9.1平台。内附详细的设计说明文档,帮助理解实验原理和操作步骤。
SDRAM读写FPGA控制实现与Modelsim仿真verilog设计实验Quartus9.1工程源码+设计说明文件可以作为你的学习实验参考。
以下是模块定义:
```verilog
module sdr_sdram(
input CLK, // 系统时钟信号
input RESET_N, // 系统复位信号
input [`ASIZE-1:0] ADDR, // 控制器请求地址
input [2:0] CMD, // 控制器命令输入
output CMDACK, // 命令确认输出
input [`DSIZE-1:0] DATAIN, // 数据输入信号
output [`DSIZE-1:0] DATAOUT, // 数据输出信号
output [11:0] SA, // SDRAM地址输出
output [1:0] BA, // SDRAM银行地址
output CS_N, // SDRAM片选信号
output CKE, // SDRAM时钟使能信号
output RAS_N, // SDRAM行地址选择信号
output CAS_N, // SDRAM列地址选择信号
output WE_N, // SDRAM写使能信号
inout [`DSIZE-1:0] DQ // SDRAM数据总线
);
```
`include params.v
```verilog
input CLK; // 系统时钟输入
input RESET_N; // 复位信号(低电平有效)
input [ADDR_WIDTH-1:0] ADDR; // 地址端口,用于控制器请求地址
input CMD[2:0]; // 控制器命令信号
output CMDACK; // 命令确认输出信号
input DATAIN[`DSIZE-1:0]; // 数据输入端口
output DATAOUT [`DSIZE-1:0]; // 数据输出端口
output SA [ADDR_WIDTH_SDRAM - 1 : 0]; // SDRAM地址输出
output BA [2:0]; // 银行选择信号,用于指定SDRAM中不同的银行。
output CS_N; // 芯片使能信号(低电平有效)
output CKE; // 时钟使能信号,控制是否启用SDDRAM的内部时钟
output RAS_N; // 行地址选通信号 (低电平有效)
output CAS_N; // 列地址选通信号 (低电平有效)
output WE_N; // 写使能信号(低电平有效)
inout DQ [DATA_WIDTH_SDRAM - 1 : 0]; // SDRAM数据总线,双向信号
```