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.

C6670 SPI boot问题

       工程中采用SPI boot的方式对C6670进行程序的加载启动使用官网上提供的编译工具链将.out文件做成boottable,通过spi接口将数据bootdsp现在遇到的问题是DSP偶尔启动失败的现象,连上仿真器后发现程序停留在了bootrom查阅资料得知boot参数表的位置为

start address      0x008F 2DC0 //6670  

end address       0x008F FFFF//6670  

 

出现DSP启动失败的现象时,连接仿真器使用Memory Broser工具观察Boot Parameter table中128字节与我们编译工具链中设置的参数Parameter.map的值是一致的。但是后面的Clear text packet scratch中的头四个字节被清零了如图1所示,而启动成功的DSPClear text packet scratch中的头四个字节有十六进制数的如图2所示:

 

1 DSP启动失败时Clear text packet scratch内存信息

  

2 DSP启动成功时的Clear text packet scratch的内存信息

现在想咨询以下两个问题

  1. Clear text packet scratch0x3600字节的定义是什么,它bootrom中的程序起到了什么作用?
  2. 出现上述该现象的原因是什么?或者我们可以从哪个方面继续进行排查

有指教,不胜感激。

 

  • 你的spi boot参数表中的mode=0,这个值需要与你Boot Mode bins(也就是GPIO bin)的设置一致,通常等于1或者2.

    另外spi boot参数表中CPU频率的值为0x3D0,也就是976MHz,和前面boot参数表的PLL部分能对应上吗?不过这条不太关键。