exponenta event banner

Косимуляция ЛПВП

Косимуляция HDL с помощью MATLAB или Simulink

Программное обеспечение HDL Verifier™ состоит из функций MATLAB ®, системного object™ MATLAB и библиотеки блоков Simulink ®, все из которых устанавливают каналы связи между имитатором HDL и MATLAB или Simulink.

Программное обеспечение HDL Verifier оптимизирует разработку FPGA и ASIC путем интеграции инструментов, доступных для следующих процессов:

  1. Разработка спецификаций для эталонных моделей конструкции оборудования

  2. Реализация конструкции оборудования в ЛПВП на основе эталонной модели

  3. Проверка конструкции по образцу конструкции

На следующем рисунке показано, как имитатор HDL и продукты MathWorks ® вписываются в этот сценарий проектирования оборудования.

Как показано на рисунке, программное обеспечение HDL Verifier соединяет инструменты, которые традиционно использовались дискретно для выполнения определенных шагов в процессе проектирования. Подключение этих инструментов упрощает проверку, позволяя непосредственно имитировать реализацию и исходную спецификацию. Эта косимуляция приводит к значительной экономии времени и устранению ошибок, присущих ручному сравнению и контролю.

В дополнение к предыдущему сценарию разработки программное обеспечение HDL Verifier позволяет работать с инструментами следующими способами:

  • Используйте MATLAB или Simulink для создания тестовых сигналов и программных тестовых стендов для кода HDL

  • Использование MATLAB или Simulink для создания поведенческой модели для моделирования ЛПВП

  • Использование возможностей анализа и визуализации MATLAB для анализа реализации HDL в реальном времени

  • Использование Simulink для преобразования унаследованных описаний HDL в представления системного уровня

Примечание

Модуль можно косимулировать с помощью SystemVerilog, SystemC или с помощью MATLAB или Simulink с помощью программного обеспечения HDL Verifier. Запишите простые оболочки вокруг SystemC и убедитесь, что соединения косимуляции SystemVerilog связаны с портами или сигналами типов данных, поддерживаемых интерфейсом косимуляции канала.

Более подробную информацию о том, как работает косимуляция, можно найти в следующих разделах:

Связь с MATLAB и имитатором HDL

При связывании с MATLAB имитатор HDL функционирует как клиент, как показано на следующем рисунке.

В этом сценарии серверная функция MATLAB ожидает запросов на обслуживание, которые она получает от сеанса имитатора HDL. После получения запроса сервер устанавливает канал связи и вызывает определенную функцию MATLAB, которая вычисляет данные для, проверяет или визуализирует модуль HDL (закодированный в VHDL ® или Verilog ®), который находится в процессе моделирования в имитаторе HDL.

После запуска сервера можно запустить и настроить имитатор HDL или использовать с MATLAB с поставляемой функцией проверки HDL:

  • nclaunch (Резак ®)

  • vsim (ModelSim ®)

На следующем рисунке показано, как функция тестового стенда MATLAB охватывает имитатор HDL и взаимодействует с ним во время сеанса моделирования тестового стенда.

На следующем рисунке показано, как функция компонента MATLAB окружена имитатором HDL и взаимодействует с ним во время сеанса моделирования компонента.

При запуске определенного тестового стенда или сеанса компонента указываются параметры, определяющие следующую информацию:

  • Режим и, если применимо, данные TCP/IP для подключения к серверу MATLAB

  • Функция MATLAB, связанная с экземпляром HDL и выполняемая от его имени

  • Спецификации синхронизации и другие управляющие данные, определяющие время вызова функции MATLAB модуля

Связь с Simulink и имитатором HDL

При связи с Simulink имитатор HDL функционирует как сервер, как показано на следующем рисунке.

В этом случае имитатор ЛПВП отвечает на запросы моделирования, которые он получает от блоков косимуляции в модели Simulink. Сеанс косимуляции начинается с Simulink. После запуска сеанса можно использовать Simulink и имитатор HDL для контроля хода моделирования и результатов. Например, можно добавить сигналы в окно волны имитатора ЛПВП для мониторинга тактовых диаграмм моделирования.

В диалоговом окне Параметры блока (Block Parameters) для блока косимуляции HDL можно настроить следующие параметры:

  • Блокировать входные и выходные порты, соответствующие сигналам (включая внутренние сигналы) модуля ЛПВП. При необходимости можно указать время выборки и типы данных с фиксированной точкой для отдельных портов вывода блоков.

  • Тип параметров связи и обмена данными между инструментами моделирования.

  • Часы с передним или задним фронтом применяются к вашему модулю. Можно отдельно указать период каждого тактового сигнала.

  • Команды РУД для выполнения до и после моделирования.

Программное обеспечение HDL Verifier оснащает имитатор HDL набором настраиваемых функций. Для ModelSim при использовании функции vsimulink, вы выполняете имитатор ЛПВП с экземпляром модуля ЛПВП для косимуляции с помощью Simulink. После загрузки модуля можно запустить сеанс косимуляции из Simulink. Пользователи Incisive могут выполнять те же операции с функцией hdlsimulink.

Программное обеспечение HDL Verifier также включает в себя блок для генерации файлов дампа изменения значения (VCD). Файлы VCD, созданные с помощью этого блока, можно использовать для выполнения следующих задач:

  • Просмотр имитационных сигналов Simulink в среде моделирования HDL

  • Сравнение результатов нескольких прогонов моделирования с использованием одинаковых или различных сред моделирования

  • Использование в качестве входных данных для инструментов анализа после моделирования

Мастер косимуляции HDL

Средство проверки HDL содержит функцию мастера Cosimulation Wizard, использующую существующий код HDL для создания настраиваемой функции MATLAB (тестового стенда или компонента), объекта MATLAB System или блока Simulink HDL Cosimulation. Дополнительные сведения см. в разделе Подготовка к импорту кода HDL для косимуляции.

Связь для косимуляции ЛПВП

Режим связи, используемый для связи между имитатором HDL и MATLAB или Simulink, зависит от того, работает ли приложение в локальной, односистемной или сетевой конфигурации. Если эти продукты и продукты MathWorks могут работать локально в одной и той же системе, а приложению требуется только один канал связи, можно выбрать между общей памятью и подключением к сокету TCP/IP. Обмен данными с общей памятью обеспечивает оптимальную производительность и является режимом связи по умолчанию.

Режим сокета TCP/IP является более универсальным. Его можно использовать для конфигураций одной системы и сети. Этот вариант обеспечивает наибольшую масштабируемость. Дополнительные сведения о связи сокетов TCP/IP см. в разделе Порты сокетов TCP/IP.

Поддержка языка описания оборудования (HDL)

Все функции проверки HDL MATLAB и блок Cosimulation HDL обеспечивают одинаковый набор языковых прозрачных функций для моделей Verilog и VHDL.

Программное обеспечение HDL Verifier также поддерживает модели HDL на смешанном языке (модели с компонентами Verilog и VHDL), позволяя одновременно имитировать сигналы VHDL и Verilog. Программное обеспечение MATLAB и Simulink могут обращаться к компонентам на разных языках на любом уровне.

Потоки операций по косимуляции ЛПВП

Руководство пользователя по проверке HDL содержит инструкции по использованию программного обеспечения проверки с поддерживаемыми имитаторами HDL для следующих рабочих процессов:

  • Моделирование компонента ЛПВП в среде испытательного стенда MATLAB

  • Замена компонента HDL функцией компонента MATLAB

  • Моделирование компонента ЛПВП в среде испытательного стенда Simulink

  • Замена компонента HDL алгоритмом Simulink

  • Запись переходов состояния сигнала Simulink для постобработки

Характеристики продукта и поддержка платформы

Функция продуктаНеобходимые продуктыРекомендуемые продуктыПоддерживаемые платформы
Cosimulation (функция) имитатора MATLAB и HDLMATLABDesigner™ с фиксированной точкой, Toolbox™ обработки сигналовWindows ® 32- и 64-разрядная; 64-разрядная версия Linux ®
Косимуляция имитатора MATLAB и HDL (системный объект)MATLAB и конструктор фиксированных точекToolbox™ связи, Toolbox™ системы DSPWindows 32- и 64-разрядная; 64-разрядная версия Linux
Симулятор симулятора и имитатор ЛПВПSimulink, конструктор фиксированных точекПанель инструментов обработки сигналов, панель инструментов системы DSPWindows 32- и 64-разрядная; 64-разрядная версия Linux