Генерация C/C++ кода из алгоритмов MATLAB

Записаться на обучение

Описание курса

Курс дает практические навыки генерации C кода из кода MATLAB. Рассказывается, как подготовить код MATLAB к генерации кода, и как выполнить генерацию оптимального C кода. Показан пример настройки интерфейсов и интеграции сгенерированного С кода во внешний проект.

Для прохождения курса требуется

Предварительное прохождение курса MATLAB для профессионалов, а также знание языка программирования C. Курс предназначен для опытных пользователей MATLAB.

Темы курса

Генерация С кода из алгоритмов MATLAB
Подготовка алгоритмов MATLAB для генерации кода
Работа с данными фиксированного и переменного размера
Генерация С кода из алгоритмов содержащих долговременные данные
Оптимизация сгенерированного кода
Подключение внешнего С кода
Перевод в фиксированную точку

Используемые инструменты

MATLAB Coder
Embedded Coder

Длительность

2 дня

Программа курса

Модуль 1. Использование MATLAB Coder для генерации кода
Знакомство с MATLAB Coder и его применением
Обзор MATLAB Coder
Рабочий процесс генерации C кода из кода MATLAB
Генерация C кода
Просмотр полученного кода
Модули сгенерированного кода

Модуль 2. Подготовка кода MATLAB для кодогенерации
Написание кода MATLAB, готового к генерации кода в соответствие со стандартами MATLAB Coder
Перевод кода MATLAB в C код
Вызов неподдерживаемых функций MATLAB
Подготовка существующего кода MATLAB к кодогенерации
Стратегии подготовки кода для кодогенерации

Модуль 3. Работа с данными фиксированного размера
Генерация C кода из кода MATLAB, работающего со входными данными фиксированного размера или константами
Обзор характеристик данных
Задание входов верхнего уровня фиксированного размера
Задание постоянных входов верхнего уровня

Модуль 4. Работа с данными переменного размера
Генерация C кода из кода MATLAB, работающего со входными или локальными данными переменного размера
Задание входов верхнего уровня переменного размера
Задание локальных данных переменного размера
Переиспользование переменных

Модуль 5. Работа с глобальными переменными, структурами и массивами ячеек
Генерация C кода из кода MATLAB, содержащего долговременные данные, глобальные переменные, входящие структуры
Статические переменные
Глобальные переменные
Работа со структурами
Массивы ячеек в сгенерированном коде
Передача переменных по ссылке

Модуль 6. Интеграция с внешним кодом
Интеграция сгенерированного C кода с внешним C кодом
Обзор процесса интеграции кода
Точки входа в сгенерированном коде
Интеграция внешнего C кода с помощью интерфейса MATLAB Coder
Интеграция внешнего C кода с помощью внешней IDE
Вызов внешних C функций
Верификация и профилирование сгенерированного кода
Отладка исходного кода

Модуль 7. Оптимизация сгенерированного кода
Использование различных вариантов и техник для оптимизации сгенерированного кода
Разворачивание циклов в сгенерированном коде и выделение памяти
Встраивание функции и разбиение файла
Создание объекта конфигурации для MATLAB Coder
Соглашения именам в сгенерированном коде
Конвертация проекта MATLAB Coder в скрипт

Опциональный модуль. Fixed Point Design
Переход из арифметике плавающей точкой в фиксированную.
Обзор Fixed Point Design
Автоматизация рабочего процесса при переходе в фиксированную точку
Замена функций