kintex/kintex Ultrascale DDR3 设计注意事项

kintex 系列

1. 参考手册ug586;

2.FPGA DDR3内部走线本身有偏移,需要通过PCB走线来补偿,参考ug586 page196;

   For example, to obtain the package delay information for the 7 series FPGA,XC7K160T-FF676, this command should be issued:
        link_design -part xc7k160tfbg676
        write_csv flight_time

These rules indicate the maximum electrical delays between DDR3 SDRAM signals:
• The maximum electrical delay between any DQ or DM and its associated DQS/DQS# mustbe ≤ ±5 ps.

The maximum electrical delay between any address and control signals and thecorresponding CK/CK# must be ≤ ±25 ps, with 8 ps being the optimal target.

• CK/CK# signals must arrive at each memory device after the DQS/DQS# signals. The skew allowed between CK/CK# and DQS/DQS# must be bounded between 0 and
1,600 ps. The recommended skew between CK/CK# and DQS/DQS# is 150 ps to 1,600 ps for components/UDIMMs and for RDIMMs it is 450 ps to 750 ps. For DIMM
modules, the total CK/CK# and DQS/DQS# propagation delays from the FPGA to the memory components on the DIMM must be accounted for when designing to this requirement.

• CK/CK# must arrive after DQS/DQS# at each memory component to ensure calibration
can align DQS/DQS# to the correct CK/CK# clock cycle. Write Calibration failures are  seen if this specification is violated.


The specified DQ to DQS skew limit can be increased if the memory interface is not operated at the maximum frequency. Table 1-67 indicates the relaxed skew limit (±) for these cases.The vertical axis is the bit rate in Mb/s. The first column is the FPGA maximum rate, check the data sheet to determine this maximum rate. The second column is the actual speed the memory system is operating at. The horizontal axis is the DDR3 SDRAM component speed rating.


3.输入时钟先经过 ibufds,建议加一级 bufg;


4. Internal V REF Selection – Internal V REF can be used for data group bytes to allow the
use of the V REF pins for normal I/O usage. Internal V REF should only be used for data
rates of 800 Mb/s or below.


---  如果速率高达1600Mb/s   VREF一定要比较干净,只连接FPGA DDR3 Vref

---  DQ\DQS相关的BANK不需要外接的Vref(DDR3 SDRAM颗粒输出不需要),ADDR等控制信号BANK需要接VrefDDR3 SDRAM颗粒输入需要)



5.输入时钟必须与DDR bank在同一列,最好分配在address/control bank


6.VCCAUX_IO_G# (Kintex-7 and Virtex-7)低速模式支持1.8V或者2.0V,高速模式必须2.0V,建议直接连接2.0V 保险;


7. DDR3 SDRAM效率较好的情况大概能做到80%-90%之间,从以下几点考虑提供效率

1.尽量较少bank切换;  2.Burst长度尽量增到最大值;3.尽量减少读写切换次数;4.一次burst 不要跨行 

1. Activation time and Precharge time when changing to new banks/rows or changing rows with in the same bank.- Soif you reduce row change, this can remove tRCD and tRP.

2. Send continuous write or read commands -Maintaining tCCD timing.

3. Minimize write to read and read to write command changeover - Write recovery time to change to read accesses,bus turnaround time to change from read to write

4. Set a proper refresh interval.   参考:AR# 63234



kintex Ultrascale 系列

1. kintex Ultrascale 支持DDR3/DDR4 SDRAM

2.PCB部分主要参考 ug583-ultrascale-pcb-design.pdf

3.PCB走线主要关注FPGA晶源到SDRAM颗粒走线等长,

4.SDRAM颗粒内部走线延迟差值没有明确数据,以DDR速度等级来区分,比如下表Table A-1 Memory Component 2133 Mb/s

5.Kintex ultrascale FPGA 封装比较大,晶原到管脚走线差距较大,project Maneger -> Open Synthesized ->I/O Planing ->I/O界面右键export I/O Port 如下图一

图一:获取FPGA内部管脚到晶原走线延迟(单位ps) 图二:FPGA运行速率与PCB走线等长要求

6.如果系统时钟从其他bank输入,添加CLOCK_DEDICATED_ROUTE约束 参考ch.11 clock TXPLL

If the MMCM is driven by the GCIO pin of the other bank, then the
CLOCK_DEDICATED_ROUTE constraint with value "BACKBONE" must be set on the net that
is driving MMCM or on the MMCM input. Setting up the CLOCK_DEDICATED_ROUTE
constraint on the net is preferred. But when the same net is driving two MMCMs, the
CLOCK_DEDICATED_ROUTE constraint must be managed by considering which MMCM
needs the BACKBONE route.
In such cases, the CLOCK_DEDICATED_ROUTE constraint can be set on the MMCM input. To
use the "BACKBONE" route, any clock buffer that exists in the same CMT tile as the GCIO
must exist between the GCIO and MMCM input. The clock buffers that exists in the I/O CMT
are BUFG, BUFGCE, BUFGCTRL, and BUFGCE_DIV. So LPDDR3 SDRAM instantiates BUFG
between the GCIO and MMCM when the GCIO pins and MMCM are not in the same bank
(see Figure 11-1).
If the GCIO pin and MMCM are allocated in different banks, LPDDR3 SDRAM generates
CLOCK_DEDICATED_ROUTE constraints with value as "BACKBONE." If the GCIO pin and
MMCM are allocated in the same bank, there is no need to set any constraints on the
MMCM input.
Similarly when designs are generated with System Clock Configuration as a No Buffer
option, you must take care of the "BACKBONE" constraint and the BUFG/BUFGCE/
BUFGCTRL/BUFGCE_DIV between GCIO and MMCM if GCIO pin and MMCM are allocated in
different banks. LPDDR3 SDRAM does not generate clock constraints in the XDC file for No
Buffer configurations and you must take care of the clock constraints for No Buffer
configurations. For more information on clocking, see the UltraScale Architecture Clocking
Resources User Guide (UG572) [Ref 8].
XDC syntax for CLOCK_DEDICATED_ROUTE constraint is given here:
For LPDDR3:
set_property CLOCK_DEDICATED_ROUTE BACKBONE [get_pins -hier -filter {NAME =~ */
u_ddr_infrastructure/gen_mmcme*.u_mmcme_adv_inst/CLKIN1}]





DDR3(Double Data Rate 3)是一种内存标准,用于计算机系统中的随机存取存储器(RAM)。FPGA(Field-Programmable Gate Array)是一种可编程逻辑器件,可以根据设计者的需求进行定制和重新配置。 在设计DDR3与FPGA硬件电路时,需要考虑以下几个方面: 1. DDR3接口电路设计DDR3具有复杂的接口电路要求,包括时钟、地址、数据和控制信号等。设计者需要根据DDR3规格手册提供的电路设计指导,实现正确和稳定的信号传输。 2. 时序和时钟管理:DDR3对时序和时钟要求非常严格,需要精确控制数据的传输速率和延迟。设计者需要使用FPGA内部的时钟管理模块来生成和管理时钟信号,并确保DDR3接口与FPGA内部逻辑的时序兼容。 3. 信号完整性和噪声抑制:DDR3接口对信号完整性要求高,需要采取一系列措施来抑制噪声、提高信号质量,如使用终端电阻、布线规划、屏蔽和电源滤波等。 4. 控制器设计DDR3与FPGA之间需要一个控制器来管理数据的读写操作。设计者需要实现控制器的状态机、数据缓存和错误检测纠正等功能,并与DDR3接口电路进行适配。 5. 性能优化和调试:在设计完成后,需要对DDR3与FPGA硬件电路进行性能优化和调试。通过对时序和延迟进行调整,可以提高数据传输速率和稳定性。 需要注意的是,DDR3与FPGA硬件电路设计是一项复杂的任务,需要具备一定的电路设计和FPGA开发经验。在设计过程中,可以借助一些EDA(Electronic Design Automation)工具和仿真器来辅助完成设计和验证工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值