为1948年IBM系统的真空管触发器模块供电
摘要
一篇深度技术博客文章,对1948年IBM 604的真空管触发器模块进行逆向工程,解释其电路并演示其工作过程。
暂无内容
查看缓存全文
缓存时间: 2026/08/05 16:56
# 为 1948 年 IBM 系统的真空管触发器模块通电
来源:https://www.righto.com/2026/07/ibm-604-trigger-tube-module.html
1948 年,IBM 推出了 604 电子计算打孔机。这台机器是一台可编程计算器,大小相当于两台并排的冰箱。它不完全是计算机,而是通过将导线插入插线板来编程。这台机器从打孔卡读取数字,对这些数字执行多达 60 次计算,然后通过在卡片上打孔来记录结果。1 (https://www.righto.com/2026/07/ibm-604-trigger-tube-module.html#fn:521)它每分钟处理 100 张卡片——每秒超过一张——IBM 宣称它相当于 150 名工程师。这台机器每月租金 550 美元,因此非常受欢迎,共生产了超过 5600 台。2 (https://www.righto.com/2026/07/ibm-604-trigger-tube-module.html#fn:references)
IBM 604 电子计算打孔机。照片来自 Ed Thelen 的 IBM 604 页面。(https://static.righto.com/images/ibm-650-flipflop/ibm-604-opened.jpg)
IBM 604 问世时晶体管刚刚发明,还太早无法使用晶体管。当时,计算器和计算机正从慢速的机电元件转向高速真空管。604 的创新之一是将真空管及其相关电路组合成一个可插拔模块。在上图左侧,你可以看到成排的这些模块,手柄伸出来,便于更换故障模块。更多模块位于银色金属盖后面。IBM 604 总共使用约 1300 个真空管。
下面的照片显示了一个可插拔管模块,绝缘手柄下方有一个真空管。模块底部的九个插脚插入 604 中的插座,插座通过背板接线连接。真空管也是插座式的,因此损坏的管子可以快速更换。在左侧,电阻和电容器安装在绝缘片上。模块提供了一种高密度实现电路的方式,将元件立体地封装在一起。
来自 IBM 604 电子计算打孔机的 TR-3 触发器模块。(https://static.righto.com/images/ibm-650-flipflop/ibm-tr3-module.jpg)
来自 IBM 604 电子计算打孔机的 TR-3 触发器模块。
每个可插拔管模块实现一种特定功能,例如反相器、放大器或功率驱动器。上面的模块是一个“触发器”模块,型号为 TR-3。触发器是一种具有两种状态——开和关——的电路,可以从一种状态切换到另一种状态,提供一位临时存储。(用现代术语来说,这被称为双稳态触发器。)触发器是 604 中的重要构建模块,用于生成定时信号和存储脉冲。IBM 604 中的算术运算由十进制计数器实现,这些计数器由 TR3 触发器构建而成。
在本文中,我描述了 TR-3 触发器模块的电路。(我最近写过关于 604 中一个闸流管模块 (https://www.righto.com/2026/06/ibm-604-thyraton-tube-module.html) 的文章;这是一个不同的模块。)在逆向工程该模块后,我给它通了电。上面的视频显示了模块的运行情况。通过按按钮,我将触发器从一种状态切换到另一种状态。发光的橙色氖灯显示触发器模块的状态。触发器的基本特性是它会保持一种状态,直到我按下另一个按钮。这可能看起来微不足道,但存储信息的能力对于计算至关重要。
## 真空管的工作原理
触发器模块使用一种常见的真空管,称为三极管,它将微弱信号放大以控制更强的信号。下图显示了三极真空管的构造。加热器是一根灯丝,类似于白炽灯泡,将阴极加热到大约 750°C。在这个高温下,阴极发射电子。如果在板极上施加大正电压(例如 150 伏),带负电的电子会被吸引到板极。从阴极到板极的电子流导致电流流过管子。由于空气会阻挡电子,脆弱的玻璃外壳保持真空,真空管因此得名。电流由栅极控制:如果在栅极上施加小的负电压,它会排斥负电子,阻止它们到达板极,从而阻断通过管子的电流。3 (https://www.righto.com/2026/07/ibm-604-trigger-tube-module.html#fn:npn)因此,栅极上的小信号控制着通过管子的大电流。
三极真空管的组成部件。来自 IBM 604 客户工程手册。(https://static.righto.com/images/ibm-650-flipflop/tube-diagram.jpg)
真空管的优势在于它们可以每秒开关上百万次,比继电器等机电设备快得多。IBM 604 的时钟速度为 50 千赫,远低于管子能处理的速度,但比同时代的 IBM 407 (https://www.righto.com/2017/04/1950s-tax-preparation-plugboard.html) 等机电会计机器中的 50 赫兹脉冲快三个数量级。
我在模块中使用的管子称为 2033 (https://www.radiomuseum.org/tubes/tube_2033.html)。6 (https://www.righto.com/2026/07/ibm-604-trigger-tube-module.html#fn:6j6) 这种管子是一个双三极管,将两个三极管组合在一个物理玻璃管中。双三极管非常受欢迎,因为它们使电路密度加倍。在下面的照片中,两个垂直的黑色结构是两个三极管的板极;其他结构不可见,因为它们位于板极内部。
2033 双三极真空管。(https://static.righto.com/images/ibm-650-flipflop/2033-tube.jpg)
2033 双三极真空管。
这种管子是一种“微型”真空管,包括玻璃外壳底部的七个插脚在内,长约 5 厘米。4 (https://www.righto.com/2026/07/ibm-604-trigger-tube-module.html#fn:nine-pin)由于单个三极管有五个连接,你可能会想,双三极管如何用七个插脚而不是十个。诀窍在于两个三极管共享阴极和加热器连接,这限制了该管子不能用于需要独立阴极的应用。
真空管的一个缺点是加热器消耗相当大的功率。这种管子的加热器需要 6.3 伏、300 毫安——每个管子近 2 瓦。使用 6.3 伏看起来有点随意,但许多真空管使用这个电压是出于历史原因:这是 6 伏汽车电池提供的典型电压。5 (https://www.righto.com/2026/07/ibm-604-trigger-tube-module.html#fn:automotive)在下面的照片中,你可以看到两个加热器的橙色辉光,大部分被板极遮挡,但顶部和底部可见。
管子通电后,显示发光的灯丝。(https://static.righto.com/images/ibm-650-flipflop/filaments.jpg)
管子通电后,显示发光的灯丝。
## 反相器和触发器电路
触发器电路基于两个反相器,所以我先解释一下管子反相器电路。7 (https://www.righto.com/2026/07/ibm-604-trigger-tube-module.html#fn:inverter)反相器的思想是放大并反相输入信号:低输入导致高输出,反之亦然。首先考虑低输入:如果在栅极上施加负电压,电子流被阻断,管子关闭。在这种情况下,电阻将输出拉高到 150 伏。然而,如果在栅极上施加正电压,管子打开并导通电流。该电流通过电阻上的压降将输出拉低,产生 50 伏的低输出。因此,低输入导致高(150 伏)输出,而高输入导致低(50 伏)输出,提供所需的反相作用。请注意,输入信号的摆幅超过 50 伏,与晶体管电路相比非常大。此外,输出电压远高于输入电压,这在连接电路时有些不方便。
反相器电路。改编自 IBM 604 CE 手册。(https://static.righto.com/images/ibm-650-flipflop/inverter.jpg)
触发器由两个首尾相连的反相器构成。第一个反相器的输出馈入第二个反相器,第二个反相器的输出再循环回第一个反相器。如果第一个反相器有高输出,第二个反相器就有低输出,该低输出反馈回第一个反相器,从而维持第一个反相器的高输出。如果第一个反相器有低输出,情况类似但相反。因此,这个电路有两个稳定状态,一个反相器导通,另一个截止。8 (https://www.righto.com/2026/07/ibm-604-trigger-tube-module.html#fn:convention)一旦电路被置入某种状态,它将保持该状态,直到被强制进入另一种状态。
两个反相器组成环路可以存储 0 或 1。(https://static.righto.com/images/ibm-650-flipflop/inverter-loop.png)
两个反相器组成环路可以存储 0 或 1。
我对 TR-3 模块进行了逆向工程,绘制了下面的原理图。9 (https://www.righto.com/2026/07/ibm-604-trigger-tube-module.html#fn:manual-schematic)看到反相器环路有点棘手,因为两个反相器共用一个管子,并且以交叉耦合的方式连接。简而言之,一个反相器使用管子的左半部分,另一个使用右半部分。一侧的板极输出通过 200K 和 1K 电阻连接到另一侧的栅极输入。模块的两个输出(插脚 7 和 8)取自板极,但输出 8 与板极之间有一个电阻。因此,两个输出提供不同的电压电平,使模块使用起来更灵活。10 (https://www.righto.com/2026/07/ibm-604-trigger-tube-module.html#fn:outputs)两个输入将触发器强制为一种状态或另一种状态。输入通过 40 pF 电容器连接,提供交流耦合,因此输入可以使用不同于输出的电压电平。
TR-3 触发器模块的逆向工程原理图。请注意,模块的插脚编号与管子的插脚编号不同。(https://static.righto.com/images/ibm-650-flipflop/schematic.jpg)
TR-3 触发器模块的逆向工程原理图。请注意,模块的插脚编号与管子的插脚编号不同。
一个棘手的地方是一个反相器的输出与另一个反相器的输入之间的连接。问题是输出电压为 50 至 150 伏,但输入栅极电压必须接近零(稍微正或稍微负)。解决方案是使用大的负电压(-100 伏)和电阻分压器作为电平移位器。当板极上有大的正电压和大的负偏置电压时,最终的栅极电压会变为适度正或适度负。因此,电路需要高正电压(用于板极)和高负电压(用于偏置),使电源要求变得复杂。
输入通过电容器馈入栅极,允许脉冲通过电容器到达栅极。你可能认为正脉冲会打开三极管,但该模块以相反的方式使用,用负脉冲来关闭三极管。(这个方向更灵敏,因为管子导通时增益更大。)因此,左输入上的负脉冲将关闭左侧。左侧的板极输出变高,将右侧的栅极拉高,打开右侧。右侧的板极输出变低,将左侧的栅极拉低,保持左侧管子关闭。类似地,右输入上的负脉冲关闭右侧,导致左侧打开。多个脉冲没有效果;那一侧保持关闭。正脉冲也没有效果;电路设计为正脉冲不足以打开三极管。11 (https://www.righto.com/2026/07/ibm-604-trigger-tube-module.html#fn:inputs)
我发现触发器电路有些难以捉摸:触发器需要足够稳定以保持一种或另一种状态,同时又要足够不稳定,以便输入脉冲能可靠地将其翻转到另一种状态。电路取决于仔细平衡栅极电压和输入电压。我尝试了不同的电源电压,发现在某些情况下触发器会振荡,而在其他情况下触发器会卡在一种状态。有趣的是,后来的 IBM 650 计算机放弃了这种类型的触发器电路,转而使用二极管逻辑(与门和或门)来置位和复位两个反相器的环路。这种类型的触发器状态由可靠的布尔逻辑决定,而不是由电压变化的模拟相互作用决定。
## 结论
触发器的发展是数字计算机历史上一个未被充分认识的步骤。因为触发器持有信息——状态——它可以用来创建状态机。这允许计算机逐步执行操作,而不是一大堆动作同时发生。
触发器电路可以追溯到 1918 年,当时两位英国物理学家 William Eccles 和 Frank Jordan 发明了一种使用两个交叉耦合三极管来创建具有两个稳定状态的电路。他们认为这个电路是一种继电器,由小信号触发并保持其状态直到被复位。他们为该电路申请了专利(Improvements in ionic relays (https://patents.google.com/patent/GB148582A))并撰写了文章:A Trigger Relay Utilising Three-Electrode Thermionic Vacuum Tubes (https://babel.hathitrust.org/cgi/pt?id=mdp.39015080387684&seq=336)。(下面的 Eccles-Jordan 触发器电路在概念上与 TR-3 触发器模块相似,使用交叉耦合三极管。一个区别是输入通过变压器耦合。)
Eccles-Jordan 触发器继电器示意图,来自他们 1919 年的论文。(https://static.righto.com/images/ibm-650-flipflop/eccles-jordan.jpg)
Eccles-Jordan 触发器继电器示意图,来自他们 1919 年的论文。
Eccles-Jordan 触发器最终导致了数字计数器。1939 年,*Electronics* 杂志发表了一篇文章 Trigger Circuits (https://www.worldradiohistory.com/Archive-Electronics/30s/Electronics-1939-08.pdf#page=6),描述了如何组合触发器电路来构建高速计数器。一个问题是可以很容易地将触发器组合起来进行二进制计数,但在 20 世纪 40 年代,计算和会计机器通常使用十进制数,而不是二进制。在开创性的 ENIAC 计算机(1945 年)中,笨重的计数器是通过将十个触发器排列成环形来计数每个十进制数字。IBM 工程师发明了一种更高效的十进制计数器,用四个触发器代替十个,提出了二进制编码十进制(BCD),并于 1946 年获得专利:Electronic Counting Circuit (https://patents.google.com/patent/US2584811A)。IBM 在 603 电子乘法器(1946 年)中使用了这种计数电路,随后是 604 电子计算打孔机(1948 年)。
现代计算机使用触发器——尽管现代名称是“双稳态触发器”——数量达数百万 (https://www.reddit.com/r/chipdesign/comments/yxv7c9/number_of_flip_flops_in_a_modern_intel_chipset/),但现在它们是微小的晶体管电路,而不是真空管模块。
如需更新,请在 Bluesky (@righto.com (https://bsky.app/profile/righto.com))、Mastodon ([@\[email protected\]](https://oldbytes.space/@kenshirriff)) 或 RSS (https://www.righto.com/feeds/posts/default) 上关注我。感谢 Robert Garner 提供模块,感谢 CuriousMarc 提供硬件支持。AI 声明:尽管存在
相似文章
Energizing a vacuum-tube flip-flop module from a 1948 IBM system
A detailed teardown and live demonstration of a TR-3 vacuum-tube trigger/flip-flop module from IBM's 1948 Electronic Calculating Punch, explaining its circuitry and historical significance.
给1948年IBM 604电子计算器的一个模块通电
本文讨论了为1948年IBM 604 Electronic Calculating Punch的一个闸流管模块通电,详细介绍了早期电子计算的历史背景以及可插拔模块的创新。
真空管出人意料的漫长寿命
这篇文章探讨了真空管技术出人意料的持久遗产,详细介绍了其历史起源以及在诸如大功率无线电发射机、微波炉和CRT显示器等应用中的持续使用,尽管半导体占据主导地位。
1980年Spacelab计算机电路逆向工程
对Spacelab使用的Mitra 125 MS小型计算机的ALU板进行详细的逆向工程分析,探讨其电路设计和历史背景。
奇葩电路#6:反向雪崩振荡器
本文描述一种反直觉的振荡器电路,使用无基极连接的反向NPN晶体管,通过反向雪崩击穿工作。