行情
HOME
行情
正文内容
nand flash硬件设计 FLASH电路如何设计?
发布时间 : 2025-03-18
作者 : 小编
访问数量 : 23
扫码分享至微信

FLASH电路如何设计?

各位同学大家好,欢迎继续做客电子工程学习圈,今天我们继续来讲这本书,硬件系统工程师宝典。

上篇我们了解了存储器可分为RAM和ROM,根据不同特性也可以逐级细分,并且简单介绍了EEPROM。今天我们讲一讲FLASH有哪几种?

NOR FLASH

目前常用的FLASH主要有NOR FLASH和NAND FLASH两种

NOR技术(也称Linear技术)源于传统的EEPROM器件,具有高可靠性、随机读取速度快的优势,用于擦除和编程操作较少、直接执行代码的场合,如PC的BIOS固件等。

NOR技术的Flash Memory具有以下特点。

1.程序和数据可存放在同一芯片,拥有独立的数据总线和地址总线,能快速随机读取,允许系统直接从Flash中读取代码执行,无须先将代码下载至RAM中再执行。

2.可以单字节或单字编程,但不能单字节擦除,必须以块为单位或整片擦除,由于采用NOR技术的Flash Memory擦除和编程速度较慢,在纯数据存储和文件存储的应用中,NOR技术显得力不从心。

下面以S29GL128P为例说明,NOR FLASH的引脚定义和设计描述。

S29GL128P电路设计

查阅S29GL128P的Datasheet可知:

1.A25~A0是地址信号输入通道,需与CPU的存储专用地址总线相连

2.DQ15,DQ14~DQ0是数据信号,需要与CPU的存储数据总线相连

3.CE为片选信号

4.OE为输出使能信号

5.WE写使能

6.VCC电源输入引脚

7.VIO通用I/O口的供电引脚,接VCC电源输入端

8.VSS低信号引脚

9.NC为不连接的引脚

10.RY/BY为输出信号,当输出低电平时表示器件在进行写入或擦除工作,当输出高电平时表示器件已准备就绪。

11.BYTE为输入信号,用于设置输入数据信号的宽度8bit或16bit

12.WP/ACC为写保护或编程加速控制,当为低电平时为写保护功能,当为高电平时为编程加速,在设计时一般都上拉处理。

13.RFU为保留引脚不连接。

NAND FLASH

采用NAND技术的Flash Memory的特点

1.NAND FLASH以页为单位进行读和编程操作,1页为256B或512B,因此NAND FLASH不用来直接运行程序,需将代码下载到RAM中再运行。NAND FLASH以块为单位进行擦除操作,1块为4KB、8KB或16KB;具有快编程和快擦除的功能,块擦除时间是2ms,而NOR技术的块擦除时间是几百ms。

2.数据、地址采用同一总线,实现串行读取,随机读取速度慢且不能按字节随机编程。

3.芯片尺寸小,成本低

4.芯片包含失效块,其最大数目可达到3~35块取决于存储器密度。失效块不会影响有效块的性能。设计者需要将失效块在地址映射表中屏蔽起来。

从存储单元的角度考虑,NAND FLASH可分为SLC(Single Level Cell,单层单元)和MLC(Multi-Level Cell,多层单元)。SLC的特点是成本高、容量小、速度快,而MLC的特点是容量大、成本低,但是速度慢。MLC由于存储单元中存放资料较多,结构相对复杂,出错的概率增加,必须进行错误修正,这个修正的动作使得MLC的性能大幅落后于SLC闪存。实际使用时,需要根据程序运行的机制及需求选择合适的Flash存储。

下面作者举例了K9F2G08U0C的引脚和电路设计

K9F2G08U0C-S NAND FLASH的电路设计

K9F2G08U0C是Samsung的一款采用SLC架构的2GB NAND FLASH,如上所示为K9F2G08U0C的电路设计:

1.I/O[7:0]:数据的输入/输出引脚,输入数据的内容包含命令、地址和数据,当进行读取操作时向外输出数据。

2.CLE:命令加载使能,CLE高电平有效,当写使能有效时,通过I/O[7:0]将命令加载到NAND FLASH。

3.ALE:地址加载使能,CLE高电平有效,当写使能有效时,通过I/O[7:0]将地址加载到NAND FLASH。

4.CE:片选信号,低电平有效,当不片选芯片时,I/O口的逻辑状态为高阻态。

5.RE:读取数据使能,低电平有效。

6.WE:写数据使能,低电平有效。

7.WP:写保护,在电路设计中一般上拉处理。

8.R/B:可以输出两种状态,用于指示芯片工作或禁止状态。

9.VCC/VSS:电源网络/地网络

10.NC:没有连接。

另外,整理了一些电子工程类的资料,分享给大家,目前有模拟电路、单片机、C语言、PCB设计、电源相关、FPGA、EMC、物联网、Linux相关学习资料,还有针对大学生的资料包,后续还会有更多资料分享给大家,助力大家学习,成就梦想~

博主福利:点击链接免费获取电子工程类学习资料「链接」

神奇的ECC,可将内存的成本进一步降低

高端消费产品、网络和工业系统等内存密集型应用程序正面临着成本压力,这促使工程师寻找在提高性能的同时降低系统成本的新方法。错误码校正(ECC)是NAND闪存中维护可靠性和延长内存寿命的关键技术。为了在市场上实现基于NAND闪存的系统有更好的效率,与集成ECC的架构相比,开发人员更加倾向于在主机MCU中实现ECC架构。

本文将探讨集成的和基于主机的ECC之间的差异,比较一下每种方法对系统性能、可靠性和最终成本的影响。

ECC

简单说一下什么叫ECC。ECC内存即纠错内存,简单的说,其具有发现错误,纠正错误的功能,一般多应用在高档台式电脑/服务器及图形工作站上,这将使整个电脑系统在工作时更趋于安全稳定。

内存在其工作过程中难免会出现错误,而对于稳定性要求高的用户来说,内存错误可能会引起致命性问题。内存错误根据其原因还可分为硬错误和软错误。硬件错误是由于硬件的损害或缺陷造成的,因此数据总是不正确,此类错误是无法纠正的;软错误是随机出现的,例如在内存附近突然出现电子干扰等因素都可能造成内存软错误的发生。

当为一个系统选择闪存时,开发人员可以在NAND和NOR技术之间进行选择。NAND单元比NOR单元小,所以NAND的每位成本比NOR内存低。这反过来导致NAND闪存比NOR闪存可用的密度更高。此外,与NAND相比,NOR单元背后的物理原理导致了更长的程序擦除(P/E)时间。由于这些优点,NAND正以越来越快的速度被采用。

传统上NAND闪存的缺点是耐久性和读取性能较慢。随着时间的推移,NAND单元磨损或失去保持程序值的能力,将影响内存位转换状态。当一个块(Block)开始磨损时,它的数据可以转移到另一个块。随着单元的退化,为了防止数据丢失,我们便采用ECC技术。

ECC使用冗余来验证存储的数据是否与写入到内存的数据相匹配。此外,当检测到错误时,为了确保更高的数据完整性,ECC可以对每个块的错误数量进行修正。当超过某个错误阈值时,数据被移动到一个新块上。废弃的块被标记为“bad”,再也不会使用。因此,NAND闪存与ECC结合就可以提供高可靠性应用程序所需的完整性水平。

然而,由于ECC生成和检查需要时间过程,因此它会影响吞吐量和系统成本,这取决于它是如何实现的。通常,ECC可以与内存本身集成或由主机处理器在外部管理。集成方法有两种配置:

一种是单模方法,其中ECC是内存die的一部分,另一种是双模方法,其中控制器IC(具有串行接口和ECC)与内存die合并。在基于主机的方式下,ECC支持MCU NAND flash控制器去访问NAND。内存制造商提供的这三个选项允许OEM为他们的应用程序选择最佳的折衷方案。

一种灵活的ECC方法

将ECC集成到NAND闪存,具备了直接由存储器芯片本身管理ECC的优势。然而,尽管这种方法在某种程度上简化了系统设计,但代价是较高的内存成本和较低的读取性能。与主机处理器中使用的更高的内部时钟频率相比,闪存中较慢的内部时钟导致了读取性能的降低。

集成了ECC之后就增加了NAND闪存设备的大小和复杂性,因此内存成本会更高。考虑到一个8位ECC的硬件实现有大约50K。这表示对一个简单内存控制器的门数(gate count)(3000K)有~1.7%的影响。然而,如果集成在NAND存储器上,影响会在10-15%之间,并且会使存储器的成本增加更多。对于使用多内存设备的大内存需求系统,将ECC与NAND内存集成意味着要多次支付额外成本,而不是基于主机MCU一次性支付ECC。

此外,读取性能也有所下降,因为集成ECC会增加延迟,每个内存读取的时钟率低于主机控制器可以处理ECC检查的时钟率。下图显示了NOR flash、集成ECC的NAND flash以及基于主机的ECC的NAND flash的读取吞吐量比较。可以看出,集成ECC的NAND闪存的性能不到NOR闪存的一半。然而,当ECC是基于主机的时候,NAND闪存的读取性能几乎翻倍,几乎与NOR闪存持平。

当检测到错误(并纠正错误)时,基于主机的ECC提供了更好的性能。下图显示了错误对读取第一数据时间(RFDT)的影响。通过集成ECC, RFDT从45微秒增加到70微秒。对于基于主机的ECC, RFDT要好得多,仅从35微秒增加到45微秒。

相关问答

flash 类型怎么选择?

在选择Flash类型之前,需要考虑以下几个因素:1.存储容量:Flash存储器通常有不同的容量规格,从几MB到几TB不等。因此,你需要根据自己的需要来确定所需的存储...

我想组装台电脑,主要是做PS、 Flash 、平面 设计 的。用什么配置...

举报手机MotoMotoFLASH4人讨论3615次围观关注问题写回答讨论回答(4)aislingboy我做as3游戏,机器配置,要尽可能的高,内存推荐8g以上,cpu4核以上,显...

嵌入式 Flash 读写操作该如何进行 设计 ?

Flash存储芯片的通讯方式以SPI居多,在实现flash读写时就是要实现SPI的通讯协议,与EEPROM不同的是,SPI在操作时是按照PAGE页进行整页擦除写入的,这一点需要注...F...

怎么安装 flash 控件?-ZOL问答

去adobe官网下载,地址:https://get.adobe.com/cn/flashplayer/otherversions/,在左边选择对应的操作系统和浏览器类型。有用(0)回复Deho...

msd6a 848和amlogic t972参数对比?

以下是MSD6A848和AmlogicT972的参数对比:1.CPU:-MSD6A848:六核ARMCortex-A55,最高主频2.0GHz-AmlogicT972:四核A...

怎么样重装 flash 插件?-ZOL问答

4人讨论1617次围观关注问题写回答讨论回答(4)ynynyn520安装方法:1、下载flashplayer最新版本,用于视频播放。2、下载后,运行安装程序,进行flashpl...

arm CPU集群 如何启动?

启动方式(1)norflash:2MB,从norflash的0地址处开始运行第一条代码,所以代码一定要放在norflash的最前端(2)nandflash:128MB,但是nandflash没有参...

chrome为什么不支持 flash ?

Chrome是在近2年要求用户主动开启使用Flash权限,再默认的情况下是禁用Flash。最后,计划在2020年底彻底从Chome中移除Flash。Flash以插件的身份,做着平台该做...

现在的uc浏览器怎么安装 flash 插件功能-ZOL问答

5条回答:【推荐答案】亲,UC姐来了!如果您是安卓手机,那么目前UC插件中心是没有flash插件下载的,如果您需要下载flash插件,您可以前往UC浏览器首页的装机必备下载...

flash 安装要求?

我们知道Flash现在已经停止版本更新和技术支持,因此flash的版本普遍都比较“老旧”,对计算机硬件和操作系统的要求都不高,只要内存能达到2G,Intel®Pentium...

 飞天潜龙  胸模冠军吕晶 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2025  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部