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.

C6701 HPI二次boot问题

各位TI工程师,你们好。前天请教了一下Shine,并把二次boot的整体思路整理了一下,今天对于HPI二次boot的一些细节部分有些疑问。


首先我们这边准备使用HPI二次boot,根据C6701的Bootconfiguration文档说明使用HPIboot方式,在HPIboot方式下,首先DSP是停止工作
的,这时需要Host通过HPI对CPU所有的内存空间(包括内部寄存器配置,EMIF接口等外设配置),然后设置DSPINT完成boot配置,之后才是开始引导过程;而根据spra999a.pdf文档,二次boot代码和用户程序是放在一个工程下的,编译后将.out文件转为Hex后烧入flash的


可能是本人对HPI不是很熟悉,综合两个文档的分析,我的初步理解是在Host上对DSP的EMIF接口,时钟等等外设配置好,二次boot代码实际上是放在外挂flash中的,二次boot代码只实现一个搬移用户程序的功能和将程序指针指向用户代码的main函数地址上(即在引导过程时,首先二次boot代码被搬移到address 0 被执行,执行二次boot代码时就把用户程序搬移到外挂的SDRAM中)。

1、请教一下Shine,如果具体到HPI二次boot方式上,本人的这种理解是否正确呢?

2、根据spra999a.pdf文档,如果要编写二次boot程序,总共需要三个文件(boot_C671x.s62 , c6713_Emif.s62 , boot_c671x.h62),其中boot_C671x.s62为二次boot程序文件,我查看了一下这个文件里面对EMIF寄存器进行了配置。如果是HPI二次boot方式,按照我上面的思路,实际上Host可以通过HPI接口直接对DSP的外设进行配置,那么二次boot程序中是否就可以不需要用汇编来配置EMIF接口等等外设呢?