On-die termination for DDR
本文转载自:
https://blog.csdn.net/weixin_38233274/article/details/81016870
ODT是什么鬼?为什么要用ODT?在很多关于DDR3的博文和介绍中都没有将清楚。在查阅了很多资料并仔细阅读DDR3的官方标准(JESD79-3A)之后,总算有点了头绪,下面来整理整理。
1、首先ODT是什么?
ODT(On-Die Termination),是从DDR2 SDRAM时代开始新增的功能。其允许用户通过读写MR1寄存器,来控制DDR3 SDRAM中内部的终端电阻的连接或者断开。在DDR3 SDRAM中,ODT功能主要应用于:
·DQ, DQS, DQS# and DM for x4 configuration
·DQ, DQS, DQS#, DM, TDQS and TDQS# for X8 configuration
·DQU, DQL, DQSU, DQSU#, DQSL, DQSL#, DMU and DML for X16 configuration
具体的结构图如下:

2、为什么要用ODT?
一个DDR通道,通常会挂接多个Rank,这些Rank的数据线、地址线等等都是共用;数据信号也就依次传递到每个Rank,到达线路末端的时候,波形会有反射(有兴趣的去啃几口《信号完整性分析》的书吧,个人表示好难),从而影响到原始信号;因此需要加上终端电阻,吸收余波。之前的DDR,终端电阻做在板子上,但是因为种种原因,效果不是太好,到了DDR2,把终端电阻做到了DDR颗粒内部,也就称为On Die Termination,Die上的终端电阻,Die是硅片的意思,这里也就是DDR颗粒。
所以,使用ODT的目的很简单,是为了让DQS、RDQS、DQ和DM信号在终结电阻处消耗完,防止这些信号在电路上形成反射,进而增强信号完整性。用JESD79-3A的原话就是:
The ODT feature is designed to improve signal integrity of the memory channel by allowing the DRAM controller to independently turn on/off termination resistance for any or all DRAM devices.
对于 Nand device,ONFI 上原话是:
On-die termination is a type of electrical termination where the termination is provided by the NAND device.
总的来说,ODT技术的优势非常明显。
第一,去掉了主板上的终结电阻器等电器元件,这样会大大降低主板的制造成本,并且也使主板的设计更加简洁。
第二,由于它可以迅速的开启和关闭空闲的内存芯片,在很大程度上减少了内存闲置时的功率消耗。
第三,芯片内部终结也要比主板终结更及时有效,从而减少了内存的延迟等待时间。这也使得进一步提高DDR2内存的工作频率成为可能。
3、DDR3中的ODT
3.1、ODT的开启
The ODT Mode is enabled if any of MR1 {A9, A6, A2} or MR2 {A10, A9} are non zero.
3.2、ODT的关闭
The ODT pin will be ignored if the Mode Registers MR1 and MR2 are programmed to disable ODT and in self-refresh mode.
3.3、ODT阻值的选择
ODT的阻值可以通关配置MR1寄存器的 {A9, A6, A2} 进行修改

On-die termination for DDR的更多相关文章
- 【接口时序】8、DDR3驱动原理与FPGA实现(一、DDR的基本原理)
一. 软件平台与硬件平台 软件平台: 1.操作系统:Windows-8.1 2.开发套件:无 3.仿真工具:无 硬件平台: 1. FPGA型号:无 2. DDR3型号:无 二. 存储器的分类 存储器一 ...
- DDR SDRAM芯片DQS的作用以及读写DQS/DQ对齐方式不同的原因
节选内容转载自https://www.design-reuse.com/articles/13805/the-love-hate-relationship-with-ddr-sdram-control ...
- DDR3命令状态(二)
DDR3中的状态机Diagram,详见相册. ACT:Activate,表示输出行地址,和是否自动precharge控制位. PRE:Precharge,在读写后,可以根据A10来判断是否自己进行pr ...
- 普通内存、ECC内存和REG ECC内存有什么不同
都知道,在INTEL平台,北桥负责与CPU的联系,并控制内存.AGP.PCI数据在北桥内部传输.基本上只要主板芯片组确定,那么其支持的内存类型也就确定了. INTEL芯片组划分的很清楚,865PE属于 ...
- Bit error testing and training in double data rate (ddr) memory system
DDR PHY interface bit error testing and training is provided for Double Data Rate memory systems. An ...
- DDR(二)
DDR与SDRAM的最大区别:内部L-Bank的规格不同. SDRAM中的L-Bank存储单元的容量与芯片位宽相同, DDRAM中的存储单元的容量是芯片位宽的一倍. 所以一次的地址访问,可以进行2-P ...
- DDR中的一些知识点说明(ODT,ZQ校准,OCT,TDQS)
ODT ( On-DieTermination ,片内终结)ODT 也是 DDR2 相对于 DDR1 的关键技术突破,所谓的终结(端接),就是让信号被电路的终端吸 收掉,而不会在电路上形成反射, 造成 ...
- DDR中寄存器的问题
图中虚线是自动跳转,实线是通过发送命令才能跳转的. 下面是框中对应的命令. ACT = ACTIVATE MPR = Multipurpose register MRS = Mode register ...
- DDR电源硬件设计要点
一.DDR电源简介 1. 电源 DDR的电源可以分为三类: a.主电源VDD和VDDQ,主电源的要求是VDDQ=VDD,VDDQ是给IO buffer供电的电源,VDD是给但是一般的使用中都是把VDD ...
随机推荐
- POJ - 1681: Painter's Problem (开关问题-高斯消元)
pro:开关问题,同上一题. 不过只要求输出最小的操作步数,无法完成输出“inf” sol:高斯消元的解对应的一组合法的最小操作步数. #include<bits/stdc++.h> #d ...
- java效验只能为数字类型
首先要import java.util.regex.Pattern 和 java.util.regex.Matcher /** * 利用正则表达式判断字符串是否是数字 * @param str * @ ...
- vscode C++开发环境配置教程(教你如何用vscode写C++)
用了一段时间的cb,Devc++,但一直感觉cb的高亮太差,而Devc++使用体验差(尤其是代码补全功能),换过vs2017,但是由于其太大了,卡顿十分明显,所以最终选择了vscode这款轻量级编译器 ...
- WEB测试专题之测试分类
虽然说是一个功能测试就概括了,但是其实这里面还别有洞天,大概区分为下面几个小类别:WEB测试专题之web测试分类一(1)链接测试链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不 ...
- vue day8 table page
@{ ViewBag.Title = "Home Page"; Layout = null; } <!DOCTYPE html> <html> <he ...
- [工作积累] Tricks with UE4 PerInstanceRandom
最近在用UE4的Instancing, 发现限制很多. Unity有instancing的attribute array (uniform/constant buffer),通过InstanceID来 ...
- js练习
/** * Created by bianxiaoling on 2018/9/7. */ // 获取 url 中的参数 // 1. 指定参数名称,返回该参数的值 或者 空字符串 // 2. 不指定参 ...
- Python实例之抓取淘宝商品数据(json型数据)并保存为TXT
本实例实现了抓取淘宝网中以‘python’为关键字的搜索结果,经详细查看数据存储于html文档中的js脚本中,数据类型为JSON 具体实现代码如下: import requests import re ...
- Python Faker的使用(1):基础使用方法与函数速查,生成随机数据
在软件需求.开发.测试过程中,有时候需要使用一些测试数据,针对这种情况,我们一般要么使用已有的系统数据,要么需要手动制造一些数据. 在手动制造数据的过程中,可能需要花费大量精力和工作量,现在好了,有一 ...
- innobackupex一些常用备份选项
指定数据库备份[root@node1]# innobackupex --defaults-file=/data/3306/my.cnf --user=root --password=password ...