TI论坛
直播中

张淑兰

7年用户 258经验值
私信 关注
[问答]

CCS5上新建一个6678的工程,请问gel文件在整个程序的运行过程中,gel文件中的程序是在何时运行的?

本帖最后由 一只耳朵怪 于 2018-6-25 10:53 编辑

在CCS5上新建一个6678的工程,在新建的配置文件中要加人6678的配置文件gel文件,我想问的是:
1、gel文件在整个程序的运行过程中,gel文件中的程序是在何时运行的?
2、gel文件中的一些函数(例如GEL_MapAddStr、GEL_MapOn、GEL_MapReset)以及一些数据类型(例如hotmenu)没有具体的实现过程,在哪可以找到这些函数的实现?
3、哪位专家能否将6678开发板从上电加载到运行gel文件程序再到运行自己的程序的过程讲述下?这有利于理解6678开发板的整个程序运行情况分析!

回帖(9)

李阳

2018-6-25 02:32:31
问题1:
Gel文件的执行时间一般在DSP connect target之后,在download代码之前。因为gel文件通常会进行一些初始化的寄存器的设置,比如memory map,PLL和DDR初始化等。所以在download之前必须初始化这些。
问题2:
gel文件的脚本都可以找到的。CCS5的版本可以在这个目录下找到大部分EVM的gel脚本
C:Program FilesTexas Instrumentsccsv5ccs_baseemulationboards
问题3:
gel脚本类似于C语言函数,就是运行一些函数。比如DDR初始化函数。如果DDR没有初始化,是无法将代码download到DDR中去的。执行gel脚本有两种,一种是用户自己执行,另一种是CCS5自动将gel脚本关联到相关的操作中,比如connect target就自动关联了初始化PLL,初始化DDR的gel函数。
建议可以找个gel脚本看看,这样更有助于理解。
谢谢!
举报

张淑兰

2018-6-25 02:39:10
引用: MAZHILEI 发表于 2018-6-25 02:32
问题1:
Gel文件的执行时间一般在DSP connect target之后,在download代码之前。因为gel文件通常会进行一些初始化的寄存器的设置,比如memory map,PLL和DDR初始化等。所以在download之前必须初始化这些。
问题2:

King Wang,你好
DSP在加电后,采样引脚配置,加载运行bootloader,可不可以认为,bootloader就是上电后的一些初始化以及配置工作呢?
core0进行配置,而其他核IDLE状态,最后进入到BOOT MAGIC ADDRESS处,这个BOOT MAGIC ADDRESS处事一个加载到内存中的程序的入口地址,理解对否?
不过在CCS connect到板子之前,每个核上面运行的是什么程序呢?
CCS connect到target是不是相当于对core发起一个重启指令,然后利用GEL文件程序进行重新初始化的设置,然后download程序到core上是不是产生一个中断,然后core开始运行download的程序?
举报

李阳

2018-6-25 02:49:57
引用: lgjmjx 发表于 2018-6-25 02:39
King Wang,你好
DSP在加电后,采样引脚配置,加载运行bootloader,可不可以认为,bootloader就是上电后的一些初始化以及配置工作呢?
core0进行配置,而其他核IDLE状态,最后进入到BOOT MAGIC ADDRESS处,这个BOOT MAGIC ADDRESS处事一个加载到内存中的程序的入口地址,理解对否?

conghu 你好:
DSP上电后,PC指针会跑到ROM的位置,各个core都会自动运行ROM的代码。
ROM代码中会有IDLE指令,当DSP跑到IDLE指令时就自动停止了。所以在CCS connect之前,核上面运行的就是ROM中的代码,也是bootloader的代码。
当你要download文件到CCS时,通常认为是处于no boot模式。这时CCS会把out文件导入DSP内存,同时将PC指针跳转至_c_int00的位置,然后就可以按照用户定义的代码运行了。
而你说的BOOT MAGIC ADDRESS通常也设置的是_c_int00的地址,这个一般是存在boot的情况,会在代码拷入完毕后将BOOT MAGIC ADDRESS写入,然后bootloader会跳转到该地址执行。
谢谢!
举报

张淑兰

2018-6-25 02:58:30
引用: MAZHILEI 发表于 2018-6-25 02:49
conghu 你好:
DSP上电后,PC指针会跑到ROM的位置,各个core都会自动运行ROM的代码。
ROM代码中会有IDLE指令,当DSP跑到IDLE指令时就自动停止了。所以在CCS connect之前,核上面运行的就是ROM中的代码,也是bootloader的代码。

King wang,你好
“当你要download文件到CCS时,通常认为是处于no boot模式。” 这句话的意思是CCS download文件时就被配置成了no boot模式了吗?no boot 模式是GEL文件程序配置的吗?如果是的话那不是和板子上的sw3~sw6的配置冲突了吗?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分