1.5 结语
冯·诺依曼精心编写的报告的先前版本影响力巨大,尽管该报告基于他人的工作,这种计算机结构仍通称为冯·诺依曼架构。该报告撰写于第一台存储程序计算机开始运行的三年前!
用形式逻辑方法容易看出,存在某种抽象的(指令集),足以控制和执行任意操作序列……现在看来,选择一款(指令集)的真正决定性因素更多是实用性:(指令集)所需装置的简洁性、应用于实际重要问题的清晰度,以及处理这些问题的速度。
——(Burks et al.1946)
RISC-V是一款最新的、清晰的、简约的、开放的ISA,它以过去ISA所犯错误为鉴。RISC-V架构师的目标是让它能用于从最小到最快的所有计算设备。遵循冯·诺依曼在20世纪40年代的建议,RISC-V强调简洁性以保持低成本,同时拥有大量寄存器和直观的指令执行速度,从而帮助编译器和汇编语言程序员将实际的重要问题转换为适当的高效代码。
复杂度的一个指标是文档大小。图1.6给出了以页数和单词数衡量的RISC-V、ARM-32和x86-32指令集手册的大小。如果你全职阅读手册,每天8小时,每周5天,那么读完ARM-32手册需要半个月,读完x86-32手册需要整整一个月。在此复杂度下,大概没有一个人能完全理解ARM-32或x86-32。按此标准,RISC-V的复杂度只有ARM-32的1/12,x86-32的1/10到1/30。实际上,包含所有扩展的RISC-V ISA总览只有一页(两面)(见“参考卡”)。
简洁
图1.6 ISA手册的页数和单词数(Waterman et al.2017a)、(Waterman et al.2017b)、(Intel Corporation,2016)、(ARM Ltd.,2014)
读完ISA手册所需时间按每分钟200个单词,每周40小时计算。〔此图源于(Baumann,2017)中图1的一部分〕
这款袖珍的开放ISA诞生于2010年5月18日,现由一个基金会提供支持,并通过添加可选扩展的方式来发展,但这将严格基于技术理由并经过长期的讨论。开放性带来免费和共享的RISC-V实现,这不仅能降低成本,还能降低处理器中隐藏非预期恶意秘密的可能性。
为庆祝RISC-V十周年,我们从RISC-V第一个十年的角度对23人进行视频采访,请他们分享自己的经历,描述RISC-V是如何影响他们的生活和工作的,并预测RISC-V的前景。见“链接2”。
然而,仅靠硬件并不能组成一个系统。软件开发成本可能远高于硬件开发成本,因此稳定的硬件固然重要,但稳定的软件更甚于此。这些软件包括操作系统、引导程序、参考软件和主流软件工具。基金会保证整个ISA的稳定性,而冻结的基础指令集意味着作为软件栈构建目标的RV32I核心永不改变。通过其普适性和开放性,RISC-V有望冲击主流专有ISA的主导地位。
优雅是一个很少用于形容ISA的词,但在阅读本书后,你可能会认同我们用它形容RISC-V。我们将用页边的蒙娜丽莎图标来强调我们认为体现优雅性的功能特性。
优雅