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.

TMS320F28388D: TMS320F28388D:

Part Number: TMS320F28388D

Hi,

Recently we are developing some 28388 board  using external SRAM in EXIF region.

But unfortunately the global and static variables declared in this region are not initialized correctly.

Could you explain why does it happen and how to resolve it?

Best Regards,

Kenny Woozlim

  • Hi,

    Can you confirm if you are seeing this problem only during initialization? Are you able to access the memory otherwise?

    Regards,
    Praveen

  • Hi,

    But unfortunately the global and static variables declared in this region are not initialized correctly.

    I am assuming by EXIF you mean using EMIF space. If yes, then this is expected because you may not have EMIF configured before _c_int00 function call. Is there any specific reason you are using EMIF space for the variables and not internal RAMs ? If you have to use the EMIF space only then you need to configure the EMIF before _c_int00 function call inside code_start function (in f2838x_codestartbranch.asm file).

    Regards,

    Vivek Singh

  • I appreciate your kind answer. 

    For our system charateristics, we need some variables backed-up, so willing to use external memory for variables and backup them with battery.

    If possible, Can I get some sample code for above function ,just you mentioned configuring EMIF before  c_int00 function?

    Regards,

    Kenny Woozlim

  • Thank you for your reply.

    Only problem during initializing, no problem when access,

    Maybe need configuring EMIF before initializing. 

    Regards,

    Kenny Woozlim

  • Kwansoo,

    You should expect a reply by tomorrow, the experts are out of the office today due to a local holiday.

    Best,
    Matthew

  • Hi Kwansoo,

    I am looking into this and will get back shortly.

    Thanks
    Vasudha

  • Thank you for your help.

    Still I'm  wondering why the EMIF in 320F28388  is not configured before starting main? 

    Maybe I know thousands of recent embedded controllers are equipped with expanded memory interface

    and easily can expand memory.

    320F28388 must be a very fantastic device with plentiful peripherals and high performance but  expanding memory is really frustrating!!

    Regards

    Kenny W.Lim

  • Hi,

    Were you able to resolve the issue?  Sorry for the delay. We don't have sample code as of now to demonstrate EMIF configuration before  c_int00 function. As Vivek mentioned, this needs to be done inside code_start function available in f2838x_codestartbranch.asm file. Usually EMIF is expected to be configured in main() just like other peripherals.

    For backing up the variables, one approach could be to write these variables to a fixed SRAM memory location while backing up, post the one time EMIF configuration and read it back from external memory to the same variable when required.

    Thanks

    Vasudha