当前位置:首页 > 新闻资讯 > IT业界 > 新闻
RISC与CISC的纠结
  • 2013-11-9 16:24:18
  • 类型:原创
  • 来源:电脑报
  • 报纸编辑:杨璐
  • 作者:
【电脑报在线】RISC(精简指令集计算机)与CISC(复杂指令集计算机)两大架构设计哲学的争斗已经成为大家耳熟能详的历史,但是RISC的由来,在学术界和工业界以外却很少见到有人提及。本文基于伯克利RISC项目领导者之一David Patterson的口述自传,以及ACM数据库的公开文献整理,向大家介绍RISC从发明到广为流传的那段故事。


ARM处理器就是典型的RISC架构



    RISC(精简指令集计算机)与CISC(复杂指令集计算机)两大架构设计哲学的争斗已经成为大家耳熟能详的历史,但是RISC的由来,在学术界和工业界以外却很少见到有人提及。本文基于伯克利RISC项目领导者之一David Patterson的口述自传,以及ACM数据库的公开文献整理,向大家介绍RISC从发明到广为流传的那段故事。


三十年前的论战
    “我们认为,基于RISC理念设计的处理器只有在极少数情况下慢于CISC处理器……过多的指令使得CISC处理器的控制逻辑复杂……研发成本上升……编译器也不知道该如何利用这么复杂的指令集……CISC的设计思路应当反思。”—— RISC的早期倡导者之一,David Patterson


    “RISC与CISC的区别缺乏明确定义,而且RISC缺乏有力实验证明其宣称的优势,仅停留在纸面的设计是不够的,我们在VAX架构的设计中发现很多与RISC理念相反的地方……实验数据证明RISC的出发点有误……”—— VAX CISC架构的设计者代表,Douglas W. Clark和William D. Strecker.


    很难相信,观点如此背道而驰的两篇文章,竟然同时刊登在美国计算机学会旗下的同一期《计算机体系结构通讯》杂志上。但事实上,正是论战双方的私下联络以及杂志编辑的有意安排,使得这场1980年的论战得以见报,于是留下了可供后人追溯的足够史料。
  ACM数据库收录的影印文档中保留下的点点墨迹,似乎象征着这场论战中四溅的火星。在1980年前后,几乎所有的新处理器设计都在按照CISC的路线发展,不断加入新的指令,使用微码控制,试图在指令集架构层面对高层编程语言提供更直接的支持,这种发展路线使得硬件研发成本提高,研发周期变长,编译器也不知道该如何利用越来越复杂的指令集。
  来自IBM研究院的John Cocke首先意识到,更加精简清爽的指令集设计将有助于减少硬件开发难度和成本,同时也有利于编译器进行代码优化工作,于是在他领导下的IBM 801项目第一次对RISC的概念进行了实践。随后加州大学伯克利分校,斯坦福大学的几位科学家也逐渐认清CISC的弱点,开始反其道而行之,着手进行新的设计。那时刚刚博士毕业四年,在伯克利任教的年轻老师David Patterson就是其中一员,他决定在研究生课程中检验自己的想法,让学生们试着构建一个指令精简化的微处理器作为大作业。在微处理器流片成功之前,David就撰写了文章发表,描述自己构建处理器的新方法,认为这种精简设计将降低了硬件设计成本,缩短了开发周期,且方便编译器进行代码生成,达到了更高的性能,结果引起争论和质疑,于是有了这场载入体系结构发展史的论战。




David Patterson,已从当年不敢向伯克利申请职位的小老师,变成计算机体系结构领域的宗师级人物


反败为胜

  当时站在David对立面的人包括当时深受尊敬的VAX CISC架构设计者Douglas W. Clark和William D. Strecker,David在文章中多次转述VAX的工程经验,试图证明RISC的优势,但VAX架构设计者们的现身说法使得局面对David非常不利,他们以自己的第一手数据将David文章中宣称的RISC优势逐一驳倒,更加雪上加霜的是,第一组学生们流片回来的处理器,并未能体现出具备说服力的速度优势,于是进一步引发了嘲笑。所幸第二组学生进行的设计较为成功,于是David和学生们的成果得以登陆1983年国际固态电子电路大会(ISSCC)进行展示,这个会议只接受流片成功的芯片设计投稿,因此门槛较高,同时也因为成果卓越,受到学术界和工业界的广泛关注,是集成电路领域的顶级学术会议。

本文出自2013-11-11出版的《电脑报》2013年第44期 A.新闻周刊
(网站编辑:pcw2013)


我来说两句(0人参与讨论)
发表给力评论!看新闻,说两句。
匿名 ctrl+enter快捷提交
读者活动
48小时点击排行
论坛热帖