Внедрение llvm-snippy в Ibex

00:00:00 Введение: llvm-snippy в verification flow ядра Ibex 00:00:58 Почему Ibex удобен для экспериментов с coverage closure 00:04:44 Базовая инфраструктура Ibex: riscv-dv, RTL simulation и ISSco-simulation 00:06:23 Как встроить llvm-snippy в существующий Ibex DV flow 00:08:15 Обвязка riscv-dv: передача управления в SnippyFunction и сохранениесостояния 00:10:37 Общая линковка: объединяем riscv-dv и llvm-snippy код в один ELF 00:13:07 Первые эксперименты с покрытием: базовый арифметический тест 00:21:45 RAW hazards: зачем оценивать вероятность покрытия заранее 00:25:15 Базовые сценарии покрытия: hazards, branches, calls, схемы доступы к памяти и self-modifyingcode 00:30:49 Результаты базовых сценариев и анализ полученного покрытия 00:37:36 Специфичные сценарии: фиксированные операнды, x0 и другие случаи 00:39:50 Переписываем загрузчик 00:42:18 Инструкции переходов, некоторые привилегированные сценарии и доработка обработчиков прерываний 00:45:56 Результаты вместе с специфичными сценариями: 100% functional coverage 00:49:47 Stress tests: улучшаем покрытие 00:54:32 Сравнение скорости генерации тестов: llvm-snippy vs riscv-dv 00:56:10 Добавление тестов с новыми расширениями 00:57:36 Общий результат совместного запуска llvm-snippy и riscv-dv 00:59:29 PR в Ibex и финальные выводы

0/0


0/0

0/0

0/0

0/0