RISC-V与DSA计算机架构
相信所有和计算机体系结构打过交道的朋友们都看过David Patterson与John Hennessy的煌煌巨作,《计算机体系架构:量化研究方法》。两位在计算机架构领域鼎鼎大名的教授,一个来自加州大学伯克利分校,另一个来自斯坦福。
首先上场的是David Patterson,为我们带来了关于指令集架构(ISA)的回顾以及RISC-V项目的展望。
(Patterson教授在演讲中)
Patterson教授的演讲主题是50年来计算机体系架构(ISA为主)的回顾以及RISC-V架构。
Patterson教授首先回顾了ISA的发展史。在计算机发展之初,ROM比起RAM来说更便宜而且更快,所以并不存在片上缓存(cache)这个东西。在那个时候,复杂指令集(CISC)是主流的指令集架构。然而,随着RAM技术的发展,RAM速度越来越快,成本越来越低,因此在处理器上集成指令缓存成为可能。RISC的出现可谓水到渠成。研究发现计算机执行大多数程序时CISC指令集中绝大多数指令都只在极少的时间才被用到,因此专门为这些指令设计硬件并不划算。相反,使用精简指令集(RISC)可以大大简化硬件的设计,从而使流水线设计变得简化,同时也让流水线可以运行更快。
Patterson教授再次重申了评估处理器性能的指标,即程序运行时间。程序运行时间由几个因素决定,即程序指令数,平均指令执行周期数(CPI)以及时钟周期。程序指令数由程序代码,编译器以及ISA决定,CPI由ISA以及微架构决定,时钟周期由微架构以及半导体制造工艺决定。对于RISC,程序指令数较多,但是CPI远好于CISC,因此RISC比CISC更快。
除了CISC和RISC之外,另一种流行(过)的ISA是超长指令字(VLIW)。VLIW把多个操作放在一条指令里,因此需要一条指令中的多个操作能够并行执行。
VLIW的代表是Intel Itanium(安腾),使用的架构代号是EPIC,开发的合作伙伴是惠普。安腾第一代Merced预期出货日期是1997年,实际出货时期为2001年;第二代McKinley使用180nm工艺,出货时间为2002年;第三代Poulson,也是最近的一代,8核心使用32nm工艺,2012年出货。