Функция MATLAB

Включайте код MATLAB в модели, которые генерируют встраиваемый код С (HDL Coder)

Описание

Блок MATLAB function доступен с Simulink®.

Для получения информации о поведении симуляции и параметрах блоков, смотрите функцию MATLAB в документации Simulink.

Свойства блока HDL

ConstMultiplierOptimization

Каноническая цифра со знаком (CSD) или учтенная оптимизация CSD. Значением по умолчанию является none. См. также ConstMultiplierOptimization.

ConstrainedOutputPipeline

Количество регистров, чтобы поместить при выходных параметрах путем перемещения существующих задержек в рамках проекта. Распределенная конвейеризация не перераспределяет эти регистры. Значение по умолчанию 0. См. также ConstrainedOutputPipeline.

DistributedPipelining

Конвейерно обработайте распределение регистра или повторную синхронизацию регистра. Значением по умолчанию является off. См. также DistributedPipelining.

InputPipeline

Количество входных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. Значение по умолчанию 0. См. также InputPipeline.

InstantiateFunctions

Сгенерируйте VHDL® entity или Verilog® module для каждой функции. Значением по умолчанию является off. См. также InstantiateFunctions.

LoopOptimization

Разверните, передайте потоком или не оптимизируйте циклы. Значением по умолчанию является none. См. также LoopOptimization.

MapPersistentVarsToRAM

Сопоставьте персистентные массивы с RAM. Значением по умолчанию является off. См. также MapPersistentVarsToRAM.

OutputPipeline

Количество выходных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. Значение по умолчанию 0. См. также OutputPipeline.

ResetType

Подавите генерацию логики сброса. Значением по умолчанию является default, который генерирует логику сброса. См. также ResetType.

SharingFactor

Количество функционально эквивалентных ресурсов, чтобы сопоставить с одним совместно используемым ресурсом. Значение по умолчанию 0. См. также Разделение ресурсов.

UseMatrixTypesInHDL

Сгенерируйте 2D матрицы в HDL-коде. Значением по умолчанию является off. См. также UseMatrixTypesInHDL.

VariablesToPipeline

Предупреждение

VariablesToPipeline не рекомендуется. Используйте coder.hdl.pipeline вместо этого.

Вставьте конвейерный регистр при выводе заданной переменной MATLAB® или переменных. Задайте список переменных как вектор символов с пробелами, разделяющими переменные.

Поддержка комплексных данных

Этот блок поддерживает генерацию кода для комплексных сигналов.

См. также Поддержку Сложного типа данных.

Поддержка настраиваемого параметра

HDL Coder™ поддерживает и настраиваемый и ненастраиваемые параметры со следующими типами данных:

  • Скаляр

  • Вектор

  • Комплекс

  • Структура

  • Перечисление

При использовании настраиваемых параметров с блоком MATLAB function:

  • Настраиваемым параметром должен быть Simulink. Объект параметра с набором StorageClass к ExportedGlobal.

    x = Simulink.Parameter 
    x.Value = 1 
    x.CoderInfo.StorageClass = 'ExportedGlobal' 

  • В диалоговом окне Ports и Data Manager установите флажок tunable.

Для получения дополнительной информации смотрите, Генерируют Порты DUT для Настраиваемых параметров.

Ограничения

  • Если блок содержит Систему object™, входные параметры блока не могут иметь недискретный (постоянный или Inf) шаг расчета.

  • HDL Coder не поддерживает функцию MATLAB, которая содержит ту же переменную как ввод и вывод функции. Например, этот код MATLAB не поддержан.

    function y = myFun(y)
    %#codegen
    
    y = 3 * y;

Для подмножества языка MATLAB, поддержанного для генерации HDL-кода от блока MATLAB function, см.:

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Генерация HDL-кода
Сгенерируйте Verilog и код VHDL для FPGA и проекты ASIC с помощью HDL Coder™.

Введенный в R2014a