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

关于TMDSEVM6678LE SPI NOR FLASH加载的问题

大家好,我按照TI论坛提供的闪灯例程(见附件)进行操作,修改core_freq_mhz=1000,sw_pll_prediv=2, sw_pll_mult = 40,sw_pll_postdiv = 2,最后将生成好的.dat文件烧写入SPI NOR FLASH中。重新上电前将SW3~SW6按http://processors.wiki.ti.com/index.php/TMDXEVM6678L_EVM_Hardware_Setup ROM SPI Boot要求进行拨位,上电后不能boot。

以下是连仿真器后的一些调试信息:

1、DEVSTAT寄存器值为0x40D,PC寄存器值为0x20B0A350,ROM版本为v1.12.Sat.Aug.13.15:21:07.2011.i2c.mac.srio.pcie.vusr.spi(读取0x872dc0存储器)。

2、从0x873680读出的boot parameter table内容为0028 0000 0032 0000 0000 0000 0000 0018 0004 0000 0000 0001 03E8 0000 01F4 0000 0000 0000 0000 0000。

请大家帮忙分析分析,非常感谢!

Shine:

DEVSTAT寄存器值为0x40D, boot mode是5=I2C,不是SPI boot模式 (110),请检查 一下boot mode管脚设置。

PC 指针0x20B0A350说明还在RBL里,在memory browser中输入0x1087fffc查看该地址对应的value是否为程序入口地址(入口地址可在map中查看对应c_int00)。

bo zhou5:

回复 Shine:

感谢回复!

1)又确认了下SW3~SW6的拨位,0xD = 4'b1101,bootmode[2:0] = "110",配置应该是正确的吧:-);

2)从memory bowser读出地址0x1087fffc的数据是0,而并非c_int00地址。

另外,从boot parameter table读出的数据看,spi加载的options=0而不是预先设置的1,这一点比较疑惑。

还有,flash nor writer烧写成功与否如何验证?

非常感谢能继续提供思路。

bo zhou5:

回复 Shine:

问题已解决,原因是在运行norwriter程序之前未将.dat文件load入0x80000000地址空间:(

在这里要吐槽一下TI的文档,ti-processor-sdk-rtos-c667x-evm包中并没有怎么使用norwriter工具的文档,而mcsdk是有的,希望下一步能完善一下。

另外,谢谢提供思路给予支持!

赞(0)
未经允许不得转载:TI中文支持网 » 关于TMDSEVM6678LE SPI NOR FLASH加载的问题
分享到: 更多 (0)