Генерация кросс-платформенных компонентов DPI

Используйте генерацию компонентов DPI для экспорта Simulink® подсистема к компоненту языка C с цифровым интерфейсом программирования (DPI) для использования в Verilog® или симуляция SystemVerilog. Вы можете настроить генерацию DPI для ModelSim® или резьбовое® (Linux® только), или можно сгенерировать типовую DLL.

Когда вы генерируете компонент из Windows® 64 хост-машина, можно также создать библиотеки компонентов и запустить симуляцию на другой операционной системе. Если целевой объект и хост не совпадают, необходимо вручную портировать и создавать общие библиотеки или Симулятор HDL проекты. Вы не можете портировать компонент DPI, сгенерированный на машине Linux, в любую другую операционную систему.

Выбор целевого набора инструментальных средств

Когда ваша целевая машина использует ту же операционную систему, что и ваш хост, можно выбрать установленный компилятор или запросить автоматический поиск компилятора инструментами. Если вы хотите сгенерировать проект симулятора или если у вас нет установленных других компиляторов, выберите Симулятор HDL для той же операционной системы, что и хост. Однако, если ваша целевая операционная система отличается от хоста, необходимо выбрать целевой симулятор и операционную систему.

  1. Откройте модель, а на вкладке Apps нажмите HDL Verifier. Затем на вкладке HDL Verifier нажмите C Code Settings. На панели Configuration Parameters откроется диалоговое окно Code Generation. В разделе Toolchain settings выберите целевое Toolchain. Эта опция задает целевой симулятор и операционную систему, где вы запускаете симуляции. Поддерживаемые кросс-продуктовые цепочки инструментов:

    • Mentor Graphics ModelSim/QuestaSim (64-bit Windows) (доступно только на узле Windows)

    • Mentor Graphics ModelSim/QuestaSim (32-bit Windows) (доступно только на узле Windows)

    • Cadence Incisive (64-bit Linux)

    • Cadence Incisive (32-bit Linux)

    • Mentor Graphics ModelSim/QuestaSim (64-bit Linux)

    Чтобы создать общую библиотеку для другой операционной системы, необходимо выбрать один из опций симулятора. Затем можно создать библиотеку на целевом компьютере.

  2. Выберите Package code and artifacts. Эта опция генерирует .zip таким образом можно скопировать сгенерированные файлы и создать библиотеки компонентов на целевой машине. Вы можете задать имя для этого файла. Если вы не задаете имя, оно называется subsystem.zip.

Сгенерируйте компонент

На параметрах конфигурации, в разделе Target Selection, для System target file нажмите Browse. Выберите systemverilog_dpi_ert.tlc из списка.

Чтобы сгенерировать ваш компонент и дополнительный испытательный стенд, следуйте Generate SystemVerilog DPI Component от шага 3 и дальше.

Копирование на целевую машину

Чтобы использовать ваш сгенерированный компонент в другой операционной системе, необходимо скопировать сгенерированные файлы на новую машину и создать библиотеки там.

  1. Скопируйте сгенерированные subsystem.zip файл с главной машины на целевую машину. The .zip файл расположен в той же папке, что и ваша модель. make, ModelSim .do файл, или Incisive .sh файл включен в .zip файл.

  2. Разархивируйте файл в выбранную папку. Сглаживайте структуру папки при выравнивании файлов.

    • В Linux введите следующую команду:

      unzip -j zipfile.zip

    • В Windows при разархивировании файлов снимите флажок Use folder names.

Создание библиотек

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

Целевая операционная системаСимулятор HDLИнструкции по сборке
Windows 32 Типовая DLL
  • Начните Visual Studio Command Prompt.

  • В командном окне перейдите в папку, в которой вы разархивировали сгенерированные файлы.

  • Создайте библиотеку с помощью этой команды:

    nmake -f makefile_dpi_vc.mk

    Эта команда генерирует subsystem.dll файл. subsystem - имя компонента DPI, который вы сгенерировали.

ModelSim
  • Проверьте, что gcc_<reservedrangesplaceholder0 >_mingw32 библиотека установлена в папке установки ModelSim. Этот компилятор доступен при установке ModelSim. Установите компилятор перед сборкой компонента.

  • Запустите симулятор ModelSim HDL.

  • В командном окне перейдите в папку, в которой вы разархивировали сгенерированные файлы.

  • Создайте проект с помощью этой команды:

    do subsystem.do

    subsystem - имя компонента DPI, который вы сгенерировали.

Linux Типовой SO
  • В терминальном интерпретаторе перейдите в папку, где вы разархивировали сгенерированный код.

  • Создайте общую библиотеку с помощью этой команды:

    make -f makefile_dpi_gcc.mk

    Эта команда генерирует subsystem.so файл. subsystem - имя компонента DPI, который вы сгенерировали.

ModelSim
  • Запустите симулятор ModelSim HDL.

  • В командном окне перейдите в папку, в которой вы разархивировали сгенерированные файлы.

  • Создайте проект с помощью этой команды:

    do subsystem.do

    subsystem - имя компонента DPI, который вы сгенерировали.

Острый
  • В терминальном интерпретаторе с Incisive на пути создайте проект с помощью этой команды:

    sh subsystem.sh

    subsystem - имя компонента DPI, который вы сгенерировали.

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте