内存工作原理

作者:Jeff Tyson 和 Chris Pollette
computer ram
内存是计算机的短期记忆。Nazarethman/Getty Images

随机存取存储器(RAM)是计算机内存最广为人知的形式。它让您的计算机能够浏览互联网,然后快速切换到加载应用程序或编辑文档。RAM 被认为是“随机存取”,因为如果您知道存储单元相交的行和列,就可以直接访问任何存储单元。

相反,串行存取存储器(SAM)将数据存储为一系列存储单元,这些单元只能顺序访问(就像磁带)。如果数据不在当前位置,则会检查每个存储单元,直到找到所需的数据。SAM 非常适用于内存缓冲区,其中数据通常按照将要使用的顺序存储(例如,显卡上的纹理缓冲区内存)。另一方面,RAM 数据可以按任何顺序访问。

广告

RAM 基本上是您计算机的短期记忆。与微处理器类似,内存芯片是由数百万个晶体管和电容器组成的集成电路(IC)。在最常见的计算机内存形式——动态随机存取存储器(DRAM)中,一个晶体管和一个电容器配对形成一个存储单元,代表一个数据位。电容器存储信息位——0 或 1(有关位的更多信息,请参阅位和字节的工作原理)。晶体管充当开关,允许内存芯片上的控制电路读取电容器或改变其状态。

电容器就像一个可以存储电子的小桶。要在存储单元中存储 1,小桶会充满电子。要存储 0,则将其清空。电容器小桶的问题在于它有泄漏。短短几毫秒内,一个装满的小桶就会变空。因此,为了使动态内存正常工作,CPU 或内存控制器必须在电容器放电之前,对所有存储 1 的电容器进行再充电。为此,内存控制器会读取内存,然后立即将其写回。这种刷新操作每秒自动发生数千次。

动态 RAM 存储单元中的电容器就像一个漏水的桶。它需要定期刷新,否则会放电至 0。这种刷新操作正是动态 RAM 得名的原因。动态 RAM 必须始终动态刷新,否则会忘记它所存储的数据。所有这些刷新的缺点是耗时并减慢内存速度。

在本文中,您将了解有关 RAM 的所有信息,包括您应该购买哪种以及如何安装它。

广告

存储单元和 DRAM

内存由排列在二维网格中的位组成。

在此图中,红色单元格代表 1,白色单元格代表 0。在动画中,选择一列,然后对行进行充电,将数据写入特定列。

广告

存储单元以列(位线)和行(字线)阵列的形式蚀刻在硅晶圆上。位线和字线的交点构成了存储单元的地址

DRAM 的工作原理是:通过相应的列(CAS)发送电荷,以激活列中每个位上的晶体管。写入时,行线包含电容器应采取的状态。读取时,感应放大器确定电容器中的电荷水平。如果超过 50%,则将其读取为 1;否则将其读取为 0。计数器根据行被访问的顺序跟踪刷新序列。完成所有这些操作所需的时间非常短,以纳秒(十亿分之一秒)表示。一个 70 纳秒额定值的内存芯片意味着完全读取和再充电每个单元需要 70 纳秒。

如果没有某种方式将信息输入和输出,单独的存储单元将毫无价值。因此,存储单元拥有一整套其他专用电路的支持基础设施。这些电路执行以下功能:

  • 识别每个行和列(行地址选择列地址选择
  • 跟踪刷新序列(计数器
  • 读取并恢复单元格中的信号(感应放大器
  • 告诉单元格是否应该充电(写使能

内存控制器的其他功能包括一系列任务,例如识别内存类型、速度和容量,以及检查错误。

静态 RAM 的工作方式与 DRAM 不同。我们将在下一节中探讨。

广告

静态 RAM

静态 RAM 使用一种完全不同的技术。在静态 RAM 中,一种触发器形式存储每个内存位(有关触发器的详细信息,请参阅布尔逻辑的工作原理)。一个用于存储单元的触发器需要四个或六个晶体管以及一些布线,但它从不需要刷新。这使得静态 RAM 显著快于动态 RAM。然而,由于其部件更多,一个静态存储单元在芯片上占用的空间比动态存储单元大得多。因此,每个芯片的内存更少,从而增加了它的价格。

静态 RAM 快速且昂贵,而动态 RAM 则更便宜且更慢。因此,静态 RAM 用于创建 CPU 的速度敏感缓存,而动态 RAM 则构成了更大的系统 RAM 空间。

广告

台式计算机中的内存芯片最初使用一种称为双列直插封装(DIP)的引脚配置。这种引脚配置可以焊接到计算机主板上的孔中,或插入焊接到主板上的插座中。当计算机通常以几兆字节或更少的 RAM 运行时,这种方法效果很好,但随着对内存需求的增长,主板上需要空间的芯片数量也增加了。

解决方案是将内存芯片以及所有支持组件放置在一个单独的印刷电路板(PCB)上,然后可以将其插入主板上的特殊连接器(内存组)中。这些芯片大多使用小外形 J 形引线(SOJ)引脚配置,但也有不少制造商使用薄型小外形封装(TSOP)配置。这些新型引脚类型与原始 DIP 配置之间的主要区别在于 SOJ 和 TSOP 芯片是表面贴装到 PCB 的。换句话说,引脚直接焊接到板的表面,而不是插入孔或插座中。

内存芯片通常只作为名为模块的卡的一部分提供。当您购买内存时,在许多模块上您可以看到单个内存芯片。

在下一节中,我们将介绍其他一些常见的 RAM 类型。

广告

RAM 类型

DDR RAM memory
一名工程师手持 DDR SDRAM 内存芯片。Sutthiwat Srikhrueadam/Getty Images

以下是一些常见的 RAM 类型:

  • SRAM:静态随机存取存储器为每个存储单元使用多个晶体管,通常是四到六个,但每个单元中没有电容器。它主要用于缓存
  • DRAM:动态随机存取存储器具有配对晶体管和电容器的存储单元,需要持续刷新。
  • FPM DRAM:快速页模式动态随机存取存储器是 DRAM 的原始形式。它会等待通过列和行定位数据位并读取该位的整个过程,然后才开始处理下一个位。到 L2 缓存的最大传输速率约为 176 Mbps。
  • EDO DRAM:扩展数据输出动态随机存取存储器不会等待第一个位的所有处理完成,然后才继续处理下一个位。一旦第一个位的地址被定位,EDO DRAM 就会开始寻找下一个位。它比 FPM DRAM 快约 5-20%。到 L2 缓存的最大传输速率约为 264 Mbps。
  • SDRAM:同步动态随机存取存储器利用突发模式概念大幅提升性能。它通过停留在包含请求位的行上,并快速遍历列,在移动过程中读取每个位来实现这一点。其理念是,大多数情况下 CPU 所需的数据将是顺序的。SDRAM 比 EDO RAM 快约 5%,传输速率为每秒 0.8-1.3 兆次传输MT/s)。它于 1988 年开发。
  • DDR SDRAM:这是 SDRAM 的下一代。双倍数据速率同步动态随机存取存储器与 SDRAM 类似,但具有更高的带宽,意味着更快的速度。其传输速率为 2.1-3.2 MT/s。DDR 于 2000 年发布,并发展了三个后续世代。DDR2(2003 年)的传输速率为 4.2-6.4 MT/s,DDR3(2007 年)的数据传输速率为 8.5-14.9 MT/s。目前广泛使用的最新一代是 DDR4,于 2014 年推出。其传输速率为 17-21.3 MT/s。这些标准由联合电子设备工程委员会(JEDEC)制定,该组织由电子公司组成。JEDEC 于 2020 年 7 月发布了 DDR5 规范。RAM 制造商美光(Micron)认为,与 DDR4 模块相比,新标准将将性能提高 87%
  • RDRAM:Rambus 动态随机存取存储器与之前的 DRAM 架构截然不同。由Rambus 设计,RDRAM 使用Rambus 直列式内存模块(RIMM),其尺寸和引脚配置与标准 DIMM 相似。RDRAM 如此与众不同之处在于它使用了名为 Rambus 通道的特殊高速数据总线。RDRAM 内存芯片并行工作,数据速率可达 800 MHz,或 1,600 Mbps 或更高。由于它们以如此高的速度运行,产生的热量比其他类型的芯片多得多。为了帮助散热,Rambus 芯片都配有散热片,看起来像一个长而薄的晶圆。就像有较小版本的 DIMM 一样,也有专为笔记本电脑设计的 SO-RIMM。
  • 信用卡内存:信用卡内存是一种专有的独立 DRAM 内存模块,可插入专用插槽中,用于笔记本电脑。
  • PCMCIA 存储卡:另一种用于笔记本电脑的独立 DRAM 模块,这种类型的卡不是专有的,应该适用于系统总线与存储卡配置匹配的任何笔记本电脑。它们如今很少使用。
  • CMOS RAM:CMOS RAM 是一个术语,指的是您的计算机和其他一些设备用于记住硬盘设置等信息的少量内存。这种内存使用一小块电池为其提供所需的电力,以维持内存内容。
  • VRAM:视频 RAM,也称为多端口动态随机存取存储器(MPDRAM),是一种专门用于视频适配器或 3D 加速器的 RAM 类型。“多端口”的名称来源于 VRAM 通常具有两个独立的访问端口而不是一个,这允许 CPU 和图形处理器同时访问 RAM。VRAM 位于显卡上,有多种格式,其中许多是专有的。VRAM 的容量是显示器分辨率和颜色深度的决定因素。VRAM 还用于存储图形专用信息,例如3D 几何数据和纹理映射。真正的多端口 VRAM 往往价格昂贵,因此许多显卡转而使用 SGRAM(同步图形 RAM)。性能几乎相同,但 SGRAM 更便宜。

广告

内存模块

Close up of memory ram circuit board
内存 RAM 电路板的特写。Carbonero Stock/Getty Images

台式计算机中 RAM 所用的板和连接器种类在过去几年中不断发展。最初的类型是专有的,这意味着不同的计算机制造商开发了只能与他们特定系统配合使用的内存板。

接着出现了 SIMM,即单列直插内存模块。这种内存板使用 30 引脚连接器,尺寸约为 3.5 x 0.75 英寸(约 9 x 2 厘米)。在大多数计算机中,您必须成对安装容量和速度相同的 SIMM。这是因为总线宽度大于单个 SIMM。

广告

例如,您需要安装两个 8 兆字节(MB)的 SIMM,才能获得总计 16 兆字节的 RAM。每个 SIMM 一次可以发送 8 位数据,而系统总线一次可以处理 16 位数据。后来的 SIMM 板略大,尺寸为 4.25 x 1 英寸(约 11 x 2.5 厘米),使用 72 引脚连接器以增加带宽,并支持高达 256MB 的 RAM。SIMM 从 20 世纪 80 年代初到 21 世纪初一直在使用。

随着处理器速度和带宽能力的增长,行业采用了双列直插内存模块(DIMM)这一新标准。DIMM 的容量范围广,可以单独安装而不是成对安装。

某些品牌的笔记本电脑使用基于小外形双列直插内存模块(SODIMM)配置的 RAM。SODIMM 卡很小,尺寸约为 2 x 1 英寸(5 x 2.5 厘米),有 144 或 200 个引脚。每个模块的容量从 2GB 到 32GB 不等。一些超便携笔记本电脑甚至使用更小的 DIMM,称为 MicroDIMM。业界一直在将低功耗 DDR4 模块应用于更薄更轻的笔记本电脑,因为它们耗能更少且更紧凑。不幸的是,它们必须焊接到位,这意味着普通用户无法更换原始 RAM。

目前可用的大多数内存都高度可靠。大多数系统只是让内存控制器在启动时检查错误并依赖于此。具有内置错误检查功能的内存芯片通常使用一种称为奇偶校验的方法来检查错误。奇偶校验芯片每 8 位数据有一个额外位。奇偶校验的工作方式很简单。我们首先来看偶数奇偶校验。

当一个字节中的 8 位接收到数据时,芯片会计算 1 的总数。如果 1 的总数为奇数,则奇偶校验位设置为 1。如果总数为偶数,则奇偶校验位设置为 0。当数据从这些位中读回时,会再次计算总数并与奇偶校验位进行比较。如果总数为奇数且奇偶校验位为 1,则数据被认为是有效的并发送到 CPU。但如果总数为奇数且奇偶校验位为 0,则芯片知道 8 位中存在错误并丢弃数据。奇数奇偶校验的工作方式相同,但当字节中 1 的总数为偶数时,奇偶校验位设置为 1。

奇偶校验的问题在于它能发现错误,但无法纠正。如果一个数据字节与其奇偶校验位不匹配,则数据被丢弃,系统再次尝试。处于关键位置的计算机需要更高水平的容错能力。高端服务器通常具有一种称为错误校正码(ECC)的错误检查形式。与奇偶校验类似,ECC 使用额外的位来监控每个字节中的数据。不同之处在于,ECC 使用多个位进行错误检查(具体数量取决于总线宽度),而不是一个位。ECC 内存使用一种特殊的算法,不仅能检测单比特错误,还能实际纠正它们。ECC 内存还会检测一个字节中多个数据位失败的情况。这种故障非常罕见,即使使用 ECC 也无法纠正。

售出的大多数计算机都使用非奇偶校验内存芯片。这些芯片不提供任何内置错误检查功能,而是依靠内存控制器进行错误检测。

广告

您需要多少 RAM?

有人说钱永远不够用,这句话对 RAM 也同样适用,特别是如果您进行大量图形密集型工作或游戏。除了 CPU 本身,RAM 是计算机性能中最重要的因素。如果您的 RAM 不足,增加 RAM 带来的改善可能比购买新的 CPU 还要大!

如果您的系统响应缓慢或持续访问硬盘,那么您需要增加更多 RAM。如果您运行 Windows 10,微软建议 32 位版本最低 RAM 要求为 1GB,64 位版本为 2GB。如果您升级到 Windows 11,您将至少需要 4GB。如果您使用搭载 MacOS 11 (Big Sur) 的 Mac,您也需要 4GB

广告

Linux 以在系统要求较低(包括 RAM)的系统上运行良好而闻名。Xubuntu 是一种流行的低要求 Linux 发行版,仅需要 512MB RAM。Xubuntu 使用轻量级 Xfce 桌面环境,该环境也适用于其他 Linux 发行版。当然,也有一些 Linux 发行版具有更高的系统要求。

无论您使用何种操作系统,请记住最低要求是针对正常使用情况估算的——浏览互联网、文字处理、标准家庭/办公应用程序和轻度娱乐。如果您进行计算机辅助设计(CAD)、3D 建模/动画或大数据处理,或者您是一名资深玩家,那么您将需要更多 RAM。如果您的计算机充当某种服务器(网页、数据库、应用程序、FTP 或网络),您也可能需要更多 RAM。

另一个问题是您的显卡上需要多少 VRAM。如今您能买到的几乎所有显卡都至少有 12-16MB 的 RAM。这通常足以在典型的办公环境中运行。如果您想进行以下任何操作,您可能需要投资一块更高端的显卡:

  • 玩逼真的游戏
  • 捕获和编辑视频
  • 创建 3D 图形
  • 在高分辨率、全彩环境中工作
  • 设计全彩插图

购买显卡时,请记住您的显示器和计算机必须能够支持您选择的显卡。

广告

如何安装 RAM

installing RAM
一名工程师将 RAM 安装到主板插槽中。Vesnaandjic/Getty Images

大多数情况下,安装 RAM 是一个非常简单直接的过程。关键在于做好功课。以下是您需要了解的:

  • 您有多少 RAM
  • 您希望添加多少 RAM
  • 外形规格
  • RAM 类型
  • 所需工具
  • 保修
  • 安装位置

RAM 通常以 2 吉字节的倍数密度出售:2、4、8、16、32。换句话说,模块是相同的标准尺寸,但同一块板上可以有不同容量的内存。例如,如果您的计算机有 8GB RAM,而您想要总共 16GB RAM,那么您会希望购买一个 8GB 密度的模块。

广告

一旦您确定了所需的 RAM 容量,请检查您需要购买何种外形规格(卡类型)。您可以在计算机附带的手册中找到此信息,或者联系制造商。重要的是要认识到,您的选择取决于计算机的设计。大多数用于普通家庭/办公的计算机都有 DIMM 插槽。高端系统正在转向 RIMM 技术,这种技术最终也将在标准台式计算机中普及。由于 DIMM 和 RIMM 插槽看起来非常相似,请务必仔细确认您的计算机使用哪种类型。将错误类型的卡插入插槽可能会损坏您的系统并毁坏该卡。

您还需要了解需要哪种类型的 RAM。有些计算机需要非常特定类型的 RAM 才能运行。例如,您的计算机可能只支持 60ns-70ns 奇偶校验 EDO RAM。大多数计算机并没有那么严格,但确实有限制。为了获得最佳性能,您添加到计算机中的 RAM 必须在速度、奇偶校验和类型上与现有 RAM 匹配。

此外,有些计算机支持双通道 RAM 配置,作为可选功能或必需功能。双通道 RAM 模块是成对安装的,因此如果安装了一个 512MB RAM 卡,旁边就会安装另一个 512MB 卡。当双通道是可选配置时,成对安装 RAM 可以加快某些应用程序的性能。

您的计算机只能配置接受这么多内存。内存插槽数量有限,而且根据您的机器,您可能只能使用 8GB 密度的模块,即使制造商生产 16GB 或 32GB 模块。或者,在某些情况下,您的计算机可能允许您升级出厂时安装的 RAM。如果您有一台机器配备了 4GB 可更换 RAM,但该机器可以接受 16GB,您可以购买两个 8GB 模块并替换掉 4GB 模块。

一些制造商——包括计算机和内存制造商——在其网站上提供向导,您可以在其中输入计算机型号,以帮助您找到需要安装的内存类型。检查您机器上的系统设置以查明安装了多少内存。一旦您知道有多少插槽以及它能接受多少内存,您就可以决定购买多少内存。有些制造商会将基本内存焊接到位,但除此之外,您也许可以卸载较小的 RAM 卡并用较大的替换它。

事先了解您的计算机配置将有助于您避免购买内存时的挫败感。打开计算机后发现无法使用所购买的内存,这可能非常非常令人恼火。

在打开计算机之前,请检查最终用户许可协议,确保在此过程中不会使保修失效。一些制造商会密封机箱,并要求客户由授权技术人员安装 RAM。如果您准备好打开机箱,请关闭并拔掉计算机电源。使用防静电垫或腕带接地,以释放任何静电。根据您的计算机,您可能需要螺丝刀或套筒扳手来打开机箱。一些台式机系统采用免工具机箱,使用手拧螺丝或简单的闩锁。笔记本电脑通常更具挑战性。

内存模块的实际安装通常不需要任何工具。RAM 安装在主板上的一系列插槽中,这些插槽被称为内存组。内存模块一端有凹槽,因此您不会插反。

对于 SIMM 和一些 DIMM,您通过将模块以大约 45 度角插入插槽,然后向前推动直到它与主板垂直,并且两端的小金属夹扣到位来安装它。如果夹扣没有正确卡住,请检查凹槽是否在正确的一端以及卡片是否牢固就位。许多 DIMM 没有金属夹扣;它们依靠摩擦力将其固定到位。同样,只需确保模块牢固地插入插槽即可。请阅读您主板的手册以获取说明。

模块安装后,合上机箱,重新插上计算机电源并开机。当计算机启动 POST(“开机自检”)时,它应该会自动识别内存,但这可能需要几次重启才能实现。就是这样了!

广告

广告

加载中...