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

关于C6678的SPI Boot

大家好,

我对C6678的SPI BOOT存在一些疑惑,望能与大家一起讨论一下:

我是自己做的板卡,Coreclk为100MHz输入,1.25GHz的PG2.0芯片

1.C6678在上电时,我给了BOOTMODE[]12:0]为0b0101000000110(SPI BOOT)。我想问问,这样上电以后,C6678的的Main PLLD、PLLM分别是多少?C6678的内核运行在多少GHz?

2. 这样上电后,RBL是不是先默认配置C6678的Main PLL,让C6678跑起来?此时,我是不是应该写个程序,就可以在C6678里面跑了?

3. SPI BOOT是不是指,RBL还能够从SPI FLASH的开始处,找到我自己编写的boot parameter,然后去根据这个parameter去重新配置PLL等外设?

4.如果想调试SPI BOOT是不是应该按照以下步骤:

(1)先上电,BOOTMODE[]12:0]为0b0101000000110(数据前几位可能变)。这样上电完了以后,C6678是可以运行的

(2)然后,写个SPI烧写程序,将自己写的Bootloader下载到外部的SPI FLASH里面。

(3)下次上电后,RBL将自动地从外部FLASH读取第(2)步中的Bootloader去配置C6678内部的PLL等外设。

我这样的步骤对不对?

我现在的问题是:在第(1)步结束后,我写个C6678的程序,打算烧写SPI,可以CCS却报出来“Device is held in reset”。可以我的C6678上的RESET、RESETFULL、POR都按照上电时序来起来了,而且C6678的RESETSTAT引脚已经对外指示高电平了,并且SYSCLKOUT引脚对外输出了16.6MHz。

我想问问,这问题到底出在哪里?

谢谢了~~~

Andy Yin1:

SPI boot上电后是不会初始化PLL,所以SYSCLKOUT输出时钟只有16.6MHz,具体SPI boot流程看一下RBL source code更容易理解。

从你的问题提示来看可能是上电时序有问题,还是要严格按照手册时序对照一下,测一下输入电压及时钟的正确性。

赞(0)
未经允许不得转载:TI中文支持网 » 关于C6678的SPI Boot
分享到: 更多 (0)