Xilinx FPGA DDR4 接口的 PCB 准则

目录

1. 简介

1.1 FPGA-MIG 与 DDR4 介绍

1.2 DDR4 信号介绍

1.2.1 Clock Signals

1.2.2 Address and Command Signals

1.2.3 Address and Command Signals

1.2.4 Data Signals

1.2.5 Other Signals

2. 通用存储器布线准则

3. Xilinx FPGA-MIG 的 PCB 准则

3.1 引脚交换

3.1.1 Bank/Byte Planner

3.1.2 Signal Group

3.1.3 自动分配信号组

3.2 《UG575》Pinouts

3.2.1 FFVB676 Bank Diagram

3.2.2 Multi−Function I/O Pins

3.2.3 Pinout Files

3.3 布线准则

3.3.1 Fly-by(飞跃式)

3.3.2 Clamshell(贝壳式)

4. 总结

5. 参考资料


1. 简介

1.1 FPGA-MIG 与 DDR4 介绍

DDR4

DDR 的全称是 DDR SDRAM(Double Data Rate Synchronous Dynamic Random Access Memory),即双倍数据传输率的同步动态随机存取存储器

  • DDR - 即双倍的意思。DDR 内存采用了双倍数据传输率的技术,即在每个时钟周期内可以传输两次数据,相比于传统的 SDRAM,DDR 内存的数据传输速度是提升了一倍的。
  • Synchronous - 表示内存与系统时钟同步工作,数据传输在时钟的控制下进行。
  • Dynamic - 表示内存是动态随机存取存储器,需要定期刷新以保持数据的存储状态。与之相对的是静态存储器(SRAM),SRAM 速度更快、功耗更高,但相对稳定且不需要定期刷新。
  • RAM - 随机存取存储器,其对立面是 Sequential Access Memory(顺序存取存储器),包括:磁带、光盘、磁盘。

FPGA-MIG

Memory Controller - 控制器接受来自用户接口的突发事务,并生成与 SDRAM 之间的事务。控制器负责处理 SDRAM 的时序参数和刷新。它合并写入和读取事务,以减少在转换总线时涉及的死周期数量。控制器还重新排序命令,以改善数据总线到SDRAM的利用率。

Physical Layer - 物理层为 SDRAM 提供高速接口。该层包括 FPGA 内的硬块和软件块校准逻辑,以确保硬块与 SDRAM 接口的时序最佳。

Application Interface - 用户接口层为应用程序提供类似 FIFO 的简单接口。数据被缓冲,读取的数据按照请求顺序呈现。

1.2 DDR4 信号介绍

1.2.1 Clock Signals

ck_t, ck_c - 差分时钟

1.2.2 Address and Command Signals

a[17,13:0] - 地址输入

ras_n/a[16] - 行地址选通,地址位 16

cas_n/a[15] - 列地址选通,地址位 15

we_n/a[14] - 写入使能,地址位 14

bg[1:0] - Bank 组输入

ba[1:0] - Bank 地址输入

act_n - Activation command input(激活命令输入)

par - Command and address parity input(命令和地址奇偶校验输入)

1.2.3 Address and Command Signals

cke - 时钟使能

cs_n[3:0] - 芯片选择

odt - On-die termination enable

reset_n

1.2.4 Data Signals

dq[79:0] - 数据输入/输出

dqs_t/dqs_c[9:0] - Data strobe (differential),数据选通 (差分)

dm_n/dbi_n - Data mask and data bus inversion(数据掩码和数据总线反转)

1.2.5 Other Signals

TEN - Test connectivity mode. CMOS level. Connect 500Ω resistor to ground at memory devices。测试连接模式。 CMOS 级别。将 500Ω 电阻连接到位于存储器器件处的接地。

alert_n

VRP (PL) - 240Ω to GND

ZQ (PS) - 240Ω to GND

2. 通用存储器布线准则

1. 判定信号走线长度时,请在布线约束内包含封装延迟。如可设置封装延迟的最小值和最大值,请使用最小值与最大值之间的中段值。

2. 总线内的最短信号和最长信号必须在列示的规范范围内。

3. 总线中最长地址信号与最短地址之间的延迟之差不得超过 2ps。

4. DDR4 组件接口的 CK 到 DQS 规范范围很大。目的是为了确保在所有存储器器件上从器件链的首个器件到最后一个器件间实现适当的写平衡。

5. 对于飞越式布线,可将地址信号、命令信号和控制信号布线于不同层级上,但建议尽可能少用此方法。请勿将任一信号布线在 2 个以上层级上,这样可最大限度减少可能导致串扰问题的感应环路。任何跨信号层的过孔都需在50 mil 周边范围存储器在 1 个接地过孔。

3. Xilinx FPGA-MIG 的 PCB 准则

3.1 引脚交换

3.1.1 Bank/Byte Planner

如果设计中存在 UltraScale 架构的 Memory IP,则包含启动内存 Bank/Byte 规划工具。

Memory Bank/Byte Planner 

3.1.2 Signal Group

点击 Show Signal Group 按钮,以在 Signal Groups 对话框中显示每个 Memory IP 的信号组列表。

Signal Group 显示当前配置的 DDR 所有的信号线。

3.1.3 自动分配信号组

 

3.2 《UG575》Pinouts

《UltraScale(+) FPGAs Packaging and Pinouts Product Specification UG (UG575)》

3.2.1 FFVB676 Bank Diagram

FFVB676 (XCKU3P and XCKU5P) 

3.2.2 Multi−Function I/O Pins

3.2.3 Pinout Files

UltraScale and UltraScale+ Package Device Pinout Filesicon-default.png?t=N7T8https://www.xilinx.com/support/package-pinout-files/ultrascale-pkgs.html

命名规则:

# 差分
IO_L[1-24][P/N]_T[0-3 ] [U/L]_N[0-12]_ [multi-function]_[bank number]# 单端
IO_T[0-3 ][U/L]_N[0-12]_[multi-function]_[bank number]
  • 大多数用户 I/O 引脚都支持差分信号并且可以成对实现。 
  • IO表示用户I/O引脚。
  • L[1-24] 表示 I/O 引脚是差分对。没有L表示 I/O 引脚是单端的。
  • T[0-3][U/L] 表示为引脚分配的字节组和该组内的半字节位置(上部或下部)。
  • N[0-12] 其字节组内 I/O 的数量。
  • [multi-function] 表示该引脚可以提供的其他功能。
  • [bank number] 表示为用户 I/O 引脚分配的 Bank。

AD[0-15][P/N]

系统监视器差分辅助模拟输入0-15。

GC or HDGC

每个组中有四个全局时钟 (GC) 引脚对。 HDGC 引脚可以直接访问全局时钟缓冲区。 GC 引脚可以直接访问位于同一 I/O Bank 的时钟管理块 (CMT) 中的全局时钟缓冲器、MMCM 和 PLL。 GC 和 HDGC 输入提供对内部全局和区域时钟资源的专用高速访问。 GC 和 HDGC 输入使用专用路由,并且必须用于时钟输入,其中各种时钟功能的时序是必需的。 GC 或 HDGC 引脚在不用作输入时钟时可被视为用户 I/O。

DBC or QBC

字节通道时钟(DBC 和 QBC)输入引脚对是直接将源同步时钟驱动到 I/O Bank 中位片的时钟输入。在内存应用中,这些也称为 DQS。

PERSTN[0-1]

PCI Express 集成块的默认复位引脚位置。

3.3 布线准则

3.3.1 Fly-by(飞跃式)

飞越式拓扑是将所有存储器器件都包含在单一层级内,通常采用直插方式,布线更便于且提供最佳信号完整性,但可能占用较多开发板空间。

 

3.3.2 Clamshell(贝壳式)

贝壳拓扑具有开发板占用空间更小等优势,但存储器器件封装管脚位置不对称可能导致布线拥挤,增加串扰风险,因为接地回路过孔少且走线更长。 

4. 总结

本文档提供了关于FPGA-MIG和DDR4内存的详细介绍,包括其工作原理、关键信号、以及与之相关的PCB设计准则。DDR4作为目前广泛使用的内存技术,其特点包括高速数据传输和同步工作机制,而FPGA-MIG则为这些内存提供了高效的控制和接口,确保数据传输的稳定性和高效性。文档还详细讨论了DDR4的信号类型,包括时钟信号、地址和命令信号以及数据信号等,这对于理解DDR4的工作机制至关重要。在PCB设计方面,本文档提供了关于如何布线和引脚分配的准则,旨在帮助设计师优化内存与FPGA之间的连接,以及提高整体系统的性能和可靠性。通过遵循这些准则,可以在设计高性能电子系统时,确保内存接口的稳定性和效率。

5. 参考资料

1. UG583 - 《UltraScale 架构 PCB 设计》

UltraScale Architecture PCB Design User Guide (UG583)icon-default.png?t=N7T8https://docs.amd.com/r/en-US/ug583-ultrascale-pcb-design/UltraScale-Architecture-PCB-Design-User-Guide

2. PG150 - 《基于UltraScale架构的FPGA存储IP产品指南》

UltraScale Architecture-Based FPGAs Memory IP Product Guide (PG150)icon-default.png?t=N7T8https://docs.amd.com/v/u/en-US/pg150-ultrascale-memory-ip3.  UG899 -《I/O 和时钟规划》

Vivado Design Suite User Guide: I/O and Clock Planning (UG899)icon-default.png?t=N7T8https://docs.amd.com/r/en-US/ug899-vivado-io-clock-planning/Introduction4. UG575 - 《Packaging and Pinouts》

Us(+) FPGAs Packaging and Pinouts Product Specification UG (UG575)icon-default.png?t=N7T8https://0x04.net/~mwk/xidocs/ug/ug575-ultrascale-pkg-pinout.pdf5. UG571 - 《UltraScale Architecture SelectIO Resources》

UltraScale Architecture SelectIO Resources User Guide (UG571)icon-default.png?t=N7T8https://docs.amd.com/r/en-US/ug571-ultrascale-selectio/I/O-Tile-Overview

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/372324.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Excel】 批量跳转图片

目录标题 1. CtrlA全选图片 → 右键 → 大小和属性2. 取消 锁定纵横比 → 跳转高度宽度 → 关闭窗口3. 最后一图拉到最后一单元格 → Alt吸附边框![](https://i-blog.csdnimg.cn/direct/d56ac1f41af54d54bb8c68339b558dd1.png)4. CtrlA全选图片 → 对齐 → 左对齐 → 纵向分布!…

uniapp实现一个键盘功能

前言 因为公司需要&#xff0c;所以我.... 演示 代码 键盘组件代码 <template><view class"keyboard_container"><view class"li" v-for"(item, index) in arr" :key"index" click"changArr(item)" :sty…

Linux的前世今生

Unix的起源和发展 1969年&#xff0c;AT&T贝尔实验室的Ken Thompson和Dennis Ritchie等人开发了Unix操作系统。Unix的设计理念强调小而简洁的工具&#xff0c;文本流和系统模块化&#xff0c;这些理念后来成为Linux开发的重要基础。1973年&#xff0c;Unix用C语言重新编写…

收银系统源码-营销活动-幸运抽奖

1. 功能描述 营运抽奖&#xff1a;智慧新零售收银系统&#xff0c;线上商城营销插件&#xff0c;商户/门店在小程序商城上设置抽奖活动&#xff0c;中奖人员可内定&#xff1b; 2.适用场景 新店开业、门店周年庆、节假日等特定时间促销&#xff1b;会员拉新&#xff0c;需会…

DDR3 (四)

1 DDR3 8倍预取 DDR3相比DDR2外部IO时钟又提高了一倍&#xff0c;因此DDR3外部IO时钟是内核时钟的4倍&#xff0c;再加上双沿采样&#xff0c;因此DDR3可以实现8倍预取 2 DDR3 芯片位宽 DDR3使用8倍预取技术&#xff0c;指的是芯片位宽&#xff08;DQ数据线位宽&#xff09…

逻辑回归模型(非回归问题,而是分类问题)

目录&#xff1a; 一、Sigmoid函数&#xff1a;二、逻辑回归介绍&#xff1a;三、决策边界四、逻辑回归模型训练过程&#xff1a;1.训练目标&#xff1a;2.梯度下降调整参数&#xff1a; 一、Sigmoid函数&#xff1a; Sigmoid函数是构建逻辑回归模型的重要函数&#xff0c;如下…

探展2024世界人工智能大会之令人惊艳的扫描黑科技~

文章目录 ⭐️ 前言⭐️ AIGC古籍修复文化遗产焕新⭐️ 高效的文档图像处理解决方案⭐️ AIGC扫描黑科技一键全搞定⭐️ 行业级的知识库大模型加速器⭐️ 结语 ⭐️ 前言 大家好&#xff0c;我是 哈哥&#xff08;哈哥撩编程&#xff09;&#xff0c;这次非常荣幸受邀作为专业…

Linux中的粘滞位及mysql日期函数

只要用户具有目录的写权限, 用户就可以删除目录中的文件, 而不论这个用户是否有这个文件的写 权限. 为了解决这个不科学的问题, Linux引入了粘滞位的概念. 粘滞位 当一个目录被设置为"粘滞位"(用chmod t),则该目录下的文件只能由 一、超级管理员删除 二、该目录…

回归损失和分类损失

回归损失和分类损失是机器学习模型训练过程中常用的两类损失函数&#xff0c;分别适用于回归任务和分类任务。 回归损失函数 回归任务的目标是预测一个连续值&#xff0c;因此回归损失函数衡量预测值与真实值之间的差异。常见的回归损失函数有&#xff1a; 均方误差&#xff…

匈牙利汽车市场研究报告(2024版)

匈牙利加入欧盟后成为欧洲国家的汽车制造组装基地和大型跨国企业的零部件供应商&#xff0c;具有深厚的汽车工业基础。在欧债危机后&#xff0c;匈牙利政府提出“向东发展”战略&#xff0c;并将电动化作为汽车行业新的发展方向&#xff0c;通过一系列外资友好政策吸引中日韩等…

数据泄露态势(2024年5月)

监控说明&#xff1a;以下数据由零零信安0.zone安全开源情报系统提供&#xff0c;该系统监控范围包括约10万个明网、深网、暗网、匿名社交社群威胁源。在进行抽样事件分析时&#xff0c;涉及到我国的数据不会选取任何政府、安全与公共事务的事件进行分析。如遇到影响较大的伪造…

RxJava学习记录

文章目录 1. 总览1.1 基本原理1.2 导入包和依赖 2. 操作符2.1 创建操作符2.2 转换操作符2.3 组合操作符2.4 功能操作符 1. 总览 1.1 基本原理 参考文献 构建流&#xff1a;每一步操作都会生成一个新的Observable节点(没错&#xff0c;包括ObserveOn和SubscribeOn线程变换操作…

【零基础】学JS之APIS(基于黑马)

喝下这碗鸡汤 披盔戴甲,一路勇往直前! 1. 什么是事件 事件是在编程时系统内发生的动作或者发生的事情 比如用户在网页上单击一个按钮 2. 什么是事件监听? 就是让程序检测是否有事件产生&#xff0c;一旦有事件触发&#xff0c;就立即调用一个函数做出响应&#xff0c;也称为 注…

详解Java垃圾回收(GC)机制

一、为什么需要垃圾回收 如果不进行垃圾回收&#xff0c;内存迟早都会被消耗空&#xff0c;因为我们在不断的分配内存空间而不进行回收。除非内存无限大&#xff0c;我们可以任性的分配而不回收&#xff0c;但是事实并非如此。所以&#xff0c;垃圾回收是必须的。 二、哪些内…

【Selenium配置】WebDriver安装浏览器驱动(ChromeEdge)

【Selenium配置】WebDriver安装浏览器驱动&#xff08;Chrome&Edge&#xff09; 文章目录 【Selenium配置】WebDriver安装浏览器驱动&#xff08;Chrome&Edge&#xff09;Chrome确认Chrome版本下载对应driver把解压后的chromedriver文件放在chrome安装目录下&#xff0…

深入讲解C++基础知识(三)

目录 一、命名空间1. 创建命名空间2. 访问命名空间2.1 using 编译指令2.2 using 声明2.3 直接使用全名 3. 嵌套命名空间4. 匿名命名空间5. 命名空间的注意事项5.1 头文件中不应该包含 using 声明和 using 编译指令。5.2 最好使用 using 声明而不是 using 编译指令 二、标准库类…

极客天成RDMA分布式存储加速自动驾驶仿真建模

01 自动驾驶汽车行业发展现状 随着全球5G技术的应用与发展&#xff0c;人工智能产业的逐步推进&#xff0c;无人驾驶汽车行业市场规模显著增长。中商产业研究院发布的《2024-2029全球与中国无人驾驶列车系统市场现状及未来发展趋势》显示&#xff0c;2023年全球无人驾驶汽车行…

Redis 7.x 系列【16】持久化机制之 AOF

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Redis 版本 7.2.5 源码地址&#xff1a;https://gitee.com/pearl-organization/study-redis-demo 文章目录 1. 概述2. 执行原理2.1 Redis 6.x2.1.1 直接写2.1.2 重写 2.2 Redis 7.x2.2.1 直接写2…

JAVA基础-----128陷阱

一、何为128陷阱 Java中Integer类型在使用比较时的特殊行为------128陷阱&#xff0c;解释了当数值在-128到127范围内&#xff0c;由于valueOf方法的缓存机制导致地址相同&#xff0c;比较为真&#xff1b;超出这个范围则新分配内存&#xff0c;地址不同&#xff0c;比较为假。…

抖音矩阵云剪系统saas源码 短视频矩阵获客管理系统

2024抖音矩阵云混剪系统是一款专业的短视频营销管理工具。该系统支持多平台多账号的集中式管理&#xff0c;并实现一键式作品发布功能。它配备了智能标题生成和关键词优化工具&#xff0c;以及排名查询机制&#xff0c;帮助用户提升内容在平台上更好的矩阵管理. 智能剪辑 托管发…