В этой подборке собраны статьи связанные с процессорной архитектурой RISC-V ISA. Будем запускать ядро микропроцессора RISC-V в отладочных FPGA платах Марсоход3 и Марсоход3бис на основе ПЛИС Altera / Intel MAX10. Используемо в этих статьях ядро RISC-V написано российской компанией Syntacore.

Приобрести эти платы можно в нашем интернет магазине.

Logos

Разработчики FPGA часто сталкиваются с необходимостью внедрения в свой проект софт процессора. Когда-то давно мы могли использовать проприетарные Altera NIOS или Xilinx MicroBlase. Но время идет. В последние годы наблюдается устойчивый тренд перехода производителей ПЛИС в сторону поддержки архитектуры RISC-V.

RISC-V это открытая, расширяемая и бесплатная архитектура набора команд (ISA), которая не требует лицензионных отчислений. Оба FPGA вендора Altera и Xilinx уже довольно давно предлагают и активно разрабатывают поддержку RISC-V в своих новых продуктах, теперь это уже софт процессоры NIOS V и MicroBlase V.

Однако, зачем использовать всё ещё проприетарные ядра, если можно использовать Open Source?

В этой статье я сравниваю два Open Source RISC-V микропроцессора:
1) picorv32 от компании YoSys (https://github.com/YosysHQ/picorv32) и
2) scr1 от Syntacore (https://github.com/syntacore/scr1)

Что буду сравнивать? Производительность софт ядер и занимаемые ресурсы в ПЛИС.
Как правильно сравнить? Использовать единую тестовую программу написанную на языке C, например Dhrystone, и скомпилированную в бинарный файл, или HEX/MIF (Altera Memory Initialization File) файл и запускаемую в двух архитектурно одинаковых SOC, но с разными ядрами RISC-V.