专利名称:一种数据冗余保护flash固态盘的制作方法
技术领域:
本实用新型涉及数据存储技术领域,尤其是涉及一种数据冗余保护FLASH固态盘。
背景技术:
随着固态盘成本的降低,固态盘的使用范围越来越广,固态盘替代传统的硬盘已经慢慢成为趋势。传统的硬盘的数据可靠性完全依赖于盘片、磁头和电路的可靠性,基本上只要盘片损坏或者磁头损坏,则数据将很难恢复。而普通固态盘由多组FLASH芯片组组成, 为了实现数据的管理,FLASH芯片都会按通道的方式进行排列,FLASH芯片分成η个通道, 从接口进来的数据按数据块的方式在控制器的控制之下,经过缓存后再通过数据分配电路先把的一块数据分配到FLASH存储通道1进行存储,下一块数据再分配到FLASH存储通道 2进行存储,第η块数据分配到FLASH存储通道η进行存储,依次循环往返。这些数据块在 FLASH存储通道中的块地址信息将形成文件分配表。反之在进行读取操作的时候,将根据文件分配表读取所需的数据。当某一块FLASH芯片发生损坏后,则该芯片存储的信息将无法读取,数据的完整性显然收到破坏,从而造成用户数据丢失,将会给用户造成无法估量的损失。
实用新型内容本实用新型为克服上述的不足之处,目的在于针对传统的FLASH固态盘,提供了数据并行操作、数据冗余保护及数据恢复的FLASH固态盘,解决了现有技术中存在的问题。本实用新型是通过以下技术方案达到上述目的一种数据冗余保护FLASH固态盘,包括2个对等的互为冗余的数据区域存储区域, 每个区域各有m个可以并行存储数据块的FLASH通道,m为500或2000。2个对等的互为冗余的数据区域存储区域中编号相同的数据通道存储的数据块一致。还包括一个可以实现数据存储功能、数据读取功能和数据恢复功能的控制器。这种数据冗余保护FLASH固态盘的数据冗余保护方法,包括数据存储过程、数据读取过程和数据恢复过程;数据存储过程包括以下步骤1)将FLASH芯片分成2个对等的互为冗余的区域,每片区域各有m个FLASH通道, 分别编号为0至(m-1);2)设定FLASH通道每次读写操作的最小单元记为数据块;3)从接口进来的数据经过控制器的数据重新组织,划分成m个数据块,分别编号为 0至(m-1));4)控制器将这m个数据块分别并行写入2个区域的m个FLASH通道0号数据块写入该区域的0号FLASH通道;[0015]1号数据块写入该区域的1号FLASH通道;(m-1)号数据块写入该区域的(m-Ι)号FLASH通道;在FLASH固态盘发生故障时,数据读取过程包括以下步骤1)控制器查询各个FLASH通道状态,判定故障点,假设是0号FLASH通道损坏;2)控制器关闭该区域的访问;3)控制器从另一区域的m个FLASH通道中,每个通道读取1个数据块,组成m个数据块;4)控制器对读到的m个数据块进行数据重组,将其还原;在FLASH固态盘替换了故障FLASH芯片、要进行数据恢复时,数据恢复过程包括以下步骤1)控制器根据地址,读取另一个区域中相对应的FLASH通道上存储的数据;2)控制器将读取的数据写入该区域的原损坏的FLASH通道读取1号区域的1号FLASH通道,地址0x0000上存储的数据;然后将该数据写入 0号区域的1号FLASH通道的0x0000地址;读取1号区域的1号FLASH通道,地址0x0001上存储的数据;然后将该数据写入 0号区域的1号FLASH通道的0x0001地址;读取1号区域的1号FLASH通道,地址OxFFFF上存储的数据;然后将该数据写入 0号区域的1号FLASH通道的OxFFFF地址。本实用新型的有益效果本实用新型提供的高可靠性、高速的数据冗余保护 FLASH固态盘,为存储数据提供了极高的可靠性,即使在同一区域内1个至m个FLASH通道的芯片损坏,也能够保证存储数据的完整性;在保证高可靠性的同时,以m通道并行读写和 “零开销”的冗余机制,极大的提高了 FLASH固态盘的读写速度。
图1 数据冗余保护FLASH固态盘的结构示意图;图2 故障时的数据读取过程的示意图;图3 数据恢复过程的示意图。
具体实施方式
以下结合附图通过实施例对本发明作进一步阐述如图1所示,一种数据冗余保护FLASH固态盘,包括若2个对等的互为冗余的数据区域存储区域,每个区域各有m个可以并行存储数据块的FLASH通道。2个对等的互为冗余的数据区域存储区域中编号相同的数据通道存储的数据块一致。这种数据冗余保护FLASH固态盘的还包括一个可以实现数据存储功能、数据读取功能和数据恢复功能的控制器。数据存储过程包括以下步骤(一)将FLASH芯片分成2个对等的区域,每片区域各有m个FLASH通道;(二)设定FLASH通道每次读写操作的最小单元,记为“数据块”;
4[0039](三)从接口进来的用户数据经过控制器的数据重新组织,划分成m个数据块;(四)控制器将这m个数据块并行写入AO区域对应的m个FLASH通道,具体如下 0号数据块写入FLASH通道A0_0 ;1号数据块写入FLASH通道A0_1 ;(m-Ι)号数据块写入 FLASH 通道 A0_ (m_l)。(五)同时控制器也将这m个数据块并行写入Al区域对应的m个FLASH通道,具体如下0号数据块写入FLASH通道A1_0 ;1号数据块写入FLASH通道Al_l ;(m-Ι)号数据块写入 FLASH 通道 Al_ (m_l)。如图2所示,在FLASH固态盘发生故障时,数据读取过程包括以下步骤(一 )控制器查询各个FLASH通道状态,判定故障点;(二)假设是AO区域FLASH通道A0_1损坏,控制器关闭AO区域的访问;(三)控制器从Al区域的m个FLASH通道中,轮流从每个通道读取1个数据块,并这m个数据块组织为一段有序的数据,具体如下从FLASH通道A1_0读取的数据为0号数据块;从FLASH通道Al_l读取的数据为1号数据块;从FLASH通道Al_(m_l)读取的数据为(m_l)号数据块。(四)控制器对读到的m个数据块进行数据重新组织,将其还原为用户数据。如图3所示,在FLASH固态盘替换了故障FLASH芯片、要进行数据恢复时,以0号区域的FLASH通道A0_1为例,数据恢复过程包括以下步骤(一)控制器根据地址,读取Al区域中相对应的FLASH通道上存储的数据,即 FLASH通道Al_l上存储的数据;( 二 )控制器将读取的数据写入AO区域的FLASH通道A0_1,具体如下读取FLASH通道Al_l、地址0x0000上存储的数据;然后将该数据写入FLASH通道 A0_1 的 0x0000 地址;读取FLASH通道Al_l、地址0x0001上存储的数据;然后将该数据写入FLASH通道 A0_1 的 0x0001 地址;读取FLASH通道Al_l、地址OxFFFF上存储的数据;然后将该数据写入FLASH通道 A0_1 的 OxFFFF 地址。此处的m的值可为500或为2000。为了解决FLASH固态盘中由于FLASH芯片故障造成的数据丢失问题,提高数据存储的可靠性,本发明提出了将FLASH芯片分为互为冗余的两个区域,在存储数据时同时写入两个区域,在发生故障时将完整的用户数据从其中一个完好区域读出,并能根据完好区域快速恢复损坏区域的方法。将FLASH固态盘上的FLASH通道分为对等的2个对等的区域,每个区域各有m个 FLASH通道。按照并行系数m,控制器对接口进来的用户数据进行重新组织,划分成m个数据块,然后并行写入两个区域中对应的m个FLASH通道0号数据块写入两个区域的0号 FLASH通道、1号数据块写入两个区域的1号FLASH通道、……(m_l)号数据块写入两个区域的(m-Ι)号FLASH通道。存储的数据在两个区域中互为冗余。当用户读取数据时,如果此时FLASH通道均没有故障,则控制器关闭0号区域的访问,从1号区域的m个FLASH通道中并行读取数据,经控制器重新组织后输出给用户。如果此时一个区域有若干FLASH通道故障,则控制器关闭对这个区域的访问,从另一个完好区域的m个FLASH通道中并行读取数据,经控制器重新组织后输出给用户,从而保证用户数据的正确性。当故障通道进行替换后,需要恢复完整的用户数据时,控制器从另一个区域的对应FLASH通道上,按照地址顺序读取数据,然后写入需要被恢复的FLASH通道,恢复原故障通道的数据。本实型新型采用两个区域互为冗余的机制进行数据保护,能够很大限度的提高数据的可靠性,即使同个区域内的多个FLASH通道故障时也能输出正确数据;而且在实现数据恢复时基本上没有增加额外开销,是很高效的实现方式。同时采用了 m通道并行读写,极大的提高了读写速度。
权利要求1.一种数据冗余保护FLASH固态盘,其特征在于,包括2个对等的互为冗余的数据区域存储区域,每个区域各有m个可以并行存储数据块的FLASH通道,m为500或2000。
2.根据权利要求1所述的数据冗余保护FLASH固态盘,其特征在于,2个对等的互为冗余的数据区域存储区域中编号相同的数据通道存储的数据块一致。
3.根据权利要求1所述的数据冗余保护FLASH固态盘,其特征在于,还包括一个可以实现数据存储功能、数据读取功能和数据恢复功能的控制器。
专利摘要本实用新型涉及数据存储技术领域,尤其是涉及一种数据冗余保护FLASH固态盘,包括2个对等的互为冗余的数据区域存储区域,每个区域各有m个可以并行存储数据块的FLASH通道,m为500或2000。本实用新型的有益效果是本实用新型提供的高可靠性、高速的数据冗余保护FLASH固态盘,为存储数据提供了极高的可靠性,即使在同一区域内1个至m个FLASH通道的芯片损坏,也能够保证存储数据的完整性;在保证高可靠性的同时,以m通道并行读写和“零开销”的冗余机制,极大的提高了FLASH固态盘的读写速度。
文档编号G06F11/14GK202145309SQ20112000556
公开日2012年2月15日 申请日期2011年1月10日 优先权日2011年1月10日
发明者王宇峰, 陈世守, 项世珍 申请人:中国电子科技集团公司第五十二研究所