This case involves user configurable passive background operations. A system and method for allowing SSD (120) to perform passive garbage collection are described. The SSD (120) may include a storage device (315) for data; and a garbage collection logic (340) that performs garbage collection on the storage device (315). A reception circuit (305) may receive configuration commands (405) from the host (105). The configuration command (405) may include conditions (410505605) such as idle duration (505) and / or queue depth threshold (605). A conditional storage device (325) may store a condition (410505605). A state determiner (320) can determine the status of SSD (120) (510610). The comparator (330) can compare the status (510610) of the SSD (120) with the condition (410505605) to determine whether a passive garbage collection is triggered.
【技术实现步骤摘要】
相关申请数据本申请要求于2016年3月17日提交的序列号为62/309,954的美国临时专利申请的权益,该美国临时专利申请通过引用并入于此以用于所有目的。
本专利技术构思通常涉及固态驱动(SSD),并且更具体地,涉及当SSD可以执行垃圾回收(GarbageCollection)时进行的增强。
技术介绍
垃圾回收对于固态驱动(SSD)是常见事件。当SSD用尽空闲(free)擦除块时,其执行垃圾回收(GC)来释放新的擦除块以供新的写入使用。该处理可能会减慢SSD的读/写性能,这是因为在可以对请求提供服务之前,读/写必须等待垃圾回收完成。诸如存储智能的特征通过主机发起的垃圾回收帮助解决该问题。然而,这需要主机发出垃圾回收命令,以通知设备开始垃圾回收。针对用于提高大数据库的性能并且对最小化延迟和降低成本的两个目的进行均衡的方式存有需求。
技术实现思路
本申请的一个方面提供一种固态驱动(SSD),包括:用于数据的存储设备;用于对存储设备执行垃圾回收的垃圾回收逻辑;用于接收配置命令和数据请求的接收电路,该配置命令包括从包含空闲持续时间和队列深度阈值的集合中所得到的条件;用于存储条 ...
【技术保护点】
一种固态驱动(SSD)(120),包括:用于数据的存储设备(315);用于对存储设备(315)执行垃圾回收的垃圾回收逻辑(340);用于接收配置命令(405)和数据请求(420,415,425)的接收电路(305),该配置命令(405)包括从包含空闲持续时间(505)和队列深度阈值(605)的集合中所得到的条件(410,505,605);用于存储条件(410,505,605)的条件存储设备(325);用于对SSD(120)的状态(510,610)进行确定的状态确定器(320);以及用于将SSD(120)的状态(510,610)与条件(410,505,605)进行比较的比较器(330)。
【技术特征摘要】
2016.03.17 US 62/309,954;2016.05.10 US 15/151,4701.一种固态驱动(SSD)(120),包括:用于数据的存储设备(315);用于对存储设备(315)执行垃圾回收的垃圾回收逻辑(340);用于接收配置命令(405)和数据请求(420,415,425)的接收电路(305),该配置命令(405)包括从包含空闲持续时间(505)和队列深度阈值(605)的集合中所得到的条件(410,505,605);用于存储条件(410,505,605)的条件存储设备(325);用于对SSD(120)的状态(510,610)进行确定的状态确定器(320);以及用于将SSD(120)的状态(510,610)与条件(410,505,605)进行比较的比较器(330)。2.根据权利要求1所述的SSD(120),进一步包括触发电路(335),用于如果比较器(330)指示SSD(120)的状态(510,610)满足条件(410,505,605),则触发垃圾回收逻辑(340)以对存储设备(315)执行垃圾回收。3.根据权利要求1所述的SSD(120),其中,触发电路(335)可操作为,如果比较器(330)指示SSD(120)的状态(510,610)满足条件(410,505,605)并且SSD(120)上空闲擦除块的数量(520)低于阈值,则触发垃圾回收逻辑(340)以对存储设备(315)执行垃圾回收。4.根据权利要求1所述的SSD(120),其中:条件(410,505,605)包括空闲持续时间(505);状态确定器(320)可操作为确定用于SSD(120)的空闲时间(510);以及比较器(330)可操作为将用于SSD(120)的空闲时间(510)与空闲持续时间(505)进行比较。5.根据权利要求1所述的SSD(120),其中:条件(410,505,605)包括队列深度阈值(605);状态确定器(320)可操作为确定用于SSD(120)的命令队列深度(610);以及比较器(330)可操作为将用于SSD(120)的命令队列深度(610)与队列深度阈值(605)进行比较。6.根据权利要求5所述的SSD(120),其中,状态确定器(320)可操作为从多个深度(705,710,715)中确定用于SSD(120)的命令队列深度(610)。7.根据权利要求6所述的SSD(120),其中,状态确定器(320)可操作为将命令队列深度(610)计算为多个深度(705,710,715)的平均值(720)。8.根据权利要求6所述的SSD(120),其中,状态确定器(320)可操作为将命令队列深度(610)计算为多个深度(705,710,715)的最大值(740)。9.根据权利要求6所述的SSD(120),其中,状态确定器(320)可操作为将命令队列深度(610)计算为多个深度(705,710,715)的求和值(725)。10.根据权利要求6所述的SSD(120),其中,状态确定器(320)可操作为将命令队列深度(610)计算为多个深度(705,710,715)的中位值(730)。11.根据权利要求6所述的SSD(120),其中,状态确定器(320)可操作为将命令队列深度(610)计算为多个深度(705,710,715)的最小值(735)。12.一种方法,包括:在固态驱动(SSD)(120)处接收(905,910)配置命令(405),该配置命令(405)包括从包含空闲持续时间(505)和队列深度阈值(605)的集合中所得到的条件(410,505,605);将条件(410,505,605)存储(915)在SSD(120)上;以及使用(920)条件(410,505,605)来对SSD(120)执行垃圾回收。13.根据权利要求12所述的方法,其中,使用(920)条件(410,505,605)来对SSD(120)执行垃圾回收包括:监视(1005,1105)SSD(120)的状态(510,610);将SSD(120)的状态与条件(410,505,605)进行比较(1010,1110);以及如果SSD(120)的状态(510,610)满足条件(410,505,605)则对SSD(120)执行(930)垃圾回收。14.根据权利要求13所述的方法,其中,在SSD(120)处接收(905,910)配置命令(405)包括,在SSD(120)处接收(905,910)配置命令(405),该配置命令(405)包括空闲持续时间(505);监视(1005,1105)SSD(120)的状态(510,610)包括追踪(100...
【专利技术属性】
技术研发人员:曾世贤,崔昌皓,
申请(专利权)人:三星电子株式会社,
类型:发明
国别省市:韩国;KR
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。