新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于单片机的超大容量存储器接口设计

基于单片机的超大容量存储器接口设计

作者:时间:2013-09-02来源:网络收藏

0 引言

  随着信息技术的发展,在工业应用领域中需要采集存储的信息越来越多,相应地使用了各种数据采集装置,以获得被研究对象的相关信息。有时为了节约时间和计算机资源,一般并不是在当地立即处理这些信息数据,而是将数据传向后台由后台计算机进行处理、分析。它们之间的数据传输媒介有有线传输、无线传输和硬盘等几种型式。当采集现场条件不允许时,比如地形复杂且离后台距离较远,有线、无线传输均不适用。此外,有时周围环境会出现高湿度、高粉尘的恶劣情况,在这种条件下硬盘驱动器就难以可靠工作。为了满足实际生产中在特定条件下数据采集系统的要求,通过长时间的研究,设计出一种基于超大容量存储器l.该存储器容量可达4 Mb,基本可以满足复杂环境下信息采集存储的需要。

  1 系统设计

  基于存储器存取数据的整体结构框图如图1所示。

  

  图1中是控制核心,存储器是控制对象,所有电路均为二者服务。由于存储器是4 Mb的,单片机的地址线已经不够用了,为了进行扩展,加入地址扩展电路。为了加快存储器中的数据导入计算机,特加入了并机接口电路。译码电路是为了增加I/O的口数量。

  1.1 中央处理器(CPU)

  采用单片机,内部包含有:64 kBE2PROM,可省去最小系统,节省了并行口。

  1.2 存储器

  静态存储器的核心是存储器芯片,国内市场有2种类型:

  (1)芯片内部有自带电池的NVRAM.

  (2)自己设计掉电保护电路使用普通的SRAM,DRAM.闪速存储器是一种非易失性存储器,即使切断供电电源以后也能保持所存储的数据,在不加电的情况下存储在内的信息可长达lO年之久。闪速存储器可以随机寻址、访问时间很短,能抵抗强烈的碰撞,具有很强的环境适应性,可靠性好,平均无故障时间可达数百万小时。因此可以取代硬盘用于可移动设备、工业电子产品领域及恶劣环境中,其性能价格比很好。系统选用Atmel公司生产的闪速存储AT29C040芯片,它是国外新一代产品,容量可达4 Mb,采用分页管理方式,这种芯片的读/写与一般RAM有所不同。对芯片的基本操作如下:

  读:当CE和OE为低,WE为高时,由地址决定的存储器单元将数据输出;当CE或OE为高时,输出为高阻态。这种双线控制为设计者防止总线争用提供了灵活性。

  字节装入:用于输入要编程的128 B(一个扇区)数据或保护数据软件代码。当OE为高时,对WE加一负脉冲同时CE为低,或对CE加负脉冲同时WE为低时,将地址在CE或WE首先下降的一个下降沿锁定,数据由CE和WE首先上升的上升沿锁定。

  编程:芯片编程以扇区为单位。如果要改变扇区中的一个数据,扇区中所有的数据都要重新装入芯片,扇区中所有没有装入的字节在编程中都将被擦写为FFH.一旦一个扇区中的所有字节都装入芯片,芯片立即在编程周期中对其进行编程,在第一个字节装入后,后续字节以同样方式装入。每一个新装入字节的WE由高到低的跳变必须在前一个字节WE信号由低变高的150μs以内。如果在上个装入字节后150μs内没有检测到WE由高向低跳变,装入周期终止,内部编程周期开始。A7~A16确定扇区地址,在WE由高到低的变化中必须有效,A0~A6确定扇区内的字节地址,装入字节可以任意次序,不必顺序装入。

软件数据保护:在AT29C04O中应用了软件控制保护数据的功能,一旦对芯片使用软件保护,则在芯片编程之前必须按一定算法进行操作。软件保护可以由用户启动或停止。启动软件保护由一组3个编程命令组成,对特定地址送特定数据。启动软件保护以后每次对芯片编程都必须在编程周期前送相同的3个编程命令。一旦启动软件保护,它将一直保持直到执行停止命令,上电掉电不能改变软件保护的状态。因此在电源变化期间,为防止误编程,启动保护后,没有3 B命令的写操作无效,但在twc期间,读操作为有效操作。

  硬件数据保护:AT29C040硬件防止误编程通过以下途径:

  如果电源电压低于3.8 V,禁止编程;

  电源电压上电到达3.8 V以上后,芯片自动延时5 ms后才开始编程;

  OE为低或CE为高或WE为高禁止编程周期;

  如果WE或CE是小于15 ns的脉冲则不会启动编程周期。

  1.3 接口电路设计

  通过上述分析,设计大容量存储器的接口电路如图2所示。

  

  该接口电路图为实际工程应用中的剪切图,其中单片机采用的是华邦,由于8位单片机I/O口数量有限,在工程应用中一般不能满足要求(图中没连线的I/O口已被用作其他用途),因此采用74LS138进行了扩展。由于29C040为4 Mb的容量,所以单片机的16位数据线已不能满足要求,为了进行大容量存储器的扩展,采用8255来扩展存储器的地址线及访问的范围00000~7FFFF.在此基础上,可以设计存储容量从4 Mb到数Gb的存储器。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭