DDR4总结最全纯干货分享

news2024/11/16 9:52:22

DDR存储器发展的主要方向一言以蔽之,是更高速率,更低电压,更密的存储密度,从而实现更好的性能。
DDR4 SDRAM(Double Data Rate Fourth SDRAM):DDR4提供比DDR3/ DDR2更低的供电电压1.2V以及更高的带宽,DDR4的传输速率目前可达2133~3200MT/s。DDR4 新增了4 个Bank Group 数据组的设计,各个Bank Group具备独立启动操作读、写等动作特性,Bank Group 数据组可套用多任务的观念来想象,亦可解释为DDR4 在同一频率工作周期内,至多可以处理4 笔数据,效率明显好过于DDR3。 另外DDR4增加了DBI(Data Bus Inversion)、CRC(Cyclic Redundancy Check)、CA parity等功能,让DDR4内存在更快速与更省电的同时亦能够增强信号的完整性、改善数据传输及储存的可靠性。
以下两张图可以清晰对比DDR3以及DDR4的参数差异:
在这里插入图片描述
在这里插入图片描述

POD 和SSTL的比较

POD作为DDR4新的驱动标准,最大的区别在于接收端的终端电压等于VDDQ,而DDR3所采用的SSTL接收端的终端电压为VDDQ/2。这样做可以降低寄生引脚电容和I/O终端功耗,并且即使在VDD电压降低的情况下也能稳定工作。其等效电路如图1(DDR4), 图2(DDR3)。
在这里插入图片描述

图1 POD ((Pseudo Open Drain)

在这里插入图片描述

图2 SSTL(Stub Series Terminated Logic)
这样修改的优点是:
可以看出,当DRAM在低电平的状态时,SSTL和POD都有电流流动
在这里插入图片描述

图3 DDR4
在这里插入图片描述

图4 DDR3
而当DRAM为高电平的状态时,SSTL继续有电流流动,而POD由于两端电压相等,所以没有电流流动。这也是DDR4更省电的原因

在这里插入图片描述

图5 DDR4
在这里插入图片描述

图6 DDR3

BG设计原因

到了DDR4的时代,JESD组织认为,数据预取的增加变得更为困难,所以推出了Bank Group的设计。
Bank Group架构是什么样的,有何优势呢?具体来说就是每个Bank Group可以独立读写数据,这样一来内部的数据吞吐量大幅度提升,可以同时读取大量的数据,内存的等效频率在这种设置下也得到巨大的提升。DDR4架构上采用了8n预取的Bank Group分组,包括使用两个或者四个可选择的Bank Group分组,这将使得DDR4内存的每个Bank Group分组都有独立的激活、读取、写入和刷新操作,从而改进内存的整体效率和带宽。如此一来如果内存内部设计了两个独立的Bank Group,相当于每次操作16bit的数据,变相地将内存预取值提高到了16n;如果是四个独立的Bank Group,则变相的预取值提高到了32n。
在这里插入图片描述

DDR3 Multi-drop bus

在这里插入图片描述

DDR4 Point to Point

在DDR3内存上,内存和内存控制器之间的连接采用是通过多点分支总线来实现。这种总线允许在一个接口上挂接许多同样规格的芯片。我们都知道目前主板上往往为双通道设计四根内存插槽,但每个通道在物理结构上只允许扩展更大容量。这种设计的特点就是当数据传输量一旦超过通道的承载能力,无论你怎么增加内存容量,性能都不见的提升多少。这种设计就好比在一条主管道可以有多个注水管,但受制于主管道的大小,即便你可以增加注水管来提升容量,但总的送水率并没有提升。因此在这种情况下可能2GB增加到4GB你会感觉性能提升明显,但是再继续盲目增加容量并没有什么意义了,所以多点分支总线的好处是扩展内存更容易,但却浪费了内存的位宽。(通过这个理解带宽)

在这里插入图片描述

数据总线倒置 (DBI)

如上面描述,根据POD的特性,当数据为高电平时,没有电流流动,所以降低DDR4功耗的一个方法就是让高电平尽可能多,这就是DBI技术的核心。举例来说,如果在一组8-bit的信号中,有至少5-bit是低电平的话,那么对所有的信号进行反转,就有至少5-bit信号是高电平了。DBI信号变为低表示所有信号已经翻转过(DBI信号为高表示原数据没有翻转)。这种情况下,一组9根信号(8个DQ信号和1个DBI信号)中,至少有五个状态为高,从而有效降低功耗。
在这里插入图片描述

图7 DBI Example

参考电压Vref

众所周知,DDR信号一般通过比较输入信号和另外一个参考信号(Vref)来决定信号为高或者低,然而在DDR4中,一个Vref却不见了,先来看看下面两种设计,可以看出来,在DDR4的设计中,VREFCA和DDR3相同,使用外置的分压电阻或者电源控制芯片来产生,然而VREFDQ在设计中却没有了,改为由芯片内部产生,这样既节省了设计费用,也增加了Routing空间。
在这里插入图片描述

图9 DDR3设计
在这里插入图片描述

图10 DDR4设计
DRAM内部VREFDQ通过寄存器(MR6)来调节,主要参数有Voltage range, step size, VREF step time, VREF full step time ,如下表所示。
在这里插入图片描述

表4 参考电压
每次开机的时候,DRAM Controller都会通过一系列的校准来调整DRMA端输入数据信号的VREFDQ,优化Timing和电压的Margin,也就是说,VREFDQ 不仅仅取决于VDD, 而且和传输线特性,接收端芯片特性都会有关系,所以每次Power Up的时候,VREFDQ的值都可能会有差异。
总结:
DDR4内存具有更高的运行速度和更低的电压需求,从而提高了计算机的性能和能效。DDR4的主要特点和优势是:
速度和带宽提升: DDR4相对于DDR3来说,提供更高的数据传输速度和内存带宽。它的速度通常以MT/s(兆传输每秒)来衡量,而不是DDR3中的MHz。DDR4的速度通常从2133MT/s开始,并可以高达3200MT/s或更高。这意味着DDR4能够提供更快的数据访问速度,有助于改善计算机性能。
低电压: DDR4采用1.2伏的低电压供电,相对于DDR3的1.5伏来说,能够降低能耗,减少热量产生,提高电池寿命。这对于笔记本电脑和移动设备尤为重要。
更高的密度:DDR4允许更高密度的内存模块,这意味着单个内存模块可以容纳更多的存储容量。这对于需要大量内存的服务器、工作站和高性能计算任务非常有用。
排队和流水线技术: DDR4引入了排队和流水线技术,使内存控制器能够更高效地管理数据传输,降低延迟,提高性能。
错误校验与纠正(ECC): DDR4支持ECC,这是一种错误检测和纠正技术。它有助于提高内存的可靠性,防止数据损坏或丢失,特别是在对数据完整性要求很高的应用中。
总之,DDR4内存是当前计算机领域的一种重要技术,它具有更高的速度、更低的电压需求、更高的存储密度和更好的性能,从而提高了计算机的性能和能效。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如果搭建axb回拨

AXB回拨技术是一种先进的电话通讯技术,它通过在A(主叫方)与B(被叫方)之间引入一个中间号码X,实现了双方的通话连接。这种技术可以有效避免直接拨打被叫方的电话号码,从而保护了用户的隐私。 具体…

GPT2从放弃到入门(三)

引言 上篇文章我们看到了如何从零训练一个聊天机器人,本文在此基础上介绍各种生成策略的原理和实现。最后通过Gradio构建一个聊天机器人应用。 定义生成框架 def generate(model,tokenizer,prompt,max_length255,temperature1.0,top_k50,top_p1.0,repetition_pen…

【WEEK4】 【DAY4】AJAX第一部分【中文版】

【WEEK4】 【DAY4】AJAX第一部分【中文版】 2024.3.21 Thursday 目录 8.AJAX8.1.简介8.2.伪造ajax8.2.1.新建module:springmvc-06-ajax8.2.2.添加web支持,导入pom依赖8.2.2.1.修改web.xml8.2.2.2.新建jsp文件夹 8.2.3.新建applicationContext.xml8.2.4.…

tftp使用

下载 sudo apt-get install tftpd-hpa 创建文件夹 mkdir /home/ljl/work/tftpd mkdir /home/ljl/tftpd chmod 777 tftpd/编辑 sudo vim /etc/default/tftpd-hpa //服务器端 sudo apt-get install tftp-hpa //客户端编辑权限 sudo vi /etc/default/tftpd-hpa 内容&#xff1…

智能风扇的新篇章:唯创知音WTK6900G语音识别芯片引领行业革新

随着科技浪潮的推进,智能化技术逐渐渗透到生活的每一个角落,家电领域尤为明显。风扇,这一夏日清凉神器,也通过智能化改造,焕发出前所未有的光彩。其中,智能语音控制功能的加入,为风扇的使用带来…

算法系列--递归(2)

💕"什么样的灵魂就要什么样的养料,越悲怆的时候我越想嬉皮。"💕 作者:Mylvzi 文章主要内容:算法系列–递归(2) 前言:今天带来的是算法系列--递归(2)的讲解,包含六个和二叉树相关的题目哦 1.计算布尔⼆叉树的…

Redis中文乱码问题

最近排查问题,发现之前的开发将日志写在redis缓存中(不建议这样做),我在查看日志的时候发现没办法阅读,详细是这样的: 查阅资料后发现是进制问题,解决方法是启动客户端的时候将redis-cli改为red…

【RPG Maker MV 仿新仙剑 战斗场景UI (八)】

RPG Maker MV 仿新仙剑 战斗场景UI 八 状态及装备场景代码效果 状态及装备场景 本计划在战斗场景中直接制作的,但考虑到在战斗场景中加入太多的窗口这不太合适,操作也繁琐,因此直接使用其他场景。 代码 Pal_Window_EquipStatus.prototype.…

STM32之HAL开发——启动文件详解【精华版】

启动文件介绍 启动文件是使用机器认识的汇编语言,由汇编编写,是系统上电复位后第一个执行的程序,经过一些必要的配置,最终能够调用 main 函数,使得用户程序能够在 MCU上正常运行起来的必备文件。 无论是是何种MCU&…

腾讯三面被问到有没有参加过CTF_我反手就是一套军体拳打得面试官哑口无言!

目录 ​ 前言: 正文: 什么是CTF? 什么是PWN? 为什么要学CTF? CTF竞赛模式: CTF各大题型简介: 学之前的思考:分析赛题情况 常规做法 CTF比赛需要的知识储备 CTF比赛的神器&#xff…

基于甘特图的资源调度优化策略

资源在项目管理中是一个永恒的话题。无论人力、物力还是财力资源,总是捉襟见肘,都希望用最少的资源完成最大的工作。这就要求我们在资源调度方面果断精准,做到最优化。而甘特图作为项目时间规划的重要工具,恰恰能为资源调度提供绝佳帮助。 甘特图能反映出任务之间的制约关系,有…

vulnhub-----pWnOS1.0靶机

文章目录 1.信息收集2.漏洞测试3.爆破hash4.提权 首先拿到一台靶机,就需要知道靶机的各种信息(IP地址,开放端口,有哪些目录,什么框架,cms是什么,网页有什么常见的漏洞,如sql注入&…

DC-3靶机

一.环境搭建 下载地址: http://www.five86.com/downloads/DC-3-2.zip 下载不下来的可以用迅雷输入上面的网址进行下载 虚拟机配置: 切换连接桥接模式为nat模式,启动靶机,出现如下报错,进入虚拟机配置 选中CD/DVD&…

C语言:自定义类型(结构体)

目录 一、结构的特殊声明二、结构的自引用三、结构体内存对齐1.对齐规则2.为什么存在内存对齐(1)平台原因 (移植原因):(2)性能原因: 3.修改默认对齐数 四、结构体传参五、结构体实现位段1.什么是位段2.位段的内存分配3.位段的跨平台问题4.位段使用的注意…

使用Python和OpenFOAM进行流体力学模拟的基础示例

流体力学模拟通常涉及复杂的数学方程和数值方法,例如计算流体动力学(CFD)。OpenFOAM是一个开源的CFD工具箱,它使用C编写,但可以通过Python脚本进行自动化和定制。 以下是一个简单的示例,展示如何使用Python和OpenFOAM进行流体力学…

【嵌入式开发 Linux 常用命令系列 4.3 -- git add 时单独排除某个目录或者文件】

文章目录 git add 时单独排除某个目录或者文件使用 .gitignore 文件使用命令行排除文件或目录 git add 时单独排除某个目录或者文件 在使用 git add 命令时,如果你想要排除特定的目录或文件,可以使用 .gitignore 文件或使用路径规范来指定不想添加的文件…

YOLOv5-Y5周:yolo.py文件解读

本文为🔗365天深度学习训练营 中的学习记录博客 原作者:K同学啊|接辅导、项目定制 我的环境: 1.语言:python3.7 2.编译器:pycharm 3.深度学习框架Tensorflow/Pytorch 1.8.0cu111 一、代码解读 import argparse i…

pcie dllp FC

关于pcie dllp FC内容: 源地址: PCIe(三)—— PCIe协议栈,事务层和数据链路层 | Soul Orbit 3.2. 控制消息:DLLP(Data Link Layer Packet) 除了传输TLP数据包之外,数…

SQL96 返回顾客名称和相关订单号(表的普通联结、内联结inner join..on..)

方法一:普通联结 select cust_name, order_num from Customers C,Orders O where C.cust_id O.cust_id order by cust_name,order_num;方法二:使用内连接 select cust_name,order_num from Customers C inner join Orders O on C.cust_id O.cust_id …

泛型可空类型Nullable<T>

.Net Framework 4.8版本开始&#xff0c;引入了可空类型Nullable<T>. 对于引用类型的变量来说&#xff0c;如果未赋值&#xff0c;默认情况下是 Null 值&#xff0c; 对于值类型的变量&#xff0c;如果未赋值&#xff0c;整型变量的默认值为 0,Boolean默认为false&…