MIG2.0
�/p>
Xilinx
内嵌åœ?/p>
ISE
中用来生成各ç§?/p>
IP
核的软件工具,可以用它来直接生成
DDR2
控制器设计模块,模块包含可自由修改的
HDL
源代码和约束文件。用户可以在
MIG
çš?/p>
GUI
图形界面根据所选的存储器件选择对应模板、总线宽度和速度级别,并设置
CAS
å»?/p>
迟、突发长度、引脚分配等关键参数。如果所选器件与
MIG
所列模板不相符,可在代码生
成后灵活修改这些代码ã€?/p>
DDR2
SDRAM
控制器参考设计主要包含四个模块:
Infrastructure
module(
基础模块
)
�/p>
Data_Path module(
数据通道模块
)
�/p>
Controller module
(控制模块)
å’?/p>
IOBs module
(输入输å‡?/p>
接口模块ï¼?/p>
�/p>
Infrastructure module
产生控制器工作的时钟和复位信号,时钟信号由内部的
DCM
(时
钟管理单元)
对外部输入的时钟倍频产生ï¼?/p>
模块还包含一个延迟校准监视器ï¼?/p>
用来校准读数
据选通脉冲(
DQS
)对读数据(
DQ
)的延迟,使读数据选通脉冲边沿正确对é½?/p>
DQ
有效çª?/p>
口的中间位置,以便正确锁存读数据ã€?/p>
Data_Path module
负责传输数据,在写操作时将写数据传送给
DDR2 SDRAM
;在读操
作时å°?/p>
DDR2
发送过来的数据寄存并同步到系统时钟去ã€?/p>
Controller module
负责
DDR2 SDRAM
的上电初始化,在初始化后接收用户的指令并å°?/p>
其译码产生读写和相关的控制信号,
此外控制器也为其他模块提供控制信号以辅助这些模块
完成其功能ã€?/p>
控制器所有的输入
/
输出信号都在
IOBs
module
中被接收或者发送,而所有地址和控åˆ?/p>
信号åœ?/p>
IOB
中都用触发器打一拍后再被送出,以最大限度的满足
DDR2
SDRAM
的建立和
保持时间ã€?/p>
用户接口信号
信号名称
方向
描述
reset_in
I
系统复位
user_input_data[31:0]
I
写数据,
DQS
的上升沿传送写数据的高
16
位,
DQS
的下降沿传送写数据的低
16
ä½?/p>
user_data_mask[3:0]
I
写数据的数据屏蔽位,
é«?/p>
2
位负责上升沿数据的屏蔽,
ä½?/p>
2
位负责下降沿数据的屏è”?/p>
user_output_data[31:0]
O
读出数据
user_data_valid
I
为â€?/p>
1
’时代表读出数据有效
user_input_address[22:0]
I
行列地址,行地址在高位,列地址在低ä½?/p>
user_bank_address[1:0]
I
DDR2 SDRAM
çš?/p>
bank
地址