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.

DM3730 GPMC Interface

Other Parts Discussed in Thread: DM3730

The GPMC description for DM3730 states  that the controller can access external memory in little-endian or big-endian formats.

We have a little endian processor core running a little-endian O/S, but the custom device we are interfacing to is big-endian.  How can we configure the GPMC to make the conversion for us?

regards

 

 

  • Newton,

     

    In order to convert from Big-endian to little, you will need to make use of the SDMA ( TRM 11.4.6)  module to set up a DMA channel between the GPMC and the peripheral that is going to use the data. The SDMA module has a built in conversion mechanism. The GPMC module itself does not do conversions. Also please note the register description in section 10.1.7.3 in the TRM. It states, "

    All GPMC registers are aligned to 32-bit address boundaries. All register file accesses, except to GPMC_NAND_DATA_i register, are little endian. If the GPMC_NAND_DATA_i register location is accessed, the endianness is access-dependent. "

    From reading this and some other notes, it seams the GPMC assumes the format to be little-endian unless the mentioned register is accessed. I have not done this personally, this is just my observations on the subject.

     

    Regards,

    JH