[发明专利]快速响应trim命令的方法、SSD控制器及系统有效
| 申请号: | 201210481987.4 | 申请日: | 2012-11-25 |
| 公开(公告)号: | CN103019971A | 公开(公告)日: | 2013-04-03 |
| 发明(设计)人: | 向志华;李欣;张琴;杨继涛;王灿;黎智;李程 | 申请(专利权)人: | 向志华;李欣;张琴;杨继涛;王灿;黎智;李程 |
| 主分类号: | G06F13/16 | 分类号: | G06F13/16 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 610000 四川省成都*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 快速 响应 trim 命令 方法 ssd 控制器 系统 | ||
技术领域
本发明涉及存储技术领域,尤其涉及一种快速响应trim命令的方法以及对应的快速响应trim命令的SSD控制器、快速响应trim命令的SSD系统。
背景技术
固态硬盘(Solid State Disk, SSD)采用非易失性存储芯片作为存储介质,物理上这些存储芯片在写入数据之前必须先进行擦除操作。而在擦除之前,则需将存储芯片的存储块上原先有效的数据转移到另外的已擦过的块,这个过程一般称为垃圾回收。垃圾回收的效率直接影响SSD的写性能,垃圾回收效率越高对主机向SSD写入数据的写性能的影响越小。当一个块上的数据全为无效数据时垃圾回收的效率最高。
为此,ATA(Advanced Technology Attachment,高级技术附件规格)协议里新增TRIM命令,ATA TRIM命令是文件系统用来通知设备哪些逻辑地址不再被占用,可以被设备回收为空闲空间,在ATA命令集中,TRIM命令只是DATA MANAGEMENT SET(DMS)命令的一个子命令,DMS命令是专门用来做设备优化的,当DMS的feature属性最低位置1,发送的就是TRIM命令;
该命令通过DATA MANAGEMENT SET命令下发,归类于DMA(Direct Memory Access,直接内存存取) 协议命令。在删除文件时,通过该条命令可将一段数据设定为无效,从而提高SSD后续垃圾回收的效率;同时,TRIM减少了无效数据的搬移,降低了存储芯片的磨损,对提高SSD寿命也有积极作用。
一般而言,SSD控制器在执行TRIM命令时并非立即将TRIM数据所在的物理块进行垃圾回收,否则垃圾回收所带来的读/写/擦除将占用很长的时间(参见专利CN200920227341.7“一种用于固态硬盘的八通道SOC控制芯片”以及专利US20120066447“SCHEDULING OF I/O INAN SSD ENVIRONMENT”)。SSD控制器的主要操作是修改相关数据所对应的表项,包括基于逻辑地址索引的数据状态表和基于物理地址的物理状态表,而当TRIM的区域范围很大时,表项修改的次数和时间呈线性增长,进而会影响命令的响应时间,使得命令完成超时;即使在SSD控制器中采用缓存技术,将表项缓存在其中,在表项修改时只更新缓存中的数据,能一定程度地改善命令完成时间,但仍不能根本地解决上述问题。
发明内容
为解决上述现有技术中存在的技术问题,本发明提供一种快速响应trim命令的方法以及对应的快速响应trim命令的SSD控制器、快速响应trim命令的SSD系统,实施本发明所提供的技术方案,可以快速地执行连续多个大段数据的trim命令,从而在较短的时间内响应主机的多个大段数据的trim请求,减小了系统的等待时间,提高命令响应效率。
为解决上述技术问题,本发明提供一种快速响应trim命令的方法,包括:
固态硬盘SSD控制器接到主机下发的trim命令时,获取该trim命令所指的逻辑地址范围;
SSD控制器修改所述trim命令所指的逻辑地址的状态,将其置为无效;
SSD控制器向主机返回表示trim命令完成的应答信号;
在trim命令完成应答后,由SSD控制器择机执行对所述逻辑地址对应的物理地址的状态进行修改,将其置为无效。
其中,所述在trim命令完成应答后,由SSD控制器择机执行对所述逻辑地址对应的物理地址的状态进行修改,将其置为无效,包括:在主机未下发新的trim命令的情况下,SSD控制器对所述trim命令所指的逻辑地址对应的物理地址的状态进行修改,将其置为无效;或者在SSD处于空闲的状态时,SSD控制器对所述trim命令所指的逻辑地址对应的物理地址的状态进行修改,将其置为无效。
其中,若SSD控制器对所述trim命令所指的逻辑地址对应的物理地址的状态进行修改的操作尚未完成,接收到主机下发的新的trim命令时,则SSD控制器缓存尚未完成的修改物理地址的操作,响应主机下发的新的trim命令;且当所述新的trim命令完成后,SSD控制器继续执行尚未完成的修改物理地址的操作。
其中,所述SSD控制器向主机返回表示trim命令完成的应答信号之后,还包括:
SSD控制器接到主机下发的写IO请求时,SSD控制器获取一个可写的物理地址;
SSD控制器下发写命令,将主机下发的数据写到已分配的物理地址;
SSD控制器修改逻辑地址,将其指向新写入数据的物理地址,并置该逻辑地址有效;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于向志华;李欣;张琴;杨继涛;王灿;黎智;李程,未经向志华;李欣;张琴;杨继涛;王灿;黎智;李程许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210481987.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种轨道承轨台浇注模具
- 下一篇:一种降音减震轨道





