全国协议5人面授小班,企业级独立开发考核,转业者的IT软件工程师基地 登录/注册 | 如何报名

免费领取试听课程

并获得专业顾问一对一进行选课辅导

课程名称不能为空
姓名不能为空
手机号码不能为空

领取成功

计算机架构的黄金时代来了

行业新闻 汉码未来 | 计算机 架构 AI

2022-03-16 09:42:35

Johnhenessy和Davidpatterson是2017年图灵奖的获得者。目前,这两位学者都在谷歌工作。前者是谷歌母公司Alphabet董事长,后者是谷歌优秀工程师,致力于机器学习和人工智能的研究。

计算机架构的黄金时代来了

软件和硬件通过一个名为指令集架构的词汇表进行对话(Instructionsetarchitecture,ISA)。20世纪60年代初,IBM有四条不兼容的计算机产品线,每条都有自己的ISA、软件堆栈、I/O系统和利基市场(分别针对小企业、大企业、科研和实时应用)。IBM工程师,包括ACM图灵奖得主FredBroks和Jr.,都认为他们可以创建一个单一的ISA,可以有效地统一所有这四个ISA基础。

他们需要一个技术解决方案,让便宜的8位数据通路计算机和高速的64位数据通路计算机共用一个ISA。这些数据通路是处理器的身体,它们执行算术操作,但相对容易变宽或变窄。对于当时和现在的计算机设计师来说,最大的问题是处理器的大脑——控制硬件。受软件编程的启发,计算先驱和图灵奖获得者MauriceWilkes提出了简化控制的方法。控制可以描述为二维数组,称为控制存储器。这个数组的每一列都对应于一条控制线,每一行都是一个微指令(microinstruction),而编写微指令则称为微编程(microprogramming)。一个控制存储器包含一个用微指令编写的ISA解释器,因此执行一个常规指令需要多个微指令。这种控制存储器是通过内存实现的,成本远低于逻辑门。

表1列出了IBM于1964年4月7日宣布的四种新型System/360ISA。数据通路的变化范围是8倍,内存容量的变化范围是16倍,时钟频率是4倍,性能是50倍,成本接近6倍。最昂贵的计算机控制存储器是最宽的,因为更复杂的数据通路使用更多的控制线。成本最低的计算机有更窄的控制存储器,因为它们需要更多的时钟周期来执行System/360指令,因为它们需要更多的微指令。

在微编程的推动下,IBM将公司的未来放在了这个新的ISA上,希望它能创新计算行业,为IBM赢得回报。IBM成功宰了这个市场,IBM计算机家族的大型机器后裔在推出55年后仍然每年创造100亿美元的收入。

正如我们反复看到的,虽然市场并不是判断各种技术问题的完美判断,但鉴于结构与商业计算机之间的密切联系,市场最终可以决定那些往往需要大量工程投资的结构创新是否成功。

集成电路、CISC、432、8086、IBMPC。

当计算机开始使用集成电路时,摩尔定律意味着控制存储器可以变得更大。更大的内存反过来又意味着允许使用更复杂的ISA。要知道,1977年推出的VAX-11/780控制存储器为5120字×96位,而前一代仅为256字×56位。

一些制造商选择开放微编程功能,以便选定的客户可以添加定制功能,他们称之为可写控制存储器(WCS)。最著名的WCS计算机是图灵奖得主Chuckthacker和ButlerLampson及其同事于1973年为施乐(Xerox)帕洛阿托研究中心开发的Alto。这实际上是第一台个人计算机(PC),配备了第一个图像显示器(bit-mappeddisplay)和第一个以太网局域网。该新显示器和网络的设备控制器是存储在4096字×32位WCS中的微程序。

20世纪70年代的微处理器(如英特尔的8080)仍处于8个时代,主要依靠汇编语言编写程序。相互竞争的设计师会通过添加新的指令来赶上对方,他们会通过汇编语言示例来展示自己的优势。

戈登·摩尔相信英特尔的下一代ISA将伴随英特尔的一生,所以他聘请了许多聪明的计算机科学博士,并把他们送到波特兰发明优秀的下一代ISA。英特尔最早被命名为8800的计算机架构项目雄心勃勃—这在任何时代都是最雄心勃勃的,显然是20世纪80年代最雄心勃勃的。它具有基于32位的搜索能力、面向对象的架构、位长可变的指令以及Ada用新的编程语言编写的操作传统。

不幸的是,这个雄心勃勃的项目在几年后停止了,迫使英特尔在圣克拉拉开始紧急更换,并于1979年推出了16位微处理器。英特尔给了新团队52周的时间来开发新的8086ISA,并设计和构建芯片。鉴于时间表的紧迫性,该团队实际上将8080的8个寄存器和指令集扩展到16个,最终在3个常规工作周内只用了10周的工作量就完成了ISA的设计。该团队按时完成了8086年的开发,但在发布时并没有引起任何关注。

英特尔很幸运,IBM正在开发一台个人计算机来与AppleII竞争,并需要一个16位微处理器。IBM以前对Motorola68000感兴趣,ISA类似于IBM360,但落后于IBM的激进计划。IBM使用了8086的8位总线版本。IBM于1981年8月12日推出了这款PC,希望到1986年能卖出25万台。事实上,该公司在全球销售了1亿台,为这款紧急替代的英特尔ISA铺平了一个非常光明的未来。

英特尔最初的8800项目更名为iAPX-432,最终于1981年推出,但它需要多个芯片,并有严重的性能问题。该项目于1986年再次终止。今年,英特尔在80386年扩展了16位8086ISA,并将其寄存器从16位扩展到32位。因此,摩尔的预测是正确的——下一代ISA确实会像英特尔一样长寿,但市场选择了8086,而不是专门精心开发的432。正如Motorola68000和iAPX-432的设计师所学到的,市场往往缺乏耐心。

从复杂指令集到精简指令集计算机。

20世纪80年代初,人们对大型控制存储器中大型微程序使用的复杂指令集计算机(CISC)进行了一些研究。Unix表明,即使是操作系统也可以用高级语言编写,关键问题变成了编译器会生成什么指令?而不是编程师会使用什么汇编语言?。硬件/软件接口的显著改进为架构创新带来了机遇。

图灵奖得主杰克和他的同事们为小型计算机开发了更简单的ISA和编译器。作为实验,他们重新设定了自己研究的编译器的目标:只使用IBM360ISA中简单的register操作和load-store数据传输,避免更复杂的指令。他们发现,当使用这个简单的子集时,程序可以快速运行三倍。Emer和clark发现VAX指令中20%的指令需要60%的微代码(microcode),但这些指令只占实际执行时间的0.2%。

DavidPatterson将在DEC的学术假期投入到研究减少VAX指令中的漏洞上。他认为,如果微处理器制造商遵循这一点。


以上就是汉码未来给大家分享的文章,希望对小伙伴们有所帮助,想要了解更多计算机架构的黄金时代来了相关内容的小伙伴可以登录汉码未来官网咨询,主打5人小班,全程面授,主打Java开发,web前端开发等课程,有专业的授课老师为你答疑解惑。

    

分享到:



【免责声明】由于政策等各方面情况的不断调整与变化,本网站所提供的信息仅供参考,请以权威部门公布的正式信息为准。本网站在文章内容来源出处标注为其他平台的稿件均为转载稿,免费转载出于非商业性学习目的,版权归原作者所有。如您对内容、版权等问题存在异议请与本站联系,我们会及时进行处理解决。 删除,请联系客服。
相关推荐
为什么选择汉码未来