Этот репозиторий проводит генератор модульных тестов для расширения вектора RISC-V.
make help
В целом, нет статистики или гарантий охвата.
Симулятор Spike известен как симулятор золотого стандарта RISC-V, и хотя мы не знаем, как Spike тестируется, он полностью поддерживает расширение V. Таким образом, мы добавили специальную специальную инструкцию в Spike, и для любого теста позвольте ему автоматически генерировать эталонный результат для этого теста. Таким образом, мы почти автоматически генерируем тесты для всех инструкций. В этой структуре все, что нам нужно сделать, это написать простой файл конфигурации для каждой инструкции.
riscv64-unknown-elf-gcc
с поддержкой RVV 1.0riscv-pk
если вам нужно сгенерировать бинарные файлы пользовательского режимаДля начала вы можете напрямую загружать предварительно сгенерированные тесты из Actifacts Github.
make all -j$(nproc)
Если у вас есть проблемы с компиляцией, пожалуйста, обратитесь к этапам сборки в Build и Test.yml.
После того, как make all
, вы найдете все сгенерированные тесты в out/v[vlen]x[xlen][mode]/bin/stage2/
.
Для получения более продвинутых вариантов, запустите make help
.
ПРИМЕЧАНИЕ. Single/Single.go генерирует тесты непосредственно с этапа 1, подходящих для целей с со-симуляторами (или просто используйте
TEST_MODE=cosim
если вы ленивы).
Этот репозиторий также обеспечивает деривацию NIX со следующим выводом:
${riscv-vector-test}/bin/*
: двоичные файлы генератора${riscv-vector-test}/include/*
: необходимые заголовки для использования времени выполнения${riscv-vector-test}/configs/*
: необходимые конфигурации времени выполнения Этот проект использует сторонние проекты, и лицензии этих проектов прилагаются к соответствующим каталогам.
Код для этого проекта распространяется в соответствии с лицензией Apache версии 2.0.
Торговое название «RISC-V» является зарегистрированным товарным знаком RISC-V International.