Генерация HDL описания для ПЛИС

Записаться на обучение

Описание курса

Курс дает практические навыки генерации и верификации HDL-кода из моделей Simulink.

Рассматриваемые темы:
Подготовка моделей Simulink к генерации HDL-кода
Генерация HDL-кода и тестбенча для модели Simulink
Осуществление оптимизации по скорости и площади
Интеграция рукописного кода и существующих IP
Верификация сгенерированного HDL-кода с использованием тестбенчей и ко-симуляции

Предварительная подготовка

Курс "Цифровая обработка сигналов в Simulink" или подобный опыт работы в Simulink.

Связанные продукты

HDL Coder
HDL Verifier
Fixed Point Designer

Длительность

2 дня

Программа курса

Подготовка моделей Simulink для генерации HDL-кода
Цель: подготовить модель к генерации HDL-кода. Получить HDL код и тестбенч для простых моделей, не требующих оптимизации.
Подготовка моделей Simulink для генерации HDL-кода
Генерация HDL-кода
Генерация тестбенча
Верификация сгенерированного кода при помощи HDL-симулятора

Контроль точности в арифметике с фиксированной точкой
Цель: установить соответствие между генерируемым HDL-кодом и конкретными блоками в модели Simulink. Использовать инструмент Fixed-Point Tool для построения окончательной архитектуры модели в арифметике с фиксированной точкой.
Нормировка и наследование типов данных в fixed-point
Рабочий процесс Fixed-Point Designer
Fixed-Point Advisor
Fixed-Point Tool
Интерфейс командной строки

Генерация HDL-кода для многоскоростных моделей
Цель: сгенерировать HDL-код для многоскоростных систем
Подготовка многоскоростной модели для кодогенерации
Генерация HDL-кода с одним или несколькими источниками тактовой частоты
Понимание и применение техник для clock domain crossing (CDC)

Оптимизация сгенерированного HDL-кода
Цель: использовать конвейеризацию для удовлетворения требованиям по скорости проекта. Использовать конкретные аппаратные реализации и совместное использование ресурсов для оптимизации по площади.
Генерация HDL-кода с инструментом HDL Workflow Advisor
Удовлетворение требованиям по скорости посредством конвейеризации
Выбор подходящей аппаратной реализации для совместимых блоков Simulink
Совместное использование ресурсов ПЛИС/ASIC в подсистемах
Верификация того, что оптимизированный код верен до бита на каждом такте
Распределение блоков Simulink на выделенные аппаратные ресурсы в ПЛИС

Использование библиотеки Native Floating Point
Цель: реализовать операции и значения в плавающей точке в вашем HDL-коде.
Когда и зачем использовать floating-point
Генерация платформонезависимого кода с HDL Coder
Сравнение fixed-point с floating-point
Оптимизации проектов в плавающей точке

Совместное использование внешнего и сгенерированного HDL-кода
Цель: интегрировать рукописный HDL-код и/или готовые IP-ядра в ваш проект.
Интеграция внешнего HDL-кода

Верификация HDL-кода посредством ко-симуляции
Цель: верифицировать ваш HDL-код используя HDL-симулятор в модели Simulink.
Верификация кода, полученного с помощью HDL Coder
Сравнение рукописного HDL-кода с «эталонным»
Импорт HDL-кода в Simulink для симуляции