[DDR4] DDR 简史

news2024/11/24 5:30:05

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

专栏 《深入理解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.coloradmin.cn/o/1829624.html

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

相关文章

Python基础用法 之 变量

1.变量的定义 变量的作用:是⽤来保存数据的。定义的语法:变量名 数据值使用:直接使⽤变量名 即可使⽤变量中存储的数据。注意:变量必须先定义后使用。 (即 必须 先存⼊数据 才能 获取数据) 。 # 需求 1, 定义⼀个变量 保存你的名…

(超详细)基于动态顺序表实现简单的通讯录项目

前言: 我们在上一章节用c语言实现了线性表中的的动态顺序表,那么顺序表就只是顺序表吗?当然不是,使用顺序表结构可以实现很多项目,许多项目的数据结构都会用到顺序表,本章节我们就要使用顺序表实现一个简易…

爬虫案例:建设库JS逆向

爬虫流程 1. 确定目标网址和所需内容 https://www.jiansheku.com/search/enterprise/ 只是个学习案例,所以目标就有我自己来选择,企业名称,法定代表人,注册资本,成立日期 2. 对目标网站,进行分析 动态…

win10没有Hyper-v的解决方法

win10没有Hyper-v的解决方法 问题:最近想装下docker,但是在控制面板-程序-启用或关闭Windows功能下找不到Hyper-v节点。 废话不多说,直接上实操教程 1.将下面命令复制到文本文档中,并将文档重命名Hyper.cmd pushd "%~dp0&q…

29.添加录入注入信息界面

上一个内容:28.启动与暂停程序 以 28.启动与暂停程序 它的代码为基础进行修改 效果图: 新建Dialog 给新建的dialog添加空间,如下图 给每个输入框创建一个变量 代码: void CWndAddGame::OnBnClickedButton1() {static TCHAR BASE…

Go如何在本地引用以及发布并引用自定义工具包

如何引用本地自定义工具包 我们首先要准备两个项目,分别为需要引入的工具包和当前项目。 myutils、myproject1. myutils为我们的项目1-工具包 package mypakgeimport "strings"func IsContains(s string) bool {if strings.Contains(s, "a")…

HAL库开发--定时器的配置方式和占空比输出

知不足而奋进 望远山而前行 目录 文章目录 前言 目标 内容 需求 Timer配置 分频系数 Timer编码 总结 前言 定时器(Timer)在嵌入式系统中是一种重要的硬件资源,常用于生成精确的时间延迟、周期性触发事件或产生PWM信号等应用。本文将…

排序算法!

文章目录 插入排序冒泡排序选择排序归并排序希尔排序 提示:本文分析算法复杂度时,默认目标是n个元素升序排序,代码注释已经写好,就不单独拎出来了 插入排序 插入排序就是把待排序序列的第一个元素看作是有序序列,把第…

Internet Download Manager(IDM6.41)软件安装包下载及安装教程

Internet Download Manager有一个智能下载逻辑加速器,具有智能动态文件分割和安全的多部分下载技术,可以加速下载。与其他下载加速器和管理器不同,Internet下载管理器在下载开始之前对文件进行分段,而Internet下载管理器在下载过程…

华为云下Ubuntu20.04中Docker的部署

我想用Docker拉取splash,Docker目前已经无法使用(镜像都在国外)。这导致了 docker pull 命令的失败,原因是timeout。所以我们有必要将docker的源设置在国内,直接用国内的镜像。 1.在华为云下的Ubuntu20.04因为源的原因…

AMD Lisa Su专访:谈与英伟达、Intel竞争 直言Arm不是敌人

AMD CEO Lisa Su(苏姿丰)绝对称得上是芯片届的风云人物,尤其是进入了AI新时代,她的声望达到了十年来最高点。翻看其成长历史,苏姿丰在麻省理工学院获得电气工程博士学位后(在麻省理工学院学习八年半&#x…

【Ardiuno】实验使用OPT语音模块播放语音(图文)

当我们需要在程序中播放语音内容时,就需要使用到语音模块,今天我们就来实验一下使用OPT语音模块来方法语音。 const int voicePin 5; const int voiceBusyPin 18; const int testLEDPin 2;unsigned long pmillis 0;int busyVal 0; …

C#联合Halcon机器视觉框架源码—升级版

相较于之前的NxtVision,本软件代码架构更加合理,且新增ui设计器、原来的vb脚本改为C#脚本,并尝试将视觉与运动控制相结合,是一体化的框架。 对源码有需求的,订阅本专栏后,私信我领取。

安卓网络通信(多线程、HTTP访问、图片加载、即时通信)

本章介绍App开发常用的以下网络通信技术,主要包括:如何以官方推荐的方式使用多线程技术,如何通过okhttp实现常见的HTTP接口访问操作,如何使用Dlide框架加载网络图片,如何分别运用SocketIO和WebSocket实现及时通信功能等…

记录一次centos扩容

背景 在Vscode上连虚拟机写项目,突然提示磁盘空间不足(no space left on device),一开始打算删些东西,这里参考博客,写得挺清楚的,但是操作后我发现实在没啥文件可以删除,所以干脆不删了,直接扩…

Centos实现Mysql8.4安装及主主同步

8.4的Msyql在同步的时候与之前的版本有很大不同,这里记录一下安装流程 Mysql安装 官网下载 选择自己的版本,选第一个 复制下载链接 在服务器上创建一个msyql目录 使用命令下载,链接换自己的 wget https://dev.mysql.com/get/mysql84-community-relea…

【分布式计算】java消息队列机制

消息队列是一种在不同组件或应用之间进行数据传递的技术,通常用于处理异步通信。它允许消息的发送者(生产者)和接收者(消费者)之间进行解耦。 概念 消息队列是一种先进先出(FIFO)的数据结构&…

【react小项目】bmi-calculator

bmi-calculator 目录 bmi-calculator初始化项目01大致布局01代码 02完善样式02代码 03输入信息模块03代码 04 使用图表04代码 05详细记录信息渲染05代码 06 让数据变成响应式的06-1输入框的数据处理06-2图表,和记录信息的区域数据处理 07 删除功能,撤销功…

DeepDriving | 经典的目标检测算法:CenterNet

本文来源公众号“DeepDriving”,仅用于学术分享,侵权删,干货满满。 原文链接:经典的目标检测算法:CenterNet 1 前言 CenterNet是2019年发表的一篇文章《Objects as Points》中提出的一个经典的目标检测算法&#xf…

仓储管理系统WMS构架设计B/S和C/S:如何选?

导语 大家好,我是社长,老K。专注分享智能制造和智能仓储物流等内容。 新书《智能物流系统构成与技术实践》 在设计仓库管理系统(WMS)时,架构的选择至关重要,因为它直接影响到系统的可用性、可维护性、灵活性…