计算机速成课 第二集 电子计算机
1. 背景
人类社会规模的以前所未有的速度不断增长,20 世纪上半叶,世界人口几乎翻倍。一战动员 7 千万人,二战 1 亿多人,全球贸易和运输更加紧密,工程和科学的复杂度也达到新高,甚至考虑登陆其他行星,复杂度的增高导致数据量暴增,人们需要更多自动化,更强的计算能力。很快,柜子大小的计算机变成房间大小的计算机,维护费用高,而且容易出错。
2.「继电器」时代:最大的机电计算机之一:哈佛马克一号
1944 年,由 IBM
完成,给二战同盟国建造。最早的用途之一:给“曼哈顿计划”跑模拟,有 76 万 5 千个组件,300 万个连接点和 500 英里长的导线,有一个 50 英尺的传动轴,有一个 5 马力的电机驱动。
这台机器“大脑”是「继电器」。
- 继电器:用电控制的机械开关。继电器中有根「控制线路」,控制电路是开还是关。
- 「控制线路」连着一个线圈,当电流流过线圈,线圈产生磁场,吸引金属臂,从而闭合电流。
- 比喻:继电器相当于是水龙头,控制总线相当于是水龙头把。打开水龙头,水会流出来。关闭水龙头,水就没了。继电器干的是一样的事情,只不过控制的是电子,而不是水。控制总线作用之一,还可以连接到马达,给马达计数+1。
- 缺点:
- 速度慢:继电器内的机械臂「有质量」,因此无法快速开关。举例:1940 年代,一个好的继电器 1 秒可以翻转 50 次,看起来很快,但是还是不足以解决复杂的大问题;1 秒能做 3 次加法或者减法运算,1 次乘法要花 6 秒,除法花 15 秒;更复杂的操作,例如:三角函数,可能需要一分钟以上。
- 齿轮磨损:任何会动的机械都会随时间磨损。
- 随着继电器数量增加,故障概率增加:哈佛马克一号有大约 3500 个继电器,假设继电器的寿命是 10 年,也意味着平均每天要换一个故障继电器,这个问题很严重,因为有的运算需要运行好几天。
- 吸引昆虫:巨大、黑色、温暖的机器会吸引昆虫。1947 年 9 月,哈佛马克2型的操作员从故障继电器中拔出一只死虫。
Grace Hopper
曾说:“每当电脑出了问题,我们就说它出了bug
(虫子)” ,这就是术语bug
的来源。
3. 如何提升计算能力?「真空管」时代!
如果想要进一步提高计算能力?需要更快更可靠的东西来代替继电器。
-
1904年, 英国物理学家
Ambrose Fleming
开发了新的电子组件 「热电子管」,是世界上第一个「真空管」。所谓热电子管是指:把两个电极装在一个气密的玻璃灯泡里,其中一个电极可以加热,从而发射电子,这叫「热电子发射」;另一个电极会吸引电子,形成「电龙头」的电流,但只有带正电才行,如果带负电荷或者中性电荷,电子就没有办法被吸引,越过真空区域,因此不会有电流。
-
「二极管」:电流只能单向流动的电子部件。我们需要的是一个能开关电流的东西。
-
1906 美国发明家
Lee de Forest
, 在Fleming
设计的两个电极之间,加入了第三个「控制」电极, 向「控制」电极施加正电荷,它会允许电子流动,但如果施加负电荷,它会阻止电子流动。因此,通过控制线路,可以断开或者闭合电路。这和继电器的功能一样,但重要的是「真空管」内没有会动的组件,也就意味着更少的磨损,更重要的是,每秒可以开闭数千次,因此这些「三极真空管」成为了无线电,长途电话以及其他电子设备的基础,持续了接近半个世纪。 -
「三极真空管」缺点:有点脆弱,像灯泡一样会烧坏。但比起继电器,是一次巨大进步。
-
起初,「三极真空管」很贵,收音机一般只用一个,计算机可能需要成百上千个电气开关,到了 1940 年代,「三极真空管」的成本和可靠性得到改进,可以用在计算机里,标志着计算机从机电转向电子。
举例
-
「巨人1号」
1943 年,由工程师
Tommy Flowers
设计,完工于 1943 年 12 月,在Bletchley Park
完成组装,总共制造了 10 台巨人计算机,用于破解纳粹通信,
是第一个大规模使用真空管的计算机,有 1600 个真空管,被认为是第一个可编程的电子计算机,但是需要配置。 -
2 年前(1941年),阿兰·图灵经常被成为「计算机科学之父」。图灵也在
Bletchley Park
做了台机电装置,叫Bombe
,这台机器设计的主要目的是破解纳粹「英格码」通讯加密设备,但严格来说,Bombe
不算计算机, -
电子数值积分计算机
ENIAC
,1946 年,由John Mauchly
和J. Presper Eckert
设计,在宾夕法尼亚大学完成建造, 这是世界上第一个真正的通用,可编程,电子计算机。它每秒可执行 5000 次十位数加减法,比前辈快了很多。它运作了 10 年,据估计,比当时全人类加起来还多。
4. 比真空管更快的「晶体管」时代!
到了 1950 年代,真空管计算机都达到了极限, 新的电子开关开始被需要。
-
1955 年,美国空军的
AN/FSQ-7
计算机完成,是SAGE
防空计算机系统的一部分; -
1947 贝尔实验室科学家
John Bardeen
,Walter Brattain
,William Shockley
发明了「晶体管」,每秒可以开关 10,000 次。一个全新的计算机时代诞生。「晶体管」就像之前讲过的「继电器」、「真空管」,也是一个开关,可以用控制线路来控制开或者关。它有两个电极,电极之前有一种材料隔开它们,这种材料有时候有电,有时候不导电,这种材料就是「半导体」,控制线连到一个「门」电极,通过改变「门」的电荷,我们可以控制半导体材料的导电性,来允许或者不允许电流流动。
- 优点:
- 比起玻璃制成,小心易碎的真空管,晶体管是固态的;
- 晶体管可以远远小于继电器或真空管,不仅小,还超级快,导致可以制造更小更便宜的计算机,例如 1957 年发布的 IBM 608,第一个完全用晶体管,而且消费者可以买到的计算机。它有 3000 个晶体管,每秒执行 4500 次加法,每秒执行
80次左右的乘除法。
- 优点:
举例:
IBM
很快把所有产品都转向了晶体管,把晶体管计算机带入办公室,最终引入家庭。William Shockley
搬到硅谷后,创立了「肖克利半导体」,里面的员工后来成立了「仙童半导体」,这里面的员工后来创立了「英特尔」,当今世界上最大的计算机芯片制造商。- 如今,计算机中的晶体管小于 50 纳米,而一张纸的厚度大概是 10 万纳米,每秒可以切换上百万次,并且能工作几十年。
5. 总结
- 开关的发展:
继电器
->真空管
->晶体管
,让电路开闭变得非常非常快。 - 计算机的发展
哈佛马克一号
-巨人1号
-Bombe
->ENIAC
。