Что такое индивидуальная настройка замещения кода?

Настройте, как и когда генератор кода заменяет код C/C + +, который он генерирует по умолчанию для функций и операторов путем разработки пользовательской библиотеки замены кода. Вы можете разрабатывать библиотеки в интерактивном режиме с помощью Code Replacement Tool или программно.

  • Разрабатывайте библиотеки с учетом конкретных требований приложений

  • Добавьте идентификаторы в список зарезервированных ключевых слов, которые генератор кода рассматривает во время замены кода

  • Настройте процесс соответствия и замены генератора кода для функций

Чтобы начать, Quick Start Code Replacement Library Development - Simulink ®.

Процесс соответствия и замены замещения кода

Когда генератор кода встречается с узлом вызова для функции или оператора, это:

  1. Создает и частично заполняет объект записи замены кода именем функции или оператора или ключом и концептуальными аргументами.

  2. Использует объект entry, чтобы запросить конфигурированную библиотеку замещения кода для соответствия концептуального представления. Генератор кода выполняет поиск совпадения таблиц в библиотеке замещения кода в том же порядке, в котором они отображаются в библиотеке. При поиске соответствия генератор кода учитывает:

    • Концептуальное имя или ключ

    • Аргументы, включая количество, тип, определители типов и сложность

    • Алгоритм (расчет)

    • Режимы насыщения и округления с фиксированной точкой

    • Приоритет

  3. Когда существует соответствие, генератор кода возвращает объект замены кода, полностью заполненный концептуальным представлением, представлением реализации и приоритетом. Если генератор кода находит несколько совпадений в таблице, приоритет входа определяет соответствие. Приоритет может варьироваться от 0 до 100. Наивысший приоритет 0. Генератор кода использует запись с более высоким приоритетом над подобной записью с более низким приоритетом.

  4. Использует прототип функции замены C или C++ в объекте замены кода, чтобы сгенерировать код.

Ограничения, накладываемые на индивидуальную настройку кода

  • Замена кода верификации - Возможно, замена кода ведет себя по-другому, чем вы ожидаете. Например, типы данных, которые вы наблюдаете во входе генератора кода, могут не совпадать с тем, что генератор кода использует в качестве промежуточных типов данных во время операции. Проверьте замену кода путем изучения сгенерированного кода. См. раздел «Проверка библиотеки замещения кода».

  • Лексемы в путях к файлам - можно включать лексемы в пути к файлам при указании информации о сборке для записи замены кода только при помощи интерфейса программирования. Возможность включать лексемы недоступна с помощью Code Replacement Tool. См. раздел «Задание информации о сборке» в разделе «Определение оптимизации библиотеки замещения кода».

  • Замена операций сложения и вычитания - См. «Замена кода оператора сложения и вычитания» для соответствующих ограничений.

  • coder.replace function - См. coder.replace для соответствующих ограничений.

  • coder.dataAlignment function - См. coder.dataAlignment для соответствующих ограничений.

Похожие темы