常有人问我为什么不喜欢RISC-V。以前我总是一点一点解释,听到的回应往往是“你只是没看懂它的精妙之处”。这当然算不上论证。被问的次数多了,我决定把想法完整写下来,方便下次直接给对方一个链接;如果有人想认真反驳,也能对着我的每一条观点逐点讨论。 先声明:以下只是我的个人观点,不代表我的雇主、任何神明,也不代表我的房东。我的猫部分同意、部分反对,它们打算稍后另行发表意见。 先说结论:RISC-V最终会占领廉价的一次性微控制器市场。但这不是因为它的指令集设计优秀,而是“尽管”它设计得并不优秀——它依然会赢。 “通吃一切”是第一个问题,也是最容易理解的问题。 RISC-V的狂热支持者会让你相信:RISC-V很快就会统治超级计算机,同时统治所有微小的单片机场景,还要统治两者之间的所有领域。这是不可能的,而且不是“RISC-V暂时还做不到”,而是任何指令集架构(ISA)都不可能做到。 原因很简单:高端CPU需要的设计取向,与低成本、省面积的微控制器核心需要的设计取向是根本对立的。这种冲突不只是微架构层面的取舍,而是会直接渗透到CPU架构本身。你不可能用一套指令集同时满足“极致性能”和“极致省钱”这两个完全相反的方向。 所以,RISC-V也许会在低端MCU市场获胜,但这个胜利恰恰说明不了“RISC-V设计得很好”。它更可能靠生态、授权模式、可定制性和价格等因素赢下来,而不是靠所谓更先进的ISA。
打开网易新闻 查看精彩图片
热门跟贴