背景技术:
1、云计算是使用在远程位置可用并且可通过诸如因特网的网络访问的计算资源(硬件和软件)。在一些布置中,用户能够根据需要购买这些计算资源(包括存储和计算能力)作为实用程序。云计算将用户的数据、软件和计算交托给远程服务。虚拟计算资源的使用可以提供许多优点,包括成本优势和/或快速适应变化的计算资源需求的能力。
2、大型计算机系统的用户可能具有由不同用例导致的各种计算要求。计算服务提供者可以包括具有不同类型的组件的各种不同计算机系统,这些组件具有不同级别的性能和/或功能。因此,用户可以选择在执行特定任务时可能潜在地更高效的计算机系统。例如,计算服务提供者可以为系统提供处理性能、内存性能、存储容量或性能以及网络容量或性能的不同组合。然而,一些用户可能希望使用专有或高度专用的硬件来执行他们的计算任务。因此,可以挑战计算服务提供者为这些用户提供专用计算硬件,同时保持通用资源的健康混合,以便可以在不同用户之间高效地分配资源。
技术实现思路
1.一种方法,其包括:
2.根据权利要求1所述的方法,还包括接收生成所述集成硬件数据的请求,其中,所述请求包括用于指定关于所述硬件设计的元数据、用户信息和针对所述硬件设计的访问权限的字段。
3.根据权利要求1所述的方法,还包括加密所述集成硬件数据,并且将与加密的集成硬件数据相关联的加密的比特流存储在数据库中。
4.根据权利要求3所述的方法,还包括在所述服务器计算机上使用公钥验证所述加密的比特流的签名。
5.根据权利要求1所述的方法,还包括生成所述集成硬件数据,包括合成所述硬件设计以生成与所述fpga兼容的网表。
6.根据权利要求1所述的方法,其中,启动所述虚拟机实例的所述请求包括对在所述服务器计算机中执行并且与所述fpga通信的特定中央处理单元(cpu)的请求。
7.根据权利要求6所述的方法,其中,所述主机逻辑控制被编程到所述fpga中的所述硬件设计与所述cpu之间的总线事务。
8.根据权利要求1所述的方法,还包括执行验证测试以确定所述硬件设计是否适合所述服务器计算机上的所述fpga并且是否与所述主机逻辑兼容。
9.根据权利要求1所述的方法,还包括分析所述硬件设计是否包括禁止的逻辑功能。
10.根据权利要求9所述的方法,其中,禁止的功能包括环形振荡器。
11.一种计算机系统,其包括:
12.根据权利要求11所述的计算机系统,其中,所述服务器计算机是第一服务器计算机,并且其中,所述加密和签名发生在不同于所述第一服务器计算机的第二服务器计算机上。
13.根据权利要求11所述的计算机系统,其中,所述一个或多个处理器进一步执行所述指令以进行验证测试,以确定所述硬件逻辑适合所述fpga。
14.根据权利要求11所述的计算机系统,其中,所述一个或多个处理器进一步执行所述指令以分析所述硬件逻辑是否包括所述服务器计算机上的禁止的逻辑功能。
15.根据权利要求11所述的计算机系统,其中,所述硬件逻辑从第三方开发者提供给所述计算机系统,并且其中,所述计算机系统执行指令以将主机逻辑与所述硬件逻辑集成,其中,所述主机逻辑限制所述硬件逻辑对所述服务器计算机上的所述一个或多个处理器的访问。
16.根据权利要求15所述的计算机系统,其中,所述主机逻辑控制被编程到所述fpga中的所述硬件设计与所述cpu之间的总线事务。
