急求助:Linux无法从NFlash(K9F1208U0A)启动

ruanqiong   2012-3-7 10:08 楼主
自己开了一个ARM架构板, CPU: S5PC100, SDRAM: K4T1G164QQ(两颗),Nand flash: K9F1208U0A。现在系统能从SD卡启动,对FLASH擦除操作后返回OK,但将SD卡取后,从FLASH启动串口不出现任何信息。有没有人知道是哪里出了问题,急求大家的帮助,不甚感谢!!!

回复评论 (14)

你的问题说明的太简单了,怎么知道问题出在哪啊?
点赞  2012-3-7 15:00

引用: 原帖由 紫电清伤 于 2012-3-7 15:00 发表 你的问题说明的太简单了,怎么知道问题出在哪啊?

 

就是选择从FLASH启动系统时,串口中一点信息都没有。而在SD卡启动时能打印信息,且可以对FLASH进行擦除操作,返回信息为OK。

点赞  2012-3-7 17:08

你NAND里烧程序了吗?

点赞  2012-3-10 16:38

引用: 原帖由 a0903030111 于 2012-3-10 16:38 发表 你NAND里烧程序了吗?

 

串口信息都没有,无法烧写程序啊

点赞  2012-3-12 11:17
哎! 先要使用JTAG将nand flash烧录启动image,才可以实现串口下载。 这个在手册里应该有介绍,
www.ctdisk.com/u/1283024 个人书库,持续更新中。
点赞  2012-3-12 18:18

引用: 原帖由 osoon2008 于 2012-3-12 18:18 发表 哎! 先要使用JTAG将nand flash烧录启动image,才可以实现串口下载。 这个在手册里应该有介绍,

 

"先要使用JTAG将nand flash烧录启动image"这一步已经在SD卡启动系统后通过USB烧写了,完成这步后,我选择了从flash启动系统,结果串口就没有了信息。我从硬件上测了下flash管脚电压,发现片选信号变为了高电平,所以导致芯片没有工作。现在就是不知道为什么片选突然变为了高?怎样调节?非常感谢!!

点赞  2012-3-13 09:04
我只玩过2410,2440, S5PC100的资料搜了一下没找到,如果sd启动应该串口有输出,而sd烧写flash之后却无输出,仔细对对实验手册,
1. 烧写时对flash选择有要求。
2. 烧写时是否要配置参数
3. flash是不是好的。
www.ctdisk.com/u/1283024 个人书库,持续更新中。
点赞  2012-3-13 17:47

引用: 原帖由 osoon2008 于 2012-3-13 17:47 发表 我只玩过2410,2440, S5PC100的资料搜了一下没找到,如果sd启动应该串口有输出,而sd烧写flash之后却无输出,仔细对对实验手册, 1. 烧写时对flash选择有要求。 2. 烧写时是否要配置参数 3. flash是不是好的。

 

谢谢你一直帮我想。[local]1[/local]这个s5pc100的资料.烧写flash时只对pagesize有要求,要求2K,flash也是好的。现在选择用flash启动后串口没有任何信息,且测试flash引脚高低电平后发现片选信号nCE为高了(应该为低),所以flash压根没有工作,但不知道电平变高问题出在哪里?

点赞  2012-3-13 20:50
还是有启动设备的选择。
找到一个v1.04版的规格书。
http://ishare.iask.sina.com.cn/f/19590727.html?from=like

P44, IROM CODE章节

The booting device can one of the followings,
• NAND Flash
• OneNAND  
• MMC or SD Memory including MoviNAND and iNAND
• USB

S5PC100 has 32KB ROM (iROM) and 96KB SRAM (iRAM) inside the chip. At the system reset, the program
execution starts at iROM.  

The boot loader is divided into the BL0(1st boot loader) and the BL1(2nd boot loader).
• BL0 which is placed in iROM loads BL1 from the booting device to iRAM. The booting device is determined by
the OM and NFMOD pins. In addition, according to the secure boot key values, BL0 checks the integrity of
BL1.
• BL1 has to initialize the DRAM controller. After initializing the DRAM controller, it loads the OS image from the
booting device to DRAM. And, according to the secure boot key values, BL1 checks the integrity of the OS
image.


Full booting sequence in BL0 is as follows,
1. Initialize the PLL & Clock setting with fixed value
2. Initialize the stack and heap region.
3. Initialize the Instruction Cache controller.
4. Load BL1 from the booting device to iRAM.
*

5. If secure booting is enabled, execute integrity check.
6. If integrity check passes, then jump to 0x34010. (First 4words are reserved.)
7. If integrity check fails, then it stops.
*
NOTE. In case of SD/MMC, iROM code loads 9KB at 0x34000 from the end of the booting device.  
*
NOTE. In case of OneNAND and NAND, iROM code loads 16KB at 0x34000 from the beginning (Block 0) of the
booting device.
*
NOTE. Bad block information is in the 6th byte of the spare area in case of 512 byte page NAND devices. And
the other NAND devices have bad block information in the first byte of the spare area.
www.ctdisk.com/u/1283024 个人书库,持续更新中。
点赞  2012-3-15 07:29
  学习了!
点赞  2012-3-15 09:25
烧写地址和启动方式的选择是不是不正确呢,好好检查一下,小问题。
pcb设计,样机调试,方案开发,www.pcbmcu.com
点赞  2012-3-20 16:41

引用: 原帖由 osoon2008 于 2012-3-15 07:29 发表 还是有启动设备的选择。找到一个v1.04版的规格书。 http://ishare.iask.sina.com.cn/f/19590727.html?from=like P44, IROM CODE章节 The booting device can one of the followings, • NAND Flash ...

 

 

 

启动设备是选了的,通过外设的开关来控制XOM及NFCON,就是选择用FLASH启动后串口没有任何信息,用万用表测得FLASH芯片的片选信号为高了(它应该是低有效)

点赞  2012-3-27 10:15
有些问题你自己看得更清楚。

用万用表可以漏到一些东西,最好尝试一下示波器和逻辑分析仪,来看下上电之后ce信号的变化。
www.ctdisk.com/u/1283024 个人书库,持续更新中。
点赞  2012-3-27 18:21

引用: 原帖由 osoon2008 于 2012-3-27 18:21 发表 有些问题你自己看得更清楚。 用万用表可以漏到一些东西,最好尝试一下示波器和逻辑分析仪,来看下上电之后ce信号的变化。

 

我现在没用示波器测,我想问下,如果测出是高的话下一步怎么做呢?

点赞  2012-3-27 18:56
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复