在没有初始化时钟和sdram之前,axd load image 到哪里?

[复制链接]
4471|6
 楼主| wyuanq 发表于 2007-7-4 14:28 | 显示全部楼层 |阅读模式
最近搞2410的开发板,有点疑惑:我在ads中设置ro&nbsp;base=&nbsp;0x30000000,对应的是sdram.然后我将nandflash中的boot部分擦除掉了,也就是说复位cpu后,没有程序初始化时钟和sdram了。<br />在axd中执行load&nbsp;image操作,按理来说,应该是将axf文件下载到sdram的中,然后执行。但是现在sdram没有初始化,load&nbsp;image到什么地方呢?到sdram中恐怕是进不去吧。<br /><br />还有一个问题,既然2410的内部4kB的sram是不需要初始化就能使用的,那我是否可以将程序通过仿真器下载到内部sram中执行能(在ads中设置ro&nbsp;base=0x00000000)。做了实验,发现程序运行了一会就报错,运行不了了。但是我将程序烧写到nandflash&nbsp;中,然后reset,cpu自动地将nandflash中的程序搬运到内部sram中执行,这样就很顺利,程序运行的一直很好。为什么前一种方式不行呢?
mybao 发表于 2007-7-4 14:49 | 显示全部楼层

SRAM不能跑,可能SRAM已经是cache了,确保reset以后没有程序跑

sdram可用一个脚本文件初始化,不用自己写,有个图形界面来配置的
农民讲习所 发表于 2007-7-4 14:53 | 显示全部楼层

代码不过4K,完全可以在内部4K映象RAM中调试运行。

擦除NANDFALSH后,<b>断电</b>后应该不能下载image.
high 发表于 2007-7-4 15:40 | 显示全部楼层

可以在axd中直接手动初始化mem 控制权

内部的4k是隐藏的,恐怕没有办法直接访问。跳线选择nand启动,cpu自动将nand前面4k加载到内部的sram,然后从sram运行。
 楼主| wyuanq 发表于 2007-7-4 16:26 | 显示全部楼层

实践出真知啊

感谢楼上几位的回答,但我觉得你们都没有亲手试过。<br />我现在可以直接用内部的SRAM运行程序了,上午老是报错的原因是看门狗没有关闭的原因。总结一下:<br />在初始化时钟和SDRAM之前,可以把代码下载到内部的SRAM中(addr:0x0000~x1000),只要代码量不超过4KB就行了。注意一定要把看门狗关闭了。WTCON=0x00.
high 发表于 2007-7-4 16:39 | 显示全部楼层

成了就好

我用2440.没有用仿真器。所以给你的是参考建议。<br /><br /><br />STEPPINGSTONE&nbsp;(4K-Byte&nbsp;SRAM)&nbsp;<br />The&nbsp;NAND&nbsp;Flash&nbsp;controller&nbsp;uses&nbsp;Steppingstone&nbsp;as&nbsp;the&nbsp;buffer&nbsp;on&nbsp;ooting&nbsp;and&nbsp;also&nbsp;you&nbsp;can&nbsp;use&nbsp;this&nbsp;area&nbsp;for&nbsp;another&nbsp;purpose.&nbsp;<br /><br />图示,没有nand启动时候,没有现实4k的地址<br /> 相关链接:<a href='https://bbs.21ic.com/upfiles/img/20077/200774163652763.jpg'>https://bbs.21ic.com/upfiles/img/20077/200774163652763.jpg</a>
农民讲习所 发表于 2007-7-4 20:46 | 显示全部楼层

俺说的“擦除NANDFALSH后,断电后应该不能下载image.”是指SDRAM

  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

16

主题

29

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部