代码生成器替换的代码取决于您使用的代码替换库(CRL)。默认情况下,代码生成器不应用代码替换库。您对库的选择取决于产品许可以及您是否可以访问自定义库。
有关如何研究代码替换库支持的函数和操作符的信息,请参见金宝app选择代码替换库许可证,并希望开发自定义代码替换库,请参阅代码替换自定义。
当从Simulink生成C/ c++代码时金宝app®模型,根据您的开发环境中可用的代码替换库,您可以配置代码生成器,以使用特定于应用程序的实现替换以下数学函数的实例。
函数 | 数据类型支持金宝app | 标量,向量,矩阵支持金宝app | 真实的,复杂的支持金宝app |
---|---|---|---|
腹肌 1 |
整数 浮点 不动点 |
标量 向量 矩阵 |
真正的 |
这些“可信赖医疗组织” |
浮点 | 标量 | 真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
acosd 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
作用是 |
浮点 | 标量 向量 矩阵 |
真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
acot 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
acotd 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
acoth 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
正式启动 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
acscd 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
acsch 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
asec 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
asecd 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
asech 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
印度历的7月 |
浮点 | 标量 | 真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
阿辛德 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
反双曲正弦 |
浮点 | 标量 向量 矩阵 |
真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
: |
浮点 | 标量 向量 矩阵 |
真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
量化 3. |
浮点 | 标量 向量 矩阵 |
真正的 |
atan2d 2 |
浮点 | 标量 向量 矩阵 |
真正的 |
atand 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
atanh |
浮点 | 标量 向量 矩阵 |
真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
装天花板 |
浮点 标量 |
浮点 标量 |
浮点 标量 |
因为 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
cosd 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
科什 |
浮点 | 标量 向量 矩阵 |
真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
床 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
cotd 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
双曲余切 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
csc 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
cscd 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
csch 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
exactrSqrt |
整数 浮点 |
标量 | 真正的 |
经验值 |
浮点 | 标量 向量 矩阵 |
真正的 |
修复 |
浮点 | 标量 | 真正的 |
地板上 |
浮点 标量 |
浮点 标量 |
浮点 标量 |
在你 4 |
浮点 | 标量 | 真正的 |
frexp |
浮点 | 标量 | 真正的 |
函数的 |
浮点 | 标量 向量 矩阵 |
真正的 |
ldexp |
浮点 | 标量 | 真正的 |
ln |
浮点 | 标量 | 真正的 |
日志 |
浮点 | 标量 向量 矩阵 |
真正的 |
log10 |
浮点 | 标量 向量 矩阵 |
真正的 |
log2 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
马克斯 |
整数 浮点 不动点 |
标量 | 真正的 |
最小值 |
整数 浮点 不动点 |
标量 | 真正的 |
国防部 |
整数 浮点 |
标量 向量 矩阵 |
真正的 |
战俘 |
浮点 | 标量 向量 矩阵 |
真正的 |
快速眼动 |
浮点 | 标量 向量 矩阵 |
真正的 |
圆形的 |
浮点 | 标量 | 真正的 |
rSqrt |
整数 浮点 |
标量 向量 矩阵 |
真正的 |
饱和 |
整数 浮点 不动点 |
标量 向量 矩阵 |
真正的 |
证券交易委员会 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
secd 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
双曲正割 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
标志 |
整数 浮点 不动点 |
标量 向量 矩阵 |
真正的 |
signPow |
浮点 | 标量 向量 矩阵 |
真正的 |
罪 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
要求 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
信德 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
sinh |
浮点 | 标量 向量 矩阵 |
真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
√6 |
整数 浮点 不动点 |
标量 向量 矩阵 |
真正的 |
棕褐色 |
浮点 | 标量 向量 矩阵 |
真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
罐内 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
双曲正切 |
浮点 | 标量 向量 矩阵 |
真正的 复杂复杂的输入/输出 真正复杂的输入/输出 |
1仅在整数溢出时进行包装。清晰块参数整数溢出饱和. 2仅当与MATLAB函数块一起使用时。 3.金宝app支持CORDIC近似方法和Lookup近似方法。 4Stateflow®金宝app只支持。 |
当从statflow图表生成C/ c++代码时,根据开发环境中可用的代码替换库,您可以配置代码生成器,以使用特定于应用程序的实现替换以下数学函数的实例。
函数 | 数据类型支持金宝app | 标量,向量,矩阵支持金宝app | 真实的,复杂的支持金宝app |
---|---|---|---|
腹肌 1 |
整数 浮点 |
标量 | 真正的 |
这些“可信赖医疗组织” 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 复杂复杂的输入/输出 真正复杂的输入/输出 |
acosd 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
acot 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
acotd 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
acoth 3、5 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
正式启动 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
acscd 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
acsch 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
asec 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
asecd 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
asech 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
印度历的7月 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 复杂复杂的输入/输出 真正复杂的输入/输出 |
阿辛德 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
: 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 复杂复杂的输入/输出 真正复杂的输入/输出 |
量化 2 |
浮点 | 标量 向量 矩阵 |
真正的 |
atan2d 3. |
浮点 | 标量 向量 矩阵 |
真正的 |
atand 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
装天花板 |
浮点 标量 |
浮点 标量 |
浮点 标量 |
因为 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 复杂复杂的输入/输出 真正复杂的输入/输出 |
cosd 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
科什 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 复杂复杂的输入/输出 真正复杂的输入/输出 |
床 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
cotd 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
双曲余切 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
csc 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
cscd 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
csch 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
经验值 |
浮点 | 标量 | 真正的 |
地板上 |
浮点 标量 |
浮点 标量 |
浮点 标量 |
在你 |
浮点 | 标量 | 真正的 |
函数的 3. |
浮点 | 标量 向量 矩阵 |
真正的 |
ldexp |
浮点 | 标量 | 真正的 |
日志 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
log10 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
log2 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
马克斯 |
整数 浮点 |
标量 | 真正的 |
最小值 |
整数 浮点 |
标量 | 真正的 |
战俘 |
浮点 | 标量 | 真正的 |
证券交易委员会 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
secd 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
双曲正割 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
罪 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 复杂复杂的输入/输出 真正复杂的输入/输出 |
信德 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
sinh 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 复杂复杂的输入/输出 真正复杂的输入/输出 |
√6 |
浮点 | 标量 | 真正的 |
棕褐色 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 复杂复杂的输入/输出 真正复杂的输入/输出 |
罐内 3. |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 |
双曲正切 2 |
浮点 | 标量 向量 矩阵 |
真正的 复杂的 复杂复杂的输入/输出 真正复杂的输入/输出 |
1仅在整数溢出时进行包装。 2对于包含向量或矩阵的模型,代码生成器只替换MATLAB中编写的函数®动作语言。 3.代码生成器只替换用MATLAB动作语言编写的函数。 4嵌入式编码器®不支持对机器生成的金宝app数据使用代码替换库。 |
根据开发环境中可用的代码替换库,您可以配置代码生成器,以使用特定于应用程序的实现替换以下内存函数的实例。
函数 | 数据类型支持金宝app | 标量,向量,矩阵支持金宝app | 真实的,复杂的支持金宝app |
---|---|---|---|
memcmp |
空指针(void * ) |
标量 向量 矩阵 |
真正的 复杂的 |
memcpy |
空指针(void * ) |
标量 向量 矩阵 |
真正的 复杂的 |
memset |
空指针(void * ) |
标量 向量 矩阵 |
真正的 复杂的 |
memset2zero |
空指针(void * ) |
标量 向量 矩阵 |
真正的 复杂的 |
一些目标处理器提供优化函数来将内存设置为零。使用代码替换库编程接口来替换memset2zero
功能与更有效的目标特定的功能。
根据开发环境中可用的代码替换库,您可以配置代码生成器,以使用特定于应用程序的实现替换以下非有限函数的实例。
函数 | 数据类型支持金宝app | 标量,向量,矩阵支持金宝app | 真实的,复杂的支持金宝app |
---|---|---|---|
getInf |
浮点 | 标量 | 真正的 |
getMinusInf |
浮点 | 标量 | 真正的 |
getNaN |
浮点 | 标量 | 真正的 |
rtIsInf |
浮点 | 标量 | 真正的 复杂的 |
rtIsNaN |
浮点 | 标量 | 真正的 复杂的 |
互斥和信号量函数控制对多核目标环境中多个进程共享的资源的访问。MathWorks®提供支持互斥锁和信号量替换的代码替换库金宝app率转换和任务转换Windows上的块®, Linux®,Mac, VxWorks®平台。
生成的互斥和信号量代码通常包括:
在模型初始化代码中,一种初始化函数调用,用于创建一个互斥锁或信号量,以控制进入关键代码段的入口。
在模型步骤代码中:
在任务之间的数据传输代码进入临界区之前,调用互斥锁或信号量等待函数来保留临界区代码。
在任务之间的数据传输代码执行完临界段后,互斥锁或信号量post函数调用释放临界段代码。
在模型终止代码中,一个可选的destroy函数调用,显式地删除互斥锁或信号量。
根据开发环境中可用的代码替换库,您可以配置代码生成器,以使用特定于应用程序的实现替换以下互斥锁和信号量函数的实例。
函数 | 关键 |
---|---|
互斥摧毁 | RTW_MUTEX_DESTROY |
互斥对象初始化 | RTW_MUTEX_INIT |
互斥锁 | RTW_MUTEX_LOCK |
互斥锁解锁 | RTW_MUTEX_UNLOCK |
信号量摧毁 | RTW_SEM_DESTROY |
信号量初始化 | RTW_SEM_INIT |
信号量后 | RTW_SEM_POST |
信号量等 | RTW_SEM_WAIT |
当从Simulink模型生成C/ c++代码时,根据您的开发环境中可金宝app用的代码替换库,您可以配置代码生成器,以使用特定于应用程序的实现替换以下操作符的实例。
混合数据类型支持表明您可以为不同金宝app的输入指定不同的数据类型。
操作符 | 关键 | 数据类型支持金宝app | 标量,向量,矩阵支持金宝app | 真实的,复杂的支持金宝app |
---|---|---|---|---|
除了(+ )1 |
RTW_OP_ADD |
整数 浮点 定点 混合 |
标量 向量 矩阵 |
真正的 复杂的 |
减法(- )1 |
RTW_OP_MINUS |
整数 浮点 定点 混合 |
标量 向量 矩阵 |
真正的 复杂的 |
乘法(* )2 |
RTW_OP_MUL |
整数 浮点 定点 混合 |
标量 向量 矩阵 |
真正的 复杂的 |
部门(/ ) |
RTW_OP_DIV |
整数 浮点 定点 混合 |
标量 | 真正的 复杂的 |
数据类型转换(强制转换) | RTW_OP_CAST |
整数 浮点3. 定点 混合 |
标量 向量 矩阵 |
真正的 复杂的 |
左移位(<< ) |
RTW_OP_SL |
整数 定点 混合 |
标量 向量 矩阵4 |
真正的 |
右移运算(>> )5 |
RTW_OP_SRA |
整数 定点 混合 |
标量 向量 矩阵4 |
真正的 |
右移逻辑(>> ) |
RTW_OP_SRL |
整数 定点 混合 |
标量 向量 矩阵4 |
真正的 |
逐元矩阵乘法(.* )6 |
RTW_OP_ELEM_MUL |
整数 浮点 定点 混合 |
向量 矩阵 |
真正的 复杂的 |
矩阵右除法(/ ) |
RTW_OP_RDIV |
整数 浮点 定点 混合 |
向量 矩阵 |
真正的 复杂的 |
矩阵左除(\ ) |
RTW_OP_LDIV |
整数 浮点 定点 混合 |
向量 矩阵 |
真正的 复杂的 |
矩阵求逆(投资部 ) |
RTW_OP_INV |
整数 浮点 定点 混合 |
向量 矩阵 |
真正的 复杂的 |
复杂的共轭 | RTW_OP_CONJUGATE |
整数 浮点 定点 混合 |
标量 向量 矩阵 |
真正的 复杂的 |
换位(”。 ) |
RTW_OP_TRANS |
整数 浮点 定点 混合 |
向量 矩阵 |
真正的 复杂的 |
厄米特(复共轭)转置(' ) |
RTW_OP_HERMITIAN |
整数 浮点 定点 混合 |
向量 矩阵 |
真正的 复杂的 |
乘法和换位2 | RTW_OP_TRMUL |
整数 浮点 定点 混合 |
向量 矩阵 |
真正的 复杂的 |
与厄密转置的乘法2 | RTW_OP_HMMUL |
整数 浮点 定点 混合 |
向量 矩阵 |
真正的 复杂的 |
乘法后右移运算(u1 * u2 > > u3 )7 |
RTW_OP_MUL_SRA |
整数 定点 |
标量 | 真正的 |
乘接除(u1 * u2 / u3 )8 |
RTW_OP_MULDIV |
整数 定点 |
标量 | 真正的 |
大于(> ) |
RTW_OP_GREATER_ |
整数 浮点 定点 混合 |
标量 向量 矩阵 |
真正的 复杂的 |
大于或等于(>= ) |
RTW_OP_GREATER_ |
整数 浮点 定点 混合 |
标量 向量 矩阵 |
真正的 复杂的 |
不到(< ) |
RTW_OP_LESS_THAN |
整数 浮点 定点 混合 |
标量 向量 矩阵 |
真正的 复杂的 |
小于或等于(<= ) |
RTW_OP_LESS_THAN_ |
整数 浮点 定点 混合 |
标量 向量 矩阵 |
真正的 复杂的 |
= (== ) |
RTW_OP_EQUAL |
整数 浮点 定点 混合 |
标量 向量 矩阵 |
真正的 复杂的 |
不等于(! = ) |
RTW_OP_NOT_EQUAL |
整数 浮点 定点 混合 |
标量 向量 矩阵 |
真正的 复杂的 |
1看到加法和减法运算符代码替换有关在定义加法和减法代码替换的映射时要考虑的细节。 2可以映射到基本线性代数子程序(BLAS)的乘法函数。 3.不支持缩放浮点数。金宝app 4对于用输入端口指定的移位值,支持使用矩阵数据替换移位操作符。金宝app在块参数对话框中指定的移位值不支持替换金宝app。 5代码生成器将一些算术移位权转换为逻辑移位权。为了避免意外的结果,在创建包含算术右移位实现的表项的代码替换库时,还要包含逻辑右移位实现的表项。 6使用乘法( 7要求具有零偏差的标量、实值或定点数据类型;乘法运算的输出类型,以容纳所有可能的输出值;移位操作数是一个无符号整数;净斜率等于1 ( 8要求具有零偏差的标量、实值或定点数据类型;乘法运算的输出类型,以容纳所有可能的输出值;净斜率等于1 ( |