打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
DSP程序固化操作手册——TMS320C6678+Kintex-7
userphoto

2022.08.14 广东

关注

前 言

本文主要介绍DSP程序固化操作手册,文章内容包括program-tools工具包说明、文件准备、程序固化、多核程序可执行文件转换等。

program-tools工具包说明

DSP程序固化工具包program-tools位于产品资料“4-软件资料\Tools\”目录下,工具包目录结构及说明如下。

图 1

本次测试板卡为TMS320C6678+Kintex-7 的FPGA高端异核开发板,它采用TI KeyStone架构C6000系列TMS320C6678八核C66x定点/浮点DSP以及Xilinx Kintex-7 FPGA处理器设计。

TMS320C6678+Kintex-7开发板资源图解

核心板内部DSP与FPGA通过SRIO、EMIF16、I2C通信总线连接,并通过工业级高速B2B连接器引出千兆网口、PCIe、HyperLink、EMIF16、GTX等高速通信接口。核心板经过专业的PCB Layout和高低温测试验证,稳定可靠,可满足各种工业应用环境。

文件准备

请将程序固化工具包program-tools拷贝至Windows非中文路径下,再执行如下操作。

IBL文件准备

如需从SPI FLASH启动IBL,则使用工具包提供的ibl.bin文件即可,无需额外操作。如需从EEPROM启动IBL,请将i2crom.bin文件重命名为ibl.bin,并替换工具包中的ibl.bin文件。

核心板出厂时默认已固化IBL至SPI FLASH和EEPROM,推荐从SPI FLASH启动IBL。

用户程序文件准备

将待固化的单核用户程序.out格式可执行文件重命名为app.out,并替换工具包中的默认app.out文件。如需固化多核用户程序,请先按照“多核程序可执行文件转换”章节将多核用户程序可执行文件转换为MAD(Multicore Application Deployment)文件,再重命名为app.out,并替换工具包中的默认app.out文件。

单核用户程序可执行文件一般为ELF格式,多核用户程序可执行文件一般为BBLOB格式。

仿真器配置文件准备

如使用XDS100v1/XDS100v2/XDS100v3/XDS200/XDS560v2仿真器进行操作,则使用工具包提供的默认仿真器配置文件即可,无需额外操作。

程序固化

工具包提供两种程序固化方式,方法一为使用program.bat脚本进行一键固化,方法二为使用program_gui.bat脚本进行图形化分步固化。

一键固化

使用编辑工具打开一键固化脚本program.bat,并参考如下说明对相关参数进行配置。

图 2

备注:如IBL文件无更新,可不进行IBL固化。

图 3

图 4

固化完成后,请将评估板的启动选择拨码开关拨为对应启动模式。取下仿真器后再将评估板上电,程序即可正常运行。

图形化分步固化

使用编辑工具打开图形化分步固化脚本program_gui.bat,配置DSS_SCRIPT_DIR参数为"[CCS5.5安装路径]\ccsv5\ccs_base\scripting\bin"。

图 5

请将评估板的启动选择拨码开关拨为000XX(1~5),此档位为DSP_NO BOOT(Debug)模式,再将评估板通过仿真器与PC机正常连接。

评估板上电后,双击运行program_gui.bat脚本,在弹出的CMD窗口中根据提示输入对应选项数字,指定IBL固化的存储器件、用户程序固化的存储器件、处理器型号、仿真器型号。

备注:如IBL文件无更新,可不进行IBL固化。

图 6

图 7

图 8

图 9

配置完成后,进入程序固化界面。

图 10

图 11

固化完成后,请将评估板的启动选择拨码开关拨为对应启动模式。取下仿真器后再将评估板上电,程序即可正常运行。

多核程序可执行文件转换

multicore-boot工具包说明

多核程序可执行文件转换工具包multicore-boot位于产品资料“4-软件资料\Tools\”目录下,工具包目录结构及说明如下。

图 12

Python安装

multicore-boot工具包的使用需依赖Python,请双击工具包目录下的Python安装包python-2.7.amd64.msi,再点击Next进行安装。

图 13

选择安装路径,并连续点击Next。

图 14

图 15

图 16

点击Finish完成安装。

图 17

多核程序可执行文件转换

使用编辑工具打开转换脚本Build.bat,将PATH配置为:

"[CCS5.5安装路径]\ccsv5\tools\compiler\c6000_7.4.4\bin";[Python安装路径];%PATH%

图 18

使用编辑工具打开配置文件deployment_C6678_bypass_prelink.json,默认内容如下。

图 19

多核单镜像

如八个核心运行同一个用户程序,请将用户程序.out格式可执行文件拷贝至工具包的App目录下,再将标注1、2修改为用户程序可执行文件名。

多核双镜像

如C66xx_0运行一个用户程序,其他七个核心运行另一个不同的用户程序,请将两个用户程序.out格式可执行文件拷贝至工具包的App目录下,再将标注1修改为C66xx_0用户程序可执行文件名,同时将标注2修改为其他七个核心的用户程序可执行文件名。

多核多镜像

如各个核心均运行不同的用户程序,请将各核心的用户程序.out格式可执行文件拷贝至工具包的App目录下,再增加对应核心的applications定义,并更新appDeployment中的applications列表。

C66xx_0~C66xx_7的applications分别对应appDeployment列表中的A~H,参考代码如下。需确保各个applications中的shmIpcBenchmark.out已修改为对应核心的用户程序.out格式可执行文件名。

"applications" : [

{

"name" : "app1",

"fileName" : "./App/shmIpcBenchmark.out",

"allowedCores" : [0,1,2,3,4,5,6,7]

},

{

"name" : "app2",

"fileName" : "./App/shmIpcBenchmark.out",

"allowedCores" : [0,1,2,3,4,5,6,7]

}

{

"name" : "app3",

"fileName" : "./App/shmIpcBenchmark.out",

"allowedCores" : [0,1,2,3,4,5,6,7]

}

{

"name" : "app4",

"fileName" : "./App/shmIpcBenchmark.out",

"allowedCores" : [0,1,2,3,4,5,6,7]

}

{

"name" : "app5",

"fileName" : "./App/shmIpcBenchmark.out",

"allowedCores" : [0,1,2,3,4,5,6,7]

}

{

"name" : "app6",

"fileName" : "./App/shmIpcBenchmark.out",

"allowedCores" : [0,1,2,3,4,5,6,7]

}

{

"name" : "app7",

"fileName" : "./App/shmIpcBenchmark.out",

"allowedCores" : [0,1,2,3,4,5,6,7]

}

{

"name" : "app8",

"fileName" : "./App/shmIpcBenchmark.out",

"allowedCores" : [0,1,2,3,4,5,6,7]

}

],

"appDeployment" : [

"app1",

"app2",

"app3",

"app4",

"app5",

"app6",

"app7",

"app8"

]

修改完成后,请双击运行Build.bat脚本,即可将多核程序可执行文件转换为BBLOB格式的MAD文件。转换完成后,将会在工具包的images目录下生成MAD文件C66x-le.bin。

图 20

图 21

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
MATLAB介绍
嵌入式编程·C语言工程及makefile编译
1.3.2 Java开发工具
嵌入式软件的基本测试方法 - 测试者家园 - 博客园
开源自动化控制软件Sedona在物联网中的应用
通用万能RAMOS win8.1 UP3 X64,免安装拿来即用
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服