CN107291381B - 一种固态硬盘动态加速区的实现方法及固态硬盘 - Google Patents
一种固态硬盘动态加速区的实现方法及固态硬盘 Download PDFInfo
- Publication number
- CN107291381B CN107291381B CN201710354772.9A CN201710354772A CN107291381B CN 107291381 B CN107291381 B CN 107291381B CN 201710354772 A CN201710354772 A CN 201710354772A CN 107291381 B CN107291381 B CN 107291381B
- Authority
- CN
- China
- Prior art keywords
- acceleration
- partition
- solid state
- space
- state disk
- 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.)
- Active
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/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/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/0658—Controller construction 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
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)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明公开了一种固态硬盘动态加速区的实现方法及固态硬盘,其特征在于在MLC或者TLC工艺的固态硬盘中至少分出一个加速分区,将所述加速分区的物理块转换为SLC,外部控制器对固态硬盘的写操作优先选择写入加速分区,写入完成后直接返回写入成功;固态硬盘控制中设有动态更新程序,后台自动将加速分区的数据更新到用户空间中,所述用户空间为非SLC区域。通过将部分MLC/TLC物理块转换为SLC,从而获得更高的读写性能;同时根据盘的逻辑使用空间与物理空间的比例,动态调整此加速区的大小,可在用户端实现较高的写入速度效果。
Description
技术领域
本发明涉及固态硬盘控制技术,特别涉及一种固态硬盘动态加速区的实现方法及固态硬盘。
背景技术
SSD(固态硬盘)已经被广泛应用于各种场合,随着NAND工艺的演进,从SLC到MLC,再到TLC,其编程复杂度越来越高,对应地同等容量的NAND的写入性能在下降。因此对于写入时间有一定要求的应用场合,该MLC和TLC的写性能无法满足应用要求。对于存在大量数据写入的应用,写入速度慢也将降低应用的响应速度,严重影响用户体验。
发明内容
针对以上缺陷,本发明目的如何提升现有MLC、TLC等工艺类型固态硬盘写入速度慢的问题。
为了解决以上问题本发明提出了一种固态硬盘动态加速区的实现方法,其特征在于在MLC或者TLC工艺的固态硬盘中至少分出一个加速分区,将所述加速分区的物理块转换为SLC,外部控制器对固态硬盘的写操作优先选择写入加速分区,写入完成后直接返回写入成功;固态硬盘控制中设有动态更新程序,后台自动将加速分区的数据更新到用户空间中,所述用户空间为非SLC区域。
所述的固态硬盘动态加速区的实现方法,其特征在于所述加速分区的大小动态根据用户空间中空闲空间的大小动态调整。
所述的固态硬盘动态加速区的实现方法,其特征在于当用户空间的空闲空间大于预先设定的调整阀值时,保持加速分区的大小不变;当用户空间的空闲空间小于预先设定的调整阀值时,当用户空间的空闲空间变少时,加速分区也自动调小。
所述的固态硬盘动态加速区的实现方法,其特征在于根据加速分区的空间大小X,用户空间已使用的逻辑空间Y和固态硬盘用户可见的逻辑空间N的关系,动态确定外部控制器对固态硬盘的写操作是直接写入用户空间还是写入加速分区。
所述的固态硬盘动态加速区的实现方法,其特征在于当(Y+X)>=N,则直接写入用户空间中,且触发将加速区的数据全部更新到用户空间中;当(Y+X)<N且X〉=1/4*N,则直接写入用户空间中;当(Y+X)<N且X<1/4*N,则直接写入加速分区。
所述的固态硬盘动态加速区的实现方法,其特征在于当用户空间的空闲空间小于预先设定的恢复阀值时,将加速分区从SLC恢复到原始的存储类型,加速分区对应的存储空间恢复为用户空间。
所述的固态硬盘动态加速区的实现方法,其特征在于后台自动将加速分区的数据更新到用户空间中的操作选择系统空闲时自动触发并进行操作。
一种固态硬盘,其特征在于固态硬盘的控制器采用了权利要求1至7任意一项所述的固态硬盘动态加速区的实现方法。
本发明通过将部分MLC/TLC物理块转换为SLC,从而获得更高的读写性能;同时根据盘的逻辑使用空间与物理空间的比例,动态调整此加速区的大小,可在用户端实现较高的写入速度效果。
附图说明
图1是TLC、MLC和SLC的性能对比图;
图2是具体实施例空间分配示意图;
图3是具体实施例各个空间写入性能对比图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是TLC、MLC和SLC的性能对比图;同等TLC工艺的物理块强制转换为SLC工艺,则下降为原来TLC原始存储容量的1/3,同等MLC工艺的物理块强制转换为SLC工艺,则下降为原来TLC原始存储容量的1/2,但是读写性能都有了很大的提高,通过空间换取时间。
作为MLC或者TLC工艺的固态硬盘,一般至少要保留一部分区域,也就是系统保留区,作为垃圾回收、坏块备份和系统数据存储用,因此暴露给到用户或者说用户最大可访问的地址空间一定比原始的物理空间大小小。考虑到任意时刻硬盘上的数据不可能满,大部分情况下都具有较大的空闲空间。本发明也正是利用这特性,在用户可访问的地址空间中划分出一个分区,将该分区作为加速分区,将加速分区的物理块强制转换为SLC,外部控制器对固态硬盘的写操作优先选择写入加速分区,写入完成后直接返回写入成功;由于同样大小的数据写入操作SLC相比于MLC和TLC都具有较大的提升,数据量越大,体现更为明显。数据写入到SLC的加速分区后,对于外部控制器这一侧写入操作就完成了。因此对于外部控制器来说,写入的速度具有较大的提升。固态硬盘控制中设有动态更新程序,后台自动将加速分区的数据更新到用户空间中,用户空间为非SLC区域,该操作对于外部控制器是不可见的。
图2是具体实施例空间分配示意图;假设总的原始MLC或TLC容量为128GB,系统保留区28GB,对用户所暴露或者用户最大可写入的地址空间为100GB,大部分时间用户实际使用的逻辑空间保持在30GB左右。因此用户的地址空间还保持70GB左右的空闲空间。因此可以从70GB中划分出一个分区作为加速分区使用。加速分区的大小动态根据用户空间中空闲空间的大小动态调整。当用户空间的空闲空间大于预先设定的调整阀值时,保持加速分区的大小不变;当用户空间的空闲空间小于预先设定的调整阀值时,当用户空间的空闲空间变少时,加速分区也自动调小。
硬盘控制器根据加速分区的空间大小X,用户空间已使用的逻辑空间Y和固态硬盘用户可见的逻辑空间N的关系,动态确定外部控制器对固态硬盘的写操作是直接写入用户空间还是写入加速分区。当(Y+X)>=N,则直接写入用户空间中,且触发将加速区的数据全部更新到用户空间中;当(Y+X)<N且X〉=1/4*N,则直接写入用户空间中;当(Y+X)<N且X<1/4*N,则直接写入加速分区。
随着硬盘中空闲的空间减少,在于当用户空间的空闲空间小于预先设定的恢复阀值时,说明用户对空间的要求更为强烈,因此将加速分区从SLC恢复到原始的存储类型,加速分区对应的存储空间恢复为用户空间。
图3是具体实施例各个空间写入性能对比图。Stage 1,所有的用户数据写入都是写入到SLC物理块中;Stage 2,所有的用户数据写入都是直接写入到MLC、TLC物理块中;Stage 3,用户数据直接写入到MLC物理块,且同时将SLC中数据迁移到MLC/TLC物理块,以释放物理空间(SLC占用自身2X/3X MLC/TLC空间)。
为避免用户写入时触发Stage 3的写入行为,此时的写入速度是最低的;当系统闲置时,触发SLC往MLC数据的迁移。在此情形下,在Y不变的前提下,可以降低X的占用空间。从而使得盘总是工作在Stage 1/2(>=不使用高速区的SSD写入性能)。
以上所揭露的仅为本发明一种实施例而已,当然不能以此来限定本之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。
Claims (6)
1.一种固态硬盘动态加速区的实现方法,其特征在于在MLC或者TLC工艺的固态硬盘中至少分出一个加速分区,将所述加速分区的物理块转换为SLC,外部控制器对固态硬盘的写操作优先选择写入加速分区,写入完成后直接返回写入成功;固态硬盘控制中设有动态更新程序,后台自动将加速分区的数据更新到用户空间中,所述用户空间为非SLC区域;根据加速分区的空间大小X,用户空间已使用的逻辑空间Y和固态硬盘用户可见的逻辑空间N的关系,动态确定外部控制器对固态硬盘的写操作是直接写入用户空间还是写入加速分区具体为当(Y+X)>=N,则直接写入用户空间中,且触发将加速区的数据全部更新到用户空间中;当(Y+X)<N且X〉=1/4*N,则直接写入用户空间中;当(Y+X)<N且X<1/4*N,则直接写入加速分区。
2.根据权利要求1所述的固态硬盘动态加速区的实现方法,其特征在于所述加速分区的大小动态根据用户空间中空闲空间的大小动态调整。
3.根据权利要求2所述的固态硬盘动态加速区的实现方法,其特征在于当用户空间的空闲空间大于预先设定的调整阀值时,保持加速分区的大小不变;当用户空间的空闲空间小于预先设定的调整阀值时,当用户空间的空闲空间变少时,加速分区也自动调小。
4.根据权利要求1至3任意一项所述的固态硬盘动态加速区的实现方法,其特征在于当用户空间的空闲空间小于预先设定的恢复阀值时,将加速分区从SLC恢复到原始的存储类型,加速分区对应的存储空间恢复为用户空间。
5.根据权利要求4所述的固态硬盘动态加速区的实现方法,其特征在于后台自动将加速分区的数据更新到用户空间中的操作选择系统空闲时自动触发并进行操作。
6.一种固态硬盘,其特征在于固态硬盘的控制器采用了权利要求1至5任意一项所述的固态硬盘动态加速区的实现方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710354772.9A CN107291381B (zh) | 2017-05-18 | 2017-05-18 | 一种固态硬盘动态加速区的实现方法及固态硬盘 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710354772.9A CN107291381B (zh) | 2017-05-18 | 2017-05-18 | 一种固态硬盘动态加速区的实现方法及固态硬盘 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107291381A CN107291381A (zh) | 2017-10-24 |
CN107291381B true CN107291381B (zh) | 2020-04-28 |
Family
ID=60095002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710354772.9A Active CN107291381B (zh) | 2017-05-18 | 2017-05-18 | 一种固态硬盘动态加速区的实现方法及固态硬盘 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107291381B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107943713A (zh) * | 2017-11-22 | 2018-04-20 | 深圳忆联信息系统有限公司 | 一种提升固态硬盘读性能的方法及固态硬盘 |
CN108549588A (zh) * | 2018-03-27 | 2018-09-18 | 深圳忆联信息系统有限公司 | 一种消除tlc闪存多片编程失败的方法 |
CN108595115B (zh) * | 2018-03-27 | 2021-10-01 | 深圳忆联信息系统有限公司 | 一种提高ssd垃圾回收效率的方法 |
CN111104045A (zh) * | 2018-10-25 | 2020-05-05 | 深圳市中兴微电子技术有限公司 | 一种存储控制方法、装置、设备和计算机存储介质 |
US10901622B2 (en) * | 2018-12-28 | 2021-01-26 | Micron Technology, Inc. | Adjustable NAND write performance |
CN109815166B (zh) * | 2018-12-28 | 2020-10-09 | 深圳市德明利技术股份有限公司 | 一种存储数据的动态回收处理方法及存储装置 |
CN111159058B (zh) * | 2019-12-27 | 2022-03-04 | 深圳大普微电子科技有限公司 | 一种磨损均衡方法、装置及非易失性的存储设备 |
CN112527204A (zh) * | 2020-12-15 | 2021-03-19 | 深圳星火半导体科技有限公司 | 存储方法及装置 |
CN113064843A (zh) * | 2021-03-24 | 2021-07-02 | 深圳市时创意电子有限公司 | 一种固态硬盘的制造方法与固态硬盘 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102142277A (zh) * | 2010-01-28 | 2011-08-03 | 深圳市江波龙电子有限公司 | 一种存储器及存储器读写控制方法及系统 |
CN102473140A (zh) * | 2009-07-17 | 2012-05-23 | 株式会社东芝 | 存储器管理装置 |
CN102591807A (zh) * | 2011-12-30 | 2012-07-18 | 记忆科技(深圳)有限公司 | 一种固态硬盘掉电和写异常处理方法及系统 |
CN103688247A (zh) * | 2011-06-15 | 2014-03-26 | 苹果公司 | 混合slc/mlc存储器中的块管理方案 |
CN103942151A (zh) * | 2014-04-10 | 2014-07-23 | 深圳市硅格半导体有限公司 | 闪存的数据存储方法及装置 |
CN105867834A (zh) * | 2015-01-22 | 2016-08-17 | 深圳市硅格半导体有限公司 | 存储装置数据整理方法 |
CN106170773A (zh) * | 2014-01-09 | 2016-11-30 | 桑迪士克科技有限责任公司 | 用于裸芯上缓冲式非易失性存储器的选择性回拷 |
-
2017
- 2017-05-18 CN CN201710354772.9A patent/CN107291381B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102473140A (zh) * | 2009-07-17 | 2012-05-23 | 株式会社东芝 | 存储器管理装置 |
CN102142277A (zh) * | 2010-01-28 | 2011-08-03 | 深圳市江波龙电子有限公司 | 一种存储器及存储器读写控制方法及系统 |
CN103688247A (zh) * | 2011-06-15 | 2014-03-26 | 苹果公司 | 混合slc/mlc存储器中的块管理方案 |
CN102591807A (zh) * | 2011-12-30 | 2012-07-18 | 记忆科技(深圳)有限公司 | 一种固态硬盘掉电和写异常处理方法及系统 |
CN106170773A (zh) * | 2014-01-09 | 2016-11-30 | 桑迪士克科技有限责任公司 | 用于裸芯上缓冲式非易失性存储器的选择性回拷 |
CN103942151A (zh) * | 2014-04-10 | 2014-07-23 | 深圳市硅格半导体有限公司 | 闪存的数据存储方法及装置 |
CN105867834A (zh) * | 2015-01-22 | 2016-08-17 | 深圳市硅格半导体有限公司 | 存储装置数据整理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107291381A (zh) | 2017-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107291381B (zh) | 一种固态硬盘动态加速区的实现方法及固态硬盘 | |
CN103049397B (zh) | 一种基于相变存储器的固态硬盘内部缓存管理方法及系统 | |
TWI630540B (zh) | 資料儲存裝置及非揮發式記憶體操作方法 | |
US9141532B2 (en) | Dynamic overprovisioning for data storage systems | |
EP2939120B1 (en) | Priority-based garbage collection for data storage systems | |
US11704239B2 (en) | Garbage collection method for storage medium, storage medium, and program product | |
TWI437439B (zh) | 用來以動態門檻進行區塊管理之方法及記憶裝置及控制器 | |
EP2439645B1 (en) | Method and apparatus for storing data in a multi-level cell flash memory device | |
US9753847B2 (en) | Non-volatile semiconductor memory segregating sequential, random, and system data to reduce garbage collection for page based mapping | |
WO2018033036A1 (zh) | 固态硬盘和应用于固态硬盘的数据存取方法 | |
CN107844432B (zh) | 一种固态硬盘动态垃圾回收的方法及固态硬盘 | |
CN108108128A (zh) | 一种混合ssd的磨损均衡方法及ssd | |
CN102880556A (zh) | 一种实现Nand Flash磨损均衡的方法及其系统 | |
CN110968253A (zh) | 一种数据存储方法、装置及系统 | |
CN114328281B (zh) | 固态硬盘异常掉电处理方法、装置、电子设备及介质 | |
TW202034178A (zh) | 資料儲存裝置與資料處理方法 | |
CN112783449A (zh) | 数据迁移方法及装置 | |
CN105630413B (zh) | 一种磁盘数据的同步回写方法 | |
CN104298615B (zh) | 一种存储器交换分区损耗的均衡方法 | |
US20110138110A1 (en) | Method and control unit for performing storage management upon storage apparatus and related storage apparatus | |
TW201537577A (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN112015343A (zh) | 存储卷的缓存空间管理方法、装置及电子设备 | |
CN109739688B (zh) | 快照资源空间管理方法、装置、电子设备 | |
CN110275678B (zh) | 一种基于stt-mram的固态存储器件随机访问性能提升方法 | |
CN106021124B (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 |