Xilinx Kintex-7系列XC7K410T-FFG900外设之DDR3硬件设计

引言:基于K7+C665x为核心的电路板中用到了DDR3存储芯片,现将FPGA外接DDR3时硬件设计中的一些心得做一个简单的分享。

1. DDR3与K7-410T互联设计

在数据速率带宽约束方面,DDR3运行速度受限于其与K7-410T FPGA互联的I/O Bank 管脚以及FPGA器件的速度等级。如下表所示,当FPGA选定时,如需DDR3运行最大工作频率时,需要将DDR3互联至FPGA的HP I/O Bank上,同时也要将Vccaux_io的供电电压调整为2.0V。

表1、FPGA I/O支持DDR3外设最大接口数据速率

图片

DDR3本身可以互联至普通的HR I/O Bank上,但是速度性能是下降的,通常在互联时会将DDR3互联至HP I/O Bank上,以保证器件性能发挥至最佳。

2. DDR3与K7-410T原理图设计

在确定好将DDR3连接至HP Bank上后,在具体原理图设计时,可以在Xilinx官网下载一份Pinout资料,如下图所示(其他器件下载链接点击:https://www.xilinx.com/support/package-pinout-files.html)。

图片

图1:FPGA Pintout下载

在下载的pinout.csv文件中,可以方便的查看IO所在的存储器Byte组,Bank以及I/O类型等,如下图所示。图中存储器Byte一个Bank内按照T0、T1、T2、T3划分,除了DQS,同一一个Tx组内的DQ IO是可以互换的。

图片

图2:FPGA Pintout文件内容

在绘制原理图时,可以先按照Byte组来进行IO放置,最终IO的放置,还要根据PCB工程师布线的便利性,在同一个Tx组内进行调整。有两点需要注意的:1)DDR3管脚IO的分配强烈建议通过Vivado软件例化DDR3 IP核验证FPGA IO分配的正确性!2)如果DDR3所在的BANK上有其他外设IO,也要一起验证IO,确保满足IO bank电平兼容性。

DDR3的 CLK_P/CLK_N时钟建议放置在FPGA芯片_SRCC或者_MRCC专用时钟管脚上,以保证时钟最佳性能。DDR3地址信号及控制信号放在DQ临近的HP Bank上即可。本设计中,DDR3 DQ数据组放置在HP Bank32上,时钟、地址及控制信号放置在HP Bank33上。如下图所示。

图片

图3:FPGA DDR3 DQ数据组

图片

图4:FPGA DDR3 时钟、地址及控制组

图片

图5:DDR3 原理图设计

3. DDR3与K7-410T 互联PCB版图设计

关于DDR3的PCB设计,需要遵循一些设计规则,主要包括PCB层叠设计、DDR3布局(含阻容器件)、走线阻抗约束、等长处理等。

这个项目中设计采用:XC7K410T-FFG900,FPGA外挂两片4Gbit,DDR3:MT41K256M16HA-107IT。PCB采用Fly-by布线,数据总位宽32bit,共用地址、控制、时钟。FPGA及外设DDR3走线如下图所示。

图片

图6:整体布线

图片

图7:数据组1

图片

图8:数据组2

图片

图9:地址/控制组1

图片

图10:地址/控制组2

图片

图11:地址/控制组3

DDR3布线相对不复杂,有几点要注意:
      1)PCB布局要合理,滤波电容放置要合理,便于PCB走线;

2)PCB走线需要进行阻抗控制;

3)PCB层叠可以自己设计或者让PCB制版厂提供,根据自己的阻抗,线宽,BGA间距等要求;

4)VREF参考电压走线要≥20mil;

5)DQ/DQS/DM信号组要有完整的参考电源层,控制线、地址线、时钟线也应一样,避免跨参考分割带来信号完整性问题。

对于DDR3 PCB详细设计规则及软件设计,在之前的博文中有描述,感兴趣的可以点击下面链接详细了解。

1)Artix-7 and Spartan-7 FPGAs DDR2/DDR3 PCB设计指导

2)Xilinx Virtex-6/Spartan-6 FPGA DDR3信号完整性分析和PCB布局指南

3)Xilinx 7系列FPGA DDR3硬件设计规则

4)Xilinx FPGA DDR3设计(一)DDR3基础扫盲

5)Xilinx FPGA DDR3设计(二)时钟介绍

6)Xilinx FPGA DDR3设计(三)DDR3 IP核详解及读写测试

图片

更多内容欢迎关注FPGA技术实战公众号!

  • 21
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FPGA技术实战

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值