回顾历史梦幻处理器:单芯片大型主机的幻梦与RISC崛起(80年代初)

2022-09-09 13:16:37 来源:technews(台) 作者:痴汉水球
本篇文章将带你了解 :

·  英特尔的”旧爱”与”元配”
·  iAPX 432的生平事迹
·  天才造成的灾难是天灾
“怨念”是世上最可怕的执着,经常造成无谓牺牲,而英特尔对进入高端服务器市场的执念,更在这家公司的漫长历史上埋下诸多灾难的种子。
英特尔来说,念念不忘的旧爱是嵌入式系统,约定俗成的元配是个人电脑,但极欲追求的”新欢”却是服务器,尤其看起来特别高上大的那种。还记得本系列连载第一篇提及以IBM System/360为首的大型主机(Mainframe)吗?这成为英特尔眼中最重要的目标,造就计算机结构史上最复杂的指令集架构:iAPX 432,与最终惨遭英特尔放弃的悲惨命运。
图片
图片
▲ 复杂度令人瞠目结舌的芯片大型主机iAPX 432 堪称英特尔处理器发展史的黑历史中的黑历史,黑到伸手不见五指。
英特尔1976 年启动极具野心的8800 计划,后来改名为iAPX 432(Intel Advanced Performance Architecture 432),也是这家公司第一个32 位处理器(那时8008 和8080只是8 位处理器),企图打造满足所有客户十年内需求的微型大型主机(Micro Mainframe)。x86 指令集始祖:16 位元8086 处理器,原先只是英特尔赚取8800 研发经费的急就章备胎,顺便应付一下摩托罗拉(Motorola)之类的竞争对手,数据总线缩减到8 位的衍生款8088,却因1979 年得到IBM 青睐,开启x86 独霸个人电脑市场的新时代。
既然假想敌已设定成以IBM 为首的商用大型主机,就该有的高档规格就当统统一应俱全,像支持多处理器环境、对应多工操作系统、具备基于容错机能的高可用性、提供高级程序语言需要的物件导向存储器管理(甚至连垃圾回收机制和透过硬件实作的型别检查都有了) 和定址模式等,英特尔还发展由Ada 语言撰写的iMAX 432 操作系统,结果英特尔就创造了”最CISC(复杂指令集电脑)的CISC”,指令编码长度别说极度不固定了,竟然还可以6~321Bits(你眼睛绝对没看错,是位元,不是位元组),连1~17Bytes 的x86 和1~54Bytes 的DEC VAX 都瞠乎其后。
图片
 将存储器管理纳入物件导向让iAPX 432 远比x86 和VAX 更毫无道理可循。
因此iAPX 432 造就史无前例的极端复杂度,也让2000 年4 月1 日愚人节的微处理器报道(Microprocessor Report)恶搞内容是这样的:
英特尔仓库发现从事命运多舛、约15 年前被放弃的英特尔 iAPX 432 研发团队,被集体低温冷冻。很显然专案取消时,他们就被冻结了,希望等到某天,这世界能为这种高度先进的架构做好准备。团队是在为Itanium 处理器寻找冷却装置的工程师,在低温室时偶然发现的。
英特尔发言人Fran Diego 表示:”先进0.1234 微米制程技术,终于赶上最初的iAPX 432 设计。”Fran 补充:”事实证明,控制室的『摩尔定律自动解冻计时器』,无论如何都将在4 月1 日到期。”
这些负责iAPX 432 的工程师已暂时隔离,英特尔高层正在决定该如何向他们解释什么是RISC 和EPIC。(原文如下:After they had been given up for dead almost 15 years ago,the group that worked on the ill-fated Intel 432 was found cryogenically frozen in an Intel warehouse. Apparently they were frozen when the project was canceled, in hopes that someday the world would be ready for this highly advanced technology. The team was found accidentally when engineers looking for cooling apparatus for Itanium stumbled on the cryogenic chambers. Intel spokesman Fran Diego was quoted as saying, “Our advanced 0.1234-micron process technology has finally caught up with the original 432 design.” Fran added, “It turned out that the Moore's Law automatic defrost timer controlling the chambers was set to expire on April 1st anyway.”
The engineers are being quarantined for now while officials decide how to explain RISC and EPIC to them.
那时当代两位计算机组织架构大师David Patterson 的RISC I 和John Hennessy 的MIPS 陆续亮相,更带来RISC(精简指令集电脑)这历史性缩写(虽然CDC6600IBM 801更早诞生),更颠覆指令集架构风潮。

他们1990 年出版的经典教科书《计算机体系结构:量化研究方法》(Computer Architecture: Quantitative Approach)第一版(依旧放在笔者书架上),明确指出很难想像DEC VAX 的设计者怎样工作,长短不一的指令编码长度,意味当处理器碰到例外(Exception)或中断(Interrupt),将耗费更多时间与资源,记录并恢复处理器当下执行状态。这也是笔者对随处可见只要将CISC 指令『转译』成看起来很像RISC 的微指令,即可迎刃而解指令集复杂度带来的诸多问题之类论调,长期嗤之以鼻的主因。

如此夸张的复杂度一路叠床架屋,没剩多少可塞入cache存储器的空间,不仅让延迟至1981 年才问世的iAPX 432 难以单一芯片化,像主要运算单元(General Data Processor,GDP)就被迫拆成43201 和43202 两颗,连I/O 也要补一颗43203。1983 年英特尔另外公布总线控制器43204 与存储器控制器43205,可实作63 颗处理器的大型系统。
芯片化加上容错造成的传输延迟,也让速度快不起来,导致iAPX 432 比当时同样是32 位元处理器的Motorola 68000,慢了5~10倍。
图片
图片
▲ 这张珍贵的照片,由上到下是43202、43201 与43203。
讽刺的是,理论上效能应该无懈可击的iAPX 432,还得加挂”垫档”用8086 为AP(Attached Processor)提供I/O 子系统的运算效能,勉强可视为大型主机常见的IOMMU(I/O Memory Management Unit)扮演的角色。
说到原名iAPX 86、组合语言层面可容8080 的8086 处理器英特尔不但用最少团队人力,短短一年半内就开发完毕,并在1982 年推出80286,更在1985年的80386 将x86 指令集推进到32 位元的世界(英特尔现任执行长Pat Gelsinger 还曾跟80386 首席架构师John Crawford 合着《Programming the 80386》一书)。即使集结英特尔最优秀研发人才提炼出号称没有任何bug(看在超高复杂度的份上,这实在很不简单)的iAPX 432,英特尔也只能在1986 年黯然宣布放弃这产品。
但iAPX 432 的失败并没有阻挡英特尔进军高级应用的怨念,在iAPX 432 半死不活的1984 年,英特尔跟西门子(Simens)联合执行BiiN 计划,并合资开设公司。如同原始iAPX 432,BiiN 目标在于创建完全可用Ada 编程的高容错计算机系统,英特尔不仅将原本iAPX 432 大部分团队转调BiiN,更从IBM借将Glenford Myers 担任首席架构师。因受RISC 风潮影响,加上iAPX 432 的前车之鉴,BiiN 的成果、代号P7(很讽刺的是,初代Itanium ″Merced″ 也一度称为P7,NetBurs 微架构首发″Willamette″ 则是暗示过渡时期的P68)处理器,就理所当然RISC 化并简化存储器管理的iAPX 432,也是英特尔史上第一颗RISC 处理器,1985 年底和80386 差不多的时间点,就有第一批可动的P7 样品芯片
因种种因素(软件一直都是英特尔罩门),P7 并未在市场取得任何商业成就,Glenford Myers 则试图说服英特尔高层将其取代80286 和80386 的通用设计(类似IBM 高层对IBM 801 前身的决策),并可用于执行Unix 操作系统的新兴RISC 处理器市场,包含Steve Jobs 离开苹果后成立的NeXT。尽管英特尔高层并未同意他的见解,但P7处理器仍保留下来,重新命名为i960,并持续发展,并交由iAPX 432 与日后Pentium Pro 首席架构师之一的Fred Pollack 接手。
i960 众多衍生型号如军事用途的i960MX、针对高级嵌入式应用的i960MC、”封印”浮点运算器和存储器管理大量用于激光印表机的i960KA等,其家族最值得大书特书的莫过于1989 年7 月发布的i960CA,可同时执行整数逻辑运算、存储器存取与分支,并在某些情况下可每个时钟周期维持两个指令,是英特尔历史首款超标量(Superscalar)流水线处理器,远早于1993 年3 月的Pentium
不小心把某种程度上算是计划外产物产品做出来了,英特尔也得想办法替其找出路,英特尔1996 年公布I2O(英特尔Intelligent I/O) 规范,让i960 担纲替主处理器减轻I/O 负担的卸载(Offload)辅助处理器,但因i960 的高成本而没成功。i960 最让人印象深刻的应用,主要在磁盘阵列控制卡计算XOR(Exclusive OR),如Adaptec AAR-2400A 的i960RS,以及大型游戏街机像IGT 的Stepper S2000 和Sega 的Model 2。
图片
▲ 使用价格不低的i960 为I/O 辅助卸载引擎的I2O规范,没撑几年就无疾而终。
至于i960 初衷军用,实际情况就难以考证,就像笔者至今也挖不出初期爱国者导弹系统究竟有没有用到DEC Alpha 21064,也无从得知世界最强战斗机F-22 的前两个电脑机柜(预留的第三个将用于猛禽敏捷能力释放(Raptor Agility Capability Release,RACR)这F-22 史上最大升级计划)到底有没有i960MX 或后代。
英特尔1997 年从DEC 得到StrongARM后,就以之取代i960。但之前i960 研发团队1990 年就转派至英特尔P6 计划,P6 团队也因从未经历任何x86处理器研发(″The P6 project was blessed with a team whose members either had never worked on Intel′s x86 chips or had never worked at Intel.″),反而让P6 变成英特尔处理器发展史上最大成功(″The P6 has become the most successful general-purpose processor ever created.″)。
从iAPX 432、i960 到Pentium Pro,绕了好大一圈,也许塞翁失马,焉知非福勉强可为写照,不过当iAPX 432 被舍弃后,没过几年,以超长指令集(VLIW)化的PA-RISC 为基础,英特尔又携手HP 研发IA-64 指令集与Itanium 处理器,再度踏上进攻超高级服务器之路,过程与结果又再次昭告世人英特尔制定的指令集架构风格好像都很奇怪,所谓天才造成的灾难是天灾大概就是这么回事。单芯片大型主机还不打紧,英特尔接着又变出单芯片超级电脑”(Cray On a Chip)i860,这也是下一篇文章的主角。总而言之,不期不待,没有伤害,谢谢收看。

  1. EETOP 官方微信

  2. 创芯大讲堂 在线教育

  3. 创芯老字号 半导体快讯

相关文章

全部评论

  • 最新资讯
  • 最热资讯
@2003-2024 EETOP