Part Number: TMS320F28388D
Dear team:
My customer tested the dual core communication of f28388d chip and used the internal IPC bus for transmission. Occasionally, the flag bit of the control register failed to respond.
CPU1 uses the SendIpcCommand function to notify CPU2 to transmit data. At the same time, CPU1 waits for CPU2 to respond to the result through WaitForIpcAck. After data processing, CPU2 responds through the SendIpcCommandAck function.
However, CPU1 will occasionally enter the dead cycle during debugging. while ((IpcRegs.IPCFLG.all & (1UL << flag)) != 0x00000000) {;}
Use the emulator to check the "IPCFLG" register(IPC remote flag status register) of CPU1. Only by manually resetting the IPCACK bit in CPU2, can the program push out the dead cycle and continue to execute.
What causes it?
Best regards




