CN107562643A - 一种固态硬盘raid管理方法 - Google Patents
一种固态硬盘raid管理方法 Download PDFInfo
- Publication number
- CN107562643A CN107562643A CN201710685347.8A CN201710685347A CN107562643A CN 107562643 A CN107562643 A CN 107562643A CN 201710685347 A CN201710685347 A CN 201710685347A CN 107562643 A CN107562643 A CN 107562643A
- Authority
- CN
- China
- Prior art keywords
- die
- parity
- bank
- page
- vbank
- 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
Landscapes
- Detection And Correction Of Errors (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种固态硬盘RAID管理方法,其特征在于建立NAND最小并发单元的虚拟映射层,保持地址映射顺序分配规则;保证同一页序号所在的条带的Parity所对应的页最后分配获得地址空间,当获得Parity所对应的页最后分配获得地址空间时立即计算该条带的Parity,获得Parity马上触发die的并行写入操作。通过建立NAND最小并发单元的虚拟映射层,保持地址映射顺序分配规则,降低了PARITY的生成延迟,保障NAND的并发性操作,提升了SSD性能。
Description
技术领域
本发明涉及固态硬盘控制技术,特别涉及一种固态硬盘RAID管理方法。
背景技术
图1是典型的NAND组成示意图:DIE,可独立并发操作的单元;Block,可独立擦除的单元,其内各个物理位置的数据写入后在下一次写之前必须要将整个Block擦除;Page,读写单元,同一物理块内的Page必需按顺序编程:0->1->2->3…。
图2是常规奇偶校验分布示例,假设该NAND为四个DIE,每个DIE 2个Plane,将Page号相同的页设置为一个条带Stripe,一个RAID 5条带包括7个有效数据页+1个奇偶校验页Parity。为保障Parity分布对于读性能的影响,需要周期性将Parity分布到不同Plane,Plane是一个存储矩阵,包含若干个Block。以Page 0组成的条带Stripe 0为例,Bank 0(DIE0,Plane 0)存放Parity数据,而其必需在处于同一条带的D0_1,D0_2….D0_7的数据确定之后才能生成。而在NAND内部,为了保障写入的带宽,需要遵守一些数据写入规则,以便实现DIE之间的写入并发。以图2为例,物理地址分配依次如下:
Bank 0(DIE 0/Plane0)→Bank 1(DIE 0/Plane1)→
Bank 2(DIE 1/Plane0)→Bank 3(DIE 1/Plane1)→
Bank 4(DIE 2/Plane0)→Bank 5(DIE 2/Plane1)→
Bank 6(DIE 3/Plane0)→Bank 7(DIE 3/Plane1)
但由于Parity生成规则,导致NAND控制器端数据准备好的次序如下:
Bank 1(DIE 0/Plane1)→
Bank 2(DIE 1/Plane0)→Bank 3(DIE 1/Plane1)→
Bank 4(DIE 2/Plane0)→Bank 5(DIE 2/Plane1)→
Bank 6(DIE 3/Plane0)→Bank 7(DIE 3/Plane1)→
Bank 0(DIE 0/Plane 0)
由于NAND特性,落在同一DIE不同Plane的操作可以并发操作。在如上序列中,DIE1/2/3的写操作可以并发完成,但对于DIE0,由于其Plane 0/1的数据Ready时间差距较远(可能远远超过Program时间),所以不能实现操作并发。
图3是常规奇偶校验分布是NAND编程时序图,为NAND控制器端实际Program时间。可见,如果Parity数据生成存在延迟时,常规的每个Stripe可在一个时间片内可以完成的并发操作,被放大到需要2个时间片内才能完成。
发明内容
针对以上缺陷,本发明目的是如何克服由于Parity延迟引起的降低了NAND编程的并发操作的可能性,进而带来NAND性能降低的问题。
为了解决以上问题本发明提出了一种固态硬盘RAID管理方法,其特征在于建立NAND最小并发单元的虚拟映射层,保持地址映射顺序分配规则;保证同一页序号所在的条带的Parity所对应的页最后分配获得地址空间,当获得Parity所对应的页最后分配获得地址空间时立即计算该条带的Parity,获得Parity马上触发die的并行写入操作。
所述的固态硬盘RAID管理方法,其特征在于在现有一维的BANK到物理DIE的映射表的基础上按如下策略生成2维VBANK映射策略表:
f’(vbank,page)={bank|vbank=0–7,page=0–255(NAND Block内最大Page),bank=0-7}
={die,plane|die=0-3,plane=0-1};
地址映射模块根据生成的VBANK映射策略表按现有地址分配策略表进行地址分配。
本发明通过通过建立NAND最小并发单元的虚拟映射层,保持地址映射顺序分配规则,降低了PARITY的生成延迟,保障NAND的并发性操作,提升了SSD性能。
附图说明
图1是典型的NAND组成示意图;
图2是常规奇偶校验分布示例;
图3是常规奇偶校验分布是NAND编程时序图;
图4是常规SSD内部采取的BANK到物理DIE的映射关系图;
图5是VBANK映射策略关系图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图4是常规SSD内部采取的BANK到物理DIE的映射关系图,一般采用了一维的映射策略:
f(bank)={die,plane|bank=0–7,die=0-3,plane=0-1};
SSD内部的地址映射模块按照Bank/Page规则顺序分配数据存放物理地址。为了解决DIE的并行操作问题,对该映射表进行改造,修改为2维映射策略。
图5是VBANK映射策略关系图;采用了2维映射策略:
f’(vbank,page)={bank|vbank=0–7,page=0–255(NAND Block内最大Page),bank=0-7}
={die,plane|die=0-3,plane=0-1}
基于该2维映射表,代入现有地址分配策略表,分析Page 0/1时候的地址分配、写入策略:
物理地址分配依次如下:
f’(VBank 0,Page 0)→f’(VBank 1,Page 0)→
f’(VBank 2,Page 0)→f’(VBank 3,Page 0)→
f’(VBank 4,Page 0)→f’(VBank 5,Page 0)→
f’(VBank 7,Page 0)→f’(VBank 7,Page 0)→
f’(VBank 0,Page 1)→f’(VBank 1,Page 1)→
f’(VBank 2,Page 1)→f’(VBank 3,Page 1)→
f’(VBank 4,Page 1)→f’(VBank 5,Page 1)→
f’(VBank 7,Page 1)→f’(VBank 7,Page 1)
根据表2可解析如下
//Page 0
【Bank 2(DIE 1/Plane0)→Bank 3(DIE 1/Plane1)】→
【Bank 4(DIE 2/Plane0)→Bank 5(DIE 2/Plane1)】→
【Bank 6(DIE 3/Plane0)→Bank 7(DIE 3/Plane1)】→
【Bank 1(DIE 0/Plane1)→Bank 0(DIE 0/Plane0)】→
//Page 1
【Bank 2(DIE 1/Plane0)→Bank 3(DIE 1/Plane1)】→
【Bank 4(DIE 2/Plane0)→Bank 5(DIE 2/Plane1)】→
【Bank 6(DIE 3/Plane0)→Bank 7(DIE 3/Plane1)】→
【Bank 0(DIE 0/Plane0)→Bank 1(DIE 0/Plane1)】→
而由于在上述序列中,对于每一组相同Page的Parity数据总是最后分配,所以其分配时间与NAND控制器数据Ready时间一致。由此Parity所在DIE的Plane 0/1也能在同一并发单元内完成。
以上所揭露的仅为本发明一种实施例而已,当然不能以此来限定本之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。
Claims (2)
1.一种固态硬盘RAID管理方法,其特征在于建立NAND最小并发单元的虚拟映射层,保持地址映射顺序分配规则;保证同一页序号所在的条带的Parity所对应的页最后分配获得地址空间,当获得Parity所对应的页最后分配获得地址空间时立即计算该条带的Parity,获得Parity马上触发die的并行写入操作。
2.根据权利要求1所述的固态硬盘RAID管理方法,其特征在于在现有一维的BANK到物理DIE的映射表的基础上按如下策略生成2维VBANK映射策略表:f’(vbank,page)={bank|vbank=0–7,page=0–255(NAND Block内最大Page),bank=0-7}
={die,plane|die=0-3,plane=0-1};
地址映射模块根据生成的VBANK映射策略表按现有地址分配策略表进行地址分配。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710685347.8A CN107562643B (zh) | 2017-08-11 | 2017-08-11 | 一种固态硬盘raid管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710685347.8A CN107562643B (zh) | 2017-08-11 | 2017-08-11 | 一种固态硬盘raid管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107562643A true CN107562643A (zh) | 2018-01-09 |
CN107562643B CN107562643B (zh) | 2020-10-20 |
Family
ID=60975346
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710685347.8A Active CN107562643B (zh) | 2017-08-11 | 2017-08-11 | 一种固态硬盘raid管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107562643B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109445852A (zh) * | 2018-09-05 | 2019-03-08 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 一种在多核处理器中提升内存访问效率的方法及系统 |
CN111338982A (zh) * | 2020-02-11 | 2020-06-26 | 上海威固信息技术股份有限公司 | 一种大容量固态盘内地址映射方法 |
CN112596679A (zh) * | 2020-12-25 | 2021-04-02 | 深圳忆联信息系统有限公司 | 固态硬盘的raid实现方法、装置、计算机设备及存储介质 |
CN113590038A (zh) * | 2021-07-27 | 2021-11-02 | 联芸科技(杭州)有限公司 | 固态硬盘的管理方法和固态硬盘 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101587425A (zh) * | 2009-06-16 | 2009-11-25 | 杭州华三通信技术有限公司 | 一种增加独立磁盘冗余阵列冗余性的方法及装置 |
CN105930098A (zh) * | 2015-05-20 | 2016-09-07 | 德州学院 | 一种消除局部并行中小写操作的集中校验式盘阵列 |
-
2017
- 2017-08-11 CN CN201710685347.8A patent/CN107562643B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101587425A (zh) * | 2009-06-16 | 2009-11-25 | 杭州华三通信技术有限公司 | 一种增加独立磁盘冗余阵列冗余性的方法及装置 |
CN105930098A (zh) * | 2015-05-20 | 2016-09-07 | 德州学院 | 一种消除局部并行中小写操作的集中校验式盘阵列 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109445852A (zh) * | 2018-09-05 | 2019-03-08 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 一种在多核处理器中提升内存访问效率的方法及系统 |
CN111338982A (zh) * | 2020-02-11 | 2020-06-26 | 上海威固信息技术股份有限公司 | 一种大容量固态盘内地址映射方法 |
CN111338982B (zh) * | 2020-02-11 | 2021-01-05 | 上海威固信息技术股份有限公司 | 一种大容量固态盘内地址映射方法 |
CN112596679A (zh) * | 2020-12-25 | 2021-04-02 | 深圳忆联信息系统有限公司 | 固态硬盘的raid实现方法、装置、计算机设备及存储介质 |
CN112596679B (zh) * | 2020-12-25 | 2023-10-10 | 深圳忆联信息系统有限公司 | 固态硬盘的raid实现方法、装置、计算机设备及存储介质 |
CN113590038A (zh) * | 2021-07-27 | 2021-11-02 | 联芸科技(杭州)有限公司 | 固态硬盘的管理方法和固态硬盘 |
Also Published As
Publication number | Publication date |
---|---|
CN107562643B (zh) | 2020-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107562643A (zh) | 一种固态硬盘raid管理方法 | |
CN101241446B (zh) | 非易失数据存储装置中虚拟文件系统命令调度方法和设备 | |
DE112020002526B4 (de) | Blockmodusumschaltung in datenspeichersystem | |
CN103019970B (zh) | 存储装置及其控制方法 | |
JP5213965B2 (ja) | 1セル当り単一ビットnandフラッシュメモリをエミュレートする1セル当り多ビットnandフラッシュメモリ用コントローラ | |
DE102018105943A1 (de) | Kontextbewusste dynamische Befehlsplanung für ein Datenspeichersystem | |
CN104220991B (zh) | 用于允许数据在nand闪存上的有效存储的架构 | |
DE112018004251T5 (de) | Adaptive vorrichtungsdienstqualität durch host-speicherpufferbereich | |
EP1817658A2 (de) | Speichersystem mit sektorbuffern | |
DE102015012566A1 (de) | Mehrlagenkonzept für logische speicherungsverwaltung | |
DE102011086227A1 (de) | Adress mapping method, data storage device and user device | |
DE102017128952A1 (de) | Datenspeichervorrichtung, die konfiguriert ist, um eine nicht-blockierende Steuerungs-Aktualisierungsoperation auszuführen | |
DE112010002663T5 (de) | Schreib-Lösch-Ausdauerlebenszeit von Speichervorrichtungen | |
DE112016002631B4 (de) | Speicherfunktionszustandsüberwachung | |
CN103384550B (zh) | 储存数据的方法及装置 | |
DE112016000696B4 (de) | Ablaufplanungsschema(ta) für eine Mehrchip-Speichervorrichtung | |
CN105468293A (zh) | 通过预测损坏的m-页提高闪存利用率的方法和系统 | |
DE112020002792B4 (de) | Verschleissorientierte blockmodusumwandlung in nichtflüchtigen speichern | |
CN109582227A (zh) | 固态硬盘写入方法、装置、计算机设备和存储介质 | |
CN110347613B (zh) | 多租户固态盘中实现raid的方法、控制器及多租户固态盘 | |
DE112010003762T5 (de) | Flash-Speicher-Steuereinheit | |
DE102019116546A1 (de) | Verfahren für schnelles boot-lesen | |
CN107066202B (zh) | 具有多个固态盘的存储设备 | |
DE112018004252T5 (de) | Redundanzcodierstreifen auf der basis eines koordinierten internen adressschemas über mehrere vorrichtungen | |
CN108733306A (zh) | 一种文件合并方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |