TI中文支持网
TI专业的中文技术问题搜集分享网站

关于6670 DDR3使用的问题

  各位TI的工程师:

      我现在使用TI 6670开发板,我想做的是访问DDR3对应的地址空间(即0x80000000开始的地址空间),通过查询资料发现,需要配置DDR3 EMIF寄存器才可以访问DDR3的地址。我下载了论坛中keystone_Memory.zip这个示例程序,并将其中Memory_Test这个工程加入CCS执行,但是程序执行时发现,在执行完配置EMIF寄存器的相应代码后,DDR3 EMIF寄存器(即0x21000000开始的地址)值并没有改变(感觉好像这块空间是只读的),并且DDR3对应的空间也无法访问。我查了下6670的架构,看DDR3 EMIF寄存器需要通过MSMC访问,请问如果我想要访问DDR3,还需要设置什么?多谢! 

Andy Yin1:

DDR3 EMIF config space地址空间0x21000000需要配置XMC MPAX与相应的物理地址映射,这块memory是可读的,你用的程序版本可能有点旧,在配置文件ccxml中选择相应的gel文件,运行gel文件就会初始化EMIF配置及DDR3控制器。

或者你可以下载附件的最新memory test 程序测试。

Billy smith:

回复 Andy Yin1:

你好,你给的这个工程我加载不了,我这的ccs编译器版本只有7.2.2和7.3.4,而您给的程序需要7.4的编译器。另外,是不是这个意思:如果不配置mpax将ddr3 EMIF寄存器(也就是0x21000000)映射到某一地址,该地址就不可访问?麻烦解答下,谢谢了!

Andy Yin1:

回复 Billy smith:

可以选择你安装的编译器没关系。

DDR3 EMIF寄存器空间的逻辑地址是0x21000000开始,物理地址是0x1 0000 0000开始的,他们并不是一一对应,所以在访问之前需要重配MPAX进行地址映射。可以查看之前给你的代码中有一个mpax configure table中有相应的元素配置,或者查看gel文件中也有类似首先对DDR3控制寄存器的重映射,之后再进行DDR3 controller的配置。

Billy smith:

回复 Andy Yin1:

谢谢,上面的问题已经解决。另外有个问题,主程序在执行过程中只是在mpax寄存器中将ddr3 EMIF这块寄存器映射到0x100000000这个地址上,没有去配置ddr3 emif寄存器,但是程序还是执行成功,成功访问到ddr3这个地址,是不是emif寄存器有默认的配置?在默认配置下ddr3也能访问?在实际使用中我还要去配置这个寄存器么?

赞(0)
未经允许不得转载:TI中文支持网 » 关于6670 DDR3使用的问题
分享到: 更多 (0)