exponenta event banner

Основные рекомендации по моделированию алгоритма ЛПВП в Simulink

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

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

Использование поддерживаемых HDL блоков

Идентификатор руководства

1.1.1

Серьезность

Очень рекомендуем

Описание

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

Дополнительные поддерживаемые ЛПВП блоки можно найти в следующих библиотеках блоков Simulink:

  • Системная панель инструментов DSP, поддержка HDL

  • Поддержка ЛПВП для коммуникационного инструментария

  • Панель инструментов Vision HDL

  • Беспроводная панель инструментов HDL

Для отображения в браузере библиотеки только поддерживаемых HDL блоков:

  • на вкладке Приложения выберите Кодер HDL. Появится вкладка Код HDL (HDL Code). Выберите «Свойства блока HDL» > «Открыть библиотеку блоков HDL».

  • Либо в окне команд MATLAB ® введитеhdllib.

    hdllib

Для восстановления просмотра библиотеки по умолчанию введите следующую команду:

hdllib('off')

Примечание

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

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

Идентификатор руководства

1.1.2

Серьезность

Рекомендуется

Описание

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

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

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

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

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

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

Примечание

Вместо подсистемы DUT можно также создать код HDL для всей модели. Замените входные сигналы и блоки констант блоками Inport. Замените выходные сигналы и блоки Scope блоками Outport.

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

Идентификатор руководства

1.1.3

Серьезность

Очень рекомендуем

Описание

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

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

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

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

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

Идентификатор руководства

1.1.4

Серьезность

Рекомендуется

Описание

Чтобы упростить управление сгенерированным кодом HDL, можно документировать справочную информацию как часть настроек модели следующими способами:

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

    На вкладке «Создание кода HDL» > «Глобальные параметры» > «Стиль кодирования» диалогового окна «Параметры конфигурации» с помощью параметров «Комментарий верхнего колонтитула пользовательского файла» и «Комментарий нижнего колонтитула пользовательского файла» можно ввести собственные пользовательские комментарии, которые будут отображаться в виде колонтитулов во всех созданных файлах HDL. Дополнительные сведения см. в разделе Параметры настройки комментария к файлу.

  • Аннотации модели и блока, текстовые комментарии и комментарии требований

    К созданному коду можно добавить аннотации в виде аннотаций модели, текстовых комментариев или комментариев требований. Например, можно ввести текст непосредственно на блок-схеме в виде аннотаций Simulink или вставить текстовые комментарии, поместив DocBlock в модель. Чтобы связать аннотации на блок-схеме с блоками в модели, используйте линии для соединения аннотаций с этими блоками. Эти аннотации отображаются в виде комментариев рядом с блоками в созданном коде. Дополнительные сведения см. в разделе Создание кода с аннотациями или комментариями.

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

    В разделе «Описание» раздела «Свойства блока» для подсистем, используемых в проекте. Эта информация отображается в виде заголовков комментариев в коде 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 
     

См. также

Функции

Рекомендации по моделированию

Связанные темы