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.

using SPI flash on 5535 ezdsp

Hi

As I have ran out of memory, is there a way I can use the external Flash on the 5535 ezdsp board..? Can I put any of my program or data memory section on the flash and still meet the real time requirements..? If yes what is the procedure and what all care I should take..?

Regards,

Ashok

  • Hi,

    Team is working on and will provide a response on your request.

    Thanks & regards,

    Sivaraj K

  • Thanks Steve,

    But since 5535 doesn't have EMIF, how do we handle this overlaying method..?

    Also the discussion on that thread doesn't conclude anything on the usage of using SPI flash for the excess code/data memory.

    Need some more pointers...

    Thanks & Regards,

    Ashok

  • Internal memory size is usually one of the differentiater in selecting a device to use. There is really no easy solution to your question. My suggestion would be reducingt your code size.

    Regards.

  • Thanks for the suggestion.

    But I have my own problems.

    For example, I need Tone detection unit from voLIB which requires only the ecomem module from SDK but there is lot of other stuff with SDK which I don't want but I have no way to remove them.

    Similarly I don't need HDLC framing code with fax relay as I have a separate modem sitting above my layer which will take care of HDLC. But I have no way to remove the dependency of FM and FIU over HDLC.

    Like these I have been forced to use libraries which I don't need completely. These are also causing the overshoot in memory estimation which we did by just considering the individual module's memory requirements and not considering these kind of overheads.

    I guess you can understand.

    Regards,

    Ashok

  • Hi Ashok,

    As suggested by Steve, reducing code size is the easiest option if your project does not allow you to use different chip with external memory. You need to spend good amount of time to build a system with overlays.

    I am not sure about how the SDK you are using is designed but have you tried to disable the linking of functions which are not in use?. You can do this by enabling the option "Place each function in a separate subsection (--gen_func_subsections, -mo)" in CCS project properties. You can find this option in 'Build->C5500 Compiler->Runtime Model Options' menu in project properties window. I have not used voLIB but in general DSP libraries are built to exclude the functions by default from linking which are not be used by the application programs.

    You can also consider the option of re-using cinit section. If you have many initialized variables in your system you will have large cinit section which will not be used once your program is loaded and the variables are initialized. You can use this memory to link to your data pointers dynamically. However you should have a good control on the memory allocations to safely use this option.

    - Pratap.

  • Hi Pratap.

    Thanks a lot for your detailed reply. I will try these things.

    Just wanted to know in worst case, can I use flash to have 2 mutually exclusive modules and bring in only the required module to internal memory when needed during run time..? Is this possible...?

    If yes, then please let me know how to program flash in this way..? How to get the required module at the required time..?

    Regards,

    Ashok

  • Hi Ashok,

    Technically it is possible to store some part of your program in flash and load it whenever you need. But compiler/linker does not have any options to build your code for such purpose. You need to have your own program which can identify the need for loading overlays and loads the symbols from flash to internal memory properly. When you are using overlays, you need to make sure all the references to overlay functions are through function pointers. You should link all the overlays with main program properly so that there will be memory/symbol conflicts.

    - Pratap.

  • Thanks a lot Pratap.

    Can you provide some example code that does this overlay using flash..? This will help me a lot in knowing the exact procedure and avoiding all the pitfalls...

    Regards,

    Ashok

  • Hi Ashok,

    I don't have any example code with overlays for flash. 

    - Pratap.