主机系统及其方法和加速模块技术方案

技术编号:22101712 阅读:51 留言:0更新日期:2019-09-14 03:16
本发明专利技术公开一种主机系统。系统可包含:处理器,运行应用程序;存储器,存储由应用程序使用的数据;上游接口,与处理器通信;下游接口,与存储装置通信。系统还可包含加速模块,所述加速模块使用硬件来实施且包含加速平台管理器以执行加速指令。存储装置可包含:存储装置的端点,用于与加速模块通信;控制器,用以管理存储装置的操作;存储,用于应用程序的应用数据;以及存储装置加速平台管理器,用以辅助加速平台管理器执行加速指令。处理器、加速模块以及存储装置可经由外围组件互连快速总线通信。加速模块可在不将应用数据加载到存储器中的情况下支持针对应用程序对存储装置上的应用数据执行加速指令。也提供一种主机系统的方法和加速模块。

Host System and Its Method and Acceleration Module

【技术实现步骤摘要】
主机系统及其方法和加速模块相关申请数据本申请案要求2018年3月5日提交的美国临时专利申请案第62/638,904号的权益,所述申请案出于所有目的以引用的方式并入本文中。本申请案要求2018年3月9日提交的美国临时专利申请案第62/641,267号的权益,所述申请案出于所有目的以引用的方式并入本文中。本申请案要求2018年3月13日提交的美国临时专利申请案第62/642,568号的权益,所述申请案出于所有目的以引用的方式并入本文中。
本专利技术概念涉及存储装置,且更具体地说,涉及使用额外硬件的加速固态驱动器(SolidStateDrive,SSD)执行。
技术介绍
存在以常规方式使用存储装置效率低的情况。举例来说,设想需要在数据库上运行查询的情况。常规解决方案为将数据库加载到计算机的存储器中、对数据库的内存副本执行查询以及接着处理结果。虽然这一方法在数据库相对较小的情况下可能为合理的,但是加载含有数千、数百万或更多记录的数据库(其中查询的结果是标识数据库中的单一记录)效率极低。需要将超大量的数据移动到存储器中以执行查询,很可能使已存储在存储器中的其它数据位移。且接着,一旦查询已经执行就丢弃大部分数据,这是由于在查询完成之后大部分数据都不需要。当需要反复对数据库执行查询时,可能会放大这一问题:每一查询可能都需要将数据库再次加载到存储器中。仍然需要一种用于加速涉及存储装置的操作的方法。本公开的目的本公开的实例实施例可提供一种用于基于FPGA的加速的低成本且低功率SSD架构。
技术实现思路
实例实施例提供一种系统,所述系统可包含:处理器,所述处理器运行应用程序;存储器,所述存储器存储由在所述处理器上运行的应用程序使用的数据;上游端点,用于与处理器通信;第一下游根端口,用于与存储装置通信;第二下游根端口,用于与存储装置通信;以及加速模块,所述加速模块使用硬件来实施且包含加速平台管理器(AccelerationPlatformManager,APM-F)以执行加速指令。存储装置可包含:存储装置的第一端点,用于与加速模块通信;存储装置的第二端点,用于与加速模块通信;控制器,用以管理存储装置的操作;存储,用以存储应用程序的应用数据;以及存储装置加速平台管理器(storagedeviceAccelerationPlatformManager,APM-S),用以辅助APM-F执行加速指令。处理器、加速模块以及存储装置可经由外围组件互连快速(PeripheralComponentInterconnectExpress,PCIe)总线通信。加速模块可在不将应用数据加载到存储器中的情况下支持针对应用程序对存储装置上的应用数据执行加速指令。另一实例实施例提供一种使用硬件实施的加速模块,所述加速模块可包含:加速平台管理器(APM-F),用以执行加速指令;上游端点,用于与处理器通信,应用程序在处理器上运行;第一下游根端口,用于与存储装置通信,所述存储装置包含存储装置加速平台管理器(APM-S),所述存储装置加速平台管理器用以辅助APM-F执行加速指令;以及第二下游根端口,用于与存储装置通信。存储装置可包含存储装置加速平台管理器(APM-S),所述存储装置加速平台管理器用以辅助APM-F执行加速指令。加速模块可使用外围组件互连快速(PCIe)总线与处理器和存储装置通信。加速模块可支持在不将应用数据加载到与处理器相关联的存储器中的情况下针对应用程序对存储装置上的应用数据执行加速指令。再一实例实施例提供一种方法,所述方法可包含:在加速模块处从存储装置接收第一外围组件互连快速(PCIe)事务;确定第一PCIe事务是在加速模块的第一下游根端口处还是在加速模块的第二下游根端口处接收到的;至少部分地基于确定第一PCIe事务是在加速模块的第一下游根端口处接收到的,使用加速模块的上游端点来将第一PCIe事务传送到处理器;以及至少部分地基于确定第一PCIe事务是在加速模块的第二下游根端口处接收到的,在加速模块的加速平台管理器(APM-F)处处理第一PCIe事务。加速模块可在不将应用数据加载到与处理器相关联的存储器中的情况下支持针对应用程序对存储装置上的应用数据执行加速指令。处理器、加速模块以及存储装置可使用PCIe总线通信。本公开的效应本文中所公开的实施例可提供一种可加载数据的加速模块。因此,本文中所公开的实施例可避免从SSD加载数据所需的延迟。附图说明图1示出根据本专利技术概念的一实施例的支持存储装置上的加速操作的机器。图2示出图1的机器的额外细节。图3示出根据本专利技术概念的第一实施例的图1的加速模块和图1的存储装置的组件。图4示出根据本专利技术概念的第一实施例的用于加速图1的系统中的指令的存储器使用。图5示出根据本专利技术概念的第二实施例的图1的加速模块和图1的存储装置的组件。图6示出根据本专利技术概念的第二实施例的用于加速图1的系统中的指令的存储器使用。图7示出根据本专利技术概念的第三实施例的图1的加速模块和图1的存储装置的组件。图8示出根据本专利技术概念的第三实施例的用于加速图1的系统中的指令的存储器使用。图9示出根据本专利技术概念的第四实施例的图1的加速模块和图1的存储装置的组件。图10示出根据本专利技术概念的第四实施例的用于加速图1的系统中的指令的存储器使用。图11示出根据本专利技术概念的第五实施例的图1的加速模块和图1的存储装置的组件。图12示出根据本专利技术概念的第五实施例的用于加速图1的系统中的指令的存储器使用。图13示出根据本专利技术概念的第六实施例的图1的加速模块和图1的存储装置的组件。图14示出根据本专利技术概念的第六实施例的用于加速图1的系统中的指令的存储器使用。图15示出根据本专利技术概念的第七实施例的图1的加速模块和图1的存储装置的组件。图16示出根据本专利技术概念的第七实施例的用于加速图1的系统中的指令的存储器使用。图17示出根据本专利技术概念的第八实施例的图1的加速模块和图1的存储装置的组件。图18示出根据本专利技术概念的第八实施例的用于加速图1的系统中的指令的存储器使用。图19示出根据本专利技术概念的实施例的具有管理与图1的加速模块的通信的桥接组件的图1的系统的组件。图20A至图20B示出根据本专利技术概念的实施例的图1的处理器、图1的加速模块以及图1的存储装置之间的通信。图21示出根据本专利技术概念的实施例的用于图1的加速模块以处理PCIe事务的实例过程的流程图。图22A至图22C示出根据本专利技术概念的实施例的用于图1的加速模块以处理PCIe事务的更详细实例过程的流程图。图23A至图23B示出根据本专利技术概念的实施例的用于图1的加速模块以确定来自图1的处理器的PCIe事务是否包含加速指令的实例过程的流程图。图24示出根据本专利技术概念的实施例的用于图1的加速模块以确定来自图1的存储装置的PCIe事务是否包含加速指令的实例过程的流程图。图25示出根据本专利技术概念的实施例的用于图19的第一桥接组件以确定来自图1的处理器的PCIe事务是否包含加速指令的实例过程的流程图。图26示出根据本专利技术概念的实施例的用于图19的第二桥接组件以确定来自图1的存储装置的PCIe事务是否包含加速指令的实例过程的流程图。图27A至图27C示出根据本专利技术概念的实施例的用于图1的存储装置以处理PCIe事务的实例过程的流程图。本文档来自技高网...

【技术保护点】
1.一种主机系统,包括:处理器,所述处理器运行应用程序;存储器,所述存储器存储由在所述处理器上运行的所述应用程序使用的数据;上游端点,用于与所述处理器通信;第一下游根端口,用于与存储装置通信;第二下游根端口,用于与所述存储装置通信;以及加速模块,所述加速模块使用硬件来实施且包含加速平台管理器以执行加速指令;所述存储装置,包含:所述存储装置的第一端点,用于与所述加速模块通信;所述存储装置的第二端点,用于与所述加速模块通信;控制器,用以管理所述存储装置的操作;存储,用以存储所述应用程序的应用数据;以及存储装置加速平台管理器,用以辅助所述加速平台管理器执行所述加速指令,其中所述处理器、所述加速模块以及所述存储装置经由外围组件互连快速总线通信,且其中所述加速模块在不将所述应用数据加载到所述存储器中的情况下支持针对所述应用程序对所述存储装置上的所述应用数据执行所述加速指令。

【技术特征摘要】
2018.03.05 US 62/638,904;2018.03.09 US 62/641,267;1.一种主机系统,包括:处理器,所述处理器运行应用程序;存储器,所述存储器存储由在所述处理器上运行的所述应用程序使用的数据;上游端点,用于与所述处理器通信;第一下游根端口,用于与存储装置通信;第二下游根端口,用于与所述存储装置通信;以及加速模块,所述加速模块使用硬件来实施且包含加速平台管理器以执行加速指令;所述存储装置,包含:所述存储装置的第一端点,用于与所述加速模块通信;所述存储装置的第二端点,用于与所述加速模块通信;控制器,用以管理所述存储装置的操作;存储,用以存储所述应用程序的应用数据;以及存储装置加速平台管理器,用以辅助所述加速平台管理器执行所述加速指令,其中所述处理器、所述加速模块以及所述存储装置经由外围组件互连快速总线通信,且其中所述加速模块在不将所述应用数据加载到所述存储器中的情况下支持针对所述应用程序对所述存储装置上的所述应用数据执行所述加速指令。2.根据权利要求1所述的系统,还包括:第一桥接组件,包含所述上游端点,所述第一桥接组件桥接所述处理器与所述加速模块之间的通信;以及第二桥接组件,包含所述第一下游根端口和所述第二下游根端口,所述第二桥接组件桥接所述加速模块与存储装置之间的通信。3.根据权利要求1所述的系统,其中:使用现场可编程门阵列来实施所述加速模块;所述现场可编程门阵列包含所述上游端点、所述第一下游根端口以及所述第二下游根端口;所述存储装置包含固态驱动器;所述固态驱动器的第一端点与所述第一下游根端口相关联;以及所述固态驱动器的第二端点与所述第二下游根端口相关联。4.根据权利要求3所述的系统,其中所述加速平台管理器经操作以经由所述上游端点将结果发送到所述处理器。5.根据权利要求3所述的系统,其中所述现场可编程门阵列还包含配置监视器以将所述固态驱动器的所述第一端点的性能复制到所述上游端点。6.根据权利要求3所述的系统,其中:所述现场可编程门阵列包含第一物理功能以及第二物理功能;以及所述现场可编程门阵列经操作以:经由所述第一下游根端口以及所述固态驱动器的所述第一端点将从所述处理器接收到的第一外围组件互连快速事务转发到所述固态驱动器,所述第一外围组件互连快速事务与所述第一物理功能的第一标识符相关联;将从所述处理器接收到的第二加速指令转发到所述加速平台管理器,所述第二加速指令与所述第二物理功能的第二标识符相关联;将在所述第一下游根端口处从所述固态驱动器接收到的第二外围组件互连快速事务转发到所述处理器;以及将在所述第二下游根端口处从所述固态驱动器接收到的第一加速指令转发到所述加速平台管理器。7.根据权利要求3所述的系统,其中:所述现场可编程门阵列还包含第二上游端点;以及所述现场可编程门阵列经操作以:经由所述第一下游根端口以及所述固态驱动器的所述第一端点将在所述上游端点处从所述处理器接收到的第一外围组件互连快速事务转发到所述固态驱动器;将在所述第二上游端点处从所述处理器接收到的第二加速指令转发到所述加速平台管理器;经由所述上游端点将在所述第一下游根端口处从所述固态驱动器接收到的第二外围组件互连快速事务转发到所述处理器;以及将在所述第二下游根端口处从所述固态驱动器接收到的第一加速指令转发到所述加速平台管理器。8.一种使用硬件实施的加速模块,包括:加速平台管理器,用以执行加速指令;上游端点,用于与处理器通信,应用程序在所述处理器上运行;第一下游根端口,用于与存储装置通信,所述存储装置包含存储装置加速平台管理器,所述存储装置加速平台管理器用以辅助所述加速平台管理器执行所述加速指令;以及第二下游根端口,用于与所述存储装置通信,其中所述加速模块使用外围组件互连快速总线与所述处理器以及所述存储装置通信,其中所述加速模块在不将应用数据加载到与所述处理器相关联的存储器中的情况下支持针对所述应用程序对所述存储装置上的所述应用数据执行所述加速指令。9.根据权利要求8所述的加速模块,其中:使用现场可编程门阵列来实施所述加速模块。10.根据权利要求9所述的加速模块,其中所述加速平台管理器经操作以经由所述上游端点将结果发送到所述处理器。1...

【专利技术属性】
技术研发人员:瑞姆达斯·P·卡佳瑞史蒂芬·菲斯契尔佛瑞德·沃里桑庞·保罗·欧拉利格
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:韩国,KR

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

1