各位专家好:
我在做TMS320C6678的SPI加载时遇到了一些问题。我的加载bin文件已经在开发板上验证过了,可以真确的BOOT起来,但是当我把相同的bin文件烧写至自己开发的板子上时,却boot不起来。
详情如下:开发板上的的开关配置如下
我自己的板子配置如下:
这种配置上电以后,仿真器却连不上了,看上去是程序跑飞了,错误如下:
我的烧写工程用的是开发板的nor_writer.由于没用SGMII所以把norwriter中的platform_init函数注释掉了(从源代码中看这个函数只进行了pll,DDR3和SGM的初始化,但是nor_writer的pll和ddr3 init_flag都是0,也就是没跑,一开始用gel初始化了),烧写和verify是成功的。
我检查过EVM的程序,一开始连接上时无论拨盘开关是什么,好像都进行IBL boot。下图为一上电就连接开发板仿真器时加载的boot parameter table
过一会儿后才会变成SPI的加载模式。这一点也从开发板的FPGA程序中看出来了:下图
看图中的force_bootmode
所以我想问一下,是不是必须加IBL才能从SPI boot?另外开发板上为何要先加载IBL?是IBL取代了RBL去加载SPI里德镜像文件?如果是这样的话?IBL对SPI加载和RBL对spi加载?具体有什么区别呢?是不是需要对bin生成工具链做出一些配置上的调整?
急求解答!感激不尽!