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

EVMK2H使用DSP NAND Boot的問題

大家好,

在嘗試將EVMK2HX設定為DSP NAND boot時遇到問題,以下是我的步驟,請協助看一下是否有問題,

1. 撰寫一個利用GPIO控制LED閃爍的程式(利用K2_STK_DSP_v1.1中的GPIO專案修改),已於CCS驗證功能正常。(此時EVMK2HX的BootMode設定為DSP No-Boot,DIP switch為0001)

 2. 將前一步驟產生的GPIO.out檔案轉換成GPIO.bin檔案,轉換的方式是參考以下網站資料:

        https://e2e.ti.com/support/dsp/c6000_multi-core_dsps/f/639/p/354771/1253899#1253899

 3. 透過mscdk底下的NAND writer進行燒錄,步驟是參考 \mcsdk_bios_3_01_04_07\tools\writer\nand\docs\README.txt 檔案,

        由輸出結果來看,似乎有成功寫入。 

4. 將EVM板斷電,調整DIP switch為1000,此時EVMK2HX的BootMode為DSP NAND。

 5. 將EVM上電,LED不會閃爍。

 

以上步驟是否有問題呢?

Allen35065:

你的代码的cmd文件是否都用了全局地址而不是局部地址。

JW:

回复 Allen35065:

跟您確認一下,您的意思是指:我必須要使用global address嗎?

底下是我使用的cmd文件,看起來應該是local address

-heap 0x800-stack 0x1000

MEMORY{ /* Local L2, 0.5~1MB*/ VECTORS: o = 0x00800000 l = 0x00000200 LL2_RW_DATA: o = 0x00800200 l = 0x3FE00

/* MSMC RAM 2MB*/ MSMC_RAM: o = 0x0C000000 l = 0x00200000 /* External DDR3, upto 2GB per core */ DDR3_CODE: o = 0x80000000 l = 0x01000000 /*set memory protection attribitue as execution only*/ DDR3_R_DATA: o = 0x81000000 l = 0x01000000 /*set memory protection attribitue as read only*/ DDR3_RW_DATA: o = 0x82000000 l = 0x06000000 /*set memory protection attribitue as read/write*/}

SECTIONS{ vecs > VECTORS

.text > LL2_RW_DATA .cinit > LL2_RW_DATA .const > LL2_RW_DATA .switch > LL2_RW_DATA

.stack > LL2_RW_DATA GROUP { .neardata .rodata .bss } > LL2_RW_DATA .far > LL2_RW_DATA .fardata > LL2_RW_DATA .cio > LL2_RW_DATA .sysmem > LL2_RW_DATA}

Allen35065:

回复 JW:

是的,启动必须使用全局地址,举个例子,core 0和core 1都使用0x00800000,那么bootloader应该加载到哪个核? 

JW:

回复 Allen35065:

Allen Yin

是的,启动必须使用全局地址,举个例子,core 0和core 1都使用0x00800000,那么bootloader应该加载到哪个核? 

JW:

回复 JW:

JW

Allen Yin

是的,启动必须使用全局地址,举个例子,core 0和core 1都使用0x00800000,那么bootloader应该加载到哪个核? 

Allen35065:

回复 JW:

你可以先用一个简单的代码,在启动以后连上JTAG看看代码是否正确的load到内存,PC指针跑到什么位置?

另外,K2H上ARM优先启动用得比较多,DSP一般是作为从核启动的,而且ARM上的uboot和linux有成熟的方案,为何不考虑先从ARM启动?

JW:

回复 Allen35065:

Allen Yin

你可以先用一个简单的代码,在启动以后连上JTAG看看代码是否正确的load到内存,PC指针跑到什么位置?

另外,K2H上ARM优先启动用得比较多,DSP一般是作为从核启动的,而且ARM上的uboot和linux有成熟的方案,为何不考虑先从ARM启动?

Allen35065:

回复 JW:

从你的现象看,已经跑进main函数,启动已经完成了,还是应该检查一下代码部分是不是有问题。

赞(0)
未经允许不得转载:TI中文支持网 » EVMK2H使用DSP NAND Boot的問題
分享到: 更多 (0)