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.

TMS320F28377D: GS Memory size - what is a byte

Part Number: TMS320F28377D


I am using the F28377D 'Delfino' DSC.  I thought that a DSC byte is 16-bit.

I am setting up shared RAM between CPUs. 

The C28x Memory Map states GS0 is 4K x 16.  I assumed this meant 4096 locations, each 16-bits wide.

So if I am using Uint32 it would be 2048 locations, each 32-bits wide.

But when I try to assign a Uint32 array of size 1800, I get an error.  When I reduce the size to 960, no error.

CODE:

Uint32 wr1_data[1800];      // mapped to GS0 of shared RAM

#pragma DATA_SECTION(wr1_data, "SHARERAMGS0");

ERROR:

C28xx_CPU2: Error occurred during flash operation: Unable to find symbol "ApiVersion" in progw.alg

C28xx_CPU2: Flash Programmer: Library version mismatch. Operation Cancelled.

C28xx_CPU2: Please make sure the memory location you are programming have not already been programmed.

Is GS memory 8-bit wide?

  • Hi John,

    The C28x Memory Map states GS0 is 4K x 16.  I assumed this meant 4096 locations, each 16-bits wide.

    That is correct. It's 8KB RAM block.  Have you checked your linker cmd file to make sure SHARERAMGS0 is defined properly and nothing else is placed in that section?

    Regards,

    Vivek Singh