独特而被遗忘:苏联导弹防御系统的诞生。 EPOS项目
JUICE
Jan G. Oblonsky是Svoboda的第一批学生之一,也是EPOS-1的开发者,以这种方式回忆了它(日志:Antonin Svoboda,1907-980年,IEEE计算历史年鉴第2卷,第4期,第1980期)。 XNUMX):
最初的想法是 Svoboda 于 1950 年在他的计算机开发课程中提出的,当时在解释构建乘法器的理论时,他注意到在模拟世界中,加法器和乘法器之间没有结构差异(唯一的区别在于应用输入和输出的适当比例),而它们的数字实现是完全不同的结构。 他邀请他的学生尝试找到一种数字电路,可以轻松地进行乘法和加法运算。 一段时间后,其中一名学生米罗斯拉夫·瓦拉赫 (Miroslav Valach) 带着编码的想法接近了 Svoboda,这种想法被称为剩余班级系统。
为了理解它的工作,你需要记住自然数的除法是什么。 显然,使用自然数,我们不能表示分数,但我们可以用余数进行除法。 很容易看出,将不同的数除以相同的给定m,可以得到相同的余数,在这种情况下,他们说原始数是可比模m的。 显然,可以正好有 10 个残差 - 从零到九。 数学家们很快注意到,可以创建一个数字系统,而不是传统的数字,而是会出现除法的余数,因为它们可以以相同的方式进行加、减和乘法。 因此,任何数字都可以由一组不是通常意义上的数字,而是一组这样的余数来表示。
为什么这样的变态,它们真的会使事情变得容易吗? 事实上,当涉及到执行数学运算时,它会变成怎样。 事实证明,机器不使用数字而是使用剩余物执行操作要容易得多,这就是原因。 在残差类别的系统中,每个数字(在通常的位置系统中为长数位和非常长的数字)表示为一位数的元组,这是将原始数除以RNS的基数的余数(互质数元组)。
在这样的过渡期间,工作将如何加速? 在常规的位置系统中,算术运算按位顺序执行。 在这种情况下,传输形成到下一个最高有效位,这需要复杂的硬件机制来处理,它们通常缓慢而顺序地工作(有各种加速方法,矩阵乘法器等,但是这在在任何情况下,都是非平凡和繁琐的电路)。
在 RNS 中,可以并行化这个过程:对每个基的残差的所有操作都单独、独立地在一个时钟周期内执行。 显然,这将所有计算加速了很多倍,此外,余数根据定义是一位,因此,计算它们的加法、乘法等结果。 没必要,将它们闪存到操作表的内存中并从那里读取就足够了。 因此,RNS 中的数字运算比传统方法快数百倍! 为什么这个系统没有立即在所有地方实施? 像往常一样,它只是在理论上顺利发生 - 实际计算可能会遇到溢出等麻烦(当最终数字太大而无法放入寄存器时),RNS中的舍入也非常重要,以及数字的比较(严格来说,RNS 不是位置系统,术语“或多或少”在那里根本没有任何意义)。 Valakh 和 Svoboda 关注的正是这些问题的解决方案,因为 SOC 承诺的优势已经非常大了。
掌握SOC机器的运行原理,考虑一个例子(对数学不感兴趣的可以省略):
逆向平移,即从残差中恢复一个数的位置值比较麻烦。 问题是我们实际上需要解决一个包含 n 个比较的系统,这会导致计算时间过长。 RNS 领域的许多研究的主要任务是优化这个过程,因为它是大量算法的基础,在这些算法中,以一种或另一种形式,关于数字在数轴上的位置的知识是必要的。 在数论中,求解所指示的比较系统的方法早已为人所知,并且是由已经提到的中国剩余定理得出的结果。 转换公式比较繁琐,这里就不介绍了,我们只是注意到在大多数情况下会尽量避免这种转换,优化算法以保持在RNS中直到结束。
该系统的另一个优点是,以表格方式,以及在 RNS 中的一个循环中,不仅可以对数字执行运算,还可以对以多项式形式表示的任意复杂函数执行(如果,当然,结果不超出表示范围)。 最后,SOC 还有一个重要的优势。 我们可以引入其他基础,从而以自然和简单的方式获得错误控制所需的冗余,而不会因三重冗余而使系统混乱。
此外,RNS 可以在计算本身的过程中进行控制,而不仅仅是在将结果写入内存时(如传统数字系统中的纠错码所做的那样)。 一般来说,这一般是在工作过程中控制ALU的唯一方式,而不是RAM中的最终结果。 在1960年代,一个处理器占据了一个或多个机柜,其中包含成千上万的单个元件,可焊接和可拆卸的触点以及数千米的导体-保证了各种干扰,故障和失败以及不受控制的干扰源。 向 SOC 的过渡使系统的抗故障能力提高数百倍成为可能。
因此,SOK 机器具有巨大的优势。
- “开箱即用”的最高容错能力,在每个阶段对每个操作的正确性进行自动内置控制 - 从读取数字到算术再到写入 RAM。 我认为没有必要解释,对于导弹防御系统来说,这可能是最重要的品质。
- 理论上最大可能的运算并行度(原则上,RNS内的所有算术运算都可以在一个周期内完成,完全不注意原始数字的位深)和任何其他方法无法达到的计算速度. 同样,无需解释为什么导弹防御计算机应该尽可能高效。
因此,SOK机器只是乞求将其用作反导弹防御计算机,在这些年中,没有什么比它们更好的了,但是这些机器仍然必须在实践中制造,并且必须避免所有技术难题。 捷克人巧妙地应对了这一点。
五年研究的结果是Wallach的文章“余数类的代码和数字系统的起源”,该文章于1955年发表在收藏集“ Stroje Na Zpracovani Informaci”(第一卷)中。 3、纳克尔。 CSAV,在布拉格。 一切都为开发计算机做好了准备。 除了 Wallach 之外,Svoboda 还吸引了更多才华横溢的学生和研究生参与该过程,并开始了工作。 从1958年到1961年,已经准备了大约65%的名为EPOS I的机器部件(来自捷克的elektronkovypočitačstředni-中型计算机)。 计算机本应在 ARITMA 工厂的设施中生产,但与 SAPO 的情况一样,EPOS I 的引入并非没有困难,尤其是在元件底座的生产领域。
存储单元缺乏铁氧体、二极管质量差、缺乏测量设备——这些只是 Svoboda 和他的学生必须面对的一个不完整的困难清单。 最大的追求就是要获得诸如磁带之类的基本物品, 故事 它的收购也被一个小小的工业恋情所吸引。 首先,在捷克斯洛伐克,它作为一个类缺席;它根本没有生产,因为他们根本没有任何设备。 其次,在 CMEA 国家,情况类似——当时磁带不知何故仅由苏联制造。 它不仅具有可怕的质量(一般来说,外围设备的问题,尤其是从计算机到小型磁带的该死的磁带问题一直困扰着苏联人直到最后,任何有幸使用苏联磁带的人都有一个巨大的关于它是如何被撕裂、倒出等的故事数量),因此捷克共产党人出于某种原因没有等待苏联同事的帮助,也没有人给他们丝带。
结果,通用工程部部长卡雷尔·波拉切克(KarelPoláček)分配了1,7万克朗的补贴,用于提取西方的磁带,但是,由于官僚主义的阻碍,事实证明,在限制范围内无法释放该数额的外汇通用工程部进口技术。 在处理此问题时,他们错过了1962年的订购截止日期,不得不等待整个1963年。 最终,仅在1964年布尔诺国际博览会期间,通过国家科学技术发展协调委员会和国家管理和组织委员会的谈判,才有可能实现磁带存储器的进口。使用 ZUSE 23 计算机(由于禁运,他们拒绝单独从捷克斯洛伐克出售磁带,我不得不从中立的瑞士人那里购买整台计算机并从中取出磁驱动器)。
EPOS 1
EPOS I 是一个模块化单播电子管计算机。 尽管从技术上讲它属于第一代机器,但其中使用的一些想法和技术非常先进,仅在几年后就在第二代机器中大规模实施。 EPOS I 由 15 个锗晶体管、000 个锗二极管和 56 个真空管组成,根据配置,它的速度为 000-7 kIPS,这在当时还不错。 这辆车配备了捷克语和斯洛伐克语键盘。 编程语言-自动编码EPOS I和ALGOL 800。
该机器的寄存器是在那些年最先进的镍钢磁致伸缩延迟线上收集的。 它比 Strela 水银管凉爽得多,直到 1960 年代后期才被用于许多西方设计中,因为这种存储器便宜且速度相对较快,因此被 LEO I、各种 Ferranti 机器、IBM 2848 显示控制和许多其他早期视频终端使用(一根线通常存储 4 个字符串 = 960 位)。 它还被成功用于早期的桌面电子计算器,包括 Friden EC-130 (1964) 和 EC-132、Olivetti Programma 101 (1965) 可编程计算器,以及 Litton Monroe Epic 2000 和 3000 (1967) 可编程计算器。
从左到右:IBM 2260 显示站、IBM 2848 显示控制(一个 400 公斤重的机柜,1,5 米宽,包含用于为 24 个终端生成视频信号的所有东西,数据传输距离为 600 米),典型的在电线延迟线上注册,档案中的照片 IBM
总的来说,捷克斯洛伐克在这方面是一个了不起的地方——介于苏联和成熟的西欧之间。 一方面,在1950年代中期,即使有灯也存在问题(记得它们也在苏联,尽管程度没有那么低),而Svoboda则采用1930年代过时的技术制造了第一批机器-另一方面,到 1960 年代初,捷克工程师可以使用相当现代的镍延迟线,5-10 年后开始在国内开发中使用(例如,到它们在西方过时时,国产的 Iskra-11”,1970 年,和“Electronics-155”,1973 年,后者被认为非常先进,他已经在 VDNKh 上获得了银牌)。
您可能已经猜到,EPOS I 是十进制的并且具有丰富的外设,此外,Svoboda 在计算机中提供了多种独特的硬件解决方案,远远领先于他们的时代。 计算机中的 I/O 操作总是比使用 RAM 和 ALU 慢得多,因此决定使用处理器的空闲时间,而它正在执行的程序访问慢速外部驱动器来启动另一个独立程序 - 总的来说,在这个可以并行执行多达 5 个程序! 它是世界上第一个使用硬件中断的多程序实现。 此外,引入了外部(并行启动与各种独立机器模块一起工作的程序)和内部(分工操作的流水线,最费力)分时,这使得可以多次提高生产率。
这种创新的解决方案理所当然地被认为是 Freedom 的建筑杰作,仅在几年后就被大量应用于西方的工业计算机中。 EPOS I多程序计算机控制是在时间共享的想法还处于初期的时候开发的,即使在1970年代后半期的专业电气文献中,它仍然被称为非常先进的。
计算机配备了一个方便的信息面板,可以实时监控进程的进度。 设计最初假设主要部件的可靠性并不理想,因此 EPOS I 可以在不中断当前计算的情况下纠正个别错误。 另一个重要功能是能够热插拔组件,以及连接各种 I/O 设备和增加磁鼓或磁存储设备的数量。 由于采用模块化结构,EPOS I 具有广泛的应用:从海量数据处理和行政工作自动化到科学、技术或经济计算。 此外,它优雅而帅气,与苏联不同,捷克人不仅考虑性能,还考虑汽车的设计和便利性。
尽管政府紧急要求和紧急财政补贴,但通用机械制造部无法在本应生产 EPOS I 的 VHJ ZJŠ 布尔诺工厂提供必要的生产能力。最初,假设机器该系列的产品将满足国民经济的需要,直到 1970 年左右。 结果,事情变得更加悲惨,零部件的问题并没有消失,此外,强大的TESLA干预游戏,这对于生产捷克汽车来说是非常无利可图的。
1965 年春天,在苏联专家的见证下,EPOS I 进行了成功的国家测试,其逻辑结构的质量与世界水平相当,尤其受到高度评价。 不幸的是,计算机已成为一些试图推动进口计算机决定的计算机“专家”毫无根据的批评的对象,例如,斯洛伐克自动化委员会主席雅罗斯拉夫·米哈利卡写道(Dovážet, nebo vyrábět samočinné počítače? in : Rudé právo, 13.ubna 1966, s. 3.):
除了原型机,捷克斯洛伐克没有生产任何一台计算机。 从世界发展的角度来看,我们计算机的技术水平很低。 例如,EPOS I 的能耗非常高,达到 160-230 kW。 另一个缺点是它只有机器代码的软件,没有配备所需数量的程序。 室内安装计算机的建设需要较大的建设投资。 另外,我们也没有完全保证从国外进口磁带,没有它EPOS I完全没用。
这是冒犯性和毫无根据的批评,因为所指出的缺点都没有与 EPOS 直接相关——它的功耗完全取决于所使用的元件底座,对于灯机来说,它已经足够了,磁带的问题通常比技术更具政治性,并且将任何主机安装到房间里,现在与其精心准备有关,而且相当困难。 该软件没有机会凭空出现——它需要生产机器。 工程师 Vratislav Gregor 对此表示反对:
EPOS I 原型在没有空调的情况下三班倒,在不适应的条件下完美地工作了 4 年。 我们机器的第一个原型解决了在捷克斯洛伐克其他计算机上难以解决的任务......例如,监测青少年犯罪,分析语音数据,以及具有重要实际应用的科学和经济计算领域的较小任务. 就编程工具而言,EPOS I配备了ALGOL ...对于第三个EPOS I,已经开发了大约500个I / O程序,测试等。 进口计算机的其他用户从未以如此及时和如此数量的方式向我们提供程序。
不幸的是,当EPOS I的开发和验收工作完成时,它确实已经过时了,并且VÚMS在不浪费时间的情况下并行地开始构建其完全晶体管化的版本。
EPOS 2
EPOS 2 自 1960 年开始开发,代表了世界第二代计算机的顶峰。 设计的模块化允许用户像第一个版本一样使计算机适应要解决的特定类型的任务。 平均运行速度为 38,6 kIPS。 作为比较:强大的银行主机 Burroughs B5500 - 60 kIPS,1964; CDC 1604A,传说中的Seymour Cray机器,也被用于苏联核项目的杜布纳(Dubna),其功率为81 kIPS,甚至是IBM 360/40系列的平均值,其中一系列后来在苏联克隆, 1965年开发出来的,在科学问题上只给出了40 kIPS! 按照1960年代初期的标准,EPOS 2是一流的汽车,可与西方最好的例子相提并论。
EPOS 2 中的时间分配仍然不像许多外国计算机那样由软件控制,而是由硬件控制。 一如既往,该死的磁带有一个插头,但他们同意从法国进口,后来 TESLA Pardubice 掌握了它的生产。 对于电脑,开发了自己的操作系统ZOS,并刷入ROM。 ZOS代码是FORTRAN,COBOL和RPG的目标语言。 2 年 EPOS 1962 原型机的测试成功,但由于与 EPOS 1 相同的原因,到年底计算机没有完成。因此,生产推迟到 1967 年。 自 1968 年以来,ZPA Čakovice 一直以 ZPA 2 的名称连续生产 EPOS 600,并且自 1971 年以来 - 在 ZPA 601 的改进版本中。两台计算机的批量生产于 1973 年结束。 ZPA 601 软件部分兼容 MINSK 22 苏联机器系列,共生产了 38 台 ZPA 型号,是世界上最可靠的系统之一。 它们一直使用到 1978 年。 同样在 1969 年,小型 ZPA 200 计算机的原型被制造出来,但没有投入生产。
回到 TESLA,应该指出的是,他们的领导确实全力破坏了 EPOS 项目,原因很简单。 1966年,他们推捷克斯洛伐克中央拨款1,1亿克朗购买法美大型机Bull-GE,根本不需要简单、方便、便宜的国产电脑。 来自中央委员会的压力导致这样一个事实:不仅发起了一场运动,以诋毁 Svoboda 及其研究所的作品(你已经看到了这种引述,它没有在任何地方发表,而是在主要的新闻机构中发表)。捷克斯洛伐克共产党 (Rudé právo),但最终通用机械制造部被命令限制自己生产两台 EPOS I,连同原型机,最终制造了 3 件。
EPOS 2也倒下了,TESLA公司竭尽全力证明这台机器没用,并通过DG ZPA(Instrument and Automation Plants,隶属于VÚMS)的管理,推动了开发之间公开竞争的想法Freedom 和最新的大型机 TESLA 200。1964 年,美国人与意大利制造商 Olivetti 一起收购了通用电气,他们开始开发新的大型机 BULL Gamma 140。然而,由于洋基队,它在美国市场的发布被取消了决定将与他们自己的通用电气 GE 400 进行内部竞争。 结果该项目悬而未决,但随后 TESLA 的代表成功出现,他们以 7 万美元购买了原型机及其生产权(因此, TESLA 不仅生产了大约 100 台这样的计算机,而且还设法在苏联销售了几台!)。 正是这款名为 TESLA 200 的第三代汽车击败了不幸的 EPOS。
查尔斯大学物理与数学学院圆形大厅中的 EPOS 2 原型,照片来自捷克历史档案 设备
TESLA 有一台完整的串行调试计算机,带有全套测试和软件,VÚMS 只有一个原型,外围设备不完整,操作系统和驱动器的总线频率比法国大型机上安装的频率低 4 倍。 初步运行后,EPOS 结果正如预期的那样令人失望,但聪明的程序员 Jan Sokol 显着修改了常规排序算法,员工日以继夜地工作,想到了硬件,拿到了几个快速驱动器类似于TESLA,结果EPOS 2赢得了一个更强大的法国大型机!
... 和他的对手 - BULL Gamma 140,照片法国公牛和信息技术博物馆 (http://www.feb-patrimoine.com)
在评估第一轮的结果时,索科尔在与 ZPA 的讨论中谈到了比赛的不利条件,并同意领导。 然而,他的抱怨被驳回了,“战斗结束后,每个士兵都是将军”。 不幸的是,EPOS 的胜利并没有对它的命运产生太大影响,很大程度上是由于不幸的时间——那是 1968 年,苏联 坦克,镇压布拉格之春,一直以其极端自由主义而闻名的 VÚMS(此外,最近有一半最优秀的工程师与 Svoboda 一起逃往西方),说得委婉一点,并没有受到当局的高度重视。
但是,然后我们故事中最有趣的部分开始了-捷克的发展如何形成了第一批苏联导弹防御工具的基础,以及到底有什么不光彩的结局在等待着他们,但是我们下次再讨论。
Продолжениеследует...
信息