fiaccel
加速定点代码并转换浮点数MATLAB编码到定点MATLAB代码
语法
fiaccel -
选项
fcn
fiaccel -float2fixedfcn
描述
fiaccel -
翻译MATLAB®文件选项
fcn
fcn
.m
到MEX函数,该函数加速定点代码。使用fiaccel
,你的代码必须满足以下要求之一:
顶层函数没有输入或输出,代码使用
fi
顶级函数有一个输出或一个非常数输入,并且至少有一个输出或输入是
fi
.顶层函数至少有一个输入或输出,其中包含一个内置整数类(
int8
,uint8
,int16
,uint16
,int32
,uint32
,int64
,或uint64
),代码使用fi
.
请注意
如果顶层文件位于包含Unicode字符的路径上,则代码生成可能无法找到该文件。
fiaccel -float2fixed
转换浮点MATLAB函数,fcn
fcn
到定点MATLAB代码。
输入参数
|
MATLAB函数,从中生成MEX函数。 |
|
编译器选项的选择。
|
例子
创建一个测试文件并计算移动平均值。然后,用fiaccel
加速代码和比较。
函数avg = test_moving_average(x) %#codegen if nargin < 1, x = fi(rand(100,1),1,16,15);End z = fi(zero (10,1),1,16,15);均值= x;对于k = 1:length(x) [avg(k),z] = moving_average(x(k),z);结束函数[avg,z] = moving_average(x,z) %#codegen if nargin < 2, z = fi(zero (10,1),1,16,15);End z(2: End) = z(1: End -1);%更新缓冲区z(1) = x;%增加新值avg = mean(z);%计算移动平均%使用fiaccel创建MEX函数和%加速代码x = fi(rand(100,1),1,16,15);fiaccel test_moving_average -args {x} -report %比较非加速代码和加速代码。 x = fi(rand(100,1),1,16,15); % Non-compiled version tic,avg = test_moving_average(x);toc % Compiled version tic,avg = test_moving_average_mex(x);toc
转换成浮点数MATLAB定点编码
创建一个编码器。FixptConfig
对象,fixptcfg
,使用默认设置。
Fixptcfg = code .config(“fixpt”);
设置测试台架名称。在本例中,测试工作台函数名称为dti_test
.
fixptcfg。TestBenchName =“dti_test”;
将浮点的MATLAB函数转换为定点的MATLAB代码。在本例中,MATLAB函数名称为贸易工业部
.
fiaccel-float2fixedfixptcfg贸易工业部
另请参阅
编码器。ArrayType
|coder.config
|编码器。常数
|编码器。EnumType
|编码器。FiType
|编码器。FixptConfig
|coder.mexconfig
|编码器。MexConfig
|coder.newtype
|编码器。PrimitiveType
|coder.resize
|编码器。StructType
|编码器。类型
|coder.typeof