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.

AM3359的DDR执行速度

Other Parts Discussed in Thread: AM3359

我参考了starterware的定时器,用来做时间轴

测试过程中发现速度很慢,这里有两个疑点。

 

1.DMTimer选择内部24M时钟源,不分频的情况下是不是意味着Counter的频率就是24Mhz。

2.因为我操作MMU和Cache都是直接引用了starterware的代码,不能确定操作是否成功。

 

大家有啥建议不???

 

Ps:我测试一个延时的函数.

//==================

for(i=0;I<10;I++)

     ;

//==================

//==================

for(i=0;I<11;I++)

     ;

//==================

 

以上两段代码执行的时间差,居然是12个counter计数值,多了一个循环延时而已。

  • 速度慢,怎么慢了,和ddr有什么关系?

  • 我看到过网上有人对335x的评测,性能还是非常可以的,所以我的疑惑是这个count计数的频率是不是按照24MHZ计算(starterware的代码未作修改),也就是说12个count所花的时间是500ns。

    另外还有一个我在EEWorld上看到的,也问一下明兄,debug和release版本的区别主要在哪里

  • 我在E2E上找到答案了,是对MMU的属性设置问题,starterware默认为shareable,改成NON-shareable后差别近100倍性能!

  • 还是没看明白,你到底测的是什么?

  • 比如说,一千条加法指令的执行时间,数据和指令全部放在DDR2里面,测试Cache打开和关闭带来的影响,以及与其他平台作对比,比如说ARM9,比如说Powerpc等,在AM3359的MMU属性设置成Shareable情况下,3359的性能还不如ARM9,但是在NON-Shareable的情况下,性能几乎提升了100倍,这样说应该能理解了吧。

     

    也就是说,这个属性对于3359这样A8架构的片子产生了这么大的影响,让我开始以为是DDR的速度慢

  • 现在你这么说,我理解的,主要是开了non shareable,也是non cacheable