DSPLIB User Guide
DSPLIB_qrd_solver_priv.h
Go to the documentation of this file.
1 /******************************************************************************
2  * *
3  * module name :DSPLIB *
4  * *
5  * module descripton :Digital Signal Processing 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_qrd_solver_priv.h
14  *
15  * @brief File to hold private parameter of function DSPLIB_mat_trans
16  *
17  * @version 0.1 - Jun 2023 : Initial Version
18  *
19  ********************************************************************************/
20 
21 #ifndef DSPLIB_QRD_SOLVER_IXX_IXX_OXX_PRIV_H_
22 #define DSPLIB_QRD_SOLVER_IXX_IXX_OXX_PRIV_H_
23 
24 #include "../common/DSPLIB_utility.h"
25 #include "../DSPLIB_matTrans/DSPLIB_matTrans_priv.h"
26 #include "DSPLIB_qrd_solver.h"
27 
39 #define DSPLIB_QRD_SOLVER_IXX_IXX_OXX_PBLOCK_SIZE (9 * SE_PARAM_SIZE)
40 
47  void *restrict pQ,
48  void *restrict pR,
49  void *restrict pB,
50  void *restrict pY,
51  void *restrict pX,
52  void *restrict pD,
53  void *restrict pR1);
54 
88 template <typename dataType>
90  DSPLIB_bufParams2D_t *bufParamsQ,
91  DSPLIB_bufParams2D_t *bufParamsR,
92  DSPLIB_bufParams1D_t *bufParamsB,
93  DSPLIB_bufParams1D_t *bufParamsY,
94  DSPLIB_bufParams1D_t *bufParamsX,
95  const DSPLIB_qrdSolverInitArgs *pKerInitArgs);
96 
122 template <typename dataType>
124  void *restrict pQ,
125  void *restrict pR,
126  void *restrict pB,
127  void *restrict pY,
128  void *restrict pX,
129  void *restrict pD,
130  void *restrict pR1);
131 
155 template <typename dataType>
157  DSPLIB_bufParams2D_t *bufParamsQ,
158  DSPLIB_bufParams2D_t *bufParamsR,
159  DSPLIB_bufParams1D_t *bufParamsB,
160  DSPLIB_bufParams1D_t *bufParamsY,
161  DSPLIB_bufParams1D_t *bufParamsX,
162  const DSPLIB_qrdSolverInitArgs *pKerInitArgs);
163 
183 template <typename dataType>
185  void *restrict pQ,
186  void *restrict pR,
187  void *restrict pB,
188  void *restrict pY,
189  void *restrict pX,
190  void *restrict pD,
191  void *restrict pR1);
195 typedef struct {
204  uint32_t widthR;
206  uint32_t heightR;
208  int32_t strideQ;
210  int32_t strideR;
216 
217 #endif /* DSPLIB_QRD_SOLVER_IXX_IXX_OXX_PRIV_H_ */
218 
219 /* ======================================================================== */
220 /* End of file: DSPLIB_qrd_solver_priv.h */
221 /* ======================================================================== */
DSPLIB_STATUS DSPLIB_qrd_solver_exec_cn(DSPLIB_kernelHandle handle, void *restrict pQ, void *restrict pR, void *restrict pB, void *restrict pY, void *restrict pX, void *restrict pD, void *restrict pR1)
This function is the main execution function for the natural C implementation of the kernel....
DSPLIB_STATUS DSPLIB_qrd_solver_exec_ci(DSPLIB_kernelHandle handle, void *restrict pQ, void *restrict pR, void *restrict pB, void *restrict pY, void *restrict pX, void *restrict pD, void *restrict pR1)
This function is the main execution function for the C7x implementation of the kernel....
#define DSPLIB_QRD_SOLVER_IXX_IXX_OXX_PBLOCK_SIZE
Macro to define the size of bufPblock array of DSPLIB_qrd_solver_PrivArgs structure.
DSPLIB_STATUS DSPLIB_qrd_solver_init_ci(DSPLIB_kernelHandle handle, DSPLIB_bufParams2D_t *bufParamsQ, DSPLIB_bufParams2D_t *bufParamsR, DSPLIB_bufParams1D_t *bufParamsB, DSPLIB_bufParams1D_t *bufParamsY, DSPLIB_bufParams1D_t *bufParamsX, const DSPLIB_qrdSolverInitArgs *pKerInitArgs)
This function is the initialization function for the C7x implementation of the kernel....
DSPLIB_STATUS DSPLIB_qrd_solver_init_cn(DSPLIB_kernelHandle handle, DSPLIB_bufParams2D_t *bufParamsQ, DSPLIB_bufParams2D_t *bufParamsR, DSPLIB_bufParams1D_t *bufParamsB, DSPLIB_bufParams1D_t *bufParamsY, DSPLIB_bufParams1D_t *bufParamsX, const DSPLIB_qrdSolverInitArgs *pKerInitArgs)
This function is the initialization function for the natural C implementation of the kernel....
DSPLIB_STATUS(* pFxnDSPLIB_qrd_solver_exec)(DSPLIB_kernelHandle handle, void *restrict pQ, void *restrict pR, void *restrict pB, void *restrict pY, void *restrict pX, void *restrict pD, void *restrict pR1)
This is a function pointer type that conforms to the declaration of DSPLIB_qrd_solver_exec_ci and DSP...
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 that is reserved for internal use by the kernel.
Structure containing the parameters to initialize the kernel.
Structure that is reserved for internal use by the kernel.
int32_t strideR
Stride between rows of R output data matrix
int32_t strideQ
Stride between rows of Q output data matrix
pFxnDSPLIB_qrd_solver_exec execute
Function pointer to point to the right execution variant between DSPLIB_qrd_solver_exec_cn and DSPLIB...
uint32_t heightR
Height of input data matrix
DSPLIB_matTrans_PrivArgs pMatTransKerPrivArgs
Privargs for the matTrans kernel.
uint32_t widthR
Size of input buffer for different batches DSPLIB_qrd_solver_init that will be retrieved and used by ...