Files
simbench/README.md

39 lines
2.2 KiB
Markdown
Raw Normal View History

2023-06-11 16:15:24 +03:00
# Простой бенчмарк HDL симуляторов (преранняя версия)
Для оценки скорости запускается симуляция 1024 софт-процессоров
[PicoRV32](https://github.com/YosysHQ/picorv32) с программой вычисления хэш-суммы MD5
от блока 1кБ. Данные в каждом блоке инициализируются разными значениями. Размер блока
по-усолчанию равен 1кБ, но с помощью параметра `+dlen=NNN` можно установить
произвольный размер.
2023-06-11 16:15:24 +03:00
В папке `source` находятся исходники RTL и программы. Верхний модуль - `testbench` с
единственным входным сигналом `clock`. Генерация клока во внешнем модуле сделана для
совместимости с верилятором, который не позволяет генерировать клок в верилоге.
В папках `test-*` находятся скрипты для запуска бенчимарка на конкретном
симуляторе. Скрипты называются `__build.sh` (для сборки проекта) и `__run.sh` (для
запуска симуляции).
Скрипт `run.sh` запускает бенчмарк из выбранной папки или все тесты, если параметром
2023-06-15 17:47:42 +03:00
указать `all`. В параметрах можно указать сразу несколько папок с тестами. Результаты
бенчмарка записываются в файл `results.txt`.
2023-06-11 16:15:24 +03:00
## Результаты для 1024 процессоров
2023-06-11 16:15:24 +03:00
- 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)
- QuestaSim 64 2021.1 (Revision: 2021.1)
- Vivado 2021.1
2023-06-11 16:15:24 +03:00
Время выполнения бенчмарка на блоке 1кБ (мс):
2023-06-11 16:15:24 +03:00
```
Icarus Verilog: TBD
ModelSim: TBD
QuestaSim: TBD
Verilator: TBD
XSIM: TBD
Xcelium: TBD
2023-06-11 16:15:24 +03:00
```