DSPLIB User Guide
DSPLIB_bexp_priv.h
Go to the documentation of this file.
1 /******************************************************************************
2  * *
3  * module name : DSPLIB *
4  * *
5  * module descripton : *
6  * *
7  * Copyright (C) 2017-2018 Texas Instruments Incorporated - https://www.ti.com/ *
8  * ALL RIGHTS RESERVED *
9  * *
10  ******************************************************************************/
11 
12 /********************************************************************************
13  * @file DSPLIB_bexp_priv.h
14  *
15  * @brief File to hold private parameter of function DSPLIB_bexp
16  *
17  * @version 0.1 - July 2023 : Initial Version
18  *
19  ********************************************************************************/
20 
21 #ifndef DSPLIB_BEXP_IXX_IXX_OXX_PRIV_H_
22 #define DSPLIB_BEXP_IXX_IXX_OXX_PRIV_H_
23 
24 #include "../common/DSPLIB_inlines.h"
25 #include "../common/DSPLIB_utility.h"
26 #include "DSPLIB_bexp.h"
27 
39 #define DSPLIB_BEXP_IXX_IXX_OXX_MAX_BITS_PER_ELEMENT (70)
40 
48 #define DSPLIB_BEXP_IXX_IXX_OXX_MIN_VECS_TO_ENABLE_SE_READS (4)
49 
54 #define DSPLIB_BEXP_IXX_IXX_OXX_PBLOCK_SIZE (2 * SE_PARAM_SIZE + 512)
55 
61 typedef DSPLIB_STATUS (*pFxnDSPLIB_bexp_exec)(DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pOut);
62 
89 template <typename dataType>
91  const DSPLIB_bufParams1D_t *bufParamsIn,
92  const DSPLIB_bufParams1D_t *bufParamsOut,
93  const DSPLIB_bexp_InitArgs *pKerInitArgs);
94 
118 template <typename dataType>
119 extern DSPLIB_STATUS DSPLIB_bexp_exec_ci(DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pOut);
120 
135 template <typename dataType>
136 extern DSPLIB_STATUS DSPLIB_bexp_exec_cn(DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pOut);
137 
141 typedef struct {
149  uint32_t blockSize;
150 
155 
161  uint32_t mainLoopCount;
162 
168 
171 
191 
192 #endif /* DSPLIB_BEXP_IXX_IXX_OXX_PRIV_H_ */
193 
194 /* ======================================================================== */
195 /* End of file: DSPLIB_bexp.h */
196 /* ======================================================================== */
DSPLIB_STATUS DSPLIB_bexp_init_ci(DSPLIB_kernelHandle handle, const DSPLIB_bufParams1D_t *bufParamsIn, const DSPLIB_bufParams1D_t *bufParamsOut, const DSPLIB_bexp_InitArgs *pKerInitArgs)
This function is the initialization function for the C7x implementation of the kernel....
DSPLIB_STATUS(* pFxnDSPLIB_bexp_exec)(DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pOut)
This is a function pointer type that conforms to the declaration of DSPLIB_bexp_exec_ci and DSPLIB_be...
DSPLIB_STATUS DSPLIB_bexp_init_cn(DSPLIB_kernelHandle handle, DSPLIB_bufParams2D_t *bufParamsIn, DSPLIB_bufParams2D_t *bufParamsOut)
This function is the initialization function for the natural C implementation of the kernel....
DSPLIB_STATUS DSPLIB_bexp_exec_cn(DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pOut)
This function is the main execution function for the natural C implementation of the kernel....
#define DSPLIB_BEXP_IXX_IXX_OXX_PBLOCK_SIZE
Macro to print the debug message.
DSPLIB_STATUS DSPLIB_bexp_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....
DSPLIB_STATUS_NAME DSPLIB_STATUS
Return value for DSPLIB functions.
Definition: DSPLIB_types.h:170
DSPLIB_STATUS_NAME
The enumeration of all status codes.
Definition: DSPLIB_types.h:151
void * DSPLIB_kernelHandle
Handle type for DSPLIB operations.
Definition: DSPLIB_types.h:172
Structure containing the parameters to initialize the kernel.
Definition: DSPLIB_bexp.h:112
Structure that is reserved for internal use by the kernel.
pFxnDSPLIB_bexp_exec execute
Function pointer to point to the right execution variant between DSPLIB_bexp_exec_cn and DSPLIB_bexp_...
uint32_t se1StartAddressByteOffset
The offset in bytes of SE1 start address with respect to start address of the input data....
bool isSEReadEnabled
Flag indicating if SE reads are enabled, set by DSPLIB_bexp_init that will be retrieved and used by D...
uint32_t blockSize
Size of input buffer for different batches DSPLIB_bexp_init that will be retrieved and used by DSPLIB...
uint32_t mainLoopCount
Number of times to loop over data with isSEReadEnabled == true will be ceil_division(number of native...
A structure for a 1 dimensional buffer descriptor.
A structure for a 2 dimensional buffer descriptor.