Привет, постоянные и не очень читатели 🙂
Это снова я — с четвёртой статьей из цикла про архитектуры, процессоры и всё такое. Напомню, как всё было:
-
Part I: Скандальное разоблачение x86: ARM врывается с двух ног
-
Part II: Этой индустрии нужен новый герой: ARM врывается с двух ног
-
Part III: Китайский киднеппинг: похищение дочки
-
Part IV: RISC-V — звезда родилась: x86 не у дел, ARM сломала две ноги ← ВЫ ЗДЕСЬ
С тех пор утекло много всяких жидкостей: в x86 титанические сдвиги из-за провалов Intel с массовым выходом процессоров из строя (поговаривают, что Qualcomm их даже прикупить может, в такое никто бы не поверил пару лет назад); ARM — архитектура в целом — притормозила со своими гулливеровскими шагами из поколения в поколение, даже в серверном сегменте как-то всё притихло (не видать нам массовых серверов Dell или HPE с чипами на ARM как своих ушей); китайцы при
хватизировали у британцев пласты IP (Intellectual property) да тихонечко свою микроэлектронику развивают под санкциями, никому не мешая.Как видите, интересного много; для лучшего погружения в контекст стоит прочесть первые три статьи из цикла (хотя бы краем глаза взглянуть), но это на ваше усмотрение. Моя работа, в конце концов, сделать так, чтобы вы не уснули на обеденном перерыве за чашкой кофе, а потому этот лонгрид читабелен и без «сильмариллиона» за плечами.
В чём RISC: Люди Икс и предыстория
RISC-V (произносится как «риск-пять») — это открытая модульная процессорная архитектура и система команд, представленная в 2010 году. По меркам других архитектур это буквально вчера (x86 в 16-битном виде появилась на свет божий в 1978 году).
Родилась эта чудо-архитектура в лабораториях (хочется верить, подземных) Калифорнийского университета в Беркли. В основе лежит концепция RISC (Reduced Instruction Set Computing), как и у ARM. RISC-V изначально отличался от схожих проектов тем, что планировался для множества компьютерных задач, а не только для образования.
Проект масштабный, над ним работала целая группа учёных и инженеров, но главными локомотивами проекта стали два учёных (оппенгеймеры своего дела). Все знают Джобса или Гейтса, но многие великие умы неизвестны широкой публике — исправлю это недоразумение.
Профессор Ксавье Дэвид Паттерсон — американский учёный, профессор информатики в Калифорнийском университете в Беркли, лауреат премии Тьюринга, гений, филантроп, миллиардер. Он стоял у истоков разработки архитектуры RISC ещё в 1980-х годах, так что и за ARM можно благодарить этого человека. Паттерсон ввел сам термин RISC и сыграл ключевую роль в развитии концепций, которые легли в основу RISC-V. Капля оффтопа: он также участвовал в создании технологии RAID-массивов, без которой сложно представить современные серверы.
Крсте Асанович — учёный-инженер, доктор компьютерных наук в Беркли, соучредитель SiFive (это бесфабричная полупроводниковая компания, занимающаяся разработкой коммерческих процессоров RISC-V и IP-блоков для них). Был одним из ведущих архитекторов проекта RISC-V. Асанович и его студенты в лаборатории разработали первые спецификации RISC-V и начали активное продвижение идеи открытой архитектуры.
Отмечу ещё одного учёного-инженера — который был соруководителем проекта RISC-I, — Карло Секвина. В 1980-х годах сама идея уменьшить длину команд казалось довольно радикальной. Секвин вместе с другими инженерами Калифорнийского университета в Беркли создавал научную базу, которая и показала, что можно добиться значительного ускорения работы процессора за счёт упрощённой архитектуры набора команд.
При создании RISC-V инженеры стремились к чему-то фундаментально иному — открытой архитектуре, которую можно свободно использовать и модифицировать. Дэвид Паттерсон и Крсте Асанович выпустили технический отчёт «Наборы инструкций должны быть бесплатными: аргументы в пользу RISC-V» — название говорит само за себя.
У внимательного читателя, вероятно, появится вопрос: окей, RISC-V, а что там с первыми 4 версиями? 5 скорее указывает не на версию, а на историческую преемственность и улучшение предыдущих наработок архитектуры-прародительницы RISC и других схожих технологий.
-
Berkeley RISC (1980-1984 г.): первая версия архитектуры, разработанная в Беркли под руководством Дэвида Паттерсона и его команды. В итоге появился экспериментальный процессор RISC-I (44 420 транзисторов) с упрощённым набором команд (32 инструкции), который смог доказать эффективность концепции RISC по сравнению с традиционными архитектурами CISC. Через пару лет появился RISC-II (40 760 транзисторов) — это улучшенная версия процессора RISC-I с увеличенным набором команд (39) и примерно в 3 раза большей производительностью, чем у RISC-I.
Проект показал, что простая архитектура может быть функциональной и эффективной. Для достоверности отмечу, что ещё до появления названия RISC уже были устройства, которые можно отнести к этой концепции: CDC 6600, Data General Nova, семейство процессоров IBM 801. Но именно проект Berkeley RISC дал название архитектуре. Проект позже коммерциализировала Sun Microsystems — так появился SPARC; также RISC вдохновил на создание архитектуры ARM.
-
Stanford MIPS: работа над этой архитектурой в исследовательских целях велась параллельно в Стэнфорде с 1981 года по 1984 год под руководством Джона Хеннесси. Что-то вроде ответа на RISC и IBM 801. Эта работа стала фундаментов для компании MIPS Computer Systems и коммерческих процессоров семейства MIPS, которые широко использовались в индустрии (например, микропроцессор R2000): встраиваемые компьютеры, ПК, рабочие станции, серверы и суперкомпьютеры.
-
SPARC: Архитектура SPARC (Scalable Processor Architecture) была разработана компанией Sun Microsystems на основе концепций RISC в конце 1980-х годов. SPARC широко применялся в рабочих станциях и серверных системах.
RISC-V уже на этапе концепции задумывался как нечто, способное перевернуть рынок микроэлектроники вверх ногами. Подчеркну, может, но не обязательно сделает это: одной лишь хорошей технологии/идеи недостаточно для
доминированиявыживания на рынке, иначе бы Windows Phone бесславно не погибла. При этом RISC-V — не концепция, она доказала свою жизнеспособность в реальных продуктах. Но об этом позже.Открытость, модульность и кастомизация — три крепко связанных столпа RISC-V, которые недоступны корпоративным мастодонтам, вроде ARM Ltd., Intel и AMD.
Первое — открытость
Полная спецификация RISC-V доступна всем желающим. Эта архитектура не связана лицензиями, патентами и прочей капиталистически-позолоченной мишурой. Если Стив Возняк и загадывал у Санты что-то на Рождество, то именно такой подход в микроэлектронике. Любая компания — от стартапа до некогда циклопической IBM — может использовать RISC-V за 0 шекелей. И это хорошо. Но что ещё есть в рукавах у RISC-V?
Модульность и кастомизация
Базовый набор инструкций RISC-V — он же ISA, минимальный набор команд, который поддерживается всеми процессорами на основе RISC-V — можно дополнить стандартными или кастомным расширениями. Это позволяет создавать специализированные процессоры для конкретных задач, не нарушая совместимости с другими процессорами.
Ремарка! Архитектура RISC-V включает в себя небольшое обязательное для выполнения подмножество команд (набор инструкций I — Integer) и несколько стандартных опциональных расширений. |
Базовый набор поддерживает все стандартные операции: арифметические/бытовые регистровые вычисления, управление памятью (load/store), операции ввода-вывода и синхронизацию многозадачных процессов. Вендоры могут добавлять или убирать функциональные блоки/модули для обработки графики, работы с БД или ИИ, минимизируя ненужные инструкции и легаси хвост. Их можно создавать с нуля; можно брать открытые бесплатные решения; можно лицензировать чьи-то проприетарные решения. Это крайне эффективный и гибкий подход.
Для примера приведу Rocket Chip (здесь про него подробно) — это фреймворк для проектирования систем на кристалле (SoC) с открытым исходным кодом, разработанный командой в Беркли на базе RISC-V. По сути это настраиваемый и гибкий фундамент (платформа) для проектирования и создания высокопроизводительных процессоров. Включает в себя базовые ядра RISC-V, поддерживающие кэширование, многопоточность и даже расширенные инструкции для работы с нейросетями.
Где место под солнцем RISC-V
Вы наверняка слышали про концепцию ASIC (Application-Specific Integrated Circuit, интегральная микросхема для конкретного применения). В наше время ASIC-устройства обычно используют под одну задачу, например, майнинг криптовалют или обработку пакетов данных, минуя CPU.
Первые ASIC появились в далёкие 1970-е годы, компании разрабатывали интегральные схемы для конкретных задач — большие объёмы вычислений, где простота и скорость важнее универсальности; да, это сильно ограничивало функционал, но стоили они дешевле в пересчёте на производительность в конкретных вычислениях: математические операции, управление процессами, фильтрация сигналов и декодирование информации.
В общем, ASIC — технологии предтеч.
Расцвет ASIC пришелся на 1980-е — времена Майкла Джексона, Звёздных войн (тех самых, трушных); зачатков интернета в виде ARPANET, первых мобильных телефонов в чемоданчиках. ASIC прижился в телекоммуникациях, компьютерных системах и промышленной автоматизации.
В нелихие 1990-е (в Штатах то бишь) технологию оптимизировали и удешевили благодаря EDA-инструментам (автоматизация проектирования), а уже в нулевых начался самый сок. Вернее SoC (System-on-a-Chip, SoC) — система на одном кристалле. При проектировании в одном чипе научились размещать несколько функциональных блоков: вычислительные ядра (прикладной процессор общего назначения), память, интерфейсы I/O и прочие компоненты, что не только удешевляет производство, но и сокращает энергопотребление. По сей день SoC — это стандарт в индустрии. Все современные ASIC стали SoC, а все SoC по своей сути ASIC со вспомогательными блоками. ASIC — как отдельные устройства — продолжают использовать в ИИ, 5G, автономных системах, криптомайнинге и т.д.
Но причём тут RISС-V?
На рынке доминируют x86 и ARM. У первой монополия в настольных и серверных системах (доля ARM незначительна) и легаси хвост размером с Якутию; у второй монополия в мобильных и встроенных системах, а также строгое лицензирование и стандартизация для совместимости (ANE прикрутить можно, но значительная часть должна быть такой, какой её разработала компания ARM Ltd.).
RISС-V выигрывает по многим параметрам: нет гигантского легаси-хвоста; нет строгой стандартизации ядер, как в ARM (но это же и проблема для оптимизации); порог входа для потенциального вендора значительно ниже, чем в x86 (никого, кроме Intel и AMD, по существу и нет); лицензирование блоков от сторонних разработчиков по желанию; простота разработки новых микроконтроллеров или процессоров.
Особенно выигрышно RISС-V смотрится в узкоспециализированных решениях: ASIC, SoC с блоками для решения конкретных задач, микроконтроллерах / MCU (MCU в контексте SoC означает включение блока микроконтроллера в более крупный дизайн интегральной схемы), IoT (Internet of Things, интернет вещей).
Крупные игроки, вроде Alibaba и Google, уже включились в развитие архитектуры. Google, к слову, создаёт проприетарные ключи безопасности Titan для облачных сервисов и устройств, внутри которых криптопроцессор на RISC-V. Также у них есть Titan M2 для смартфонов Pixel на RISC-V — это отдельный чип (SoC-ASIC), который не использует ресурсы основного процессора. Что-то вроде модуля TPM (Trusted Platform Module) в материнских платах (штука, которая требуется для установки Windows 11, тоже про безопасность).
И особенно важно, что Google планирует сделать RISC-V архитектурой «tier-1» для Android. А это уже серьезная заявка.
RISC повсюду
RISC-V создаёт уникальные условия для развития: открытость, гибкость и адаптируемость на аппаратном уровне, независимость от политики, санкций и т.п. С санкциями уточню: так как RISC-V открыта, международное комьюнити крайне важно; прямые санкции невозможны, но можно объявить страну (или любой НИИ) нерукопожатной — и никто из светлых демократий не рискнёт начать совместные проекты или продавать лицензии на свои IP. Штаты вставляют палки в колёса Китаю и будут вставлять всем остальным, кому пожелают. В России уже создали свою ассоциацию «Альянс RISC-V».
Конгломераты и корпорации, которые могут позволить себе исследования и разработку, а также заказать производство более-менее крупной партии чипов на TSMC или же на фабрике с устаревшим техпроцессом (далеко не везде нужны 3-нанометровые чипы), разрабатывают собственные кастомные решения на базе RISC-V — так и контроля больше (никаких тебе аппаратных закладок в безопасности) и свобода от лицензирования. Хотя на практике разработка сложного SoC на RISC-V с нуля не имеет смысла для большинства компаний — есть готовые открытые или платные IP (Intellectual Property) «кубики», этакие модули, которые можно взять бесплатно или лицензировать и использовать для своей системы на кристалле: блоки обработки данных, интерфейсы, контроллеры памяти и другие компоненты, которые разработчики интегрируют в свои SoC, вместо того чтобы разрабатывать их с нуля.
Примеры продуктов на RISC-V
Qualcomm и их микроконтроллеры; Alibaba и их процессоры XuanTi; SiFive и их 64-битные многоядерные чипы (даже Linux-дистрибутивы работают); DeepComputing продает ноутбук DC-ROMA Laptop II, планшет DC-ROMA Pad II для нативной разработки и другие продукты. Semidynamics представила первый в мире полностью когерентный тензорный блок RISC-V.
К тому же не стоит забывать про независимых разработчиков и исследовательские институты, которые активно используют RISC-V в образовании и исследованиях. RISC-V позволяет инженерам и программистам разрабатывать чипы без бюрократических ограничений. А значит будет приток новых идей и необычных решений, которые трудно реализовать в закрытых системах.
Разумеется, RISC-V рассматривается как технология для космических программ и военных систем: европейское космическое агентство (ESA) изучает — а может уже и использует — эту архитектуру для создания процессоров в космических устройствах. Открытость RISC-V позволяет избежать тотальной зависимости от американских/английских технологий, что вроде как критично в условиях возможных санкций или геополитических ограничений (оставлю комментарии при себе, но видимо, даже у европейцев где-то есть план Б или план последней буквы английского алфавита). Россия, к слову, тоже инвестирует в потенциал RISС-V, хотя у нас и свой Эльбрус есть.
Китай активно развивает RISC-V в своих проектах, в том числе в области космической техники — тут вопросов нет. В США разрабатывают решения на базе RISC-V для военной электроники и автономных систем. Тоже ничего удивительного.
Если подытожить, то RISC-V развивается вширь и вглубь, тогда как x86 поплохело (надеюсь, Intel справится с проблемами, нам нужна конкуренция), а ARM сбавил обороты. На RISC-V уже есть реальные продукты, да, нишевые, но потенциала достаточно для ПК, игровых консолей, смартфонов, серверов и т.п.
Не выводы, но проблемы
Видится мне кипа заградительных стен для RISC-V. Если передовые разработки будут в области военной и космической промышленности (а так и бывает, как правило), то никто ими делиться не будет — даже спустя годы. Если условный Китай или Россия под санкциями будет создавать передовые RISC-V чипы, то зачем делиться лицензией на блоки с «недружественными» странами? Если корпорация, вроде Apple, разработает эквивалент своих M-чипов на RISC-V, то ни Google, ни Samsung, ни Microsoft, ни кто-либо другой никогда их не увидит (справедливости ради, нынешних A и M-чипов на ARM тоже нет ни у кого, только чипы-конкуренты от Qualcomm и MediaTek).
Фрагментация будет значительной (это одновременно вызов для совместимости, но и гибкость при создании специализированных решений, вроде ASIC) + сложности с кибербезом, но это необязательно плохо, в массовые продукты всё равно пойдут проприетарные блоки-доработки от корпораций, которые как были, так и будут их IP; туда же пойдут только чипы, совместимые с распространёнными пользовательскими и серверными ОС. Зато у корпораций не будет полной монополии на всё; появятся стартапы и небольшие компании, которые без собственных продуктов и производств будут создавать отличные модули для RISC-V процессоров.
А как итог — максимальная свобода. Хочешь, создавай своё с 0; хочешь, бери что-то из открытых вариантов; не устраивает — делай гибрид или лицензируй блоки у сторонних компаний. Порог входа станет проще, влияние политики меньше, новых идей будет больше. Если сейчас сложно представить появление третьей стороны в мире x86, то в RISC-V такое будет возможно даже при одном всемирном гегемоне.
RISC-V — это не просто технологическая альтернатива диктату x86 и ARM Ltd. Это новая философия проектирования процессоров: открытость, адаптивность и снижение затрат на разработку. Этакий конструктор для каждого, Open Source в мире микроэлектроники, если угодно.
Осталось дело за малым — целостная экосистема, полноценная поддержка современных ОС и совместимость с существующим популярным ПО. Эффективные эмуляторы, по типу Rosetta, подойдут на начальном (хочется верить, переходном) этапе, но нативная поддержка будет эффективнее.
И у RISC-V есть всё, чтобы конкурировать с x86 и ARM даже в массовом сегменте.
ссылка на оригинал статьи https://habr.com/ru/articles/849382/
Добавить комментарий