Код, который вы можете заменить из кода MATLAB

Код, который заменяет генератор кода, зависит от используемой библиотеки замещения кода (CRL). По умолчанию генератор кода не применяет библиотеку замены кода. Выбор библиотек зависит от лицензирования продукта и наличия доступа к пользовательским библиотекам.

Математические функции

При генерации кода C/C + + из MATLAB® код, в зависимости от библиотек замещения кода, доступных в среде разработки, можно сконфигурировать генератор кода, чтобы заменить образцы следующих математических функций реализациями конкретного приложения.

ФункцияПоддержка типа данныхПоддержка скаляров, векторов, матрицРеальная, комплексная поддержка
abs1Плавающая точкаСкалярРеальный
acosПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
acosdПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
acotПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
acotdПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
acothПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
acscПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
acscdПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
acschПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
asecПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
asecdПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
asechПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
asinПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
asindПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
atanПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
atan2Плавающая точкаСкаляр
Вектор
Матрица
Реальный
atan2dПлавающая точкаСкаляр
Вектор
Матрица
Реальный
atandПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
cosПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
ceil
  • С плавающей точкой

  • Скаляр

  • С плавающей точкой

  • Скаляр

  • С плавающей точкой

  • Скаляр

cosdПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
coshПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
cotПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
cotdПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
cothПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
cscПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
cscdПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
cschПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
expПлавающая точкаСкалярРеальный
fixПлавающая точкаСкалярРеальный
floor
  • С плавающей точкой

  • Скаляр

  • С плавающей точкой

  • Скаляр

  • С плавающей точкой

  • Скаляр

hypotПлавающая точкаСкаляр
Вектор
Матрица
Реальный
ldexpПлавающая точкаСкалярРеальный
logПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
log10Плавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
log2Плавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
maxЦелое число
Плавающая точка
СкалярРеальный
minЦелое число
Плавающая точка
СкалярРеальный
powПлавающая точкаСкалярРеальный
remПлавающая точкаСкалярРеальный
roundПлавающая точкаСкалярРеальный
secПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
secdПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
sechПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
signПлавающая точкаСкалярРеальный
sinПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
sindПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
sinhПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
sqrtПлавающая точкаСкалярРеальный
tanПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
tandПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
tanhПлавающая точкаСкаляр
Вектор
Матрица
Реальный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход

1 Перенос только при целочисленном переполнении

Функции памяти

В зависимости от библиотек замены кода, доступных в среде разработки, можно сконфигурировать генератор кода, чтобы заменить образцы следующих функций памяти реализациями конкретного приложения.

ФункцияПоддержка типа данныхПоддержка скаляров, векторов, матрицРеальная, комплексная поддержка
memcmpПустой указатель (void*)Скаляр
Вектор
Матрица
Реальный
Комплекс
memcpyПустой указатель (void*)Скаляр
Вектор
Матрица
Реальный
Комплекс
memsetПустой указатель (void*)Скаляр
Вектор
Матрица
Реальный
Комплекс
memset2zeroПустой указатель (void*)Скаляр
Вектор
Матрица
Реальный
Комплекс

Некоторые целевые процессоры обеспечивают оптимизированные функции, чтобы установить память на нуль. Используйте интерфейс программирования библиотеки замены кода, чтобы заменить memset2zero функция с более эффективными целевыми функциями.

Операторы

При генерации кода C/C + + из кода MATLAB, в зависимости от библиотек замены кода, доступных в вашей среде разработки, можно сконфигурировать генератор кода, чтобы заменить образцы следующих операторов реализациями, специфичными для конкретного приложения.

Поддержка смешанного типа данных указывает, что вы можете задать различные типы данных различных входов.

ОператорКлючПоддержка типа данныхПоддержка скаляров, векторов, матрицРеальная, комплексная поддержка
Сложение (+)1RTW_OP_ADDЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Комплекс
Вычитание (-)1RTW_OP_MINUSЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Комплекс
Умножение (*)2RTW_OP_MULЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Комплекс
Деление (/)RTW_OP_DIVЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Реальный
Комплекс
Преобразование типа данных (приведение)RTW_OP_CASTЦелое число
Плавающая точка3
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Комплекс
Сдвиг налево (<<)RTW_OP_SLЦелое число
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Сдвиньте правую арифметику (>>)4RTW_OP_SRA
Целое число
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Сдвиньте правую логическую (>>)RTW_OP_SRL Целое число
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Поэлементное матричное умножение (.*)5RTW_OP_ELEM_MULЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Вектор
Матрица
Реальный
Комплекс
Комплексное сопряжениеRTW_OP_CONJUGATEЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Комплекс
Транспозиция (.')RTW_OP_TRANSЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Вектор
Матрица
Реальный
Комплекс
Эрмитова (комплексная сопряженная) транспозиция (')RTW_OP_HERMITIANЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Вектор
Матрица
Реальный
Комплекс
Умножение с транспозицией2RTW_OP_TRMULЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Вектор
Матрица
Реальный
Комплекс
Умножение с эрмитовой транспозицией2RTW_OP_HMMULЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Вектор
Матрица
Реальный
Комплекс
Умножение с последующим сдвигом правой арифметики (u1*u2>>u3)6RTW_OP_MUL_SRAЦелое число
Фиксированная точка
СкалярРеальный
Умножение с последующим делением (u1*u2/u3)7RTW_OP_MULDIVЦелое число
Фиксированная точка
СкалярРеальный
Больше (>)RTW_OP_GREATER_
ЧЕМ
Целое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Комплекс
Больше или равно (>=)RTW_OP_GREATER_
THAN_OR_EQUAL
Целое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Комплекс
Меньше, чем (<)RTW_OP_LESS_THANЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Комплекс
Меньше или равно (<=)RTW_OP_LESS_THAN_
OR_EUQAL
Целое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Комплекс
Равный (==)RTW_OP_EUQALЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Комплекс
Не равно (!=)RTW_OP_NOT_EUQALЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Реальный
Комплекс

1 Дополнительные сведения см. в разделе Замена кода оператора сложения и вычитания при определении отображений для замен кода сложения и вычитания.

2 Может сопоставить с Базовые подпрограммы линейной алгебры (BLAS) функции умножения.

3 Масштабирование с плавающей точкой не поддерживается.

4 Библиотеки замены кода, которые обеспечивают арифметические реализации права на сдвиг, должны также обеспечивать логические реализации права на сдвиг, потому что некоторые арифметические права на сдвиг преобразуются в логические права на сдвиг во время генерации кода.

5 Используйте умножение (*) оператор (RTW_OP_MUL) для скалярного умножения.

6 Требует скалярных, реальных или типов данных с фиксированной точкой с нулевым смещением; выходной тип операции умножения для размещения всех возможных выходных значений; shift operand является беззнаковым целым числом; и уклон сети равен 1 (U1_slope * U2_slope == Mul_output_slope и Mul_output_slope == output_slope_of_shift_operation).

7 Требует скалярных, реальных или типов данных с фиксированной точкой с нулевым смещением; выходной тип операции умножения для размещения всех возможных выходных значений; и уклон сети равен 1 (U1_slope * U2_slope == Mul_output_slope == U3_slope * Div_output_slope).

Похожие темы