WINCE - MLC型 NANDFLASH TWO_PLANE PAGE PROGRAM\READ
2013-08-01 15:17
686 查看
/***********************************************************************/
/* Bryan Wang */
/* 2013-8-1 */
/***********************************************************************/
以K9GAG08U0D为例,整理TWO-PLANE读写操作。
1、TWO_PLANE PAGE PROGRAM
Two-Plane page program is an extension of page program, for a single plane with 4314 byte data registers. Since the device is equiped with two memory planes, activating the two sets of 4314 bytes data registers enables a simultaneous programing of two pages.
After writing the first set of data up to 4314 byte into the selected data registers via cache registers, Dummy Page Program commad(11h) instead of actual Page Program command(10h) is inputted to finish data-loading of the first plane. Since no programming
process is involved, R//B remains in Busy state for a short period of time(tDBSY). Read Status command(70h) may be issued to find out when the device returns to Ready state by polling the Read/Busy status bit(I/O 6). Then the next set of data for the other
plane is inputted after the 81h command and address sequences. After inputting data for the last plane, actual True Page Program(10h) instead of dummy Page Program command(11h) must be followed to start the programing process. The operation of Ready/Busy and
Read Status is the same as that of Page Program. Although two planes are programmed simultaneously, pass/fail is not availalbe for each page when the program operation completes. Status bit of I/O is set to "1" when any of the page fails.
基础知识
K9GAG08有两个memory plane, 分别为plane 0 和plane 1, 每个plane包含2048个块,每个plane都有一个data registers(有时也叫做页寄存器,page register),用于缓存数据。
Two-Plane编程的顺序如下图:
N=0时, 那么Flash会先写block 0的第0页,再写block 1的第0页,然后依次为:【block 0 page 1】 -->【 block1 page 1】 -->【block 0 page 2】 -->【 block1 page 2】......
操作步骤、时序
(1)发送命令80h
(2)发送Plane 0中要操作的地址
(3)发送命令11h
(4)等待Read/Busy位变为Ready状态。可用通过检测R/B Pin脚电平,也可以发送Read Status命令,检测Ready/Busy位(I/O 6)。
(5)发送命令81h
(6)发送Plane 1中要操作的地址
(7)发送命令10h
(8)等待Read/Busy位变为Ready状态。可用通过检测R/B Pin脚电平,也可以发送Read Status命令,检测Ready/Busy位(I/O 6)。
(9)检验写操作是否成功:发送Read Status命令,检测状态为I/O 0, 如果该位为1,说明写操作失败;如果该位为0,说明写操作成功。
2、TWO-PLANE PAGE READ
Two-Plane Page Read is an extension of Page Read, for single plane with 4314 byte data registers. Since the dvice is equipped with two memory planes, activating the two sets of 4314 bytes data registers enables a random read of two pages. Two-Plane Page
Read is initiated by repeating command 60h followed by three address cycles twice. In this case, only same page of same block can be selected from each time.
After Read Confirm command(30h) the 8628 bytes of data within the selected two page are transferred to the cache registers via data registers in less than 60us(tR). The system controller can detect the completion of data transfer(tR) by monitoring the output
of R/B pin.
Once the data is loaded into the cache registers, the data output of first plane can be read out by issuing command 00h with Five Address Cycles, command 05h with two column address and finally E0h. The data output of second plane can be read out using the
identical command sequences.
操作步骤、时序
(1)发送60h,然后发送plane 0 中对应页的地址(3 cycle)
(2)发送60h,然后发送plane 1 中对应页的地址(3 cycle)
(3)发送30h,此时,8628字节的数据被传输每个plane的页寄存器中
(4)检测R/B pin脚信号,判断数据传输是否完成
(5)发送00h,并发送plane 0 中要操作的地址(5 cycle,其中两个cycle的 column address被置为全0状态),然后发05h,再发column address(2 cycle),最后发E0h, 接收plane 0 中读取的数据
(6)发送00h,并发送plane 1 中要操作的地址(5 cycle,其中两个cycle的 column address被置为全0状态),然后发05h,再发column address(2 cycle),最后发E0h, 接收plane 1 中读取的数据
/* Bryan Wang */
/* 2013-8-1 */
/***********************************************************************/
以K9GAG08U0D为例,整理TWO-PLANE读写操作。
1、TWO_PLANE PAGE PROGRAM
Two-Plane page program is an extension of page program, for a single plane with 4314 byte data registers. Since the device is equiped with two memory planes, activating the two sets of 4314 bytes data registers enables a simultaneous programing of two pages.
After writing the first set of data up to 4314 byte into the selected data registers via cache registers, Dummy Page Program commad(11h) instead of actual Page Program command(10h) is inputted to finish data-loading of the first plane. Since no programming
process is involved, R//B remains in Busy state for a short period of time(tDBSY). Read Status command(70h) may be issued to find out when the device returns to Ready state by polling the Read/Busy status bit(I/O 6). Then the next set of data for the other
plane is inputted after the 81h command and address sequences. After inputting data for the last plane, actual True Page Program(10h) instead of dummy Page Program command(11h) must be followed to start the programing process. The operation of Ready/Busy and
Read Status is the same as that of Page Program. Although two planes are programmed simultaneously, pass/fail is not availalbe for each page when the program operation completes. Status bit of I/O is set to "1" when any of the page fails.
基础知识
K9GAG08有两个memory plane, 分别为plane 0 和plane 1, 每个plane包含2048个块,每个plane都有一个data registers(有时也叫做页寄存器,page register),用于缓存数据。
Two-Plane编程的顺序如下图:
N=0时, 那么Flash会先写block 0的第0页,再写block 1的第0页,然后依次为:【block 0 page 1】 -->【 block1 page 1】 -->【block 0 page 2】 -->【 block1 page 2】......
操作步骤、时序
(1)发送命令80h
(2)发送Plane 0中要操作的地址
(3)发送命令11h
(4)等待Read/Busy位变为Ready状态。可用通过检测R/B Pin脚电平,也可以发送Read Status命令,检测Ready/Busy位(I/O 6)。
(5)发送命令81h
(6)发送Plane 1中要操作的地址
(7)发送命令10h
(8)等待Read/Busy位变为Ready状态。可用通过检测R/B Pin脚电平,也可以发送Read Status命令,检测Ready/Busy位(I/O 6)。
(9)检验写操作是否成功:发送Read Status命令,检测状态为I/O 0, 如果该位为1,说明写操作失败;如果该位为0,说明写操作成功。
2、TWO-PLANE PAGE READ
Two-Plane Page Read is an extension of Page Read, for single plane with 4314 byte data registers. Since the dvice is equipped with two memory planes, activating the two sets of 4314 bytes data registers enables a random read of two pages. Two-Plane Page
Read is initiated by repeating command 60h followed by three address cycles twice. In this case, only same page of same block can be selected from each time.
After Read Confirm command(30h) the 8628 bytes of data within the selected two page are transferred to the cache registers via data registers in less than 60us(tR). The system controller can detect the completion of data transfer(tR) by monitoring the output
of R/B pin.
Once the data is loaded into the cache registers, the data output of first plane can be read out by issuing command 00h with Five Address Cycles, command 05h with two column address and finally E0h. The data output of second plane can be read out using the
identical command sequences.
操作步骤、时序
(1)发送60h,然后发送plane 0 中对应页的地址(3 cycle)
(2)发送60h,然后发送plane 1 中对应页的地址(3 cycle)
(3)发送30h,此时,8628字节的数据被传输每个plane的页寄存器中
(4)检测R/B pin脚信号,判断数据传输是否完成
(5)发送00h,并发送plane 0 中要操作的地址(5 cycle,其中两个cycle的 column address被置为全0状态),然后发05h,再发column address(2 cycle),最后发E0h, 接收plane 0 中读取的数据
(6)发送00h,并发送plane 1 中要操作的地址(5 cycle,其中两个cycle的 column address被置为全0状态),然后发05h,再发column address(2 cycle),最后发E0h, 接收plane 1 中读取的数据
相关文章推荐
- NAND Flash Page Read Command and Address
- MLC型和SLC型NAND_FLASH的含义
- u-boot nand flash read/write cmd
- WinCE中nandflash驱动开发介绍 +WinCE中地Flash分区和CheckSum+ NAND和NOR的比较
- NAND / NOR Flash read / write speed reference
- u-boot nand flash read/write cmd 调用关系和用法
- u-boot nand flash read/write cmd
- nand_get_flash_type: second ID read did not match 0e,ec against 0b,0b
- 关于6410中4bit s3c_nand_read_page_4bit函数疑问
- u-boot nand flash read/write cmd
- NAND FLASH MEMORY K9F1216U0A
- TreeFTL:Efficient RAM Management for High Performance of NAND Flash-based Storage Systems-论文注释笔记
- WINCE下IIC接口FLASH驱动
- U-boot-2014.04移植到MINI2440(7) nand flash datasheet及arm9控制寄存器分析
- 嵌入式系统中Nand-Flash的原理及应用
- Nor Flash & Nand Flash & OneNand Flash
- 【数据结构与算法】两级页表(Two-Level Page Table)
- s3c2440 nand flash controller
- NANDFlashSim
- 2K Page K9K8G08 WritePage ReadPage