[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的区别

在这里插入图片描述 |

免责声明

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

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

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

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

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

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

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

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

相关文章

tokenization(二)子词切分方法

文章目录 概述BPE构建词表词元化代码实现 WordPieceUnigram估算概率(E)删除词元(M) 参考资料 概述 接上回,子词词元化(Subwords tokenization)是平衡字符级别和词级别的一种方法,也…

网络通信架构

BS架构/CS架构 使用协议分别对应: TCP / HTTP 在计算机网络和软件开发中,CS架构(Client-Server Architecture,客户端-服务器架构)和BS架构(Browser-Server Architecture,浏览器-服务器架构&am…

云和运维(SRE)的半生缘-深读实证02

这个标题不算太夸张,云计算和很多IT岗位都有缘,但是和运维(SRE)岗位的缘分最深。 “深读实证”系列文章都会结合一些外部事件,点明分析《云计算行业进阶指南》书中的内容。本次分享介绍了下列内容: 我以运维…

Matlab电话按键拨号器设计

前言 这篇文章是目前最详细的 Matlab 电话按键拨号器设计开源教程。如果您在做课程设计或实验时需要参考本文章,请注意避免与他人重复,小心撞车。博主做这个也是因为实验所需,我在这方面只是初学者,但实际上,从完全不…

USB2.0高速转接芯片CH347应用开发手册

CH347应用开发手册 V1.3 一、简介 CH347是一款USB2.0高速转接芯片,以实现USB-UART(HID串口/VCP串口)、USB-SPI、USB-I2C、USB-JTAG以及USB-GPIO等接口,分别包含在芯片的四种工作模式中。 CH347DLL用于为CH347芯片提供操作系统端的UART/SPI/I2C/JTAG/B…

Linux_应用篇(17) FrameBuffer 应用编程

本章学习 Linux 下的 Framebuffer 应用编程, 通过对本章内容的学习, 大家将会了解到 Framebuffer 设备究竟是什么?以及如何编写应用程序来操控 FrameBuffer 设备。 本章将会讨论如下主题。 ⚫ 什么是 Framebuffer 设备? ⚫ LCD 显…

N32G031 ADC初始化

目录 1. ADC初始化概述 2. ADC初始化详细步骤 2.1 ADC配置 2.2 ADC初始化函数调用 2.3 DMA配置(可选) 3. 初始化结果验证 4. 注意事项 ADC采样注意事项 1. ADC初始化概述 在N32G031单片机中,ADC的初始化是确保ADC模块能够正常工作的…

安卓在Fragment控制状态栏显示隐藏

废话不多上效果 隐藏 显示 核心代码 首先是Framgrent package com.zx.tab;import android.content.Context; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Button;impor…

【redis】Redis的经典使用场景

目录 1.最常见——缓存2.数据共享分布式3.分布式锁4.全局ID5.计数器6.限流7.位统计8.购物车9.用户消息时间线timeline10.消息队列11.抽奖点赞、签到、打卡13.商品标签14.商品筛选15.用户关注、推荐模型16排行榜 1.最常见——缓存 数据类型:string例如:热…

给Windows软件添加异常捕获模块生成dump文件(附源码)

软件在运行过程中会时常发生内存越界、内存访问为例、stack overflow线程栈溢出、空指针与野指针等异常崩溃,仅仅是依靠Debug和Release下的调试是远远不够的,因为有些崩溃不是必现的,或者是Debug下很难出现的。所以我们需要在软件中添加异常捕获的模块,在捕获到异常时生成包…

C 语言连接MySQL 数据库

前提条件 本机安装MySQL 8 数据库 整体步骤 第一步:开启Windows 子系统安装Ubuntu 22.04.4,安装MySQL 数据库第三方库执行 如下命令: sudo aptitude install libmysqlclient-dev wz2012LAPTOP-8R0KHL88:/mnt/e/vsCode/cpro$ sudo aptit…

鸿蒙求职面试内容总结——6月3日ZR的FS项目

最近接到了一些公司的入职面试邀约,这里略去公司的和项目的名字,做一些整理分享。 一、长列表如何实现部分渲染,使用的是哪一个API 在鸿蒙系统中,可以使用List组件来实现长列表的部分渲染。List组件支持使用条件渲染、循环渲染、…

docker一些常用命令以及镜像构建完后部署到K8s上

docker一些常用命令以及镜像构建完后部署到K8s上 1.创建文件夹2.删除文件3.复制现有文件内容到新建文件4.打开某个文件5.查看文件列表6.解压文件(tar格式)7.解压镜像8.查看镜像9.删除镜像10.查看容器11.删除容器12.停止运行容器13.构建镜像14.启动容器15…

英伟达开源最强通用模型Nemotron-4 340B

英伟达的通用大模型 Nemotron,开源了最新的 3400 亿参数版本。 本周五,英伟达宣布推出 Nemotron-4 340B。它包含一系列开放模型,开发人员可以使用这些模型生成合成数据,用于训练大语言模型(LLM)&#xff0…

分布式系统中的经典思想实验——两将军问题和拜占庭将军问题

文章目录 一、两将军问题1.1 问题描述1.2 深入理解两将军问题1.3 实验结论 二、拜占庭将军问题2.1 问题描述2.2 深入理解拜占庭将军问题2.3 解决方案 三、两将军和拜占庭问题的关系3.1 区别和联系3.2 应用与现实意义 参考资料 一、两将军问题 1.1 问题描述 两将军问题描述的是…

el-pagination 切换分页条数,会出现两次请求

文章目录 前言一、问题展示二、源码展示 前言 继上一次发现el-pagination在删除的时候pageNum不更新的问题。这次又发现了,切换分页条数,会出现两次请求。网上有很多解决方案,我就不多说了,我就简单记一下为啥会出现两次请求的问…

21. 第21章 算法分析

21. 算法分析 这个附录选自OReilly Media出版的Alen B.Downey的Think Complexity(2012)一书. 当你读完本书之后, 可能会像继续读读那本书.算法分析是计算机科学的一个分支, 研究算法的性能, 尤其是他们的运行时间和空间需求. 参见http://en.wikipedia.org/wiki/Analysis_of_al…

Vue51-插件

一、插件的定义 vue里面的插件,类似于游戏的外挂。 vue中插件的本质:一个对象,里面必须包含install方法。 二、插件的使用 2-1、创建一个插件js文件(写在src中plugins.js) 2-2、应用插件:Vue.use(插件) …

机器真的能思考、学习和智能地行动吗?

In this post, were going to define what machine learning is and how computers think and learn. Were also going to look at some history relevant to the development of the intelligent machine. 在这篇文章中,我们将定义机器学习是什么,以及…

【Java03】Java中数组在内存中的机制

1. 内存中的数组 Java中的数组是一种引用类型,数组变量(引用)和数组元素在内存中是分开的。 Java中的数组变量其实就是指针。 如果想要访问数组元素,只能通过这个数组的引用变量(指针)来访问。 实际数组对…