存储装置数据服务质量管理方法及存储装置的制造方法

文档序号:10511830阅读:233来源:国知局
存储装置数据服务质量管理方法及存储装置的制造方法
【专利摘要】一种存储装置数据服务质量管理方法,所述方法包括:设定数据读写事务的服务质量等级;获取对应所述服务质量等级的流量类别等级;将所述流量类别等级映射到虚拟通道上;对虚拟通道进行优先序仲裁;及进行数据读写操作。本发明实施方式中还涉及一种存储装置。
【专利说明】
存储装置数据服务质量管理方法及存储装置
技术领域
[0001] 本发明涉及存储装置数据管理技术,存储装置数据服务质量管理方法及存储装 置。
【背景技术】
[0002] 电子产品中,存储介质的访问性能直接影响了设备的整体性能,而如固态硬盘 (Solid State Drive,SSD)等存储装置作为新兴的存储媒介,其自身的性能也愈发显得重 要。在存储装置使用的过程中,主机中可能存在不同的应用同时访问存储装置的操作需求, 如果同时对存储装置进行访问会导致数据堵塞、链路传输效率低,影响存储装置的工作性 能。

【发明内容】

[0003] 鉴于以上内容,有必要提供一种可进行服务质量控制的存储装置数据服务质量管 理方法和存储装置。
[0004] -种存储装置数据服务质量管理方法,所述方法包括:设定数据读写事务的服务 质量等级;获取对应所述服务质量等级的流量类别等级;将所述流量类别等级映射到虚拟 通道上;对虚拟通道进行优先序仲裁;及进行数据读写操作。
[0005] 优选地,所述优先序仲裁是通过虚拟通道的序号进行优先级仲裁。
[0006] 优选地,所述将所述流量类别等级映射到虚拟通道上的步骤还包括:将多个流量 类别映射到同一虚拟通道上。
[0007] 优选地,所述方法还包括:判断是否有低优先级的事务发生高速缓存命中,如果没 有发生高速缓存命中,则仲裁器进行选择仲裁。
[0008] 优选地,所述对虚拟通道进行优先序仲裁的步骤包括:将映射到同一虚拟通道上 的事务按顺序发出。
[0009] 优选地,所述对虚拟通道进行优先序仲裁的步骤包括:调整高优先级的流量控制, 使事务发起的应用管理注入高优先级事务的流量,以便给低优先级事务留出带宽。
[0010] -种存储装置,所述存储装置包括:服务质量设定模块,用于设定数据读写事务的 服务质量等级;流量类别获取模块,用于获取对应所述服务质量等级的流量类别等级;映 射模块,用于将所述流量类别等级映射到虚拟通道上;及仲裁模块,用于对虚拟通道进行优 先序仲裁。
[0011] 优选地,仲裁模块还用于通过虚拟通道的序号进行优先级仲裁。
[0012] 优选地,流量类别定义模块还用于将多个流量类别映射到同一虚拟通道上。
[0013] 优选地,仲裁模块还用于判断是否有低优先级的事务发生高速缓存命中,如果没 有发生高速缓存命中,则仲裁器进行选择仲裁。
[0014] 与现有技术相比,本实施方式存储装置数据服务质量管理方法和存储装置可根据 分配不同的流量级别的事务到不同的虚拟通道中,并根据虚拟通道的优先级来处理相应的 事务,根据不同的事务等级达到不同的性能要求实现服务质量控制。
【附图说明】
[0015] 图1为本发明一实施方式中一存储装置及所配接的电子装置的模块图。
[0016] 图2为本发明一实施方式中一存储装置数据服务质量管理方法的流程图。
[0017] 图3为本发明一实施方式中一 TC/VC的映射规则列表。
[0018] 图4为本发明一实施方式中一 VC仲裁过程的示意图。
[0019] 图5为本发明一实施方式中存储装置的模块图。
[0020] 主要元件符号说明
如下【具体实施方式】将结合上述附图进一步说明本发明。
【具体实施方式】
[0021] 如图1所示,一存储装置2可与一电子装置1配接。所述电子装置1包括处理器 11、随机存储器13及输入输出接口 15。所述存储装置2包括一控制芯片21及一闪存芯片 23。所述控制芯片21包括一第一输入输出接口 211、一微处理器213及一第二输入输出接 口 215。所述第一输入输出接口 211连接所述输入输出接口 15。所述第二输入输出接口连 接所述闪存芯片23。控制芯片21可对闪存芯片进行管理,并将用户的数据写入到闪存芯片 中或者是将闪存芯片中的数据读出,返回给用户。
[0022] 在本实施方式中,所述电子装置1可为电脑、数码相机、手机、多媒体播放器等系 统。所述存储装置2可为包括NAND闪存的U盘或固态硬盘。
[0023] 所述电子装置1通过所述输入输出接口 15与所述存储装置2连接。用户发出读 数据、写数据或扫描数据的指令给所述处理器11,所述处理器11通过所述输入输出接口 15 将所述指令发送给所述存储装置2。
[0024] 图2是本发明一实施方式中一种存储装置数据服务质量管理方法的流程图,所述 方法包括以下步骤: 步骤201 :设定数据读写事务的服务质量等级。
[0025] 步骤202 :自电子装置获取对应所述服务质量等级的流量类别等级。
[0026] 步骤203 :将所述流量类别等级映射到虚拟通道上。
[0027] 步骤204 :对虚拟通道进行优先序仲裁。
[0028] 步骤205 :进行数据读写操作。
[0029] 服务质量(quality of service,Qos)指存储装置能够衡量延迟时间和带宽的能 力。当特定事务要求每隔一定间隔提供有保证的总线带宽,例如音频数据时Q〇s特别重要。 只有当系统和设备能够识别这类具有流量控制的存储装置时,才能支持Q〇s,否则必须按照 原来的方式来处理。Qos可能涉及性能多个方面包括:访问速率、有效带宽、延迟时间及影 响性能的其他参数。完成多事务存储算法必须支持Q〇s,而Qos的关键特性包括:流量类别 (traffic class,TC)、虚拟信道(virtual channel,VC)、VC 仲裁及流控制。
[0030] TC定义每个事务在请求者和完成者设备间的传输或读写时的优先级,而Qos的使 用以为事务分配TC值为基础。每种TC映射到一个VC,VC通过VC仲裁的方案来管理优先 级。
[0031] 在一实施方式中,在初始化时,存储装置的驱动程序告知它预计完成其事务的Qos 等级(如支持8个等级,根据实际需求和资源限制而定),电子装置根据不同的优先级返回与 请求的Qos相对应的TC值。TC值最终决定一个给定事务在请求存储装置的访问时相对应 的优先级。而且通过虚拟信道仲裁机制来保证差异性的服务。这类仲裁机制可以通过VC 序号来管理事务的优先级。VC在存储装置中相当于不同TC优先级的请求命令的缓存,VC 号相当于缓存了请求命令不同缓存的序号。
[0032] TC值在事务的请求命令包中传送,例如8个值(TC0~TC7 )中的一个,TC值的个数在 初始化时上报,由存储装置自身条件决定。存储装置必须实现TC0,而且在传送标记为TC0 的事务时,系统要优先传输或读写。TC1~TC7是可选的TC值,它们提供了 7种不同的仲裁 标准,用于区分要求带宽变化的数据包流。类似地,也规定了 8个VC序号(VC0~VC7),其中 VC0是必需的,VC1~VC7是可选的。在初始化时上报其所支持的VC个数。其中所支持的TC 个数和VC个数可不相等。
[0033] 在一实施方式中,所述存储装置数据服务质量管理方法还包括:所述存储装置根 据实际性能情况判断某些事务是否进行Qos处理,该步骤可具体包括判断是否有低优先级 的事务请求发生高速缓存命中(cache hit),如"是"则仲裁器根据实际情况选择仲裁,如 "否"则继续执行步骤204。多个事务的请求可以通过Qos的机制来解决优先级的问题,这 种机制可能会导致存储装置某些时段的性能降低。如低优先级事务的命令请求刚好处于高 速缓存命中,而不加判断一经Qos的处理后,会导致高速缓存命中取消。在处理多事务的请 求命令时需配合固态存储算法本身的情况来做判断,以达到性能的最佳。
[0034] 图3为一实施方式中TC/VC的映射规则,在所述规则中,一个TC不能映射到存储 装置里的多个VC上。一个或多个TC可以映射到存储装置里的同一个VC上。
[0035] 在存储装置的Qos机制中,VC仲裁应该保证所有事务的转发进度。这样可以防止 被疏忽的分离事务超时。任何能发起多种事务并支持两个或多个VC的存储装置必须实现 VC仲裁。
[0036] VC仲裁允许发送设备根据事务的TC分配确定事务的优先级。与VC仲裁相关的主 要VC特征包括:所支持和启用的每个VC具有自己的缓冲区和流控制;映射到相同VC的事 务按照严格的顺序发出;分配给不同的事务之间不存在顺序问题。
[0037] 图4为一实施方式中一种VC仲裁过程的示意图。实现了两个VC(VC0和VC1),并 且其发送优先级按照3:1的比率设置,即每发送一个VC0的事务要发送3个VC1事务。核 心发送事务(包括一个TC)给TC/VC映射逻辑。根据相应的VC值,事务被路由到适当的VC 缓冲区等待发送。在发送事务时,VC的仲裁器确定了 VC缓冲区的优先级。VC仲裁器是一 种综合TC级别和保证每个事务分配一定带宽的机制。
[0038] 当数据从应用请求服务程序传输或读写至存储装置时,可采用相类似的传输或读 写方式。用户可根据需求来指定多种VC仲裁机制。本实施方式中VC仲裁机制包括以下三 种:对所有VC进行严格的优先级仲裁;分离优先级仲裁,即将VC分为高优先级组和低优先 级组,低优先级组使用某种形式的循环仲裁,高优先级组使用严格的优先仲裁;所有VC都 使用循环优先级仲裁。
[0039] 严格的优先级仲裁定义了基于固有的VC序号优先级的默认优先级方案,其中VC0 为低优先级,VC7为高优先级。仲裁机制是可配的,按需求而定。VC序号决定发送事务的顺 序。严格优先级要求根据VC序号,让优先级高的VC优先于低优先级的VC传输或读写。例 如,如果用严格优先级管理全部VC,只有当没有VC1~VC7的事务带发送时,才能发送VC序 号为VC0的事务。在某些情况下,严格优先级可能导致低优先级的事务急需带宽,并且忍受 着延迟。相反,最高优先级的事务得到非常宽的带宽和最小的延迟。为了避免资源缺乏,可 调整高优先级的流量控制,事务发起的应用能够管理注入高优先级事务的流量,以便给低 优先级事务留出较大的带宽。设备的设计者也可以通过规定高优先级、低优先级VC之间的 间隔来限制参与严格优先级的VC数。
[0040] 低优先级和高优先级VC的仲裁方式中一般使用的仲裁策略是分组优先序仲 裁,将支持的VC数进行分组,分成低优先级组和高优先级组,如VC0~VC4是低优先级,则 VC5-VC7是尚优先组。其中,低优先级组的VC按照轮转优先序算法仲裁,即低优先级组的事 务根据不同的VC轮流发送。高优先级组的VC按照严格优先序发送,即VC序号高的VC必 须先发送,序号最低的优先级最低。
[0041] 图5为本发明实施方式中存储装置的模块图,为了便于说明,仅示出了与本实施 方式相关的部分。所述控制芯片21还包括以下模块: 服务质量设定模块216,用于设定数据读写事务的服务质量等级。
[0042] 流量类别获取模块217,用于自电子装置获取对应所述服务质量等级的流量类别 等级。
[0043] 映射模块218,用于将所述流量类别等级映射到虚拟通道上,进一步,映射模块 218用于将多个流量类别映射到同一虚拟通道上。
[0044] 仲裁模块219,用于对虚拟通道进行优先序仲裁,启用虚拟通道的缓冲区和流控 制,将映射到同一虚拟通道上的事务按顺序发出,调整高优先级的流量控制,使事务发起的 应用管理注入高优先级的事务的流量,判断是否有低优先级的事务发生高速缓存命中,如 果没有发生高速缓存命中,则仲裁器进行选择仲裁。
[0045] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能 单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功 能单元或模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述 的全部或者部分功能。实施方式中的各功能单元、模块可以集成在一个处理单元中,也可以 是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单 元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、 模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述装置中 单元、模块的具体工作过程,可以参考前述方法实施方式中的对应过程,在此不再赘述。
[0046] 本领域普通技术人员还可以理解,实现上述实施方式方法中的全部或部分步骤是 可以通过程序来指令相关的硬件来完成,所述的程序可以在存储于一计算机可读取存储介 质中,所述的存储介质,包括R0M/RAM、磁盘、光盘等。
[0047] 以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定 本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在 不脱离本发明构思的前提下做出若干等同替代或明显变型,而且性能或用途相同,都应当 视为属于本发明由所提交的权利要求书确定的专利保护范围。
【主权项】
1. 一种存储装置数据服务质量管理方法,其特征在于:所述方法包括: 设定数据读写事务的服务质量等级; 获取对应所述服务质量等级的流量类别等级; 将所述流量类别等级映射到虚拟通道上; 对虚拟通道进行优先序仲裁;及 进行数据读写操作。2. 如权利要求1所述的方法,其特征在于:所述优先序仲裁是通过虚拟通道的序号进 行优先级仲裁。3. 如权利要求1所述的方法,其特征在于:所述将所述流量类别等级映射到虚拟通道 上的步骤还包括:将多个流量类别映射到同一虚拟通道上。4. 如权利要求1所述的方法,其特征在于:所述方法还包括:判断是否有低优先级的事 务发生高速缓存命中,如果没有发生高速缓存命中,则仲裁器进行选择仲裁。5. 如权利要求1所述的方法,其特征在于:所述对虚拟通道进行优先序仲裁的步骤包 括:将映射到同一虚拟通道上的事务按顺序发出。6. 如权利要求1所述的方法,其特征在于:所述对虚拟通道进行优先序仲裁的步骤包 括:调整高优先级的流量控制,使事务发起的应用管理注入高优先级事务的流量,以便给低 优先级事务留出带宽。7. -种存储装置,其特征在于:所述存储装置包括: 服务质量设定模块,用于设定数据读写事务的服务质量等级; 流量类别获取模块,用于获取对应所述服务质量等级的流量类别等级; 映射模块,用于将所述流量类别等级映射到虚拟通道上;及 仲裁模块,用于对虚拟通道进行优先序仲裁。8. 如权利要求7所述的存储装置,其特征在于:仲裁模块还用于通过虚拟通道的序号 进行优先级仲裁。9. 如权利要求7所述的存储装置,其特征在于:流量类别定义模块还用于将多个流量 类别映射到同一虚拟通道上。10. 如权利要求7所述的存储装置,其特征在于:仲裁模块还用于判断是否有低优先级 的事务发生高速缓存命中,如果没有发生高速缓存命中,则仲裁器进行选择仲裁。
【文档编号】G06F3/06GK105867835SQ201510034184
【公开日】2016年8月17日
【申请日】2015年1月23日
【发明人】余云锋, 吴大畏, 李晓强
【申请人】深圳市硅格半导体有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1