Reference Manual for Intel®
Integrated Performance Primitives for Microcontrollers 1.2
Reference Manual for Intel®
Integrated Performance Primitives for Microcontrollers 1.2
Intel® Integrated Performance Primitives for Microcontrollers (Intel®
IPP for Microcontrollers) library is a hardware abstraction layer for x86
microcontrollers and processors. The library is a set of the performance
building blocks for your signal and data processing applications for
x86compatible microcontrollers.
The library provides two versions of application programming interfaces
(APIs): Intel IPPstyle and generic digital signal processing (DSP)style. The
following table lists all available function groups and provides the
correspondence between DSP and Intel IPPstyle interfaces.
Function Group
 DSPstyle
 Intel IPPstyle
 Description


Support Functions
 float_to_q15
float_to_q31
q15_to_float
q15_to_q31
q31_to_float
q31_to_q15
q7_to_float q7_to_q15 q7_to_q31 float_to_q7
q15_to_q7 q31_to_q7  Converts the data type of a vector and stores the result in another vector.  
copy  Copies the contents of one vector into another vector.  
fill  Sets vector elements to a specified common value.  
get_lib_version  Returns information about the library version.  
Basic Math Functions
 abs  Computes absolute values of vector elements.  
add  Adds elements of two vectors.  
offset  Adds a constant value to each element of a vector.  
dot_prod  Computes the dot product of two vectors.  
mult  Multiplies elements of two vectors.  
negate  Changes sign of vector elements.  
scale  Multiplies each element of a vector by a constant value.  
shift  Shift bits in vector elements to the left/right.  
sub  Subtracts elements of two vectors.  
Complex Math Functions
 cmplx_mult_cmplx real_mult_cmplx  Multiplies elements of two vectors.  
cmplx_conj  Performs elementwise conjugation of a complex vector.  
cmplx_dot_prod  Computes the dot product of two vectors.  
cmplx_mag  Computes the magnitude of a complex vector.  
cmplx_mag_squared  Computes the power spectrum of a complex vector.  
Fast Math Functions
 cos  Computes the cosine of an angle.  
sin_cos  Computes the sine and cosine of an angle.  
sin  Computes the sine of an angle.  
sqrt  Computes the square root of a number.  
Statistics Functions
 max  Returns the maximum value of a vector and the index of the maximum element.  
min  Returns the minimum value of a vector and the index of the minimum element.  
mean  Computes the mean value of a vector.  
power  Computes the sum of squares of vector elements.  
rms  Computes the root mean squares of vector elements.  
std  Computes the standard deviation of a vector.  
var  Computes the variance of a vector.  
Filtering Functions
 conv ,
conv_partial  Computes the specified number of elements of the full finite linear convolution of two vectors.  
correlate  Computes the crosscorrelation of two vectors.  
median  Performs direct median filtering of a vector.  
fir ,
fir_fast  Directly filters a source vector through a singlerate FIR filter.  
fir_decimate  Directly filters a source vector through an FIR filter with downsampling or decimation.  
fir_lattice  Filters a source vector through a singlerate lattice FIR filter.  
lms  Applies a FIR least mean squares (LMS) filter to a vector.  
lms_norm  Applies a normalized FIR least mean squares (LMS) filter to a vector.  
fir_sparse  Filters a source vector through a sparse FIR filter.  
fir_interpolate  Directly filters a source vector through a FIR filter with upsampling and interpolation.  
iir_lattice  Filters a source vector through a singlerate lattice IIR filter.  
biquad_cascade
 Applies a BiQuad cascade infinite impulse response (IIR) filter of the direct form II transposed structure.  
biquad_cascade_df1
 Applies a BiQuad cascade infinite impulse response (IIR) filter of the direct form I structure.  
Matrix Functions
 N/A
 Adds two matrices.  
N/A
 Multiplies two complex matrices.  
N/A
 Initializes the matrix data structure.  
mat_inverse  Performs inversion of a matrix.  
N/A
 Multiplies two real matrices.  
N/A
 Multiplies a matrix by a scalar value.  
N/A
 Subtracts two matrices.  
N/A
 Transposes a matrix.  
Transform Functions
 cfft  Computes the forward or inverse fast Fourier transform (FFT) of a complex signal.  
dct4  Computes the DCTIV of a signal  
rfft  Computes the forward or inverse fast Fourier transform (FFT) of a real signal.  
Interpolation Functions
 N/A
 Applies bilinear interpolation to a 2dimensional grid  
N/A
 Applies linear interpolation to a 1dimensional grid.  
Controller Functions
 N/A
 Perform forward and inverse Clarke transform.  
N/A
 Perform forward and inverse Park transform.  
N/A
 Performs proportional integral derivative (PID) processing for each input matrix data array. 
Optimization Notice


Intel's compilers may or may not optimize to the same degree
for nonIntel microprocessors for optimizations that are not unique to Intel
microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction
sets and other optimizations. Intel does not guarantee the availability,
functionality, or effectiveness of any optimization on microprocessors not
manufactured by Intel. Microprocessordependent optimizations in this product
are intended for use with Intel microprocessors. Certain optimizations not
specific to Intel microarchitecture are reserved for Intel microprocessors.
Please refer to the applicable product User and Reference Guides for more
information regarding the specific instruction sets covered by this notice.
Notice revision #20110804
