RISC-V (RISC-V)

Перейти к навигации Перейти к поиску
RISC-V
Изображение логотипа
Разработчик Ассоциация RISC-V, инициатор разработки — Калифорнийский университет в Беркли
Разрядность

32 бита, 64 бита,

128 бит (запланировано)
Представлена 2010
Версии Unprivileged верс.20191213, privileged верс. 20190608
Архитектура RISC
Тип Регистр-регистр
Кодирование СК Фиксированный размер командного слова — 32 бита
Реализация переходов Cравнение и переход
Порядок байтов Little-endian
Размер страницы 4 KiB
Расширения M, A, F, D, Q, C, E, V, P, B
Открытая? Да
Регистры
Общего назначения

32, включая x0 всегда равный нулю,

(16 — только в расширении E и, условно, в C)
Вещественные 32 (расширения F, D, G)
SIMD

32 векторных регистра длиной от 32 до 2048 бит каждый (расширение V),

для ЦПУ рекомендуется 128 бит (Zvl128b)
Предикатные нет
Всего Регистры статусов, управления, счётчиков и таймеров
Логотип Викисклада Медиафайлы на Викискладе

RISC-V — расширяемая открытая и свободная система команд и процессорная архитектура на основе концепции RISC[1], предназначенная для создания процессоров/микроконтроллеров и разработки ПО. Спецификации архитектурных описаний RISC-V свободно доступны и бесплатны для любого использования, включая коммерческие реализации непосредственно в кремнии или для конфигурирования ПЛИС. Участие в проектировании и обсуждении спецификаций архитектурных описаний открытое. Система команд имеет зарезервированные в спецификации биты для кодирования расширений без ограничения области применения.

Идея RISC-V появилась в 2010 году как продолжение исследований по проектированию вычислительных систем в Калифорнийском университете Беркли в США, при непосредственном участии Дэвида Паттерсона[2][3] — одного из авторов и сторонников применения концепции RISC. Нынешние участники процесса развития RISC-V являются добровольцами из многих научных организаций, университетов и компаний разных стран. В отличие от других академических проектов, сосредоточенных на образовательных целях, RISC-V изначально проектируется для широкого круга компьютерных применений.

В 2015 году для развития, стандартизации и продвижения RISC-V создан международный фонд RISC-V[4] и ассоциация со штаб-квартирой в Цюрихе[5] в Швейцарии. С 2018 года фонд RISC-V работает в партнёрстве с The Linux Foundation[6]. В руководство и технические комитеты входят компании из разных стран, в том числе два российских разработчика процессорных ядер — Syntacore[7] и CloudBEAR, а также два разработчика системного программного обеспечения — Альт Линукс и Астра Линукс[8].

В феврале 2022 года компания Intel объявила[9] об инвестировании в развитие RISC-V одного миллиарда долларов и вошла в состав руководства RISC-V. В сентябре 2022 года в России образован Альянс RISC-V[10][11]. По состоянию на декабрь 2022 года 13 из 25 мест в совете директоров RISC-V занимают китайские компании и организации, ведущую роль из которых занимает Китайская академия наук.

Базовая спецификация «RV32I»

[править | править код]

Базовая спецификация RV32I (RV — RISC-V, 32-разрядная, I означает Integer — целочисленную арифметику), содержит набор из 32 регистров и включает 39 инструкций. Используется 6 типов кодирования инструкций (форматов).

Базовые расширения:

  • M — целочисленное умножение/деление
  • A — атомарные операции с памятью
  • F и D — вычисления с плавающей точкой с дополнительным набором регистров (одинарной Float и двойной Double точности)
  • C — сжатый формат команд (подмножество RV32I), для удвоения плотности упаковки в машинном слове наиболее востребованных стандартных инструкций

Базовый набор RV32Е для встраиваемых систем совпадает по кодированию и набору инструкции с RV32I, но содержит только 16 регистров. Применяется, например, в недорогих микроконтроллерах.

Система команд

[править | править код]

В архитектуре RISC-V имеется обязательное для реализации небольшое подмножество команд (набор инструкций I — Integer) и несколько стандартных опциональных расширений.

В базовый набор входят инструкции условной и безусловной передачи управления/ветвления, минимальный набор арифметических/битовых операций на регистрах, операций с памятью (load/store), а также небольшое число служебных инструкций.

Операции ветвления не используют каких-либо общих флагов как результатов ранее выполненных операций сравнения, а непосредственно сравнивают свои регистровые операнды. Базис операций сравнения минимален, а для поддержки комплементарных операций операнды просто меняются местами.

Базовое подмножество команд использует следующий набор регистров: специальный регистр x0 (zero), 31 целочисленный регистр общего назначения (x1 — x31), регистр счётчика команд (PC, используется только косвенно), а также множество CSR (Control and Status Registers, может быть адресовано до 4096 CSR).

Для встраиваемых применений может использоваться вариант архитектуры RV32E (Embedded) с сокращённым набором регистров общего назначения (первые 16). Уменьшение количества регистров позволяет не только экономить аппаратные ресурсы, но и сократить затраты памяти и времени на сохранение/восстановление регистров при переключениях контекста.

При одинаковой кодировке инструкций в RISC-V предусмотрены реализации архитектур с 32-, 64- и 128-битными регистрами общего назначения и операциями (RV32I, RV64I и RV128I, соответственно).

Разрядность регистровых операций всегда соответствует размеру регистра, а одни и те же значения в регистрах могут трактоваться как целые числа как со знаком, так и без знака.

Нет операций над частями регистров, нет каких-либо выделенных «регистровых пар».

Операции не сохраняют где-либо биты переноса или переполнения, что приближено к модели операций в языке программирования Си. Также аппаратно не генерируются исключения по переполнению и даже по делению на 0. Все необходимые проверки операндов и результатов операций должны производиться программно.

Целочисленная арифметика расширенной точности (большей, чем разрядность регистра) должна явно использовать операции вычисления старших битов результата. Например, для получения старших битов произведения регистра на регистр имеются специальные инструкции.

Размер операнда может отличаться от размера регистра только в операциях с памятью. Транзакции к памяти осуществляются блоками, размер в байтах которых должен быть целой неотрицательной степенью 2, от одного байта до размера регистра включительно. Операнд в памяти должен иметь «естественное выравнивание» (адрес кратен размеру операнда).

Архитектура использует только модель little-endian — первый байт операнда в памяти соответствует младшим битам значений регистрового операнда.

Для пары инструкций сохранения/загрузки регистра операнд в памяти определяется размером регистра выбранной архитектуры, а не кодировкой инструкции (код инструкции один и тот же для RV32I, RV64I и RV128I, но размер операндов 4, 8 и 16 байт соответственно), что соответствует размеру указателя, типам языка программирования C size_t или разности указателей.

Для всех допустимых размеров операндов в памяти, меньших, чем размер регистра, имеются отдельные инструкции загрузки/сохранения младших битов регистра, в том числе для загрузки из памяти в регистр есть парные варианты инструкций, которые позволяют трактовать загружаемое значение как со знаком (старшим знаковым битом значения из памяти заполняются старшие биты регистра) или без знака (старшие биты регистра устанавливаются в 0).

Инструкции базового набора имеют длину 32 бита с выравниванием на границу 32-битного слова, но в общем формате предусмотрены инструкции различной длины (стандартно — от 16 до 192 бит с шагом в 16 бит) с выравниванием на границу 16-битного слова. Полная длина инструкции декодируется унифицированным способом из её первого 16-битного слова.

Для наиболее часто используемых инструкций стандартизовано применение их аналогов в более компактной 16-битной кодировке (C — Compressed extension).

Операции умножения, деления и вычисления остатка не входят в минимальный набор инструкций, а выделены в отдельное расширение (M — Multiply extension). Имеется ряд доводов в пользу разделения и данного набора на два отдельных (умножение и деление).

Стандартизован отдельный набор атомарных операций (A — Atomic extension).

Поскольку кодировка базового набора инструкций не зависит от разрядности архитектуры, то один и тот же код потенциально может запускаться на различных RISC-V архитектурах, определять разрядность и другие параметры текущей архитектуры, наличие расширений системы инструкций, а потом автоконфигурироваться для целевой среды выполнения.

Спецификацией RISC-V предусмотрено несколько областей в пространстве кодировок инструкций для пользовательских «X-расширений» архитектуры, которые поддерживаются на уровне ассемблера, как группы инструкций custom0 и custom1.

Список наборов команд

[править | править код]
Сокращение Наименование Версия Статус
Базовые наборы
RVWMO Базовая модель согласованности памяти 2.0 Ratified
RV32I Базовый набор с целочисленными операциями, 32-битный 2.1 Ratified
RV64I Базовый набор с целочисленными операциями, 64-битный 2.1 Ratified
RV32E Базовый набор с целочисленными операциями для встраиваемых систем, 32-битный, 16 регистров 1.9 Draft
RV128I Базовый набор с целочисленными операциями, 128-битный 1.7 Draft
Часть 1 Стандартные непривилегированные наборы команд
M Целочисленное умножение и деление (Integer Multiplication and Division) 2.0 Ratified
A Атомарные операции (Atomic Instructions) 2.1 Ratified
F Арифметические операции с плавающей запятой над числами одинарной точности (Single-Precision Floating-Point) 2.2 Ratified
D Арифметические операции с плавающей запятой над числами двойной точности (Double-Precision Floating-Point) 2.2 Ratified
Q Арифметические операции с плавающей запятой над числами четверной точности 2.2 Ratified
C Сокращённые имена для команд (Compressed Instructions) 2.2 Ratified
Counters Инструкции для счетчиков производительности и таймеров — наборы Zicntr и Zihpm 2.0 Draft
L Арифметические операции над десятичными числами с плавающей запятой (Decimal Floating-Point) 0.0 Open
B Битовые операции (Bit Manipulation) 0.36 Open
J Двоичная трансляция и поддержка динамической компиляции (Dynamically Translated Languages) 0.0 Open
T Транзакционная память (Transactional Memory) 0.0 Open
P Короткие SIMD-операции (Packed-SIMD Instructions) 0.1 Open
V Векторные расширения (Vector Operations) 1.0 Frozen
Zicsr Инструкции для работы с контрольными и статусными регистрами (Control and Status Register (CSR) Instructions) 2.0 Ratified
Zicond Условное выполнение инструкций 1.0 Ratified
Zifencei Инструкции синхронизации потоков команд и данных (Instruction-Fetch Fence) 2.0 Ratified
Zihintpause Pause Hint 2.0 Ratified
Zihintntl Non-Temporal Locality Hints 0.2 Draft
Zam Расширение для смещённых атомарных операций (Extension for Misaligned Atomics) 0.1 Draft
Zfh Extensions for Half-Precision Floating-Point 1.0 Ratified
Zfhmin Extensions for Half-Precision Floating-Point 1.0 Ratified
Zfinx Standard Extensions for Floating-Point in Integer Registers 1.0 Ratified
Zdinx Standard Extensions for Floating-Point in Integer Registers 1.0 Ratified
Zhinx Standard Extensions for Floating-Point in Integer Registers 1.0 Ratified
Zhinxmin Standard Extensions for Floating-Point in Integer Registers 1.0 Ratified
Ztso Расширение для модели согласованности памяти RVTSO (Extension for Total Store Ordering) 0.1 Frozen
G = IMAFD Zicsr Zifencei Обобщенное/сокращёное обозначение для набора расширений н/д н/д
Часть 2 Стандартные наборы команд для привилегированных режимов
Machine ISA Инструкции аппаратного уровня 1.12 Ratified
Supervisor ISA Инструкции уровня супервизора 1.12 Ratified
Svnapot Extension (Extension for NAPOT Translation Contiguity) 1.0 Ratified
Svpbmt Extension (Extension for Page-Based Memory Types) 1.0 Ratified
Svinval Extension (Extension for Fine-Grained Address-Translation Cache Invalidation) 1.0 Ratified
Hypervisor ISA Инструкции уровня гипервизора 1.0 Ratified

В 32-битных микроконтроллерах и для других встраиваемых применений используется набор RV32EC. В 64-битных процессорах может быть набор групп RV64GC, то же самое в полной записи — RV64IMAFDC.

Форматы машинных команд

[править | править код]

Формат 32-битной машинной команды (признаки — младшие биты всегда «11» и 2-4 биты ≠̸ «111»)

Тип 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Регистр/регистр funct7 rs2 rs1 funct3 rd код операции 1 1
С операндом ± imm[10:0] rs1 funct3 rd код операции 1 1
С длинным операндом ± imm[30:12] rd код операции 1 1
Сохранение ± imm[10:5] rs2 rs1 funct3 imm[4:0] код операции 1 1
Ветвление ± imm[10:5] rs2 rs1 funct3 imm[4:1] [11] код операции 1 1
Переход ± imm[10:1] [11] imm[19:12] rd код операции 1 1
  • rs1 — номер регистра, в котором находится первый операнд
  • rs2 — номер регистра, в котором находится второй операнд
  • rd — номер регистра, в который будет записан результат

RISC-V имеет 32 (или 16 для встраиваемых применений) целочисленных регистра. При реализации вещественных групп команд есть дополнительно 32 вещественных регистра.

Рассматривается вариант включения в стандарт дополнительного набора из 32 векторных регистров с вариативной длиной обрабатываемых значений, длина которых указывается в CSR vlenb[12].

Для операций над числами в бинарных форматах плавающей запятой используется набор дополнительных 32 регистров FPU (Floating Point Unit), которые совместно используются расширениями базового набора инструкций для трёх вариантов точности: одинарной — 32 бита (F extension), двойной — 64 бита (D — Double precision extension), а также четверной — 128 бит (Q — Quadruple precision extension).

Имена регистров в системе команд и соглашения о псевдонимах в EABI и psABI
Имя регистра

в RISC-V

Имя

в EABI

Имя

в psABI

Описание

в psABI

Кто сохраняет

в psABI

32 целочисленных регистра
x0 zero zero Всегда ноль
x1 ra ra Адрес возврата (return address) Вызывающий
x2 sp sp Указатель стека (stack pointer) Вызываемый
x3 gp gp Глобальный указатель (global pointer)
x4 tp tp Потоковый указатель (thread pointer)
x5 t0 t0 Temporary / альтернативный адрес возврата Вызывающий
x6 s3 t1 Temporary Вызывающий
x7 s4 t2 Temporary Вызывающий
x8 s0/fp s0/fp Saved register / frame pointer Вызываемый
x9 s1 s1 Saved register Вызываемый
x10 a0 a0 Аргумент (argument) / возвращаемое значение Вызывающий
x11 a1 a1 Аргумент (argument) / возвращаемое значение Вызывающий
x12 a2 a2 Аргумент (argument) Вызывающий
x13 a3 a3 Аргумент (argument) Вызывающий
x14 s2 a4 Аргумент (argument) Вызывающий
x15 t1 a5 Аргумент (argument) Вызывающий
x16 s5 a6 Аргумент (argument) Вызывающий
x17 s6 a7 Аргумент (argument) Вызывающий
x18-27 s7-16 s2-11 Saved register Вызываемый
x28-31 s17-31 t3-6 Temporary Вызывающий
32 дополнительных регистра с плавающей точкой
f0-7 ft0-7 Floating-point temporaries Вызывающий
f8-9 fs0-1 Floating-point saved registers Вызываемый
f10-11 fa0-1 Floating-point arguments/return values Вызывающий
f12-17 fa2-7 Floating-point arguments Вызывающий
f18-27 fs2-11 Floating-point saved registers Вызываемый
f28-31 ft8-11 Floating-point temporaries Вызывающий

Вызовы подпрограмм, переходы и ветвления

[править | править код]

Арифметические и логические наборы команд

[править | править код]

Атомарные операции с памятью

[править | править код]

Сокращённые команды

[править | править код]

Команды для встраиваемых применений

[править | править код]

Привилегированные наборы команд

[править | править код]

Битовые операции

[править | править код]

Компактный набор команд для SIMD

[править | править код]

Операции с векторами

[править | править код]

Команды для отладки

[править | править код]

Реализации

[править | править код]

В рамках проекта создано и опубликовано под свободной лицензией шесть дизайнов микропроцессоров с архитектурой RISC-V: генератор 64-разрядных Rocket (7 октября 2014[13][14]) и пять упрощённых учебных ядер «Sodor» с различными микроархитектурами.

Также опубликовано несколько симуляторов (включая qemu и ANGEL — JavaScript-симулятор, работающий в браузере), компиляторов (LLVM, GCC), вариант ядра Linux для работы на RISC-V и компилятор дизайнов Chisel, который позволяет получать Verilog-код. Также опубликованы верификационные тесты[15].

Некоммерческая организация lowRISC планирует создание системы на кристалле на базе 64-битного ядра Rocket RISC-V с последующим массовым производством чипов[16][17].

На конференции RISC-V Workshop 2017 стало известно, что компания Esperanto Technologies разрабатывает 64-битный высокопроизводительный процессор общего назначения на системе команд RISC-V с гетерогенной архитектурой с высокой степенью параллелизма (напоминающий по строению процессор Cell), который в максимальной конфигурации будет содержать 16 ядер «ET-Maxion» (представляют собой конвейеры с неупорядоченным выполнением команд и работающие с данными с плавающей запятой) и 4096 ядер «ET-Minion» (конвейеры с последовательным выполнением команд и блоком с векторными вычислениями в каждом ядре)[18].

Компания Western Digital заявила, что в партнёрстве с компанией Esperanto она повысит текущий статус процессорной архитектуры RISC-V с уровня микроконтроллеров до уровня высокопроизводительных решений и создаст вычислительную архитектуру нового поколения для обработки «больших данных»[19], а также экосистему быстрого доступа к данным — речь идёт о создании специализированных RISC-V-ядер для построения архитектуры «процессор в памяти» (processor-in-memory)[20].

Популярные и недорогие микроконтроллеры серии ESP32 выпускаются с архитектурой RISC-V, например, серии ESP32-C, ESP32-H и ESP32-P.

Ряд компаний предлагает готовые блоки IP-ядер на базе архитектуры RISC-V, среди них:

  • ECHX1 — компания Western Digital (США),
  • Rocket — Калифорнийский университет в Беркли и компания SiFive (США),
  • ORCA — компания Vectorblox (Канада),
  • PULPino — Высшая техническая школа Цюриха (Швейцария) и Болонский университет (Италия),
  • Hummingbird E200 — компания Nuclei System Technology (Китай),
  • AndeStar V5 — компания Andes Technology (Тайвань)[21]),
  • Shakti — Индийский технологический институт в Мадрасе (Индия),
  • BM-310, BI-350, BI-651, BI-671 — компания Клаудбеар (Россия),
  • Семейство SCR1-SCR7 компании Синтакор (Россия)[22].

Процессоры и микроконтроллеры

[править | править код]

Серийные процессоры и микроконтроллеры на базе архитектуры RISC-V в формате системы на кристалле.

Микропроцессоры, выпущенные до 2021 года:

Микроконтроллеры, выпущенные в 2017—2019 годах:

  • Western Digital: SweRV Core (32 бита, 2 ядра, 1,8 ГГц, 28 нм)[31][32]
  • SiFive: FE310 (32 бита, 1 ядро, 870 МГц — 28 нм, 370 МГц — 55 нм)[23][24]
  • Kendryte: K210 (64 бита, 2 ядра + нейроускоритель, 600 МГц, 28 нм, 500 мВт)[33][34][35]
  • GreenWaves: GAP8 (32 бита, 8+1 ядро + нейроускоритель, 250 МГц, 55 нм, 100 мВт)[36]
  • NXP: RV32M1 (32 бита, 2 гибридных ядра ARM-M4F/RISC-V + ARM-M0+/RISC-V, 48-72 МГц)[37]
  • WCH: CH572 (60 МГц, корпус QFN28)[38] контроллер BLE + Zigbee + USB + Ethernet + Touchkey
  • HUAMI: MHS001 Huangshan № 1 (4 ядра, нейроускоритель, 55 нм, 240 МГц)[39] энергоэффективный процессор для носимых устройств и IoT
  • GigaDevice: GD32VF103 (1 ядро, 32 бита, 108 МГц, ОЗУ до 32 кБ, ПЗУ до 128 кБ)[40][41] микроконтроллер (не путать с семейством GD32F103).
  • FADU: Annapurna FC3081/FC3082 (64 бита, многоядерный, 7 нм, 1,7 Вт)[42][43][44] контроллер для NVMe SSD
  • BitMain: Sophon Edge TPU BM1880 (64 бита, 1 ядро RV64GC 1 ГГц + 2 ядра ARM A53 1,5 ГГц, 2,5 Вт) нейроускоритель 1 TOPS на INT8 для IoT и краевых вычислений[45][46]
  • Текон: Дружба (32 бита, 1 ядро, 250 МГц, 28 нм, 0,5 Вт)[47][48]

Микроконтроллеры, выпущенные в 2020 году:

  • ONiO: ONiO.zero (16/32 бита, 1 кБ ПЗУ, 2 кБ ОЗУ, 8/16/32 кБ ППЗУ, 1-24 МГц, 0,36-1,44 Вт, встроенный радиоэлектро генератор на 800/900/1800/1900/2400 МГц) BLE, 802.15.4 UWB[49][50]
  • WCH: CH32V103 (32 бита, 10/20КБ ОЗУ, 32/64 КБ ППЗУ, до 80 МГц, корпуса LQFP48, QFN48 или LQFP64)[51] универсальный контроллер с USB 2.0, SPI, I2C, GPIO, USART, TouchKey, RTC, TIM, ADC
  • Миландр: К1986ВК025 (32-битное ядро BМ-310S CloudBEAR, ОЗУ 112 Кбайт, ППЗУ 256+8 Кбайт, ПЗУ 16 Кбайт, 60 МГц, 90 нм фабрика TSMC, 7 каналов 24-битных метрологических АЦП, сопроцессоров для шифров «Кузнечик», «Магма» и AES, корпус QFN88 10 х 10 мм)
  • Espressif: ESP32-C3 (32-битное ядро RV32IMC, 400 Кбайт SRAM, 384 Кбайт ПЗУ, 160 МГц, Wi-Fi, Bluetooth LE 5.0, по контактам совместим с ESP8266)[52]
  • Bouffalo Lab: BL602 и BL604 (32-битный, динамическая частота от 1 МГц до 192 МГц, 276 КБ SRAM, 128 КБ ПЗУ, Wi-Fi, Bluetooth LE)[53]
  • Cmsemicon: ANT32RV56xx (ядро RV32EC, 48 МГц, 32+8 Кбайт SRAM, 64 Кбайт)[54]

Микроконтроллеры, выпущенные в 2021 году:

  • Микрон (Россия): MIK32 (32-битное RV32IMC ядро SCR1 Syntacore, 1-32 МГц, фабрика Микрон, ОЗУ 16 КБ, ППЗУ 8 КБ, 64 входа/выхода, АЦП 12 бит 8 каналов до 1 МГц;, ЦАП 12 бит 4 канала до 1 МГц, криптография ГОСТ Р 34.12-2015 «Магма», «Кузнечик» и AES 128). Технологические нормы 180 нм.[55][56]
  • Переход ESP32 на чипы с RISC-V ядрами (ESP32-C и ESP32-H), в 2022 году компания Espressif Systems сообщила о переходе всех своих линеек чипов на архитектуру RISC-V[57]
  • xv6 — учебная операционная система, разработанная в Массачусетском технологическом институте, поддерживающая архитектуру RISC-V
  • ARM — семейство лицензируемых 32-битных и 64-битных микропроцессорных ядер разработки компании ARM Limited
  • OpenPOWER — коллаборация вокруг архитектуры IBM Power, основанная в 2013 году IBM, Google, Mellanox, NVIDIA
  • OpenSPARC — свободная (GPL) реализация архитектуры SPARC V9 от 2005 года
  • OpenRISC — свободная архитектура 2000 года с GPL-реализацией or1k
  • LEON — свободные реализации (GPL, LGPL) архитектуры SPARC V8, появившиеся в 1997 году
  • MIPS (MIPS Open) — наборы команд и архитектура, имеющие свободную лицензию на некоторые наборы команд с конца 2018 до конца 2019 года[58]

Примечания

[править | править код]
  1. Frequently-asked questions. RISC-V. Regents of the University of California. Дата обращения: 25 августа 2014. Архивировано из оригинала 19 февраля 2016 года.
  2. "Создатель RISC продвигает open source микросхемы". Xakep.ru. 2014-08-21. Архивировано 24 августа 2014. Дата обращения: 26 августа 2014.
  3. Contributors. riscv.org. Regents of the University of California. Дата обращения: 25 августа 2014. Архивировано из оригинала 20 августа 2014 года.
  4. History — RISC-V International. Дата обращения: 18 апреля 2020. Архивировано 15 апреля 2020 года.
  5. Архивированная копия. Дата обращения: 18 апреля 2020. Архивировано 4 мая 2020 года.
  6. The Linux Foundation and RISC-V Foundation Announce Joint Collaboration to Enable a New Era of Open Architecture - Linux Foundation (англ.). www.linuxfoundation.org. Дата обращения: 9 апреля 2023. Архивировано 9 апреля 2023 года.
  7. Kim McMahon. RISC-V Founding Member, Syntacore, Upgrades to Premier Level Membership (амер. англ.). RISC-V International (7 декабря 2021). Дата обращения: 10 февраля 2022. Архивировано 10 февраля 2022 года.
  8. Members – RISC-V International (амер. англ.). Дата обращения: 21 сентября 2023. Архивировано 26 апреля 2021 года.
  9. Karl Freund. Intel Creates $1B Innovation Fund To Grow RISC-V Market (And Attract New Foundry Customers) (англ.). Forbes. Дата обращения: 10 февраля 2022. Архивировано 9 февраля 2022 года.
  10. Альянс разработчиков на микроархитектуре RISC-V возглавила экс-топ-менеджер "Мегафона". Interfax.ru. Дата обращения: 15 октября 2022. Архивировано 15 октября 2022 года.
  11. riscv-alliance.ru. Дата обращения: 27 января 2023. Архивировано 27 января 2023 года.
  12. GitHub — riscv/riscv-v-spec: Working draft of the proposed RISC-V V vector extension. Дата обращения: 18 апреля 2020. Архивировано 31 октября 2019 года.
  13. Launching the Open-Source Rocket Chip Generator! | RISC-V BLOG. Архивировано 15 октября 2014 года.
  14. ucb-bar/rocket-chip · GitHub. Дата обращения: 11 октября 2014. Архивировано 3 апреля 2015 года.
  15. Downloads. RISC-V. Regents of the University of California. Дата обращения: 25 августа 2014. Архивировано из оригинала 23 января 2016 года.
  16. lowRISC: Open to the Core. lowRISC. Дата обращения: 25 августа 2014. Архивировано 19 августа 2014 года.
  17. Project aims to build a «fully open» SoC and dev board Архивная копия от 19 августа 2014 на Wayback Machine, Eric Brown // LinuxGizmos, 14 августа 2014
  18. Ветеран Transmeta возвращается на рынок процессоров с архитектурой RISC-V. 3DNews (29 ноября 2017). Дата обращения: 30 ноября 2017. Архивировано 1 декабря 2017 года.
  19. Western Digital включается в гонку за процессорными архитектурами. 3DNews (29 ноября 2017). Дата обращения: 30 ноября 2017. Архивировано 29 ноября 2017 года.
  20. Western Digital инвестировала в разработчика «процессора в памяти». 3DNews (20 сентября 2017). Дата обращения: 30 ноября 2017. Архивировано 1 декабря 2017 года.
  21. Andes Technology forms a Multinational Alliance with ASIC Design Service Companies to Provide RISC-V Total Solutions | XtremeEDA. Дата обращения: 23 августа 2018. Архивировано 23 августа 2018 года.
  22. "Отечественные микропроцессоры. Были! Есть. Будут?". 3dnews. 2018-08-09. Архивировано 17 ноября 2018. Дата обращения: 17 ноября 2018.
  23. 1 2 Архивированная копия. Дата обращения: 1 сентября 2018. Архивировано 1 сентября 2018 года.
  24. 1 2 SiFive: Первый в мире разработчик процессоров RISC-V на заказ. Дата обращения: 1 сентября 2018. Архивировано 1 сентября 2018 года.
  25. SiFive Introduces HiFive Unleashed RISC-V Linux Development Board (Crowdfunding). Дата обращения: 1 сентября 2018. Архивировано 28 августа 2018 года.
  26. HiFive1 | Crowd Supply. Дата обращения: 1 сентября 2018. Архивировано 1 сентября 2018 года.
  27. Alibaba представила свой первый процессор | Компьютерра. Дата обращения: 27 июля 2019. Архивировано 27 июля 2019 года.
  28. 阿里平头哥发布"最强"RISC-V处理器玄铁910-电子工程专辑. Дата обращения: 27 июля 2019. Архивировано 27 июля 2019 года.
  29. Архивированная копия. Дата обращения: 27 июля 2019. Архивировано 27 июля 2019 года.
  30. Архивированная копия. Дата обращения: 27 июля 2019. Архивировано 29 апреля 2020 года.
  31. Western Digital представила процессор SweRV Core для ускорителей по обработке данных / ServerNews Архивная копия от 5 декабря 2018 на Wayback Machine 05.12.2018
  32. https://blog.westerndigital.com/risc-v-swerv-core-open-source/ Архивная копия от 23 августа 2019 на Wayback Machine — https://github.com/westerndigitalcorporation/swerv_eh1 Архивная копия от 16 мая 2019 на Wayback Machine
  33. New Part Day: The RISC-V Chip With Built-In Neural Networks | Hackaday. Дата обращения: 16 октября 2018. Архивировано 17 октября 2018 года.
  34. 矿机巨头的转型之始?嘉楠耘智发布首款AI芯片Kendryte_区块链_金色财经. Дата обращения: 16 октября 2018. Архивировано 17 октября 2018 года.
  35. kendryte-doc-datasheet/003.md at master · kendryte/kendryte-doc-datasheet · GitHub. Дата обращения: 16 октября 2018. Архивировано 9 апреля 2019 года.
  36. GreenWaves GAP8 is a Low Power RISC-V IoT Processor Optimized for Artificial Intelligence Applications. Дата обращения: 23 августа 2018. Архивировано 28 августа 2018 года.
  37. CRU: Free RISC-V Boards, Security in the FOSSi Era, and More. Дата обращения: 26 января 2019. Архивировано 26 января 2019 года.
  38. WCH CH572 — это RISC-V MCU с возможностью подключения Bluetooth LE — CNXSoft- новости Android-приставок и встраиваемых систем. Дата обращения: 16 марта 2022. Архивировано 4 августа 2020 года.
  39. Huami’s Amazfit Debuts at MWC, Opening a New Chapter in Global Expansion | Markets Insider. Дата обращения: 25 мая 2019. Архивировано 25 мая 2019 года.
  40. GigaDevice выпускает микроконтроллер GD32V RISC-V и платы для разработки — CNXSoft- новости Android-приставок и встраиваемых систем. Дата обращения: 16 марта 2022. Архивировано 4 августа 2020 года.
  41. 首款基于 RISC-V 的 32 位通用单片机出现 — 硬件 — cnBeta.COM. Дата обращения: 24 августа 2019. Архивировано 24 августа 2019 года.
  42. Архивированная копия. Дата обращения: 19 марта 2019. Архивировано из оригинала 23 декабря 2018 года.
  43. FADU Introduces SSD Controller and Bravo Series Enterprise SSD Deliver Maximum IOPS/Watt
  44. FADU Launches Industry Leading SSD Solutions Powered by SiFive RISC-V Core IP. Дата обращения: 19 марта 2019. Архивировано 17 апреля 2019 года.
  45. Sophon Edge AI platform with RISC-V Processor — YouTube. Дата обращения: 20 октября 2019. Архивировано 31 августа 2019 года.
  46. Особенности платы для разработки 96Boards AI Sophon Edge с SoC Bitmain BM1880 ASIC — CNXSoft- новости Android-приставок и встраиваемых систем. Дата обращения: 16 марта 2022. Архивировано 4 августа 2020 года.
  47. Микросхема «Дружба» от компании «Текон». Дата обращения: 26 марта 2020. Архивировано 26 марта 2020 года.
  48. Микросхемы. Дата обращения: 26 марта 2020. Архивировано 26 марта 2020 года.
  49. ONiO.zero предлагает микроконтроллер RISC-V, который работает без батареи — CNXSoft- новости Android-приставок и встраиваемых систем. Дата обращения: 16 марта 2022. Архивировано 3 августа 2020 года.
  50. ONiO.zero Offers Up to 24MHz of RISC-V Microcontroller Performance on Nothing But Harvested Energy — Hackster.io. Дата обращения: 12 января 2020. Архивировано 12 января 2020 года.
  51. WCH CH32V103 универсальный RISC-V MCU предлагает альтернативу микроконтроллеру RISC-V GD32V — CNXSoft- новости Android-приставок и встраиваемых систем. Дата обращения: 16 марта 2022. Архивировано 16 июня 2020 года.
  52. Процессор ESP32-C3 WiFi и BLE RISC-V по контактам совместим с ESP8266 — CNXSoft- новости Android-приставок и встраиваемых систем. Дата обращения: 17 декабря 2020. Архивировано 29 ноября 2020 года.
  53. BL602/BL604 RISC-V WiFi и Bluetooth 5.0 LE SoC будут продаваться по цене ESP8266 — CNXSoft- новости Android-приставок и встраиваемых систем. Дата обращения: 17 декабря 2020. Архивировано 1 марта 2021 года.
  54. Cmsemicon ANT32RV56xx is a RISC-V microcontroller for wireless charging. Дата обращения: 17 декабря 2020. Архивировано 17 декабря 2020 года.
  55. Каталог продукции компании ПАО «Микрон». Дата обращения: 30 марта 2021. Архивировано 20 апреля 2021 года.
  56. RISC-V микроконтроллер MIK32. www.mcu.mikron.ru. Дата обращения: 2 июля 2021. Архивировано 2 июля 2021 года.
  57. Flaherty, Nick Espressif moves exclusively to RISC-V (амер. англ.). eeNews Europe (2 мая 2022). Дата обращения: 19 декабря 2023. Архивировано 19 декабря 2023 года.
  58. MIPS Goes Open Source | EE Times. Дата обращения: 27 января 2019. Архивировано 2 августа 2019 года.

Литература

[править | править код]