实例讲解NAND Flash原理和使用

发布时间:2024-05-04   浏览次数:2274
导读:本文以Micron公司的MT29F2G08为例介绍NAND Flash原理和使用。NAND的内部存储阵列是以页为基本单位进行存取的。

本文以Micron公司的MT29F2G08为例介绍NAND Flash原理和使用。

1. 概述

MT29F2G08使用一个高度复用的8-bit总线(I/O[7:0])来传输数据、地址、指令。5个命令脚(CLE、ALE、CE#、WE#)实现NAND命令总线接口规程。3个附加的脚用作: 控制硬件写保护(WP#)、监视芯片状态(R/B#),和发起上电自动读特征(PRE-仅3V芯片支持)。注意, PRE功能不支持宽温芯片。

MT29F2G08内部有2048个可擦除的块,每个块分为64个可编程的页,每个页包含2112字节(2048个字节作为数据存储区,64个备用字节一般作为错误管理使用)。

每个2112个字节的页可以在300us内编程,每个块(64x2112=132K)可以在2ms内被擦除。片上控制逻辑自动进行PROGRAM和ERASE操作。

NAND的内部存储阵列是以页为基本单位进行存取的。读的时候,一页数据从内部存储阵列copy到数据寄存器,之后从数据寄存器按字节依次输出。写(编程)的时候,也是以页为基本单位的:起始地址装载到内部地址寄存器之后,数据被依次写入到内部数据寄存器,在页数据写入之后,阵列编程过程启动。

为了增加编程的速度,芯片有一个CACHE寄存器。在CACHE编程模式,数据先写入到CACHE寄存器,然后再写入到数据寄存器,一旦数据copy进数据寄存器后,编程就开始。在数据寄存器被装载及编程开始之后,CACHE寄存器变为空,可以继续装载下一个数据,这样内部的编程和数据的装载并行进行,提高了编程速度。

内部数据搬移命令(INTERNAL DATA MOVE)也使用内部CAHCE寄存器,通常搬移数据需要很长时间,通过使用内部CACHE寄存器和数据寄存器,数据的搬移速度大大增加,且不需要使用外部内存。

2. 功能框图

实例讲解NAND Flash原理和使用

3. 管脚

名称

类型

描述

ALE

I

地址锁存使能。ALE为高时,在WE#下降沿,地址信息通过I/O[7:0]锁存片内的地址寄存器。如果传输的不是地址信息,ALE应该为低。

CE#

I

片选。一旦器件进入PROGRAM或ERASE操作,CE#可以变无效。

CLE

I

命令锁存使能。CLE为高时,在WE#上升沿,命令通过I/O[7:0]锁存到命令寄存器,当不传输命令时,CLE应该为低。

PRE

I

上电读使能。

RE#

I

读使能。

WE#

I

写使能。

WP#

I

写保护。当为低时候,所有的PROGRAM和ERASE都被禁止。

I/O[7:0]

I/O

数据输入/输出。传输命令、数据、地址。仅在读操作时,数据是输出。

R/B#, R/B2

O

准备好/忙。集电极开路输出。外部需要接上拉电阻,这个脚表示芯片正在进行PROGRAM或ERASE操作。在读操作期间,表示数据正从阵列中传输到串行数据寄存器中,一旦这些操作完成,R/B#回到High-Z状态。

Vcc

电源

电源

Vss

4. 寻址

实例讲解NAND Flash原理和使用

Block地址和页地址 = 实际的页地址,希望通过这个图,我们能理解块、页、块地址,页地址,列地址,备份空间,备份地址

实例讲解NAND Flash原理和使用

Cycle

I/O7

I/O6

I/O5

I/O4

I/O3

I/O2

I/O1

I/O0

1

CA7

CA6

CA5

CA4

CA3

CA2

CA1

CA0

2

LOW

LOW

LOW

LOW

CA11

CA10

CA9

CA8

3

RA19

RA18

RA17

RA16

RA15

RA14

RA13

RA12

4

RA27

RA26

RA25

RA24

RA23

RA22

RA21

RA20

5

LOW

LOW

LOW

LOW

LOW

LOW

LOW

RA28

CAx:列地址;RAx=行地址

5. 总线操作

CLE

ALE

CE#

WE#

RE#

WP#

PRE#

MODE

H

L

L

上升沿

H

X

X

读模式

命令输入

L

H

L

上升沿

H

X

X

地址输入

H

L

L

上升沿

H

H

X

写模式

命令输入

L

H

L

上升沿

H

H

X

地址输入

L

L

L

上升沿

H

H

X

数据输入

L

L

L

H

下降沿

X

X

依次读和数据输出

L

L

L

H

H

X

X

在读期间(忙)

X

X

X

X

X

H

X

在编程期间(忙)

X

X

X

X

X

H

X

在擦除期间(忙)

X

X

X

X

X

L

X

写保护

X

X

H

X

X

0V/Vcc

0V/Vcc

待机

上电自动读:在上电期间,PRE为VCC,3V VCC器件自动传输[敏感词]页到数据寄存器,而无需要发布一个命令或地址锁存序列。在VCC达到大约2.5V的时候,内部电压检测器触发上电自动读功能。在[敏感词]页数据copy到数据寄存器过程中,R/B#为低,当copy结束后,R/B#变高,在RE#脉冲的作用下[敏感词]页数据可以依次输出。

实例讲解NAND Flash原理和使用

6. 命令表

操作

周期1

周期2

在忙期间有效

PAGE READ

0x00

0x30

NO

PAGE READ CACHE MODE START

0x31

-

NO

PAGE READ CACHE MODE START LAST

0x3F

-

NO

READ for INTERNAL DATA MOVE

0x00

0x35

NO

RANDOM DATA READ

0x05

0xE0

NO

READ ID

0x90

-

NO

READ STATUS

0x70

-

NO

PROGRAM PAGE

0x80

0x10

NO

PROGRAM PAGE CACHE

0x80

0x15

NO

PROGRAM for INTERNAL DATA MOVE

0x85

0x10

NO

RANDOM DATA INPUT for PROGRAM

0x85

-

NO

BLOCK ERASE

0x60

0xD0

NO

RESET

0xFF

-

YES

7. PAGE READ,0x00-0x30

实例讲解NAND Flash原理和使用

5个地址周期,确定了读出的起始地址,数据才RE#脉冲的作用下,从这个起始地址开始依次输出,直到这一页的结束。

8. RANDOM DATA READ,0x05-0xE0

随机数据读,是为了用户能够设定新的列地址,增加数据读出的灵活性,随即读模式在页读(0x00-0x30序列)后使能。这个命令的发布次数是不受限制的。但仅仅是当前页数据的读出。

实例讲解NAND Flash原理和使用

9. PAGE READ CACHE MODE START,0x31;PAGE READ CACHE MODE START LAST,0x3F

发布PAGE READ命令后,在R/B#变高后,在发送0x31命令,这时启动将数据寄存器的内容传给CACHE寄存器,然后就可以顺序从CACHE里读[敏感词]个PAGE READ命令获得数据,由于这是数据寄存器是没有用的,因此,芯片自动启动读下一页的PAGE READ命令,将下一页读到数据寄存器,可以看出这么做提高的读出的速度,除了[敏感词]个PAGE READ命令外,其他PAGE READ命令都是后台自动进行的。再后一次使用0x3F命令,以便禁止芯片再次自动发布PAGE READ命令。

实例讲解NAND Flash原理和使用

10.READ ID,0x90

读出厂家的芯片标识。

实例讲解NAND Flash原理和使用

11. READ STATUS,0x70

实例讲解NAND Flash原理和使用

读出芯片的8bit状态。可以通过RE#脉冲,反复读。

12.编程操作

PROGRAM PAGE 0x80-0x10:

Micron NAND FLASH仅支持页的编程,在一个块以内,页必须从一个块的页低位到这个块的页的高位连续编程,禁止随机页地址的编程。

芯片也支持页的部分编程操作,这意味着任何单个位在需要一个擦除之前仅可以被编程一次,然而,这种页能被划分成在需要一个擦除之前允许大8个编程操作。

SERIAL DATA INPUT 0x80:

PAGE PROGRAM操作要求加载SERAIL DATA INPUT(0x80)命令进入命令寄存器,随着5个地址周期之后,串行数据通过连续的WE#周期加载到值得的起始地址,PROGRAM(0x10)命令在数据输入完成之后被写入,内部写状态周期自动执行合适的编程算法,并控制所有必要的定时编程和比较操作。写比较仅仅检测“1”是否被成功地编程为“0”了。

R/B#在阵列编程期间(tPROG)为低,在编程操作期间,仅READ STATUS和RESET命令有效,状态寄存器的Bit6反映R/B#的状态,当芯片准备好时,读Bit0的状态确定编程操作是否成功或失败,命令寄存器在新的有效命令写入之前,一直停留在读状态寄存器模式。

实例讲解NAND Flash原理和使用

RANDOM DATA INPUT 0x85:

在发起

上一条:SSD Trim介绍 下一条:没有了 返回列表

联系方式

办公地址:深圳市宝安区新桥街道新二体育中心综合楼同方创想公社606室

服务热线:0755-27502764

全国产/企业级:135-1068-5504

                                 188-9877-7001

行业/工规:135-3095-1400

                          189-2939-2673

邮箱地址:sales@pancunstorage.com

© 2018 深圳市磐存科技有限公司 All rights reserved 粤ICP备19037277号 技术支持:万创网