RAM:被遗忘的历史(2024)

Hacker News Top 新闻

摘要

本文探讨了RAM鲜为人知的历史,从早期电子存储形式如继电器开始,在诸如Konrad Zuse的Z3计算机中,突出了RAM约束如何显著影响个人计算的发展。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/09/24 10:05

# RAM:一段被遗忘的历史 来源:https://blog.coredump.cx/p/memory-the-forgotten-history 在我2023年关于计算器演变(https://lcamtuf.substack.com/p/a-brief-history-of-counting-stuff)的文章中,我抱怨了我们教授计算机历史的方式。我认为我们对查尔斯·巴贝奇(Charles Babbage)的赞誉过多了。至少自17世纪以来,我们就已经知道如何制造机械计算器;可编程机器的概念也远早于这位英国博学家的著作。剩余的瓶颈主要在技术层面:超过一定复杂度后,链轮和凸轮使得在足够复杂的计算设备内部来回传输数据变得过于笨重。 真正的突破是电子控制的数据寄存器。这些电路允许计算结果被锁定到位,然后毫不费力地路由到需要的地方,无论整体设计多么复杂和庞大。与巴贝奇先生的沉思相比,这段关于"工作存储器"的历史得到的关注少得可怜。我们常常将其与大容量数据存储和计算机输入/输出的演进混为一谈,并且总是忘记,在20世纪最后几年之前,RAM(随机存取存储器)的容量限制一直是个人电脑发展最主要的制约因素。 第一种实用的电子存储形式是继电器。继电器本质上是由电磁铁驱动的机械开关。它的开关动作可以是瞬时的——仅在电磁铁通电期间持续;也可以是持续的,锁定在"开"状态,直到单独的"复位"线圈被通电。 闭锁继电器可以用相当直接的方式存储比特;瞬时继电器也可以通过在触点闭合后让继电器自身供电来构成锁存电路。该原理的简单示例如下所示: [](https://substackcdn.com/image/fetch/$s_!u-Eq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fb7ff92-3cb2-43af-a0c1-c70719ea419c_1800x1000.jpeg)*一个简单的单继电器锁存电路。注意,复位(RESET)按钮是常闭的。* 在这个电路中,按下"置位"(set)按钮将使继电器通电,从而也闭合并联的继电器驱动开关。即使释放"置位"按钮,电流仍会通过这条路径继续流动。要解锁电路,必须按下常闭(NC)的"复位"(reset)按钮以中断电流。 基于继电器的内存曾是可能是第一台真正的电子计算机——康拉德·楚泽(Konrad Zuse)的Z3——的核心部件: [](https://substackcdn.com/image/fetch/$s_!uBcY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6ff3063-9e3a-4cde-9ecf-a4c38345e3c4_6083x4522.jpeg)*楚泽Z3的内存单元,约1938年。来源:康拉德·楚泽互联网档案馆。* 机电继电器的开关速度以数十赫兹为单位衡量;楚泽先生从一开始就知道这项技术是死胡同。他采取权宜之计,希望能从纳粹政权获得长期资金。不幸的是——对欧洲大部分地区而言却是幸运的——官员们不以为然,资金从未到位。 盟军方面的同行们则运气更佳:早期的密码破译成功使他们能够追求更昂贵、更复杂的真空管设计。基于真空管的存储单元蓝图来自威廉·埃克尔斯(William Eccles)和弗兰克·威尔弗雷德·乔丹(Frank Wilfred Jordan)——一对几乎被遗忘的英国发明家,他们提出了以下双稳态电路作为机电继电器的替代品: [](https://substackcdn.com/image/fetch/$s_!ZDDG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89683f85-cde1-48b1-aeb8-259faed99ba8_2016x1222.png)*“离子继电器的改进”,英国专利(https://patents.google.com/patent/GB148582A/en)插图,1918年。* 当输入电流通过左侧的变压器绕组时,该电路会锁存。这会暂时使G1栅极电压更正向,打破两个真空管之间的电流平衡,并形成一个自我强化的反馈环路。 用现代术语来说,这两种电路都可以描述为置位-复位(SR)锁存器。它们的基本操作方式与如今存在于大多数微控制器和微处理器芯片上的高速低功耗SRAM(静态随机存取存储器)单元是相同的。当代SR架构的教科书示例可以是: [](https://substackcdn.com/image/fetch/$s_!1aTD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F895ef6a2-f091-4b56-b519-2dde5facc392_2000x700.jpeg)*一个简单的S-R锁存器实现。* 为了分析这个电路,让我们考虑一下如果"复位"线为高电平时会发生什么。在这种情况下,与门的一个输入始终为零,因此无论或门那边发生什么,电路输出都是"0"。 反之,如果"复位"为低电平,与门就作为或门的直通通道。至于或门本身,如果"置位"为高电平,它就无条件输出"1"。但如果"置位"未被置为有效,或门就会通过电路原理图上方的反馈环路传递先前的输出值。实际上,当S = R = 0时,设备处于锁存状态,并存储一个比特的数据,该数据代表之前出现在S和R输入线上的值。 我们可以到此为止,但有一个小细节:*大多数真空管计算机并未将真空管内存用于其大部分需求。*如果我们考虑楚泽Z3的内存单元需要大约2000个继电器,而机器的其余部分只需要600个,原因就很清楚了。对于相对昂贵的真空管来说,计算结果更糟,这还没考虑每个真空管需要持续消耗大量电力为灯丝加热。简而言之,在20世纪70年代中期大规模集成电路(LSI)芯片出现之前,主存通常不得不采用其他方式实现。 这个问题的解决方案是"动态"内存,它们依赖于相对短暂的物理现象——例如静电或声学——在廉价介质中存储信息。由于底层的物理过程仅持续很短时间,数据必须定期检索并刷新(或重新传输)。 最早的此类例子之一是阿塔纳索夫-贝里"计算机"(ABC)——实际上是一台精密但不可编程的计算器,它使用了一个带有机械切换电容器阵列的旋转鼓: [](https://substackcdn.com/image/fetch/$s_!q4dz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff26c808d-6697-4e01-b5c7-f9ddf309b8f0_2000x1334.jpeg)*阿塔纳索夫-贝里内存鼓,1942年。CC-BY,由Flickr用户monchan拍摄 (https://www.flickr.com/photos/monchan/30781535612)。* 每个电容器的电荷状态传递数字信息;单元的逐渐自放电需要定期刷新。这在很多方面是现代DRAM(动态随机存取存储器)的前身。我们台式电脑和智能手机中的DRAM芯片仍然使用电容器;我们只是将它们批量制造在硅芯片上,并采用电子方式对其进行寻址。尽管这种类型的内存比SRAM慢且功耗更高,但DRAM持久的优势在于它每个存储比特所需的组件更少——因此,占用的芯片面积也更小。 但回到早期计算:这个想法的另一个迷人化身是延迟线存储器。这些设备将数据编码为注入一段材料中的声波,然后在另一端进行探测。因为声音需要传播时间,一些比特就可以在电声环路中"在途"存储。主要优势是声音传播相当迅速,因此该系统的延迟远优于旋转电容器鼓。 这种类型最奇特的例子是水银延迟线。顾名思义,这些设备依赖有毒的金属作为声波的介质: [](https://substackcdn.com/image/fetch/$s_!A_Cr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac772573-c5f6-425e-adbd-20dd4202206f_2000x1334.jpeg)*水银延迟线存储器细节,UNIVAC I,1952年。作者拍摄。* 维基百科会告诉你选择水银是因为它独特地匹配压电换能器的声阻抗,但我认为这是对原始专利(US2629827A (https://patents.google.com/patent/US2629827A/en))的误读。固体金属的问题大概只是声纵波速度比在液体中高得多——因此在给定的时钟频率和柱长下,你无法存储那么多比特。相反,密度较低且更易压缩的液体的问题可能是它们会衰减高频,降低最大传输速率。总而言之,我怀疑水银只是为那个时代提供了最佳的存储容量——只要你不在乎安全或重量。 谢天谢地,当有人想到将金属卷起来以容纳更多在途数据时,这个"疯狂科学家"时代就结束了。认识扭转存储器: [](https://substackcdn.com/image/fetch/$s_!yWsT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe907a431-4edf-4677-ba0c-cdd59147e165_2000x1334.jpeg)*Monroe 925计算器中的扭转存储器,1970年。来源:Brent Hilpert (http://madrona.ca/e/eec/)。* 这种方法依靠声波在弹簧丝中传播,但这次使用的是扭转(扭曲)运动,而不是纵向(推拉)运动。这使得金属丝可以松散地盘绕并用橡胶垫圈固定;如果使用纵波,大部分声能在每个弯折处都会损失。 另一类早期动态存储器包括威廉姆斯管(Williams tube)和RCA Selectron管。两者都没有活动部件;后一种设备如下图所示: 这些存储器的工作原理有些类似阴极射线管(CRT),选择性地向荧光体基底发射电子,并将几百个比特存储为发光点的图案。尽管存储的数据肉眼可见,但读出却依赖于探测静电场的变化。本质上,电子在荧光体层中被撞击,产生净电荷,该电荷可以被附近的电极拾取并保持一段时间。 如今,即使在计算机历史爱好者中,磁性介质通常也与大容量、静态数据存储相关联:硬盘、软盘和LTO磁带。但大约在20世纪中叶的二十年间(大致在1950年至1970年之间),磁性主存也很常见。 这种存储方式最早的形式是磁鼓存储器,它介于阿塔纳索夫-贝里计算机的电容器存储和现代硬盘驱动器之间: [](https://substackcdn.com/image/fetch/$s_!8YrF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43498b53-9828-4fde-9c9e-b5d6021fa7a5_2000x1330.jpeg)*ERA磁鼓存储器,约1950年。CC-BY-NC-SA,由Flickr用户spyndle拍摄 (https://www.flickr.com/photos/spyndle/1497392167)。* 在这种设计中,读写磁头悬浮在一个快速旋转的铁磁圆柱体上方。圆柱体相对较小的直径,加上大量无需接触表面的并行磁头,使读取时间保持在合理范围内。但仍然不够短:那个时代的计算机已经在以多兆赫兹的速度运行了。我们需要更好的方法。 在集成电路前时代,我们能想到的最佳方案是固态磁芯存储器。这些设备由微观的铁氧体珠(“磁芯”)阵列组成,绝缘铜线以特定图案穿过其中: [](https://substackcdn.com/image/fetch/$s_!QLSB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4e304f7-a286-4e16-b076-7f5153a96191_2000x1347.jpeg)*Ampex高密度磁芯存储器,约1970年。作者拍摄。* 磁芯的关键特性是它们可以被外部磁场磁化,但只有当磁化场超过某个阈值时,它们的磁极性才会翻转。低于该阈值时,它们会保持先前的状态。 要写入特定单元,需要通过特定水平导线输送校准电流,从而在该导线周围感应出低于阈值的磁场。同时,沿垂直导线产生另一个低于阈值的磁场。在两根导线的交点处,组合磁场的强度将超过磁化阈值,从而"翻转"选定的磁芯。 读出过程稍微复杂一些:它依赖于覆写单元,然后探测如果极性翻转时预期产生的感应电流。如果未检测到此类电流脉冲,则意味着写入的值必定与之前存储在单元中的值相同。 磁性存储器速度快且体积极小;上面的显微照片显示了一个32 KB模块中大约63个比特,该模块整体尺寸为8x8英寸。 有趣的是,磁性RAM(MRAM)的遗产得以延续:一家名为Everspin Technologies的公司销售用于嵌入式应用的磁阻随机存取存储器芯片,容量最大可达16 MB。这些芯片的行为与SRAM完全相同,只是它们在断电后也能保持数据。目前,这项技术似乎并不特别有竞争力;我认为它可能在航空航天和国防应用中有些用途,因为它对辐射和电磁脉冲(EMP)的抵抗力更强。话虽如此,考虑到我们在存储器技术上走过这条曲折的道路,谁知道未来会怎样呢? [](https://substackcdn.com/image/fetch/$s_!IEjq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff83886f9-c25a-495d-b88b-85656fcee54f_256x70.png) *您可能喜欢的其他历史相关文章:* 计算器的图解史(https://blog.coredump.cx/p/a-brief-history-of-counting-stuff) 随机物件:Ball的专利防勒颈装置(https://blog.coredump.cx/p/random-objects-balls-patent-anti) 随机物件:Petal相机(https://blog.coredump.cx/p/random-objects-the-petal-camera) *我撰写关于极客文化、计算机历史等的深度研究、原创文章。**如果您喜欢这些内容,请订阅。*** #### 关于此文的讨论 ### 准备了解更多了吗?

相似文章

Mag Computer: RAM的量级历史 (1960–2025)

Hacker News Top

一集播客节目使用量级尺度探索了从1960年到2025年的RAM历史,展示了RAM如何从Apple II的千字节(KB)增长到现代iPhone的千兆字节(GB),这成为了计算能力的一个替代指标。

内存短缺可能持续数年

Hacker News Top

全球内存制造商预计到2027年底仅能满足60%的需求,短缺可能持续到2030年,因为芯片制造商优先将高带宽内存用于人工智能数据中心,而非消费电子产品。价格上涨已经影响到手机、笔记本电脑、VR头显和游戏设备。