数据传输方法、数据传输装置和存储介质与流程

文档序号:34026203发布日期:2023-05-05 09:12阅读:29来源:国知局
数据传输方法、数据传输装置和存储介质与流程

本申请涉及数据传输,尤指一种数据传输方法、数据传输装置和存储介质。


背景技术:

1、固态硬盘(solid state drive或solid state disk,简称ssd)是一种以集成电路制作的电脑存储设备,其中可以用非易失性存储器(主要以闪存块中的nand flash)作为永久性存储设备。

2、在使用的过程中,固态硬盘中的闪存块所存储的数据会不断地更新。此外,固态硬盘在不断地更新的过程中,还会产生闪存垃圾,因此需要对闪存块进行闪存垃圾回收。闪存垃圾回收可以大致理解为普通机械硬盘的碎片整理功能。垃圾回收是将闪存块内部有效的数据整理到一起,删除无效的数据块(即垃圾)。这样可以较好的保持固态硬盘的性能以及释放闪存空间,存放更多有效的数据。

3、目前,固态硬盘在进行数据更新或者闪存垃圾回收时,均需要执行以下步骤:将固态硬盘的闪存块中存储的数据从固态硬盘中读取到主机端内存中;在主机端内存中保留该数据或将该数据与更新的数据合并;将主机端内存中的数据写入到固态硬盘的另一位置。在这一过程中,闪存块中存储的数据在闪存块和主机端内存之间来回传输。由此可见,在固态硬盘进行数据更新或者垃圾回收时占用了大量前端总线带宽,并且因此花费了很长的时间。


技术实现思路

1、为了解决上述技术问题,本申请提供了一种数据传输方法、一种数据传输装置以及一种存储介质,其能够避免了在固态硬盘进行数据更新或者垃圾回收时占用前端总线带宽。

2、为了达到本申请目的,本发明实施例提供了一种数据传输方法,应用于固态硬盘,固态硬盘的固件运行于与固态硬盘连接的主机端,该固态硬盘包括缓存和闪存块;该数据传输方法包括:

3、固态硬盘的处理模块响应于固件发送的预定指令,从源闪存块读取相应的数据写入缓存,从缓存读取相应的数据写入目的闪存块。

4、在一个可选的实施例中,预定指令包括用于更新数据的第一指令、第二指令和第三指令;源闪存块和目的闪存块均为第一闪存块;

5、固态硬盘的处理模块响应于固件发送的预定指令,从源闪存块读取相应的数据写入缓存,从缓存读取相应的数据写入目的闪存块,包括:

6、固态硬盘的处理模块响应于接收到由固件发送的第一指令,从第一闪存块读取第一数据写入缓存;响应于接收到由固件发送的第二指令,将用于更新的数据写入缓存中第一数据所在位置,以得到更新后的第一数据;响应于接收到由固件发送的第三指令,将缓存中更新后的第一数据写入第一闪存块。

7、在一个可选的实施例中,第一指令包括用于在固态硬盘的全部闪存块中寻址第一数据的第一物理存储地址以及第一数据在缓存中的第二物理存储地址。

8、在一个可选的实施例中,第二指令包括在缓存中存储用于更新的数据的物理存储地址,以采用用于更新的数据将第一数据更新为更新后的第一数据。

9、在一个可选的实施例中,第三指令包括:更新后的第一数据在缓存中的物理存储地址以及更新后的第一数据在固态硬盘的全部闪存块中的目标物理存储地址,以用于将更新后的第一数据从缓存存储到第一闪存块中。

10、在一个可选的实施例中,预定指令是用于进行闪存垃圾回收的第四指令;源闪存块和目的闪存块为相同的或不同的闪存块。

11、在一个可选的实施例中,第四指令包括用于在闪存块中寻址第二数据的第三物理存储地址、在缓存中存储第二数据的第四物理存储地址以及在闪存块执行闪存垃圾回收后在闪存块中存储第二数据的第五物理存储地址;其中,

12、从源闪存块读取相应的数据写入缓存,包括:根据第三物理存储地址和第四物理存储地址,将第二数据从固态硬盘的闪存块存储到缓存中;

13、从缓存读取相应的数据写入目的闪存块,包括:在第一物理存储空间所在的闪存块已执行闪存垃圾回收之后,根据第四物理存储地址和第五物理存储地址,将第二数据从缓存存储到目的闪存块中。

14、为了达到本申请目的,本发明实施例提供了一种数据传输方法,应用于运行固件的主机端,该固件是与主机端连接的固态硬盘的固件,该数据传输方法包括:

15、在固态硬盘需要更新数据或进行闪存垃圾回收时,发送预定指令给固态硬盘,以使固态硬盘中的处理模块进行如上述任一实施例所描述的数据传输方法。

16、为了达到本申请目的,本发明实施例提供了一种数据传输装置,包括:处理器和存储器;

17、存储器用于保存用于进行数据传输的程序;

18、处理器用于读取执行用于进行数据传输的程序,进行如上述任一实施例所描述的数据传输方法。

19、为了达到本申请目的,本发明实施例提供了一种存储介质,存储有计算机可执行指令;该计算机可执行指令用于在被读取执行时,进行如上述任一实施例所描述的数据传输方法。

20、在上述实施例中,由于是从固态硬盘的源闪存块读取相应的数据写入固态硬盘的缓存,以及从固态硬盘的缓存读取相应的数据写入固态硬盘的目的闪存块,由此可见,在这一过程中并不涉及到将固态硬盘的闪存块中存储的数据传输到主机端内存的操作,也不涉及到将来源于闪存块的数据在传输到主机端的内存之后又从主机端的内存传输到固态硬盘的操作,因此避免了在固态硬盘进行数据更新或者垃圾回收时占用前端总线带宽,同时减少了在固态硬盘进行数据更新或者垃圾回收的过程中花费的时间。

21、本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。



技术特征:

1.一种数据传输方法,应用于固态硬盘,所述固态硬盘的固件运行于与所述固态硬盘连接的主机端,其特征在于,所述固态硬盘包括缓存和闪存块;所述数据传输方法包括:

2.根据权利要求1所述的数据传输方法,其中,所述预定指令包括用于更新数据的第一指令、第二指令和第三指令;所述源闪存块和所述目的闪存块均为第一闪存块;

3.根据权利要求2所述的数据传输方法,其中,所述第一指令包括用于在所述固态硬盘的全部闪存块中寻址所述第一数据的第一物理存储地址以及所述第一数据在所述缓存中的第二物理存储地址。

4.根据权利要求3所述的数据传输方法,其中,所述第二指令包括在所述缓存中存储所述用于更新的数据的物理存储地址,以采用所述用于更新的数据将所述第一数据更新为所述更新后的第一数据。

5.根据权利要求4所述的数据传输方法,其中,所述第三指令包括:所述更新后的第一数据在所述缓存中的物理存储地址以及所述更新后的第一数据在所述固态硬盘的全部闪存块中的目标物理存储地址,以用于将所述更新后的第一数据从所述缓存存储到所述第一闪存块中。

6.根据权利要求1所述的数据传输方法,其中,所述预定指令是用于进行闪存垃圾回收的第四指令;所述源闪存块和所述目的闪存块为相同的或不同的闪存块。

7.根据权利要求6所述的数据传输方法,其中,所述第四指令包括用于在所述闪存块中寻址第二数据的第三物理存储地址、在所述缓存中存储所述第二数据的第四物理存储地址以及在所述闪存块执行闪存垃圾回收后在所述闪存块中存储所述第二数据的第五物理存储地址;其中,

8.一种数据传输方法,应用于运行固件的主机端,所述固件是与所述主机端连接的固态硬盘的固件,其特征在于,所述数据传输方法包括:

9.一种数据传输装置,包括:处理器和存储器;其特征在于:

10.一种存储介质,存储有计算机可执行指令;所述计算机可执行指令用于在被读取执行时,进行如权利要求1-7中任一项所述的数据传输方法或者如权利要求8所述的数据传输方法。


技术总结
本发明实施例公开了数据传输方法、数据传输装置和存储介质。其中,固态硬盘的固件运行于与该固态硬盘连接的主机端,并且该固态硬盘包括缓存和闪存块。该数据传输方法包括:固态硬盘的处理模块响应于固件发送的预定指令,从源闪存块读取相应的数据写入缓存,从缓存读取相应的数据写入目的闪存块。由于是从固态硬盘的源闪存块读取相应的数据写入固态硬盘的缓存,以及从固态硬盘的缓存读取相应的数据写入固态硬盘的目的闪存块,因此不会在固态硬盘进行数据更新或者垃圾回收时在固态硬盘与主机端之间通过前端总线传输最初存储于固态硬盘的闪存块中的数据,避免了占用前端总线带宽。

技术研发人员:吴俣
受保护的技术使用者:合肥大唐存储科技有限公司
技术研发日:
技术公布日:2024/1/12
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1