Consolidation in the semiconductor industry continues. The latest event is MIPS Technologies embracing the open source instruction-set architecture (ISA), RISC-V, and no longer designing for the MIPS architecture that gave birth to the company more than three decades ago.

While this news, reported in the trade publication EE Journal, does not have the eye-popping dollar amount of Nvidia acquiring Arm ($40 billion) or AMD acquiring Xilinx ($35 billion), it’s no less significant. It’s evidence that RISC-V is flexing its open source muscle and making progress in becoming the open standard for a foundational task of technological innovation -- chip design. With the once-prominent and engineer-beloved MIPS’s participation, the RISC-V ecosystem may soon mature to be a legitimate alternative to Arm, which will have massive technological, business, and geopolitical implications.

MIPS, RISC-V Similarities

From a technological standpoint, this “marriage” between MIPS and RISC-V is quite natural. As I described in “When ‘Jurassic Park’ Goes to China” last year, the MIPS architecture was first developed by Stanford professor (later president) John Hennessey and his computer science students back in 1981. MIPS was one of the first RISC-family of chip architectures that gained wide usage, and influenced the designs of other RISC-based ISAs that came after it, including RISC-V. (MIPS’s creation predated RISC-V for about two decades.)

Quick aside on definitions: The “R” in RISC stands for “reduced”, while the “C” in CISC stands for “complex”. This reduced architecture enables and optimizes simple computation instructions well. Think elementary school math: addition, subtraction, multiplication, division, etc. It’s less capable of supporting complex mathematical operations, like matrix multiplication and partial derivatives (used widely in Deep Learning AI). The most popular RISC architecture in the market is Arm. The CISC counterpart is Intel’s x86.

RISC-V’s creator, Dave Patterson of UC Berkeley, also co-authored two seminal books with Hennessey on computer architecture that are widely used as textbooks. So whether it’s the technology or the people behind the technology, the stories of MIPS and RISC-V have been deeply interconnected from the beginning.

That interconnectedness extends to today. In response to MIPS Technologies’ decision to design for RISC-V (and not MIPS), the CTO of RISC-V International (the nonprofit that governs the RISC-V project and ecosystem), Mark Himelstein, told EE Journal the following:

“I would personally say that the simplicity and elegance of RISC-V most reminds me of MIPS more than any other architecture. I am excited about the company’s next steps, including their involvement with the community and to see what RISC-V products they will bring to market.”

Himelstein himself worked as an architect at MIPS Technologies from 1985-1991, during the company’s heyday as a young, prominent rising star. (MIPS IPO’d in 1989.)

Consolidating (Some) Developer Mindshare

MIPS and Arm used to be rivals in the 90s. At that time, the market’s general impression of the two options was that cellphone makers tended to like ARM, while engineers and developers preferred MIPS.

Since MIPS’s first IPO, acquisition by Silicon Graphics, and a second spin-off IPO, the company’s business traction waned, while Arm flourished and dominated the market. MIPS did open source its ISA (similar to RISC-V) as a tactic to stay relevant in 2018 via the MIPS Open Initiative, but the program shut down less than two years after launch. Here’s a good timeline put together by Reuters that tracks how MIPS’s IP got licensed to China and its troubled corporate history, which ended in an acquisition by Wave Computing that is now bankrupt:

Source: https://graphics.reuters.com/USA-CHINA/TECH/yzdvxxdlnvx/USA-CHINA-TECH.jpg

Meanwhile, some of MIPS’s developer goodwill and mindshare persisted, partly due to its place in the core curriculums of many university computer science programs, where new technical talent is being trained. Even though MIPS Technologies is a shadow of its former self, its embrace of RISC-V could bring over and consolidate some developer mindshare, which would be valuable for RISC-V’s own ecosystem growth.

As I mentioned in a previous RISC-V deep dive post, RISC-V is facing a classic problem of not having a big enough software ecosystem to take it to the next level. It’s classic because RISC-V isn’t the first open source ISA. Its predecessors, OpenRISC and OpenSPARC, have all lost relevance due to a lack of software ecosystem to fuel their growth. And the key to building a sustainable software ecosystem, even (or especially) for a hardware project, is to own more software developer mindshare.

The thing is an ISA by itself isn’t that valuable. Borrowing an analogy from an entrepreneur in the RISC-V space: an open source ISA is more like the English grammar -- not that valuable until enough people use it to write the great novels, academic papers, legal contracts, etc.

Similarly, the production silicons (actual chips that can be deployed in devices, the “novels”, if you will) is what makes RISC-V valuable, not open source per se. Sadly, RISC-V isn’t at that level yet, because not enough developers “speak” RISC-V. Thus, it’s not surprising that there is no volume production of RISC-V-based chips, despite the enthusiasm surrounding the technology.

MIPS Technologies’ commitment to RISC-V might just give its software developer ecosystem a boost -- not a big one, but a relevant one. That relevance comes from MIPS’s original design decision to move the software layer towards the hardware layer, as opposed to the reverse direction, which was the mainstream design philosophy at that time. This choice was made in part because the Hennessey-led research team that created MIPS had renowned technical strength in building compilers -- the layer of software that translates the source code that human beings write (e.g. a for loop) into machine code -- something a chip can understand and process.

Attracting more compiler engineers to build on top of RISC-V is critical to its success. That’s why the MIPS news is important, despite little media fanfare and no attention-grabbing dollar amount.

Power to Standardize

Stepping back to a macro level, one of the most powerful elements of open source is its ability to become a standard from which other technologies will build on. It’s the holy grail that every ambitious open source project wants to reach. And despite some of my bearish sentiments around RISC-V, it’s now poised to become a standard (slowly but surely) with the help of MIPS, and I hope it succeeds.

In the future, every layer of a technical stack will have one or two open source winners and one or two proprietary solutions, with the open source ones eventually becoming the standard. This long-term momentum behind open source is somewhat inevitable, because developers prefer it for its easy access and transparency, while the companies who employ developers prefer its vendor neutrality, robustness, and the self-fulfilling rationale that the developers whom they want to hire prefer open source. (For more of my thoughts on developers, please see Part I of my Global by Nature series.)

This dynamic has already played out in several layers:

  • General purpose operating system: Linux (open source), Windows (proprietary)
  • Mobile operating system: Android (open source), iOS (proprietary)
  • Cloud container management: Kubernetes, OpenStack (both open source)
  • Front-end framework: React, Vue, Angular (all open source)
  • Backend web framework: Node.js (open source)
  • AI/ML framework: Tensorflow, PyTorch, Keras (all open source)

Other layers, like databases and big data analytics, are crowded with many solutions vying to become the standard. New, emerging layers like 5G are currently dominated by proprietary solutions (Huawei, Ericsson, and Nokia), while open source projects like OpenRAN, Open Network Automation Platform, and OpenAirInterface are promising but still immature.

As for the all-important semiconductor industry, it does look like RISC-V will become an open standard that will chip away at Arm/Nvidia and perhaps x86 too. It's a standard that any person, company, and, yes, country can use however it seems fit. The question is when, not if.

If you like what you've read, please SUBSCRIBE to the Interconnected email list. To read all previous posts, please check out the Archive section. New content will be delivered to your inbox (twice per week). Follow and interact with me on: Twitter, LinkedIn, Clubhouse (@kevinsxu).

半导体设计领域整合: MIPS -> RISC-V

半导体行业的整合正在继续。最新的变动是MIPS Technologies拥抱开源指令集架构(ISA),RISC-V,而不再为MIPS构架设计芯片了。MIPS构架则是公司30多年前诞生的起源。

虽然这条新闻尽在行业刊物《EE Journal》上报道,没有Nvidia收购Arm(400亿美元)或AMD收购Xilinx(350亿美元)那样惊人的金额,但它的意义并不小。这个整合证明RISC-V正在发挥其开源的优势,并在芯片设计这个任何技术创新都需要的基础步骤还是往开放式标准化的方面发展。随着曾经一度杰出、深受工程师喜爱的MIPS的参与,RISC-V生态可能很快就会成熟起来,成为Arm强有力的替代品。这个走向将对技术、商业和地缘政治关系都有巨大的影响。

MIPS、RISC-V很相似

从技术角度来看,MIPS与RISC-V的 "联姻" 其实非常自然。正如我去年在 "侏罗纪公园去中国" 一文中所写到的,MIPS架构最早是由斯坦福大学教授(后来的校长)John Hennessey和他的计算机系学生在1981年开发的。MIPS是最早获得广泛使用的RISC系列芯片架构之一,并影响了之后其他基于RISC的芯片设计,包括RISC-V。(MIPS比RISC-V早20年左右。)

快速的旁白。RISC中的 "R "代表 "减少",而CISC中的 "C "代表 "复杂"。这种简化的架构可以很好地实现和优化简单的计算指令。想想小学数学:加减乘除等。它不太能够支持复杂的数学运算,比如矩阵乘法和部分导数(在深度学习AI中广泛使用)。市场上最流行的RISC架构是Arm。CISC对应的是英特尔的x86。

简短的科普一下:RISC中的 “R” 代表 “reduced”(简化),CISC中的“C”代表“complex”。这种简化的架构可以很好地实现和优化简单的计算指令,比如小学数学:加减乘除等。它不太能够支持复杂的数学运算,比如矩阵乘法和部分导数(在深度学习AI中广泛使用)。市场上最流行的RISC架构是Arm。CISC类的对应构架是英特尔的x86。

RISC-V的创始者是加州大学伯克利分校的Dave Patterson教授。他还与Hennessey合著了两本关于计算机架构的书,广泛作为教材。所以,无论是技术还是技术背后的人们,MIPS和RISC-V的故事从一开始就有很深的互联关系。

这种互联一直延伸到今天。针对MIPS Technologies 决定为RISC-V(而不是MIPS)设计设计芯片一事,RISC-V International(也就是管理RISC-V项目和生态的非营利组织) 的首席技术官Mark Himelstein 对《EE Journal》分享了如下回应:

"我个人而言,RISC-V的简洁和优雅让我想起MIPS,多于其他任何架构。我对公司下一步的发展方向很兴奋,包括他们与社区的参与,也期待看到他们会给市场带来什么样的RISC-V产品。"

Himelstein本人在1985-1991年曾在MIPS Technologies担任架构师,那时正是公司作为一颗行业新星的“鼎盛时期”。(MIPS于1989年上市。)

巩固(部分)开发者的爱戴

MIPS和Arm在90年代曾经是竞争对手。当时,市场上对这两种选择的普遍印象是,手机厂商往往喜欢用ARM,而工程师和开发者则更喜欢MIPS。

自从MIPS的第一次IPO,后来被Silicon Graphics收购,然后又做第二次分拆上市后,公司的业务直线下降,而Arm一直蓬勃发展,最终占据市场主导地位。MIPS还在2018年把构架开源(类似于RISC-V),想通过这个方式来恢复项目的活力。但该计划在启动后不到两年就关闭了。以下是个很好的由路透社团队做的时间线,总结了MIPS的IP是如何跑到中国的,以及公司背后各种错中复杂的历史。MIPS最终被Wave Computing收购,但这家公司现在已经破产:

来源:https://graphics.reuters.com/USA-CHINA/TECH/yzdvxxdlnvx/USA-CHINA-TECH.jpg

虽然MIPS的业务很不景气,但技术本身仍在许多开发者心中保留着好感,部分原因是它在许多大学电脑专业的基础课程中一直被用为教学素材,所以在培养新的技术人才过程中MIPS还有一席之地。尽管MIPS Technologies已经今非昔比,但它拥抱RISC-V这一举可以有效的帮助巩固RISC-V在一些开发者心中的地位,对它的生态发展很有价值。

正如我在之前的一篇关于RISC-V的深度分析文章中提到的,RISC-V正面临着一个经典的挑战,那就是没有足够大的软件开发生态让它更上一层楼。之所以说它是“经典”,是因为RISC-V并不是第一个开源的ISA。它的前辈,OpenRISC和OpenSPARC,都因为缺乏软件开发生态而被遗忘。而要想建立一个可持续发展的软件开发生态,尽管(或者尤其)是对于一个硬件项目,关键是要拥有更多的软件开发者的爱戴和关注。

问题是一个ISA本身并没有那么大的价值。借用一位在RISC-V领域里创业的朋友的比喻:一个开源的ISA更像是英语语法 -- 在足够多的人用它写出伟大的小说、学术论文、法律合同等作品之前,它并没有多少价值。

同样,生产级硅片(可以部署在设备中的芯片,也就是所谓的 "小说")才是体现出RISC-V价值的地方,而不是它的开源本质。遗憾的是,RISC-V目前还没有达到这个水平,还没有足够多的开发者 "会说" RISC-V。因此,尽管围绕着RISC-V技术的热情很高,基于RISC-V的生产级芯片还没达到量产,这也不足为奇了。

MIPS Technologies 今后拥抱 RISC-V 会很有效的推动它的软件开发者生态的成长 -- 并不一定很大,但会很对口。这来自与MIPS最初的设计理念,即把软件层靠向硬件层,而不是相反的方向(相反方向是当时的主流设计理念)。这一选择是因为Hennessey领导的研究团队在搭建编译器(compiler)方面已经有很强的技术,编译器则是将人写的源代码(比如一条for loop语句)翻译成芯片看的懂得机器代码来处理。

吸引更多的编译器开发者愿意在RISC-V的基础上做事,是整个生态成功的关键。这就是为什么MIPS这一消息值得关注,尽管媒体宣传不多,也没有吸引眼球的金额。

标准化的力量

从一个更宏观的角度去看,开源最强大的力量之一就是它能把一层技术标准化,给其他技术开发一层标准基础。这是每个有野心的开源项目都想达到的高度。尽管我对RISC-V还持有些悲观的态度的看法,但在MIPS的帮助下,它已经(缓慢但坚定的)步入把芯片设计这一层标准化的道路上。我也非常希望它能成功。

未来,一套技术栈里的每一层都会有一两个开源的赢家和一两个闭源的解决方案,而开源的最终会成为标准。开源的这种长期发展势头在某种程度上是不可避免的,因为开发者喜欢开源的易取性和透明度,而雇佣开发者的各大公司则喜欢它的厂商中立、扎实技术,以及一个更绕圈的逻辑:它们想雇佣的开发者都喜欢开源,所以它们也必须拥抱开源。(关于我对开发者群体更细致的分析和看法,请看我的写的 "生来全球化" 系列的第一篇。)

这种动态已经在某些技术栈层里体现出来了:

  • 通用操作系统: Linux(开源),Windows(闭源)
  • 移动操作系统:安卓(开源)、iOS (闭源)
  • 云容器管理:Kubernetes、OpenStack (均为开源)
  • 前端框架:React、Vue、Angular (均为开源)
  • 后台web框架:Node.js(开源)
  • AI/ML框架:Tensorflow、PyTorch、Keras (均为开源)

在其他层里,如数据库和大数据分析,仍然挤满了众多解决方案,在争夺“标准化”的地位。像5G这种新兴技术层,目前仍由闭源专有的解决方案(华为、爱立信和诺基亚)主导,而像OpenRAN、Open Network Automation Platform和OpenAirInterface等开源项目,虽然都很有潜力,但仍不成熟。

至于至关重要的半导体行业,RISC-V确实看起来早晚会成为一个开源标准,与Arm/Nvidia,甚至x86竞争对峙。这层标准任何人,公司,以及(是的)国家,都可以随意使用。问题是何时,而不是是否。

如果您喜欢所读的内容,请用email订阅加入“互联”。要想读以前的文章,请查阅《互联档案》。每周两次,新的文章将会直接送达您的邮箱。请在TwitterLinkedIn、Clubhouse(@kevinsxu)上给个follow,和我交流互动!