[DDR4] DDR 简史

依公知及经验整理,原创保护,禁止转载。

专栏 《深入理解DDR4》

存和硬盘,这对电脑的左膀右臂,共同扛起了存储的重任。内存以其超凡的存取速度闻名,但一旦断电,内存中的数据也会消失。它就像我们的工作桌面,起着缓存的作用;而硬盘则像是一个庞大的仓库,各有各的优势与劣势。

随着科技的不断进步,内存技术也在日新月异地发展。从早期的SIMM(单边内存模块)到 DDR(双倍数据率)的诞生,再到 DDR 内存的不断迭代升级,我们不禁好奇地追溯 DDR 的发展历程。

在这里插入图片描述
图来源: [今日头条]

发源

许多年前,计算机领域还没有独立的内存条存在,内存芯片直接以DIP(双列直插封装)的形式焊接在主板上。然而,当时的内存容量微乎其微,仅有 64KB256KB [1]。更为糟糕的是,主板的内存容量是固定的,无法扩展。

SIPP

80286 处理器的崭新时代,主板上的内存已经无法满足日益增长的系统需求。为了解决这一问题,内存条应运而生,这也是计算机发展历程中的一个重要里程碑。初期的内存条被称为 SIPP(Single In-line Pin Package)
在这里插入图片描述
图: 30pin SIPP (Single In-line Pin Package), 来源:系统之家

SIMM

SIPP很快被SIMM取代,SIMM则成为了新一代的内存接口。SIMM拥有两侧十分耀眼的金手指,这与我们现代看到的金手指有点像。SIMM具有5V的工作电压,有30针SIMM、64针SIMM和72针SIMM等不同规格。

在386、486以及后来的奔腾、奔腾Pro、早期的奔腾II处理器中,大多数会使用72针内存。72针内存的位宽为32位,对于32位处理器而言,只需一根内存条即可满足需求。而对于64位处理器来说,需要两根内存条来进行数据读取与存储。这样的设计使得内存与处理器之间的数据传输更为顺畅,使得计算机系统的性能得到了提升。
在这里插入图片描述
图 30pin SIMM (Single In-line Pin Package)

SDR SDRAM内存

SIMMDIMM,内存条经历了一次大的革新,这代表了内存技术的进步。SIMM 采用两边金手指传输相同的数据,而 DIMM 采用两边金手指传输不同的数据。这种变化使得内存条在进入 SDR SDRAM 时代取得了巨大的突破。

SDR 是指在时钟的单边沿发送数据,而 SDRAM 则是指同步动态随机存取存储器,它的内存频率与 CPU 外频同步,这大大提高了数据传输效率。SDR SDRAM 的数据位宽为 64 位,与当时 CPU 总线一致,因此只需要搭载一根内存条,受到了广大消费者的喜爱。

DDR内存

随后,DDR SDRAM 的问世彻底改变了内存技术的面貌。DDR SDRAM 在时钟的双边沿传输数据,与 SDR SDRAM 相比,在相同的频率下,传输速率提升了两倍。在使用上,DDR SDRAM 的地址方式和控制方式与 SDR SDRAM 几乎一致,使得从 SDR SDRAM 技术切换到 DDR SDRAM 成为了水到渠成的事情。这一时代的变革让人感到十分美好,也为 DDR 的时代开启了大门。至今,我们仍然身处在 DDR 的大家庭中,只是迭代不断,不断更新换代。

DDR2 以及后续的 DDR 系列作为 DDR 的迭代版本,延续了这个美妙的家族。让我们一起来看看这个大家庭的不断壮大吧。
在这里插入图片描述
图 DDR 到 DDR4 改进量化指标
图来源: 系统之家-作者quers

DDR2 和前一代比,
电压降低了 28%
速度提升了 50.3%
容量增加了 100%

DDR3 和前一代比,
电压降低了 16.6%
速度提升了 166.5%
容量增加了 300%
DDR3 真是一个飞跃啊~

DDR4 和前一代比,
电压降低了 20%
速度提升了 100%
容量增加了 300%

DDR2

DDR2与DDR的区别

指标差异

DDRDDR2
电压2.5V1.8V
频率100MHz~200MHz200MHz~400MHz
速率200Mps~400Mps400Mps~800Mps
预取2 bit4 bit
封装TSOPIIFBGA

百度百科:
DDR2的最大突破不在于普遍认为的传输能力翻倍,而在于更低发热和功耗的情况下,DDR2能够实现更高的频率,超越了标准DDR的400MHz限制。

而这得益于以下两点:

  1. FBGA 封装提供了更好的电气性能与散热性。
  2. DDR2 采用 1.8V 电压,相对于 DDR 的 2.5V,降低了不少。

新功能

OCDODTPOST CAS

(1)ODT:ODT是让DQS、RDQS、DQ和DM信号在终端电阻处消耗完,防止这些信号在电路上形成反射。

(2)Post CAS:旨在提高DDR2内存的利用效率。 在没有使用Post CAS功能时,当前行的CAS命令占用了地址线,导致对其他L-Bank的寻址操作被延迟,并使数据I/O总线出现空闲。通过使用Post CAS,能够消除命令冲突,从而提高数据I/O总线的利用率。
在这里插入图片描述
来源: AET

(3)OCD(Off-Chip Driver):
OCD起到的作用是调整DQS与DQ之间的同步,以确保信号的完整性和可靠性。OCD主要用于调整I/O接口端的电压,以补偿上拉和下拉电阻的值,从而将DQS与DQ数据信号之间的偏差降到最低。在调校过程中,我们将分别测试DQS高电平和DQ高电平,以及DQS低电平和DQ高电平时的同步情况。如果测试结果不符合要求,将通过设置地址线的突发长度来传递上拉/下拉电阻等级。
在这里插入图片描述
来源: AET

DDR3

指标差异

DDR2DDR3
电压1.8V1.5V
频率200MHz~400MHz400MHz~800MHz
速率400Mps~800Mps800Mps~1600Mps
预取4 bit8 bit
封装FBGACSP和FBGA封装
BANK 数4 & 88
突发长度 44(兼容) & 8

新功能

ZQ: 接240欧姆的低公差参考电阻
SRT(Self-Reflash Temperature)可编程化温度控制存储器时钟频率
PASR(PartialArray Self-Refresh)局部Bank刷新
点对点连接(point-to-point,p2p)
RESET
Dynamic ODT

DDR4

DDR3DDR4
电压1.5VVDD1.2V, VDDQ 1.2V, VPP 2.5V
频率400MHz~800MHz800MHz~1600MHz
速率800Mps~1600Mps1600Mps~3200Mps
预取8 bit8 bit
封装CSP和FBGA封装FBGA
BANK 数816
突发长度4(兼容) & 84

新功能

CRC
DBI
Multi preamble

参考

1DDR内存的前世今生
2DDR与DDR2、DDR3的区别

在这里插入图片描述 |

免责声明

一. 本博客及动态出现的信息,均仅供参考。本人将尽力以求所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性。本人对有关资料所引致的错误、不确或遗漏,概不负任何法律责任(包括侵权责任、合同责任和其它责任)。

二. 任何透过本博客及动态的网页或链接及得到的资讯、产品及服务,本人概不负责,亦不负任何法律责任。

三. 本博客及动态使用的信息,网页或链接(图片)可能由于本人疏忽未标明作者和出处,如有侵权,请立即与本人取得联系。

四. 本博客及动态支持保护知识产权,任何单位或个人认为本博客及动态中的网页或链接内容可能涉嫌侵犯其知识产权,应该及时向本人提出,并提供侵权情况证明。本人会依法尽快删除相关内容或断开相关链接。

五. 本博客内容仅供学习交流,禁止商用。

六. 阅读并使用本博客及动态包括其提供的网页链接及资源时,即代表您已阅读并同意本免责声明的全部内容。如有异议,请立刻关闭本网页并屏蔽本人动态并停止使用。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于WPF技术的换热站智能监控系统14--搭建西门子PLC通信环境

1、安装博途软件V15 本项目需要用到西门子PLC,系统所需的数据来自现场PLC实时采集的数据,所以需要配置PLC的通信环境,具体请看以下博客文章。 windows10企业版安装西门子博途V15---01准备环境_博途v15.1安装需求-CSDN博客 windows10企业…

5.Sentinel入门与使用

5.Sentinel入门与使用 1.什么是 Sentinel?Sentinel 主要有以下几个功能: 2.为什么需要 Sentinel?3.Sentinel 基本概念3.1 什么是流量控制?3.1.1 常见流量控制算法3.1.2 Sentinel 流量控制流控效果介绍如下: 3.2 什么是熔断?熔断策略 3.3 Sentinel 组成(资源和规…

[vue3]组件通信

自定义属性 父组件中给子组件绑定属性, 传递数据给子组件, 子组件通过props选项接收数据 props传递的数据, 在模版中可以直接使用{{ message }}, 在逻辑中使用props.message defineProps defineProps是编译器宏函数, 就是一个编译阶段的标识, 实际编译器解析时, 遇到后会进行…

【Oracle APEX开发小技巧1】转换类型实现显示小数点前的 0 以 及常见类型转换

在 apex 交互式式网格中,有一数值类型为 NUMBER,保留小数点后两位的项,在 展示时小数点前的 0 不显示。 效果如下: 转换前: m.WEIGHT_COEFFICIENT 解决方案: 将 NUMBER(20,2&#xf…

模拟电子技术基础(一)--本证半导体与杂质半导体

半导体分为两大类:本征半导体和杂质半导体。这两种类型的半导体在电子结构和电导特性上有显著的区别。 本征半导体(Intrinsic Semiconductor) 定义和组成:本征半导体是纯净的半导体,没有任何杂质原子。最常见的本征半…

2023年13个最适合销售电子书的WordPress主题

欢迎来到我们用于销售电子书和其他数字/可下载产品(软件、应用程序、图标集、主题等)的最佳WordPress主题的完整集合。 这些主题有内置的支付网关,可以通过 PayPal、信用卡等处理安全支付。(易于配置!) 最…

Python轮子:Excel读写利器——openpyxl

原文链接:http://www.juzicode.com/python-module-openpyxl 在之前的xlwt和xlrd的文章中我们介绍了Excel访问的2个工具,它们分别只能对Excel文件进行写或者读,今天再介绍一个可以对Excel进行读和写的工具——openpyxl。需要注意的是openpyxl…

MFC工控项目实例之三theApp变量传递对话框参数

承接专栏《MFC工控项目实例之二主菜单制作》 用theApp变量传递对话框参数实时改变iPlotX坐标轴最小值、最大值。 1、新建IDD_SYS_DATA对话框,类名SYS_DATA。 三个编辑框IDC_EDIT1、IDC_EDIT2、IDC_EDIT3变量如图 2、SEAL_PRESSURE.h中添加代码 #include "re…

CleanMyMac X软件下载附加详细安装教程

​首先要介绍的是CleanMyMac X,这是一款极受欢迎的苹果电脑清理软件,它能够全面扫描你的电脑系统,清理无用的文件和垃圾,以释放硬盘空间,除了清理功能之外,CleanMyMac X 还可协助管理应用程序、优化性能、修…

python基础 002 - 2 常用数据类型

python的常用数据类型 int , 整型 1,2,3float ,小数,浮点类型1.2bool , boolean 布尔,真假。判断命题。True Flasestr ,字符串 list , 列表 a []tuple, 元组 a ()dict , dictionary, 字典 a {}set , 集合 a {} 1 查看数据类型 typ…

某集团数字化转型蓝图规划项目案例(94页PPT)

案例介绍: 本集团数字化转型蓝图规划项目通过确定目标,如制定集团数字化转型的整体战略和规划,明确转型方向和目标。构建数字化业务体系,实现业务流程数字化、智能化。搭建数字化管理平台,提升集团内部的管理效率和决…

条件语句与循环结构

引言 条件语句和循环结构是C语言中构建程序逻辑的基本工具。它们允许程序根据条件执行不同的代码块和重复执行某些操作。本篇文章将详细介绍C语言中的条件语句和循环结构,包括if、else、switch语句,以及for、while、do-while循环的使用,帮助读…

IDEA快速入门03-代码头统一配置

三、代码规范配置 3.1 文件头和作者信息 配置入口:依次打开 File -> Settings -> Editor -> File and Code Templates。 Class /*** Copyright (C) 2020-${YEAR}, Glodon Digital Supplier & Purchaser BU.* * All Rights Reserved.*/ #if (${PACKA…

专业是软件工程,现在好迷茫,感觉什么都没有学到,该怎么办?

学习软件工程可能会遇到迷茫和困惑的时期,这很正常,尤其是在学习初期。这里有一些建议,或许可以帮助你找到方向: 明确目标:思考你学习软件工程的目的是什么,是为了将来从事软件开发工作,还是对编…

MyBatis 的多级缓存机制是怎么样运作的?

引言:上周三,小 X 去面试一家中厂,其中面试官问到 MyBatis 的多级缓存机制是怎么样运行的?这个问题可以好好准备一下,很多人可能只会用 MyBatisPlus,简单的多表联查 SQL 语句可能都写不出来,更别…

神经网络 torch.nn---nn.LSTM()

torch.nn - PyTorch中文文档 (pytorch-cn.readthedocs.io) LSTM — PyTorch 2.3 documentation LSTM层的作用 LSTM层:长短时记忆网络层,它的主要作用是对输入序列进行处理,对序列中的每个元素进行编码并保存它们的状态,以便后续的处理。 …

python-求分数序列和

[题目描述]: 输入: 输入一行一个正整数n(n≤30)。输出: 输出一行一个浮点数,表示分数序列前n 项的和,精确到小数点后4位。样例输入1 2 样例输出1 3.5000 来源/分类(难度系数:一星)…

Android集成高德天气API 天气预报

1.新建工程项目WeatherForecast。 2.在AndroidManifest文件中添加网络访问相关权限。 <uses-permission android:name"android.permission.INTERNET"/> 3.设计页面布局activity_main.xml&#xff0c;界面效果如图所示。 4.注册高德开放平台&#xff0c;查阅…

【AI实践】Ollama本地安装大模型服务

Ollama安装运行 安装与配置 Download Ollama 安装默认在C盘&#xff0c;成功后&#xff0c;window任务栏图标会有Ollama Logo 为了不占用C盘更大的空间&#xff0c;修改模型下载路径&#xff0c;修改环境变量 下载模型 由于我电脑是第六代Intel&#xff0c;集显&#xff0c;…

页面置换算法的模拟实现

一. 实验内容 1. 假设某一个进程&#xff0c;在运行过程中需要访问的内容依次在320个地址中。为了模拟产生320个地址的值。首先实现在main函数中调用下面的函数随机产生320个地址的地址序列。 #include<unistd.h> void randarray(int a[],int k) { int i; float s;…