DSPLIB User Guide
DSPLIB_fltoq15_ci.cpp File Reference

Go to the source code of this file.

Functions

template<typename dataTypeIn >
void fltoq15_stream_init (uint8_t *pBlock, int32_t blockSize)
 
template<>
void fltoq15_stream_init< float > (uint8_t *pBlock, int32_t blockSize)
 
template<>
void fltoq15_stream_init< double > (uint8_t *pBlock, int32_t blockSize)
 
template<typename dataTypeIn >
DSPLIB_STATUS DSPLIB_fltoq15_init_ci (DSPLIB_kernelHandle handle, const DSPLIB_bufParams1D_t *bufParamsIn, const DSPLIB_bufParams1D_t *bufParamsOut, const DSPLIB_fltoq15_InitArgs *pKerInitArgs)
 This function is the initialization function for the C7x implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_fltoq15_init. More...
 
template DSPLIB_STATUS DSPLIB_fltoq15_init_ci< float > (DSPLIB_kernelHandle handle, const DSPLIB_bufParams1D_t *bufParamsIn, const DSPLIB_bufParams1D_t *bufParamsOut, const DSPLIB_fltoq15_InitArgs *pKerInitArgs)
 
template DSPLIB_STATUS DSPLIB_fltoq15_init_ci< double > (DSPLIB_kernelHandle handle, const DSPLIB_bufParams1D_t *bufParamsIn, const DSPLIB_bufParams1D_t *bufParamsOut, const DSPLIB_fltoq15_InitArgs *pKerInitArgs)
 
template<typename dataTypeIn >
void fltoq15_convert (void *restrict pIn, void *restrict pOut, __SE_TEMPLATE_v1 se0Params, __SA_TEMPLATE_v1 sa0Params, uint32_t blockSize, bool isSEReadEnabled)
 
template<>
void fltoq15_convert< float > (void *restrict pIn, void *restrict pOut, __SE_TEMPLATE_v1 se0Params, __SA_TEMPLATE_v1 sa0Params, uint32_t blockSize, bool isSEReadEnabled)
 
template<>
void fltoq15_convert< double > (void *restrict pIn, void *restrict pOut, __SE_TEMPLATE_v1 se0Params, __SA_TEMPLATE_v1 sa0Params, uint32_t blockSize, bool isSEReadEnabled)
 
template<typename dataTypeIn >
DSPLIB_STATUS DSPLIB_fltoq15_exec_ci (DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pOut)
 This function is the main execution function for the C7x implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_fltoq15_exec. More...
 
template DSPLIB_STATUS DSPLIB_fltoq15_exec_ci< float > (DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pOut)
 
template DSPLIB_STATUS DSPLIB_fltoq15_exec_ci< double > (DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pOut)
 

Function Documentation

◆ fltoq15_stream_init()

template<typename dataTypeIn >
void fltoq15_stream_init ( uint8_t *  pBlock,
int32_t  blockSize 
)
inline

◆ fltoq15_stream_init< float >()

template<>
void fltoq15_stream_init< float > ( uint8_t *  pBlock,
int32_t  blockSize 
)
inline

Definition at line 53 of file DSPLIB_fltoq15_ci.cpp.

◆ fltoq15_stream_init< double >()

template<>
void fltoq15_stream_init< double > ( uint8_t *  pBlock,
int32_t  blockSize 
)
inline

Definition at line 84 of file DSPLIB_fltoq15_ci.cpp.

◆ DSPLIB_fltoq15_init_ci()

template<typename dataTypeIn >
DSPLIB_STATUS DSPLIB_fltoq15_init_ci ( DSPLIB_kernelHandle  handle,
const DSPLIB_bufParams1D_t bufParamsIn,
const DSPLIB_bufParams1D_t bufParamsOut,
const DSPLIB_fltoq15_InitArgs pKerInitArgs 
)

This function is the initialization function for the C7x implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_fltoq15_init.

This function determines the configuration for the streaming engine resources based on the function call parameters, and the configuration is saved in bufPBlock array. In the kernel call sequence, DSPLIB_fltoq15_exec_ci would be called later independently by the application. When DSPLIB_fltoq15_exec_ci runs, it merely retrieves the configuration from the bufPBlock and uses it to set up the hardware resources. This arrangement is so that DSPLIB_fltoq15_exec_ci does not lose cycles to determine the hardware configuration.

Parameters
[in]handle: Active handle to the kernel
[in]bufParamsIn: Pointer to the structure containing dimensional information of input buffer
[out]bufParamsOut: Pointer to the structure containing dimensional information of ouput buffer
[in]pKerInitArgs: Pointer to the structure holding init parameters
Returns
Status value indicating success or failure. Refer to DSPLIB_STATUS.

Definition at line 117 of file DSPLIB_fltoq15_ci.cpp.

◆ DSPLIB_fltoq15_init_ci< float >()

template DSPLIB_STATUS DSPLIB_fltoq15_init_ci< float > ( DSPLIB_kernelHandle  handle,
const DSPLIB_bufParams1D_t bufParamsIn,
const DSPLIB_bufParams1D_t bufParamsOut,
const DSPLIB_fltoq15_InitArgs pKerInitArgs 
)

◆ DSPLIB_fltoq15_init_ci< double >()

template DSPLIB_STATUS DSPLIB_fltoq15_init_ci< double > ( DSPLIB_kernelHandle  handle,
const DSPLIB_bufParams1D_t bufParamsIn,
const DSPLIB_bufParams1D_t bufParamsOut,
const DSPLIB_fltoq15_InitArgs pKerInitArgs 
)

◆ fltoq15_convert()

template<typename dataTypeIn >
void fltoq15_convert ( void *restrict  pIn,
void *restrict  pOut,
__SE_TEMPLATE_v1  se0Params,
__SA_TEMPLATE_v1  sa0Params,
uint32_t  blockSize,
bool  isSEReadEnabled 
)
inline

◆ fltoq15_convert< float >()

template<>
void fltoq15_convert< float > ( void *restrict  pIn,
void *restrict  pOut,
__SE_TEMPLATE_v1  se0Params,
__SA_TEMPLATE_v1  sa0Params,
uint32_t  blockSize,
bool  isSEReadEnabled 
)
inline

Definition at line 167 of file DSPLIB_fltoq15_ci.cpp.

◆ fltoq15_convert< double >()

template<>
void fltoq15_convert< double > ( void *restrict  pIn,
void *restrict  pOut,
__SE_TEMPLATE_v1  se0Params,
__SA_TEMPLATE_v1  sa0Params,
uint32_t  blockSize,
bool  isSEReadEnabled 
)
inline

Definition at line 229 of file DSPLIB_fltoq15_ci.cpp.

◆ DSPLIB_fltoq15_exec_ci()

template<typename dataTypeIn >
DSPLIB_STATUS DSPLIB_fltoq15_exec_ci ( DSPLIB_kernelHandle  handle,
void *restrict  pIn,
void *restrict  pOut 
)

This function is the main execution function for the C7x implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_fltoq15_exec.

The function uses two streaming engines to load the data from memory and converts the input float/double data into Q15 format. The result is stored into memory using a stream address generator.

Parameters
[in]handle: Active handle to the kernel
[in]pIn: Pointer to buffer holding the input data
[out]pOut: Pointer to buffer holding the output data
Returns
Status value indicating success or failure. Refer to DSPLIB_STATUS.
Performance Considerations:
For best performance,
  • the input and output data buffers are expected to be in L2 memory
  • the buffer pointers are assumed to be 64-byte aligned

Definition at line 295 of file DSPLIB_fltoq15_ci.cpp.

◆ DSPLIB_fltoq15_exec_ci< float >()

template DSPLIB_STATUS DSPLIB_fltoq15_exec_ci< float > ( DSPLIB_kernelHandle  handle,
void *restrict  pIn,
void *restrict  pOut 
)

◆ DSPLIB_fltoq15_exec_ci< double >()

template DSPLIB_STATUS DSPLIB_fltoq15_exec_ci< double > ( DSPLIB_kernelHandle  handle,
void *restrict  pIn,
void *restrict  pOut 
)