Berkeley Out-of-Order Machine (BOOM) является ядром RV64G RISC-V с открытыми исходными данными, написаное на языке конструирования аппаратных средств Chisel и оптимизированное в основном для ASIC. Тем не менее, оно также может использоваться на FPGA, а разработчики поддерживают поток FireSim flow для запуска BOOM на более чем 90 МГц на Xilinx Ultrascale+ FPGA, это можно встретить в Amazon EC2 F1 instances.
Ядро BOOM было создано исследовательской группой из Калифорнийского университета в Беркли, у них была цель создать высокопроизводительное, синтезируемое и с задаваемыми параметрами ядро для исследований архитектуры.
Ключевые особенности ядра BOOM:
- ISA – RISC-V (RV64G)
- Синтезируемое
- Поддержка FPGA
- Параметризуемое
- Плавающая запятая (IEEE 754-2008)
- Atomic Memory Op Support
- Кэши и виртуальная память
- Загрузка Linux
- Privileged Arch v1.11
- Внешняя отладка
На сколько известно, созданию BOOM способствовали процессоры MIPS R10k и Alpha 21264 с внеочередным исполнением, которые основаны на единой структуре физического регистрового файла (который также известен как “метод переименования регистров”). Исходный код для ядра можно найти на Github, а документацию тут, там также подробно описано, как начать работу.
Более подробную информацию также можно найти на веб-сайте boom-core.org.
Выражаем свою благодарность источнику с которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.