NAND FLASH Controler for IMX31

NAND FLASH Controler for IMX31
转自:coryxie.blogspot.com
与NOR Flash相比,NAND Flash的bit cell小,但是顺序
访问速度快;NOR Flash的bit cell大,但是随机访问速
度快;因此,通常用NAND来存放音频或者视频文件,而
用NOR来存放代码;

image
IMX31集成了NANDFC用以控制NAND FLASH,其中包括控制逻辑,2KB
RAM Buffer(用以在Coldboot时当作bootRAM,此后当作常规的bufferRAM)。
接口方面,NANDFC对内使用X16/X32方式与AHB接口;对外支持标准的
X8/X16的NAND FLASH;支持512B/2KB的PageSize。当AHB host需要读取
Nand flash的内容时,只需要设置NANDFC,NANDFC自动从NAND中读取
一个Page的数据到bufferRAM中,并产生中断来通知host,host就只需要从
这个内部的bufferRAM中读取一个Page的数据;当host要写NAND时,也只
需要配置NANDFC,并向这个buuferRAM写内容,再写一个编程命令。

NANDFC的操作模式由NFC_FMS, /F8BOOT, /NF16BOOT, NF_16BIT_SEL
四条线决定。通过boot配置,可以选择系统从NAND启动。这时,/F8BOOT,
/NF16BOOT其中之一低有效,从而也决定了总线宽度;NFC_FMS则决定NAND
的PageSize是512B还是2KB;如果不是从NAND启动,则NF_16BIT_SEL决定
总线的宽度(0为8位,1为16位)。

image
需要注意的是,如果/hreset在bootcode copy完成之后才上跳变为1,
则/ipi_int_nfc中断信号需要等到/hreset上跳变之后才能下跳变为0;
否则,如果/hreset在bootcode copy完成之前才已经跳变为1,那么
/ipi_int_nfc中断信号会在/hreset上跳变之后立即跳变为0。

你可能感兴趣的:(Flash)