SADF Engine Libraries
SADF Engine Libraries
| Article Index |
|---|
| SADF Engine Libraries |
| SADF Engine Common Libraries |
| Real Operations |
| Complex Operations |
| All Pages |
Introduction
SADF Engine Libraries it is a set of libraries for SADF Engine that could be used in DSP applicatoins. There are two type of SADF Engine Libraries:
- Common Libraries (floating or fixed point arithmetic)
- Platform Specific Libraries
- DSP Specific Libraries
SADF Common Libraries are libraries that are common for all platforms that are supported by SADF and Star-SysSolutions.com. Common libraries provided together wwith SADF Engine for specific platform. Project that based only on common libraries could be executed on any supported platform without modifications.
Common libraries includes main DSP functionality:
- Real
- Complex
- Logix (fixed point)
- Debug
SADF platform specific libraries include hardware related functionality like registers, I/O, DMA etc... These libraries strongli depends on a platform.
DSP Specific Libraries are libraries that inplemens some specific DSP functionality for specific platforms, like some high optimazed codecs, etc.
SADF Engine Common Libraries
SADF Engine Common Libraries it is collection of precompiled firmware and software components that realise common DSP functionality.
SADF Engine Common Libraries includes main DSP functionality:
- Real
- Complex
- Logix (fixed point)
- Debug
Blocks from these libraries will work on every supported platform.
Logic Operations
|
Library: Logical Operations |
|
|
And |
Logical And of two inputs |
|
AndC |
Logical And with constant value |
|
Or |
Logical Or of two inputs |
|
OrC |
Logical Or with constant value |
|
Xor |
Logical Xor of two inputs |
|
XorC |
Logical XorC with constant value |
|
Shift |
Logical Shift of two inputs |
|
Not |
Logical Not of two inputs |
|
Trigger |
Trigger |
|
|
|
Real Operations
|
Block Name |
Description |
|
Library: Support Blocks |
|
|
CpuInfo |
Information about used CPU/DSP |
|
Library: Vector Initialilzatoin |
|
|
Delta |
Generates a delta pulse with a given magnitude and phase. |
|
Copy |
Copies the contents of input into the output. |
|
Set |
Initializes vector elements to a specified common value. |
|
Tone |
Generates a tone with a given frequency, phase, and magnitude. |
|
RandUniform |
Generates the pseudo-random samples with a uniform distribution. |
|
SinCosTone |
Generates a tone shiftet by each other with a given frequency, phase. |
|
DataArray |
Provides data to other blocks |
|
ErrorGen |
Writes error value to the status buffer. |
|
|
|
|
Library: Essential/Arithmetic |
|
|
Abs |
Computes absolute values. |
|
Add |
Adds the elements of two inputs. |
|
AddC |
Adds a constant value to each input sample |
|
Mul |
Multiplys the elements of two inputs. |
|
MulC |
Multiplys a constant value with each input sample |
|
Sub |
Substract the elements of two inputs. |
|
SubC |
Substract a constant value from each input sample |
|
SubCRev |
Substract each input sample from a constant value |
|
Div |
Divides the elements of two inputs. |
|
DivC |
Divide each input sample to a constant value |
|
DivCRev |
Divide a constant value to each input sample |
|
Sqr |
Computes a square |
|
Sqrt |
Computes a square root |
|
Cubt |
Computes a cube root |
|
Exp |
Computes exponent |
|
Ln |
Natural logarithm |
|
Log10m10 |
Decimal logarithm and multiply by 10 |
|
SumLn |
Sums natural logarithms of each sample |
|
Arctan |
Arctangence |
|
Normalize |
Normalizes samples |
|
|
|
|
Library: Essential/Conversion |
|
|
SortAscend |
Sorts all elements of a vector in the ascending order. |
|
SortDescend |
Sorts all elements of a vector in the descending order |
|
SortIndexAscend |
Rearranges elements of the vector and their indexes in the ascending order |
|
SortIndexDescend |
Rearranges elements of the vector and their indexes in the descending order |
|
Convert |
Converts the data type of a vector and stores the results in a second vector |
|
ConjFlip |
Computes the complex conjugate of a vector and stores the result in reverse order |
|
Magnitude |
Computes magnitude of complex input |
|
Phase |
Computes phase of complex input |
|
PowerSpectr |
Computes power of complex input |
|
Real |
Copy Real part of complex vector to the output |
|
Imag |
Copy imaginary part of complex vector to the output |
|
RealToCplx |
Convert two real inputs to one complex output |
|
CplxToReal |
Convert one complex input to two real outputs |
|
Threshold |
Performs the threshold operation on the elements of a vector by limiting the element values by level |
|
Threshold_Val |
Performs the threshold operation on the elements of a vector by limiting the element values specified value |
|
Threshold_LTValGTVal |
Performs the threshold operation on the elements of a vector by limiting the element values specified value |
|
Threshold_Abs |
Performs the threshold operation on the absolute values of elements of a vector |
|
Threshold_LTInv |
Computes the inverse of vector elements after limiting their magnitudes by the given lower bound |
|
CartToPolar |
Converts Cart input to polar output |
|
PolarToCart |
Converts polar input to cart output |
|
Preemphasize |
Computes preemphasis of a single precision real signal |
|
Flip |
Reverce the order of samples |
|
Int2Float |
Converts In32 to float32 |
|
Float2Int |
Converts Float32 to Int32 |
|
|
|
|
Library: Essential/Windowing |
|
|
Window |
Generate array with window coefficients |
|
|
|
|
Library: Essential/Sampling |
|
|
SampleUp |
Resampling Up |
|
SampleDown |
Resampling Down |
|
ResizeFactor |
Resize output by factor |
|
ResizeLength |
Resize output by length |
|
ConvertFactor |
Resample and resize by factor |
|
ConvertLength |
Resample and resize by length |
|
|
|
|
Library: Essential/Statistical |
|
|
Sum |
Computes the sum of the samples |
|
Max |
Computes the max sample of the samples |
|
MaxIndx |
Computes the index of max sample |
|
Min |
Computes the min sample of the samples |
|
MinIndx |
Computes the index of min sample |
|
MinMax |
Computes the min and max sample of the samples |
|
MinMaxIndx |
Computes the indexes of min amd max samples |
|
StdDev |
Standard deviation |
|
MeanStdDev |
Mean value and standard deviation |
|
NormC |
Compute C norm |
|
NormL1 |
Compute L1 norm |
|
NormL2 |
Compute L2 norm |
|
NormDiffC |
Compute C norm of two inputs difference |
|
NormDiffL1 |
Compute L1 norm of two inputs difference |
|
NormDiffL2 |
Compute L2 norm of two inputs difference |
|
DotProd |
Dot product |
|
MaxEvery |
Max value for every pair of samoles for two inputs |
|
MinEvery |
Min value for every pair of samoles for two inputs |
|
|
|
|
Library: Filtering/FIR |
|
|
FirGen |
Generate FIR filter coefficients |
|
FirDirect |
Direct FIR filter |
|
FirDirectUp |
FIR filter with up sampling |
|
FirDirectDown |
FIR filter with down sampling |
|
FirDirectUpDown |
FIR filter with up and down sampling. |
|
|
|
|
Library: Filtering/IIR |
|
|
IirDirect |
Direct IIR filter form I |
|
IirCoeffs |
Coefficients for IIR Filter Form I |
|
IirGen |
Generates coefficients for IIR Filter Form I |
|
IirBiQuad |
BiQuad IIR Filter |
|
IrrGenBiQuad |
Generate coefficients for BiQuad IIR Filter |
|
|
|
|
Library: Transform/Fast Fourier Transform |
|
|
FFTFwd_RtoPerm |
FFT Real to Perm |
|
FFTFwd_PermToR |
FFT Perm to Real |
|
FFTFwd_2Rto2Perm |
Two Real inputs to two Perm |
|
FFTFwd_2PermTo2R |
Two Perm inputs to two Real |
|
|
|
Complex Operations
|
Block Name |
Description |
|
Library: Complex/Vector Initialilzatoin |
|
|
Delta |
Generates a delta pulse with a given magnitude and phase. |
|
Copy |
Copies the contents of input into the output. |
|
Set |
Initializes vector elements to a specified common value. |
|
Tone |
Generates a tone with a given frequency, phase, and magnitude. |
|
RandUniform |
Generates the pseudo-random samples with a uniform distribution. |
|
ErrorGen |
Writes error value to the status buffer. |
|
|
|
|
Library: Complex/Essential/Arithmetic |
|
|
Add |
Adds the elements of two inputs. |
|
AddC |
Adds a constant value to each input sample |
|
Mul |
Multiplys the elements of two inputs. |
|
MulC |
Multiplys a constant value with each input sample |
|
Sub |
Substract the elements of two inputs. |
|
SubC |
Substract a constant value from each input sample |
|
SubCRev |
Substract each input sample from a constant value |
|
Div |
Divides the elements of two inputs. |
|
DivC |
Divide each input sample to a constant value |
|
DivCRev |
Divide a constant value to each input sample |
|
Sqr |
Computes a square |
|
Sqrt |
Computes a square root |
|
Normalize |
Normalizes samples |
|
|
|
|
Library: Complex/Essential/Conversion |
|
|
Convert |
Converts the data type of a vector and stores the results in a second vector |
|
ConjFlip |
Computes the complex conjugate of a vector and stores the result in reverse order |
|
Threshold |
Performs the threshold operation on the elements of a vector by limiting the element values by level |
|
Threshold_Val |
Performs the threshold operation on the elements of a vector by limiting the element values specified value |
|
Threshold_LTInv |
Computes the inverse of vector elements after limiting their magnitudes by the given lower bound |
|
Flip |
Reverce the order of samples |
|
Int2Float |
Converts In32 to float32 |
|
Float2Int |
Converts Float32 to Int32 |
|
|
|
|
Library: Complex/Essential/Sampling |
|
|
SampleUp |
Resampling Up |
|
SampleDown |
Resampling Down |
|
ResizeFactor |
Resize output by factor |
|
ResizeLength |
Resize output by length |
|
ConvertFactor |
Resample and resize by factor |
|
ConvertLength |
Resample and resize by length |
|
|
|
|
Library: Complex/Essential/Statistical |
|
|
Sum |
Computes the sum of the samples |
|
NormC |
Compute C norm |
|
NormL1 |
Compute L1 norm |
|
NormL2 |
Compute L2 norm |
|
NormDiffC |
Compute C norm of two inputs difference |
|
NormDiffL1 |
Compute L1 norm of two inputs difference |
|
NormDiffL2 |
Compute L2 norm of two inputs difference |
|
DotProd |
Dot product |
|
|
|
|
Library: Complex/Filtering/FIR |
|
|
FirGen |
Generate FIR filter coefficients |
|
FirDirect |
Direct FIR filter |
|
FirDirectUp |
FIR filter with up sampling |
|
FirDirectDown |
FIR filter with down sampling |
|
FirDirectUpDown |
FIR filter with up and down sampling. |
|
|
|
|
Library: Complex/Filtering/IIR |
|
|
IirDirect |
Direct IIR filter form I |
|
IirCoeffs |
Coefficients for IIR Filter Form I |
|
IirGen |
Generates coefficients for IIR Filter Form I |
|
IirBiQuad |
BiQuad IIR Filter |
|
IrrGenBiQuad |
Generate coefficients for BiQuad IIR Filter |
|
|
|
|
Library: Complex/Transform/Fast Fourier Transform |
|
|
FFTFwd_CToC |
Forward FFT for complex samples |
|
FFTInv_CToC |
Inverce FFT for complex samples |
|
|
|
.



