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.

6678 DDR初始化相关问题

在DDR初始化遇到一些问题:

1、在软仿真时观测到DDR_Regs在Memory Browser里的内存分配和赋值都是正确的,但硬仿真时Memory Browser里观测到DDR_Regs->RDWR_LVL_CTRL所给赋值却是一个错误的值,这是为什么呢?

2、遇到同样的问题boot_cfg_regs软仿真时在Memory Browser里的内存分配和赋值都是正确的,但硬仿真时发现boot_cfg_regs->KICK_REG0 = 0x83e70b13;
 boot_cfg_regs->KICK_REG1 = 0x95a4f1e0;等不能赋值,boot_cfg_regs->DDR3_CONFIG_REG[0] |= 0xF; boot_cfg_regs->DDR3_CONFIG_REG[23]|=0x00000200;赋值错误。

请大家帮忙分析一下!

谢谢!

  • 您好!

    方便的话上传你的代码,供大家分析。

  • 你好!

    附件里的程序是根据我们的需要对例程里相对应程序改编的,遇到的问题如上,请大家帮忙分析!

    谢谢!

  • 您好!

          关于KICK REG硬仿与软仿的差异,

          硬仿的确是返回0,你只需往REG里写值,unlock即可。

          软仿之所以显示,是CCS的BUG。

  • 您好!

       请问您说的硬仿返回值是0,是Kicker Mechanism Register解锁的情况还是锁住的情况呢?

       我仿真时发现以下两种情况的返回值都是0

           CSL_IDEF_INLINE void CSL_BootCfgUnlockKicker (void)

           {

                  hBootCfg->KICK_REG0 = 0x83e70b13;

                  hBootCfg->KICK_REG1 = 0x95a4f1e0;

                   return;

          }

         和

      CSL_IDEF_INLINE void CSL_BootCfgLockKicker (void)

        {

               hBootCfg->KICK_REG0 = 0x1;

               hBootCfg->KICK_REG1 = 0x1;

               return;

         }