14.2.13  InitBoot汇编程序

14.2.13 InitBoot汇编程序

复位后第一个被调用的程序是InitBoot汇编程序,该程序初始化使器件运行在C28x目标模式。InitBoot还要虚读代码安全模块(CSM)密码单元,如果CSM密码已被擦除(皆为0xFFFF),那么模块被解锁,否则CSM将会保持锁定,并且密码位置的读取对解锁没有效果,但在对新的器件引导装载是需要的。

在虚读CSM密码单元后,InitBoot程序将会调用SelectBootMode函数,该函数确定了由978-7-111-57271-8-Chapter14-36.jpg和某些GPIO引脚状态所决定的引导模式类型。一旦引导完成,SelectBootMode函数传递入口地址(EntryAddr)给InitBoot函数。EntryAddr是在引导装载器退出后,代码开始执行的位置。然后InitBoot调用ExitBoot程序,该程序恢复CPU寄存器到它们的复位状态,并退出到由引导模式决定的EntryAddr。图14-7所示为InitBoot汇编程序流程图。