DDR3约束规则与IP核时钟需求

描述

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_NCAS_NWE_NCS_NODT等)。

当系统时钟推荐放置在地址控制IO BANK内,并且应当放置在SRCCMRCCDQS等位置上,当存在多个时钟CK时应该将其放置在同一字节区域内

单个DDR接口不允许使用超过3个IO BANK,并且当使用3个BANK时,地址控制部分必须在中间BANK的位置,且不允许跨BANK分布。

VRN/VRP一般用作数控阻抗DCI,但是特殊情况下也可以用作地址控制管脚。

为了减小PCB设计复杂性,通常PCB布线时需要换pin以方便走线,减小布线交叉的情况,布线时允许换pin的原则有:

1、数据部分字节区域内部可以任意换pin(除DQS专用引脚)

2、数据部分字节区域之间可以任意互换

3、地址控制部分可以在对应bank 内任意字节区域之内或者之间进行换pin,但是要保证CK信号放在srccmrccdqs等pn对上。

3、利用VIVADO辅助原理图设计

使用vivado IPCORE进行设置时可以看到比较典型的64位DDR3的引脚分配。

 

Xilinx

 

具体到管脚上的分配可以查看IP CORE的XDC约束文件看到,根据约束去辅助原理图设计,保证设计可用性。

 

Xilinx

 

3、DDR3 IP核时钟需求

首先了解DDR的工作时钟和内核时钟与数据速率的关系。下图可知工作时钟=数据速率/2,(因为DDR在时钟上下降沿都采样数据),内核时钟=数据速率/8(数据预取bit为8),因此工作时钟和内核时钟之间的关系就是4:1的关系,如果是数据速率为1600M的DDR3,工作时钟应该是800M,用户时钟为200M,同时系统还需要一个200M固定参考时钟用于延时调整,这几个时钟通常利用输入系统参考时钟(外部晶振参考时钟或者内部PLL输出时钟)经过DDR内部PLL锁出工作时钟、用户时钟、参考时钟。

 

Xilinx

 

原文标题:XILINX 7series FPGA挂载DDR3之引脚约束

文章出处:【微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分