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.

C6713 DSP使用fread函数速度太慢是什么原因啊?



我调试的CPU是 C6713,在CCS中使用fopen()函数来打开文件,使用fread()函数读入到一个Buffer中去,再调用自己写的wiriteFlash()完成文件的写入操作。但是现在发现在使用fread时速度会相当慢,需要五到十秒的时间才能读满一个4096字节的buffer,这是为什么啊?我也尝试了其它大小的buffer,像256,1024,4096,20480等字节大小的BUFFER,但是速度一点也不快。效率太低。原因是什么啊?

我看之前有一个C6416的工程中也使用了fopen,fread函数来完成类似的工作,那边的速度明显要比我这里快多了。使用的仿真器也都是speed xds510 plus。不太懂这为什么呢?

PS:我在 OMAPL138上面建的下载工程也是相同的卡在了fread()上面,我该如何提高fread的读效率呢?谢谢!

  • 用CCS3.3会快一些。后来的CCS用了eclipse架构后就慢了,这个慢是因为CCS跟PC之间的原因。跟芯片没关系。

    如果这个文件内容是会重复用的,建议读完一次后,用save memory的方法保存到文件,下次用load memory的方法导到指定内存区域,这样会比读文件快一些。

  • 额,这样。我现在在使用CCS3.3,速度好慢。我要固化的程序是其它类型的数据,看样子使用这种方法是不科学的。

    谢谢解答。我可能得通过上位机软件来完成数据加载比较合适了。