Tool/software:
Hi, TI experts:
During internal power cycling tests On Custom board, the C7x gets stuck inside the function HeapP_construct, occurring in both C7x_1 and C7x_2. When this issue occurs, MCU2_0 operates normally. The occurrence probability varies between 1 in 22 and 1 in 200 times.
When the hang occurs, it is not possible to connect to the C7x core via CCS
We discovered several anomalies with C7x_1 and C7x_2 (everything is normal on MCU2_0):
A. The assignment of variables appears ineffective — even when the C7x operates normally, this persists. In the vHeapCreateStatic function within Heap_internal.c, there is an assignment operation: heap->xTotalHeapSize = xTotalHeapSize; After assignment, printing heap->xTotalHeapSize yields incorrect results, while theoretically, it should display the value of xTotalHeapSize.
B. The size of the sizeof(struct_type) is zero — even when the C7x operates normally, this is observed. In the function HeapP_construct, there is an assertion DebugP_assert( sizeof(StaticHeap_t) < sizeof(HeapP_Object) ); By adding print statements, it was discovered that sizeof(HeapP_Object) is zero, whereas on MCU2_0, it is 128 bytes. This structure is supposed to be non-empty.
During power cycling tests on the EVM board, the same issue occurred once out of 400 cycles (log attached: ti-evm-c7x-hang.txt).
Can you please give us some guides to analyze this issue?
Our SDK version:
RTOS: 10.00.00.05 (19 Aug 2024)
LINUX: 10.00.00.08 (19 Aug 2024)
BRS