A 3rd World Embedded Engineer Responds to "RISC-V They Should Have Known Better"

A 3rd World Embedded Engineer Responds to “RISC-V They Should Have Known Better”

一位来自第三世界的嵌入式工程师对《RISC-V:他们本该更明智》一文的回应

August 16, 2026 | RISC-V Article 2026年8月16日 | RISC-V 文章

Dmitry Grinberg published a long piece explaining his distaste for RISC-V, you can read his article here: RISC-V: They Should Have Known Better - Dmitry.GR. It went to the front page of Hacker News and it started a good argument on Lobsters. It is the most substantial criticism the architecture has had in a while and though I switched my entire stack away from STM32 and ARM to RISC-V and did a video on it about a year ago Goodbye STM32 ARM – Meet the CH32 RISC-V Chips That Replaced It!, part of me is infuriated because so much of what he said seems like a biased perspective. Dmitry Grinberg 发表了一篇长文,阐述了他对 RISC-V 的反感,你可以在这里阅读他的文章:RISC-V: They Should Have Known Better - Dmitry.GR。这篇文章登上了 Hacker News 的头版,并在 Lobsters 上引发了激烈的讨论。这是该架构近期以来最实质性的批评。尽管我大约一年前就将我的整个技术栈从 STM32 和 ARM 迁移到了 RISC-V,并为此制作了一个视频 Goodbye STM32 ARM – Meet the CH32 RISC-V Chips That Replaced It!,但我内心的一部分感到非常愤怒,因为他所说的大部分内容似乎都带有偏见。

Look, I am not going to defend the ISA committee, RISC-V international denied me membership to their golden tower. On the architecture itself, the compressed store offsets really are strange, Zicsr really should not be a separate thing you have to remember to ask for, I have hit every one of these and I have written a book thats about 80% complete about hitting them on the CH32V003, which is one of the very “RV32E” type chip he mentions. 听着,我不是要为 ISA 委员会辩护,RISC-V 国际组织拒绝了我加入他们“黄金塔”的申请。就架构本身而言,压缩存储偏移量确实很奇怪,Zicsr 确实不应该是一个你需要专门去申请的独立模块。我遇到过所有这些问题,并且我正在写一本书(已完成约 80%),专门讲述在 CH32V003 上遇到这些坑的经历,这正是他提到的那种典型的“RV32E”芯片。

Maybe I should say where I am writing from, because it changes which parts of this argument look important from my perspective. I work out of Trinidad and Tobago, a small island nation off the coast of Venezuela. When I want a development board I am not clicking through to next day delivery, I am checking whether the seller ships here at all, what customs will do to it (if I get it at all), and what the total lands at in TT dollars. “Free Shipping” from Digikey, Mouser or any US or European manufacturer doesn’t apply to me. I pay anywhere from US $60 to US $200 to ship one dollar chips that people everywhere else get free shipping on. In fact a well known PCB company who reached out to me considering sponsorship turned me down solely based on shipping to my location. 也许我应该说明我是在哪里写下这些文字的,因为这决定了从我的角度来看,这场争论中哪些部分才是重要的。我在特立尼达和多巴哥工作,这是一个位于委内瑞拉海岸外的小岛国。当我想要一块开发板时,我无法点击“次日达”,我得先确认卖家是否发货到这里,海关会如何处理它(如果我能收到的话),以及折算成特立尼达和多巴哥元后的总成本是多少。Digikey、Mouser 或任何欧美制造商的“免运费”政策对我来说都不适用。为了运送那些在世界其他地方可以免费包邮的一美元芯片,我需要支付 60 到 200 美元的运费。事实上,一家曾联系我考虑赞助的知名 PCB 公司,仅仅因为我的地理位置运费问题就拒绝了我。

The students I want to teach are in the same position, and so are the ones in Nigeria and Bangladesh and everywhere else the people in the industry does not think about when it writes its blog posts. From that position, the difference between a ten cent part and a one dollar part is not a rounding error and it is not a detail you get to wave past on the way to the interesting discussion about encodings. It is the difference between a class of thirty students each having their own chip and a class of thirty students watching one demo board if any at all. Instruction set elegance is a thing you can afford to care about once the hardware is already on your desk. Whether the hardware can get to your desk at all comes first. 我想教的学生们也处于同样的境地,尼日利亚、孟加拉国以及其他那些行业人士在撰写博客时从未考虑过的地方的学生们也是如此。从这个角度来看,十美分零件和一美元零件之间的差异绝非四舍五入的误差,也不是在讨论编码等有趣话题时可以一笔带过的细节。这决定了是一个班级三十名学生每人都能拥有自己的芯片,还是三十名学生挤在一起看一块演示板(如果能有的话)。只有当硬件已经摆在你的桌面上时,你才有余力去关心指令集的优雅程度。硬件能否送到你的桌面上,这才是第一位的。

That is why the paragraph most people scrolled past is, to me, the most important one in the article. Grinberg missed that part that RISC-V creates a space for the other 99% outside of “the world” (which in this space “world” is mainly the US and Europe) and it has nothing to do with architecture. 这就是为什么大多数人匆匆滑过的那一段,对我而言却是文章中最重要的一段。Grinberg 忽略了这一点:RISC-V 为“世界”(在这个领域,“世界”主要指美国和欧洲)之外的那 99% 的人创造了空间,而这与架构本身无关。

He Derives the Requirements and Lands on RV32EC

他推导出了需求并最终指向了 RV32EC

Before the interrupt arithmetic, before the encoding complaints, he does something careful. He asks what a cheap microcontroller core is actually for. His answer is that it sits inside a larger chip prodding registers and configuring hardware blocks, in an “MP3 player, an SD card, a USB stick”. The real work is done by custom silicon around it. From that he derives what such a core needs. Low interrupt latency, a small die area and good code density, because the code lives in ROM or SRAM and both are expensive per byte. No hardware divider, possibly not even a multiplier, since you are not doing much arithmetic. No privilege separation, because nothing untrusted ever runs there. 在讨论中断算术和编码抱怨之前,他做了一件严谨的事。他询问廉价微控制器核心的真正用途是什么。他的回答是:它位于更大的芯片内部,负责拨动寄存器和配置硬件模块,比如在“MP3 播放器、SD 卡、U 盘”中。真正的工作是由其周围的定制硅片完成的。由此,他推导出了这种核心的需求:低中断延迟、较小的芯片面积和良好的代码密度,因为代码存储在 ROM 或 SRAM 中,而这两者的每字节成本都很高。不需要硬件除法器,甚至可能不需要乘法器,因为你不需要进行太多的算术运算。不需要权限隔离,因为那里从不运行任何不可信的代码。

Then he writes the line himself: “But,” you might say, “you just described RV32IC (or RV32EC)!” And earlier, plainly: I am 100% sure that RISC-V will own the cheap-as-dirt single-use microcontroller space eventually. So the most credible RISC-V critic of the month sat down, worked out from first principles what a cheap microcontroller core should be, arrived at the instruction set a ten cent chip implements, and stated that this segment is going to be RISC-V’s. He derives the case for the chip and then spends the rest of the article annoyed that the chip exists. This is almost satirical. His quarrel is with whether that outcome was earned. That is a real question and I understand why it bothers him. It is not, however, a question that affects anybody deciding what to learn on, because the chip is on the shelf either way. 然后他自己写道:“但是,”你可能会说,“你刚才描述的不就是 RV32IC(或 RV32EC)吗!” 并且早些时候,他直言不讳地表示:我 100% 确定 RISC-V 最终将统治廉价的一次性微控制器领域。因此,本月最可信的 RISC-V 批评者坐下来,从第一性原理出发推导出了廉价微控制器核心应该是什么样子,得出了十美分芯片所实现的指令集,并断言这个领域将属于 RISC-V。他推导出了芯片存在的理由,然后用文章的其余部分来表达对该芯片存在的不满。这简直具有讽刺意味。他争论的是这种结果是否“名副其实”。这是一个真正的问题,我理解为什么这让他感到困扰。然而,对于任何决定学习什么的人来说,这并不重要,因为无论如何,芯片都已经摆在货架上了。

Where I Actually Disagree, Strongly.

我真正强烈反对的地方。

His central claim is the first one in the article, and it is bigger than any of the encoding complaints: Simply put, the things a high-end CPU needs are diametrically opposed to the things a small cost-saving microcontroller core needs. The conclusion he draws is that no single ISA can serve both ends, and that RISC-V fans are fooling themselves, in theory the premise is true. The conclusion does not follow, and I can show you why from three parts sitting on my desk as we speak. 他的核心观点是文章中的第一个论点,这比任何关于编码的抱怨都更重要:简而言之,高端 CPU 所需的特性与小型成本节约型微控制器核心所需的特性是截然相反的。他得出的结论是,没有单一的 ISA 可以同时满足这两端,RISC-V 的粉丝们是在自欺欺人。理论上,这个前提是正确的。但结论却未必成立,我可以从我桌上现有的三个零件向你展示原因。

CH32V003. This is the cheap “RV32EC” with sixteen registers, no multiplier, no divider, machine mode only, 2KB of SRAM, 16KB of flash, ten cents, it’s EXACTLY the core he specified. I shipped two products with these, one is a bin monitor that has a ToF sensor, an LED and an air tag. The other is an agricultural product for a client that opens and closes a door at a certain time. It also makes a good throw away part, as I show case in my whistle switch Clap Switch Is Dead. Here’s the RISC-V Powered Whistle Switch! and which in my view is the BEST part to replace the overpriced, outdated Arduino Did Arduino Q Ruin Arduino? - Here’s how to Switch to RISC-V with the CH32V003.. CH32V003. 这就是那种廉价的“RV32EC”,拥有 16 个寄存器,没有乘法器,没有除法器,仅支持机器模式,2KB SRAM,16KB Flash,售价十美分,它完全符合他所描述的核心。我用这些芯片交付了两个产品,一个是带有 ToF 传感器、LED 和 AirTag 的垃圾桶监控器;另一个是为客户开发的农业产品,可以在特定时间开关门。它也是一个很好的“一次性”零件,正如我在我的哨声开关视频 Clap Switch Is Dead. Here’s the RISC-V Powered Whistle Switch! 中展示的那样。在我看来,它是取代价格昂贵且过时的 Arduino 的最佳零件 Did Arduino Q Ruin Arduino? - Here’s how to Switch to RISC-V with the CH32V003.

CH32H417. A dual core MCU that is unmatched in performance to price point and is at the higher end of the MCU line of things. It has a QingKe V5F at 400 MHz alongside a V3F at 144 MHz, 896KB of SRAM, 960KB of flash. USB 3.2 Gen1 with an integrated 5 Gbps transceiver. CH32H417. 这是一款双核 MCU,其性价比无与伦比,处于 MCU 产品线的高端。它拥有一个 400 MHz 的 QingKe V5F 核心和一个 144 MHz 的 V3F 核心,配备 896KB SRAM 和 960KB Flash。它还具备 USB 3.2 Gen1 接口,并集成了 5 Gbps 收发器。