TI的专家你好,目前使用的6678自己投的板子,硬件DDR3由前期的2GB升级到了目前的4GB,使用MPAX配置地址映射有两个疑问想请教下:
1: 后2GB的DDR3地址该如何映射
逻辑地址 物理地址 0000_0000 – 7FFF_FFFF -》 0:0000_0000 – 0:7FFF_FFFF C6678 MPAX上电默认值的配置
8000_0000 – FFFF_FFFF -》 8:0000_0000 – 8:7FFF_FFFF —-前2GB DDR3 空间 C6678 MPAX上电默认值的配置
????_???? – ???????? 》 8:8000_0000 – 8:FFFF_FFFF —-后2GB DDR3 空间 该如何配置 XMPAXH XMPAXL
逻辑地址0000_0000-FFFF_FFFF被用完了,请问具体到MPAX配置 ,代码中XMPAXH的BADDR和XMPAXL的RADDR该怎么填写?
示例代码:
XMC_regs->XMPAX[1].XMPAXH = ((0x80000000)&(CSL_XMC_XMPAXH_BADDR_MASK))|
((30)<<(CSL_XMC_XMPAXH_SEGSZ_SHIFT)); /*2^(30+1)=2GB*/
XMC_regs->XMPAX[1].XMPAXL = ((0x80000000)&(CSL_XMC_XMPAXL_RADDR_MASK))|
((1)<<(CSL_XMC_XMPAXL_SR_SHIFT))|
((1)<<(CSL_XMC_XMPAXL_SW_SHIFT))|
((0)<<(CSL_XMC_XMPAXL_SX_SHIFT))|
((1)<<(CSL_XMC_XMPAXL_UR_SHIFT))|
((1)<<(CSL_XMC_XMPAXL_UW_SHIFT))|
((0)<<(CSL_XMC_XMPAXL_UX_SHIFT));
2:映射后如何访问
在对后2GB配置了MPAX后,要是想访问后2GB的DDR3的第一个字节是直接填写具体的物理地址8:8000_0000去访问么?
请TI专家抽空解答下,多谢多谢
user4787357:
忘了补充一点,DDR3是用了两片32bit位宽、2GB容量的DDR3片子拼成64bit位宽来使用的