微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 大容量FLASH在单片机台标系统中的应用

大容量FLASH在单片机台标系统中的应用

时间:02-10 来源:互联网 点击:

1 引 言

FLASH是一种兼有紫外线擦除EPROM和电可擦可编程只读存储器(E2PROM)两者优点的新型非易失存储器。由于它可在线进行电可擦除和编程,芯片每区可独立擦写至少10,000次以上,因而对于需周期性地修改被储存的代码和数据表的应用场合,以及作为一种高密度的、非易失的数据采集和存储介质,FLASH都是理想的器件选择。随着其容量越来越大,FLASH对于数字图像的存储也具有了一定的能力。笔者所做的台标机就是用Intel公司生产的64Mbit(8MByte)的FLASH 28F640J5作为台标图像的存储介质。下面就以该台标机系统为例,介绍28F640J5在系统中的具体应用。

2 FLASH28F640J5简介

2.1 主要性能特点

28F640J5是一种采用ETOXⅡ工艺制成的56引脚的快擦写可用电擦除可编程存储器,由于首次使用了每单元存储两位的技术,因而每位占用的或非门资源更少,性能价格比更高。芯片采用分块结构分成64块,每块128kB,这个特性允许用户对其中任意一块数据进行擦除或编程,每块擦除时间仅需1秒。在块擦除过程中如果需要中断擦除操作,可暂停擦除,待处理完其它事后再继续擦除。28F640J5仅需+5V供电电压,工作电流不大于80mA,典型值为 40mA,备用状态时不大于125μA,典型值为80μA,三态输出,与TTL电平兼容。可循环擦写次数为10万次,一般商业品工作温度范围为-20℃~+70℃。

2.2 芯片系统结构及引脚信号

芯片采用一种命令用户接口CUI(CommandUser Interface)和写状态机WSM(WriteState Machine)结构,以此简化模块擦除和编程。命令用户接口是微处理器或微控制器与芯片内部操作之间的界面。无论是模块擦除还是字节编程,只要向CUI 写入两个命令序列,内部的写状态机WSM就会自动地定时执行擦除或编程算法(包括校验操作),从而减轻了微处理器或微控制器的负担。另外,为了指示WSM 的状态和何时以及是否成功完成了模块擦除或字节编程操作,设置了一个状态寄存器SR(State Register)。这样,状态寄存器SR就成了微处理器与写状态机之间的接口。芯片引脚A0-A22为地址线,当为字操作时A0不起作用,A1为最低位地址线。DQ0-DQ7为低字节数据总线,输入数据在输入缓冲区进行编程和写操作,输入命令时在命令用户接口(cui)进行写操作,当状态机忙时DQ6-DQ0不起作用,而状态寄存器的第7位(SR.7)决定状态机的状态。DQ8-DQ15为高字节位数据总线,在字操作模式中使用到。CE0、CE1、CE2为芯片选通信号,当信号有效时,就激活了器件的控制逻辑、输入缓冲器、译码器和敏感放大器,当器件没有选通时,片上电压自动降低到待机电压。RP#为复位或使电压回到待机状态的信号,当RP#为低时,芯片处于待机模式,此时芯片禁止写操作,当RP#为高时可进行读写、擦除等操作,但不要一直将RP#置高,以免影响器件的使用寿命。OE#为输出选通信号,低电平有效,在读周期中,输出缓冲器被选通,数据通过缓冲器输出。WE#为写选通信号。STS为状态位,它显示内部状态机的状态。BYTE#为8位或16 位操作模式选择信号,当BYTE#为低时,器件工作在8位操作模式,DQ8-DQ15挂起,当BYTE#为高时,器件工作在16位操作模式。VPEN是擦除、编程块锁定位操作使能信号,当VPEN<= VPENLK时,存储器的内容不能改变。

3 单片机与芯片接口的设计

因为单片机80C320的地址线只能有16根,仅能寻址64K外存空间。而28F640的内部芯片地址线有23根,所以在设计时对FLASH采取分段设计的方法,设有存储器段寄存器(高位地址寄存器)“WHDZ”。由于单片机的地址空间中既有寄存器,又有存储器,为了方便起见,将单片机的P1.7口定义为寄存器“IO”或存储器访问的区分标志“IORAM”。当“IORAM”为1时,单片机的低八位地址线有效,通过EPLD寻址FLASH的高八位地址(实际为7位),当“IORAM”为0时,单片机80C320寻址存储器低十六位地址空间。这样,单片机的64K外存空间连续寻址配合高位地址寄存器 WHDZ使用,存储器空间的寻址范围可达16MByte。单片机对存储器读写的操作步骤如下:(1)置“IORAM”位,写段地址寄存器“WHDZ”,定义所操作存储器的高位地址。(2)清“IORAM”位,对选择的存储器在段内进行读写。

4 软件设计

28F640J5的操作命令比较多,共有14条,如表1所示。

表1中的读阵列、读标识码、读状态寄存器、清状态寄存器、写缓冲区、块擦除、字/字节编程、块擦除挂起、块擦除继续是Intel公司28F系列 FLASH的基本命令集,其它命令为28F640的扩展

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top