1 / 13

Современные методы функциональной верификации RTL-моделей блоков СБИС микропроцессора

Современные методы функциональной верификации RTL-моделей блоков СБИС микропроцессора. Научно-исследовательский институт системных исследований РАН. Докладчик: Борис Рогаткин. 1-1 1. История развития методологий функциональной верификации. 2-1 1.

zarifa
Download Presentation

Современные методы функциональной верификации RTL-моделей блоков СБИС микропроцессора

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Современные методы функциональной верификации RTL-моделей блоков СБИС микропроцессора Научно-исследовательский институт системных исследований РАН Докладчик: Борис Рогаткин

  2. 1-11 История развития методологий функциональной верификации

  3. 2-11 Российские разработки в области функциональной верификации Тестовая система UniTESK (Институт системного программирования РАН)* • Инструмент CTESK на основе языка C • VPI для интеграции с HDL окружением • Спецификации с потактовой точностью • Развитые методы генерации последовательностей тестовых воздействий Источник http://www.unitesk.ru, http://www.ispras.ru

  4. 3-11 Функциональная верификация в процессе разработки блока

  5. 4-11 Преимущества процесса верификации на основе плана тестирования • Синтез на ранних этапах разработки блока • Верификация с учетом реальных требований к таймингам • Учет влияния правок RTL в связи с найденными ошибками в процессе верификации • Фиксирование базового функционала блока в плане тестирования • Документирование блока

  6. 5-11 План тестирования Верификаторы Разработчики RTL Рекомендации к шаблону плана: • Режим устройства и опции конфигурации • Протокол обработки транзакций • Протокол или схема обработки исключений • Внутренние свойства блока • Арбитраж использования внешних ресурсов • Типичные и критические случаи использования блока • Описание точек функционального покрытия • Ссылки на документацию блока

  7. 6-11 Пример плана тестирования блока предсказания переходов Сценарии тестирования Проверки ассерций Функциональное покрытие Покрытие кода

  8. 7-11 Выбор тестового UVM окружения • Написание тестового окружения с «чистого листа» • Автоматическая генерация окружения с помощью средств САПР • Автоматическая генерация окружения с помощью рукописных скриптов (Perl, TCL) • Использование готового VIP окружения на платной основе (PCI, AXI, USB и другие)

  9. 8-11 Маршрут UVM тестирования в НИИСИ • САПР Cadence (Specman), языки SystemVerilog, e Language • Генерация начального тестового окружения из шаблона • UVM Scoreboard (библиотечный элемент) или специализированная модель сравнения • Запуск тестов в среде eManager (параллельный запуск тестовых сценариев) и SimVision • Интеграция vPlan (инструмент планирования)и eManager для оценки покрытия

  10. Этапы разработки UVM окружения 9-11 Разработчики RTL Верификаторы

  11. 8-11 Пример тестового UVM окружениеблока преобразования адресов TLB

  12. 10-11 Элементы тестового окружениеблока преобразования адресов TLB Монитор Модель сравнения • Сбор структур данных • Анализ покрытия кода • Генерация управляющих событий • Вывод информационных сообщений • Регистровый файл или модель памяти • Высокоуровневое описание блока Драйвер тестовых последовательностей • Управляющий библиотечный элемент для тестовых сценариев Драйвер входных воздействий Тестовые сценарии • Преобразование тестовых последовательностей в потактовые сигналы интерфейса блока • Операции отражающие базовый функционал блока TLB (запись, чтение, поиск)и их комбинации Верификатор событий • Анализ реакций блока на тестовые воздействия, сравнение с ожидаемыми

  13. 11-11 Опыт UVM тестирования в НИИСИ • Подход UVM наиболее эффективен для: • Интерфейсов шин (AXI, PCI, USB) • Для блоков, где требуется сложный алгоритм формирования тестовых пакетов (IB, TLB, CPU) • Трудозатраты на разработку окружения и плана окупаются гарантией работоспособности блока и временем для локализации ошибок в проекте. • Блоки с уникальным интерфейсом (ADD, MUL, DIV) рационально тестировать случайными векторами и анализом функционального покрытия (без разработки тестового окружения). • Разработана библиотека тестовых окружений для: • Интерфейс Процессор - Системный контроллер (внутр. шина) • TLB • AXI • JTAG

More Related