Flash存储的故事51CTO博客 - 超凡娱乐

Flash存储的故事51CTO博客

2019-01-03 13:09:02 | 作者: 智阳 | 标签: 存储,需求,规划 | 浏览: 2588

Flash存储是存储界的新人和红人。Flash存储体系因为其优异的功用、高效的存储密度和超卓的节能特性使得Flash存储有望代替机械磁盘成为企业级存储的中心。未来很有或许一切的数据都会存储在Flash存储介质上面,包含银行、中小企业、互联网、电信等存储大户。

当年沉迷于电子规划的时分,没有想到一个小小的Flash竟然能够做成一个新式的存储工业。做电子规划的时分,许多时分需求用到存储芯片,比较老的存储芯片如TI的27系列紫外线可擦除存储器。

 

 

该存储器需求经过紫外线照耀的方法擦除现已存储的数据。也便是需求擦除数据的时分,将芯片放到太阳光底下去晒一段时间,晒完之后,存储在芯片内部的数据就没有了,芯片能够持续编程运用了。此类芯片运用非常费事,所以记得到2000年头的时分现已很少有人运用这种芯片了,取而代之用的最多的便是电可擦写存储器EEPROM。

 

 

EEPROM的典型代表是SPI接口的93CXX系列存储器,以及I2C接口的24CXX系列存储器。这些EEPROM容量都比较小,一般用来存储一些小容量数据,例如体系的装备信息。像网卡的装备信息、PCI桥的装备信息都存储在93C46之类的芯片中。这种存储器一个比较好的特色是能够进行字节级编程,可是读写功用都很差。假如要进行大数据存储,是不能选用此类芯片的。例如,最初我规划一个收费站监控体系,需求存储一个月的营业额,那么需求选用大容量的可编程存储器进行数据存储。此刻就需求选用Flash存储芯片了。

 

 

和EEPROM比较,Flash存储芯片的一个特色是存储容量大,而且以块单元进行数据擦除操作,以Page页的方法进行数据读写。该类芯片都选用IO接口的方法与CPU相连,即经过指令的方法进行读写、擦除操作。在电子规划的时分,运用Flash芯片最大的问题在于开发Flash的操作函数集,例如读page函数、写page函数、块擦除函数。在操作体系环境里,这些函数就构成了一个Flash芯片的驱动程序。此外,因为控制器一般选用GPIO和Flash相连,因而需求经过程序的方法模仿Flash接口时序。假如规划的板子上有FPGA/CPLD之类的可编程器材,那么能够经过Verilog/VHDL言语或许经过图形的方法规划一个Flash芯片的时序控制器,这样CPU控制器就无需选用软件方法模仿Flash时序了。这些作业是电子规划工程师常常干的,而且也非常了解的东西。根据NAND Flash规划的存储体系电路图比较简单,如下图所示:

 

 

上面说到的Flash其实是NAND Flash,在电子规划的时分还会常常用到别的一种Flash——NOR Flash。

 

 

NOR Flash一般是用作程序存储器,容量不是很大。和NAND Flash比较,其最大的特色是读取速度快,可是写入速度要比NAND Flash慢,容量要小的多。因而,NOR Flash一般被用作程序存储器。在低速的51体系中,程序能够直接运转在NOR Flash上;在高速的ARM体系中,程序需求从NOR Flash中引导到Memory中,然后在Memory中运转。和NAND Flash比较,NOR Flash的接口也大不相同。NOR Flash选用的是规范总线接口,有地址线、数据线和控制线之分,因而,处理器能够直接与NOR Flash相连,而不像NAND Flash相同还需求接口控制器。一个典型的NOR Flash电路原理图如下所示:

 

 

NOR Flash中的程序是需求编程写入的。假如是外置式的NOR Flash,那么需求一些小的技巧才能将程序写入NOR Flash。在ARM处理器中,最常用的思路是首要编写一个小的NOR Flash烧录程序,经过ARM处理器内部的Bootload程序将这个烧录程序下载到内存中,然后运转该烧录程序。编写的该烧录程序有如下几个方面的功用:

1、初始化内存,使得ARM处理器能够运用一切的板载内存

2、经过串口接纳需求烧录的程序数据,而且把需求下载的数据缓存至内存中

3、能够操作NOR Flash,而且将内存中的数据烧写入NOR Flash

上述这些作业是嵌入式工程师常常需求做的作业。

在8年前未踏入存储这个职业的时分,对NAND Flash也便是这个了解,仅仅是作为电子规划的一个大容量存储器罢了,最多在嵌入式的环境下跑跑Flash的文件体系。可是,这么多年对存储进行深入研讨、开发之后发现,NAND Flash确实具有许多的优势,可是一起也存在许多的问题。假如想要将NAND Flash应用到企业级存储范畴,那么面对的应战将非常严峻。前面有一篇文章《选用NAND Flash规划存储设备的应战在哪里?》也走马观花的剖析了一下NAND Flash作为企业级存储介质存在的一些应战,真实想把NAND Flash的特色发挥到极致,需求走的路还很长。

业界许多人都在研讨Flash Translation Layer(FTL)算法,意图便是要把NAND Flash的问题屏蔽掉,然后对外供给规范的块设备接口,然后使得传统的应用软件能够直接在Flash上跑起来。能够说FTL是Flash存储最底层的中心技能,其处理了不均衡的功用问题、写扩大问题、块擦除的寿数问题。经过这些问题的处理,使得NAND Flash许多方面能够和传统的机械磁盘相媲美,在功用上远远超越传统硬盘。到目前为止,个人认为FTL算法现已研讨的相对很成熟了,所以,根据FTL的Flash盘应该说能够大规划应用了,其主要妨碍就在于NAND Flash芯片本钱了。

在企业级Flash存储中,仅仅有FTL算法是远远不够的。根据Flash如何做盘阵?根据Flash假如做文件体系?根据Flash假如做大规划存储体系?这些存储等级的问题还没有得到完美的处理。个人认为,在Flash存储这一块,RAID技能、文件体系、互连技能、多处理器并行(集群)处理技能应该是研制攻关的要点。Flash存储的未来不是梦,NAND Flash半导体的前进;根据Flash的存储技能的前进;精确的商场切入才能将会推进整个Flash存储工业不断前进。

Redefine storage; change the world; make the world better!

 

版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表超凡娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章