Initial commit

This commit is contained in:
Nikolay Puzanov 2023-06-11 16:15:24 +03:00
commit 82f90610fb

31
README.md Normal file
View File

@ -0,0 +1,31 @@
# Простой бенчмарк HDL симуляторов (преранняя версия)
Для оценки скорости запускается симуляция софт-процессора
[PicoRV32](https://github.com/YosysHQ/picorv32) с программой вычисления первых 50
знаков числа Пи.
В папке `source` находятся исходники RTL и программы. Верхний модуль - `testbench` с
единственным входным сигналом `clock`. Генерация клока во внешнем модуле сделана для
совместимости с верилятором, который не позволяет генерировать клок в верилоге.
В папках `test-*` находятся скрипты для запуска бенчимарка на конкретном
симуляторе. Скрипты называются `__build.sh` (для сборки проекта) и `__run.sh` (для
запуска симуляции).
Скрипт `run.sh` запускает бенчмарк на всех симуляторах и сохраняет время исполнения в
файл `results.txt`. Можно запустить бунчмарк на одном симуляторе, для чего в
параметрах скрипта `run.sh` нужно указать папку с бенчмарком.
## Результаты
- Xeon E5-2630v3 @ 2.40GHz
- Verilator 5.011 devel rev v5.010-98-g15f8ebc56
- Icarus Verilog 13.0 (devel) (s20221226-127-gdeeac2edf)
- ModelSim SE-64 2020.4 (Revision: 2020.10)
Время в миллисекундах:
```
test-iverilog: 210540
test-modelsim: 25555
test-verilator: 1289
```