Основные инструкции для моделирования алгоритма HDL в Simulink

Используйте эти инструкции, чтобы разработать ваш алгоритм HDL в Simulink®. Инструкции включают использующие поддержанные HDL блоки при моделировании проекта и как разделить проект при разработке алгоритма.

Каждая инструкция имеет уровень серьезности, который указывает на уровень требований соответствия. Чтобы узнать больше, смотрите Уровни серьезности Руководств по моделированию HDL.

Используйте поддержанные HDL блоки

ID инструкции

1.1.1

Серьезность

Строго рекомендуемый

Описание

Когда вы создадите свою модель Simulink, используйте блоки от библиотеки Simulink Library Browser> HDL Coder. Несколько блоков в этой библиотеке предварительно сконфигурированы для генерации HDL-кода. Блоки в этой библиотеке доступны с Simulink. Если у вас нет HDL Coder™, вы можете моделировать блоки в своей модели, но не можете сгенерировать HDL-код.

Можно найти дополнительные блоки в этих библиотеках блока Simulink:

  • DSP System Toolbox HDL Support

  • Communications Toolbox HDL Support

  • Vision HDL Toolbox

  • LTE HDL Toolbox

Чтобы отобразить только поддержанные HDL блоки в Браузере Библиотеки, в Командном окне MATLAB®, вводят hdllib.

hdllib

Чтобы восстановить браузер библиотеки к представлению по умолчанию, введите эту команду:

hdllib('off')

Примечание

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

Модель раздела в DUT и испытательный стенд

ID инструкции

1.1.2

Серьезность

Рекомендуемый

Описание

Когда вы создаете свою модель Simulink для генерации HDL-кода, Подсистема, для которой вы хотите сгенерировать HDL-код, является Проектом под тестом (DUT). Эта Подсистема содержит блоки Simulink, которые могут быть реализованы на вашем целевом FPGA или устройстве ASIC. Можно далее разделить логику в DUT в меньшие подсистемы на основе функциональности, частот дискретизации в проекте, и так далее. Когда вы генерируете HDL-код, DUT становится модулем верхнего уровня или сущностью, и Подсистемы в DUT становятся подмодулями или меньшими сущностями.

Блоки вне Подсистемы DUT становятся частью испытательного стенда. Испытательный стенд может состоять из блоков, которые не поддержаны для генерации HDL-кода. Моделируйте испытательный стенд к:

  • Проверьте функциональность DUT в вашем Simulinkmodel.

  • Проверьте функциональную эквивалентность сгенерированной модели с вашей исходной моделью.

Например, если вы открываете шаблон Blank_DUT модели Simulink, эта модель открывается в Редакторе Simulink.

В этой модели Подсистема HDL_DUT является DUT и блокирует вне этой формы Подсистемы испытательный стенд. Можно разработать алгоритм HDL в Подсистеме HDL_DUT. Эта модель шаблона предварительно сконфигурирована для генерации HDL-кода.

Примечание

Можно также сгенерировать HDL-код для целой модели вместо Подсистемы DUT. Замените входные сигналы и блоки Константа с блоками Inport. Замените блоки output signals и Scope на блоки Выходного порта.

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

ID инструкции

1.1.3

Серьезность

Строго рекомендуемый

Описание

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

  • Двухбайтовые символы в именах модели и именах блока.

  • Зарезервированные слова вашей Операционной системы в именах модели и именах блока, таких как CR, con, prn, aux, ptr, null, ipt1, ipt2, ipt3, и ipt4, com1, com2, com3 и com4.

  • Двухбайтовые символы в комментариях, потому что комментарии распространены к сгенерированному коду. Используйте английские комментарии вместо этого.

Особенности модели документа и атрибуты

ID инструкции

1.1.4

Серьезность

Рекомендуемый

Описание

Чтобы сделать сгенерированный HDL-код легче справиться, вы можете информация о ссылке на документ как часть ваших образцовых настроек этими способами:

  • Пользовательские заголовки файлов и комментарии нижнего колонтитула в HDL-коде для проекта и испытательного стенда

    Во вкладке HDL Code Generation> Global Settings> Coding Style диалогового окна Configuration Parameters, при помощи Custom File Header Comment и параметров Custom File Footer Comment, можно ввести собственные комментарии, чтобы появиться как заголовки или нижние колонтитулы во всех сгенерированных файлах HDL. Чтобы узнать больше, смотрите Индивидуальную настройку Комментария Файла.

  • Модель и аннотации блока, текстовые комментарии и комментарии требования

    Можно добавить аннотации в форме образцовых аннотаций, текстовых комментариев или комментариев требования к сгенерированному коду. Например, можно ввести текст непосредственно на блок-схеме как аннотации Simulink или вставить текстовые комментарии путем размещения DocBlock в модель. Чтобы связать аннотации в блок-схеме к блокам в вашей модели, используйте строки, чтобы соединить аннотации с теми блоками. Эти аннотации появляются как комментарии около блоков в сгенерированном коде. Чтобы узнать больше, смотрите, Генерируют Код с Аннотациями или Комментариями.

  • Блокируйте функции и атрибуты, как пользовательский заголовок комментирует для каждого файла

    В разделе Description Block Properties для подсистем, которые вы используете в своем проекте. Эта информация появляется как заголовки комментария в HDL-коде. Например, эта фигура иллюстрирует комментарии блока, добавленные для Подсистемы Vector FFT в вашем проекте.

    Комментарии блока появляются как заголовки в сгенерированном HDL-коде.

    -- Simulink subsystem description for vector_fft_implementation_example/Vector_FFT: 
    -- 
    -- Created by: John  
    -- Function: Vector FFT 
    -- This model shows... 
    -- Revision 1.0 
    -- Revision 1.1 added functionality to... 
    --  
    -- 
    ------------------------------------------------------------- 
    LIBRARY IEEE; 
    USE IEEE.std_logic_1164.ALL; 
    USE IEEE.numeric_std.ALL; 
     
    ENTITY Vector_FFT IS 
     

Смотрите также

Функции

Руководства по моделированию

Похожие темы