当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于重映射待决位阵列读取请求的技术制造技术

技术编号:19240271 阅读:36 留言:0更新日期:2018-10-24 03:52
用于重映射待决位阵列读取请求的技术包括一种计算设备,其包括多个数据存储设备、请求管理器和重映射管理器。请求管理器用以接收请求以从映射到多个子待决位阵列(PBA)的主PBA读取PBA数据。每一个子PBA与数据存储设备中的不同数据存储设备关联。所述请求包括指示从其读取PBA数据的主PBA中的地址的属性数据。重映射管理器用以从属性数据确定一个或多个位地址,将所述一个或多个位地址与主PBA中的子PBA的地址进行比较以确定要读取的子PBA的集,以及将所述一个或多个位地址映射到要读取的子PBA的所确定的集。

【技术实现步骤摘要】
用于重映射待决位阵列读取请求的技术
技术介绍
非易失性存储器重映射(NVM-r)通常支持高达三个外围组件互连快速(peripheralcomponentinterconnectexpress,PCIe)数据存储设备(诸如,固态设备(solidstatedevice))的重映射。如果诸如以MSI-X方式之类的消息信号中断由数据存储设备支持,则连接到数据存储设备的高级主机控制器接口(AHCI)控制器(例如,串行高级技术附件(serialadvancedtechnologyattachment,SATA)控制器)的MSI-X表和待决位阵列(PBA)结构以及数据存储设备本身的MSI-X表和待决位阵列结构作为单个“主”MSI-X表和单个“主”PBA被呈递给由计算设备执行的软件。MSI-X表通常体现为条目集,每个条目称为矢量,指示可以被发送到设备的消息的结构,引起中断。PBA中的每个位通常指示MSI-X表中的对应位置处的消息是否是待决的(例如,将被发送到对应设备以引起中断)。附图说明通过示例的方式而不是通过限制的方式在附图中图示本文描述的概念。为了图示的简化和清楚,图中图示的元件不一定按比例绘制。在认为适当的地方,在图之间已经重复参考标签以指示对应或类似的元件。图1是提供对待决位阵列的访问的重映射的计算设备的至少一个实施例的简化框图;图2是图1的计算设备中包括的数据存储设备的至少一个实施例的简化框图;图3是图1的计算设备的输入/输出系统的至少一个实施例的简化框图;图4是可以由图1的计算设备建立的环境的至少一个实施例的简化框图;图5-8是可以由图1的计算设备执行的用于重映射对待决位阵列数据的访问的方法的至少一个实施例的简化流程图;图9图示用于从读取请求中包括的属性数据确定起始位地址和结束位地址的伪代码;图10是主待决位阵列地址空间内的子待决位阵列的布置和指示可以与读取请求关联的子待决位阵列的各种集的对应条件的简化框图;图11是可用于确定用于待决位阵列数据的读取的经翻译的起始和结束地址的伪代码的集的列表;图12是主待决位阵列和多个子待决位阵列之间的关系的简化框图;图13是超过子待决位阵列数据的最后字节迫使数据为零的简化框图;图14是合并针对子待决位阵列数据的多个集中的每一个的分裂数据(splitdata)的简化框图;图15是使子待决位阵列数据移位与子待决位阵列数据在主待决位阵列的地址空间中的起始位置对应的多个字节的简化框图;图16是使子待决位阵列数据按多个位移位的简化框图;图17是选择双字或四字(quadword)用于根据读取请求长度读取子待决位阵列数据的简化框图;图18是使子待决位阵列数据移位以匹配主待决位阵列中的对应起始位的简化框图;以及图19是超过最后位掩蔽子待决位阵列数据的简化框图。具体实施方式虽然本公开的概念易受各种修改和替换形式影响,但已经通过示例的方式在附图中示出并且将在本文详细描述其具体实施例。然而,应理解的是,并不意图将本公开的概念限制于所公开的特定形式,而是相反,意图是涵盖与本公开和随附权利要求一致的所有修改、等效方案和替代方案。本说明书中对于“一个实施例”、“实施例”、“说明性实施例”等的引用表明所描述的实施例可以包括特定特征、结构或特性,但是每一个实施例可以或可以不一定包括该特定特征、结构或特性。此外,这样的短语不一定是指相同实施例。另外,当结合实施例描述特定特征、结构或特性时,认为无论是否明确描述,结合其他实施例实现这样的特征、结构或特性处于本领域技术人员的知识范围内。附加地,应领会的是,以“至少一个A、B和C”的形式在列表中包括的项可以意味着(A);(B);(C);(A和B);(A和C);(B和C)或(A、B和C)。类似地,以“A、B或C中的至少一个”的形式列出的项可以意味着(A);(B);(C);(A和B);(A和C);(B和C)或(A、B和C)。在一些情况下,公开的实施例可以以硬件、固件、软件或其任意组合来实现。公开的实施例还可以被实现为由临时性或非临时性机器可读(例如,计算机可读)存储介质承载的或者存储于其上的指令,所述指令可以被一个或多个处理器读取和执行。机器可读存储介质可以体现为用于以由机器(例如,易失性或非易失性存储器,媒体光盘或其他媒体设备)可读的形式存储或传输信息的任何存储设备、机制(mechanism)或其他物理结构。在附图中,以具体布置和/或排序示出一些结构或方法特征。然而,应领会的是,这样的具体布置和/或排序可以不是必需的。而是,在一些实施例中,可以以与说明性图中示出的不同的方式和/或次序布置这样的特征。附加地,在特定图中包括结构或方法特征不意味着暗示这样的特征在所有实施例中是必需的,并且在一些实施例中可以不被包括,或者可以与其他特征组合。现在参考图1,用于重映射对待决位阵列(PBA)的访问的说明性计算设备100可以体现为能够执行本文所述的功能的任何类型的计算设备。例如,在一些实施例中,计算设备100可以体现为,但不限于,计算机、服务器计算机、膝上型计算机、笔记本计算机、平板计算机、智能手机、消费者电子设备、智能器具和/或能够执行功能以提供将对主PBA的读取请求重映射到与(一个或多个)对应数据存储设备关联的一个或多个子PBA的任何其他计算设备。如图1中所示,说明性计算设备100包括处理器102、主存储器104、输入/输出子系统106和包括一组数据存储设备110的数据存储子系统108,所述一组数据存储设备110包括数据存储设备112、114、116。当然,在其他实施例中,计算设备100可以包括其他或附加组件,诸如通常在计算机中发现的那些组件(例如,通信子系统、显示器、外围设备等)。附加地,在一些实施例中,说明性组件中的一个或多个可以并入另一组件中,或者以其他方式来自另一组件的一部分。例如,在一些实施例中,存储器104或其部分可以并入处理器102中。在典型系统中,针对数据存储设备中的每一个的PBA的大小是固定的(例如,不可编程的),因为提供这样的特征可能引起主PBA结构中的子PBA(例如,与每一个数据存储设备关联的PBA)的未对准(misalignment),潜在地导致数据访问错误。然而,在说明性实施例中,计算设备100使得能够对呈递给由处理器102执行的软件的主PBA中的子PBA的大小进行编程。这样,所得到的子PBA可以不与任何字节、双字、或四字边界对准。在说明性实施例中,计算设备100映射读取请求,所述读取请求包括指示主PBA的分段(section)(例如,地址和长度)的属性数据用以读取,将属性数据转换成一个或多个位地址(例如,起始位地址和结束位地址),从位地址确定要读取子PBA中的哪一个,以及向数据存储设备110(例如,从与SATA控制器关联的I/O子系统106的一个循环路由器(cyclerouter)向与数据存储设备110关联的I/O子系统106的另一循环路由器)发布对应请求以从对应PBA读取。附加地,在操作中,计算设备100可以从子PBA(例如,与原始读取请求关联的数据存储设备110的PBA)接收PBA数据以及将接收到的PBA数据合并回到主PBA。处理器102可以体现为能够执行本文所述的功能的任何类型的处理设备。例如,处理器102可以体现为具有一个或本文档来自技高网...

【技术保护点】
1.一种计算设备,包括:多个数据存储设备;请求管理器,用以接收请求以从映射到多个子待决位阵列(PBA)的主PBA读取PBA数据,其中每一个子PBA与数据存储设备中的不同数据存储设备关联,并且所述请求包括指示从其读取PBA数据的主PBA中的地址的属性数据;重映射管理器,用以从属性数据确定一个或多个位地址,将所述一个或多个位地址与主PBA中的子PBA的地址进行比较以确定要读取的子PBA的集,以及将所述一个或多个位地址映射到要读取的子PBA的所确定的集。

【技术特征摘要】
2017.03.31 US 15/4752891.一种计算设备,包括:多个数据存储设备;请求管理器,用以接收请求以从映射到多个子待决位阵列(PBA)的主PBA读取PBA数据,其中每一个子PBA与数据存储设备中的不同数据存储设备关联,并且所述请求包括指示从其读取PBA数据的主PBA中的地址的属性数据;重映射管理器,用以从属性数据确定一个或多个位地址,将所述一个或多个位地址与主PBA中的子PBA的地址进行比较以确定要读取的子PBA的集,以及将所述一个或多个位地址映射到要读取的子PBA的所确定的集。2.根据权利要求1所述的计算设备,其中映射所述一个或多个位地址包括针对与所确定的集合的每一个子PBA关联的读取请求确定经翻译的属性数据。3.根据权利要求2所述的计算设备,其中所述请求管理器还用以向所述多个数据存储设备发送一个或多个读取请求以读取所确定的集中的一个或多个子PBA。4.根据权利要求3所述的计算设备,其中所述请求管理器还用以响应于所述一个或多个读取请求而从所确定的集中的每一个子PBA接收PBA数据;并且所述重映射管理器还用以将接收到的PBA数据合并到主PBA中。5.根据权利要求4所述的计算设备,其中将接收到的PBA数据合并到主PBA中包括:将来自子PBA的接收到的PBA数据与主PBA中的关联的位置对准;以及在主PBA中组合经对准的PBA数据。6.根据权利要求5所述的计算设备,其中组合经对准的PBA数据包括对与子PBA关联的接收到的PBA数据执行或操作。7.根据权利要求5所述的计算设备,其中对准来自子PBA的接收到的PBA数据包括:使来自子PBA的PBA数据移位到初始位置;根据主PBA中的关联的子PBA的位置而使PBA数据移位;以及掩蔽与子PBA关联的PBA数据中的未使用位。8.根据权利要求7所述的计算设备,其中掩蔽未使用位包括将未使用位设置为零。9.根据权利要求1所述的计算设备,其中接收读取请求包括接收包括指示主PBA中的地址的属性数据、指示要读取的数据的量的长度、第一字节启用数据和最后字节启用数据的读取请求;并且其中确定经翻译的属性数据包括确定经翻译的地址、经翻译的长度、经翻译的第一字节启用数据、以及经翻译的最后字节启用数据。10.根据权利要求1所述的计算设备,其中确定一个或多个位地址包括确定起始位地址和结束位地址。11.根据权利要求1所述的计算设备,其中确定一个或多个位地址包括将地址从双字地址转换成一个或多个位地址。12.一种用于重映射待决位阵列读取请求的计算设备,所述计算设备包括:用于接收请求以从映射到多个子待决位阵列(PBA)的主PBA读取PBA数据的部件,其中每一个子PBA与多个数据存储设备中的不同数据存储设备关联,并且所述请求包括指示从其读取PBA数据的主PBA中的地址的属性数据;用于从属性数据确定一个或多个位地址的部件;用于将所述一个或多个位地址与主PBA中的子PBA的地址进行比较以确定要读取的子PBA的集的部件;以及用于将所述一个或多个位地址映射到要读取的子...

【专利技术属性】
技术研发人员:SSM杨
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

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

1