1、前言
FPGA端挂载DDR时,对FPGA引脚的约束和选择并不是随意的,有一定的约束规则,一般可以通过利用vivado工具中的pin assignment去选择合适的位置辅助原理图设计。
2、DDR3约束规则
XILINX 7series FPGA支持高性能存储接口,对于DDR来说分为数据(DQ,DQS,DM)和控制(地址和控制信号)两类引脚,在和FPGA互联时,DDR数据部分以字节组为单位,即每8个数据线和对应的DQS和DM数据掩码作为一组,对于64位DDR来说就有8个字节组。DDR控制部分不分组,可以任意接在同一的IO BANK内,但不能跨BANK放置。
FPGA的IO BANK有50 pins,划分为4个区域(4*12)和2个VRN/VRP管脚,DDR字节组(8DQ+2DQS+1DM)需要放在FPGA bank 区域(12 pins)里,同一个区域内除了DQS需要接在DQS位置,其余管脚可以在区域内任意换位置,区域里多余的管脚可以用于接其他控制信号(除RAS_N\CAS_N\WE_N\CS_N\ODT等)。
当系统时钟推荐放置在地址\控制IO BANK内,并且应当放置在SRCC\MRCC\DQS等位置上,当存在多个时钟CK时应该将其放置在同一字节区域内
单个DDR接口不允许使用超过3个IO BANK,并且当使用3个BANK时,地址\控制部分必须在中间BANK的位置,且不允许跨BANK分布。
VRN/VRP一般用作数控阻抗DCI,但是特殊情况下也可以用作地址\控制管脚。
为了减小P