在硬件设计方面,人们经常吹捧的一种设计是 RISC-V,它的 ISA 是开放的,不需要授权费。许多组织都愿意全力支持 RISC-V,开源社区对它也非常有信心,然而随着最近英伟达收购 ARM,人们开始担忧了。但是,我认为这些期望有些误导,因为 RISC-V 的开放性并不会给用户带来多少好处,实际上受惠的是 CPU 制造商。
1.授权费
RISC-V 最大的优势之一在于,不需要支付任何授权费。虽然你需要支付实现费用给 SiFive 之类的公司,但这些费用都是设计费,而不是 ISA 的抽象实现费。开放性意味着洗衣机等设备使用的小型芯片可以拥有更大的利润空间,因为制造商不需要支付 ARM 或 Synopsis 的任何费用。尽管节省下的费用也许会让利给消费者,但对于这种只能一次性编程的 ROM 而言,ISA 的开放性对于用户来说并没有什么用。
2.ISA 碎片化
RISC-V 有意定义了一个很小的、带有扩展的 ISA。尽管许多更大的实现都会实现一组通用的扩展,但连基本功能都放在扩展内,会导致以二进制形式发布软件时的兼容性更难以保证。再加上 RISC-V 明确地鼓励制造商在专用芯片上实现自定义指令,对于嵌入式来说这点非常好,但对于通用的计算机和计算机上运行的操作系统来说则不是个好消息。
3.生态环境
RISC-V 在积极地推动嵌入式,这种举措合情合理。但许多有关 RISC-V 的吹捧则希望它能成为个人电脑或服务器的主力。然而这不太可能实现,因为嵌入式的生态环境是完全不同的。ISA 在嵌入式编程中并没有那么重要(尽管代码的重用性很重要,但由于不需要运行任意的二进制文件,所以并不像通用处理器那般重要),用户和企业关心的都是二进制兼容性层次上的计算(避免已有程序的浪费)和大多数 RISC-V 实现尚未实现的性能提升,如超标量执行等。
4.开放性并不会传递
ISA 的开放对于实现并没有多大影响。RISC-V 的授权完全允许私有的设计,而且考虑到 RISC-V 在嵌入式中的统治地位,这种私有性会非常普遍。因此,开放性不会影响到用户(以控制根源信任),因为用户对于晶圆工厂并没有任何影响。
5.设计缺陷
自 1991 年以来,RISC-V 在 CPU 设计方面没有任何进步,甚至出现了一些诸如寻址模式错误等初级的错误。但是,尽管有这些缺陷,它依然在嵌入式方面占据了统治地位。
总的来看,RISC-V 会给希望节省经费的学术项目和嵌入式开发带来一场革命,但不太可能影响到用户和开发者。
转贴自网络