在固态硬盘的FTL实现数据拷贝的方法、系统及固态硬盘技术方案

技术编号:16644543 阅读:106 留言:0更新日期:2017-11-26 16:55
本发明专利技术公开在固态硬盘的FTL实现数据拷贝的方法、系统及固态硬盘。该方法包括:维护一张逻辑地址LA到物理地址PA的地址映射表;对成为拷贝目标的物理地址PAdest维护一个数组或链表,这些从物理地址PAdest到多个逻辑地址LAi的映射组成一个反向地址映射表,维护该反向地址映射表;接收软件发送给固态硬盘的无复制拷贝命令,该无复制拷贝命令包括拷贝的源逻辑地址LAsrc、目标逻辑地址LAdest、和需要拷贝的数据块数量;根据无复制拷贝命令对地址映射表和反向地址映射表进行修改,以将目标逻辑地址LAdest指向源逻辑地址LAsrc映射到的物理地址,完成对数据的无复制拷贝。本发明专利技术能大大减少固态硬盘中不必要的写操作,降低拷贝时间,延长固态硬盘的使用寿命,提高数据可靠性。

Method, system and solid state disk for implementing data copy in solid state hard disk FTL

The invention discloses a method, system and solid state hard disk for realizing data copy in FTL of solid state hard disk. The method includes maintaining a logical address to physical address LA the PA address mapping table; to become copy target physical address PAdest maintains an array or list, from the physical address mapping PAdest to multiple logical address LAi to form a reverse address mapping table, the maintenance of the reverse address mapping table; receiving the software is sent to the SSD without copy command, the copy command includes a source logical address LAsrc, LAdest, and the logical address need to copy the data blocks according to the number of copies; no copy of the command address mapping table and reverse address mapping table modified to target the logical address into a physical address LAdest the logical address mapped to the LAsrc source, no copy of the complete data. The invention can greatly reduce unnecessary write operation in solid state hard disk, reduce copy time, prolong the service life of solid state hard disk, and improve data reliability.

【技术实现步骤摘要】
在固态硬盘的FTL实现数据拷贝的方法、系统及固态硬盘
本专利技术涉及固态硬盘
,尤其涉及一种在固态硬盘的FTL实现数据拷贝的方法、系统及固态硬盘。
技术介绍
固态硬盘(SolidStateDrives,SSD)的FTL(Flashtranslationlayer,闪存转换层)是固态硬盘的设计核心,目前的固态硬盘中的FTL不提供支持内部数据复制命令的实现,更不提供零数据复制的支持,它只直接支持READ、WRITE、和TRIM等基本的命令,相应地,它只实现了地址映射、垃圾回收、数据读写和磨损平衡等基本的功能。现有的固态硬盘对现有的应用和系统程序大量使用的数据复制需求无法满足,需要主机上的CPU和内存参与数据的物理复制,包括实际从固态硬盘的读出和到固态硬盘的写入。但是这种做法存在着两个不足:(一)物理的数据复制导致复制耗时过长,浪费了固态硬盘的读写带宽和CPU的时间;(二)为了保证数据的持久性和一致性,在写操作之后往往要想固态硬盘发出FLUSH命令,但是FLUSH命令很耗时,会降低固态硬盘的性能,而且对固态硬盘的写操作会导致固态硬盘的寿命缩短。
技术实现思路
本专利技术所要解决的技术问题本文档来自技高网...
在固态硬盘的FTL实现数据拷贝的方法、系统及固态硬盘

【技术保护点】
一种在固态硬盘的FTL实现数据拷贝的方法,其特征在于,该方法包括:FTL维护一张逻辑地址LA到物理地址PA的地址映射表;对成为拷贝目标的物理地址PAdest维护一个数组或链表,以记录映射到物理地址PAdest的一个或多个逻辑地址LAi,其中i=1、2、3……N,N≥1,这些从物理地址PAdest到多个逻辑地址LAi的映射组成一个反向地址映射表,维护该反向地址映射表,N称为映射计数;接收软件发送给固态硬盘的无复制拷贝命令,所述无复制拷贝命令包括拷贝的源逻辑地址LAsrc、目标逻辑地址LAdest、和需要拷贝的数据块数量M;根据所述无复制拷贝命令对地址映射表和反向地址映射表进行修改,以将目标逻辑地...

【技术特征摘要】
1.一种在固态硬盘的FTL实现数据拷贝的方法,其特征在于,该方法包括:FTL维护一张逻辑地址LA到物理地址PA的地址映射表;对成为拷贝目标的物理地址PAdest维护一个数组或链表,以记录映射到物理地址PAdest的一个或多个逻辑地址LAi,其中i=1、2、3……N,N≥1,这些从物理地址PAdest到多个逻辑地址LAi的映射组成一个反向地址映射表,维护该反向地址映射表,N称为映射计数;接收软件发送给固态硬盘的无复制拷贝命令,所述无复制拷贝命令包括拷贝的源逻辑地址LAsrc、目标逻辑地址LAdest、和需要拷贝的数据块数量M;根据所述无复制拷贝命令对地址映射表和反向地址映射表进行修改,以将目标逻辑地址LAdest指向源逻辑地址LAsrc映射到的物理地址,完成对数据的无复制拷贝。2.根据权利要求1所述的一种在固态硬盘的FTL实现数据拷贝的方法,其特征在于,所述根据所述无复制拷贝命令对地址映射表和反向地址映射表进行修改,完成对数据的无复制拷贝包括:FTL查找所述地址映射表判断目标逻辑地址LAdest是否已映射到一个物理地址PAdest上,若否,在所述地址映射表上查出源逻辑地址LAsrc对应的的物理地址PAsrc,并将物理地址PAsrc作为目标逻辑地址LAdest的物理地址,即将(LAdest,PAsrc)写入地址映射表中;若是,将在物理地址PAdest上的闪存页作废掉,在所述地址映射表上查出源逻辑地址LAsrc对应的的物理地址PAsrc,并将物理地址PAsrc作为目标逻辑地址LAdest的物理地址,即将(LAdest,PAsrc)写入所述地址映射表中;根据需要拷贝的数据块数量M,将(LAdest+1,PAsrc+1)、(LAdest+2,PAsrc+2)、……、(LAdest+M-1,PAsrc+M-1)写入所述地址映射表中,完成对数据的无复制拷贝。3.根据权利要求1所述的一种在固态硬盘的FTL实现数据拷贝的方法,其特征在于,接收软件发送给固态硬盘的无复制拷贝命令具体为:接收软件通过一个操作系统调用发送给固态硬盘的无复制拷贝命令。4.根据权利要求1所述的一种在固态硬盘的FTL实现数据拷贝的方法,其特征在于,在所述这些从物理地址PAdest到多个逻辑地址LAi的映射组成一个反向地址映射表,维护该反向地址映射表,N称为映射计数之后还包括:FTL在进行垃圾收集、静态磨损平衡时,若涉及的逻辑地址或物理地址在所述反向地址映射表中,则对地址映射表和反向地址映射表进行相应的更新。5.一种在固态硬盘的FTL实现数据拷贝的系统,其特征在于,该系统包括:映射表维护模块,维护一张逻辑地址LA到物理地址PA的地址映射表;对成为拷贝目标的物理地址PAdest维护一个数组或链表,以记录映射到物理地址PAdest的一个或多个逻辑地址LAi,其中i=1、2、3……N,N≥1,这些从物理地址PAdest到多个逻辑地址LAi的映射组成一个反向地址映射表,维护该反向地址映射表,N称为映射计数;命令接收模块,用于接收软件发送给固态硬盘的无复制拷贝命令,所述无复制拷贝命令包括拷贝的源逻辑地址LAsrc、目标逻辑地址LAdest、和需要拷贝的数据块数量M;修改模块,用于根据所述无复制拷贝命令对地址映射表和反向地址映射表进行修改,以将目标逻辑地址LAdest指向源逻辑地址LAsrc映射到的物...

【专利技术属性】
技术研发人员:江松杨庆
申请(专利权)人:深圳大普微电子科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1