
Інженер із Тринідаду відповідає на критику RISC-V
Армстронг Суберо відповідає на есе Дмитра Грінберга про RISC-V і доводить, що вирішальним є не кодування інструкцій, а те, хто взагалі може дозволити собі залізо.
Інженер вбудованих систем Армстронг Суберо опублікував відповідь на есе Дмитра Грінберга «RISC-V: They Should Have Known Better», яке потрапило на головну сторінку Hacker News і викликало дискусію на Lobsters. Суберо, який працює з Тринідаду і Тобаго і каже, що перевів увесь свій стек з STM32 та ARM на RISC-V, доводить, що найважливіша частина критики стосується не кодування інструкцій, а того, хто взагалі може придбати залізо.
З чим він згоден
Суберо визнає кілька зауважень. Він пише, що стиснені зсуви для store у RISC-V справді дивні, що Zicsr не має бути окремим розширенням, про яке дизайнер мусить пам'ятати, і що він натрапляв на все це на CH32V003 — одному з дешевих чипів класу RV32E, згаданих Грінбергом. Він також зазначає, що RISC-V International відмовила йому в членстві, і каже, що не захищає комітет ISA. Однак додає: власний перелік вимог Грінберга до ядра дешевого мікроконтролера — низька затримка переривань, мала площа кристала, добра щільність коду, відсутність дільника — описує саме той набір інструкцій, який уже реалізують чипи за десять центів.
Аргумент доставки
Серце відповіді — логістика. Працюючи з Тринідаду, невеликої острівної держави біля узбережжя Венесуели, замовити плату означає перевірити, чи продавець узагалі доставляє сюди і яка сума вийде в місцевій валюті. Безкоштовна доставка від Digikey, Mouser чи європейських виробників на нього не поширюється: за чипи вартістю близько долара він платить від 60 до 200 доларів за пересилання. Одна відома компанія з виробництва друкованих плат, яка зверталася до нього щодо спонсорства, за його словами, відмовила лише через його розташування. Для групи з тридцяти студентів різниця між деталлю за десять центів і за долар означає різницю між власним чипом у кожного та спільним демонстраційним стендом.
Один ISA, дві межі продуктів
Суберо також оспорює тезу, що протилежні вимоги унеможливлюють один набір інструкцій для обох кінців ринку. Він перелічує деталі, які мав у руках: від десятицентового CH32V003 до двоядерного CH32H417 і Baochip-1x — чипа з MMU, на якому працюють мікроядро Xous, seL4 та Linux. На ARM, пише він, межа між малим ядром і ядром з MMU є не архітектурним фактом, а продуктовою межею, яку забезпечує ліцензування: віртуальна пам'ять означає ліцензію на Cortex-A. У RISC-V supervisor-режим і сторінкова адресація — необов'язкові можливості привілейованої специфікації, які розробник може ввімкнути. Вартість власного стеку він оцінює менш ніж у 100 доларів проти приблизно 600 доларів за один налагоджувач Segger J-Link для ARM.
Фрагментація як компроміс
Щодо фрагментації він частково погоджується: відокремлення Zcb від C і необов'язковий статус Zicsr дратують, а власна апаратура переривань від вендорів роздрібнює екосистему ще більше — це він відчув, портуючи NuttX на WCH CH32V307. Водночас механізм розширень і є тим, що дозволяє одному базовому набору інструкцій обслуговувати і шістнадцятирегістрову деталь за десять центів, і чип із захищеною операційною системою. Суберо, який називає себе інженером вбудованих систем і автором видавництва Apress/Springer та розвиває освітню платформу Rovari, підсумовує: RISC-V займе дешевий сегмент мікроконтролерів завдяки ціні та єдиному набору інструкцій угорі, а не через елегантність кодування.
SiTech — веброзробка з підтримкою AI
Створюємо швидкі та сучасні сайти й інтегруємо AI у бізнес-процеси. Маєте проєкт чи запитання? Із задоволенням допоможемо.