Menu Close

并行接口NOR FLASH 存储器读写及应用

上节内容介绍了Flash Memory的原理、结构及分类。本节内容将介绍NOR Flash的读写及应用,并结合实例芯片MX29LV800对NOR Flash的硬件、接口、读写命令以及读写数据等操作进行详细介绍。

  1. 硬件及封装

图1为NOR Flash MX29LV800芯片的封装及接口描述,该芯片为并行接口的NOR Flash存储器,接口部分有地址线,数据线,片选信号读写信号等。图2为TSSOP的封装形式。

%title插图%num

图 1 MX29LV800 接口定义及SOP封装

%title插图%num

图2 MX29LV800 接口定义及TSOP封装

2. MX29LV800 管脚描述

NOR Flash MX29LV800的管脚描述如表1所示,

表1

管脚名称

(PIN Name)

PIN description 管脚描述
A0–A18 Address Input 地址输入
Q0–Q14 Data Input/Output 数据输入/输出的低15位
Q15/A-1 Q15(word mode) or

A-1 LSB Addr(Byte mode)

当运行在word模式时为数据的第16位(Q15)或

当运行在Byte模式时为地址线的A-1与A0–A18共同组成20根地址线

#CE Chip enable Input 芯片使能(片选),低电平有效

#WE

Write enable Input 写使能输入
#Byte Word/Byte Selection Input Word模式还是Byte模式选择:

当#Byte为低电平时,选择Byte模式,此时数据线为8位,Q15此时被用作最低位地址(A-1)。

当#Byte为高电平时,选择Word模式,此时数据线为16位,Q15此时被用作数据线的做高位。

#Reset Hardware Reset Pin 硬件复位脚,低电平有效
#OE Output Enable Input 输出使能管脚,低电平有效
RY/#BY Ready/Busy Output 空闲/忙输出指示脚,高电平为空闲,低电平指示芯片为擦除或编程阶段
VCC Power Supply Pin (2.7V–3.6V) 电源管脚,供电范围2.7V–3.6V, 可以采用3.3V 供电。
GND Grourd Pin

3. NOR FLSASH 存储器的读写及擦除

    • Nor Flash的读

读过程非常简单,只要#CE,#OE为低电平,#WE,#Reset为高电平,数据线就会输出给定地址对应的数据。读的过程不需要预先写入特定的命令。

    • Nor Flash写

对于闪存的写入,即控制栅极电压对浮置栅极充电。对栅极加压,使得浮置栅极存储的电荷足够多,超过阈值,就表示0。

    • Nor Flash擦除

闪存的擦除,即对浮置栅极进行放电,低于阈值,就表示1。加电 的过程与充电过程相反。

为了保护Nor Flash内的内容不被误操作改写或擦除, Nor Flash的写与擦除需要严格的命令配合。关于Nor Flash的命令操作,见本节后续内容。

4. 与Nor Flash 硬件设计相关的要点

程序及数据存储器:根据上面的管脚描述即可正确进行硬件电路的设计,在NOR FLASH进行读操作时,与SRAM的时序一致,因次可以直接作为可运行的程序存储器使用。实现XIP的功能(eXecutable In  Place)。

图3展示了在16位模式下的硬件电路设计实例。注意在图中采用的是TSOP48 的封装结构(不同的封装形式,管脚排列不同)。本设计的主控器将可以实MCU或FPGA。为了与更大容量的芯片兼容,将9,10两个NC(no connect)的管脚进行地址扩展,将来硬件板卡可以更大容量的芯片,如可以兼容MX29lV1600BBTC及MX29LV3200BBCT等。

%title插图%num

图3 Nor Flash 硬件原理图示意图。

5. Nor Flash 扇区的划分

MX29LV800的扇区划分是不均等的,有大小扇区之分,不同型号的芯片小扇区的位置也不相同,MX29LV800T表示小扇区在底部,如表2所示。在对扇区擦除的时候要注意。对于MX29LV800T/AT,SA15,SA16,SA17,SA18是小扇区,而MX29LV800B/AB的小扇区对应的是SA0,SA1,SA2,SA3。SAn由地址线A18-A12译码进行选择。

表2%title插图%num

思考题:

(1)阅读MX29LV800BBTC的数据手册,了解芯片的供电电压范围。

(2)各个管脚的电平范围

(3)“LV” 的含义

(4)复习在FPGA,MCU体系中各种电平标准

(5)熟练掌握nOE,nWE,nCE 与地址、数据的关系,以及学会如何看时序图及时序参数。

6. NOR Flash存储器内部逻辑及功能

(1)读数据,读数据过程与一般的SRAM一样,#CE,#OE 为低电平, #WE为高电平,#RESET 为高电平,在给定地址后(A18-A0),数据从D15-D0输出。

(2)其它操作:包括复位,擦除,编程写等都是按照特定的命令顺序进行,命令由地址,控制信号(#OE ,#WE ,#RESET ,#CE ),数据(D15-D0)共同译码决定。功能框图见图4。在特定的命令给定后( #OE ,#WE ,#RESET ,#CE )数据锁存并译码,写入状态寄存器。由写状态机产生对应的高压信号完成芯片的擦除或写操作。字线,位线的译码原理与掩膜技术的ROM原理基本相同。可见该芯片具有在线编程ISP (in system programmable)的功能。

%title插图%num

图4 MX29LV800内部逻辑框图

  • NOR Flash存储器命令功能表及使用

状态及功能命令,见功能命令表3,

表3

%title插图%num

根据表3的内容,对各个命令进行分析以便学习利用软件或FPGA对NOR Flash操作。

 

7.  编程及擦除操作:

在编程之前一定要先进行芯片或扇区擦除。擦除分整片擦除和扇区擦除两种,具体选用那种根据实际需要及编程需要进行。

  • 整片擦除的命令(Chip Erase):

整片擦除的命令总共6条命令,分6个步骤进行,地址/数据组合如下:

    • 16位模式(word):

(1)555H,AAH,(2)2AAH,55H(3)555H,80H(4)555H,AAH(5)2AAH,55H(6)555H,10H

    • 8位模式

(1)AAAH,AAH,(2)555H,55H(3)AAAH,80H(4)AAAH,AAH(5)555H,55H(6)AAAH,10H

  • 扇区擦除(Sector Erase)

扇区擦除在命令执行后只会对所操作的扇区起作用,其中SA是扇区的地址。扇区擦除还可以悬挂和恢复,比如在擦除期间想读其它扇区的数据或其它操作,就可以悬挂,完成其它操作后再恢复该扇区的擦除。

    • 16位模式(Word)

(1)555H,AAH,(2)2AAH,55H(3)555H,80H(4)555H,AAH(5)2AAH,55H(6)SA,30H

    • 8位模式(Byte)

(1)AAAH,AAH,(2)555H,55H(3)AAAH,80H(4)AAAH,AAH(5)555H,55H(6)SA,30H

%title插图%num

图 6 MX29LV800整片擦除流程图

%title插图%num

图7 MX29LV800整片擦除时序图(部分)

%title插图%num

图8 MX29LV800扇区擦除流程图

%title插图%num

图9 MX29LV800扇区擦除时序图(部分)

%title插图%num

图10 MX29LV800编程流程图

%title插图%num

图11 MX29LV800编程时序图(部分)

 

MX29LV800芯片使用手册

Posted in FPGA, 元器件, 存储器, 教材与教案, 文章, 资料区

发表评论

相关链接