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.

DM8168,仅使用DDR0通道连接 4片8bit的ddr3,而DDR1通道不接ddr3,请问SD卡启动的时候需要有特殊配置吗?

DM8168,仅使用DDR0通道连接 4片8bit的ddr3,而DDR1通道不接ddr3,请问SD卡启动的时候需要有特殊配置吗?

现在是SD卡启动无打印输出,在无SD卡和NAND FLASH时候,打印有输出,但不是CCCCC,会是什么原因?

  • 感谢您的回复!

    目前,已按照补丁做修改,SD卡启动仍然无任何打印输出。如果不接SD卡,flash无代码,会打印  音符状乱码。

    另外,我们的8bit的4片DDR3共为2G,请问,会不会也有关系?还有其他需要排查的吗?

  • DM8168 仅用EMIF0通道,使用8bit的4片DDR3共为2G,支持吗?

  • blue-sky 说:
    如果不接SD卡,flash无代码,会打印音符状乱码。

    请问你使用的DM8168是PG2.x的版本,还是老版本?老版本uart启动的波特率是有问题的,具体请参考勘误表。

    blue-sky 说:
    还有其他需要排查的吗?

    DDR的时序是否根据你们使用的DDR芯片做过相应的调整,DDR SW leveling做过没有?

  • 您好,我们使用的片子是tms320dm8168BCYGA2,输入时钟是27Mhz么,在串口设置115200波特率的情况下,不能输出CCC的代码。通过抓HEX的数据发现输出的为0E E6的数据,而正常的是输出0E FE的数据,不知从哪个方向开始排除?

  • 重新描述下,问题的现象:

    CPU:TMS320DM8168BCYA2,使用EMIF0通道连接4片8bit的DDR3(镁光512MB),EMIF1通道未使用(仅DQS接上拉和下拉电阻),设计有开发板参考,电源系统更改比较大,目前,SD卡引导启动无打印输出。

    测试过程:电源系统,1V0_AVS采用固定电压模式,固定电压1.08V,其他电源电压符合TRM要求,上电时序满足要求。CLK输入27M和32.768K,正常;boot模式配置正确。在SD卡和nand flash无程序运行时,波特率115200,打印hex “”0E E6“”,而正常的开发板打印hex “”0E FE“,不知这个问题如何排除。挂载CCS,测试DDR3、nand  flash都有问题。DDR3 的时序未作SW level 测试。

    问题1:EMIF1不使用的情况下,如何处理?

    问题2:打印hex “”0E E6“”,而正常的开发板打印hex “”0E FE“,这个问题如何排查?

  • 你好,

    1. AVS请使用支持AVS功能的电源芯片,而非固定电压。

    2. CCS里面如果DDR都无法正常访问,那启动肯定是有问题的。请先在CCS下把DDR调通。DDR调试,请参考http://processors.wiki.ti.com/index.php/DM816x_C6A816x_AM389x_DDR3_Init。

  • 谢谢您的解答!我先去调试DDR!

  • 1.目前电源系统基本正常,能否长时间稳定工作,有待考核。后续考虑使用AVS电源芯片。

    2.根据上面的说明进行了DDR3的初始化工作,

    根据layout信息,计算出读写数值,使用.out文件在CCS中计算,另外,根据EMIF4计算寄存器中值,将计算值更改到GEL文件及UBOOT文件中,发现仍然无任何打印信息。

    后来,使用TI816x.GEL文件,修改DDR3测试代码,仅向0x80000000地址写0x55555555,打印正常;后来向0x80000000的起始地址,到0x80001000地址,写0x55555555,发现一半数据正确,一半错误!且是在0x80000080地址报错!考虑是DDR3交织访问的问题,根据这个 将交织访问模式更改为EMIF0,非交织访问模式,可以有正常的打印信息了。ok!

    但还是有疑问,

    1. "arch/arm/include/asm/arch-ti81xx/ddr_defs_ti816x.h"文件中宏USE_EMIF1的值修改为0。

    2.  "include/configs/ti8168_evm.h"文件中的宏CONFIG_TI816X_TWO_EMIF的值修改为0。

    3.  "board/ti/ti8168/evm.c"文件中的DMM_LISA_MAPP__0/4配置参数的代码修改为非交织访问模式:

            __raw_writel(0x0, DMM_LISA_MAP__0);
            __raw_writel(0x0, DMM_LISA_MAP__1);
            __raw_writel(0x0, DMM_LISA_MAP__2);
            __raw_writel(0x80600100, DMM_LISA_MAP__3);

    这个非交织访问模式的值到底是如何计算出来的?为什么DMM_LISA_MAP的1,和1,没有使用?

  • blue-sky 说:
    这个非交织访问模式的值到底是如何计算出来的?为什么DMM_LISA_MAP的1,和1,没有使用?

    能否再说明一下你的问题,我看不是很明白。

  • 这个后来明白了了非交织访问的机制!多谢