В этом примере показано, как построить стенд поведенческих тестов с помощью создания компонентов SystemVerilog DPI-C. Этот стенд используется для проверки синтезируемого HDL-кода передатчика и приемника 64-QAM.
Продукты, необходимые для этого примера:
MATLAB ®
Симулинк ®
Кодер Simulink ®
Один из поддерживаемых имитаторов HDL: Cadence ® Incisive ® или Mentor Graphics ® ModelSim ®/QuestaSim ®
Один из поддерживаемых компиляторов C: Microsoft ® Visual Studio™ для Windows или GNU GCC для Linux ®
Структура верхнего уровня модели приемника КАМ показана на следующем рисунке. Подсистемы QAM Tx HDL и QAM Rx HDL оптимизированы для генерации кода HDL. Используя кодер HDL, мы можем генерировать код HDL из этих двух подсистем. Этот пример поставляется с сгенерированным кодом HDL, поэтому создавать код для этого упражнения не требуется.

Чтобы построить полный поведенческий тест в HDL, нам понадобятся поведенческие модели для подсистемы Channel и для подсистемы ErrorRate. С помощью этих моделей мы можем генерировать компоненты SystemVerilog DPI-C для этих двух подсистем. Прежде чем создавать компоненты DPI-C, необходимо сначала задать параметры генерации кода.
Откройте панель «Параметры конфигурации модели Simulink» в svdpi_qam модели. Установите следующие параметры:
Выберите Создание кода - > Системный целевой файл. Нажмите кнопку «Обзор» и выберите «systemverilog_dpi_grt.tlc.»
При наличии встроенного кодера можно выбрать целевой файл systemverilog _ dpi _ ert.
В параметре «Схема инструментов» выберите одну из версий Visual Studio, если используется Windows, или одну из групп инструментов GCC, если используется Linux.
Затем экспортируйте компоненты DPI-C, выполнив следующие две команды в MATLAB:
> > slbuild («svdpi _ qam/Channel»)
> > slbuild («svdpi _ qam/ErrorRate»)
Для Mentor Graphics ModelSim/QuestaSim,
Запустите ModelSim/QuestaSim в режиме графического интерфейса пользователя.
Изменение текущего каталога на текущий каталог MATLAB
Введите следующую команду для запуска моделирования:
do QAM_DPIC_tb_mq.do
Для Cadence Incisive:
Запустите оболочку терминала.
Измените текущий каталог на текущий каталог MATLAB.
Введите следующую команду в оболочку.
sh QAM_DPIC_tb_incisive.sh
В конце моделирования частота ошибок печатается следующим образом:
* * * * * * * * * * * * * Резюме моделирования * * * * * * * * * * * * * * * * * * * * * * * *
Частота битовых ошибок: 0,001356
Количество ошибок: 4,000000
Количество принятых битов: 2950.000000
*******************************************************