TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320C6748: CMD文件配置时将.text地址设置为0x11800000则固化之后无法启动,但如果将地址设置为0x11810000就能正常启动

Part Number:TMS320C6748

CMD文件配置时将.text地址设置为0x11800000则固化之后无法启动,但如果将地址设置为0x11810000就能正常启动,以下是CMD配置文件

-stack 0x00006800
-heap 0x00006800 //动态堆栈空间设置

MEMORY
{
/****************************************************************************/
/* */
/* 公共内存区域 */
/* */
/****************************************************************************/
SHDSPL2ROM o = 0x11700000 l = 0x00100000 /* 1MB L2 共享内置 ROM */
SHDSPL2RAM o = 0x11800000 l = 0x00040000 /* 256KB L2 共享内置 RAM */

SHDSPL1PRAM o = 0x11E00000 l = 0x00008000 /* 32KB L1 共享内置程序 RAM */
SHDSPL1DRAM o = 0x11F00000 l = 0x00008000 /* 32KB L1 共享内置数据 RAM */

SHRAM o = 0x80000000 l = 0x00020000 /* 128KB 共享 RAM */

DDR2 o = 0xC0000000 l = 0x08000000 /* 128MB DDR2 分配给 DSP */

/****************************************************************************/
/* */
/* 外设内存区域 */
/* */
/****************************************************************************/
SYSCFG0 o = 0x01C14000 l = 0x00001000 /* 4K SYSCFG0 */
uPP o = 0x01E16000 l = 0x00001000 /* 4K uPP */
GPIO o = 0x01E26000 l = 0x00001000 /* 4K GPIO */
McBSP1 o = 0x01D11000 l = 0x00000800 /* 2K McBSP1 */

}

SECTIONS
{

.text > 0x11810000 /* 可执行代码 */
.stack > SHDSPL2RAM /* 软件系统栈 */

.cio > SHDSPL2RAM /* C 输入输出缓存 */
.const > SHDSPL2RAM /* 常量 */
.data > SHDSPL2RAM /* 已初始化全局及静态变量 */
.switch > SHDSPL2RAM /* 跳转表 */
.sysmem > SHDSPL2RAM /* 动态内存分配区域 */
.far > SHDSPL2RAM /* 远程全局及静态变量 */
.args > SHDSPL2RAM
.ppinfo > SHDSPL2RAM
.ppdata > SHDSPL2RAM

GROUP(NEARDP_DATA)
{
.neardata
.rodata
.bss /* 未初始化全局及静态变量 */
} > SHDSPL2RAM
.far: fill = 0x0, load > SHDSPL2RAM

/* TI-ABI 或 COFF */
.pinit > SHDSPL2RAM /* C++ 结构表 */
.cinit > SHDSPL2RAM /* 初始化表 */

/* EABI */
.binit > SHDSPL2RAM
.init_array > SHDSPL2RAM
.fardata > SHDSPL2RAM

.c6xabi.exidx > SHDSPL2RAM
.c6xabi.extab > SHDSPL2RAM
/* 外设 */
.Reg_SYSCFG0 > SYSCFG0
.Reg_uPP > uPP
.Reg_GPIO > GPIO
.Reg_McBSP1 > McBSP1
}

Nancy Wang:

请问是什么模式启动?仿真情况下是可以的吗?

chuanjie wu 说:.text > 0x11810000 /* 可执行代码 */

您是想固定c_int00 入口地址吗?

,

chuanjie wu:

仿真情况下是可以正常运行的,我们现在这边是将代码固化在NAND中,希望能够尽量的提高程序运行速度,所以希望上电启动后将代码搬运到L2RAM中运行,但现在遇到的问题就是如果将.text>0x11810000修改为SHDSPL2RAM,然后固化之后断电重启就无法运行,但如果将SHDSPL2RAM改回0x11810000再固化断电重启就能够正常运行,启动模式设置也是正确的设置为NAND启动。

,

Nancy Wang:

用仿真器跟一下不能正常启动的时候pc指针指向ROM还是用户代码。

,

chuanjie wu:

你好,我这边用仿真器看点击点击运行之后直接就跳出了

Can't find a source file at "/tmp/TI_MKLIBqnPRSS/SRC/exit.c" Locate the file or edit the source lookup path to include its location.

这个提示了,点击暂停后后的跳转界面如下:

此时如果在点击运行,暂停发现是停在了

c000ec84:   0001A120            BNOP.S1       $C$L1 (PC+4 = 0xc000ec84),5。

,

Nancy Wang:

是参考以下文档的步骤调试的吗?

2045.Debugging Boot Issues – Texas Instruments Wiki.pdf

赞(0)
未经允许不得转载:TI中文支持网 » TMS320C6748: CMD文件配置时将.text地址设置为0x11800000则固化之后无法启动,但如果将地址设置为0x11810000就能正常启动
分享到: 更多 (0)