logo资料库

TI DSP TMS320C6678 bootloader开发流程.pdf

第1页 / 共1页
资料共1页,全文预览结束
copyright@ qq:316622296 2019.09.06 bootloader 开发详解: 官方 bootloader (UBL 或 IBL,也叫中间级 bootloader) 源码和工程参考在: C:\ti\mcsdk_2_01_02_06\tools\boot_loader,其中 ibl 文件夹为用户 bootloader 源码和使用文档,examples 为通过 IBL 加载的演示映像程序。具体见内部 readme 文件。 Bootloader 编译并烧写到外部 EEPROM,并使用其加载外部 NOR flash 映像程序运行的使用流程(其他 boot 方式 类似,参见对应 README 即可): (参见 boot_loader\examples\i2c\nor\docs\README.txt 的 Steps to program i2cnorboot to NOR 说明) 1.修改 bootloader 源码,源码主程序位于 boot_loader\ibl\src\main 2.编译 bootloader 源码,参见:boot_loader\ibl\doc\ build_instructions.txt,makefile 见 boot_loader\ibl\src\make 3.烧写 bootloader 到 EEPROM。参见:C:\ti\mcsdk_2_01_02_06\tools\writer\eeprom\docs\README.txt,最好使用烧写 bin 文件方式。 烧写说明:这里会用到 EEPROM 的烧写程序,程序源码在 C:\ti\mcsdk_2_01_02_06\tools\writer\eeprom\src,通 过 CCS 编译烧写程序得到的烧写程序的 out 文件,使用 CCS 结合 GEL 再运行烧写程序 out 文件,通过烧写程序将 bootloader 写到外部 EEPROM 指定位置。烧写时外部引脚要配置启动模式 0.即 EMIF16/NO BOOT,以便内存启动。 注意:可使用同样的方式烧写对应外设 boot parameter table 到 boot parameter index 指定的 EEPROM 位置。这 样启动时,内部 RBL 才能将启动参数表放入 boot sequence 指定位置,配置正确并从外设读取并运行 bootloader, 见 datasheet 2.4,2.5.2.5,2.5.3。 注意:启动序列包含的内容,如 boot parameter table 在 bootloader 中已经配置修改。具体查看 bootloader 源 码。 4.烧写映像程序即我们的 app 程序(或如 UBOOT 等)到外部 norflash。参见 boot_loader\examples\i2c\nor\docs\README.txt 的 Steps to program i2cnorboot to NOR 第 2 步说明进行。烧写时也使 用如上面 3 中的 out 程序,只是这里是使用 NOR 的烧写程序,参见 C:\ti\mcsdk_2_01_02_06\tools\writer\nor\docs\README.txt 即可。 5.设置板子启动模式 I2C 主启动模式,设置的 I2C 地址等信息要与烧写的映像信息一致。参见 boot_loader\examples\i2c\nor\docs\README.txt 的 Steps to program i2cnorboot to NOR 第 3 步,注意:这里需设置 boot parameter index 与实际写入的 boot parameter table 位置一致,见 datasheet 2.5.2.5。 6.重新启动板子,则 RBL 会运行 bootloader,由 bootloader 读取并运行 norflash 内的程序。 综上流程可以看出:我们可以修改 bootloader 源码,并烧写到外部存储,然后可以通过 bootloader 直接通过 UART 等接口烧写更新我们需要的程序到外部存储,这样可不用使用 CCS 即可将程序更新,即可通过 bootloader 更新 uboot 等,再通过 uboot 更新 linux 内核和 rootfs 等文件即可。 其他: 网上的 SPI nor flash boot 例程可见:https://e2echina.ti.com/question_answer/dsp_arm/c6000_multicore/f/53/t/46608 RTOS SDK 开发者指南 4.6 节 http://software-dl.ti.com/processor-sdk- rtos/esd/docs/latest/rtos/index_Foundational_Components.html#boot Linux 见 linux 开发指南 Uboot http://software-dl.ti.com/processor-sdk- linux/esd/docs/latest/linux/Foundational_Components_U-Boot.html#u-boot-user-s-guide 芯片内置 RBL 源码参见:http://software-dl.ti.com/sdoemb/sdoemb_public_sw/rbl/1_0_C6678/index_FDS.html 下载 BootROM_c6678_PG1.0 安装即可得到源码文件,通过源码可了解 RBL 详细启动过程,给用户 UBL/IBL 设计和 升级进行参考。对应的主程序在 BootROM_c6678_PG1.0\C6678_ROM_PG1\main。
分享到:
收藏