CC27xxDriverLibrary
apu.c File Reference
#include "../inc/hw_apu.h"
#include "../inc/hw_memmap.h"
#include "../inc/hw_types.h"
#include "apu.h"
Include dependency graph for apu.c:

Macros

#define APU_MSGBOX_CMDOK   0x0001
 Indicate operation has completed. More...
 

Functions

void APUWaitOnIrq (void)
 Wait for the APU interrupt. More...
 
bool APUOperationDone (void)
 Check if the APU has completed its operation. More...
 
void APUWaitOp (void)
 Wait for the APU to start and finish. More...
 
void APUSetConfig (uint32_t memConfig)
 Configure the APU. More...
 
void APUNop (void)
 APU NOP. More...
 
void APUVectorDot (uint16_t N, void *pInputA, void *pInputB, void *pResult)
 APU accelerator for vector dot product c = A dot B. More...
 
void APUVectorDotConj (uint16_t N, void *pInputA, void *pInputB, void *pResult)
 APU accelerator for vector dot product c = A dot conj(B) More...
 
void APUVectorMult (uint16_t N, void *pInputA, void *pInputB, void *pResult)
 APU accelerator for element-wise product of two vectors. More...
 
void APUVectorScalarMult (uint16_t N, void *pInputA, void *pInputB, void *pResult)
 APU accelerator for product of a vector and a scalar. More...
 
void APUVectorMultConj (uint16_t N, void *pInputA, void *pInputB, void *pResult)
 APU accelerator for element-wise product of vector A with the conjugate of vector B. More...
 
void APUVectorSum (uint16_t N, void *pInputA, void *pInputB, uint16_t op, void *pResult)
 APU accelerator for addition/subtraction of two vectors. More...
 
void APUVectorScalarSum (uint16_t N, void *pInputA, void *pInputB, uint16_t op, void *pResult)
 APU accelerator for addition/subtraction of a vector and a scalar. More...
 
void APUMatrixMult (uint16_t M, uint16_t N, uint16_t P, void *pInputA, void *pInputB, void *pResult)
 APU accelerator for matrix multiplication of two matrices C = A*B. More...
 
void APUMatrixMultHerm (uint16_t M, void *pInputA, void *pInputB, void *pResult)
 APU accelerator for matrix multiplication of two Hermitian matrices C = A*B. More...
 
void APUMatrixMultSym (uint16_t M, void *pInputA, void *pInputB, void *pResult)
 APU accelerator for matrix multiplication of two symmetric matrices C = A*B. More...
 
void APUMatrixSum (uint16_t M, uint16_t N, void *pInputA, void *pInputB, void *pResult)
 APU accelerator for matrix addition of two matrices C = A+B. More...
 
void APUMatrixScalarMult (uint16_t M, uint16_t N, void *pInputA, void *pInputB, void *pResult)
 APU accelerator for multiplication of a matrix A and a scalar b. More...
 
void APUMatrixScalarSum (uint16_t M, uint16_t N, void *pInputA, void *pInputB, void *pResult)
 APU accelerator for addition of a matrix A and a scalar b. More...
 
void APUVectorCart2Pol (uint16_t N, void *pInput, void *pResult)
 APU accelerator for element-wise Cartesian-to-Polar transformation of a vector. More...
 
void APUVectorPol2Cart (uint16_t N, void *pInput, void *pResult, void *pTemp)
 APU accelerator for element-wise Polar-to-Cartesian transformation of a vector. More...
 
void APUVectorSort (uint16_t N, void *pInput)
 APU accelerator for in-place sorting of a vector. More...
 
void APUSpSmoothCovMatrix (uint16_t N, void *pInput, uint16_t L, void *pResult, uint16_t fb)
 APU accelerator for covariance matrix computation using spatial smoothing and forward-backward averaging (optional) More...
 
void APUJacobiEVD (uint16_t N, void *pInput, void *pResultV, uint16_t maxIter, float minSum, float epsTol)
 APU accelerator for Jacobi Eigen-Decomposition (EVD) of Hermitian Matrix. More...
 
void APUGaussJordanElim (uint16_t M, uint16_t N, void *pInput, float epsTol)
 APU accelerator for Gauss-Jordan Elimination of a rectable complex matrix. More...
 
void APUMatrixNorm (uint16_t M, uint16_t N, void *pInput, void *pResult)
 APU accelerator for Frobenius norm computation of a matrix. More...
 
void APUComputeFft (uint16_t N, void *pX)
 APU accelerator for Fast Fourier transform. More...
 
void APUComputeIfft (uint16_t N, void *pX)
 APU accelerator for invert Fast Fourier transform. More...
 
void APUConfigFft (uint16_t N, void *pX)
 Configure APU accelerator for Fast Fourier transform. More...
 
void APUUnitCircle (uint16_t N, uint16_t M, uint16_t phase, uint16_t conj, void *pResult)
 APU accelerator for generating points evenly distributed on unit circle. More...
 
void APUVectorMaxMin (uint16_t N, void *pInput, float thresh, uint16_t op, void *pResult)
 APU accelerator for computing max/min of the real part of a vector and a real value scalar. More...
 
void APUVectorR2C (uint16_t N, void *pInputA, void *pInputB, uint16_t op, void *pResult)
 APU accelerator for converting back and forth between real and complex numbers. More...
 
void APUHermLo (uint16_t N, void *pInput, void *pResult)
 APU accelerator for converting Hermitian upper-triangular to lower-triangular. More...
 

Macro Definition Documentation

§ APU_MSGBOX_CMDOK

#define APU_MSGBOX_CMDOK   0x0001

Indicate operation has completed.

Referenced by APUOperationDone().