RISC的前世今生
作者 陈怀临 | 2014-01-28 15:25 | 类型 科技普及 | 2条用户评论 »
[编者注:原文可参阅:http://blog.sina.com.cn/s/blog_685fc2ec0101h1ws.html ] 【注:本文缩减版已发表在电脑报2013年第44期 A.新闻周刊,这个版本是写给实验室内部刊物《国重快讯》的加长版,写作过程中得到中科院计算所包云岗老师的大力指点,在此表示感谢。】 导语:RISC与CISC两大体系结构设计哲学的争斗已经成为大家耳熟能详的历史,但是RISC的由来,在学术界和工业界以外却很少见到有人提及。本文基于伯克利RISC项目领导者之一David Patterson的口述自传以及ACM数据库的公开文献整理,向大家介绍RISC从发明到广为流传的那段故事。
三十年前的论战
“我们认为,基于RISC理念设计的处理器只有在极少数情况下慢于CISC处理器……过多的指令使得CISC处理器的控制逻辑复杂……研发成本上升……编译器也不知道该如何利用这么复杂的指令集……CISC的设计思路应当反思。” —— RISC的早期倡导者之一,David Patterson
“RISC与CISC的区别缺乏明确定义,而且RISC缺乏有力实验证明其宣称的优势,仅停留在纸面的设计是不够的,我们在VAX结构的设计中发现很多与RISC理念相反的地方……实验数据证明RISC的出发点有误……”—— CISC结构的设计者代表,Douglas W. Clark和William D. Strecker. 时势造英雄,在1980年前后,几乎所有的新处理器设计都在按照CISC的路线发展,惯性的车轮越滚越远,CISC不断加入新的指令,使用微码控制,试图在指令集架构层面对高层编程语言提供更直接的支持,这种发展路线使得硬件研发成本不断提高,研发周期变长,最终甚至殃及软件,连编译器都不知道该如何利用越来越复杂的指令集。CISC流派的不断前推,实质上是令体系结构在错误的发展方向上越陷越深。来自IBM研究院的John Cocke首先意识到,更加精简清爽的指令集设计将有助于减少硬件开发难度和成本,同时也有利于编译器进行代码优化工作,于是在他领导下的IBM 801项目第一次对RISC的概念进行了实践,这项起步于1975年的项目,直到80年代后才将成果公开发表,其中就包括改变了产业技术格局的graph coloring寄存器着色算法。稍落后于IBM研究院,来自加州大学伯克利分校,斯坦福大学的几位科学家也逐渐认清CISC的弱点,开始尝试反其道而行之,着手进行新的设计。那时刚刚博士毕业四年,在伯克利任教的年轻老师David Patterson就是其中一员,他决定在研究生课程中检验自己的想法,让学生们试着构建一个指令精简化的微处理器作为大作业。
在微处理器流片成功之前,David就撰写了文章发表在《计算机体系结构通讯》上,描述自己构建处理器的新方法,认为这种精简设计将降低硬件设计成本,缩短开发周期,方便编译器进行代码生成,达到更高的性能,结果引起争论和质疑,于是有了这场载入体系结构发展史的论战。 反败为胜
ACM数据库收录的影印文档中保留下的点点墨迹,似乎象征着这场论战中四溅的火星。当时站在David对立面的人,包括当时深受尊敬的VAX CISC结构设计者Douglas W. Clark和William D. Strecker,David在文章中大量转述VAX的工程经验,试图证明RISC的优势,但VAX结构设计者们的现身说法使得局面对David非常不利,他们以自己的第一手数据将David文章中宣称的RISC优势逐一驳倒,而David手中并没有自己的硬件实测数据,十分被动。更加雪上加霜的是,第一组学生们流片回来的处理器,并未能体现出具备说服力的速度优势,其主频尚不到当时部分商业级芯片的三分之一,于是进一步引发了嘲笑。 所幸第二组学生进行的设计较为成功,于是David和学生们的成果得以登陆1983年国际固态电子电路大会(ISSCC)进行展示,这个会议只接受流片成功的芯片设计投稿,因此门槛较高,同时也因为成果卓越,受到学术界和工业界的广泛关注,是集成电路领域的顶级学术会议。David在这里打了一个漂亮的翻身仗,尽管制造工艺是老旧的MOSIS,主频仍旧比VAX,摩托罗拉,Intel等竞争对手同期制造的处理器慢上几乎一半,晶体管数量也只有几分之一,但是更加清爽的新式设计在编译器等其他工具的辅助下竟然将来自工业界的竞争对手们尽数击败,完成了漂亮的反击。David领导的学生团队凭借这一全新理念进行的课程设计,仅有区区几十条指令,竟胜过指令数目多达几百条的商业级芯片,这一事实对于CISC流派的支持者们是极大的冲击,ISSCC大会现场所有的大牌人物都目睹了这一历史性时刻,业界哗然。RISC提倡简化指令集设计,固定指令长度,统一指令编码格式,加速常用指令,在当时来看与当时占据主流的CISC哲学颇有些背道而驰的意味,RISC和David Patterson早年受到质疑和攻击也就不难理解。但有了流片成功的芯片与硬件测试结果在手,加之1983年的ISSCC大会上聚集了几位与David Patterson观点相同的支持者,RISC流派已经开始占据上风。
风靡业界
出于兼容性的考虑,David和学生们设计的芯片从未流入商业市场售卖,但是在David等人的推动和宣传下,RISC的设计理念随后如星火燎原般扩散,一大批公司开始采用这种理念设计新处理器,包括后来几近统一武林的Intel。而当初提倡RISC的先行者们也纷纷功成名就,John Cocke在1987年将计算机科学领域的最高奖项“图灵奖”收入囊中,而David Patterson在芯片设计与计算机体系结构领域也已经与“泰山北斗”划上等号。
RISC的设计理念催生的一系列新结构中包含了许多我们耳熟能详的名字,包括学术上认为比较成功的DEC Alpha,后来写入经典教科书的MIPS,绕过指令级并行度障碍,追求线程级并行的SUN SPARC,以及现在统治嵌入式市场的ARM。这些雨后春笋般涌现的RISC处理器将CISC vs RISC的世纪之战推向更高潮,复杂指令集和精简指令级划分为两个阵营,争论不断。以x86为代表的复杂指令集,其指令编码格式混乱,导致编码器复杂,流水线设计较为困难,指令不定长也带来指令对齐方面的额外挑战。而RISC指令集的编码格式相对整洁,流水线设计容易,但是由于指令定长,导致一些比较大的常数\地址必须拆散才能加载,代码密度不够高,某些情况下会浪费指令缓存的容量和带宽,因此两种指令集都不是不败金身,本质上都属于双刃剑。在计算机体系结构还未发展成熟的时候,内存与编译器的缺憾给CISC留下了立足之地,但随着编译技术的进步以及存储体系的进化,程序大小所带来的间接优势越来越不明显,而RISC指令集上能够简化流水线设计,这项优点对架构师们反倒越来越具有吸引力,以至于连Intel都举棋不定,只得两条腿走路。Intel在继续更新CISC产品线的同时,也推出了i860系列RISC处理器,安迪•格鲁夫当时表示,CISC处理器是Intel一直在做的产品线,兼容所有软件,而RISC处理器速度更快,但没有什么软件能在它上面运行。连Intel都不知道未来发展方向会是在RISC还是CISC,只好两头下注。在风头最劲的时候,RISC处理器一度在服务器市场占据统治地位。当时的争论与工业实践中提炼出的RISC优势,直到现在仍被许多人谈论,但是,历史的进步无情地碾碎了这一切。
融为一炉 强大的Intel进入90年代后开始逐渐发力,追赶性能领先的RISC阵营,在90年代中期的P6结构里,Intel引入了乱序多发射技术,从微结构的角度上看,这标志着 Intel已经在CISC阵营中拔得头筹,但与当时RISC阵营中的旗舰之一MIPS R10000相比仍有不足,与另一龙头DEC Alpha更无法相提并论。值得一提的是,P6第一次实现了CISC指令集在解码阶段上向RISC类指令的转化,将后端流水线转换成类RISC的形式,弥补了CISC流水线实现上的劣势。许多人认为这是Intel在向RISC指令集学习,是在事实上宣布了RISC的胜利,可是ARM也于同期引入了代码密度更高的Thumb新指令集,力图提高指令缓存等劣势项目上的效率,这表明RISC也在向CISC取经,双方都在相互取长补短。而RISC风格的设计的确能输出速度优势,这在一部分人心目中催生了错误的RISC优越论。实质上随着体系结构和微电子技术的进步,CISC在结构上的所谓劣势逐渐缩小,乃至消失, 而RISC阵营却在Intel的猛攻下节节败退,时至今日,Intel的服务器CPU占据了95%的市场份额,RISC的优越论也逐渐偃旗息鼓,大家开始转而关注微结构与物理设计实现,并发掘操作系统、编译器与上层应用当中埋藏的可能性。 在P6这一微结构中,Intel第一次引入RISC风格的流水线 今年的国际高性能计算机体系结构大会上,来自美国威斯康辛大学的一个研究小组做了一个测量分析报告,根据他们披露的测试数据,CISC与RISC在指令集架构层面上的差异已经被弥合,在Cortex-A8以上级别的处理器中,由先进的微结构和物理设计、工艺实现带来的改进足以掩盖指令集架构层面的劣势。因此我们可以说,CISC vs RISC的世纪之战实际上没有胜负,双方的精华已经融为一炉。结果这个报告受到一些学者的批评,有意思的是,批评的原因并不是在于报告本身结论错误,而是因为这个报告所得出的结论,其实是大家早都已经认可的共识,没有必要再在大会上宣读! 如何评价一个结构设计理念是好是坏呢?笔者认为,应当是后人们看来理所当然的 —— “为什么不这样做呢?还好当初没有放弃这条路!”今天我们谈到RISC留下的遗产时,已经很难找到负面评价的理由,RISC不再是缺乏支持的异类,而是现代计算机体系结构的基本组成部分之一,没有人再对RISC存在的必要性提出怀疑,这大概就是对它最好的认可。 参考文献 [1] Douglas W. Clark and William D. Strecker. Comments on “The Case for the Reduced Instruction Set Computer,” by Patterson and Ditzel. ACM SIGARCH Computer Architecture News, 1980. 8(6), pp. 34-38. | |
Facebook H1B Salary Detailed Information
作者 陈怀临 | 2014-01-27 22:03 | 类型 行业动感 | Comments Off
Trustlook Discovered Remote Code Execution vulnerability on Gilt
作者 陈怀临 | 2014-01-27 14:05 | 类型 移动和设备, 网络安全 | 1条用户评论 »
科技一周~没有梦幻的公司
作者 硅谷寒 | 2014-01-26 20:30 | 类型 硅谷科技周报 | 4条用户评论 »
系列目录 科技一周
科技一周~没有梦幻的公司 2014/01/25 一代又一代的“梦幻公司”(Dream Company)在一波又一波的失败中破灭了梦幻,前有AT&T、Palm、Sun Microsystems,后有惠普、IBM、Intel,皆莫能外。也或许,这世间根本就没有什么所谓的“梦幻公司”,公司不在大小多少,能创新者,则自成高格。本周,硅谷的科技新闻,是以裁员的“坏”消息开始:
本周科普讲一讲芯片的成本计算,这是我认为的,Intel X86 CPU败给ARM CPU的一个最客观的因素。一枚芯片集成了上亿个晶体管,但其成本并不是由晶体管的数量来直接决定,而是由芯片的面积决定:面积越小,则成本越低。当然,在同一种工艺下,面积是由晶体管的数量来决定,晶体管的数量越少,面积就越小。在同等晶体管数量的情况下,工艺越先进,则面积越小。所以,芯片公司在成本方面的竞争,就变成了功能设计(决定晶体管数量)和工艺设计(决定工艺先进性)的综合性竞争。谁能在完成同样功能的前提下,用最小的面积,谁就会是价格战上的胜利者。 Intel虽然在工艺上领先了竞争对手们一个世代,但其CPU的设计复杂性太高,以至于抵消了其在工艺上的优势。也就是说,在完成类似功能的前提下,Inte X86 CPU的芯片面积总是大于ARM阵营里的CPU。比如,Intel Atom Z3740,是一款四核移动芯片,其封装面积为17mmX17mm,售价高达$32;而Qualcomm APQ8064也是一款四核芯片,封装面积只有14mmX14mm,售价约$20。虽然Atom Z3740采用了更为先进的22纳米工艺,但因其设计的复杂性,依然不能在最后的总面积上占得任何便宜。即使抛开ARM CPU的生态系统,单从价格而论,在各种智能终端越来越低廉的趋势下,Intel的CPU几乎无立锥之地。智能设备的世界,早已不是Intel当年垄断PC处理器的时代,再“梦幻”的历史,失去了创新,也会被埋进坟墓。 [1]. Shara Tibken, http://news.cnet.com/8301-1023_3-57616058-93/verizon-to-buy-intels-tv-business-for-undisclosed-sum/ , Jan 2014. [2]. Maggie McGrath, http://www.forbes.com/sites/maggiemcgrath/2014/01/23/lenovo-buying-ibm-server-business-for-2-3-billion/ , Jan 2014. [3]. Christopher Trout, http://www.engadget.com/2014/01/23/qualcomm-acquires-palm-other-patent-portfolios-from-hp/ , Jan 2014. 图1. [1].
图2. [3].
| |
Google H1B Detailed Salary Information
作者 陈怀临 | 2014-01-26 18:53 | 类型 H1B, 行业动感 | 5条用户评论 »
The Evolution of Operating System
作者 陈怀临 | 2014-01-25 07:09 | 类型 学术园地, 科技普及 | 2条用户评论 »
10 Cloud Security Startups to Watch in 2014
作者 陈怀临 | 2014-01-20 09:45 | 类型 专题分析, 网络安全 | 1条用户评论 »
1. Bitium
What they do: Provide cloud application management, single sign-on and analytics tools. /p> Headquarters: Santa Monica, Calif. CEO: Scott Kriz, who was most recently VP of product for Fastpoint Games, a sports and entertainment gaming company that was sold to Weplay in 2012. Founded: 2012 Funding: $2.4 million in seed funding from Resolute VC, Double M Partners, Social Leverage and Karlin Ventures.
What they do: Offer an information security rating service, which helps organizations evaluate risks when working with partners, suppliers, outsourcers, etc. Headquarters: Cambridge, Mass. CEO: Shaun McConnon, who previously served as CEO of Q1 Labs. Founded: 2011 Funding: BitSight raised a $24 million Series A round in June 2013. 3. CipherCloud
What they do: Provides a platform of unified cloud information protection offerings. Headquarters: San Jose, Calif. CEO: Pravin Kothari, formerly a cofounder of ArcSight, which HP acquired for $1.5 billion. Founded: 2010 Funding: CipherCloud is backed by a $30 million investment from Andreessen Horowitz. 4. HyTrust
What they do: Develop virtualization security tools, which organizations can use to enforce centralized policies over virtual and cloud infrastructures. Headquarters: Mountain View, Calif. CEO: John De Santis serves as CEO. Eric Chiu co-founded the company and is its president. De Santis was formerly Chairman and CEO of TriCipher, a software security infrastructure company acquired by VMware in 2010. After the acquisition, he served as VP, Cloud Services for VMware. Chiu was previously VP of Sales and Business Development for Cemaphore Systems. Founded: 2009 Funding: HyTrust has raised $34.5 million from both venture capital investment firms, including Trident Capital, Granite Ventures and Epic Ventures, as well as strategic corporate investors such as Cisco, VMware, Intel Capital, and Fortinet. In-Q-Tel, the investment arm for the U.S. intelligence community, has also invested in the company. 5. ForgeRock
What they do: Provide identity management solutions Headquarters: San Francisco, Calif. CEO: Mike Ellis, who previously held senior executive roles at SAP, i2 Technologies, Oracle, and Apple. Founded: 2010 Funding: ForgeRock has secured $22 million in two rounds of funding from Foundation Capital and Accel Partners.
What they do: Provide a service that helps users manage, control, and monitor which apps and websites have access to their personal information. Headquarters: Tel Aviv, Israel CEO: Olivier Amar, who was previously the VP Marketing at GetTaxi and Toyga Financial. Founded: 2012 Funding: The company has raised a $1 million seed round led by 500 Startups, lool Ventures and 2B Angels, with participation from Plus Ventures and angel investor Robby Hilkowitz.
7. Netskope
What they do: Provide cloud application analytics and policy creation tools that “eliminate the Catch-22 between being agile [and being] secure and compliant by providing complete visibility and enforcing sophisticated policies in cloud apps.” Headquarters: Los Altos, Calif. CEO: Sanjay Beri. Prior to Netskope, Beri was the GM of Juniper Network’s secure access and mobile business units and led the company’s India office. Before that, he co-founded Ingrian Networks, which was later acquired by SafeNet. Founded: 2012 Funding: The company is backed by $21.4 million from Lightspeed Ventures and The Social+Capital Partnership. 8. Prevoty
What they do: Provide cloud-based security that protects Web applications by contextually securing and monitoring all content, user sessions, and application behavior. Headquarters: Los Angeles, Calif. CEO: Julien Bellanger, who previously founded Personagraph, a mobile user privacy company. Prior to that, he was Director of Corporate Development at Intertrust. Founded: 2013 Funding: $2.4 million in seed funding.
What they do: Provide a cloud lifecycle and security suite, which discovers, analyzes, and secures various cloud services. Headquarters: Cupertino, Calif. CEO: Rajiv Gupta. He formerly founded Securent and served as its CEO. After Cisco acquired Securent for $100 million in 2007, Gupta joined Cisco and served as VP/GM of the Policy Management Business Unit. Founded: December 2011 Funding: In May 2013, Sequoia Capital and Greylock Partners invested $20 million in a Series B round, bringing total funding to $26.5 million. 10. SnoopWall
What they do: Provide antispyware/antimalware “counterveillance” software that detects and blocks remote control, spying and eavesdropping on computers, tablets, smartphones and other mobile devices. Headquarters: Nashua, N.H. CEO: Gary Miliefsky. He was formerly founder and CTO of NetClarity. Founded: 2013 Funding: SnoopWall is currently backed by an undisclosed amount of angel funding. | |
Stanford Mining of Massive Datasets
作者 陈怀临 | 2014-01-19 13:24 | 类型 Deep Learning, 机器学习 | Comments Off
科技一周~“覆巢”之下的科技
作者 硅谷寒 | 2014-01-18 16:54 | 类型 硅谷科技周报 | Comments Off
系列目录 科技一周
科技一周~“覆巢”之下的科技 2014/01/18 修整了两个星期,我又重新回到硅谷,这里的正月已然褪去寒装,暖暖风轻,阳光闲散,细语盈盈,浑不似那方才离别的太平洋西岸,正自风刀霜剑,冬冷梅寒。我看着自己房中那个“复杂的可编程”恒温器(Thermostat),落满灰尘,丑陋得像个皮擦,下意识地想起了本周硅谷里最为重大的新闻:
本周的科普重点是,恒温器:Nest Learning Thermostat。Nest 恒温器的核心是一片ARM Cortex A8 CPU,配有多个温度传感器,运动与光线传感器,Wifi芯片。温度传感器是用来感知室内温度,运动与光线传感器的作用是探测室内有无人在行走。Nest 恒温器可以通过Wifi芯片与Nest Labs的服务器相连,获得各种互联网信息,比如:时间、地区、天气、等等,也可以通过Wifi把用户的行为信息备份到服务器上,在更换设备的时候,不需要重新学习一遍,而只需要读取原来的备份数据。ARM CPU自然是分析各种数据,完成机器学习算法之用。 简单给Nest恒温器的学习算法建造一个模型,目标函数的输入向量有五个维度:地区、时间、天气、人(有或无)、温度。输出为1,代表用户接受了输入向量;输出为0,代表用户拒绝了输入向量,Nest需要自动调整。Nest的算法是一种“非监督式的学习算法”(Unsupervised Learning),通过用户的反馈,经过一定时间的数据样本累积,对输入向量进行聚类分析(Cluster Analysis),划分出合适的分类,从而能够为用户在特定环境下产生统计意义上的“正确”输入向量,以达成智能调控室内温度的目的。
[1]. Nest Labs, White paper: Nest Learning Thermostat efficiency simulation, http://downloads.nest.com/efficiency_simulation_white_paper.pdf , April 2012. [2]. Joan Solsman, At Yahoo’s CES keynote, Mayer is all entertainment, http://ces.cnet.com/8301-35284_1-57616827/at-yahoos-ces-keynote-mayer-is-all-entertainment/ , Jan 2014. [3]. Agence France Press, Google joins automakers in plan to make Android smart cars this year, http://www.businessinsider.com/google-just-made-a-big-move-toward-android-smart-cars-2014-1 , Jan 2014. 图1. Nest.com
图2. [2]
图3. Matt Burns, Nest thermostat teardown reveals beautiful innards, powerful ARM CPU, Zigbee radio, http://techcrunch.com/2011/12/22/nest-arm-zigbee/
| |
2014年大数据发展趋势预测
作者 陈怀临 | 2014-01-17 12:33 | 类型 大数据 | Comments Off