System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 用于控制部件的方法及相关产品技术_技高网

用于控制部件的方法及相关产品技术

技术编号:40072948 阅读:8 留言:0更新日期:2024-01-17 00:27
本申请涉及用于控制部件的方法及相关产品。其中所述方法包括:响应于收到数据搬移命令,执行并检测所述数据搬移命令是否包含目标标识,其中所述目标标识用于表示待搬移数据包括无效数据;响应于所述数据搬移命令中包含有所述目标标识,获取所述数据搬移命令所指示的待搬移数据;以及将所述待搬移数据传输至与传输电路,并指示所述传输电路将所述无效数据丢弃或传输所述无效数据时还传输无效信号。通过本申请的方案,可以基于数据搬移命令中的目标标识来对无效数据和有效数据进行有效区分处理,以便能够针对无效数据执行相应的数据传输操作,从而实现对无效数据的有效管理。

【技术实现步骤摘要】

本申请一般地涉及存储。更具体地,本申请涉及用于控制部件的方法、以及执行前述方法的控制部件和存储设备。


技术介绍

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

2、上述nvm芯片105包括nand闪存、相变存储器、feram(ferroelectric ram,铁电存储器)、mram(magnetic random access memory,磁阻存储器)、rram(resistive randomaccess memory,阻变存储器)等常见的存储介质。

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

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

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

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

7、存储命令处理单元1043根据存储介质管理单元1045提供的物理地址,操作介质接口控制器1044向nvm芯片105发出存储介质访问命令。

8、为了清楚的目的,将主机发送给存储设备102的命令称为io命令,将主机命令处理单元1042发送给存储命令处理单元1043的命令称为存储命令,将存储命令处理单元1043发送给介质接口控制器1044的命令称为介质接口命令,而将介质接口控制器1044发送给nvm芯片105的命令称为存储介质访问命令。存储介质访问命令遵循nvm芯片的接口协议。

9、图1c展示了现有技术中控制部件用于对nvme命令处理的电路结构。如图1c所示,控制部件中主机命令处理单元1042包括共享存储器和dma单元;存储命令处理单元1043包括sgl/prp缓存单元、sgl/prp单元、读取发起电路。主机通过主机接口向存储设备传输遵循nvme协议的nvme命令,主机接口将nvme命令传输到共享存储器进行存储。由于nvme协议定义通过分散聚合表(scatter gather list,简称sgl)或内存区域页((physical regionpage,简称prp)字段来指示访问信息,存储设备中存储命令处理单元1043在接收到该nvme命令之后,对nvme命令进行解析以获取sgl/prp,将nvme命令提供给sgl/prp单元。

10、以sgl单元的处理过程为例(prp单元的处理过程同理,故而不再叙述prp单元的处理过程),若读命令携带了sgl,则将sgl缓存在缓存单元,若读命令携带了sgl指针,则通过主机接口从主机中获取sgl并且缓存到缓存单元中;接着,根据sgl中一个或多个sgl描述符所描述的信息生成一个或多个数据搬移命令组(dma命令组),将dma命令组存储在共享存储器中。其中,一个dma命令组包括一个或多个dma命令,例如,每个dma命令组中所有dma命令加起来所搬移的数据大小为存储器中一个传输单元(date transfer uint)dtu的大小,如4kb。接着,dma命令组中的所有dma命令需要经dma单元进行处理。


技术实现思路

1、通常在存储器(例如,图1a所示的dram)中会为nvme命令所对应的所有sgl描述符提供连续逻辑地址空间,其中,该连续逻辑地址空间大小代表要搬移的数据大小。nvme协议定义了逻辑地址空间(简称lba空间)与主机存储空间。通过sgl描述连续的lba空间与离散的主机存储空间之间的映射。在实际应用中,lba空间虽然是连续的,但里面可以有空洞(称为bitbuckets),其中,空洞是指没有主机存储空间与其对应的部分逻辑地址空间。存储设备的控制部件在lba空间与主机存本文档来自技高网...

【技术保护点】

1.一种用于控制部件的方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,其中所述控制部件包括DMA单元,所述DMA单元包括第一数据搬移电路、第二数据搬移电路和缓存电路,所述方法包括:

3.根据权利要求2所述的方法,其特征在于,所述DMA单元接收数据搬移命令对,所述数据搬移命令对包括第一类数据搬移命令和第二类数据搬移命令;

4.根据权利要求3所述的方法,其特征在于,

5.根据权利要求1-4之一所述的方法,其特征在于,所述方法还包括:

6.根据权利要求5所述的方法,其特征在于,其中,

7.根据权利要求6所述的方法,其特征在于,

8.根据权利要求5-7之一所述的方法,其特征在于,其中,响应于所述NVMe命令为写命令,所述第一类数据搬移命令的源地址是所述SGL描述符所描述的主机地址或者空地址,且其的目的地址是所述缓存电路地址,所述第二类数据搬移命令的源地址是所述缓存电路地址,且其目的地址是存储器地址。

9.根据权利要求5-7之一所述的方法,其特征在于,其中,响应于所述NVMe命令为读命令,所述第一类数据搬移命令的源地址是存储器地址,且其的目的地址是所述缓存电路地址,所述第二类数据搬移命令的源地址是所述缓存电路地址,且其目的地址是所述SGL描述符所描述的主机地址或者空地址。

10.一种控制部件,其特征在于,包括:DMA单元;其中,

...

【技术特征摘要】

1.一种用于控制部件的方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,其中所述控制部件包括dma单元,所述dma单元包括第一数据搬移电路、第二数据搬移电路和缓存电路,所述方法包括:

3.根据权利要求2所述的方法,其特征在于,所述dma单元接收数据搬移命令对,所述数据搬移命令对包括第一类数据搬移命令和第二类数据搬移命令;

4.根据权利要求3所述的方法,其特征在于,

5.根据权利要求1-4之一所述的方法,其特征在于,所述方法还包括:

6.根据权利要求5所述的方法,其特征在于,其中,

7.根据权利要求6所述的方法,其特征在于,

<...

【专利技术属性】
技术研发人员:王玉巧刘传杰黄好城
申请(专利权)人:成都忆芯科技有限公司
类型:发明
国别省市:

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

1