6678 访问ddr3

硬件环境: 6678 外挂两片DDR3 1333, 单片容量2GB、 32bit位宽,硬件上是把两片DDR3拼成了64比特位宽使用,

有几个疑问想请教下专家:

1:目前已经按照keystone例程的初始化完毕,初始化时按照1333Mhz的速率配置的,相关寄存器的初始化参数是按照TI提供的参数计算的EXCEL表格算出来的。

(a)   初始化时用的KeyStone_DDR_init(100,40,3,NULL);         // 参考钟100M*倍频40/分频3=1333.3333Mhz 

      DDR3参考钟经过倍频分频后得到的1333.3333是最接近1333Mhz的参数,不完全相等,这个差值会对DDR3的使用有影响吗,硬件实测发现读写并无误码。

(b)如果想要让DDR3实际运行在800Mhz速率,相关初始化参数是不是必须用EXCEL重新算一遍,还是说按照之前1333Mhz的速率算出来的参数能够向下兼容自适应800Mhz的运行需求,不再需要进行配置修改。

2::6678 访问ddr3时,假如以Uint32型(32比特)为单位进行数据读取,     从首地址开始遍历访问2GB地址空间,那么这些读出来的数据是不是全都都从一片DDR3 里读出来的,另片DDR3并未出任何数据?

3:6678 访问ddr3时,假如以long long型(64比特)为单位进行数据读取,从首地址开始遍历访问2GB地址空间,那么这些读出来的数据,对于每一个64比特的数据,是不是高32比特来自一号DDR3,低32比特来自2号DDR3,最终拼成了64比特。

请专家有空解答一下,多谢