DDR的VTT有源端接和无源端接(slua886a笔记)

2023-11-17

DDR的VTT有源端接和无源端接(slua886a笔记)

背景

对于DDR的VTT端接,一直有说法是有源端接可降低功耗。之前一直没仔细理解其中原因,现在找了些相关的资料来介绍和对比有源和无源端接,理解有源端接的优点和降低功耗的原理。
主要基于读slua886a和自己查的其他一些资料。大家看到这个编号,就猜到了这是TI的一份文档。

对DDR的原理和使用的了解十分有限,仅供参考。

SSTL简介

DDR常用的IO形式是SSTL (Stub Series Terminated Logic),比如SSTL_2,SSTL_18等。(DDR4中已经改用pseudo open-drain (POD)的形式,在此就不介绍了,主要原因还是我不懂)
发送端和接收端的结构如下图所示。

  1. 发送端是一个推挽形式的驱动器,RS为驱动器的串联电阻。
  2. RT为外部的端接电阻。VTT为端接的电压。
  3. 接收端是把输入电压VIN和基准电压VREF进行比较。

这里我其实有个问题,不接RT和VTT,看起来也能正常工作——可能是VTT端接可改善信号质量。

SSTL更详细的结构如下图。

  • 理想的VTT=VREF=1/2*VDDQ
  • 可以看到,如果发送端的上管开启,VOUT=VDDQ,VOUT>VTT——RT的电流方向为向上——VIN>VTT=VREF,因此接收到高电平。
  • 反之,下管开启,VIN<VTT=VREF,因此接收到高电平
    如果VTT的电压偏离VREF,接收的数据就可能错误。根据slua886a,SSTL_18标准要求高电平至少需要为VREF+125mV。如果简单把上管开启后的情况看成是 VCCQ--[RS]--VIN--[RT]--VTT这种电阻分压的形式,显然VTT电压下降会导致VIN电压跟着下降——结论是,VTT电压不能过低。同理,VTT电压也不能过高。
    理想情况下,VTT应该是跟随VREF变化。

无源端接

无源端接即使用两个电阻分压产生VTT=VDDQ/2。这两个电阻的阻值需要足够小,来保证在各种工况下VTT不偏离VREF太多。
看下slua886a中一个关于DDR2端接的一个例子。这里假设SSTL的MOS的导通电阻为20R。而VTT共接了42个信号。

  1. 有21个信号为1,21个信号为0:如下图,相当于有21个65R并联在上拉的电阻,另外21个65R并联在下拉的电阻,因此,此时上下的等效电阻基本相等,保证了VTT=VDDQ/2。(也可以按照下图,从电流的角度来理解,VTT电源的净电流为0)
  2. 极端的情况,42个信号都为0时,所有的42个65R电阻都并联在下拉的Rp上,此时下拉的等效电阻最小,因此VTT达到最低。

之前说的VTT,按照slua886a的电阻值来计算,DDR2的SSTL_18中,VTT应大于0.54V。
(具体计算:根据VTT-[25R]--VIN=1.025V--[40R]--VDDQ这个回路计算得到)

Assuming the number of low bit lines is larger than that of high bit lines, the net VTT current goes out of termination and VTT voltage is lower than VDDQ/2. Based on calculation, to make VIN at high bit line higher than logic high threshold (VREF + 125 mV = 1.025 V), VTT voltage must be higher than 0.54 V

就根据这两个条件计算Rp值:

  1. VTT=0.54V
  2. VTT是Rp//(65R/42)和Rp分压结果。

得到Rp=2.06Ω。这个阻值很小,这两个分压电阻上就有较高的功耗1.8^2/2.06=0.81W
因此,无源端接的VTT会随信号变化而跳变,并且分压电阻的阻值小、功耗高。

有源端接

无源端接的分压电阻驱动能力弱(带不动很多根信号线,暂时就叫驱动能力吧),而且分压电阻消耗的功率实际上是白白消耗的。所以另一种方案是,把VTT连接到专用的DC-DC或者LDO,也就是有源端接。
比如,下图的MAX1809应用电路,看起来和一个普通DC-DC没有太大差别。主要区别在于,这个芯片除了一般的输出电流的情况(对应所接数据线“0”的数量大于“1”的数量),还需要支持电流倒灌的情况

使用这类芯片,调节速度很快,如下图,VTT可以看做是基本恒定,主要就是省去了无源端接中那两个分压电阻的功耗,从而降低的端接所需的功率。

根据slua886a做的对比,有源端接的功耗可以是无源端接的低至1/3。

相关芯片

LDO TPS51200

  1. VLDOIN为LDO的输入
  2. VTT为LDO的输出,具有±3A的驱动能力,电压VTT=VTTREF=REFIN
  3. VTTREF精度较高,但是驱动能力弱,可接在DDR的VREF
  4. 支持VO远端反馈

DC-DC MAX1809

这个手册大致解释了电流source和sink两种情况的原理。

  1. source:控制方式同一般的buck。
  2. sink:做为boost电路来控制。——不过这个倒灌回去的电流去哪了,我就不知道了——可能是被VIN的其他负载消耗了?

参考资料

slua886a:DDR VTT Power Solutions: A Competitive Analysis (Rev. A)

TI的VTT相关芯片选型:
TPS51200 data sheet, product information and support | TI.com
DDR memory power ICs | TI.com

ADI的一种DC-DC VTT调节器
MAX1809 3A、1MHz、DDR存储器端接电源 | 亚德诺(ADI)半导体 (analog.com)

其他一些大致读过的资料:
Generating VREF and VTT in QDR®, DDR-II, DDR-II+, … - Infineon Developer Community
TN-41-13: DDR3 Point-to-Point Design Support (micron.com)
https://www.microsemi.com/document-portal/doc_view/14638-an-17-ddr-sdram-memory-termination-lx1672
USING THE LX1672 AND LX1673 FOR DDR SDRAM MEMORY
SSTL FOR DIMM APPLICATIONS

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

DDR的VTT有源端接和无源端接(slua886a笔记) 的相关文章

  • C#编程,.NTE调用java类、jar包方法

    基本思路 用C 实现调用Java编写的类中的方法 重点是将Java编写的程序打包成Jar 然后使用开源工具IKVM将其转化成DLL控件 在 NET环境下调用 一 使用IKVM NET组件 首先到IKVM官网 http www ikvm ne
  • React学习(JSX+组件+state+表单)

    React JSX 声明元素 渲染元素 组件 练习 this props children PropTypes 默认值 获取真实的DOM节点 this state 表单 组件的生命周期 例子 JSX JSX是一种JavaScript语法的拓
  • 链式前向星存树图和遍历它的两种方法【dfs、bfs】

    目录 一 链式前向星存图 二 两种遍历方法 一 链式前向星存图 n个点 n 1条边 链式前向星把上面的树图存下来 输入 9 代表要存进去n个点 1 2 下面是n 1条边 每条边连接两个点 1 3 1 7 2 4 4 5 4 6 3 8 3

随机推荐

  • json-server在vscode终端运行文件报错

    错误 无法加载文件 D 因为在此系统上禁止运行脚本 json server 无法加载文件 D ruanjian nodejs node global json server ps1 因为在此系 统上禁止运行脚本 有关详细信息 请参阅 htt
  • 关于宝塔面板无法访问的解决方法

    前言 本篇文章主要介绍宝塔面板无法访问的几种情况以及如何解决 正文 1 没有开放相应端口 这种情况比较常见 服务商默认情况下会将所有的端口关闭 你需要使用哪个端口就得手动去打开这个端口 例如 http 47 8888 adminuser 中
  • ubuntu如何开放22端口 ubuntu22端口开启

    ubuntu开放22端口的操作步骤 1 打开终端命令行模式 2 依次输入以下命令进行开放22端口即可 输入以下命令打开22端口 sudo ufw allow 22 重启防火墙使其生效即可 sudo ufw reload 附加 sudo ap
  • 详解混合类型文件(Polyglot文件)的应用生成与检测

    1 引入 混合类型文件 Polyglot文件 是指一个文件 既可以是合法的A类型 也可以是合法的B类型 比如参考3中的文件 是一个html文件 可以用浏览器正常打开 它也是一个一个 jar文件 可以用JVM正常运行 参考4 如下图所示 这样
  • Spring源码:PropertyValues类及属性注入一

    概要 相关类 属性注入 概要 Spring获取Bean的实例时 需要把配置的属性值解析到PropertyValues 然后填充入BeanWrapper中 相关类 MutablePropertyValues类 PropertyValues接口
  • http://www.limodev.cn/blog/archives/category/gtk

    The linux mobile development gt http www limodev cn blog 致力于基于linux的嵌入式系统的学习和研究 包括内核 驱动 GUI MMI 软件设计和优化等 欢迎交换友情链接 代码请到Pr
  • Docker实战-NFS安装

    Docker安装 1 使用官方安装脚本自动安装 curl fsSL https get docker com bash s docker mirror Aliyun 2 启动 Docker 服务 systemctl start docker
  • Struts2框架详解(二)

    Struts2结果页面配置 全局结果页面 场景 多个action 有相同的方法返回值 且都到同一个结果页面 需求 创建两个action 执行默认的方法execute方法 让两个action的方法都返回success 返回success之后
  • Nerf 训练自有数据

    1 拍摄序列图像 放置在文件夹 如duck images 2 使用colmap使用COLMAP获取相机位姿 1 参考官方文档安装colmap 2 使用win 可执行程序 3 点击 File 选择 new project 点击 New 在du
  • 强化学习实现智能城市规划,清华团队最新成果登Nature子刊

    由于城市地理空间的多样性和巨大的动作空间 给城市布局用地和道路是一件非常复杂而困难的任务 长久以来一直依靠人类规划师的经验和直觉 如今 城市规划领域也有了自己的AlphaGo 近日 清华大学电子系城市科学与计算研究中心与建筑学院跨学科合作
  • eip系统服务器,eip系统

    本词条缺少概述图 补充相关内容使词条更完整 还能快速升级 赶紧来编辑吧 eip系统是以数据为基础 应用为核心 以实现业务及业务流程的自动化为目的多功能企业信息平台 中文名 eip系统 基 础 数据性 质 多功能企业信息平台 方 法 把不同系
  • 二货小易有一个W*H的网格盒子 JAVA

    import java util public class Main public static void main String args Scanner sc new Scanner System in int w sc nextInt
  • VS2017调试unity没有解决方案

    1 VS2017之前的版本调试unity 需要下载 Visual Studio Tools for Unity 2 VS2017内置了Visual Studio Tools for Unity 3 首先打开 帮助 gt 关于 已安装程序中查
  • 法研杯参赛总结:“抽取-生成”式长文本摘要

    PaperWeekly 原创 作者 苏剑林 单位 追一科技 研究方向 NLP 神经网络 法研杯 1 算是近年来比较知名的 NLP 赛事之一 今年是第三届 包含四个赛道 其中有一个 司法摘要 赛道引起了我们的兴趣 经过了解 这是面向法律领域裁
  • 单片机IO引脚驱动能力的提高

    这篇文字学到不少东西 包括文中链接 在此感谢坐而论道 现摘录如下 早期的51单片机 驱动能力很低 P1 P2和P3口只能驱动3个LSTTL输入端 P0口可驱动8个 如果想要驱动更多的器件 就要用到 总线驱动芯片 经常用的就是74LS244
  • html登录页面

    效果图 html代码 index html
  • Java多线程练习--取钱

    1 需求 小明和小红是一对夫妻 他们有一个共同的账户 余额是10万元 模拟2人同时去取钱10万 分析 1 需要提供一个账户类 创建一个账户对象代表2个人的共享账户 2 需要定义一个线程类 线程类可以处理账户对象 3 创建2个线程对象 传入同
  • 浅析GPT2中的autoregressive和BERT的autoencoding源码实现

    经常使用BERT来做研究 因此对Encoder的架构较为熟悉 但是从来没有了解过GPT这样的Decoder架构 尤其对自回归的形式不知道源码是如何实现的 为了方便对比和讨论 接来下所探讨的源码都是基于HuggingFace这个框架的 Ber
  • 数据结构--基础之顺序表的一种实现(堆实现)基于C++语言。Sqlite(初始化,增,删,查,定,判,打印,求长,销毁)

    Mr lei 来人 上代码 好的 Title 顺序表 WorkSpace C 环境下的实现 Date 2023 4 12 Author Mr Lei Copyright 版权所有 侵权不究 QQ 2223696890 include
  • DDR的VTT有源端接和无源端接(slua886a笔记)

    DDR的VTT有源端接和无源端接 slua886a笔记 背景 对于DDR的VTT端接 一直有说法是有源端接可降低功耗 之前一直没仔细理解其中原因 现在找了些相关的资料来介绍和对比有源和无源端接 理解有源端接的优点和降低功耗的原理 主要基于读