xWRL6432 MMWAVE-L-SDK  05.04.00.01
aoaprochwa_internal.h
Go to the documentation of this file.
1 /*
2  * NOTE:
3  * (C) Copyright 2023 Texas Instruments, Inc.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  *
9  * Redistributions of source code must retain the above copyright
10  * notice, this list of conditions and the following disclaimer.
11  *
12  * Redistributions in binary form must reproduce the above copyright
13  * notice, this list of conditions and the following disclaimer in the
14  * documentation and/or other materials provided with the
15  * distribution.
16  *
17  * Neither the name of Texas Instruments Incorporated nor the names of
18  * its contributors may be used to endorse or promote products derived
19  * from this software without specific prior written permission.
20  *
21  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32  */
40 /**************************************************************************
41  *************************** Include Files ********************************
42  **************************************************************************/
43 #ifndef DPU_AoAPROCHWA_INTERNAL_H
44 #define DPU_AoAPROCHWA_INTERNAL_H
45 
46 /* Standard Include Files. */
47 #include <stdint.h>
48 #include <stdlib.h>
49 #include <stddef.h>
50 #include <string.h>
51 #include <stdio.h>
52 #include <math.h>
53 
54 /* mmwave SDK include files */
58 
59 #ifdef __cplusplus
60 extern "C" {
61 #endif
62 
72 typedef struct aoaProcHWAObj_t
73 {
75 
77  AoAProc_dpParams params;
78 
81 
84 
87 
90 
93 
94  // /*! @brief aoaProc HWA data input paramset trigger */
95  // uint8_t dataInTriggerRangeFFT[2];
96 
97  // /*! @brief aoaProc HWA data output paramset trigger */
98  // uint8_t dataOutTriggerMaxN[2];
99 
102 
105 
108 
110  cmplx16ImRe_t *radarCubebuf;
111 
113  uint32_t hwaMemBankAddr[SOC_HWA_NUM_MEM_BANKS];
114 
117 
119  uint32_t numProcess;
120 
123 
126 
129 
132 
134  uint16_t hwaDoppNumLoops;
135 
138 
140  uint16_t hwaAoANumLoops;
141 
143  uint16_t hwaAoANumLoops1;
144 
147 
150 
153 
156 
158  uint16_t *rangeGatesCount;
159 
161 
162 #ifdef __cplusplus
163 }
164 #endif
165 
166 #endif
aoaProcHWAObj::hwaHandle
HWA_Handle hwaHandle
EDMA Handle.
Definition: aoaprochwa_internal.h:80
DPU_AoAProcHWA_HwaCfg
AoAProc DPU HWA configuration parameters.
Definition: aoaprochwa.h:211
aoaProcHWAObj::inProgress
bool inProgress
AoAProc DPU is in processing state.
Definition: aoaprochwa_internal.h:116
aoaProcHWAObj::hwaDoneSemaHandleAoA
SemaphoreP_Object hwaDoneSemaHandleAoA
HWA Processing Done (AoA) semaphore Handle.
Definition: aoaprochwa_internal.h:107
SOC_HWA_NUM_MEM_BANKS
#define SOC_HWA_NUM_MEM_BANKS
number of HWA memory banks
Definition: cslr_soc_defines.h:281
aoaProcHWAObj::hwaParamStopIdxDopp
uint8_t hwaParamStopIdxDopp
HWA stop paramset index - Doppler FFT and compensation.
Definition: aoaprochwa_internal.h:149
aoaProcHWAObj::numProcess
uint32_t numProcess
Total number of AoAProc DPU processing.
Definition: aoaprochwa_internal.h:119
aoaProcHWAObj::hwaAoANumLoops
uint16_t hwaAoANumLoops
HWA number of loops for AoA and max of Elevation-Azimuth FFT.
Definition: aoaprochwa_internal.h:140
aoaProcHWAObj::hwaParamStartIdxAoA
uint8_t hwaParamStartIdxAoA
HWA start paramset index - AoA Calculation.
Definition: aoaprochwa_internal.h:152
aoaProcHWAObj::edmaDoneSemaHandle
SemaphoreP_Object edmaDoneSemaHandle
aoaProc HWA data input paramset trigger *‍/ uint8_t dataInTriggerRangeFFT[2];
Definition: aoaprochwa_internal.h:101
aoaprochwa.h
Implements Datapath Angle of Arrival processing functionality using the HWA. Based on the RF paramete...
aoaProcHWAObj::radarCubebuf
cmplx16ImRe_t * radarCubebuf
Pointer to Radar Cube buffer.
Definition: aoaprochwa_internal.h:110
aoaProcHWAObj::hwaDoppNumLoops
uint16_t hwaDoppNumLoops
HWA number of loops for Doppler FFT and compensation.
Definition: aoaprochwa_internal.h:134
aoaProcHWAObj::edmaIn_rangeFFT
DPU_AoAProc_Edma edmaIn_rangeFFT
aoaProc HWA configuration before Doppler FFT is applied
Definition: aoaprochwa_internal.h:89
aoaProcHWAObj::edmaIn_dopplerFFT
DPU_AoAProc_Edma edmaIn_dopplerFFT
aoaProc HWA configuration before AoA FFT's are applied
Definition: aoaprochwa_internal.h:92
aoaProcHWAObj::hwaParamStopIdxAoA
uint8_t hwaParamStopIdxAoA
HWA stop paramset index - AoA Calculation.
Definition: aoaprochwa_internal.h:155
aoaProcHWAObj::hwaDmaTriggerAoAPing
uint8_t hwaDmaTriggerAoAPing
DMA trigger source channel (before AoA FFT) for Ping param set.
Definition: aoaprochwa_internal.h:128
aoaProcHWAObj
AoAProcHWA DPU Object.
Definition: aoaprochwa_internal.h:73
aoaProcHWAObj::hwaDoppNumLoops1
uint16_t hwaDoppNumLoops1
HWA number (1-basically if the no. is odd) of loops for Doppler FFT and compensation.
Definition: aoaprochwa_internal.h:137
aoaProcHWAObj::hwaAoANumLoops1
uint16_t hwaAoANumLoops1
HWA number (1-basically if the no. is odd) of loops for AoA and max of Elevation-Azimuth FFT.
Definition: aoaprochwa_internal.h:143
aoaproc_common.h
Implements Common definition across AoAProc DPU.
aoaProcHWAObj::hwaDoneSemaHandleDopp
SemaphoreP_Object hwaDoneSemaHandleDopp
HWA Processing Done (Doppler) semaphore Handle.
Definition: aoaprochwa_internal.h:104
aoaProcHWAObj::hwaDmaTriggerDoppPing
uint8_t hwaDmaTriggerDoppPing
DMA trigger source channel (before Doppler FFT) for Ping param set.
Definition: aoaprochwa_internal.h:122
aoaProcHWAObj::hwaParamStartIdxDopp
uint8_t hwaParamStartIdxDopp
HWA start paramset index - Doppler FFT and compensation.
Definition: aoaprochwa_internal.h:146
DPU_AoAProcHWA_InitParams
AoAProc DPU initial configuration parameters.
Definition: aoaprochwa.h:194
aoaProcHWAObj::hwaDmaTriggerAoAPong
uint8_t hwaDmaTriggerAoAPong
DMA trigger source channel (before AoA FFT) for Pong param set.
Definition: aoaprochwa_internal.h:131
aoaProcHWAObj::hwaCfg
DPU_AoAProcHWA_HwaCfg hwaCfg
aoaProc HWA configuration
Definition: aoaprochwa_internal.h:86
EDMA_Handle
void * EDMA_Handle
A handle that is returned from a EDMA_open() call.
Definition: edma/v0/edma.h:471
aoaProcHWAObj::rangeGatesCount
uint16_t * rangeGatesCount
Doppler FFT to be run on those range gates which have a maximum in first 50-points.
Definition: aoaprochwa_internal.h:158
aoaProcHWAObj::hwaDmaTriggerDoppPong
uint8_t hwaDmaTriggerDoppPong
DMA trigger source channel (before Doppler FFT) for Pong param set.
Definition: aoaprochwa_internal.h:125
SemaphoreP_Object
Opaque semaphore object used with the semaphore APIs.
Definition: SemaphoreP.h:59
aoaProcHWAObj::initParms
DPU_AoAProcHWA_InitParams initParms
Definition: aoaprochwa_internal.h:74
aoaProcHWAObj::params
AoAProc_dpParams params
Data path common parameters used in aoaProc.
Definition: aoaprochwa_internal.h:77
aoaproc_internal.h
HWA_Handle
void * HWA_Handle
A handle that is returned from a HWA_open() call.
Definition: hwa/v0/hwa.h:620
DPU_AoAProc_Edma
AoAProc DPU EDMA configuration parameters.
Definition: aoaproc_common.h:110
aoaProcHWAObj::edmaHandle
EDMA_Handle edmaHandle
EDMA Handle.
Definition: aoaprochwa_internal.h:83