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

C6678 EMIF16 NOR FLASH BOOT始终不成功

     各位专家好:    

      最近在做C6678的EMIF16 BOOT,我将代码段放到DDR3共享(代码段直接从内存保存然后写入FLASH),其它的段都是放到L2空间,上电时core0拷贝NOR FLASH的代码到DDR3,然后IPC触发其它core运行,可以看到core0拷贝代码是完成了的。

    单步调试发现core0是跳入入了c_int00地址的,但是不知道为什么在单步运行一段代码后PC指针直接跑到了非代码空间了。

    我的CMD文件是这样写的:

-c 
-heap 0x41000 
-stack 0xa000
MEMORY 
{
L1PSRAM (RWX)   : org = 0x0E00000,  len = 0x7FFF
L1DSRAM (RWX)   : org = 0x0F00000,  len = 0x7FFF
L2SRAM (RWX)    : org = 0x0800000,  len = 0x080000
MSMCSRAM (RWX)  : org = 0xc000000,  len = 0x200000

ISRAM(RWX):              org=0x80000000,len=0x500

DDR3 (RWX)      : org = 0x80000500, len = 0x10000000

}
SECTIONS 
{

    .csl_vect                                     >         L2SRAM

    .boot_sect                                 >         ISRAM

   .text                                              >        DDR3

GROUP (NEAR_DP)
{
.neardata
.rodata
.bss
} load > L2SRAM
.stack                             >         L2SRAM
.cio                                 >         L2SRAM
.data                              >         L2SRAM
.sysmem                       >         L2SRAM
.far                                  >         L2SRAM
.testMem                       >          L2SRAM
.fardata                          >          L2SRAM

platform_lib                  >           DDR3
}

        我没有使用TI提供的转换工具,而是直接从内存保存代码段,然后将代码段写入FLASH的方式,请问这样为什么不能BOOT成功呢???是不是由于写入FLASH的内容没有包含CMD文件中的其他段造成的???还请各位专家帮帮忙,谢谢了。

Andy Yin1:

您好,

请问你的代码如果搬到L2上能运行么,是否与DDR3初始化有关呢。

qian cui:

回复 MaoQTian:

你好,我使用6678,通过nor flash启动,flash片选要求低有效。现在直接测试dsp输出的片选信号,一直为高?不知道可以采取什么方法来排查问题?麻烦了,非常感激

赞(0)
未经允许不得转载:TI中文支持网 » C6678 EMIF16 NOR FLASH BOOT始终不成功
分享到: 更多 (0)