CN1936817A - 一种基于闪存记忆体的大容量存储装置 - Google Patents
一种基于闪存记忆体的大容量存储装置 Download PDFInfo
- Publication number
- CN1936817A CN1936817A CNA2006100621727A CN200610062172A CN1936817A CN 1936817 A CN1936817 A CN 1936817A CN A2006100621727 A CNA2006100621727 A CN A2006100621727A CN 200610062172 A CN200610062172 A CN 200610062172A CN 1936817 A CN1936817 A CN 1936817A
- Authority
- CN
- China
- Prior art keywords
- controller
- flash memory
- slave
- master
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0661—Format or protocol conversion arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种基于闪存记忆体的大容量存储装置和方法。所述方法是对多个目前现有的闪存记忆体控制器的功能加以延伸,通过采用Master-Slave架构的方式去控制大数量闪存记忆体的技术,再加上ICP(Inter-Chip Protocol)协议的架构来提升容量的限制以及性能。该发明可以应用于各种大容量的闪存存储装置上,达到如目前硬盘的容量、传输速度,从而取代传统硬盘的目的。而且所述发明只需对目前现有的闪存记忆体控制器的功能加以延伸,无需专门针对此要求开发专门的闪存硬盘控制器,从而降低了研发成本,缩短了研发周期。
Description
技术领域 本发明属于闪存记忆体存储领域,特别是取代传统硬盘的闪存存储装置领域。
背景技术 闪存记忆体和传统的硬盘是目前市场上主流的数据存储媒介。其中闪存记忆体最主要的好处在于省电、具有较小的体积、抗震性高与可靠度佳等。市场上的USB存储盘、MP3播放器、PMP个人多媒体播放器与记忆卡等绝大部分都是以闪存记忆体作为储存的媒介。可以预见地,在强调轻薄短小的趋势下,闪存记忆体的应用会越来越普及。
目前市场上闪存记忆体规格涵盖了很多的种类包含SLC(Single level cell)、MLC(multi level cell)和AG-NAND等,这些闪存记忆体除了规格上的不同外,读写数据的方式与效率也有不同。不过以SLC的闪存记忆体在读写效率和可靠度上是最高的,但其单价较高。因此目前大都使用SLC的闪存为主流,但随着产品价格不断的压低,使得产品供货商不得不在其它方面做些妥协,渐渐的使用MLC的厂商也越来越多。闪存厂商对于MLC闪存的研发更是不遗余力,闪存以每年两倍的复合成长速度在增加。
目前市场上开始有少部份的厂商研发以闪存记忆体硬盘取代传统的硬盘。主要是看重其省电以及抗震性胜于传统的硬盘。目前传统硬盘的市场占有率仍远高于闪存记忆体硬盘,主要的原因是早期闪存记忆体的成本太高、供货量不稳定、传输速率慢与容量低等问题。但随着制造闪存记忆体的供货商不断的投入开发与增加产能,利用更先进的技术,使得闪存记忆体的容量一直不断的持续增加,价格也渐渐合理化,闪存记忆体不再只局限在小型的移动存储装置上。预见在未来几年内,闪存记忆体硬盘极有可能会取代传统式硬盘成为数据储存的主流媒介。
当闪存记忆体的技术成熟后,各家厂商便开始思考如何将闪存记忆体使用于IA产品上。随着闪存记忆体在一些大厂如三星、东芝等扩厂增加产能之后,目前所有的移动存储装置产品中,存储媒介以闪存记忆体的占有率最大。但闪存记忆体的存取效率普遍不高,并且有容量限制的问题,无法作为在大型系统上的存储媒介,主要的原因除了闪存记忆体本身的存取速度造成外,整个闪存记忆体存取系统的设计架构更是一个主要的问题。
目前闪存记忆体硬盘的设计架构大都以单一闪存记忆体控制器去控制闪存,此种方式只能应用在低数量闪存记忆体的系统。但面对市场上对高容量与高数量闪存记忆体存储装置的迫切需求与日俱增,单一闪存记忆体控制器系统,仅能控制少数量的闪存记忆体是不够的。如何才能控制更多的闪存记忆体来达到传统硬盘的容量、如何改善对多闪存记忆体存取时负载电容会降低操作频率的问题,以维持较高的工作频率,从而达到与传统的硬盘相当的速度,是各家厂商所亟欲发展的技术。
除了容量问题之外,存取的效率也是一个关键的课题。传统的硬盘,其规格已经发展到了ULTRA 133,数据总线频宽每秒可以达到133 Mbytes,远远地超过了闪存记忆体的存取速度。所以欲利用闪存记忆体来取代传统硬盘,仍有一些尚待克服的问题。
因此,现阶段的闪存记忆体硬盘技术,仍面临着一些问题包含容量上的限制与数据传输效率不佳等。
目前因为市场上的闪存记忆体硬盘需求并不是很大,专门为了此需要开一颗功能特别的IC,需要花费不少费用,并不符合经济效益成本。所以如果可以对目前现有的闪存记忆体控制器的功能加以延伸,并透过外部的逻辑线路,使其可以符合闪存记忆体硬盘的需要,会是一个不错的选择。
发明内容 本发明鉴于目前市面上闪存装置面临存取速度不佳、容量不易扩充等缺点,故开发此架构。此发明系如第2图所示,利用多个闪存控制器,采用Master-Slave架构的控制方式,来提升容量的限制以及性能。
在这多个控制器中,Master和Slave控制器有相同数量以及定义的脚位,内部的逻辑也相同。使用者可以利用一个I/O脚位,设定控制器是 Master或是Slave。Master和Slave的ICP协议透过Data-In以及Data-Out传递数据。其脚位定义如第1图所示。
任一控制器利用外部控制信号与多芯片间的操作协议,可以得知自己是不是一个Master控制器。Master控制器可以选择连不连接闪存记忆体,但其最主要的目的是在收到外部存取的命令时,判断要访问哪一个Slave控制器上的闪存,然后透过特有的ICP(Inter-Chip Protoco1),将存取的命令送到要负责存取闪存记忆体的Slave控制器,然后该Slave控制器便存取数据,并透过系统数据总线传回。此系统数据总线可以为8、16或是32位。系统启动时,Master控制器需要将系统的数据配置信息,建立表格。Master控制器需要知道系统的拓扑架构,以及外部欲存取数据所在的闪存记忆体由哪一个控制器所控制,以及要如何将数据送到该控制器。透过此种方式便可以利用现有的控制器,轻易的将系统的容量提升。
为了要在Master和多颗Slave控制器之间取得同步,Master控制器要负责提供频率给Slave控制器,如第3图所示。Master控制器的频率是来自系统外部的震荡器,经由CLK_IN信号得到。此频率经过控制器内的PLL电路除频后,再将除频后的频率经由CLK_OUT信号传送给所有的Slave控制器。
此外,因为IDE以及CF界面的速度均超过闪存记忆体的存储速度,所以我们需要一些加速的机制。闪存记忆体的速度限制在存取每个闪存记忆体时需要检查此闪存记忆体的Ready/Busy是否已经释放,如果此时闪存记忆体还处在忙碌的状况,Ready/Busy没有放下,则无法对其做写入的动作,此部分所需要的等待时间不少。如第5图所示,当写入第一颗控制器数据时,必须确定第一颗控制器上闪存的Ready/Busy信号释放时,才能将数据写入第二颗Slave控制器。我们采用数颗控制器同时存取的方法来降低Ready/Busy所影响的性能,如第6图所示。假设Master控制器要将数据写入Slave控制器上的闪存时,Master控制器将命令和数据依序利用ICP传送到该Slave控制器,Slave控制器将数据写入这些闪存。Master传送完之后便检查每个Slave控制器对应闪存记忆体的Ready/Busy信号现是否已经释放。如果都释放了,才将下一次要写入的数据以及命令依序的传送到Slave控制器。此作法的好处在于可以省下等待每一个Slave控制器上闪存Ready/Busy信号所累积的时间。
另外,当系统的控制器连接超过一定数量的闪存记忆体时,会因为一些电子组件如电容数量的累积,而产生的噪声现象,此时必须降低所有控制器的工作频率。因为所有控制器的工作频率都是由Master控制器所提供,所以Master控制器必须有一组可以设定频率的电路,可以产生多组的频率,满足不同数量闪存记忆体的需要,达到最佳的性能。
此外,在市面上常见的闪存控制器芯片,在控制一定数量的闪存后,因为负载电容与PCB布局的因素,数据总线在连接四到八颗闪存记忆体时,其工作频率尚能维持在较高的额定范围,也基本能保持波型的准确性,超过此一数量范围,往往必须靠降低工作频率来确保波型的准确性,故利用多个独立的数据总线来存取固定数量以内的闪存记忆体,可以降低PCB布局的复杂度与确保存取闪存记忆体的准确性,以便维持整体的高容量、高性能与稳定性。
附图说明
第1图:控制器脚位图。
第2图:多闪存系统的基本架构图。
第3图:系统频率示意图。
第4图:控制器启动流程图。
第5图:传统闪存记忆体控制流程图。
第6图:改进闪存记忆体控制流程图。
第7图:资料写入流程图。
第8图:数据读取流程图。
第9图:单一控制器在PCB布局后的信号图。
第10图:多颗闪存记忆体多重负载电路信号图。
【主要组件符号说明】
100:闪存记忆体的控制脚位。
101:Master/Slave的型态选择脚位。
102:频率输入脚位。
103:频率输出脚位。
104:ICP信号输入的脚位。
105:ICP信号输出的脚位。
200:外部IDE/CF的接口界面。
201:内部系统的总线。
202:内部沟通使用的ICP协议。
具体实施方式 为进一步的阐明本发明的流程以及所使用的方法,将本方法的过程以及使用的方法,利用下方面的流程图加以说明。
系统启动的流程,如图4所示,每一个控制器会检查本身型态I/O脚位,如果电平为高时,表示此控制器被设定为Master控制器,反之则表示此控制器被设定为Slave控制器。如果此控制器为Master控制器,为了考虑到系统的同步问题,得先决定工作频率,此工作频率为使用者的设定值。如果使用者希望有较好的效能,可以将工作频率设定为一个较高的值,可是在连接多颗闪存以及控制器时,将面临到稳定性的问题。另外,关于稳定性的问题如图9所示,当电路板上的基本电路输出的控制信号正常时,在图面上会呈现ㄇ型。但当电路所承受的负载越大,如电子组件数量过多时,则会因电路板布局产生高频被虑除或衰减的现象,当负载越来越大,则在信号图上呈现波型。以图10为例,当在电路板上的控制器连接多颗闪存记忆体时会因为控制器的负载加大,因此输出信号会产生很大的高频衰减与相移,因此在信号图上呈现波型。因此,当此现象发生时需降低所有控制器的工作频率,以减少高频衰减与相移的产生。
Master控制器然后需要知道系统的拓扑架构,知道哪一个控制器控制什么逻辑扇区范围之内的数据。因为Master和Slave可以有各自的管理方式,所以Master无法确定的知道逻辑扇区数据在Slave控制器的放置位置(闪存记忆体位置)和方式,只能透过ICP通知Slave告知想要什么逻辑扇区的数据。当拓扑结构建立完成之后,因为Master本身可以选择要不要控制闪存,如果连接闪存,Master本身同时具备了Master和Slave两种功能。此时Master需要初始一些表格,如物理地址对应表(Logical To Physical Translation Table)等等。最后就只剩下IDE/CF接口的设定以及初始化,等待远程IDE/CF的命令,进行数据存取的动作。如果控制器被设定为Slave模式时,只需要进行一些表格初始化的动作,然后等待Master控制器利用ICP协议传送的命令。
写入的流程如图7所示,当IDE/CF接口想要进行写入的动作时,Master控制器会在IDE/CF接口(LBA缓存器)收到此命令,包含了写入的逻辑扇区以及扇区长度等等。Master首先设定DMA缓存器(若IDE/CF接口为Ultra模式)数据长度以及数据位置,然后对照系统启动时所建立的拓扑数据架构,确认每一次写入时需要将数据以及逻辑位置利用ICP传送给哪些Slave控制器。等到外部透过IDE/CF DMA将数据缓冲区写满时(一个扇区512字节),便将此数据利用内部DMA,将数据传送给对应的Slave控制器,Slave控制器利用其内部的表格,将数据写入到其所连接的闪存记忆体上。
当所有的Slave控制器都被写入后,便检查所有的Slave控制器的Ready/Busy信号是否释放,若都已释放则可以进行下一轮的写入动作,直到所有的数据都写入完成为止。
读取的流程如图8所示,当IDE/CF接口想要进行读取的动作时,Master控制器会在IDE/CF接口(LBA缓存器)收到此命令,此命令包含了读取的逻辑扇区地址以及扇区长度等等。Master首先设定DMA缓存器(若IDE/CF接口为Ultra模式)数据长度以及数据位置,然后对照系统启动时所建立的拓扑数据架构,知道这一次读取动作需要利用ICP在哪些Slave控制器的逻辑位置读取数据。然后将命令以及逻辑扇区位置送到所有相关的Slave控制器,之后Master控制器检查是否所有的Slave控制器的Ready/Busy都已经释放。若是则表示所有Slave的控制器中的数据都以被读取,Master控制器利用内部DMA将读取的数据由Slave控制器传送到系统缓冲区,Master控制器再将系统缓冲区内的数据利用外部DMA传送到远程。
Claims (8)
1、一种利用多个控制器,采用Master-Slave架构,并通过ICP协议进行通信管理来提升存储容量和性能的存储方法和装置。其特征在于:该装置包含外部接口界面,多个控制器,半导体存储媒介,可以取代传统硬盘。
2、如权利要求1所述的外部接口界面,包含但不限于IDE/CF接口界面。
3、如权利要求1所述的半导体存储媒介,包含但不限于SLC/MLC NAND型闪存记忆体、AGAND型闪存记忆体、NROM型闪存记忆体、NOR型闪存记忆体等等。
4、如权利要求1所述的多个控制器,包含一个Master控制器和不少于一个的Slave控制器。
5、如权利要求4所述的Master控制器和Slave控制器,其特征在于:Master和Slave控制器有相同数量以及定义的脚位,内部的逻辑也相同;控制器应包含但不限于提供其他脚位用以控制半导体存储元器件;控制器至少可以提供一个I/O脚位,用于设定控制器是Master或是Slave;控制器还应至少提供Data-In以及Data-Out脚位用于Master和Slave的ICP协议数据传递;控制器还应至少提供CLK IN和CLK OUT脚位用于同步整个系统中多个控制器的工作时序。
6、如权利要求1所述的提升存储设备的性能,其处理过程如下:Master控制器将需要写入的数据分配好,根据ICP协议依序将数据和命令送到各对应的Slave控制器,接着检查每个Slave控制器的Ready/Busy信号现是否已经释放,等到所有对应的Slave控制器的Ready/Busy信号已经释放后,再进行下一轮数据和命令的传送,如此可以减少等待每个Slave控制器释放Ready/Busy信号所累计的时间。
7、如权利要求1所述的Master-Slave架构,其特征在于:Master控制器还应有一组可以设定工作频率的电路,可以产生多组的频率,满足不同数量闪存记忆体的需要,达到最佳的性能。
8、如权利要求1至7所述的Master-Slave结构,并通过ICP协议进行通信管理来提升存储容量和性能的存储方法适用于任何的闪存记忆体存储装置,例如:U盘(包含但不限于USB Pendriver 1.1/2.0)、PMP Player、存储卡(包含但不限于SD/MMC/CF/Memory Stick/XD)和MP3 Player等。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100621727A CN100573435C (zh) | 2006-08-18 | 2006-08-18 | 一种基于闪存记忆体的大容量存储装置 |
PCT/CN2007/002499 WO2008025238A1 (fr) | 2006-08-18 | 2007-08-20 | Dispositif de stockage avec une grande capacité et procédé basé sur une mémoire flash |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100621727A CN100573435C (zh) | 2006-08-18 | 2006-08-18 | 一种基于闪存记忆体的大容量存储装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1936817A true CN1936817A (zh) | 2007-03-28 |
CN100573435C CN100573435C (zh) | 2009-12-23 |
Family
ID=37954345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100621727A Expired - Fee Related CN100573435C (zh) | 2006-08-18 | 2006-08-18 | 一种基于闪存记忆体的大容量存储装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN100573435C (zh) |
WO (1) | WO2008025238A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101546194B (zh) * | 2009-05-07 | 2012-01-04 | 成都市华为赛门铁克科技有限公司 | 一种接口装置、接口控制方法以及存储系统 |
CN102165532B (zh) * | 2008-09-30 | 2014-10-15 | 美光科技公司 | 具有并行操作模式的固态存储装置控制器 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100262773A1 (en) | 2009-04-08 | 2010-10-14 | Google Inc. | Data striping in a flash memory data storage device |
US8447918B2 (en) | 2009-04-08 | 2013-05-21 | Google Inc. | Garbage collection for failure prediction and repartitioning |
US10082957B2 (en) | 2016-07-20 | 2018-09-25 | Western Digital Technologies, Inc. | Dual-ported PCI express-based storage cartridge including single-ported storage controllers |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU6495299A (en) * | 1998-09-18 | 2000-04-10 | Computron | Multiple operating system controller for a computer |
JP2003030045A (ja) * | 2001-07-16 | 2003-01-31 | Hitachi Communication Technologies Ltd | 記憶装置 |
JP2005293177A (ja) * | 2004-03-31 | 2005-10-20 | Tdk Corp | メモリコントローラ及びフラッシュメモリシステム |
-
2006
- 2006-08-18 CN CNB2006100621727A patent/CN100573435C/zh not_active Expired - Fee Related
-
2007
- 2007-08-20 WO PCT/CN2007/002499 patent/WO2008025238A1/zh active Application Filing
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102165532B (zh) * | 2008-09-30 | 2014-10-15 | 美光科技公司 | 具有并行操作模式的固态存储装置控制器 |
CN101546194B (zh) * | 2009-05-07 | 2012-01-04 | 成都市华为赛门铁克科技有限公司 | 一种接口装置、接口控制方法以及存储系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2008025238A1 (fr) | 2008-03-06 |
CN100573435C (zh) | 2009-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104657284B (zh) | 存储设备的扩展利用区域 | |
CN101398745B (zh) | 并行数据存取架构的固态盘存储系统与固态盘控制器 | |
US8335123B2 (en) | Power management of memory systems | |
CN101308697B (zh) | 基于sdram的大容量fifo突发缓存器及数据存储方法 | |
CN101908379B (zh) | 基于访问时间调整对非易失性半导体存储器的访问 | |
US7451273B2 (en) | System, method and storage medium for providing data caching and data compression in a memory subsystem | |
US7802061B2 (en) | Command-based control of NAND flash memory | |
CN104951412A (zh) | 一种通过内存总线访问的存储装置 | |
US9063849B2 (en) | Different types of memory integrated in one chip by using a novel protocol | |
WO2010111694A2 (en) | Storage system logical block address de-allocation management and data hardening | |
JP2011513823A5 (zh) | ||
CN100573435C (zh) | 一种基于闪存记忆体的大容量存储装置 | |
CN101436171B (zh) | 模块化通信控制系统 | |
CN101414291A (zh) | 一种主从分布式系统和应用于该系统的并行通信方法 | |
CN101221542A (zh) | 一种外部存储器接口 | |
CN102999453A (zh) | 用于系统芯片集成的通用非易失性存储器控制装置 | |
KR20190022933A (ko) | 하이브리드 메모리 드라이브, 컴퓨터 시스템, 및 멀티 모드 하이브리드 드라이브를 동작시키기 위한 관련 방법 | |
CN101944075B (zh) | 总线系统、对低速总线设备进行读写操作的方法及装置 | |
CN104409099B (zh) | 基于FPGA的高速eMMC阵列控制器 | |
CN110209357A (zh) | 提高ssd大文件写性能的方法、装置、计算机设备及存储介质 | |
CN100357870C (zh) | 对挂接在片外单总线上的多种存储器进行访问的方法 | |
CN208907999U (zh) | 一种新型Raid扣卡 | |
CN100477005C (zh) | 支持分区的闪存存贮器件 | |
CN206331414U (zh) | 一种固态硬盘 | |
CN101609712A (zh) | 具有多非易失性存储器的存储系统及其控制器与存取方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C57 | Notification of unclear or unknown address | ||
DD01 | Delivery of document by public notice |
Addressee: Yu Qingsong Document name: Written notice of preliminary examination of application for patent for invention |
|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091223 Termination date: 20110818 |