当前位置:首页 > 单片机 > 单片机
[导读]在深入了解Flash存储器的基础上,采用单片机自动检测存储器无效块。主要通过读取每一块的第1、第2页内容,判断该块的好坏,并给出具体的实现过程,以及部分关键的电路原理图和C语言程序代码。该设计最终实现单片机自动检测Flash坏块的功能,并通过读取ID号检测Flash的性能,同时该设计能够存储和读取1 GB数据。

随着电子技术飞速发展,智能电子产品随处可见,如PC机、移动电话、PDA、数码相机、游戏机、数字电视等,而诸如此类的电子产品的核心器件往往离不开存储器。无论是从存储器的物理结构、存储容量、数据读写速度、可靠性、耐用性,还是产品的实用性方面。其种类繁多。然而由于种种原因,越来越多的电子产品采用数据传输快、容量大的NAND型Flash存储器。虽然NAND型Flash具有许多优点,但其有随机产生不可避免的坏块,如果不能很好解决该坏块将导致高故障率。因此,这里提出一种基于DSP的Flash存储器坏块自动检测系统。

1 系统设计方案
    图l为Flash存储器坏块自动检测系统结构框图。


    本系统设计采用AT89C51自动检测NAND型Flash存储器的无效块,获取Flash存储器的坏块信息,为后续数据存储做准备。本系统设计包括硬件电路和配套软件设计2部分。其硬件电路主要由单片机、控制、显示和存储器4部分组成,其中单片机部分采用常规的最小系统电路;控制部分由按键和单片机的外部中断组成,按钮通过电阻与接地端相连,而复位键则与电源端相连;显示部分采用单片机的P0和P1端口控制8位七段共阳极数码管,位选通端由P2端口控制数据端由Pl控制;存储器部分与单片机相连,由于存在电平差异,所以需加电平转换器74LVX42-45,可将由单片机输出的5 V电压转到3 V,并将由Flash输出的3 V电压转到5 V,其转换方向便于控制。而软件设计部分采用单片机C语言编写程序,当数据存储到单片机后,用一个循环语句将其放到数组里,这样可以通过改变某一变量实现上下查询。则将这个变量的改变放在外部中断程序中。

2 硬件电路设计
    硬件电路设计由于选用的51单片机是TTL器件,而所要检测的NAND型Flash存储器是CMOS器件,这2种类型器件的电平不相匹配,因此需增加电平转换器74154245,从而实现电压的5 V与3 V的双向转换。
2.1 单片机的连接
    为了方便读图,该系统设计的电路原理图中的许多导线连接都采用网络标号的方法,而标号的命名基本采用引脚名称。单片机的P1端口的位操作控制Flash的控制端,P0端口作为单片机和Flash的地址和数据传输端口。其中数据的流向采用P1.6和P1.7控制,要读取Flash的数据时,如读ID时,先对单片机的P1端口位操作,依照时序设置控制字,接着由单片机的PO端口输出读取ID的命令,然后设置写地址的控制字,输入地址00H。读状态时,连续的RE脉冲可输出ID代码。页读取操作与此类似。图2为单片机电路连接图。


2.2 Flash存储器的连接
    K9K8G08UOM是采用NAND技术的1 GB大容量、高可靠、非易失性Flash存储器,具有高密度、高性能特点。其无效块定义为包含有一个或更多无效字节,且其可靠性不能被保证,则无效块中的信息称为无效块信息。和所有的有效块一样,它具有相同的AC和DC参数,一个无效块不会影响有效块的运行,因为它有相应独立的指令资源依靠选择晶体管,该系统设计必须通过地址掩盖其无效块。第l块(地址是OOh)为了保证是有效块,不要求纠错l K编程/擦除周期。
    除了先装载好的无效块信息,所有器件的存储单元都被擦除,无效块状态定义在空余区域的第1个字节。在每块第1页2 048字节的列地址中没有FFh。很多情况下,无效块信息也是能擦除的,一旦擦除,它不可能恢复其原有信息。因此,系统必须在原来无效块的信息基础上认识无效块。该系统设计就是通过读每块的第1页判定该块是否为无效块。


    依据该Flash器件数据资料中各个引脚的功能,设计Flash的电路连接,图3只给出K9K8G08UOM部分所用引脚,电路中Flash的控制端经电平转换器后与单片机的Pl端口相连,而I/O端口经电平转换器与单片机的P0端口相连。
2.3 74LVX4245电平转换器
    74LVX4245提供5 V和3 V之间转换的8位双向电平转换器。该器件的T/R引脚控制数据流向。发射端使数据由A端到B端,而接收端使数据由B端到A端。A端接5 V总线,而B端接3 V总线,如图4所示。


2.4 数码管
   
采用共阳极数码管动态显示方式。为了提高驱动能力,采用三极管驱动,用P2端口的低电平对数码管进行位点亮,P0端口输入要显示的字符。本系统设计时,第l位和第2位显示第几个坏块,后3位显示无效块地址。

3 系统软件设计
    采用μVision2集成开发环境,μVision2支持8051的所有Keil工具包,其中包括C编辑器、宏汇编器、链接器,定位器和目标文件至HEX格式的转换器。系统软件设计,即单片机代码设计通常可采用汇编语言或C语言。图5是无效块判断的主要流程。


    本设计中软件核心部分是存储器的页读取函数。函数中定义无符号整型变量赋值2 048,依据页读取的时序,先将读指令00H由函数Writ-eCommand写入Flash的命令寄存器,接着由WriteAddress函数将4个周期的地址写入Flash的地址寄存器,再由WriteCommand函数将读命令30H写入Flash指令寄存器,延时后读状态的控制字的设置,在2 048个读信号脉冲中读取缓存数据。该函数完整源程序代码如下:
   

4 结论
    本设计满足系统设计要求,能够实现对Flash存储器的ID号的读取,准确读取存储器无效块的数目和相应的物理地址,通过功能按钮实现对无效块地址的上下查询。将存储器换成fLash后可以很好地检测器件的无效块的分布情况。可以成为选择性能更好的器件工具,同时还可准确获取无效块地址,为以后数据存储打好基础。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭