This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F28379D: Memory Allocation

Part Number: TMS320F28379D

Tool/software:

Hi,

I'm using shared memory between CPU1 and CPU2 by allocating the memory to "MSGRAM_CPU1_TO_CPU2", using DATA_SECTION pragma command:

#pragma DATA_SECTION(cpu1_sharedData, "MSGRAM_CPU1_TO_CPU2")

I send the address of this variable through IPC messaging API (from CPU1 to CPU2). Everything works fine except when I increase the size of the variable (adding more members to the struct) beyond a certain point. I noticed that the address of the variable, received by CPU2 is corrupted. 

The issue is that I was expecting to see that this was happening by looking at the Memory Allocation report. In memory allocation tab, nothing indicates that there's an overflow in any part of the memory.

I'm wondering if I have to use another tool for this? or I'm not reading memory allocation correctly?

Here are the screen-shots of memory allocation report:

CPU1: 

CPU2: 

  • Hi,

    I send the address of this variable through IPC messaging API (from CPU1 to CPU2). Everything works fine except when I increase the size of the variable (adding more members to the struct) beyond a certain point. I noticed that the address of the variable, received by CPU2 is corrupted. 

    What is the size of the variable after which this error start happening ?

    Also please provide the expected value vs corrupted value ? 

    Also how are you passing the address to CPU2 ? 

    Vivek Singh