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.

TMS570LC4357: EMIF memory browser inconsistent with written data.

Part Number: TMS570LC4357
Other Parts Discussed in Thread: HALCOGEN

Hello, I'm using the Hercules HDK and I've successfully gotten the example_emif_sdram.c example working to demonstrate successful configuration of the emif peripheral. I have removed the blinky code and tailored the main.c file to now write 0xA5A5 to the first 100 16-bit words in the SDRAM memory region. I have modified the example HALCoGen configuration by disabling cache and making the SDRAM Memory region (RW).

After writing 0xA5A5 I see 0xE5A5 in the memory browser indicating that D15-D14 are not as intended.

in main:

emif_SDRAMInit();

const uint16_t *buffer_loc = 0x80000000;

uint32_t i;
for( i=0; i<100; i++ )
{
    *(uint16_t *)&buffer_loc[i] = 0x5000;
}

I have duplicated this similar behavior on D15-D14 for writing other data values: 0x5000 sets 0xD000, 0x7000 sets 0xF000, and 0x9000 sets 0xD000.  

Am I missing a fundamental understanding? Why am I seeing this behavior for D15-D14?