首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

再次深入讨论flash配置问题(不管你遇到没,都来看看吧)

再次深入讨论flash配置问题(不管你遇到没,都来看看吧)

我设计的板使用SST的39VF6401              4M*16bit


(1)地址按Nios A1--Flash A0时............程序在sram和sdram中都跑不起来.......(sopc里面CFI addr 22   data 16)...IDE里:
Using cable "ByteBlasterII [LPT1]", device 1, instance 0x00
Pausing target processor: not responding.
Resetting and trying again: FAILED
Leaving target processor paused


(2)地址按Nios A0--Flash A0时............程序在sram和sdram中都跑起来了..........(sopc里面CFI addr 21   data 16)...此时FLASH只有4MB了...................现在的问题是程序在FLASH中跑不起来,IDE里:
Using cable "ByteBlasterII [LPT1]", device 1, instance 0x00
Processor is already paused
Reading System ID at address 0x00500858: verified


Downloading 00000000 ( 0%)
Downloaded 53KB in 1.6s (33.1KB/s)


Verifying 00000000 ( 0%)
Verify failed between address 0x0 and 0xD193
Leaving target processor paused


此时,用flash programmer,,,,问题如下注意此时IED检测到FLASH的大小)
# Creating .flash file for the project
$SOPC_KIT_NIOS2/bin/elf2flash --base=0x00000000 --end=0x1fffff --reset=0x0 --inp
ut=hello_world_0.elf --output=cfi_flash_0.flash --boot=$SOPC_KIT_NIOS2/component
s/altera_nios2/boot_loader_cfi.srec


# Programming flash with the project
$SOPC_KIT_NIOS2/bin/nios2-flash-programmer --sidp=0x00500858 --id=1639331538 --t
imestamp=1154790334 --base=0x00000000 cfi_flash_0.flash
Using cable "ByteBlasterII [LPT1]", device 1, instance 0x00
Resetting and pausing target processor: OK
Reading System ID at address 0x00500858: No CFI table found at address 0x0000000
0
verified
Leaving target processor paused


问题总结:从理论上讲我认为第一种配置应该是正确的....但是程序完全跑不起来(sram,sdram,flash中都一样),,,,,,,,,,,接照第二种配置,程序只是在flash中跑不起来,,,,,,,,但是出现的问题我完全解释不了..........


上述问题是反复实验了N遍总结出来的..........大家都帮忙分析哈...

http://tutanlong.bokee.com
问题描述的很详细,我们分析一下,一会儿给你个答案!
想看更多的东西?来我的博客,精彩多多! http://blog.eccn.com/u/bjxiong/index.htm
答案出来没?
你的nios和Q2的版本是多少?
地址按Nios A1--Flash A0时,Pausing target processor: not responding导致这个的原因太多太多,不一定是由于地址线产生的。这样的接法才是正确的。
可以在command line里面直接使用elf2flash和nios2-flash-programmer两个命令来对cfi flash编程,看一下资料很快就能搞定的,比用nios的flash programmer要灵活些。
不知你解决了没有,接法肯定是第一种方式的,另外,flash的某些配置管脚是否都有所处理了,如果sram和sdram都是共用三态总线,那么就更应该注意这些信号的处理了,不然很容易相互干涉。另外确认一下你用的那个flash芯片是否支持CFI。
[glow=255,red,2] FPGA NiosII开发板 USB-Blaster[/glow]-可配USB2.0、10M/100M网络、视频等扩展模块-http://www.21control.com

同意楼上的,大家应该再讨论一下这个问题

关于flash配置问题,我看到kzw版主写了个东西

大家可以看看

想看更多的东西?来我的博客,精彩多多! http://blog.eccn.com/u/bjxiong/index.htm

应该是用第一种才对,这样子才符合你的flash的大小4M?6,即8M?。你用16位数据线,所以地址线要有22根,第一种设置的时候地址0--22,0位地址线是给8位数据的时候用的,你使用16位数据时,应该用1--21根地址线,这样子就不会出现no cfi table的现象

应该是用第一种才对,这样子才符合你的flash的大小4M?6,即8M?。你用16位数据线,所以地址线要有22根,第一种设置的时候地址0--22,0位地址线是给8位数据的时候用的,你使用16位数据时,应该用1--21根地址线,这样子就不会出现no cfi table的现象

返回列表