老古开发网首页
导航:老古开发网首页文章索引文章分类嵌入式系统→[C8051F的超大容量Flash存储器扩展]
| -文章搜索 - 最新文章 - |

C8051F的超大容量Flash存储器扩展

发布时间:2006年9月11日 点击次数:1591
来源:   作者:西北工业大学 赵文彬 向平
 

摘要 NAND结构Flash数据存储器件是超大容量数据存储的理想选择,当前被广泛应用于U盘、MP3和数码相机的数据存储。本文对该类型Flash的基本操作进行研究并对实际应用系统给予验证,揭示了NAND结构Flash的操作规律。

关键词 NAND Flash 数据存储 C8051F

引言

  大容量数据存储是单片机应用系统的瓶颈,受到容量、功耗、寻址方式的约束。突破容量限制,可以很大程度上扩展和提高应用系统的总体功能。Sumsung公司的NAND结构Flash存储器件是一款性价比很高的超大容量数据存储器件,在MP3、U盘、数码相机和PDA中有广泛的应用,且市场占有份额逐年加大。用该器件作为各种单片机尤其是嵌入式系统的数据存储器,可以完美地解决容量限制,实现灵活操作,势必成为数据存储的主流方向。

1  器件介绍

  NAND结构Flash是Sumsung公司隆重推出并着力开发的新一代数据存储器件,电源电压1.7~3.6V,体积小,功耗低,容量最大可达1GB,按页进行读写,按块擦除,通过I/O口分时复用作为命令/地址/数据。本次应用开发的是NAND结构16MB的K9F2808UOB,其它大容量的器件只比该型号送出的地址多了几字节,操作指令和时序相同。具体结构说明如图1所示。


图1  存储器结构示意图

  由图1可知,该器件由1K个块(block)组成,每个块有32页,每页有528字节,这528字节分成A、B、C三个区。对每一页的寻址需要通过I/O口送出三个地址,第二、三行地址(A9~A23)指明寻址到某一页,第一列地址指明寻址到页的指定区中某一字节。对页的分区命令如表1所列。

表1  起始指针位置与区域关系对照表

  由表1可以看出,00H、01H、50H只是选区指针。选定区的内部寻址是由第一个列地址完成的,A0~A7可以最大寻址256字节。

2  应用举例

  在开发便携式心电信号采集监视仪中,K9F2808被用做心电采样数据存储器。MCU采用美国Cygnal公司的SoC增强型单片机C8051F020,内部RAM共有4352字节,I/O支持双向操作等。Flash的命令引脚要接到端口1上去,端口3是命令/地址/数据的复用形式。显然这里的数据是并行的,因此操作速度很快,达到了读页 1.2ns,写页200μs。图2给出了芯片的接口电路图。由于篇幅所限,图3只给出写页的命令时序,并对相关的指令代码做简要说明。


图2  接口电路


图3  写操作时序

  在写页之前,MCU的RAM中就应该存有采样来的528字节的数据。写操作时,先指出写开始地址。这由选区命令和第一个列地址来共同指定,以后在写页时就可以忽略不写。此处为了最大限度存储数据,开始地址定为A区的00H。为了指定这个地址,必须在送出命令80H之前送出选区命令00H,同时地址A0~A7置为0。紧跟在80H之后送出三个地址,第一个列地址已经是00H,第二、三页地址只要指定A9~A23就可以了。随后连续送出528个数据字节,为了把数据从Flash的数据寄存器写入对应存储单元,接下来再写入命令10H。经过约500μs的物理写入,就可以进行状态查询了。写入命令字70H后,从Flash的I/O0位就可以读出操作结果标志。在执行主代码之前,需要对单片机进行初始化和定义操作子函数。详细的写入程序清单请参看本刊网站www.dpj.com.cn。

3  小结

  以上操作代码成功实现了对Sumsung公司NAND结构Flash的页写入,其它基本操作只要在写页的基础上进行修改即可。在使用该器件时要注意:①所选单片机最好是高速的,内部RAM要大,端口支持实时双向输入输出;②由于该Flash的操作时序是ns级,所以在调试时要注意指令的安排顺序和有选择地加入空操作指令,以满足其精确的时序要求;③对于实施信号检测采样的各种工业应用,本文的大容量Flash可圆满实现各种基本操作。

参考文献

1  Samsung Electronics Datasheet. Samsung——K9F2808 q(u)ob
2  马忠梅. 单片机的C语言应用程序设计. 北京:北京航空航天大学出版社, 2002
3  潘琢金. C8051FXXX高速SoC单片机原理及应用. 北京:北京航空航天大学出版社, 2002

赵文彬  硕士研究生,研究方向为医学信号检测与医学图像处理。
向平  副教授,研究方向为医学信号处理。


欢迎进入老古论坛进行讨论
[嵌入式系统] 相关文章:
Motorola微处理器的bootloader分析与应用
简介:
摘要 以Motorola 32位处理器ColdFire5307为例,分析、介绍Motorola公司用于嵌入式系统开发的dBUG通用bootloader软件的结构、运行原理及应用。 关键词 嵌入式系统 ColdFire bootloader dBUG 引言 bootloader是用来完成系统启动和系统软件加载工作的程序。它是底层硬件和上层应用软件之间的一个中间件软件,完成处理器和周边电路正常运行所要的初始化工作;可以屏蔽底层硬件的差异,使上层应用软件的编写和移植更加方便;不仅具有类似PC机上常用的BIOS(Basic Input Output System,基......

用Matlab产生Max + plusII的仿真输入信号
用MSP430单片机实现微波成像系统的扫描控制与数据采集
基于PSTN的家用电器远程控制系统
用VHDL语言在CPLD上实现串行通信
PCI-1711数据采集卡及其应用
系统芯片nRF24E1及其在无绳电话中的应用
基于LabView的虚拟仪器实现频率稳定度的测量
MAX2206/MAX2208功率检测器在CDMA中的应用
高速嵌入式PXITM/CompactPCI控制器
 
下一个:[技术文章]智能传感器的蓝牙协议栈与SoC结构设计
简介:
摘要 通过对蓝牙协议栈和智能传感器功能要求的分析,讨论用于智能传感器设计的嵌入式蓝牙协议栈SoC的基本结构,以及功能组成要求。根据讨论结果,设计相应的SoC电路结构。 关键词 蓝牙 基带 智能传感器 SoC 引言 蓝牙技术是一种无线数据与数字通信的开放性规范。它以低成本、近距离无线连接为基础,为固定与移动设备建立了一种完整的通信方式和技术。蓝牙技术的实质是建立通用无线接口及其控制软件的标准,使移动通信与计算机网络之间能实现无缝连接,由此,为不同厂家生产的便携式设备提供了近距离(10m~100m)范围内的互操作通道。   在工业控制系统和许多应用领域,随......
 

上一个:[经验总结]I²C总线的虚拟仿真软件工具

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:否 执行时间:16毫秒