Категория «Создание кода» > «Интерфейс» включает параметры для конфигурирования интерфейса сгенерированного кода. Для этих параметров требуется лицензия Simulink ® Coder™. Дополнительные параметры, доступные для целевого объекта на основе ERT, требуют лицензии Embedded Coder ®. Создание кода для моделей глубокого обучения с использованием библиотеки глубоких нейронных сетей NVIDIA ® CUDA ® (cuDNN) или TensorRT™ высокопроизводительных библиотек вывода для графических процессоров NVIDIA требует лицензии GPU Coder™.
В диалоговом окне «Параметры конфигурации» на панели «Создание кода» > «Интерфейс» находятся следующие параметры конфигурации.
| Параметр | Описание |
|---|---|
Библиотека замены кода (Simulink Coder) | Укажите библиотеку замены кода, используемую генератором кода при создании кода для модели. |
Библиотеки замены кода (Simulink Coder) | Укажите несколько библиотек замены кода, используемых генератором кода при создании кода для модели. |
Размещение общего кода (Simulink Coder) | Укажите расположение для создания служебных функций, определений экспортируемых типов данных и объявлений экспортируемых данных с пользовательским классом хранения. |
Поддержка: числа с плавающей запятой (встроенный кодер) | Укажите, нужно ли создавать данные и операции с плавающей запятой. |
Поддержка: неграничные числа (Simulink Coder) | Укажите, нужно ли создавать неграничные данные и операции с неграничными данными. |
Поддержка: комплексные номера (встроенный кодер) | Укажите, нужно ли создавать сложные данные и операции. |
Поддержка: абсолютное время (встроенный кодер) | Укажите, следует ли создавать и поддерживать целочисленные счетчики для абсолютных и истекших значений времени. |
Поддержка: непрерывное время (встроенный кодер) | Укажите, следует ли создавать код для блоков, использующих непрерывное время. |
Поддержка: сигналы переменного размера (встроенный кодер) | Укажите, следует ли создавать код для моделей, использующих сигналы переменного размера. |
Упаковка интерфейса кода (Simulink Coder) | Выберите упаковку для сгенерированного интерфейса кода C или C++. |
Диагностика ошибок многоэкземплярного кода (Simulink Coder) | Выберите уровень серьезности для диагностики, отображаемой при нарушении моделью требований к созданию кода нескольких экземпляров. |
Передача ввода-вывода корневого уровня как (встроенный кодер) | Управление передачей входных и выходных данных модели корневого уровня в повторно используемый |
Удаление поля состояния ошибки в структуре данных модели в реальном времени (встроенный кодер) | Укажите, следует ли регистрировать или отслеживать состояние ошибок. |
Включить типы моделей в класс модели (встроенный кодер) | Укажите, следует ли создавать определения типов моделей в классе моделей. |
Компоновка массива (Simulink Coder) | Укажите макет данных массива для генерации кода в виде столбца или строки |
Совместимость внешних функций для генерации большого кода строки (Simulink Coder) | Выберите действие диагностики, если Simulink обнаруживает функцию, не имеющую указанного макета массива |
Генерация C API для сигналов (Simulink Coder) | Создание кода интерфейса данных API C со структурой сигналов. |
Создание C API для параметров (Simulink Coder) | Создание кода интерфейса данных API C со структурами настройки параметров. |
Создание C API для состояний (Simulink Coder) | Создание кода интерфейса данных API C со структурой состояний. |
Создание C API для ввода-вывода на корневом уровне (Simulink Coder) | Создание кода интерфейса данных API C со структурой ввода-вывода корневого уровня. |
Интерфейс ASAP2 (Simulink Coder) | Создайте код для интерфейса данных ASAP2. |
Внешний режим (Simulink Coder) | Создание кода для интерфейса данных внешнего режима. |
Транспортный уровень (кодер Simulink) | Укажите транспортный протокол для связи. |
Аргументы MEX-файла (Simulink Coder) | Укажите аргументы для передачи во внешний интерфейс режима MEX-file для связи с исполняемыми целевыми объектами. |
Распределение статической памяти (Simulink Coder) | Управляющий буфер памяти для связи во внешнем режиме. |
Размер буфера статической памяти (Simulink Coder) | Укажите размер буфера памяти для связи во внешнем режиме. |
Целевая библиотека (Simulink Coder) | Укажите целевую библиотеку глубокого обучения, используемую при создании кода.
|
Версия библиотеки вычислений ARM (Simulink Coder) | Укажите версию вычислительной библиотеки ARM ®. |
Архитектура вычислительной библиотеки ARM (Simulink Coder) | Укажите архитектуру ARM, поддерживаемую целевым оборудованием. |
Автоматическая настройка (Simulink Coder) | Используйте автоматическую настройку для библиотеки cuDNN. Включение автоматической настройки позволяет библиотеке cuDNN находить самые быстрые алгоритмы свертки. Для этого параметра требуется лицензия GPU Coder. |
Эти параметры конфигурации находятся в разделе Дополнительные параметры.
| Параметр | Описание | |||
|---|---|---|---|---|
Стандартная математическая библиотека (Simulink Coder) | Укажите стандартную математическую библиотеку для среды выполнения. Убедитесь, что компилятор поддерживает нужную библиотеку; в противном случае могут возникать ошибки времени компиляции.
| |||
Поддержка встроенных S-функций (встроенный кодер) | Укажите, следует ли создавать код для неинкрементированных S-функций. | |||
Максимальная длина слова (Simulink Coder) | Укажите максимальную длину слова в битах, для которой процесс генерации кода создает определяемые системой определения многословных типов. | |||
Размер буфера строки динамического размера (байт) (Simulink Coder) | Число байтов буфера символов, сгенерированных для динамических строковых сигналов без максимальной длины. | |||
Определения многословных типов (встроенный кодер) | Укажите, следует ли использовать определения системных или пользовательских типов для многословных типов данных в сгенерированном коде. | |||
Классический интерфейс вызова (Simulink Coder) | Укажите, следует ли создавать вызовы функции модели, совместимые с основным программным модулем цели GRT в моделях, созданных до R2012a. | |||
Использовать динамическое выделение памяти для инициализации модели (встроенный кодер) | Управление тем, как созданный код распределяет память для данных модели. | |||
Функция одиночного вывода/обновления (Simulink Coder) | Укажите, нужно ли создавать | |||
Требуется завершить функцию (встроенный кодер) | Укажите, нужно ли создавать | |||
Объединение структур сигналов/состояний (встроенный кодер) | Укажите, следует ли объединять сигналы глобального блока и данные глобального состояния в одну структуру данных в сгенерированном коде | |||
| Создание отдельных внутренних данных для каждой функции начального уровня (встроенный кодер) | Формирование блочных сигналов модели (блочный ввод-вывод) и дискретных состояний (DWork), действующих с одинаковой скоростью в одной и той же структуре данных. | |||
Ведение журнала файлов MAT (Simulink Coder) | Укажите ведение журнала MAT-файла. | |||
Модификатор имени переменной файла MAT (встроенный кодер) | Выберите текст для добавления в имена переменных файла MAT. | |||
Существующий общий код (встроенный кодер) | Укажите папку, содержащую существующий общий код | |||
Удалить функцию отключения (встроенный кодер) | Удалить недоступные (мертвый код) экземпляры | |||
Удалить функцию сброса (встроенный кодер) | Удалить недоступные (мертвый код) экземпляры | |||
Порядок структуры объекта LUT для спецификации четного интервала (Simulink Coder) | Измените порядок полей в созданной структуре для объекта таблицы подстановки, для параметра спецификации которого установлен четный интервал. | |||
Порядок структуры объекта LUT для явной спецификации значений (Simulink Coder) | Измените порядок полей в созданной структуре для объекта таблицы подстановки, параметр спецификации которого имеет явное значение. | |||
Создать деструктор (встроенный кодер) | Укажите, нужно ли создавать деструктор для класса модели C++. | |||
Использовать динамическое выделение памяти для создания экземпляра блока модели (встроенный кодер) | Укажите, использует ли созданный код оператор | |||
Библиотека замены кода (Simulink Coder) | Создайте пользовательские библиотеки замены кода с помощью инструмента замены кода. | |||
Игнорировать пользовательские классы хранения (встроенный кодер) | Укажите, следует ли применять или игнорировать пользовательские классы хранения. | |||
Игнорировать сигналы контрольных точек (встроенный кодер) | Укажите распределение буферов памяти для контрольных точек. | |||
Реализация каждого блока хранилища данных в качестве уникальной точки доступа (встроенный кодер) | Создайте уникальные переменные для каждой операции чтения/записи блока памяти хранилища данных. |
Следующие параметры в разделе Дополнительные параметры используются редко и не имеют другой документации.
| Параметр | Описание |
|---|---|
GenerateSharedConstants | Определяет, генерирует ли генератор кода код с общими константами и общими функциями. По умолчанию: |
InferredTypesCompatibility | Для совместимости с устаревшим кодом, включая |
TargetLibSuffix
- '' | Управление суффиксом, используемым для именования зависимых библиотек целевого объекта (например, Примечание Этот параметр не применяется к построениям модели, в которых используется подход, основанный на цепочке инструментов, см. раздел Параметры управления библиотекой (кодер Simulink). |
TargetPreCompLibLocation - '' | Управление расположением предварительно скомпилированных библиотек. Если этот параметр не задан, генератор кода использует расположение, указанное в |
IsERTTarget | Указывает, является ли выбранный в данный момент целевой объект производным от целевого объекта ERT. |
CPPClassGenCompliant | Указывает, поддерживает ли конечный объект возможность создания и настройки интерфейсов класса C++ для кода модели. |
ConcurrentExecutionCompliant | Указывает, поддерживает ли конечный объект параллельное выполнение |
UseToolchainInfoCompliant | Укажите, что пользовательская цель совместима с цепочкой инструментов. |
ModelStepFunctionPrototypeControlCompliant | Указывает, поддерживает ли цель возможность управления прототипами функций инициализации и пошаговых функций, создаваемых для модели Simulink. |
ParMdlRefBuildCompliant | Указывает, настроена ли модель для параллельных построений при построении модели, включающей ссылочные модели. |
| Установить в По умолчанию: |
ModelReferenceCompliantсимвольный вектор - off, on | Установить в SelectCallback для цели, чтобы указать, поддерживает ли цель ссылку на модель. |
GenerateFullHeader | Создать полный заголовок, включая метку времени. Для целей ERT этот параметр находится на панели «Создание кода» > «Шаблоны». |
Следующие параметры предназначены только для использования MathWorks.
| Параметр | Описание |
|---|---|
ExtModeTesting | Только для MathWorks. |
ExtModeIntrfLevel | Только для MathWorks. |
ExtModeMexFile | Только для MathWorks. |