System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 提高XOR缓存利用率的介质接口控制器制造技术_技高网

提高XOR缓存利用率的介质接口控制器制造技术

技术编号:43872508 阅读:6 留言:0更新日期:2024-12-31 18:56
本申请提供一种提高XOR缓存利用率的介质接口控制器,应用于介质接口控制器的命令分配方法包括:响应于接收到的介质接口命令,获取介质接口命令指示的操作类型;确定与介质接口命令和操作类型关联的LUN控制器,将介质接口命令分配至LUN控制器,由LUN控制器处理介质接口命令;其中操作类型包括P1操作或者R操作,P1操作指示将存储器中的指定数据搬移到NVM芯片,R操作指示对存储器中的指定数据执行XOR计算、在XOR缓存中保留计算结果。本申请P1操作和R操作相互独立,互不影响,且在完成XOR计算、将XOR缓存中的数据搬移之后,可及时释放XOR缓存,减少对XOR缓存的占用时间,提高XOR缓存的利用效率。

【技术实现步骤摘要】

本申请涉及存储,尤其涉及一种提高xor缓存利用率的介质接口控制器。


技术介绍

1、图1a展示了存储设备的框图。存储设备102同主机相耦合,用于为主机提供存储能力。主机同存储设备102之间可通过多种方式相耦合,耦合方式包括但不限于通过例如sata(serial advanced technology attachment,串行高级技术附件)、scsi(small computersystem interface,小型计算机系统接口)、sas(serial attached scsi,串行连接scsi)、ide(integrated drive electronics,集成驱动器电子)、usb(universal serial bus,通用串行总线)、pcie(peripheral component interconnect express,pcie,高速外围组件互联)、nvme(nvm express,高速非易失存储)、以太网、光纤通道、无线通信网络等多种存储协议连接主机与存储设备102。主机可以是能够通过上述方式同存储设备相通信的信息处理设备,例如,个人计算机、平板电脑、服务器、便携式计算机、网络交换机、路由器、蜂窝电话、个人数字助理等。存储设备102包括接口103、控制部件104、一个或多个nvm芯片105以及dram(dynamic random access memory,动态随机存取存储器)110。

2、nand闪存、相变存储器、feram(ferroelectric ram,铁电存储器)、mram(magneticrandom access memory,磁阻存储器)、rram(resistive random access memory,阻变存储器)、xpoint存储器等是常见的nvm。

3、接口103可适配于通过例如sata、ide、usb、pcie、nvme、sas、以太网、光纤通道等方式与主机交换数据。

4、控制部件104用于控制在接口103、nvm芯片105以及dram 110之间的数据传输,还用于存储管理、主机逻辑地址到闪存物理地址映射、擦除均衡、坏块管理等。控制部件104可通过软件、硬件、固件或其组合的多种方式实现,例如,控制部件104可以是fpga(field-programmable gate array,现场可编程门阵列)、asic(application specificintegrated circuit,应用专用集成电路)或者其组合的形式。控制部件104也可以包括处理器或者控制器,在处理器或控制器中执行软件来操纵控制部件104的硬件来处理io(input/output)命令。控制部件104还可以耦合到dram 110,并可访问dram 110的数据。在dram可存储ftl表和/或缓存的io命令的数据。

5、控制部件104包括闪存接口控制器(或称为介质接口控制器、闪存通道控制器),闪存接口控制器耦合到nvm芯片105,并以遵循nvm芯片105的接口协议的方式向nvm芯片105发出命令,以操作nvm芯片105,并接收从nvm芯片105输出的命令执行结果。已知的nvm芯片接口协议包括“toggle”、“onfi”等。

6、图1b展示了存储设备的控制部件的详细的框图。

7、主机以遵循存储协议的io命令访问存储设备。控制部件根据来自主机的io命令,生成一个或多个介质接口命令并提供给介质接口控制器。介质接口控制器根据介质接口命令生遵循nvm芯片的接口协议的存储介质访问命令(例如,编程命令、读命令、擦除命令)。控制部件还跟踪从一个io命令生成的所有介质接口命令都被执行完成,并向主机指示io命令的处理结果。

8、参看图1b,控制部件包括例如主机接口、主机命令处理单元、存储命令处理单元、介质接口控制器与存储介质管理单元。主机接口获取主机提供的io命令,并生成存储命令提供给存储命令处理单元。存储命令例如访问相同大小的存储空间,例如4kb。将nvm芯片中记录的对应一个存储命令所访问数据的数据单元称为数据帧。物理页记录一个或多个数据帧。例如,物理页的大小17664字节,而数据帧大小为4kb,则一个物理页能存储4个数据帧。

9、存储介质管理单元为每个存储命令维护逻辑地址到物理地址的转换。例如,存储介质管理单元包括ftl表。对于读命令,存储介质管理单元输出存储命令所访问的逻辑地址对应的物理地址,对于写命令,存储介质管理单元为其分配可用的物理地址,并记录其访问的逻辑地址与分配的物理地址的映射关系。存储介质管理单元还维护诸如垃圾回收、磨损均衡等管理nvm芯片所需的功能。

10、存储命令处理单元根据存储介质管理单元提供的物理地址,操作介质接口控制器向nvm芯片发出存储介质访问命令。为了清楚的目的,将主机发送给存储设备的命令称为io命令,将主机命令处理单元发送给存储命令处理单元的命令称为存储命令,将存储命令处理单元发送给介质接口控制器的命令称为介质接口命令,而将介质接口控制器发送给nvm芯片的命令称为存储介质访问命令。存储介质访问命令遵循nvm芯片的接口协议。ssd(solid state drives,固态硬盘)中包括多个nvm芯片。每个nvm芯片包括一个或多个lun(logical unit,逻辑单元),每个逻辑单元包括多个物理块(block)。随着存储容量的增加,nvm芯片/lun/block数量的增加,存储介质出现故障的几率也增加。为了确保向用户交付所存储数据的可靠性,在企业级ssd中使用类似raid(redundant arrays of independentdisks,磁盘阵列)的技术(简称为raid技术)来构造跨nvm芯片/逻辑单元的数据保护单元,从而即使单个nvm芯片/逻辑单元出现故障,仍能确保数据不丢失。这样也能应对ssd工作中出现的偶发性数据错误。

11、页条带是ssd内的、基于raid技术构造的数据保护单元,页条带在大块中构造。大块包括来自多个逻辑单元的物理块,为大块提供物理块的多个逻辑单元被称为逻辑单元组。逻辑单元组中的每个逻辑单元可以为大块提供一个物理块。例如,在图2a所示出的大块的示意图中,在n+1个逻辑单元上构造大块。每个大块包括n+1个分别来自n+1个逻辑单元的物理块。大块存储用户数据与校验数据。根据大块存储的用户数据计算得到大块的校验数据。作为举例,在大块的最后一个物理块中存储校验数据。也可以选择大块的其他物理块来存储校验数据。还可以采用其他构造方式构造大块,如参见图2b所示,为在多平面的逻辑单元中构造大块的实现方式。

12、大块,作为ssd对存储介质资源的分配和回收单元。在分配存储介质资源来承载写入数据时,选择空闲大块。在所选择的大块内部,按顺序写入数据。在回收存储介质资源时,对大块整体回收,并在回收了有效数据后,对大块的所有物理块都进行擦除(erase)。从而,在ssd内,大块内的所有物理块,通常总是具有相同的擦写次数。

13、参见图3a以及图3b所示,大块包括多个页条带,本文档来自技高网...

【技术保护点】

1.一种命令分配方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述操作类型还包括P2操作,所述P2操作指示将所述XOR缓存中的数据搬移到所述NVM芯片。

3.根据权利要求2所述的方法,其特征在于,在所述操作类型为P1操作或者P2操作的情况下,所述介质接口命令包括指示要访问的NVM芯片的物理地址的字段以及指示要被搬移的数据的字段;

4.根据权利要求3所述的方法,其特征在于,在所述操作类型为P1操作的情况下,响应于所访问的物理页和所述存储器中的指定数据,所述LUN控制器生成存储介质访问命令并发送至对应的逻辑单元,以向对应的物理页写入所述指定数据来执行P1操作;

5.根据权利要求3或4所述的方法,其特征在于,在所述操作类型为P2操作的情况下,响应于所访问的物理页和所述XOR缓存中的校验数据,所述LUN控制器生成存储介质访问命令并发送至对应的逻辑单元,以向对应的物理页写入所述校验数据来执行P2操作;

6.根据权利要求3至5任一项所述的方法,其特征在于,在所述操作类型为R操作的情况下,所述确定与所述介质接口命令以及所述操作类型关联的LUN控制器,包括:

7.根据权利要求6所述的方法,其特征在于,在所述介质接口命令包括指示LUN控制器的字段的情况下,将不存在未处理完成的擦除操作的LUN控制器确定为与所述介质接口命令以及所述操作类型关联的LUN控制器,包括:

8.根据权利要求6至7任一项所述的方法,其特征在于,所述介质接口命令包括指示要被操作的数据的源地址字段以及目的地址字段;所述方法还包括:

9.根据权利要求1至8任一项所述的方法,其特征在于,若所述LUN控制器存在未处理完成的擦除操作,所述LUN控制器处理完所述擦除操作之后,再处理所述操作类型为P1操作或P2操作的所述介质接口命令。

10.一种介质接口控制器,其特征在于,包括:命令分配单元和多个LUN控制器;

...

【技术特征摘要】

1.一种命令分配方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述操作类型还包括p2操作,所述p2操作指示将所述xor缓存中的数据搬移到所述nvm芯片。

3.根据权利要求2所述的方法,其特征在于,在所述操作类型为p1操作或者p2操作的情况下,所述介质接口命令包括指示要访问的nvm芯片的物理地址的字段以及指示要被搬移的数据的字段;

4.根据权利要求3所述的方法,其特征在于,在所述操作类型为p1操作的情况下,响应于所访问的物理页和所述存储器中的指定数据,所述lun控制器生成存储介质访问命令并发送至对应的逻辑单元,以向对应的物理页写入所述指定数据来执行p1操作;

5.根据权利要求3或4所述的方法,其特征在于,在所述操作类型为p2操作的情况下,响应于所访问的物理页和所述xor缓存中的校验数据,所述lun控制器生成存储介质访问命令并发送至对应的逻辑单元,以向对应的物理页写入所述校验...

【专利技术属性】
技术研发人员:贾舒孟亮
申请(专利权)人:北京忆芯科技有限公司
类型:发明
国别省市:

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

1