烧写多核多镜像文件
这里的GEL文件使用DSP_C6678_MultiCoreBoot.gel文件在光盘资料Images文件夹下。请提前安装好python 2.x以上版本,安装程序在文件夹"Demo\HostApp"下。
以下步骤实现将多核多镜像文件烧写到NAND FLASH,具体烧写步骤如下(部分类似烧写步骤参考上述小节,此处描述关键步骤,如需要烧写进NOR FLASH里面,可直接使用此GEL文件,用NorFlashWriter.out程序烧写即可)。
生成单个可烧写文件
在"Demo\HostApp\MultiCoreBoot\Image Create\Config"文件夹下用写字板打开deployment_C6678_bypass_prelink.json文件,修改对应多核镜像文件路径(存放在App目录下),然后保存关闭,如图所示:
返回上一级目录,以编辑方式打开Build.bat文件,修改C6000编译工具的路径和python的安装路径,保存关闭。再双击Build.bat文件,即可生成单个可烧写文件C6678-le.bin,保存在同级新生成的images文件夹下。
选用GEL文件
多核心IBL MAD启动镜像生成及使用已配置好.gel文件,在"Demo\HostApp\MultiCoreBoot\IBL Config"目录下的DSP_C6678_MultiCoreBoot.gel文件。
连接开发板CPU,加载i2cparam_0x50_tl6678_little_0x500.out文件,文件在文件夹"Demo\HostApp\MultiCoreBoot\IBL Config"下。
加载后务必点击运行按钮,然后点解"Scripts->EVM TL6678 IBL->SetConfig_TL6678_main"(注:此处必须先运行i2cparam_0x50_tl6678_little_0x500.out文件,再在脚本下对IBL进行配置,否则会出现报错)。
在Console窗口下,按入回车键。修改成功,该配置已成功保存到I2PROM里面。
通过IBL配置从而支持全部的Rom启动模式,光盘里参考文档中有《DSP C6678启动模式汇总》。当ibl.RomBoot.Enable=TRUE;IBL会根据ibl.RomBoot.Mode设置的值修改启动配置寄存器然后跳转到Rom Bootloader执行剩余启动流程(注意,此时不会再执行IBL启动,所以需要IBL启动的话该配置项目应当设置为FALSE)。如图中设置ibl.RomBoot.Mode=0x00001809(仅低16位有效):
加载多核镜像文件
按步骤加载烧写工具程序,修改C6678-le.bin程序文件名为app.bin。然后加载多核镜像文件,详细步骤如下。
加载烧写工具程序文件NandFlashWriter.out,如下图所示:
加载程序镜像文件
点击CCS菜单栏"View->Memory Browser",在弹出的界面中点击"Save Memory"按钮,然后在下拉框中选择"Load Memory",如下图所示:
选择程序文件,文件类型选择"Raw Data Format(.bin)",如下图所示:
点击Next,在弹出的界面中输入起始地址:0x80000000,数据类型输入:32bits,然后点击Finish等待加载完成,如下图所示:
点击运行按钮,开始烧写程序,烧写成功后Console提示信息类似下图:
拔掉仿真器,开发板打到对应的启动档位,程序即会正常运行。
注:如果烧写进去程序后,程序没有运行起来,可通过以下方式验证启动镜像是否正确生成,步骤如下。
点击CCS菜单栏"View->Memory Browser",在弹出的界面中点击"Save Memory"按钮,然后在下拉框中选择"Load Memory",如下图所示:
选择程序文件,文件类型选择"Raw Data Format(.bin)",如下图所示:
点击Next,在弹出的界面中输入起始地址:0x9e000000,数据类型输入:32bits,然后点击Finish等待加载完成,如下图所示:
修改DSP的地址CPU PC指针地址为0x9E001040:
点击运行按钮,串口打印信息,和运行.out文件一样,证明程序生成无误,请查检其他操作是否规范:
来源:oschina
链接:https://my.oschina.net/u/4169033/blog/4308811