理论教育 VLSI项目对美国计算机和信息产业的重要作用

VLSI项目对美国计算机和信息产业的重要作用

时间:2023-05-27 理论教育 版权反馈
【摘要】:尽管VLSI项目受世人瞩目的程度没有先前的阿帕网那么高,但是该项目对美国计算机和信息产业的发展起到的重要作用不亚于阿帕网。莱斯来本这一举措有力地提高了VLSI项目的研究效率。VLSI项目在这4个方面都取得了丰硕的成果。从VLSI项目中受益最大的两所大学是加州大学伯克利分校和斯坦福大学。这一部分的研究成果被商业化后衍生出VLSI Technology以及Cadnetix和Synopsis等公司。

VLSI项目对美国计算机和信息产业的重要作用

在米德和康维风风火火地进行集成电路设计方面革新的同时,一个超大规模集成电路项目通过美国国防部高级研究计划署资助也开始成型,这就是VLSI项目(Very Large System Integration Project)。尽管VLSI项目受世人瞩目的程度没有先前的阿帕网那么高,但是该项目对美国计算机和信息产业的发展起到的重要作用不亚于阿帕网。该项目的研究成果衍生出了一系列高科技公司,许多成为20世纪80—90年代初硅谷的代表性公司。

1978年的美国国防高级研究计划署已经更名为国防部高级研究计划局(Defense Advanced Research Projects Agency,DARPA),这里我们仍然称其为计划署以方便读者理解。计划署一直在美国科技研发方面扮演着重要的角色。在军转民的技术开发方面,除了互联网的前身阿帕网外,计算机分时系统和全球导航定位系统也是出自该机构。它的前瞻性研究方向和灵活的组织结构使其成为美国政府重要技术攻关的核心机构。但是在经历了20世纪60年代的辉煌后计划署也遇到了挑战,这就是1973年美国国会通过的《曼斯菲尔德修正案》(Mansfield Amendment)。该修正案严格限制了计划署可投资的研究项目,要求必须直接用于军用技术研究,这一法案的通过对计划署的资金来源和新项目的立项造成一些困难。因为这一法案的影响很多大型基础研究项目无法继续发展,很多原来依靠计划署的合作项目为生的科技人才纷纷离开。有些人成立了自己的创业公司,更多的人则加入了企业界的研发机构,其中施乐的帕洛阿尔托研究中心吸引了最多的计算机方面的人才。

计划署对超大规模集成电路的兴趣始于1976年,在萨瑟兰和米德的建议下,计划署通过兰德公司对VLSI研发方向进行了评估。这份由伊凡·萨瑟兰、米德和托马斯·埃弗哈特(Thomas Everhardt)合写的报告指出当时的大规模集成电路技术的发展方向不应局限在单纯提高集成度上,还应当考虑采取新的架构,因为后者可能带来更高的效率。该报告还提出集成电路的设计思路需要革新,因为随着集成技术的提高,单位晶体管成本的直线下降,集成电路上不同部分之间的连接成本将越来越高。萨瑟兰和米德随后在1977年9月的《科学美国人》杂志上发表了一篇科普文章来进一步阐述他们的观点。

1978年在计划署工作的卡恩开始正式为VLSI申请立项并开始资助包括加州理工大学、梅隆大学在内的众多采取了米德和康维新方法的大学进行与卡内基VLSI相关的研究工作。1979年卡恩接任信息处理办公室的主任一职后,VLSI的具体项目管理在1980年交给了杜安·亚当(Duane Adam),随后又转给了保罗·莱斯来本(Paul Losleben)。曾经在国家安全局工作并有半导体处理技术背景的莱斯来本将VLSI项目的研发方向系统地分成了4个部分,它们是:计算机架构和系统设计,微电子器件制造工艺,微电子和计算机的教育以及人力资源发展,集成电路的灵活设计、制造、测试和评估。莱斯来本这一举措有力地提高了VLSI项目的研究效率。VLSI项目在这4个方面都取得了丰硕的成果。尤其是他提出的将研究与教学结合起来的建议加快了精简指令集(RISC)架构的研发。从VLSI项目中受益最大的两所大学是加州大学伯克利分校和斯坦福大学。

VLSI项目的总目标是为米德和康维的超大规模集成电路的设计方法提供一整套从硬件到软件的技术支持,这样大学和研究机构就可以使用这种方法来设计新的集成电路。芯片设计所需要的计算机硬件方面的技术主要集中在图像生成方面。当时只有超级计算机才有能够提供芯片设计自动化所需要的内存和运算速度。于是计划署通过VLSI项目资助了斯坦福大学和北卡罗来纳州立两所大学分别来设计以个人计算机台式机为基础的硬件图形加速系统,这就是能够快速生成几何图像的几何引擎(Geometry Engine)和三维成像(Pixel-Planes)系统。斯坦福大学的几何引擎项目衍生出了两家公司。当时在斯坦福大学参与该项目的研究生吉姆·克拉克和其同学一起在1982年根据该项目的研究成果创立了硅谷图形公司(SGI),成为好莱坞电影生成三维动画特技效果的利器。参与同一项目的另一个研究生安迪·贝托希姆(Andy Bechtolsheim)用自己购买的计算机零部件装配了一台可以用来运行联网的计算机辅助设计工作站(Computer-Aided Design,CAD)的高性能个人计算机。这一成果商业化后成为后来驰骋硅谷将近20年的升阳公司(SUN Microsystems)。北卡罗莱纳大学的师生研制的技术三维成像和渲染技术则成为后来很多三维软件的核心技术的鼻祖。

为给超大规模集成电路的自动化设计提供一个统一的开源软件操作系统平台。计划署在1980年4月与加州大学伯克利分校的计算机教授鲍勃·法布里(Bob Fabry)签订了为期18个月的合同,根据计划署的阿帕网和VLSI等项目的要求为UNIX系统添加新的功能,使得新操作系统能够满足计划署不同项目的计算机操作系统需求。于是法布里在加州大学伯克利分校成立了计算机系统研究组(Computer Systems Research Group,CSRG),开始了UNIX的伯克利版本(Berkeley Software Distribution,BSD)的开发工作。他的学生,刚通过博士资格考试比尔·乔伊(Bill Joy)担任了项目经理,在1980年推出了4BSD版本。该版本和后来的伯克利系列版本成为包括升阳、SGI、阿波罗计算机等早期所有工作站的系统平台。伯克利版本后来因为与美国电话电报公司的版权纠纷而停止更新后,又通过开源软件运动衍生出OpenBSD、FreeBSD、NetBSD、DragonFlyBSD等开源版本。VLSI项目还资助了集成电路新设计方法所需的布线、设计校验以及模拟运行等流程的辅助设计CAD软件的开发。这一部分的研究成果被商业化后衍生出VLSI Technology以及Cadnetix和Synopsis等公司。

集成电路辅助设计软件的应用大幅提高了集成电路的线路设计复杂度,引发了精简指令集(RISC)的发展。

微处理器在20世纪70年代刚出现时采用的架构是复杂指令集模式(CISC)。这一从大型机的微程序衍生出来的模式的主导思想是在微处理器设计过程中包含进很多复杂指令,这样通过简单的编程和一次指令调用就可以实现需要的运算。比如一个加法运算(ADD)在复杂指令集里有多种不同的实现方法,程序可以在不同的情况下调用不同的方法,从而减少对寄存器和内存的访问次数。这种设计思想源于当时中央处理器的寄存器(Register)缓存及内存的昂贵价格,编译器技术的落后,以及内存数据存取的不稳定性等环境因素。因为大型机时代通常是用机器语言或者是汇编语言编程,所以复杂指令集可以减轻程序的编译负担。而较少的寄存器和不稳定的内存使得设计者希望中央处理器的每条指令都能对数据进行尽可能多的操作,从而减少对前者的访问次数,减轻系统存取负担和错误。

20世纪80年代半导体技术已经比较成熟后,原来大型机存在的这些问题都随着微处理器、内存和硬盘技术的成熟和成本降低而消失,这时候复杂指令集的缺点就暴露了出来。其中最主要的缺点是很多复杂的指令操作并没有被使用或很少使用。研究人员通过对UNIX系统执行情况进行分析,发现只有30%的指令被操作系统使用,这使得许多被设计成处理复杂指令的晶体管闲置,造成了计算硬件资源的浪费。复杂指令集的另一个缺点是它通常需要多个时钟周期才能完成一条复杂指令的执行,造成了高能耗,而能耗的不断增加是集成电路集成度继续提高的瓶颈。

精简指令集是针对复杂指令集上述缺点的一个新设计思路。它的中心思想是简化处理器的硬件设计,将不常用的复杂指令以及执行这些复杂指令的专用晶体管结构去掉。用节省的空间安放大量普通寄存器,依靠数目庞大的普通寄存器和频繁的内存调用来实现指令计算。程序执行所需要的运算优化转移到微程序或者是编译器等软件层面进行处理,这样可以最大限度地优化微处理器的执行效果,降低能耗。(www.daowen.com)

最早的基于精简指令的计算机是IBM沃森研发中心的约翰·寇克(John Cocke)在1975年10月为了研究如何提高IBM各类计算机的运算速度而设计的IBM 801实验性小型机。IBM 801的研发小组通过研究IBM/370的程序执行轨迹发现可以以一种简单但是运行速度很快的微处理器设计再配备不同的微程序的方法来实现各种计算机功能,这引出了精简指令集的思想,寇克后来为此获得了图灵奖。尽管IBM在1975年已经有了这一发现,但是当时IBM已经稳稳把握住大型机市场,所以没有动力去进行精简指令集的革新。

米德和康维的超大规模集成电路革新开始后,计划署通过VLSI项目在加州大学伯克利分校和斯坦福大学分别资助了两个精简指令集研究项目(Berkeley RISC和Stanford RISC)。伯克利的RISC项目在普通寄存器中设计了一种寄存器窗口,通过这种方式来优化计算过程。而斯坦福的RISC项目则将寄存器全部普通化,让算法自动安排寄存器来实现各种运算。

伯克利RISC项目负责人大卫·帕特森(David Patterson)1976年从加州大学洛杉矶分校获得博士学位后,来到加州大学伯克利分校担任助理教授职务。因为擅长为小型机编写微程序,他经常为企业做咨询工作,不久就接触到了康维和米德的超大规模集成电路的革新。在预见到微处理器有可能在不久的将来将计算机的各种功能包含在内后,他给计算机学会(IEEE Computer Society)投了一篇稿子,提出通过微程序控制的微处理器来取代计算机的想法,但是这一稿件以想法荒谬的原因被退回,这时是1980年春天。为了证实自己的想法,他索性在秋天开设了一门用康维方法设计微处理器的研究生课程。通过这门课程,RISC I 架构被设计出来,学生们使用刚从卡梅大学毕业的约翰·纽斯浩特(John Ousterhout)开发的Caesar和Magic辅助设计软件设计出了基于精简指令集的微处理器芯片。RISC I的设计包含44500个晶体管、31条指令和78个32位的寄存器。整个微处理器负责控制和解码的部分只占6%,相比之下,复杂指令集需要50%的空间。由于设计文件过于庞大,导致了纽斯浩特设计的辅助软件几次崩溃,经过纽斯浩特数次改进后,也还需用将近一小时的时间才能在VAX小型机上打开。1981年6月22日,RISC I设计通过MOSIS服务器提交生产。由于中间各种原因的延迟直到1982年6月11日芯片才被制造出来送回加州大学伯克利分校。经过测试,该芯片的性能没能达到预期的水平。

在RISC I设计完等待生产的过程中,帕特森又领导了RISC II的设计工作。这次因为不是通过上课的形式进行,所以时间比较充裕。RISC II使用了比RISC I更简单的缓存设计,大大降低了寄存器文件的复杂度。制造出来的RISC II微处理器在处理计算任务的性能上超过了当时所有的小型机。以VAX小型机为例,在处理不同的任务时,RISC II的运算速度是VAX的85%~256%。与当时最快的摩托罗拉68000(Motorola 68000)微处理器相比,RISCII是其运算速度的140%~420%。

尽管RISC II取得了成功,当时的大计算机公司仍然没有认识到精简指令集的价值。帕特森在给施乐帕洛阿尔托研究中心做咨询工作时结识了曾经从事伯克利UNIX BSD开发的乔伊。乔伊在读了帕特森学生关于精简指令集的毕业论文后认识到RISC架构的价值,于是邀请帕特森帮助他和贝托谢姆等人成立不久的升阳公司来设计一款RISC微处理器。当时升阳公司的工作站使用的是摩托罗拉68000芯片,如果RISC芯片能设计成功的话,升阳公司的服务器性能将大大提高。于是升阳公司在帕特森的帮助下在1987年研制成功了基于精简指令集的SPARC工作站,成为当时性能最好的工作站。

斯坦福的RISC项目负责人是后来担任斯坦福大学校长的约翰·轩尼诗(John Hennessy)。电子工程专业毕业的轩尼诗从纽约大学石溪分校获得计算机博士学位后,于1977年来到斯坦福大学任教,恰逢米康革新,于是通过VLSI项目资助,也开始了精简指令集微处理器的设计。轩尼诗也是通过研究生课程的形式让学生交流和讨论这一新的设计思路。因为在这之前轩尼诗做了大量的软件编译器研究工作,而且为VLSI的几何引擎项目设计过微程序,所以轩尼诗鼓励学生在考虑新的架构设计方面采取以软件替代硬件的方法。这就是尽量减少微处理器的复杂指令的使用,而是通过软件编译器来最大限度地灵活利用微处理器硬件,实现同样的计算目标。这与IBM寇克的思路一致,但与当时通过越来越复杂的硬件设计来简化软件编译和编程的大方向正好背道而驰。通过1981年春季开设的微处理器设计课程,轩尼诗和学生一起设计出了新的基于精简指令集思想的微处理器架构,这就是MIPS架构。该架构的主要特征是使用大量的简单寄存器和深流水线(Deep Pipeline)操作来提高运算速度并降低能耗。

和伯克利RISC的设计比较,斯坦福RISC更加倚重软件尤其是编译器对微处理器寄存器的有效协调和利用,而伯克利RISC架构使用了寄存器窗口的硬件方式来辅助编译器,所以在微处理器设计上更加复杂。帕特森和轩尼诗在指令设计上的共同特点是都采用每一个时钟周期正好可以完成一条指令的方式,而且通过流水线方法,可以在每个时钟周期内并行完成多条指令。这样就简化了编译器的编译复杂度。与帕特森的遭遇一样,轩尼诗他们的研究成果并没有被当时的计算机界所承认。很多人认为他们搞的东西是学术界的一种实验性的东西,里面有很多水分。为了证明自己的研究成果,在经过了反复的性能比较后,轩尼诗在1984年和朋友一起成立了美普思科技公司(MIPS Technologies)。不久MIPS架构就引起了克拉克的硅谷图形公司的兴趣。1988年硅谷图形公司将MIPS架构引入了高性能三维图形处理工作站系列,取代了先前的摩托罗拉微处理器。这一举措大大提高了工作站的运算速度,再加上当时加州数字特技技术在电影业的兴起,使得硅谷图形公司的计算机很快建立起在业界的声誉。1991年美普思研发出了第一代64位的MIPS微处理器R4000。这一处理器架构很快被硅谷图形公司采用,一年后硅谷图形公司干脆以3.33亿美元的价格收购了美普思[7]

米德和康维的超大规模集成电路的新设计方法创造出了半导体芯片的设计与生产相分离的两个新市场和一批新公司。帕特森和轩尼诗在精简指令集架构上的突破不但为美国的升阳和硅谷图形公司提供了新的发展方向,而且为英国的橡果公司提供了新的思路,使得后者开发出了安谋精简指令集架构,为对低能耗呈现刚性需求的手机市场提供了微处理器的设计平台和框架。尽管精简指令集比复杂指令集有更多的优势,整个20世纪80和90年代英特尔的x86芯片因为IBM个人计算机的流行所带来的市场份额而产生的规模优势一直占据着微处理器市场的统治地位。精简指令集架构的微处理器主要通过手机和其他嵌入式微处理器市场慢慢发展,一直到2000年后,随着智能手机平板电脑的出现和发展,精简指令集架构才慢慢开始赶超上来。

从1979年到1982年计划署为VLSI项目的投资从1500万美元增加到9300万美元,成为联邦政府在超大规模集成电路研究方面的最大支持机构。MOSIS这一服务的发明大大降低了美国大学、研究机构和小公司为教学研究和创业而生产自己设计的芯片的成本,使得更多的创新技术成为可能。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈