DDR中的一些知识点说明(ODT,ZQ校准,OCT,TDQS)

2023-10-30

ODT ( On-DieTermination ,片内终结)
ODT 也是 DDR2 相对于 DDR1 的关键技术突破,所谓的终结(端接),就是让信号被电路的终端吸

收掉,而不会在电路上形成反射, 造成对后面信号的影响。 顾名思义, ODT 就是将端接电阻移植

到了芯片内部,主板上不再有端接电路。在进入DDR 时代, DDR 内存对工作环境提出更高的要求,如

果先前发出的信号不能被电路终端完全吸收掉而在电路上形成反射现象, 就会对后面信号的影响造成

运算出错。因此目前支持DDR主板都是通过采用终结电阻来解决这个问题。 由于每根数据线至少需要

一个终结电阻, 这意味着每块DDR 主板需要大量的终结电阻, 这也无形中增加了主板的生产成本 ,

而且由于不同的内存模组对终结电阻的要求不可能完全一样,也造成了所谓的“内存兼容性问题”。

而在DDR-II 中加入了 ODT功能,当在DRAM 模组工作时把终结电阻器关掉, 而对于不工作的 DRAM 模

组则进行终结操作,起到减少信号反射的作用,如下图二所示。ODT 的功能与禁止由主控芯片控制,

在开机进行 EMRS 时进行设置, ODT 所终结的信号包括 DQS 、DQS# 、DQ 、DM 等。这样可以产生

更干净的信号品质,从而产生更高的内存时钟频率速度。而将终结电阻设计在内存芯片之上还可以简

化主板的设计,降低了主板的成本, 而且终结电阻器可以和内存颗粒的“特性”相符, 从而减少内

存与主板的兼容问题的出现

 

 

                            

                图二 0DT端接示意图

ZQ 校准

如下图三所示, ZQ 是DDR3一个新增的引脚,在这个引脚上接有一个 240 欧姆的低公差参考电阻。

这个引脚通过一个命令集,通过片上校准引擎( ODCE ,On-DieCalibrationEngine )来自动校

验数据输出驱动器导通电阻与 ODT 的终结电阻值。 当系统发出这一指令之后, 将用相应的时

钟周期 (在加电与初始化之后用 512 个时钟周期,在退出自刷新操作后用 256 时钟周期、在

其他情况下用 64个时钟周期)对导通电阻和 ODT 电阻进行重新校准。

  ODT是终端匹配,那就是要在你的信号线终端上拉一个电阻,但是这个内部电阻随着温度会

有些细微的变化,为了保证信号被准确的进行终端匹配,就需要ZQ了,ZQ的作用就是使用你外面

连接的,高精度240R电阻来对这个内部的电阻进行校准,

 

                图三 Reset 及 ZQ 引脚

关于ZQ校正有两个命令ZQCL (ZQ CALIBRATION LONG )和ZQ CALIBRATION SHORT (ZQCS)

ZQCL主要用于系统上电初始化和器件复位,一次完整的ZQCL需要512个时钟周期,在随后(初始化和复位之后),校准一次的时间要减少到256周期。

ZQCS在正常操作时跟踪连续的电压和温度变化,ZQCS需要64个时钟周期。

 

 

ZQ 校准时序

在RESET之后的第一次ZQCL必须要512个时钟(tZQINIT)周期进行一次完整的校准。在之后 ZQCL 必须要tZQOPER(256个时钟周期)

      ZQCS命令在除了ATCIVITIES的任何时间发送,

所有的BANK必须Precharged 并要满足tRP的时间要求

 

 

外驱动调校 OCD ( Off-ChipDriver )
OCD 是在 DDR-II 开始加入的新功能,而且这个功能是可选的,有的资料上面又叫离线驱动

调整。 OCD的主要作用在于调整 I/O 接口端的电压,来补偿上拉与下拉电阻值, 从而调整

DQS 与 DQ 之间的同步确保信号的完整与可靠性。 调校期间,分别测试 DQS 高电平和 DQ

高电平,以及 DQS 低电平和 DQ 高电平的同步情况。 如果不满足要求,则通过设定突发长

度的地址线来传送上拉 / 下拉电阻等级(加一档或减一档),直到测试合格才退出 OCD 操作,

通过 OCD 操作来减少 DQ 、 DQS的倾斜从而提高信号的完整性及控制电压来提高信号品质。

具体调校如下图一所示。

不过,由于在一般情况下对应用环境稳定程度要求并不太高,只要存在差分 DQS时就基本可以

保证同步的准确性, 而且 OCD 的调整对其他操作也有一定影响, 因此 OCD 功能在普通台式

机上并没有什么作用,其优点主要体现在对数据完整性非常敏感的服务器等高端产品领域。

 

 

 

             图一 OCD 

 

VREFCA & VREFDQ

 

对于内存系统工作非常重要的参考电压信号VREF,在DDR3系统中将VREF分为两个信号。一个是为

命令与地址信号服务的VREFCA,另一个是为数据总线服务的VREFDQ,它将有效的提高系统数据总

线的信噪等级,如下图四所示。

 

      图4

 

重置(Reset)

重置是DDR3新增的一项重要功能,并为此专门准备了一个引脚。这一引脚将使DDR3的初始化处理变得简单。

当Reset命令有效时,DDR3 内存将停止所有的操作,并切换至最少量活动的状态,以节约电力。在Reset期间,

DDR3内存将关闭内在的大部分功能,所有数据接收与发送器都将关闭,且所有内部的程序装置将复位,

DLL(延迟锁相环路)与时钟电路将停止工作,甚至不理睬数据总线上的任何动静。这样一来,该功能将

使DDR3达到最节省电力的目的,新增的引脚如下图三所示。

Data Mask(DM)

数据掩膜功能也称为部分写。只支持x8和x16配置。DM功能与DBI和TDQS功能共用相同的管脚。DM功能只用于写操作,且不能与写DBI功能同时使能。

 

应该说TDQS功能的优先级最高,如果使能了TDQS那么DM和DBI功能都被禁止

如果禁止了TDQS功能,才允许DM和DBI发挥作用。但有点我不太明白,DBI好像没有和TDQS及DM共用管脚啊

 

终端数据选通Termination Data Strobe (TDQS)

对于x8的DIMMs,每一个8位字节需要一个DQ选通道对(DQS/DQS#);对于x4的DIMMs,第半个

字节需要一对DQ选通对(DQS/DQS#)。当这两种不同的DIMM混合应用在同一个系统时,DQS

的负载就会不同,这样会造成信号完整性问题。TDQS就是为了解决这个问题的。

  TDQS只用于x8 DRAM,不过TDQS还会和DM共同用用DM功能。

RDIMM0是x4 DRAM, RDIMM1是x8 DRAM,     由x4组成的RDIMM需要两个DQ选通对,其中一对连

接到x8的RDIMM1上实现同样的功能,另一个选通对对于RDIMM1是没有用处的,但是连接到了

TDSQ对上,当使能TDQS后,可以保证所有的选通脚负载一样。这样保证了信号的完整性。

 

 

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

DDR中的一些知识点说明(ODT,ZQ校准,OCT,TDQS) 的相关文章

  • 使用valgrind检查内存问题并且输出报告

    valgrind内存泄漏分析 是在linux中检查内存泄漏的工具 当程序编写完之后我一般都会使用它来检查一次内存问题 基本上能杜绝服务器的内存泄漏问题 当然是面对C C 这样的语言的 使用方式就是将程序编译好 然后通过valgrind来启动
  • Java(七) 句柄

    在学习什么是句柄之前我们先学习虚拟机的对对象的访问方式 一 句柄访问方式 使用句柄访问对象 会在堆中开辟一块内存作为句柄池 句柄中储存了对象实例数据 属性值结构体 的内存地址 访问类型数据的内存地址 类信息 方法类型信息 对象实例数据一般也
  • netty5学习笔记-内存池4-PoolArena

    前面我们讲到了内存池中的几个重要的类 1 PoolChunk 维护一段连续内存 并负责内存块分配与回收 其中比较重要的两个概念 page 可分配的最小内存块单位 chunk page的集合 2 PoolSubpage 将page分为更小的块
  • 对象池简单理解

    unity中一些需要频繁创建和销毁的对象 在销毁时会频繁的调用gc 非常占用cpu时 造成性能瓶颈 这时候就需要对象池技术 使用对象池在销毁时并不调用gc 而是仅仅将需要销毁的obj失活 当再次创建同类对象时 在对象池中查找可以使用的对象进
  • C++堆内存分配

    C 堆内存分配 C堆内存分配 抽象与分层 如何扩展有效堆内存 brk和sbrk系统调用 如何维护有效堆内存 operator new 抽象与分层 c和c 的内存服务模型与计算机网络里面的协议分层模型有点类似 计算机网络协议大体分为 层 应用
  • 在WPF中获取程序的专用工作集内存 PerformanceCounter

    使用 PerformanceCounter 获取程序的专用工作集内存并不难 但是就是得找一下属性 通过 CategoryName 遍历 InsanceName 再通过它们遍历 CounterName 之后通过这三个属性得到我们想要的内存 p
  • Unity内存与资源管理

    内存管理是程序开发的核心问题 而资源的使用又与内存息息相关 因此本章想要梳理整个开发流程中Unity对于内存与资源的管理方式 一 内存基础 1 1 基础概念 内存是暂时存放CPU中的运算数据 与硬盘等外部存储器交换的数据 在操作系统中 内存
  • linux下定位内存泄漏 /proc/pid/status 解释

    内存泄漏一直是程序定位的盲点 很多时候感觉用着用着内存会越来越少 导致程序崩溃 而一般top等linux命令又不够详细 通过cat proc pid status 命令 可详细查看进程的内存占用情况 其中pid是进程id 进程号去查状态 c
  • JVM的内存区域

    JVM的内存区域 不知不觉都大三了 回头看看以前的Android开发过程 遇到的很多问题都需要深入到源码去解决 这也促使我不断地深入学习Java的相关知识 首先要学习的肯定是JVM 不过JVM的知识体系十分庞杂 JVM的内存区域的划分是学习
  • valgrind Massif

    valgrind检查内存泄露 valgrind 程序 内存泄漏问题 我们有memcheck工具来检查 很爽 但是有时候memcheck工具查了没泄漏 程序一跑 内存还是狂飙 这又是什么问题 其实memcheck检查的内存泄漏只是狭义的内存泄
  • 算法精解_C语言 链表_单链表(接口定义+类型实现)

    链表可以说是一种最为基础的数据结构 链表由一组元素以一种特定的顺序组合或链接而成 在维护数据的集合时很有用 这一点同我们常用的数组很相似 然而 链表在很多情况下比数组更有优势 特别是在执行插入和删除操作时链表拥有更高的效率 链表需要动态的开
  • java中的基本数据类型和引用数据类型以及它们的存储方式堆内存和栈内存

    一直对java中的基本数据类型和引用数据类型之间的关系搞不太清楚 今天做leetcode的一道题目 总算弄清楚了关系 写下来和大家一起分享一下 一 基本数据类型 数据类型在计算机语言里面 是对内存位置的一个抽象表达方式 可以理解为针对内存的
  • linux 查询服务器的配置信息

    linux下看配置 可没有windows那么直观 你只能一个一个查看 一 cpu root srv more proc cpuinfo grep model name root srv grep model name proc cpuinf
  • 我看Java虚拟机(2)---Java虚拟机内存区域详解

    虚拟机内存区域的组成 直接上图 程序计数器 对于Java方法 用来选取下一条要执行的字节码 对于本地方法 值为空 线程独有 虚拟机栈 执行Java方法 每一层都是一个栈帧 栈帧包括局部变量表 操作数栈 动态链接和方法出口等信息 线程独有 本
  • 总结:对Java内存模型JMM的理解

    JMM规定了线程的工作内存和主内存的交互关系 以及线程之间的可见性和程序的执行顺序 一方面 要为程序员提供足够强的内存可见性保证 另一方面 对编译器和处理器的限制要尽可能地放松 JMM对程序员屏蔽了CPU以及OS内存的使用问题 能够使程序在
  • spark-submit 报错 Initial job has not accepted any resources

    spark submit 报这样的错误 WARN scheduler TaskSchedulerImpl Initial job has not accepted any resources check your cluster UI to
  • 服务器老是提示内存不足

    jps mlvV 查进程 jmap heap 进程ID 查看内存是多少 JAVA OPTS Xms1536m Xmx1536m XX PermSize 512m XX MaxPermSize 512m
  • c++动态数组(二)之allocator类

    new在灵活性上面一些局限性 以方便它将内存分配和对象构造组合在了一起 delete将内存释放和对象析构组合在一起 当分配一大块内存时 我们通常计划在这块内存上面按需构造对象 在这种情况下 我们希望内存分配和对象构造分离 这意味着我们可以分
  • 程序员思维模式 - 主调试循环

    文章目录 主调试循环 验证在图层中进行 优化循环时间 为什么快速循环更好 短循环时间是通用的吗 一些综合测试是必要的 复杂性是否会导致测试验证循环 救援的暂存环境 结论 仅通过测试进行验证基本上是在仪器上驾驶飞机 而不是能够向外看挡风玻璃
  • 牛客字符串

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 pandas是什么 二 使用步骤 1 引入库 2 读入数据 总结 前言 提示 这里可以添加本文要记录的大概内容 例如 随着人工智能的不断发展 机器学习这门

随机推荐

  • unity3d 虚拟博物馆_基于Unity3D的虚拟家具展厅设计.docx

    内容摘要 在如今的信息时代 随着虚拟现实技术的不断发展和研究 各式各样的三维情景体验除了应用到文化宣传 如博物馆虚拟展厅等的建立 和教学科技体验 还在商业运营中的宣传部分具有了很大的发展空间 建立虚拟的商业产品展厅作为当今宣传手段的重要部分
  • EXCEL合并所有表格到一个表格中【VB代码】亲测可用!!!

    1 新建sheet表格 2 右击 查看代码 3 复制如下代码 Sub 合并当前工作簿下的所有工作表 Application ScreenUpdating False For j 1 To Sheets Count If Sheets j N
  • 【Arma3脚本教程】一、基本介绍

    目录 基本介绍 1 前言 2 编辑环境 3 第一行代码 4 地图文件夹 5 基本语法解释 6 记笔记 基本介绍 1 前言 想必看到此文章的人想要学习Arma3的地图编辑 不过国内很少有人研究这个 即使会的也不是专业程序员 即使是专业程序员
  • Sql一对多关联

    1 查询名人表中性别是男的作者 2 查看静夜思的作者 3 查询李白和杜甫的年纪 4 查询名人表中的男女人数 5 查询白居易写的作品名称和名句 6 查看年纪在25到30之间的个数 7 查询名人表中最后的两条数据 8 查询李白的作品名称 名言
  • 神经网络 02(激活函数)

    一 激活函数 在神经元中引入了激活函数 它的本质是向神经网络中引入非线性因素的 通过激活函数 神经网络就可以拟合各种曲线 如果不用激活函数 每一层输出都是上层输入的线性函数 无论神经网络有多少层 输出都是输入的线性组合 引入非线性函数作为激
  • 若依分离版4-docker安装redis

    docker安装redis 拉取镜像 docker pull redis 新建配置文件目录 mkdir p data redis data data redis redis conf 在配置文件写入基础配置和密码 cd data redis
  • 【React的组件&组件间的通信(父向子,子向父,同级组件通信)】

    目录 一 React项目的入口文件 create react app 二 React的组件 1 什么是组件 2 组件的分类 3 组件间的通信 一 React项目的入口文件 create react app React项目的入口文件 crea
  • 零基础入门Socket网络编程到高级进阶与实战精讲

    从零开始 从进阶到深入 系统学习Socket编程技术 理论结合实践 掌握Socket核心技术 零基础入门Socket网络编程到高级进阶与实战精讲视频下载 目录 第一章 课程介绍及Java语言简介 第二章 快速入门Socket网络编程 第三章
  • 关于UGUI的EventSystem的学习

    一 EventSystem对象的说明 当我们在场景中创建任一UI对象后 Hierarchy面板中都可以看到系统自动创建了对象EventSystem 可以看到该对象下有三个组件 EventSystem StandaloneInputModul
  • Java中变量的分类和作用域

    package test public class test01 static int j 静态变量只能放在类中定义 并且默认初始化为零 int k 成员变量 实例变量 必须创建对象才能使用 并且可以不用初始化赋值 final int n
  • 蓝牙资讯

    苹果公司宣称 USB C 能够带来更多灵活性 现在用户可以使用手机的 USB C 接口 为 AirPods Pro 耳机盒充电 虽然苹果没有详细介绍这款耳机 但在今天的新闻稿中依然透露了一些不一样的地方 例如新款 AirPods Pro 2
  • 解决linux环境中rpm命令无效问题

    解决linux环境中rpm命令无效问题 问题 yum命令提示无效 在卸载mysql时 提示yum命令无效 解决方案 1 先查询是否安装yum 执行命令 rpm qa grep yum 2 卸载 rpm 执行下面命令 rpm aq grep
  • Linux:端口

    端口是设备与外界进行通讯的出入口 端口可以分为物理端口和虚拟端口 物理端口 又叫接口 是可见的端口 比如HDMI端口 USB接口 虚拟端口 是指计算机内部的端口 用来操作系统和外部进行交互使用 通过IP地址只能锁定具体的计算机 但无法进一步
  • ret和call的原理

    1 ret 指令用栈中的数据 修改IP的内容 从而实现近转移 CPU执行ret指令时 进行下面两步操作 1 IP ss 16 sp 使用栈顶元素修改IP实现跳转 2 sp sp 2 2 retf 用栈中的数据 修改CS和IP的内容 从而实现
  • 动态规划3:矩阵最小路径和问题

    题目 有一个矩阵map 它每个格子有一个权值 从左上角的格子开始每次只能向右或者向下走 最后到达右下角的位置 路径上所有的数字累加起来就是路径和 返回所有的路径中最小的路径和 给定一个矩阵map及它的行数n和列数m 请返回最小路径和 保证行
  • Ue4 Config文件和工程文件打包在一起

    Ue4 在打包发行版程序时 打包文件里面默认是没有Config文件夹的 这时我们想要调试一些参数时还得在C盘中找Config 文件 其实可以把Config文件夹及文件夹里面的内容打包到工程文件中去 下面我们说一下Ue4 Config文件和工
  • 各种基类型的最值

    C头文件limits h和float h分别提供了浮点型和整型的一些数值限制详细信息 常量符号 含义 CHAR BIT char类型位数 CHAR MAX char类型最大值 CHAR MIN char类型最小值 SCHAR MAX 有符号
  • STM32F407ZGT6使用SDIO方式驱动SD卡

    STM32F407ZGT6使用SDIO方式驱动SD卡 简介 SDIO 移植操作 简介 本文主要讲解的是移植官方固件库 V1 5 1 中是SDIO来驱动SD卡 SDIO SDIO接口是在SD内存卡接口的基础上发展起来的接口 SDIO接口兼容以
  • MySQL(更新中)

    目录 一 MYSQL特点 二 数据库分类 A 关系型数据库 RDBMS B 非关系型数据库 NOSQL 三 SQL语言 一 DDL Data Definition Language 二 数据类型 三 DML insert update de
  • DDR中的一些知识点说明(ODT,ZQ校准,OCT,TDQS)

    ODT On DieTermination 片内终结 ODT 也是 DDR2 相对于 DDR1 的关键技术突破 所谓的终结 端接 就是让信号被电路的终端吸 收掉 而不会在电路上形成反射 造成对后面信号的影响 顾名思义 ODT 就是将端接电阻