news 2026/8/26 21:21:09

晶体管之前:继电器与真空管如何撑起早期计算机

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
晶体管之前:继电器与真空管如何撑起早期计算机

1. 为什么要回头看“晶体管之前”

说实话,第一次看到“Before Transistors”这个标题时,我愣了几秒。现在干嵌入式、写硬件、调电路的人,天天和晶体管打交道,芯片里几亿个管子都不当回事,很少会有人主动往前想一步:在晶体管出现之前,人类到底是用什么造计算机的?

这个问题听起来像考古,但实际价值一点都不考古。2024年我拆一台老式继电器温控设备时,里面没有一颗芯片,全靠电磁继电器和机械触点完成逻辑判断。我蹲在那台设备前面看了半天,脑子里突然冒出一个念头:如果把这种逻辑单元堆到几千、几万个,是不是就是七十年前那帮工程师干的事?

答案是对的。而且更让人震撼的是,他们在没有晶体管、没有集成电路的条件下,不仅真的把计算机造出来了,还把人类对自动计算的渴望推到了临界点。直到1947年贝尔实验室那根点接触晶体管出现,整个赛道的方向彻底变了。

这篇博文我想认真聊聊“晶体管之前”的世界。不是简单地罗列古董设备,而是站在工程师视角拆解三件事:那时候的计算机怎么实现逻辑、怎么完成计算、遇到了什么不可逾越的瓶颈。顺带说一说,那个临界点为什么注定要被突破,以及今天学数字电路的人能从老技术里捞到什么真正有用的东西。

适合谁看?电子工程专业的在校生、刚入行的硬件工程师、对计算机历史感兴趣的技术爱好者,还有纯软件背景但想搞清楚“CPU底下到底是什么”的开发者。我尽量用大白话把原理讲透,不需要你提前学过高频电路或半导体物理。

2. 晶体管之前的三大技术路线:机械、继电器、真空管

2.1 机械计算:齿轮、棘轮与打孔卡片的漫长时代

晶体管之前,最早能被称为“计算机”的东西,是纯机械结构。1642年,19岁的帕斯卡为了帮当税务官的父亲计算税款,发明了帕斯卡加法器。这台黄铜做的盒子靠齿轮啮合完成加减法,每个齿轮代表一位十进制数字,转满十位就自动向高位进位。原理听着简单,但用纯机械实现“进位传播”这件事,难度远超想象——齿轮之间必须有间隙才能转动,有间隙就导致低位进位传到高位时会出现“扭动延迟”,位数一多误差就往上涨。

真正把机械计算推到巅峰的,是英国数学家巴贝奇。1834年他设计了分析机,这玩意儿有两个核心部件:磨坊(mill,相当于今天的ALU)和仓库(store,相当于内存),用打孔卡片编程,甚至支持条件跳转。如果造出来,它就是一台纯机械的通用计算机。可惜维多利亚时代的加工精度满足不了巴贝奇的要求——他需要的齿轮公差是每英寸几千分之一英寸,当时的机床根本做不出来,所以分析机到死也没完成总装。直到1991年,伦敦科学博物馆按照巴贝奇的图纸造了一台完整差分机,运转完美,证明了巴贝奇的设计思路是对的——问题出在制造工艺,而不是设计。

机械计算机时代给我最大的启发是:巴贝奇已经摸到了“存储程序控制”的边缘,但他造不出来,卡他的不是逻辑设计,而是基础材料和精密加工。这个规律在后来的技术史上反复出现——设计可以领先时代,但工程落地必须等材料和工艺跟上。

2.2 继电器:电磁开关搭起的“慢速巨人”

19世纪30年代,电报系统带来了一个新器件:继电器。它本质就是一个电磁铁控制的开关——线圈通电,衔铁吸合,触点闭合;线圈断电,触点断开。看起来只是个“远程开关”,但聪明的工程师很快意识到,这东西可以做逻辑运算。

为什么?因为布尔代数里的与门、或门、非门,底层操作就是“开”和“关”。把多个继电器触点串联就实现了与逻辑,并联就是或逻辑,反相就用常闭触点。以今天的视角看,继电器就是最原始的“逻辑门电路”,只不过封装大得像积木。

继电器计算机里最具代表性的作品是哈佛大学的Mark I和德国工程师康拉德·楚泽的Z3。Mark I 1939年开始建造,1944年完工,专门为美国海军计算弹道表。它全长15米,高2.4米,里面密密麻麻装了大约76万个小零件、3000多个继电器,一次加法耗时约0.3秒,乘法约6秒。Z3更狠,1941年建成,不仅用继电器做运算,还引入了二进制浮点数表示,具备程序控制能力。楚泽的Z3在原始论文中明确提出了“计算机应该用二进制”的观点,这比冯·诺依曼的体系结构论文还要早几年。

继电器计算机的硬伤极其明显:第一,慢。继电器是机械运动,衔铁吸合一次大约要5到10毫秒,做个三位数加法要经历几十次触点切换,速度以秒计。第二,噪声大。一整屋继电器噼里啪啦响起来,活像电报大楼,工程师在里面交流得扯着嗓子喊。第三,磨损严重。触点每开合一次就有电弧烧蚀,工作几万次就可能接触不良,得有人专门拿砂纸去打磨触点。但话说回来,继电器原理极其直观。我在实验室给本科生讲“什么是与门”时,直接拿两个继电器串联演示,他们看完马上理解为什么AND要“两个都为1输出才为1”,这比上来就教CMOS门电路直观得多。

2.3 真空管:用玻璃泡照亮现代计算

继电器的速度瓶颈逼着工程师找“没有机械部件的开关”。这个需求直接催生了真空管在计算机里的应用。

真空管的原理要从“热电子发射”说起:金属被加热到足够高的温度,内部电子的热运动能量足够克服表面势垒,就会逸出到真空中。真空管厂家把金属灯丝封在玻璃泡里抽成真空,外面套一个金属阳极板,灯丝加热后电子持续飞向阳极,就形成了电流。关键在于灯丝和阳极之间还可以加一个金属栅极——栅极电压的微小变化能显著控制飞向阳极的电子数量。这意味着真空管能当放大器用,也能当开关用:栅极给个正电压,管子导通;给个负电压,管子截止。

这个特性放在计算机里是革命性的。没有机械运动,电子在真空里飞,速度接近光速的百分之几,开关频率能到几十万赫兹,比继电器快了上千倍。于是从1943年开始,英美两国几乎同时开建真空管计算机。英国的Colossus用来破译德军密码,用了大约1800个真空管;美国宾夕法尼亚大学的ENIAC更大:18000个真空管、7万个电阻、10000个电容,占地167平方米,重达30吨,功耗150千瓦。

ENIAC的功耗数字特别值得体感化:150千瓦是什么概念?一台家用空调制冷功率大约2.5千瓦,ENIAC开机相当于同时开60台空调,而且这台“空调”不制冷,只发热。据说ENIAC机房里的温度经常烫得工作人员要穿白衬衫和背带裤轮流换班,因为机器故障率太高,电子管烧毁是家常便饭,平均每两天就要换掉一批管子。后来有个统计说,ENIAC最忙的时候,同时工作的人员里有一半是在换电子管。

3. 老式逻辑单元的原理拆解:继电器怎么做,真空管怎么做

3.1 继电器的布尔逻辑与串联并联规则

想深入理解“晶体管之前”的世界,不能光看设备和历史数字,得把底层逻辑亲手算一遍。

继电器做逻辑门,规则就两条:触点串联是与逻辑,触点并联是或逻辑。我举个例子。假设有一个继电器A的触点常开,一个继电器B的触点常开,你把这两个触点串在一个回路里,那只有当A和B同时吸合时,回路才通,这就是A AND B。如果你把A和B的触点并联,任意一个吸合回路就通,这就是A OR B。非逻辑怎么做?继电器的触点其实分两种状态:常开(NO)和常闭(NC)。线圈不通电时,NO是断开的,NC是闭合的。所以用常闭触点输出,就天然取反了——线圈通电,输出反而是断开的。三个逻辑门都有了,于是任何组合逻辑都能搭出来。

看一个更实际的例子:用继电器搭一个半加器。半加器需要两个输出:和位S,进位位C。输入A和B的布尔表达式是:S = A XOR B,C = A AND B。XOR可以拆成 (A AND NOT B) OR (NOT A AND B)。你用四个继电器(两个当输入缓冲,两个做反相),加一堆触点的串并联,就能把异或门焊出来。开关速度5到10毫秒,做一个两次继电器通的加法运算,视觉上真的看得到触点跳动——这也是我为什么推荐学生DIY一个继电器加法器,因为“可见的逻辑”比仿真软件里那一堆波形戳人得多。

3.2 真空管的放大原理与做开关的逻辑姿势

真空管做逻辑门,和继电器的一个本质区别是:继电器是电流驱动,线圈要流过足够的电流才能吸合;真空管是电压驱动,栅极几乎不取电流(高阻抗),用电压控制电流。这就是为什么真空管能做功率放大——栅极给一个小信号,阳极电路就能控制大电流,中间几乎不消耗输入能量。

在计算机里,真空管做“开关”通常有两种接法。一种叫共阴极开关:栅极电压比阴极低很多时,管截止,阳极电压接近电源电压;栅极电压抬高到接近阴极电压时,管导通,阳极电压被拉低。这和今天MOS管做逻辑门的思路几乎一模一样——输入的是电压,输出的是反相的数字电平——所以你完全可以拿一个双三极管焊一个简单的非门,输入高电平输出低电平,输入低电平输出高电平。

另一种接法是当射极跟随器,输出跟随输入变化,用于驱动下一级电路。但真正体现真空管“放大魔力”的场景在模拟领域:一台三管收音机,天线收到微弱的射频信号,经过三级真空管放大,最后能推动喇叭发出足够响的声音。没有放大,就没有广播、雷达、远程通信,也就不会有后来集成到芯片里那亿万只晶体管。

3.3 为什么老技术走不远:功耗、速度、可靠性的三角困局

把继电器和真空管的参数摊开对比,就能清楚看到临界点出现前的“极限墙”。

  • 速度:继电器开关周期约5-10毫秒,真空管切换周期约1-10微秒,晶体管早期也能做到几十纳秒。相差三个数量级。
  • 功耗:继电器单个不贵,但一台Z3用了2600个,总功耗大约4000瓦,大部分耗在电磁铁发热上。真空管更夸张,ENIAC单管功耗大约8瓦,18000个加起来就150千瓦。
  • 寿命:继电器触点几万次磨损,真空管内阴极涂层会蒸发老化,工作几千小时就得换。晶体管早期可靠性虽然也不高,但按小时失效(FIT)算比真空管好了一个量级以上。

这组数字说明什么呢?它说明每一条老技术路线都不是“设计不行”,而是“材料决定的物理上限”。继电器受制于机械惯量,真空管受制于热电子发射的效率与灯丝寿命。要跨越这堵墙,需要一个全新的物理机制——半导体材料里的电子迁移。

4. 临界点回顾:贝尔实验室与点接触晶体管的诞生

4.1 半导体基础:为什么是硅和锗

先铺垫一下背景知识。金属导电靠的是大量自由电子,绝缘体则基本没有自由载流子。半导体介于两者之间,而且有个极神奇的属性:它的导电能力可以通过掺入微量杂质来调控。硅是四价元素,掺入五价元素(如磷),多出来的那个电子就成了自由电子,这叫N型半导体;掺入三价元素(如硼),缺一个电子就形成“空穴”,空穴导电,这叫P型半导体。一个N型和一个P型做在一起,交界面会形成PN结,自然产生一个内建电场——这个结具有单向导通性,这就是现代所有半导体器件的起点。

为什么选硅和锗?因为硅是地壳里含量最丰富的固体元素之一,二氧化硅又天然是极好的绝缘层材料;锗在元素周期表里和硅同族,单晶生长相对容易,最早的点接触晶体管就是用锗做的。说白了,材料科学是老技术革命的加速器:有了成熟的单晶生长和可控掺杂工艺,半导体器件才有落地的可能。

4.2 1947年12月:一根金箔触点改变一切

时间回到1945年,贝尔实验室重组固体物理研究组,目标是找到真空管的替代品。负责人肖克利找来两位物理学家巴丁和布拉顿组成核心团队。巴丁精通量子力学,布拉顿则是实验高手,两人配合默契但性格差异极大。

他们尝试的路线是场效应原理:在半导体表面加电场,调制表面载流子浓度,从而控制电流。按理说这个原理应该奏效,但实验屡屡碰壁——表面态把电场全屏蔽了。巴丁提出一个修正:表面态的存在本身可以通过处理被利用,他把思路从“场效应彻底调变”修正为“在半导体表面构造一个微小接触点,让栅极信号通过表面态影响电流”。

1947年12月23日,布拉顿在一小块锗片表面压了两根距离极近的金箔触点,一根作为发射极,一根作为集电极,底部的金属基座做基极。当他在发射极上施加一个很小的正电流信号时,集电极回路里出现了放大几十倍的输出电流。这就是第一个点接触晶体管。

当时的实验记录显示,输入功率约0.5毫瓦,输出功率约25毫瓦,增益超过40倍。你想想,一个指甲盖大小不起眼的锗片,没有灯丝、没有真空、没有加热,小信号就能控制大信号,而且体积和功耗比真空管低了几个数量级。在场的肖克利立刻意识到这是诺奖级发现。但点接触晶体管本质上工艺极难控制——两根触点的间距得靠人手旋微调螺丝,良率极低。肖克利后来花了几个月推导,发明了结构上远更稳定的结型晶体管,才是真正可量产的结构。不过历史习惯上,还是把1947年12月那个下午,算作晶体管诞生时刻。

4.3 晶体管到底赢在哪

和继电器、真空管相比,晶体管把“开关”这个行为彻底微观化、固态化了:

  • 体积:点接触晶体管只有一颗豆子大,一个常规真空管比它大几十倍;
  • 功耗:晶体管工作电流按毫安级算,真空管按毫安到安培级算,且灯丝要持续耗电;
  • 寿命:没有热量累积的灯丝,没有机械触点,没有真空泄漏之忧;
  • 速度:早期锗晶体管开关频率虽然只有几兆赫兹,但已经远超真空管的几十万赫兹;
  • 放大能力:同样的增益,晶体管可以用更低的电压、更小的电流完成。

所以真正让人震撼的不是单个数字,而是整条技术曲线的彻底改写。晶体管的出现不是“改良”,是“换赛道”。

5. 现代工程师看懂“晶体管之前”的价值:从老技术里捞干货

5.1 工程思维层面:模块化、冗余与调试文化

老式计算机有一个今天很容易忽略的显著特征:全系统的每个部件都是可见的。ENIAC的每个十进制计数器都是一个面盘,坏没坏你一目了然;继电器计算机调试时,你可以听声音判断哪个触点没吸合。这种“可观测性”迫使工程师养成极强的模块化思维——每个子单元都有独立的工作指标和可插拔替换能力。

我们今天做嵌入式开发,总说“要从底层看到顶层”,但大多数时候只能对着逻辑分析仪的波形找问题。老式系统教给我们的调试哲学其实更朴素:先把各个模块独立测到完全正常,再连起来。不要指望整机联调能帮你快速定位问题——整机联调只能告诉你“这里有毛病”,模块独立测试才能告诉你“毛病的根源在哪”。这方法论在任何时代都不过时。

5.2 模拟电路视角:真空管与半导体电路的血缘关系

很多人不知道,早期晶体管电路设计直接继承了真空管电路的分析框架。比如射极跟随器和阴极跟随器的拓扑几乎一样,共射放大器和共阴极放大器的输入输出相位关系也一样,只是把灯丝电路替换成了偏置电阻网络。当年贝尔实验室的工程师们设计首台晶体管收音机时,参考的就是真空管收音机的成熟电路,只是把电子管换成三极管,把高电压电源换成低电压电池。

这意味着,如果你能看懂老式真空管电路的直流工作点计算,学晶体管放大电路会非常顺。懂老技术不是只能讲情怀,今天很多高保真音响发烧友还坚持用电子管功放,就是因为电子管在“偏置曲线”的失真特性上自有独特的偶次谐波成分,听感更暖。你让一个只学过现代运放的人去分析电子管功放电路,他会先困惑,但只要把每个电子管抽象成一个压控电流源,整个电路的解法就回到经典模拟电路框架里了。

5.3 动手实践:自己搭一台继电器逻辑演示器

如果你被“晶体管之前”的世界吸引,想亲手体验一下,我最推荐的入门项目不是直接复刻ENIAC,而是做一个两位数二进制加法器:

  • 材料:8个5V继电器、若干LED、开关、面包板、导线、5V电源。
  • 步骤1:先用两个继电器搭一个半加器。A、B两个开关作为输入,第一个继电器的线圈接A,第二个接B,把常开触点串联输出到LED,这就是AND进位的演示;再把异或门用四个继电器组合起来,输出到另一个LED。
  • 步骤2:验证真值表。00熄灯、01亮一个、10亮一个、11进位点亮。亲眼看触点吸合、LED变化,比看任何仿真都直观。
  • 步骤3:把两个半加器级联成完整加法器,再接到拨码开关和数码管上,就是一台“看得见”的CPU逻辑模型。

整个项目预算大约100元,一个下午能搞定。做完你会对“为什么需要晶体管”产生极强的体感——那8个继电器加起来至少几百克,速度按毫秒算,而同样功能用一颗指甲盖大小的芯片,运行速度高出一百万倍。

6. 常见误区与实操中的坑

在回顾老技术、或者尝试DIY继电器演示器的时候,有几个容易踩的坑,我按经验列一下。

6.1 误区一:晶体管是“突然发明”的

实情是,场效应管的概念在20世纪20年代就有人申请专利了(李林费尔德1925年),无线电工程师早已知道半导体整流器,贝尔实验室也不是凭空立项。晶体管是长期半导体物理、材料制备工艺和电子电路需求三条线汇聚的产物。理解这一点很重要:真正革命性的突破从来不是灵光一现,而是在临界点上,所有条件刚好凑齐。

6.2 误区二:ENIAC就是第一台计算机

这个说法常年流行,但严格说并不准确。ENIAC确实是第一台大型通用电子数字计算机,但“第一台电子计算机”的争议一直在:阿塔纳索夫-贝瑞计算机(ABC)比ENIAC更早,但不可编程;英国的Colossus是专用破译机;楚泽的Z3是继电器计算机,不算电子。所以更准确的说法是:ENIAC是“第一台通用电子数字计算机”,它最大的贡献是验证了“电子逻辑”这条技术路线的可行性和扩展性。

6.3 实操坑:继电器演示器并联线圈的续流问题

如果你真动手做继电器加法器,有一个细节必须注意:继电器线圈是电感,断开瞬间会产生反向电动势,可能达到几十伏的反向尖峰,直接打坏你的开关或电源。解决方法是每个线圈两端反并联一个二极管(1N4148或1N4007均可),线圈断电时给反向电流提供泄放回路。我第一版焊线时偷懒没加,结果烧了两个开关触点,表针打到底才意识到问题。

6.4 实操坑:继电器触点弹跳

触点吸合不是“哐”一下完美闭合,而是会弹跳几次,持续几毫秒。这种机械弹跳在逻辑电路里会导致计数错位。所以我建议在输入开关上做RC去抖,或者在代码里做按键消抖(如果控制器控制继电器)——别把一个看似简单的继电器电路当成“低级电路”,该做的工程防护一样不能少。

7. 最后的体会:看完“晶体管之前”,我对技术的理解变了

这篇文章讲到这儿,我特别想聊聊自己最后沉淀下来的价值观层面的感受。我最早入行时,学的是MOS管、Verilog、芯片设计,觉得“数字电路”天生就该是那样,从没想过背后还有一条如此漫长的技术迭代链。

直到我亲手搭完那个继电器加法器,又把真空管放大电路调通了,才真正理解什么叫“工具的边界决定时代的边界”。巴贝奇的设计拿到今天依然让人震撼,但他在1820年代给不了他计算机科学需要的材料;ENIAC已经能跑弹道计算,但150千瓦的功耗注定它无法走出机房。晶体管不是被某个人“发明”出来的,而是整个文明爬到那个位置时,物理世界给出的必然回应。

所以我一直鼓励身边的朋友,偶尔往回翻翻技术史的书,尤其是动手复刻一个小实验。你不需要复古成瘾,只需要在某个下午,用继电器、二极管和几根跳线,亲手做一个半加器,然后你会对每天用的那颗主控芯片产生完全不一样的敬畏。技术不是从天而降的恩赐,是一代代工程师在原理、材料、工艺的夹缝里一点点抠出来的。看懂了来路,才能更踏实地走脚下的路。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/26 21:20:28

从终端到AI员工:用Claude Code构建本地智能助手TARS

最近我用 Claude Code 搭了一个很像《星际穿越》里 TARS 的本地 AI 员工原型:能中文语音对话、能接管屏幕操作软件、能根据一句话需求自动构建一个完整应用。如果你正在研究 AI Agent、AI 编程工具,或者想把 Claude Code 从“终端里的自动补全”升级成“…

作者头像 李华
网站建设 2026/8/26 21:18:08

规范驱动开发实战:用openSpec与AI协作生成Node.js应用

1. 项目概述:当AI开始“读”规范,开发范式正在被重塑 最近在跟几个做AI应用开发的朋友聊天,发现一个挺有意思的现象。大家不再只是埋头调API、拼Prompt,而是开始琢磨怎么让大模型更“结构化”地参与开发流程。其中一个被反复提及的…

作者头像 李华
网站建设 2026/8/26 21:13:14

搜索引擎用户查询意图分析:从分类到机器学习与深度学习实践

1. 项目概述:从“关键词”到“用户在想什么”做搜索这么多年,我越来越觉得,一个搜索引擎真正的门槛,不在于它索引了多少网页,而在于它能不能听懂“人话”。用户输入一个查询词,背后可能藏着十几种不同的心思…

作者头像 李华
网站建设 2026/8/26 21:11:53

蓝桥杯国赛冲刺指南:从算法优化到实战策略的最后一公里

1. 项目概述:从省赛到国赛的最后一公里冲刺 “蓝桥杯备战国赛1”这个标题,对于所有从省赛中杀出重围的选手来说,都意味着一段既紧张又充满挑战的旅程。它不是一个从零开始的学习计划,而是针对已经具备相当实力的选手,在…

作者头像 李华
网站建设 2026/8/26 21:08:02

天然气水合物资源量评价:测井联合反演与贝叶斯不确定性量化

1. 这不是“套模板”的数学建模题,而是一道真实地质资源评估的工程问题“天然气水合物资源量评价”——光看标题,很多人第一反应是:又一道用现成模型套数据的数维杯常规题。但如果你真去翻过中国地质调查局2023年发布的《南海神狐海域天然气水…

作者头像 李华
网站建设 2026/8/26 21:07:28

天工Ultra跑赢人类?解析人形机器人高速奔跑背后的技术栈

38.15秒跑完400米,这不是人类运动员,而是人形机器人天工Ultra在首届世界人形机器人运动会上交出的成绩单。 看到这个数字,很多人的第一反应是:机器人已经跑得比人类还快了?是的,人类400米世界纪录是43.03秒…

作者头像 李华