Flash存储器Am29F040结构分析
扫描二维码
随时随地手机看文章
Am29F040是AMD公司生产的Flash存储器,主要作用是固化程序和保存历史数据,也就是开机后执行闪存的程序,并在程序执行的过程中实时地保存或修改其内部的数据单元。下面首先介绍Am29F040的特点和操作。Am29F040是采用5 V单电源供电的可编程只读存储器,是一种电可擦除与重新编程的器件。该器件由8个独立的64 K字节块组成,访问速度为55~150 ns。片内的状态机控制编程和擦除器件、嵌入式字节编程与区段/芯片擦除功能是全自动的。内部结构框图如图1所示。
set="2" sizcache="3">
A0~A18:地址线。其中A8~A18提供存储区地址,行地址确定所在扇区;A0~A7选定某扇区的一 个字节,扇区容量是256字节。DQ0-DQ7:数据输入/输出。在读周期输出数据; 在写周期接收数据。写过程中写入的数据被内 部锁存。CE:输入,芯片使能, 低电平时选中该器件。OE:输入,输出使能, 低电平时打开数据输出缓冲 区,允许读操作WE:输入,写使能,低电平时允许写操作。Vcc为5V电源。Vss为地。
工作方式有读方式、待机方式、输出禁止及算法选择。例如,对于写操作的编程命令,如表1所列。 其中:RA为被读出的存储单元地址; PA为被编程的存储单元地址; RD为所选地址单元被读出的数据; PD为所选地址单元被编程的数据。除编程地址、区段地址和读地址之外的所有总线周期地址,地址引脚A18、A17、A16、A15为高或低。
下面以命令表的编程命令为例,简要介绍字节编程。表1所列命令是一个4总线周期指令。首先,在地址5555H写入数据0AAH,地址2AAAH写入数据055H,再在地址5555H写入数据AOH,最后是编程的地址和数据。 对于芯片擦除功能,自动地提供编程和电擦除之前,校验所有存储单元所需的电压和时序,然后自动擦除并校验单元界限。利用数据轮询(data-polling)特性,可以监视自动芯片擦除操作期间器件的状态,以检验操作是否完成。
程序如下:int Chip-Erase (){*(int*)0x00005555=0xAAAAAAAA; /*写芯片擦除命令部分*/*(int*)0x00002AAA=0x55555555;*(int*)0x00005555=0x80808080;*(int)0x00005555=0xAAAAAAAA:*(int*)0x00002AAA=0x55555555;*(int*)0x00005555=0x10101010;while((*(int)0x00005555&0x80808080)!=0x80808080) /*数据轮询*/ 对于区段擦除暂停,在区段擦除期间擦除暂停有效,数据值为BOH,不管地址值。区段擦除恢复,仅在擦除暂停之后擦除有效,数据值为30H,不管地址值。下面是简要的程序代码:int Sector- Erase(sectadd) int * sectadd;{ *(int*)0x00005555=0xAAAAAAAA; /*写区段擦除命令部分*/ *(int*)0x00002AAA=0x55555555; *(int*)0x00005555=0x80808080; *(int*)0x00005555=0xAAAAAAAA; *(int*)0x00002AAA=0x55555555; *sectadd=0x30303030; 对于数据保护,此特性禁止在1-8个区段的任何组合进行编程和擦除操作。执行编程和擦除被保护区段的命令时,不改变区段内的数据。数据轮询位和跳转位工作在2~100μs,然后返回到有效数据。在地址引脚A9和控制引脚E,使用11.5~12.5 V高电压VID’且在控制引脚E上使用VIL将使此特性起作用。其具体操作为:当W为VIH’E为VIL且地址引脚G为VID时,区段保护方式被激活,地址引脚A18、A17、A16用来选择被保护的区段。一旦地址稳定,W处于脉冲低电平,操作开始于W的下降沿。
set="3" sizcache="3">