[RAM] 图解 RAM 结构原理

主页: 元存储博客

文章目录

    • 前言
    • 1. Channel
    • 2. Dimm
    • 3. Rank
    • 4. Bank
    • 5. Row
    • 6. Column
    • 7. Beat
    • 8. Burst Length
    • 总结

前言

在这里插入图片描述

从CPU至DRAM晶粒之间依据层级由大至小为channel>DIMM>rank>chip>bank>row/column。
在这里插入图片描述
图片来源: 电脑王
DRAM层级关系

在这里插入图片描述
DRAM 不同层级结构示意
来源: DRAM Nomenclature explained,thebeardsage

上图有:
两个 channel,
每个 chanle 有 4 个 Dimm,
每个 Dimm 有 1 个 rank
每个 rank 有一个 DRAM chip
一个 chip 有 4 个 Bank

这仅仅是一个示意, 不同的 DRAM 存储器是不同的。

1. Channel

存储控制器和DRAM模组之间的连接线称为channel (通道).

一个存储器可以只有一个 controller 和 1 个 channel.
在这里插入图片描述

也可以一个 Controller 带两个 channel。
在这里插入图片描述
还可以含两个 controller, 每个 controlle 有两个 channel。

在这里插入图片描述
这两个 controller 相互独立, 可以并行,提高带宽。

2. Dimm

在这里插入图片描述
Dimm 实物图

Dimm(dual in-line memory module),是计算机内存, 常见位宽为 64 bit。我们买的内存条就是长这个样子。

3. Rank

拿出内存条看的话, Dimm 有两面,每一面是一个 Rank。
在这里插入图片描述
同一个 Rnak 含有多个 chip, 一个 Rank 里的 chips 共用命令线和地址线,但吐出不同的数据。

在这里插入图片描述

4. Bank

一个 Chip 里有很多 bank, 这些 bank 在不同的 cycle 吐出数据, 可以 pipiline 流水线访问。一个Rank内的所有 DRAM chip都会同时访问同一个Bank位置。

在这里插入图片描述

假设需要从第 2 Bank 中的一个位置读取 64 字节的数据。在这种情况下,每个 DRAM chip 将从各自的Bank 中提供 16 字节的数据。

在这里插入图片描述
Bank 通过 Row 地址 和 Column 地址访问数据。
Row 地址即行地址, Column 即列地址。

5. Row

在这里插入图片描述

row 即 bank 中的一行, 一个 row 地址,对应到多个 chip 中所有 bank 的同一行。

6. Column

Column 是 DRAM 最小访问单元,每个 column 地址可以获取多个 chip 中这个 column address 对应的数据。读的长度取决于 burst length.
在这里插入图片描述

7. Beat

SDR RAM 一个周期传一次数据, DDR 一个周期传输两次数据(上升沿和下降沿各一次)

8. Burst Length

一个Read command 可以读多个 column 的数据, 比如 burst length 是 128 bit, 一个 column data 是 32 bit, 那么一次可以读 4 个 column.

总结


参考文献

  1. 圖解RAM結構與原理,系統記憶體的Channel、Chip與Bank

  2. DRAM Nomenclature explained


声明
本文仅为学习交流目的。
文中部分文字和图片来源于互联网,列在参考的文献,但可能有遗漏。如有侵权,请告知我删除。

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

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

相关文章

【动手学深度学习】9.6 编码器和解码器

正如我们在 9.5节中所讨论的, 机器翻译是序列转换模型的一个核心问题, 其输入和输出都是长度可变的序列。 为了处理这种类型的输入和输出, 我们可以设计一个包含两个主要组件的架构: 第一个组件是一个编码器(encoder&a…

<QT基础(4)>QLabel使用笔记

Label 前面的文章里面把QLabel批量引入ScrollArea作为预览窗口,这篇把图像填充到QLable的PixelMap展示指定图像。 参数设置 设置QLabel的大小格式 QWidget* widget new QWidget; widget->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); widget->…

代码随想录-DAY4|leetcode-24,19,142,面试题 02.07

文章目录 22. 两两交换链表中的节点19. 删除链表的倒数第N个节点size-n方式删除双指针方式(推荐) 面试题 02.07. 链表相交142. 环形链表II暴力解法快慢指针(推荐) 22. 两两交换链表中的节点 leetcode链接:两两交换链表…

Selenium与Metamask钱包及DApp交互及验证码破解汇总

1.LavaMoat报错: selenium.common.exceptions.WebDriverException: Message: unknown error: Runtime.callFunctionOn threw exception: Error: LavaMoat...`报错原因: 根本原因是Metamask为了用户钱包安全,而将LavaMoat 设置为了全局不可用。 报错解析文章链接: https:/…

PPP、RRE、MGRE综合实验

一、实验拓扑图 二、实验要求 1.R5为ISP,只能进行IP地址配置,其所有地址均配为公有IP地址; 2.R1和R5间使用PPP的PAP认证,R5为主认证方: R2与R5之间使用ppp的CHAP认证, R5为主认证方;R3与R5之间使用HDLC封装; 3.R1、R2、…

光伏智慧管理平台:全周期全流程光伏业务管理

随着光伏技术的快速发展和光伏电站规模的不断扩大,光伏业务的管理变得越来越复杂。为了提高管理效率、降低运营成本并提升光伏电站的运行效益,光伏智慧管理平台应运而生。本文将重点介绍光伏智慧管理平台的功能及其在全周期全流程光伏业务管理中的应用。…

2024年 Linux 下 8 个值得考虑的 PPT 编辑软件

如果您是 Linux 用户并且正在寻找最佳的 PowerPoint 替代方案(桌面或基于网络的),那么您来对地方了。 在本文中,您将了解到一些演示应用程序,这些应用程序可以本地安装在 Linux 发行版上或通过浏览器在线使用。 它们在…

ES学习日记(五)-------插件head安装

接上回,必要的git和node已经装完了,现在开始装head 回到es集群项目里找到plugins(插件文件夹下), 存在安装在plugins启动es报错的情况,报错信息如图一,解决方案就是换个目录,不要放在plugin目录下 git clone https://github.com/mobz/elasticsearch-head.git 打开远程登陆,默…

Qt实现Kermit协议

1 概述 Kermit文件运输协议提供了一条从大型计算机下载文件到微机的途径。它已被用于进行公用数据传输。 其特性如下: Kermit文件运输协议是一个半双工的通信协议。它支持7位ASCII字符。数据以可多达96字节长度的可变长度的分组形式传输。对每个被传送分组需要一个确认。Kerm…

Spring 源码调试问题 ( List.of(“bin“, “build“, “out“); )

Spring 源码调试问题 文章目录 Spring 源码调试问题一、问题描述二、解决方案 一、问题描述 错误&#xff1a;springframework\buildSrc\src\main\java\org\springframework\build\CheckstyleConventions.java:68: 错误: 找不到符号 List<String> buildFolders List.of…

linux + gitee+idea整套配置以及问题详解

目录&#xff1a; 1、安装git 2、git配置 3、git和gitee账户建立安全链接 4、gitee创建仓库 5、idea配置gitee 6、克隆提交代码 1、安装git 使用到github上下载最新版&#xff0c;上传到你的服务器&#xff0c;再进行解压。 这里是我的压缩包。解压命令&#xff1a; cd /usr/g…

OpenGL的MVP矩阵理解

OpenGL的MVP矩阵理解 右手坐标系 右手坐标系与左手坐标系都是三维笛卡尔坐标系&#xff0c;他们唯一的不同在于z轴的方向&#xff0c;如下图&#xff0c;左边是左手坐标系&#xff0c;右边是右手坐标系 OpenGL中一般用的是右手坐标系 1.模型坐标系&#xff08;Local Space&…

Redis与数据库的一致性

Redis与数据库的数据一致性 在使用Redis作为应用缓存来提高数据的读性能时&#xff0c;经常会遇到Redis与数据库的数据一致性问题。简单来说&#xff0c;就是同一份数据同时存在于Redis和数据库&#xff0c;如何在数据更新的时候&#xff0c;保证两边数据的一致性。首先&#…

Ubuntu20安装python3.10

1、添加 deadsnakes PPA 到源列表 add-apt-repository ppa:deadsnakes/ppa apt update 2、安装 apt install python3.10 3设置默认版本为 Python3.10 查看所有python版本 ls -l /usr/bin/python* update-alternatives --install /usr/bin/python3 python3 /usr/bin/pytho…

基于Axios封装请求---防止接口重复请求解决方案

一、引言 前端接口防止重复请求的实现方案主要基于以下几个原因&#xff1a; 用户体验&#xff1a;重复发送请求可能导致页面长时间无响应或加载缓慢&#xff0c;从而影响用户的体验。特别是在网络不稳定或请求处理时间较长的情况下&#xff0c;这个问题尤为突出。 服务器压力…

MySql实战--MySQL为什么有时候会选错索引

前面我们介绍过索引&#xff0c;你已经知道了在MySQL中一张表其实是可以支持多个索引的。但是&#xff0c;你写SQL语句的时候&#xff0c;并没有主动指定使用哪个索引。也就是说&#xff0c;使用哪个索引是由MySQL来确定的。 不知道你有没有碰到过这种情况&#xff0c;一条本来…

有手就会Anaconda下载与安装

​1.Anaconda 介绍 Anaconda&#xff08;官网&#xff1a;https://www.anaconda.com/&#xff09; 是一个开源 Python 发行版本&#xff0c;Anaconda 包括 Conda、Python 以及一大堆安装好的工具包&#xff0c;比如&#xff1a;numpy、pandas 等&#xff0c;是数据分析&#x…

代码随想录算法训练营第二十四天|77.组合、216.组合Ⅲ

文档链接&#xff1a;https://programmercarl.com/ LeetCode77.组合 题目链接&#xff1a;https://leetcode.cn/problems/combinations/ 思路&#xff1a; 回溯三部曲&#xff1a; 第一步&#xff1a;确定函数返回值和参数类型 第二步&#xff1a;确定终止条件 第三步&a…

保理业务产品方案

常见的信贷业务流程 产品架构 一般分为贷前、贷中、贷后三个部分&#xff1a; 贷前一般处理客户入驻、资质审批、授信项目准入&#xff1b; 贷中一般处理处理具体的融资申请、审批、中登登记、资产锁定、放款事务&#xff1b; 贷后一般处理客户还款冲销、账款跟踪、到期日调整…

windows 远程连接(mstsc)无法复制粘贴文件

目录 问题 1. 打开远程连接(mstsc) 方式一&#xff1a; 方式二&#xff1a; 2. 打开【显示选项】 3. 选择【本地资源】 > 【详细信息】 4. 选择需要操作的本机磁盘 5. 重新打开远程即可 问题 使用win自带的远程桌面连接&#xff0c;无法复制粘贴文件&#xff0c;解…