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

技术编号:22101705 阅读:36 留言: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)以执行第一加速指令;下游过滤器,与下游端口相关联,所述下游过滤器经操作以拦截从存储装置接收到的加速指令且将第一加速指令传送到APM-F,所述第一加速指令与下游过滤器地址范围(FilterAddressRange,FAR)相关联。存储装置可包含:存储装置的端点,用于与加速模块通信;控制器,用以管理存储装置的操作;储存体,用以存储应用程序的应用数据;以及存储装置加速平台管理器(storagedeviceAccelerationPlatformManager,APM-S),用以辅助APM-F执行第一加速指令。处理器、加速模块以及存储装置可经由外围组件互连快速(PeripheralComponentInterconnectExpress,PCIe)总线通信。加速模块可在不将应用数据加载到存储器中的情况下支持针对应用程序对存储装置上的应用数据执行第一加速指令。另一示例实施例提供一种使用硬件实施的加速模块,所述加速模块可包含:加速平台管理器(APM-F),用以执行第一加速指令;上游端口,用于与处理器通信,应用程序在所述处理器上运行;下游端口,用于与存储装置通信,所述存储装置包含存储装置加速平台管理器(APM-S),所述存储装置加速平台管理器用以辅助APM-F执行第一加速指令,下游过滤器,与下游端口相关联,所述下游过滤器经操作以拦截从存储装置接收到的第一加速指令且将所述第一加速指令传送到APM-F,所述第一加速指令与下游过滤器地址范围(FAR)相关联。加速模块可使用外围组件互连快速(PCIe)总线与处理器和存储装置通信。加速模块可在不将应用数据加载到与处理器相关联的存储器中的情况下支持针对应用程序对存储装置上的应用数据执行第一加速指令。再一示例实施例提供一种方法,所述方法可包含:在加速模块的下游端口处从存储装置接收第一外围组件互连快速(PCIe)事务;通过确定第一PCIe事务是否与下游过滤器地址范围(FAR)中的第一地址相关联来在加速模块处确定第一PCIe事务是否为第一加速指令,所述下游过滤器地址范围与加速模块的下游端口相关联;至少部分地基于确定第一PCIe事务为第一加速指令,在加速模块的加速平台管理器(APM-F)处处理第一PCIe事务;以及至少部分地基于确定第一PCIe事务不是第一加速指令,使用加速模块的上游端口将第一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示出根据本文档来自技高网...

【技术保护点】
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.如申请专利范围第7项所述的系统,其中所述控制器经操作以用所述下游过滤器地址范围对所述下游过滤器进行编程且用所述上游过滤器地址范围对所述上游过滤器进行编程。9.一种使用硬件实施的加速模块,包括:加速平台管理器,用以执行第一加速指令;上游端口,用于与处理器通信,应用程序在所述处理器上运行;下游端口,用于与存储装置通信,所述存储装置包含存储装置加速平台管理器,所述存储装置加速平台管理器用以辅助所述加速平台管理器执行所述第一加速指令,下游过滤器,与所述下游端口相关联,所述下游过滤器经操作以拦截从所述存储装置接收到的所述第一加速指令且将所述第一加速指令传送到所述加速平台管理器,所述第一加速指令与下游过滤器地址范围相关联;且其中所述加速模块使用外围组件互连快速总线与所述处理器以及所述存储装置通信,且其中所述加速模块在不将应用数据加载到与所述处理器相关联...

【专利技术属性】
技术研发人员:瑞姆达斯·P·卡佳瑞佛瑞德·沃里
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:韩国,KR

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

1