Когда вы создаете модель, чтобы предотвратить проблемы позже в процессе разработки, определить, поддерживают ли Simulink® Coder™ и генераторы кода Embedded Coder® продукты и блоки, которые вы хотите использовать.
Следующая таблица обобщает продукты MathWorks®, которые расширяют и дополнительное программное обеспечение Simulink Coder. Для получения информации об этих продуктах и как генерация кода поддерживает их, обратитесь к их документации по продукту в www.mathworks.com.
| Продукт | Расширяет возможности генерации кода... |
|---|---|
Aerospace Blockset™ | Самолет, космический корабль, ракета, двигательные установки и беспилотные бортовые автомобили |
Audio Toolbox™ | Системы обработки аудиоданных |
| Automated Driving Toolbox™ | Разработка, моделируя и тестируя ADAS и автономные ведущие системы |
| AUTOSAR Blockset | Моделирование и симуляция программного обеспечения AUTOSAR Classic и Adaptive ECU |
Communications Toolbox™ | Физический уровень систем связи |
Computer Vision Toolbox™ | Обработка видеоданных, обработка изображений и системы компьютерного зрения |
Control System Toolbox™ | Линейные системы управления |
DSP System Toolbox™ | Системы обработки сигналов |
| Embedded Coder | Встраиваемые системы, платы быстрого прототипирования и микропроцессоры в массовом производстве |
Fixed-Point Designer™ | Системы фиксированной точки |
Fuzzy Logic Toolbox™ | Разработки системы на основе нечеткой логики |
| HDL Verifier™ | Компонент интерфейса программирования на машинном языке (DPI) и генерация модели уровня транзакций (TLM) от Simulink |
| IEC Certification Kit | ISO 26262 и сертификация IEC 61508 |
Model-Based Calibration Toolbox™ | Разрабатывая процессы для того, чтобы систематически идентифицировать оптимальный баланс производительности двигателя, эмиссии и экономии топлива, и снова использовать статистические модели для системы управления, оборудования в цикле (HIL) тестирование или симуляция трансмиссии |
Model Predictive Control Toolbox™ | Контроллеры, которые оптимизируют производительность мультивхода и мультивыводят системы, которые подвергаются ограничениям ввода и вывода |
| Deep Learning Toolbox™ | Нейронные сети |
| Parallel Computing Toolbox™ | Параллельные сборки для больших моделей Simulink |
| Phased Array System Toolbox™ | Системы сенсорной матрицы в радаре, гидролокаторе, радиосвязях и медицинских приложениях обработки изображений |
| Polyspace® Bug Finder™ | Соответствие MISRA-C и статический анализ сгенерированного кода |
| Polyspace Code Prover™ | Формальный анализ сгенерированного кода |
| Powertrain Blockset™ | Тестирование в реальном времени приложений трансмиссии |
| Robotics System Toolbox™ | Генерация узла Операционной системы робота (ROS) |
Simscape™ | Системы, охватывающие механическое устройство, электрические, гидравлические, и другие физические области как физические сети |
Simscape Driveline™ | Автомобильная трансмиссия (ходовая часть) системы |
| Simscape Electrical™ | Электронные, электромеханические системы, и электроэнергии |
Simscape Fluids™ | Гидравлическая мощность и системы управления |
Simscape Multibody™ | 3D механические системы |
Simulink 3D Animation™ | Системы с 3D визуализацией |
| Simulink Check™ | Образцовая проверка соответствия стандартов и метрики |
| Simulink Code Inspector™ | Автоматизированные отзывы сгенерированного кода |
| Simulink Control Design™ | Автоматическая настройка ПИД-регуляторов |
| Simulink Coverage™ | Модель и анализ структурного покрытия кода |
Simulink Design Optimization™ | Системы, требующие максимальной полной производительности системы |
Simulink Desktop Real-Time™ | Быстрое прототипирование или оборудование в цикле (HIL) симуляция системы управления и алгоритмов обработки сигналов |
Simulink Real-Time™ | Быстрое прототипирование управления, оборудование в цикле (HIL) симуляция и другие приложения тестирования в реальном времени |
Simulink Report Generator™ | Автоматически генерирующая проектная документация в стандартном формате |
| Simulink Requirements™ | Авторская разработка и трассировка требований, чтобы разработать и закодировать |
| Simulink Test™ | Программное обеспечение в цикле (SIL), процессоре в цикле (PIL) и оборудовании в реальном времени в цикле (HIL) тестирование сгенерированного кода |
| SoC Blockset™ | Разработка, оценивая и реализовывая аппаратную и программную архитектуру SoC |
| Stateflow® | Машина состояний и блок-схемы |
System Identification Toolbox™ | Системы создаются из измеренных данных ввода - вывода |
| Vehicle Dynamics Blockset™ | Моделирование и симуляция динамики аппарата в 3D среде |
Vehicle Network Toolbox™ | CAN блокируется для Акселератора и Быстрых симуляций Акселератора и развертывания кода на Windows® |
Следующие таблицы обобщают поддержку генератора кода блоков Simulink. Существует таблица для каждой библиотеки блоков. Для большего количества детали, включая типы данных каждый блок поддержки, в Командном окне MATLAB®, showblockdatatypetable типа, или консультируются со страницами с описанием блока. Для некоторых блоков сгенерированный код может полагаться на memcpy или memset (string.h).
Дополнительная математика и дискретный: дополнительный дискретный
| Блок | Поддержите примечания |
|---|---|
| Пространство состояний фиксированной точки | Генератор кода явным образом не группирует примитивные блоки, которые составляют неатомарный блок подсистемы маскированный в сгенерированном коде. Эта гибкость допускает более эффективную генерацию кода. В определенных случаях можно достигнуть группировки путем конфигурирования блока подсистемы маскированного, чтобы выполниться как атомарный модуль путем выбора опции Treat as atomic unit. |
| Передайте прямую форму Fcn II | |
| Передайте прямую форму Fcn, в II раз отличаясь |
Дополнительная математика и дискретный: шаг/Декремент
| Блок | Поддержите примечания |
|---|---|
| Декрементный реальный мир | Генератор кода явным образом не группирует примитивные блоки, которые составляют неатомарный блок подсистемы маскированный в сгенерированном коде. Эта гибкость допускает более эффективную генерацию кода. В определенных случаях можно достигнуть группировки путем конфигурирования блока подсистемы маскированного, чтобы выполниться как атомарный модуль путем выбора опции Treat as atomic unit. |
| Декрементное сохраненное целое число | |
| Декрементное время, чтобы обнулить | Генерация кода поддержек. |
| Декремент, чтобы обнулить | Генератор кода явным образом не группирует примитивные блоки, которые составляют неатомарный блок подсистемы маскированный в сгенерированном коде. Эта гибкость допускает более эффективную генерацию кода. В определенных случаях можно достигнуть группировки путем конфигурирования блока подсистемы маскированного, чтобы выполниться как атомарный модуль путем выбора опции Treat as atomic unit. |
| Инкрементный реальный мир | |
| Инкрементное сохраненное целое число |
Непрерывный
| Блок | Поддержите примечания |
|---|---|
| Производная | Не рекомендуемый для кода производственного качества. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. В целом рассмотрите использование Модели Simulink Discretizer, чтобы сопоставить непрерывные блоки в дискретные эквиваленты та генерация производственного кода поддержки. Чтобы запустить Образцовый Discretizer, выберите Analysis> Control Design> Model Discretizer. Одним исключением является блок Second-Order Integrator, потому что для этого блока Образцовый Discretizer производит аппроксимированную дискретизацию. |
| Интегратор | |
| Интегратор, ограниченный интегратор | |
| ПИД-регулятор | |
| ПИД-регулятор (2DOF) | |
| Интегратор второго порядка, ограниченный интегратор второго порядка | |
| Пространство состояний | |
| Передайте Fcn | |
| Транспортная задержка | |
| Переменная задержка, переменная транспортная задержка | |
| Нулевой полюсный |
Разрывы
| Блок | Поддержите примечания |
|---|---|
| Обратная реакция | Генерация кода поддержек. |
| Кулоново и вязкое трение | Генератор кода явным образом не группирует примитивные блоки, которые составляют неатомарный блок подсистемы маскированный в сгенерированном коде. Эта гибкость допускает более эффективную генерацию кода. В определенных случаях можно достигнуть группировки путем конфигурирования блока подсистемы маскированного, чтобы выполниться как атомарный модуль путем выбора опции Treat as atomic unit. |
| Мертвая зона | Генерация кода поддержек. |
| Мертвая динамическая зона | Генератор кода явным образом не группирует примитивные блоки, которые составляют неатомарный блок подсистемы маскированный в сгенерированном коде. Эта гибкость допускает более эффективную генерацию кода. В определенных случаях можно достигнуть группировки путем конфигурирования блока подсистемы маскированного, чтобы выполниться как атомарный модуль путем выбора опции Treat as atomic unit. |
| Поразите пересечение | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Квантизатор | Генерация кода поддержек. |
| Ограничитель уровня | Не может использовать в инициированной иерархии подсистемы. |
| Динамический ограничитель уровня | Генератор кода явным образом не группирует примитивные блоки, которые составляют неатомарный блок подсистемы маскированный в сгенерированном коде. Эта гибкость допускает более эффективную генерацию кода. В определенных случаях можно достигнуть группировки путем конфигурирования блока подсистемы маскированного, чтобы выполниться как атомарный модуль путем выбора опции Treat as atomic unit. |
| Реле | Поддержите генерацию кода. |
| Насыщение | |
| Динамическое насыщение | Генератор кода явным образом не группирует примитивные блоки, которые составляют неатомарный блок подсистемы маскированный в сгенерированном коде. Эта гибкость допускает более эффективную генерацию кода. В определенных случаях можно достигнуть группировки путем конфигурирования блока подсистемы маскированного, чтобы выполниться как атомарный модуль путем выбора опции Treat as atomic unit. |
| Перенеситесь, чтобы обнулить |
Дискретный
| Блок | Поддержите примечания |
|---|---|
| Задержка | Генерация кода поддержек. |
| Различие |
|
| Дискретная производная |
|
| Дискретный фильтр | Поддержите генерацию кода. |
| Дискретный КИХ-фильтр | |
| Дискретный ПИД-регулятор |
|
| Дискретный ПИД-регулятор (2DOF) | |
| Дискретное пространство состояний | Поддержите генерацию кода. |
| Дискретная передача Fcn | |
| Дискретный нулевой полюсный | |
| Интегратор дискретного времени | Зависит от абсолютного времени, когда используется в инициированной иерархии подсистемы. |
| Enabled задержка | Генерация кода поддержек. |
| Хранение первого порядка | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Memory | Поддержите генерацию кода. |
| Восстановленная задержка | |
| Коснувшаяся задержка | |
| Передайте первый порядок Fcn | Генератор кода явным образом не группирует примитивные блоки, которые составляют неатомарный блок подсистемы маскированный в сгенерированном коде. Эта гибкость допускает более эффективную генерацию кода. В определенных случаях можно достигнуть группировки путем конфигурирования блока подсистемы маскированного, чтобы выполниться как атомарный модуль путем выбора опции Treat as atomic unit. |
| Передайте вывод Fcn или задержку | |
| Передайте действительный нуль Fcn | |
| Единичная задержка | Поддержите генерацию кода. |
| Переменная целочисленная задержка | |
| Нулевой порядок содержит |
Логика и битовые операции
Интерполяционные таблицы
| Блок | Поддержите примечания |
|---|---|
| Косинус | Генератор кода явным образом не группирует примитивные блоки, которые составляют неатомарный блок подсистемы маскированный в сгенерированном коде. Эта гибкость допускает более эффективную генерацию кода. В определенных случаях можно достигнуть группировки путем конфигурирования блока подсистемы маскированного, чтобы выполниться как атомарный модуль путем установки флажка Treat as atomic unit. |
| Прямая интерполяционная таблица (n-D) | Поддержите генерацию кода. |
| Интерполяция Используя предварительный поиск | |
| 1D интерполяционная таблица | |
| 2D интерполяционная таблица | |
| Интерполяционная таблица n-D | |
| Динамическая интерполяционная таблица | |
| Предварительный поиск | |
| Синус | Генератор кода явным образом не группирует примитивные блоки, которые составляют неатомарный блок подсистемы маскированный в сгенерированном коде. Эта гибкость допускает более эффективную генерацию кода. В определенных случаях можно достигнуть группировки путем конфигурирования блока подсистемы маскированного, чтобы выполниться как атомарный модуль путем выбора опции Treat as atomic unit. |
Математические операции
Model Verification
| Блок | Поддержите примечания |
|---|---|
| Утверждение | Генерация кода поддержек. |
| Проверяйте дискретный градиент | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Проверяйте динамический разрыв | Поддержите генерацию кода. |
| Проверяйте динамическую нижнюю границу | |
| Проверяйте динамический диапазон | |
| Проверяйте динамическую верхнюю границу | |
| Проверяйте разрешение сканирования | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Проверяйте статический разрыв | |
| Проверяйте статическую нижнюю границу | |
| Проверяйте статическую область значений | |
| Проверяйте статическую верхнюю границу |
Утилиты всей модели
| Блок | Поддержите примечания |
|---|---|
| Блокируйте таблицу поддержки | Проигнорированный во время генерации кода. |
| DocBlock | Использует символ шаблона, который вы задаете для параметров блоков Embedded Coder Flag, чтобы добавить комментарии в сгенерированный код. Требует лицензии Embedded Coder. Для получения дополнительной информации смотрите Использование Simulink DocBlock, чтобы Добавить Комментарий. |
| Образцовая информация | Проигнорированный во время генерации кода. |
| Синхронизированная линеаризация | |
| Основанная на триггере линеаризация |
Ports & Subsystems
Атрибуты сигнала
| Блок | Поддержите примечания |
|---|---|
| Соедините шиной к вектору | Поддержите генерацию кода. |
| Преобразование типа данных | |
| Наследованное преобразование типа данных | |
| Копия типа данных | |
| Распространение типа данных | |
| Полоса масштабирования типа данных | |
| Ic | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Зонд | Генерация кода поддержек. |
| Переход уровня |
|
| Преобразование сигнала | Поддержите генерацию кода. |
| Спецификация сигнала | |
| Модульное преобразование | |
| Взвешенный шаг расчета | |
| Width |
Маршрутизация сигнала
| Блок | Поддержите примечания |
|---|---|
| Соедините шиной присвоение | Поддержите генерацию кода. |
| Соедините шиной создателя | |
| Селектор шины | |
| Память хранилища данных | |
| Чтение хранилища данных | |
| Запись хранилища данных | |
| Демультиплексор | |
| Контроллер среды | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| От | Поддержите генерацию кода. |
| Goto | |
| Видимость тега Goto | |
| Индексный вектор | |
| Ручной переключатель | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Ручной различный приемник | Поддержите генерацию кода. |
| Ручной различный источник | |
| Слияние | Когда несколько сигналов, соединенных с блоком Merge, имеют non-Auto класс памяти, все сигналы non-Auto, соединенные с тем блоком, должны быть тождественно маркированы и иметь тот же класс памяти. Когда блоки Слияния соединяются непосредственно друг с другом, эти правила применяются ко всем сигналам, соединенным с блоками Слияния в группе. |
| Многопортовый переключатель | Поддержите генерацию кода. |
| Мультиплексор | |
| Селектор | |
| Читатель состояния | |
| Средство записи состояния | |
| Переключатель | |
| Различный приемник | |
| Различный источник | |
| Векторная конкатенация |
Приемники
| Блок | Поддержите примечания |
|---|---|
| Отображение | Проигнорированный для генерации кода. |
| Плавание средства просмотра осциллографа и осциллографа | |
| Выходной порт (Out1) | Генерация кода поддержек. |
| Осциллограф | Проигнорированный для генерации кода. |
| Остановите симуляцию |
|
| Терминатор | Генерация кода поддержек. |
| К файлу | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| К рабочей области | Проигнорированный для генерации кода. |
| График XY |
Источники
| Блок | Поддержите примечания |
|---|---|
| Ограниченный полосой Белый шум | Не может использовать в инициированной иерархии подсистемы. |
| Сигнал щебета | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Часы | |
| Постоянный | Генерация кода поддержек. |
| Счетчик, свободного доступа | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Counter Limited |
|
| Электронные часы | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Перечислимая константа | Генерация кода поддержек. |
| Из файла | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Из электронной таблицы | |
| Из рабочей области | Проигнорированный для генерации кода. |
| Земля | Поддержите генерацию кода. |
| Inport (In1) | |
| Импульсный генератор | Не может использовать в инициированной иерархии подсистемы. Не относится к абсолютному времени, когда сконфигурировано для основанной на выборке операции. Зависит от абсолютного времени когда в основанной на времени операции. |
| Пандус | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Случайное число | Генерация кода поддержек. |
| Повторение последовательности |
|
| Повторение интерполированной последовательности |
|
| Повторение ступеньки последовательности | Генератор кода явным образом не группирует примитивные блоки, которые составляют неатомарный блок подсистемы маскированный в сгенерированном коде. Эта гибкость допускает более эффективную генерацию кода. В определенных случаях можно достигнуть группировки путем конфигурирования блока подсистемы маскированного, чтобы выполниться как атомарный модуль путем выбора опции Treat as atomic unit. |
| Signal Builder | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Генератор сигнала | |
| Синусоида |
|
| Шаг | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
| Универсальное случайное число | Генерация кода поддержек. |
| Генератор формы волны | Не рекомендуемый для производственного кода. Относится к пределам ресурса и ограничениям на скорость и память, часто находимую во встраиваемых системах. Сгенерированный код может содержать динамическое выделение и освобождение от памяти, рекурсии, дополнительная память наверху, и широко переменные времена выполнения. В то время как код функционально допустим и обычно приемлем в богатых ресурсом средах, меньшие целевые процессоры часто не могут поддерживать такой код. Обычно, блоки развиваются к тому, чтобы быть подходящим для производственного кода. Таким образом блоки, подходящие для производственного кода, остаются подходящими. |
Пользовательский
| Блок | Поддержите примечания |
|---|---|
| @fcn | Поддержите генерацию кода. |
| Функциональная вызывающая сторона | |
| Инициализируйте функцию | |
| Интерпретированная функция MATLAB | Рассмотрите использование блока MATLAB function вместо этого. |
| Уровень 2 S-функция MATLAB | Если соответствующий файл TLC доступен, Уровень 2, Блок s-function MATLAB использует файл TLC, чтобы сгенерировать код, в противном случае генерация кода выдает ошибку. |
| Функция MATLAB | Поддержите генерацию кода. |
| Matlab.system | |
| S-функция | S-функции, которые вызывают в MATLAB, не поддержаны для генерации кода. |
| Разработчик S-функции | |
| Функция Simulink | Поддержите генерацию кода. |
| Оконечная функция |
Таблица Simulink Block Data Type Support суммирует характеристики блоков в Simulink и библиотеках блоков Fixed-Point Designer, включая то, рекомендуют ли им для использования в генерации производственного кода. Просмотреть эту таблицу, в Окне Команды MATLAB, showblockdatatypetable типа, или консультироваться со страницами с описанием блока.
Несколько продуктов, которые включают блоки, доступны для вас, чтобы рассмотреть для генерации кода. Однако перед использованием блоков для одного из этих продуктов, консультируйтесь с документацией для того продукта, чтобы подтвердить, какие блоки поддерживают генерацию кода.