固态存储设备、主机的工作方法及固态存储设备、主机的制作方法

文档序号:9288382阅读:601来源:国知局
固态存储设备、主机的工作方法及固态存储设备、主机的制作方法
【技术领域】
[0001]本发明涉及电子技术领域,尤其涉及固态存储设备、主机的工作方法及固态存储设备、主机。
【背景技术】
[0002]随着计算机技术的日新月异,固态存储飞速发展,无论对性能带宽还是容量稳定性都要求越来越高。对于传统的固态存储设备,其接口(例如PATA,SATA,eMMC)带宽一般在几百兆以下,容量一般在ITB以内,其传统的设备架构都是设备的控制器内接或外接一个或者几个设备Cache (快速缓冲贮存区),控制很多存储介质的阵列,其中设备内的Cache容量大小,一般至少是存储介质容量的千分之一,(当然也有一些产品,不使用Cache,把算法的表存在存储介质中,这样会损失一部分设备性能作为代价)。
[0003]近几年,随着技术的不断进步,特别是类似PCI Express高速设备接口协议的出现,以及半导体工艺的不断提高存储介质的容量也在不断的提升,因此存储设备中Cache的瓶颈现状越来越明显,根据常规存储设备管理算法,一般都至少需要设备容量的千分之一 Cache作为缓存固件的一些信息,当设备的容量动辄几个TB甚至更多时,几个GB的Cache放在设备内已经明显不现实。为了追求设备大容量,有些厂商就尝试把Cache中的大部分管理信息放在存储介质中,这样做的代价就是会牺牲很大设备的性能,同时浪费一部分设备存储空间。

【发明内容】

[0004]本发明提供的固态存储设备、主机的工作方法及固态存储设备、主机,解决现有固态存储设备内Cache不够用,或将Cache中的数据放在存储介质中会牺牲固态存储设备的性能,同时浪费一部分设备存储空间的问题。
[0005]为解决上述技术问题,本发明采用以下技术方案:
[0006]—种固态存储设备的工作方法,包括:获取主机分配的内存区域信息;将获取到的所述内存区域信息保存,并建立所述主机的逻辑区块地址到所述固态存储设备的存储阵列的物理区块地址的映射关系;根据所述内存区域信息将所述映射关系发送至所述主机分配的内存区域。
[0007]在一些实施例中,将获取到的所述内存区域信息保存具体为:将获取到的所述内存区域信息保存在预设的主机内存表分区内。
[0008]在一些实施例中,所述的固态存储设备的工作方法还包括:接收所述主机发送的写命令;对所述写命令进行解析;根据所述写命令的解析结果获取所述主机需要写入的数据;根据预设算法将所述数据写入所述预设算法指定的存储阵列的物理区块地址,并将新写入的所述数据对应的逻辑区块地址到物理区块地址的映射关系保存。
[0009]在一些实施例中,将新写入的所述数据对应的逻辑区块地址到物理区块地址的映射关系保存具体为:将新写入的所述数据对应的逻辑区块地址到物理区块地址的映射关系写入预设的物理区块地址淘汰表分区。
[0010]在一些实施例中,所述的固态存储设备的工作方法还包括:判断是否满足写回主机内存的要求;如果满足,则查询对应的主机的内存物理地址入口信息;根据所述入口信息和保存的所述内存区域信息查询出对应的内存物理地址,所述内存区域信息包括内存物理地址;向所述主机发送所述内存物理地址的写命令;将所述写命令相关的逻辑区块地址到物理区块地址的映射关系写回所述主机的内存。
[0011]在一些实施例中,所述的固态存储设备的工作方法还包括:接收所述主机发送的读命令;对所述读命令进行解析,并查询对应的主机的内存物理地址入口信息;根据所述入口信息和保存的所述内存区域信息查询出对应的内存物理地址,所述内存区域信息包括内存物理地址;向所述主机发送所述内存物理地址的读命令;接收所述主机反馈的内存中保存的数据;将所述主机反馈的数据保存。
[0012]在一些实施例中,所述的固态存储设备的工作方法还包括:获取所述读命令对应的存储阵列的物理区块地址;发起对所述存储阵列的物理区块地址的读命令;获取根据所述读命令反馈的数据,并根据所述内存物理地址将所述数据写入内存。
[0013]在一些实施例中,所述的固态存储设备的工作方法还包括:根据所述内存区域信息将部分或全部缓存数据移至所述主机分配的内存区域中进行缓存。
[0014]—种主机的工作方法包括:给固态存储设备分配内存区域;将分配到的内存区域信息发送给所述固态存储设备;接收所述固态存储设备反馈的所述主机的逻辑区块地址到所述固态存储设备的存储阵列的物理区块地址的映射关系;将所述映射关系保存至给所述固态存储设备分配的内存区域。
[0015]在一些实施例中,所述的主机的工作方法还包括:向所述固态存储设备发送写命令;根据所述固态存储设备的响应将需要写入的数据发送给所述固态存储设备。
[0016]在一些实施例中,所述的主机的工作方法,还包括:接收所述固态存储设备发送的对所述内存区域信息中内存物理地址的写命令;根据所述写命令,接收所述固态存储设备发送的所述写命令相关的逻辑区块地址到物理区块地址的映射关系;将所述所述写命令相关的逻辑区块地址到物理区块地址的映射关系写入所述主机给所述固态存储设备分配的内存区域。
[0017]在一些实施例中,所述的主机的工作方法还包括:向所述固态存储设备发送读命令;接收所述固态存储设备发送的对所述内存区域信息中内存物理地址的读命令;向所述固态存储设备反馈内存中保存的数据。
[0018]在一些实施例中,所述的主机的工作方法还包括:接收所述固态存储设备根据所述读命令反馈的数据,并根据所述内存物理地址将所述数据写入内存。
[0019]在一些实施例中,所述的主机的工作方法还包括:获取所述固态存储设备中部分或全部缓存数据,在给所述固态存储设备分配的内存区域中进行缓存。
[0020]—种固态存储设备,包括:第一设备获取模块,用于获取主机分配的内存区域信息;第一设备保存模块,用于将第一获取模块获取到的所述内存区域信息保存;关系建立模块,用于建立所述主机的逻辑区块地址到所述固态存储设备的存储阵列的物理区块地址的映射关系;设备发送模块,用于根据所述内存区域信息将所述映射关系发送至所述主机分配的内存区域。
[0021]—种主机,包括:内存分配模块,用于给固态存储设备分配内存区域;主机发送模块,用于将分配到的内存区域信息发送给所述固态存储设备;主机接收模块,用于接收所述固态存储设备反馈的所述主机的逻辑区块地址到所述固态存储设备的存储阵列的物理区块地址的映射关系;第一主机保存模块,用于将所述映射关系保存至给所述固态存储设备分配的内存区域。
[0022]本发明提出将固态存储设备缓存中部分或全部数据移至主机的缓存即常称的主机内存中,由于现在的高速设备接口类似PCI Express其每个Lane的带宽为1GB,一般设备例如NGFF协议都是4个Lane,其接口带宽可以达到4GB远远高于设备内CPU访问设备缓存的带宽,因此放在主机内存丝毫不会影响存储系统的1性能,同时,对于现在的常用主机,其内存配置一般都在8GB,16GB甚至更多,完全可以分配一小部分内存区域给存储设备用。因此,本发明能实现设备的大存储空间,又能不影响设备的1性能,同时也不浪费存储介质的存储空间。
【附图说明】
[0023]图1为本发明一实施例提供的固态存储设备的工作方法的流程图;
[0024]图2为本发明一实施例提供的主机的工作方法的流程图;
[0025]图3为本发明一实施例提供的固态存储设备的示意图;
[0026]图4为本发明一实施例提供的主机的示意图。
【具体实施方式】
[0027]本发明提供一种构思,对于现有存储系统,在固态存储设备的Cache中缓存数据的方式提出改进,即将固态存储设备缓存中部分或全部数据移至主机内存中,能实现设备的大存储空间,又能不影响设备的1性能,同时也不浪费存储介质的存储空间。移至主机内存中进行缓存的数据包括但不局限于:主机的LBA(Logical Block Address,逻辑区块地址)到固态存储设备的存储阵列的PBA(物理区块地址)的映射关系(如映射表)、垃圾回收数据等等。固态存储设备包括非易失性固态存储设备。
[0028]下面通过【具体实施方式】结合附图对本发明作进一步详细说明。
[0
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1