Simulink® Compiler™ позволяет вам совместно использовать симуляции Simulink как независимые исполняемые файлы. Можно создать исполняемые файлы, упаковав скомпилированную модель Simulink и MATLAB® код для настройки, запуска и анализа симуляции. Независимыми исполняемыми файлами могут быть полные приложения симуляции, которые используют графику MATLAB и пользовательские интерфейсы, разработанные с помощью MATLAB App Designer. Для косимуляции с внешней средой симуляции можно сгенерировать автономные двоичные файлы Functional Mockup Unit (FMU), которые соответствуют стандарту Functional Mockup Interface (FMI).
Simulink Coder™ генерирует и выполняет C и Код С++ из моделей Simulink, Stateflow® графики и функции MATLAB. Сгенерированный исходный код может использоваться для приложений в реальном времени и не в реальном времени, быстрого прототипирования и HIL-тестирования. Настроить и контролировать сгенерированный код можно с помощью Simulink или запустить и взаимодействовать с кодом вне MATLAB и Simulink.
В следующей таблице указаны основные сравнения между Simulink Compiler и Simulink Coder. Используйте эту таблицу, чтобы понять различия между приложениями и использованием этих двух продуктов.
Выходы и поддержка | Simulink Compiler | Simulink Coder |
---|---|---|
Основной пример использования | Развертывание симуляций как независимых исполняемых файлов на рабочих или производственных серверах | Сгенерируйте портативный код C/C + + для модели Simulink, который можно развернуть на встраиваемых платформах или рабочем столе |
Выход | Исполняемый или программный компонент или общая библиотека | Портативный и читаемый исходный код C/C + + |
Поддержка блоков Simulink | Все блоки, поддерживаемые в режиме Rapid Accelerator в Simulink | Подмножество блоков Simulink |
Поддерживаемые библиотеки | Все библиотеки, поддерживаемые режимом Rapid Accelerator в Simulink | Подмножество блоков Simulink |
Производство | MATLAB Production Server | Embedded Coder |
Поддержка графики Simulink | Поддерживает графику MATLAB. | Ничего |
Библиотечные зависимости | MATLAB Runtime | Ничего |
Следующая таблица отвечает на некоторые общие вопросы об использовании Simulink Compiler и Simulink Coder, такие как необходимая память, эффективность и другие вопросы о поддержке.
Общие вопросы | Simulink Compiler | Simulink Coder |
---|---|---|
Какие файлы производятся? | Общие исполняемые файлы или библиотеки наряду с необходимыми компонентами среды MATLAB Runtime. | Исходный код (* .c & * .h ), который можно скомпилировать в общие библиотеки и исполняемые файлы |
На каких платформах можно развертывать эти файлы? | Все платформы, поддерживаемые MATLAB (Windows, Mac и Linux) | Любая платформа, поддерживающая код ANSI/ISO C/C + + |
Он генерирует читаемый код? | Нет, только нечитаемые общие библиотеки | Да, читаемый исходный код |
Это быстрее, чем Simulink? | Работает с той же скоростью, что и режим Rapid Accelerator в Simulink. | Имеет потенциал быть быстрее, в зависимости от алгоритма. Сгенерированный код не быстрее для оптимизированных функций MATLAB (таких как БПФ, или Изображение Processing, и Компьютерное зрение функций) Используйте графический процессор GPU Coder Coder™ для генерации исходного кода CUDA, который потенциально запускается быстрее на графических процессорах NVIDIA. |
Использует ли это оборудование ускорители? | Поддерживает то же оборудование, что и MATLAB, включая графические процессоры и AVX. Многоядерные процессоры и кластеры поддерживаются с помощью Parallel Computing Toolbox | Код С, выполняемый на локальных многоядерных компьютерах, может поддерживаться с помощью API OpenMP. Используйте GPU Coder, чтобы сгенерировать исходный код CUDA, который запускается на графических процессорах NVIDIA. Используйте HDL- Coder™, чтобы сгенерировать Verilog или VHDL, который работает на FPGA. |
В чем различие в использовании памяти на рабочем столе? | Сильно зависит от исполняемых файлов. MATLAB Runtime сам использует больше памяти, чем Simulink Coder. | Сильно зависит от кода MATLAB. |
Какие форматы ввода-вывода файлов поддерживает каждое программное обеспечение? | Поддерживает все форматы, поддерживаемые в MATLAB | Ограниченная поддержка файлов: текстовые файлы, аудио и видео форматы. Не поддерживает форматы изображений. |