用于高性能和低成本的闪存转换层的系统和方法_5

文档序号:9620835阅读:来源:国知局
备的所述FTL表的所述副本。2. 根据权利要求1所述的方法,还包括: 在所述闪存设备中从所述主机设备接收针对所述FTL表的大小的查询; 从所述闪存设备向所述主机设备返回所述FTL表的所述大小; 在所述主机设备处从所述闪存设备接收所述FTL表的所述大小;以及 通过所述主机设备确定所述主机设备的所述易失性存储器是否能够存储全部的所述 FTL表。3. 根据权利要求2所述的方法,还包括: 通过所述主机设备对所述主机设备的所述易失性存储器进行细分,其中,细分部分的 大小是基于所述FTL表的大小的; 通过所述闪存设备接收对于所述主机设备的所述易失性存储器中存储所述FTL表的 所述副本的所述细分部分的直接存储存取读取特权;以及 通过所述闪存设备接收对于所述主机设备的所述易失性存储器中存储所述FTL表的 所述副本的所述细分部分的直接存储存取写入特权, 其中,存储所述FTL表的副本包括:通过所述闪存设备将所述FTL表的所述副本存储在 所述主机设备的所述易失性存储器的所述细分部分中。4. 根据权利要求1所述的方法,其中,存取所述FTL表的所述副本包括:通过所述闪存 设备对通信地连接所述闪存设备和所述主机设备的所述易失性存储器的通信总线进行总 线主控。5. 根据权利要求1所述的方法,其中,存取所述FTL表的所述副本包括: 在所述闪存设备中从所述主机设备接收针对逻辑地址的读取操作请求; 通过所述闪存设备发起所述读取操作; 通过所述闪存设备读取所述FTL表的所述副本的至少一部分; 通过所述闪存设备确定与所述逻辑地址相对应的物理地址; 通过所述闪存设备取回位于所述闪存设备的存储器的所述物理地址处的数据;以及 通过所述闪存设备向所述主机设备返回所述数据。6. 根据权利要求1所述的方法,其中,存取所述FTL表的所述副本包括: 通过所述闪存设备从所述主机设备接收针对逻辑地址的写入操作请求; 通过所述闪存设备发起所述写入操作; 通过所述闪存设备向所述闪存设备的存储器的物理地址写入数据; 通过所述闪存设备写入所述FTL表的所述副本以更新所述FTL表的所述副本,从而与 当写入所述数据时对所述闪存设备的所述存储器做出的改变相对应;以及 通过所述闪存设备向所述主机设备发送所述写入操作的完成的通知。7. 根据权利要求6所述的方法,还包括: 通过所述闪存设备读取所述FTL表的所述副本的至少一部分;以及 通过所述闪存设备确定与所述逻辑地址相对应的所述物理地址。8. 根据权利要求6所述的方法,还包括: 通过所述闪存设备读取所述闪存设备的SRAM;以及 通过所述闪存设备确定用于指示所述闪存设备的所述存储器中的空闲存储空间的位 置的所述物理地址。9. 根据权利要求1所述的方法,还包括: 通过所述闪存设备向所述主机设备发送用于指示将所述FTL表的所述副本存储在所 述主机设备的所述易失性存储器中的完成的通知。10. 根据权利要求1所述的方法,还包括: 通过所述闪存设备,基于从包括以下各项的组中选择的参数,利用所述FTL的所述副 本来更新所述闪存设备的所述FTL表:调度、可用资源、以及写入操作的完成。11. 根据权利要求1所述的方法,还包括: 通过所述主机设备确定所述闪存设备是否支持将所述FTL表的副本主机高速缓存在 所述主机设备的所述易失性存储器中。12. 根据权利要求1所述的方法,还包括: 在所述主机设备中从所述闪存设备接收存储所述FTL表的所述副本的完成的通知。13. -种其上存储有处理器可执行软件指令的非暂时性处理器可读介质,所述处理器 可执行软件指令被配置为使得系统提高所述系统的闪存设备的闪存转换层(FTL)的性能, 所述操作包括: 通过所述闪存设备将所述闪存设备的FTL表的副本存储在主机设备的易失性存储器 中; 通过所述闪存设备接收对于所述主机设备的所述易失性存储器中存储的所述FTL表 的所述副本的存取权限;以及 作为读取操作和写入操作中的至少一个操作的一部分,通过所述闪存设备存取所述主 机设备的所述易失性存储器中存储的所述闪存设备的所述FTL表的所述副本。14. 根据权利要求13所述的非暂时性处理器可读介质,其中,所存储的处理器可执行 软件指令被配置为使得所述系统执行还包括以下各项的操作: 在所述闪存设备中从所述主机设备接收针对所述FTL表的大小的查询; 从所述闪存设备向所述主机设备返回所述FTL表的所述大小; 在所述主机设备处从所述闪存设备接收所述FTL表的所述大小;以及 通过所述主机设备确定所述主机设备的所述易失性存储器是否能够存储全部的所述FTL表。15. 根据权利要求14所述的非暂时性处理器可读介质,其中,所存储的处理器可执行 软件指令被配置为使得所述系统执行还包括以下各项的操作: 通过所述主机设备对所述主机设备的所述易失性存储器进行细分,其中,细分部分的 大小是基于所述FTL表的大小的; 通过所述闪存设备接收对于所述主机设备的所述易失性存储器中存储所述FTL表的 所述副本的所述细分部分的直接存储存取读取特权;以及 通过所述闪存设备接收对于所述主机设备的所述易失性存储器中存储所述FTL表的 所述副本的所述细分部分的直接存储存取写入特权, 其中,存储所述FTL表的副本包括:通过所述闪存设备将所述FTL表的所述副本存储在 所述主机设备的所述易失性存储器的所述细分部分中。16. 根据权利要求13所述的非暂时性处理器可读介质,其中,所存储的处理器可执行 软件指令被配置为使得所述系统执行操作从而存取所述FTL表的所述副本包括:通过所述 闪存设备对通信地连接所述闪存设备和所述主机设备的所述易失性存储器的通信总线进 行总线主控。17. 根据权利要求13所述的非暂时性处理器可读介质,其中,所存储的处理器可执行 软件指令被配置为使得所述系统执行操作从而存取所述FTL表的所述副本包括: 在所述闪存设备中从所述主机设备接收针对逻辑地址的读取操作请求; 通过所述闪存设备发起所述读取操作; 通过所述闪存设备读取所述FTL表的所述副本的至少一部分; 通过所述闪存设备确定与所述逻辑地址相对应的物理地址; 通过所述闪存设备取回位于所述闪存设备的存储器的所述物理地址处的数据;以及 通过所述闪存设备向所述主机设备返回所述数据。18. 根据权利要求13所述的非暂时性处理器可读介质,其中,所存储的处理器可执行 软件指令被配置为使得所述系统执行操作从而存取所述FTL表的所述副本包括: 通过所述闪存设备从所述主机设备接收针对逻辑地址的写入操作请求; 通过所述闪存设备发起所述写入操作; 通过所述闪存设备向所述闪存设备的存储器的物理地址写入数据; 通过所述闪存设备写入所述FTL表的所述副本以更新所述FTL表的所述副本,从而与 当写入所述数据时对所述闪存设备的所述存储器做出的改变相对应;以及 通过所述闪存设备向所述主机设备发送所述写入操作的完成的通知。19. 根据权利要求18所述的非暂时性处理器可读介质,其中,所存储的处理器可执行 软件指令被配置为使得所述系统执行还包括以下各项的操作: 通过所述闪存设备读取所述FTL表的所述副本的至少一部分;以及 通过所述闪存设备确定与所述逻辑地址相对应的所述物理地址。20. 根据权利要求18所述的非暂时性处理器可读介质,其中,所存储的处理器可执行 软件指令被配置为使得所述系统执行还包括以下各项的操作: 通过所述闪存设备读取所述闪存设备的SRAM;以及 通过所述闪存设备确定用于指示所述闪存设备的所述存储器中的空闲存储空间的位 置的所述物理地址。21. 根据权利要求13所述的非暂时性处理器可读介质,其中,所存储的处理器可执行 软件指令被配置为使得所述系统执行还包括以下各项的操作: 通过所述闪存设备向所述主机设备发送用于指示将所述FTL表的所述副本存储在所 述主机设备的所述易失性存储器中的完成的通知。22. 根据权利要求13所述的非暂时性处理器可读介质,其中,所存储的处理器可执行 软件指令被配置为使得所述系统执行还包括以下各项的操作: 通过所述闪存设备,基于从包括以下各项的组中选择的参数,利用所述FTL的所述副 本来更新所述闪存设备的所述FTL表:调度、可用资源、以及所述写入操作的完成。23. 根据权利要求13所述的非暂时性处理器可读介质,其中,所存储的处理器可执行 软件指令被配置为使得所述系统执行还包括以下各项的操作: 通过所述主机设备确定所述闪存设备是否支持将所述FTL表的副本主机高速缓存在 所述主机设备的所述易失性存储器中。24. 根据权利要求13所述的非暂时性处理器可读介质,其中,所存储的处理器可执行 软件指令被配置为使得所述系统执行还包括以下各项的操作: 在所述主机设备中从所述闪存设备接收存储所述FTL表的所述副本的完成的通知。25. -种系统,包括: 主机设备,包括: 易失性存储器;以及 耦合到所述易失性存储器的第一处理器;以及 耦合到所述主机设备的闪存设备,所述闪存设备包括: 闪存,其被配置为存储闪存转换层(FTL)表以在逻辑地址和物理地址之间进行转换时 使用;以及 耦合到所述闪存的第二处理器,其中,所述第二处理器被配置具有处理器可执行指令, 以执行包括以下各项的操作: 将所述闪存设备的所述FTL表的副本存储在所述主机设备的所述易失性存储器中; 接收对于所述主机设备的所述易失性存储器中存储的所述FTL表的所述副本的存取 权限;以及 作为读取操作和写入操作中的至少一个操作的一部分,存取所述主机设备的所述易失 性存储器中存储的所述闪存设备的所述FTL表的所述副本。26. 根据权利要求25所述的系统,其中: 所述第二处理器被配置具有处理器可执行指令,以执行还包括以下各项的操作: 在所述闪存设备中从所述主机设备接收针对所述FTL表的大小的查询; 从所述闪存设备向所述主机设备返回所述FTL表的所述大小;以及 所述第一处理器被配置具有处理器可执行指令,以执行还包括以下各项的操作: 在所述主机设备处从所述闪存设备接收所述FTL表的所述大小;以及 通过所述主机设备确定所述主机设备的所述易失性存储器是否能够存储全部的所述 FTL表。27. 根据权利要求26所述的系统,其中: 所述第一处理器被配置具有处理器可执行指令,以执行还包括以下各项的操作: 通过所述主机设备对所述主机设备的所述易失性存储器进行细分,其中,细分部分的 大小是基于所述FTL表的大小的; 存储所述FTL表的所述副本包括:通过所述闪存设备将所述FTL表的所述副本存储在 所述主机设备的所述易失性存储器的所述细分部分中;以及 所述第二处理器被配置具有处理器可执行指令,以执行还包括以下各项的操作: 通过所述闪存设备接收对于所述主机设备的所述易失性存储器中存储所述FTL表的 所述副本的所述细分部分的直接存储存取读取特权;以及 通过所述闪存设备接收对于所述主机设备的所述易失性存储器中存储所述FTL表的 所述副本的所述细分部分的直接存储存取写入特权。28. 根据权利要求25所述的系统,还包括: 通信总线,其通信地连接所述闪存设备和所述主机设备的所述易失性存储器, 其中,所述第二处理器被配置具有处理器可执行指令以执行操作从而存取所述FTL表 的所述副本包括:对所述通信总线进行总线主控。29. 根据权利要求25所述的系统,其中,所述第二处理器被配置具有处理器可执行指 令,从而存取所述FTL表的所述副本包括: 在所述闪存设备中从所述主机设备接收针对所述逻辑地址的读取操作请求; 通过所述闪存设备发起所述读取操作; 通过所述闪存设备读取所述FTL表的所述副本的至少一部分; 通过所述闪存设备确定与所述逻辑地址相对应的所述物理地址; 通过所述闪存设备取回位于所述闪存设备的所述闪存的所述物理地址处的数据;以及 通过所述闪存设备向所述主机设备返回所述数据。30. 根据权利要求25所述的系统,其中,所述第二处理器被配置具有处理器可执行指 令,从而存取所述FTL表的所述副本包括: 通过所述闪存设备从所述主机设备接收针对所述逻辑地址的写入操作请求; 通过所述闪存设备发起所述写入操作; 通过所述闪存设备向所述闪存设备的所述闪存的所述物理地址写入数据; 通过所述闪存设备写入所述FTL表的所述副本以更新所述FTL表的所述副本,从而与 当写入所述数据时对所述闪存设备的所述闪存做出的改变相对应;以及 通过所述闪存设备向所述主机设备发送所述写入操作的完成的通知。31. 根据权利要求30所述的系统,其中,所述第二处理器被配置具有处理器可执行指 令,以执行还包括以下各项的操作: 通过所述闪存设备读取所述FTL表的所述副本的至少一部分;以及 通过所述闪存设备确定与所述逻辑地址相对应的所述物理地址。32. 根据权利要求30所述的系统,其中: 所述闪存设备还包括耦合到所述第二处理器的SRAM;以及 所述第二处理器被配置具有处理器可执行指令,以执行还包括以下各项的操作: 通过所述闪存设备读取所述闪存设备的所述SRAM;以及 通过所述闪存设备确定用于指示所述闪存设备的所述存储器中的空闲存储空间的位 置的所述物理地址。33. 根据权利要求25所述的系统,其中,所述第二处理器被配置具有处理器可执行指 令,以执行还包括以下各项的操作: 通过所述闪存设备向所述主机设备发送用于指示将所述FTL表的所述副本存储在所 述主机设备的所
当前第5页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1