Nand Flash

javasy   2009-3-19 17:58 楼主
          I/O 0 I/O 1 I/O 2 I/O 3 I/O 4 I/O 5 I/O 6 I/O 7
1st Cycle   A0    A1    A2    A3   A4     A5   A6     A7
2nd Cycle   A9    A10   A11   A12  A13    A14  A15    A16
3rd Cycle   A17   A18   A19   A20  A21    A22  A23    A24
4th Cycle   A25     *    *      *    *     *    *      *


NOTE : Column Address : Starting Address of the Register.
00h Command(Read) : Defines the starting address of the 1st half of the register.
01h Command(Read) : Defines the starting address of the 2nd half of the register.
* A8 is set to "Low" or "High" by the 00h or 01h Command.
* L must be set to "Low".
* The device ignores any additional input of address cycles than reguired.


寻址需要9位的列地址(512=2^9,页内的偏移量)5位页地址(32=2^5)和12位的块地址(4096=2^12)共26位地址线(64=2^26). 通过8位的I/O端口传送地址

前辈们说说1st Cycle  2nd Cycle  3nd Cycle 4nd Cycle这四个周期怎么寻得址??

回复评论 (7)

有没什么问题吗, 25位的地址经过四次送给FALSH,然后再拼起来(其实不是,但你可以这么想)。
点赞  2009-3-19 18:14
在写地址期间,每个#WE代表写一次(8位),NAND从数据线(8位)获得一个字节。
1st-4th,4个周期,就是4次#WE,nand获得4个字节,32bit,最高位为0,其余25位有效。
点赞  2009-3-19 19:14
A8 没有,A8的有些问题.....
点赞  2009-3-19 20:52
NandFlash有大Block和小Block之分,从楼主列出的寻址方式应该是小block的Nand,即1Block = 32Page = 32 * 512 = 16K,一个Page512Byte(大Block的Nand是1Block = 64Page = 64 * 2K = 128K),Nand的寻址方式通常是通过Row地址(Page)和Column地址(offset in one Page)方式来寻址的,这样就很明了,1st:A0 -- A7(+ Command 00 or 01)表示Page内的偏移地址,2st-4st:A9 -- A25(2^17,再根据512Bytes/Page,该NandFlash的大小应该是2^17 * 512 = 64M)表示操作的地址在哪个Page内,作为访问NandFlash的高位地址。因为该NandFlash采用Byte操作,所以要分成4个cycle来寻址:-)
点赞  2009-3-19 21:24
明白了

跟Block没关

Nand的寻址方式通常是通过Row地址(Page)和Column地址(offset in one Page)方式来寻址的

谢谢!!
点赞  2009-3-19 21:34
哦,有用
点赞  2009-3-19 21:56
4楼讲解的好详细,学习了。
点赞  2009-3-19 22:51
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复