Under construction!

URL данного справочника
emc.orgfree.com/RISC-V/hb


Навигатор

Инструкции базового набора RV32I:

handbook

арифметические

логические

сдвиги

сравнения

безусловные
переходы

системные

  • FENCE
  • ECALL
  • EBREAK

условные
переходы

загрузки

сохранения


Evgeny Eremin

См. также

  • набор RV64I
  • набор RV128I

RISC-V

Инструкции базового набора RV32I

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

Например, в состав RV32I не входят умножение и деление. Если предполагается частое использование этих операций в приложениях, то стоит добавить расширение M, содержащее соответствующий набор инструкций.

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

Для операций над вещественными числами разработаны расширения F, D и Q (32, 64 и 128 битов соответственно). Все они базируются на общепринятом стандарте IEEE 754-2008.

В базовом наборе RV32I всего 40 инструкций. Это заметно упрощает его аппаратную реализацию, а также делает возможным быстрое изучение. В то же время, минималистичность системы команд потребует применения некоторых специфических приемов при составлении программ. Например, из-за отсутствия инструкций копирования данных из одного регистра в другой приходится использовать "фиктивное" сложение с нулем, а по причине отсутствия логической операции NOT используется XOR с маской из всех единиц. С примерами можно познакомиться в описаниях сответствующих инструкций.

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

Примеры кодирования инструкций показаны при их описании.

Коды и работа всех инструкций набора RV32I были проверены с помощью online-симулятора Venus. Из того, что я опробовал, он показался мне наиболее простым для освоения. К сожалению, никаких других инструкций симулятор не поддерживает.


Автор справочника - Евгений Александрович Еремин (Пермский государственный гуманитарно-педагогический университет). e_eremin@yahoo.com


Free Web Hosting