DSPLIB User Guide
DSPLIB_minerror_priv.h
Go to the documentation of this file.
1 /******************************************************************************
2  * *
3  * module name :DSPLIB *
4  * *
5  * module descripton :Matrix Multiply Accelerator Library module for C7x+MMA *
6  * *
7  * Copyright (C) 2017-2018 Texas Instruments Incorporated - https://www.ti.com/ *
8  * ALL RIGHTS RESERVED *
9  * *
10  ******************************************************************************/
11 
12 /********************************************************************************
13  * @file DSPLIB_minerror_priv.h
14  *
15  * @brief File to hold private parameter of function DSPLIB_minerror
16  *
17  * @version 0.1 - Mar 2022 : Initial Version
18  *
19  ********************************************************************************/
20 
21 #ifndef DSPLIB_MINERROR_IXX_IXX_OXX_PRIV_H_
22 #define DSPLIB_MINERROR_IXX_IXX_OXX_PRIV_H_
23 
24 #include "../common/DSPLIB_utility.h"
25 #include "DSPLIB_minerror.h"
26 
39 #define DSPLIB_MINERROR_IXX_IXX_OXX_PBLOCK_SIZE (2 * SE_PARAM_SIZE + 1 * DSPLIB_PARAM_SIZE + 2 * sizeof(int32_t))
46  void *restrict pIn,
47  void *restrict pErrCoefs,
48  const int *restrict pMaxIndex,
49  const void *restrict pMaxVal);
50 
79 template <typename dataType>
81  const DSPLIB_bufParams2D_t *bufParamsIn,
82  const DSPLIB_bufParams1D_t *bufParamsErrCoefs,
83  const DSPLIB_bufParams1D_t *bufParamsOutIndex,
84  const DSPLIB_bufParams1D_t *bufParamsOutVal,
85  const DSPLIB_minerror_InitArgs *pKerInitArgs);
86 
114 template <typename dataType>
116  void *restrict pIn,
117  void *restrict pErrCoefs,
118  const int *restrict pMaxIndex,
119  const void *restrict pMaxVal);
120 
138 template <typename dataType>
140  void *restrict pIn,
141  void *restrict pErrCoefs,
142  const int *restrict pMaxIndex,
143  const void *restrict pMaxVal);
144 
148 typedef struct {
156  uint32_t vecInSize;
158  uint32_t errCoefsSize;
159  uint32_t strideIn;
160  int32_t mainLoopCount;
161 
164 
187  DSPLIB_bufParams2D_t *bufParamsIn,
188  DSPLIB_bufParams1D_t *bufParamsErrCoefs,
189  const int *pMaxIndex,
190  const void *pMaxVal);
191 
192 #endif /* DSPLIB_MINERROR_IXX_IXX_OXX_PRIV_H_ */
193 
194 /* ======================================================================== */
195 /* End of file: DSPLIB_minerror.h */
196 /* ======================================================================== */
DSPLIB_STATUS DSPLIB_minerror_init_cn(DSPLIB_kernelHandle handle, DSPLIB_bufParams2D_t *bufParamsIn, DSPLIB_bufParams1D_t *bufParamsErrCoefs, const int *pMaxIndex, const void *pMaxVal)
This function is the initialization function for the natural C implementation of the kernel....
#define DSPLIB_MINERROR_IXX_IXX_OXX_PBLOCK_SIZE
Macro to define the size of bufPblock array of DSPLIB_minerror_PrivArgs structure.
DSPLIB_STATUS DSPLIB_minerror_init_ci(DSPLIB_kernelHandle handle, const DSPLIB_bufParams2D_t *bufParamsIn, const DSPLIB_bufParams1D_t *bufParamsErrCoefs, const DSPLIB_bufParams1D_t *bufParamsOutIndex, const DSPLIB_bufParams1D_t *bufParamsOutVal, const DSPLIB_minerror_InitArgs *pKerInitArgs)
This function is the initialization function for the C7x implementation of the kernel....
DSPLIB_STATUS(* pFxnDSPLIB_minerror_exec)(DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pErrCoefs, const int *restrict pMaxIndex, const void *restrict pMaxVal)
This is a function pointer type that conforms to the declaration of DSPLIB_minerror_exec_ci and DSPLI...
DSPLIB_STATUS DSPLIB_minerror_exec_ci(DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pErrCoefs, const int *restrict pMaxIndex, const void *restrict pMaxVal)
This function is the main execution function for the C7x implementation of the kernel....
DSPLIB_STATUS DSPLIB_minerror_exec_cn(DSPLIB_kernelHandle handle, void *restrict pIn, void *restrict pErrCoefs, const int *restrict pMaxIndex, const void *restrict pMaxVal)
This function is the main execution function for the natural C 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
A structure for a 1 dimensional buffer descriptor.
A structure for a 2 dimensional buffer descriptor.
Structure containing the parameters to initialize the kernel.
Structure that is reserved for internal use by the kernel.
uint32_t errCoefsSize
Size of error coefficients vector
pFxnDSPLIB_minerror_exec execute
Function pointer to point to the right execution variant between DSPLIB_minerror_exec_cn and DSPLIB_m...
uint32_t vecInSize
Size of input data DSPLIB_minerror_init that will be retrieved and used by DSPLIB_minerror_exec