主要内容

可以替换的代码金宝app模型

代码生成器替换的代码取决于您使用的代码替换库(CRL)。默认情况下,代码生成器不应用代码替换库。您对库的选择取决于产品许可以及您是否可以访问自定义库。

有关如何研究代码替换库支持的函数和操作符的信息,请参见金宝app选择代码替换库许可证,并希望开发自定义代码替换库,请参阅代码替换自定义。

数学函数-金宝app金宝app

当从Simulink生成C/ c++代码时金宝app®模型,根据您的开发环境中可用的代码替换库,您可以配置代码生成器,以使用特定于应用程序的实现替换以下数学函数的实例。

函数 数据类型支持金宝app 标量,向量,矩阵支持金宝app 真实的,复杂的支持金宝app
腹肌1 整数
浮点
不动点
标量
向量
矩阵
真正的
这些“可信赖医疗组织” 浮点 标量 真正的
复杂复杂的输入/输出
真正复杂的输入/输出
acosd2 浮点 标量
向量
矩阵
真正的
复杂的
作用是 浮点 标量
向量
矩阵
真正的
复杂复杂的输入/输出
真正复杂的输入/输出
acot2 浮点 标量
向量
矩阵
真正的
复杂的
acotd2 浮点 标量
向量
矩阵
真正的
复杂的
acoth2 浮点 标量
向量
矩阵
真正的
复杂的
正式启动2 浮点 标量
向量
矩阵
真正的
复杂的
acscd2 浮点 标量
向量
矩阵
真正的
复杂的
acsch2 浮点 标量
向量
矩阵
真正的
复杂的
asec2 浮点 标量
向量
矩阵
真正的
复杂的
asecd2 浮点 标量
向量
矩阵
真正的
复杂的
asech2 浮点 标量
向量
矩阵
真正的
复杂的
印度历的7月 浮点 标量 真正的
复杂复杂的输入/输出
真正复杂的输入/输出
阿辛德2 浮点 标量
向量
矩阵
真正的
复杂的
反双曲正弦 浮点 标量
向量
矩阵
真正的
复杂复杂的输入/输出
真正复杂的输入/输出
: 浮点 标量
向量
矩阵
真正的
复杂复杂的输入/输出
真正复杂的输入/输出
量化3. 浮点 标量
向量
矩阵
真正的
atan2d2 浮点 标量
向量
矩阵
真正的
atand2 浮点 标量
向量
矩阵
真正的
复杂的
atanh 浮点 标量
向量
矩阵
真正的
复杂复杂的输入/输出
真正复杂的输入/输出
装天花板 浮点
标量
浮点
标量
浮点
标量
因为3. 浮点 标量
向量
矩阵
真正的
复杂复杂的输入/输出
真正复杂的输入/输出
cosd2 浮点 标量
向量
矩阵
真正的
复杂的
科什 浮点 标量
向量
矩阵
真正的
复杂复杂的输入/输出
真正复杂的输入/输出
2 浮点 标量
向量
矩阵
真正的
复杂的
cotd2 浮点 标量
向量
矩阵
真正的
复杂的
双曲余切2 浮点 标量
向量
矩阵
真正的
复杂的
csc2 浮点 标量
向量
矩阵
真正的
复杂的
cscd2 浮点 标量
向量
矩阵
真正的
复杂的
csch2 浮点 标量
向量
矩阵
真正的
复杂的
exactrSqrt 整数
浮点
标量 真正的
经验值 浮点 标量
向量
矩阵
真正的
修复 浮点 标量 真正的
地板上 浮点
标量
浮点
标量
浮点
标量
在你4 浮点 标量 真正的
frexp 浮点 标量 真正的
函数的 浮点 标量
向量
矩阵
真正的
ldexp 浮点 标量 真正的
ln 浮点 标量 真正的
日志 浮点 标量
向量
矩阵
真正的
log10 浮点 标量
向量
矩阵
真正的
log22 浮点 标量
向量
矩阵
真正的
复杂的
马克斯 整数
浮点
不动点
标量 真正的
最小值 整数
浮点
不动点
标量 真正的
国防部 整数
浮点
标量
向量
矩阵
真正的
战俘 浮点 标量
向量
矩阵
真正的
快速眼动 浮点 标量
向量
矩阵
真正的
圆形的 浮点 标量 真正的
rSqrt 整数
浮点
标量
向量
矩阵
真正的
饱和 整数
浮点
不动点
标量
向量
矩阵
真正的
证券交易委员会2 浮点 标量
向量
矩阵
真正的
复杂的
secd2 浮点 标量
向量
矩阵
真正的
复杂的
双曲正割2 浮点 标量
向量
矩阵
真正的
复杂的
标志 整数
浮点
不动点
标量
向量
矩阵
真正的
signPow 浮点 标量
向量
矩阵
真正的
3. 浮点 标量
向量
矩阵
真正的
复杂复杂的输入/输出
真正复杂的输入/输出
要求3. 浮点 标量
向量
矩阵
真正的
复杂复杂的输入/输出
真正复杂的输入/输出
信德2 浮点 标量
向量
矩阵
真正的
复杂的
sinh 浮点 标量
向量
矩阵
真正的
复杂复杂的输入/输出
真正复杂的输入/输出
√6 整数
浮点
不动点
标量
向量
矩阵
真正的
棕褐色 浮点 标量
向量
矩阵
真正的
复杂复杂的输入/输出
真正复杂的输入/输出
罐内2 浮点 标量
向量
矩阵
真正的
复杂的
双曲正切 浮点 标量
向量
矩阵
真正的
复杂复杂的输入/输出
真正复杂的输入/输出

1仅在整数溢出时进行包装。清晰块参数整数溢出饱和

2仅当与MATLAB函数块一起使用时。

3.金宝app支持CORDIC近似方法和Lookup近似方法。

4Stateflow®金宝app只支持。

数学函数-Stateflow金宝app

当从statflow图表生成C/ c++代码时,根据开发环境中可用的代码替换库,您可以配置代码生成器,以使用特定于应用程序的实现替换以下数学函数的实例。

函数 数据类型支持金宝app 标量,向量,矩阵支持金宝app 真实的,复杂的支持金宝app
腹肌1 整数
浮点
标量 真正的
这些“可信赖医疗组织”2 浮点 标量
向量
矩阵
真正的
复杂的
复杂复杂的输入/输出
真正复杂的输入/输出
acosd3. 浮点 标量
向量
矩阵
真正的
复杂的
acot3. 浮点 标量
向量
矩阵
真正的
复杂的
acotd3. 浮点 标量
向量
矩阵
真正的
复杂的
acoth3、5 浮点 标量
向量
矩阵
真正的
复杂的
正式启动3. 浮点 标量
向量
矩阵
真正的
复杂的
acscd3. 浮点 标量
向量
矩阵
真正的
复杂的
acsch3. 浮点 标量
向量
矩阵
真正的
复杂的
asec3. 浮点 标量
向量
矩阵
真正的
复杂的
asecd3. 浮点 标量
向量
矩阵
真正的
复杂的
asech3. 浮点 标量
向量
矩阵
真正的
复杂的
印度历的7月2 浮点 标量
向量
矩阵
真正的
复杂的
复杂复杂的输入/输出
真正复杂的输入/输出
阿辛德3. 浮点 标量
向量
矩阵
真正的
复杂的
:2 浮点 标量
向量
矩阵
真正的
复杂的
复杂复杂的输入/输出
真正复杂的输入/输出
量化2 浮点 标量
向量
矩阵
真正的
atan2d3. 浮点 标量
向量
矩阵
真正的
atand3. 浮点 标量
向量
矩阵
真正的
复杂的
装天花板 浮点
标量
浮点
标量
浮点
标量
因为3. 浮点 标量
向量
矩阵
真正的
复杂的
复杂复杂的输入/输出
真正复杂的输入/输出
cosd3. 浮点 标量
向量
矩阵
真正的
复杂的
科什2 浮点 标量
向量
矩阵
真正的
复杂的
复杂复杂的输入/输出
真正复杂的输入/输出
3. 浮点 标量
向量
矩阵
真正的
复杂的
cotd3. 浮点 标量
向量
矩阵
真正的
复杂的
双曲余切3. 浮点 标量
向量
矩阵
真正的
复杂的
csc3. 浮点 标量
向量
矩阵
真正的
复杂的
cscd3. 浮点 标量
向量
矩阵
真正的
复杂的
csch3. 浮点 标量
向量
矩阵
真正的
复杂的
经验值 浮点 标量 真正的
地板上 浮点
标量
浮点
标量
浮点
标量
在你 浮点 标量 真正的
函数的3. 浮点 标量
向量
矩阵
真正的
ldexp 浮点 标量 真正的
日志2 浮点 标量
向量
矩阵
真正的
复杂的
log102 浮点 标量
向量
矩阵
真正的
复杂的
log23. 浮点 标量
向量
矩阵
真正的
复杂的
马克斯 整数
浮点
标量 真正的
最小值 整数
浮点
标量 真正的
战俘 浮点 标量 真正的
证券交易委员会3. 浮点 标量
向量
矩阵
真正的
复杂的
secd3. 浮点 标量
向量
矩阵
真正的
复杂的
双曲正割3. 浮点 标量
向量
矩阵
真正的
复杂的
2 浮点 标量
向量
矩阵
真正的
复杂的
复杂复杂的输入/输出
真正复杂的输入/输出
信德3. 浮点 标量
向量
矩阵
真正的
复杂的
sinh2 浮点 标量
向量
矩阵
真正的
复杂的
复杂复杂的输入/输出
真正复杂的输入/输出
√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 > > u37 RTW_OP_MUL_SRA 整数
定点
标量 真正的
乘接除(u1 * u2 / u38 RTW_OP_MULDIV 整数
定点
标量 真正的
大于(> RTW_OP_GREATER_
整数
浮点
定点
混合
标量
向量
矩阵
真正的
复杂的
大于或等于(>= RTW_OP_GREATER_
THAN_OR_EQUAL
整数
浮点
定点
混合
标量
向量
矩阵
真正的
复杂的
不到(< 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使用乘法()操作符(RTW_OP_MUL)求标量乘法。

7要求具有零偏差的标量、实值或定点数据类型;乘法运算的输出类型,以容纳所有可能的输出值;移位操作数是一个无符号整数;净斜率等于1 (U1_slope * U2_slope == Mul_output_slopeMul_output_slope = = output_slope_of_shift_operation).

8要求具有零偏差的标量、实值或定点数据类型;乘法运算的输出类型,以容纳所有可能的输出值;净斜率等于1 (U3_slope * U2_slope == Mul_output_slope == U3_slope * Div_output_slope).

相关的话题