I am running the ezdsp_demo program on the ezdspc5502 board. When I compile the program to run on external SDRAM it runs ~100 times slower than when it runs in DARAM. I can understand *some* difference in the operating speed, but 100x? This is program a simple loop that toggles GPIO7, no heavy DSP math. What could be causing this slow performance? (When I look at ST3_CAEN, it is enabled).
Thx,
MikeH
...well, from SPRA924A.
ConclusionThe C5501 and C5502 DSPs were designed as low-cost DSPs for low-cost solutions. In order toachieve the best performance with this processor, the system designer must follow theguidelines provided in the application report.• Code placed in external memory and I-Cache enabled• Data located in internal memory at run time• External Memory Interface (EMIF) maximizes clock frequencyThe examples provided in this application report have shown that when these guidelines arefollowed the performance is often comparable to the C5510 executing code from internalmemory.
So, after modifying my code to include:
#include "csl_icache.h" ICACHE_enable();
#include "csl_icache.h"
ICACHE_enable();
...the program appears to run at the appropriate (full) speed.
I sure wish we could get a little TI tech support on this forum....
Thank you for your post Mike. I was having the same problem and managed to solve it thanks to your answer to your own problem :-)
Glad it helped. However, if you are considering the C5502 you may also want to have a look at this post also.
http://e2e.ti.com/support/dsp/tms320c5000_power-efficient_dsps/f/109/t/182472.aspx