![]() |
DSPLIB User Guide
|
Header file for kernel's internal use. For the kernel's interface, please see DSPLIB_cascadeBiquad.
Definition in file DSPLIB_cascadeBiquad_priv.h.
Go to the source code of this file.
Data Structures | |
| struct | DSPLIB_cascadeBiquad_PrivArgs |
| Structure that is reserved for internal use by the kernel. More... | |
Macros | |
| #define | DSPLIB_CASCADEBIQUAD_PBLOCK_SIZE (6 * SE_PARAM_SIZE + 1 * DSPLIB_PARAM_SIZE + 2 * sizeof(int32_t)) |
| Macro to define the size of bufPblock array of DSPLIB_cascadeBiquad_PrivArgs structure. More... | |
| #define | SE_PARAM_BASE (0x0000) |
| #define | SE_SE0_PARAM_OFFSET (SE_PARAM_BASE) |
| #define | SE_SE1_PARAM_OFFSET (SE_SE0_PARAM_OFFSET + SE_PARAM_SIZE) |
| #define | SE_SA0_PARAM_OFFSET (SE_SE1_PARAM_OFFSET + SE_PARAM_SIZE) |
| #define | SE_SA1_PARAM_OFFSET (SE_SA0_PARAM_OFFSET + SE_PARAM_SIZE) |
| #define | SE_SA2_PARAM_OFFSET (SE_SA1_PARAM_OFFSET + SE_PARAM_SIZE) |
| #define | SE_SA3_PARAM_OFFSET (SE_SA2_PARAM_OFFSET + SE_PARAM_SIZE) |
Typedefs | |
| typedef DSPLIB_STATUS(* | pFxnDSPLIB_cascadeBiquad_exec) (DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pFilterCoeff, void *restrict pFilterVar, void *restrict pOut) |
| This is a function pointer type that conforms to the declaration of DSPLIB_cascadeBiquad_exec_ci and DSPLIB_cascadeBiquad_exec_cn. More... | |
Functions | |
| template<typename dataType > | |
| DSPLIB_STATUS | DSPLIB_cascadeBiquad_init_ci (DSPLIB_kernelHandle handle, const DSPLIB_bufParams2D_t *bufParamsIn, const DSPLIB_bufParams1D_t *bufParamsFilterCoeff, const DSPLIB_bufParams2D_t *bufParamsFilterVar, const DSPLIB_bufParams2D_t *bufParamsOut, const DSPLIB_cascadeBiquad_InitArgs *pKerInitArgs) |
| This function is the initialization function for the C7x implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_cascadeBiquad_init. More... | |
| template<typename dataType > | |
| DSPLIB_STATUS | DSPLIB_cascadeBiquad7Stage_init_ci (DSPLIB_kernelHandle handle, const DSPLIB_bufParams2D_t *bufParamsIn, const DSPLIB_bufParams1D_t *bufParamsFilterCoeff, const DSPLIB_bufParams2D_t *bufParamsFilterVar, const DSPLIB_bufParams2D_t *bufParamsOut, const DSPLIB_cascadeBiquad_InitArgs *pKerInitArgs) |
| This function is the initialization function for the C7x implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_cascadeBiquad7Stage_init. More... | |
| template<typename dataType > | |
| DSPLIB_STATUS | DSPLIB_cascadeBiquad_exec_ci (DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pFilterCoeff, void *restrict pFilterVar, 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_cascadeBiquad_exec. More... | |
| template<typename dataType > | |
| DSPLIB_STATUS | DSPLIB_cascadeBiquad7Stage_exec_ci (DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pFilterCoeff, void *restrict pFilterVar, 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_cascadeBiquad7Stage_exec. More... | |
| template<typename dataType > | |
| DSPLIB_STATUS | DSPLIB_cascadeBiquad_exec_cn (DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pFilterCoeff, void *restrict pFilterVar, void *restrict pOut) |
| This function is the main execution function for the natural C implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_cascadeBiquad_exec. More... | |
| DSPLIB_STATUS | DSPLIB_cascadeBiquad_init_cn (DSPLIB_kernelHandle handle, DSPLIB_bufParams2D_t *bufParamsIn, DSPLIB_bufParams1D_t *bufParamsFilterCoeff, DSPLIB_bufParams2D_t *bufParamsFilterVar, DSPLIB_bufParams2D_t *bufParamsOut, DSPLIB_cascadeBiquad_InitArgs *pKerInitArgs) |
| This function is the initialization function for the natural C implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_cascadeBiquad_init. More... | |
| #define DSPLIB_CASCADEBIQUAD_PBLOCK_SIZE (6 * SE_PARAM_SIZE + 1 * DSPLIB_PARAM_SIZE + 2 * sizeof(int32_t)) |
Macro to define the size of bufPblock array of DSPLIB_cascadeBiquad_PrivArgs structure.
Definition at line 38 of file DSPLIB_cascadeBiquad_priv.h.
| #define SE_PARAM_BASE (0x0000) |
Definition at line 44 of file DSPLIB_cascadeBiquad_priv.h.
| #define SE_SE0_PARAM_OFFSET (SE_PARAM_BASE) |
Definition at line 45 of file DSPLIB_cascadeBiquad_priv.h.
| #define SE_SE1_PARAM_OFFSET (SE_SE0_PARAM_OFFSET + SE_PARAM_SIZE) |
Definition at line 46 of file DSPLIB_cascadeBiquad_priv.h.
| #define SE_SA0_PARAM_OFFSET (SE_SE1_PARAM_OFFSET + SE_PARAM_SIZE) |
Definition at line 47 of file DSPLIB_cascadeBiquad_priv.h.
| #define SE_SA1_PARAM_OFFSET (SE_SA0_PARAM_OFFSET + SE_PARAM_SIZE) |
Definition at line 48 of file DSPLIB_cascadeBiquad_priv.h.
| #define SE_SA2_PARAM_OFFSET (SE_SA1_PARAM_OFFSET + SE_PARAM_SIZE) |
Definition at line 49 of file DSPLIB_cascadeBiquad_priv.h.
| #define SE_SA3_PARAM_OFFSET (SE_SA2_PARAM_OFFSET + SE_PARAM_SIZE) |
Definition at line 50 of file DSPLIB_cascadeBiquad_priv.h.
| typedef DSPLIB_STATUS(* pFxnDSPLIB_cascadeBiquad_exec) (DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pFilterCoeff, void *restrict pFilterVar, void *restrict pOut) |
This is a function pointer type that conforms to the declaration of DSPLIB_cascadeBiquad_exec_ci and DSPLIB_cascadeBiquad_exec_cn.
Definition at line 56 of file DSPLIB_cascadeBiquad_priv.h.
| DSPLIB_STATUS DSPLIB_cascadeBiquad_init_ci | ( | DSPLIB_kernelHandle | handle, |
| const DSPLIB_bufParams2D_t * | bufParamsIn, | ||
| const DSPLIB_bufParams1D_t * | bufParamsFilterCoeff, | ||
| const DSPLIB_bufParams2D_t * | bufParamsFilterVar, | ||
| const DSPLIB_bufParams2D_t * | bufParamsOut, | ||
| const DSPLIB_cascadeBiquad_InitArgs * | pKerInitArgs | ||
| ) |
This function is the initialization function for the C7x implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_cascadeBiquad_init.
This function determines the configuration for the streaming engine and MMA hardware resources based on the function call parameters, and the configuration is saved in bufPBlock array. In the kernel call sequence, DSPLIB_cascadeBiquad_exec_ci would be called later independently by the application. When DSPLIB_cascadeBiquad_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_cascadeBiquad_exec_ci does not lose cycles to determine the hardware configuration.
| [in] | handle | : Active handle to the kernel |
| [in] | bufParamsIn | : Pointer to the structure containing dimensional information of input buffer |
| [in] | bufParamsFilterCoeff | : Pointer to the structure containing dimensional information of filter coefficient buffer |
| [in/out] | bufParamsFilterVar : Pointer to the structure containing dimensional information of filter variable buffer | |
| [out] | bufParamsOut | : Pointer to the structure containing dimensional information of ouput buffer |
| [in] | pKerInitArgs | : Pointer to the structure holding init parameters |
Definition at line 58 of file DSPLIB_cascadeBiquad_ci.cpp.
| DSPLIB_STATUS DSPLIB_cascadeBiquad7Stage_init_ci | ( | DSPLIB_kernelHandle | handle, |
| const DSPLIB_bufParams2D_t * | bufParamsIn, | ||
| const DSPLIB_bufParams1D_t * | bufParamsFilterCoeff, | ||
| const DSPLIB_bufParams2D_t * | bufParamsFilterVar, | ||
| const DSPLIB_bufParams2D_t * | bufParamsOut, | ||
| const DSPLIB_cascadeBiquad_InitArgs * | pKerInitArgs | ||
| ) |
This function is the initialization function for the C7x implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_cascadeBiquad7Stage_init.
This function determines the configuration for the streaming engine and MMA hardware resources based on the function call parameters, and the configuration is saved in bufPBlock array. In the kernel call sequence, DSPLIB_cascadeBiquad_exec_ci would be called later independently by the application. When DSPLIB_cascadeBiquad_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_cascadeBiquad_exec_ci does not lose cycles to determine the hardware configuration.
| [in] | handle | : Active handle to the kernel |
| [in] | bufParamsIn | : Pointer to the structure containing dimensional information of input buffer |
| [in] | bufParamsFilterCoeff | : Pointer to the structure containing dimensional information of filter coefficient buffer |
| [in/out] | bufParamsFilterVar : Pointer to the structure containing dimensional information of filter variable buffer | |
| [out] | bufParamsOut | : Pointer to the structure containing dimensional information of ouput buffer |
| [in] | pKerInitArgs | : Pointer to the structure holding init parameters |
Definition at line 51 of file DSPLIB_cascadeBiquad7stage_ci.cpp.
| DSPLIB_STATUS DSPLIB_cascadeBiquad_exec_ci | ( | DSPLIB_kernelHandle | handle, |
| void *restrict | pIn, | ||
| void *restrict | pFilterCoeff, | ||
| void *restrict | pFilterVar, | ||
| 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_cascadeBiquad_exec.
The function uses MMA hardware accelerator to perform the convolution computation. Filter data is loaded into B panel of the MMA from memory using one streaming engine, while the input data is loaded into A vectors of the MMA using the other streaming engine. Result of the compute from MMA C panel is stored into memory using a stream address generator.
| [in] | handle | : Active handle to the kernel |
| [in] | pIn | : Pointer to buffer holding the input data |
| [in] | pFilter | : Pointer to buffer holding the filter data |
| [out] | pOut | : Pointer to buffer holding the output data |
Definition at line 200 of file DSPLIB_cascadeBiquad_ci.cpp.
| DSPLIB_STATUS DSPLIB_cascadeBiquad7Stage_exec_ci | ( | DSPLIB_kernelHandle | handle, |
| void *restrict | pIn, | ||
| void *restrict | pFilterCoeff, | ||
| void *restrict | pFilterVar, | ||
| 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_cascadeBiquad7Stage_exec.
The function uses MMA hardware accelerator to perform the convolution computation. Filter data is loaded into B panel of the MMA from memory using one streaming engine, while the input data is loaded into A vectors of the MMA using the other streaming engine. Result of the compute from MMA C panel is stored into memory using a stream address generator.
| [in] | handle | : Active handle to the kernel |
| [in] | pIn | : Pointer to buffer holding the input data |
| [in] | pFilter | : Pointer to buffer holding the filter data |
| [out] | pOut | : Pointer to buffer holding the output data |
Definition at line 209 of file DSPLIB_cascadeBiquad7stage_ci.cpp.
| DSPLIB_STATUS DSPLIB_cascadeBiquad_exec_cn | ( | DSPLIB_kernelHandle | handle, |
| void *restrict | pIn, | ||
| void *restrict | pFilterCoeff, | ||
| void *restrict | pFilterVar, | ||
| void *restrict | pOut | ||
| ) |
This function is the main execution function for the natural C implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_cascadeBiquad_exec.
| [in] | handle | : Active handle to the kernel |
| [in] | pIn | : Pointer to buffer holding the input data |
| [in] | pFilterCoeff | Pointer to buffer holding the filter coefficient data |
| [in] | pFilterVar | : Pointer to buffer holding the filter variable data |
| [out] | pOut | : Pointer to buffer holding the output data |
Definition at line 43 of file DSPLIB_cascadeBiquad_cn.cpp.
| DSPLIB_STATUS DSPLIB_cascadeBiquad_init_cn | ( | DSPLIB_kernelHandle | handle, |
| DSPLIB_bufParams2D_t * | bufParamsIn, | ||
| DSPLIB_bufParams1D_t * | bufParamsFilterCoeff, | ||
| DSPLIB_bufParams2D_t * | bufParamsFilterVar, | ||
| DSPLIB_bufParams2D_t * | bufParamsOut, | ||
| DSPLIB_cascadeBiquad_InitArgs * | pKerInitArgs | ||
| ) |
This function is the initialization function for the natural C implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_cascadeBiquad_init.
| [in] | handle | : Active handle to the kernel |
| [in] | bufParamsIn | : Pointer to the structure containing dimensional information of input buffer |
| [in] | bufParamsFilterCoeff | : Pointer to the structure containing dimensional information of filter coefficient buffer |
| [in/out] | bufParamsFilterVar : Pointer to the structure containing dimensional information of filter variable buffer | |
| [out] | bufParamsOut | : Pointer to the structure containing dimensional information of ouput buffer |
| [in] | pKerInitArgs | : Pointer to the structure holding init parameters |
Definition at line 31 of file DSPLIB_cascadeBiquad_cn.cpp.