CN110719206A - 天基fpga虚拟化计算服务系统、方法和可读存储介质 - Google Patents

天基fpga虚拟化计算服务系统、方法和可读存储介质 Download PDF

Info

Publication number
CN110719206A
CN110719206A CN201911000259.5A CN201911000259A CN110719206A CN 110719206 A CN110719206 A CN 110719206A CN 201911000259 A CN201911000259 A CN 201911000259A CN 110719206 A CN110719206 A CN 110719206A
Authority
CN
China
Prior art keywords
service
computing
fpga
space
resource
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911000259.5A
Other languages
English (en)
Other versions
CN110719206B (zh
Inventor
杨淑铃
曹素芝
闫蕾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Technology and Engineering Center for Space Utilization of CAS
Original Assignee
Technology and Engineering Center for Space Utilization of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Technology and Engineering Center for Space Utilization of CAS filed Critical Technology and Engineering Center for Space Utilization of CAS
Priority to CN201911000259.5A priority Critical patent/CN110719206B/zh
Publication of CN110719206A publication Critical patent/CN110719206A/zh
Application granted granted Critical
Publication of CN110719206B publication Critical patent/CN110719206B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/044Network management architectures or arrangements comprising hierarchical management structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • G06F15/7871Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5011Pool

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种天基FPGA虚拟化计算服务系统、方法和可读存储介质,所述系统包括:资源层、管理层和服务层,资源层利用局部动态重构技术将FPGA逻辑计算资源虚拟化为计算资源池;管理层用于对所述资源层进行统一的运维和管理,并对用户服务进行调度和部署;服务层用于负责应用封装,提供用户接口,生成服务产品。本发明以SoC FPGA为天基边缘网络的计算资源,为用户提供了统一的服务接口,通过FPGA动态可重构技术、容器技术和分布式容器集群管理技术实现FPGA动态虚拟化,让运行在数据中心上的虚拟机实例共享使用同一块或多块FPGA进行运算,促使FPGA资源利用率最大化,并能减少用户排队等候时间,降低业务整体时延,达到为用户提供优质服务的目的。

Description

天基FPGA虚拟化计算服务系统、方法和可读存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种天基FPGA虚拟化计算服务系统、方法和可读存储介质。
背景技术
云空间信息系统在服务导航定位、对地观测等天基应用上起到重要的作用。在传统的天基信息系统中,星上在轨计算处理能力非常有限,应用数据主要依靠高速星地链路与中继回传到地面节点进行处理。此外,天基信息系统的各个部分独立发展,技术规范不统一,各类资源之间不能直接进行有效的信息互联。为了解决星地带宽有限但应用数据量大、时延要求高的矛盾,星上高性能计算处理能力是必要条件。
在这些技术的支撑下,可将边缘计算结构引入天基信息网络以更好地实施天基数据在轨处理,提高资源利用率,降低分发时延,节约回传带宽。边缘计算是指在靠近物或数据源头的一侧,采用网络、计算、存储、应用核心能力为一体的开放平台,就近提供最近端服务。在天基边缘计算节点中,各种异构计算资源是天基应用数据在轨处理的基础支撑,包括CPU、GPU、FPGA等。天基系统能源来自于太阳能和电池,散热性能差,功耗约束了通用处理器CPU、GPU的使用。此外天基计算单元还有严格的体积限制。FPGA具有体积小、计算能效高、功耗低、开发周期短、稳定性高、能长期维护等优点。尤其是其具有流水线操作、并行处理的优势,使得FPGA十分适用于有较高实时性、计算性能要求的天基应用。近几年,地基FPGA加速成为相关学术和企业研究的热点。FPGA云的概念被提出,FPGA与CPU、GPU等其它处理器组合进行异构计算以满足用户需求。地面FPGA加速方案主要采用一台服务器拓展一片或多片FPGA加速卡。
相比于地基,天基FPGA有三个显著特点:1、对于硬件的集成度、功耗、体积,以及软件库的精简程度都有更加严格的要求。2、卫星网络要求在轨处理能够根据用户业务调整,支持不同业务的灵活重构和升级,因此提高FPGA的灵活重构性和可伸缩性是至关重要的。3、SRAM工艺的FPGA受空间高能粒子影响较大,内部配置存储器的逻辑状态常常由于高能粒子撞击而翻转,可能导致航天器信息的丢失或者功能中断。针对天基FPGA加速的特点,SoCFPGA是一个很好地解决方案。SoC FPGA器件在一个板子中成功集成了CPU和FPGA,具有高集成度、低功耗、小电路板面积,大内部通信带宽等优点。SoC FPGA中的CPU和FPGA异构资源,各取所长,共同高效完成在轨数据处理任务。基于SoC FPGA的动态重配置可实现FPGA资源时分复用,满足空间环境下的面向不同应用的实时在轨处理计算需求。此外,SoC FPGA的动态重配置还可以在保持静态逻辑保持正常运行的情况下,完成在轨动态修复更新和纠正由单粒子翻转引起的错误。
发明内容
为了解决上述至少一个技术问题,本发明提出了一种天基FPGA虚拟化计算服务系统、方法和可读存储介质。
为了实现上述目的,本发明第一方面提出了一种天基FPGA虚拟化计算服务系统,所述系统包括:
资源层,利用局部动态重构技术将FPGA逻辑计算资源虚拟化为计算资源池;
管理层,用于对所述资源层进行统一的运维和管理,并对用户服务进行调度和部署;
服务层,用于负责应用封装,提供用户接口,生成服务产品。
本方案中,所述资源层采用ARM+FPGA异构计算架构,ARM和FPGA逻辑计算单元分别置于FPGA芯片的PS和PL两个区域,PS区域包含处理器和存储资源,支持操作系统运行,用于负责控制服务计算任务的分配;PL区域用于负责逻辑运算,其包括静态区域和动态区域,静态区域用于负责构建PS侧软件与PL侧动态区域用户IP沟通的桥梁,动态区域为用户提供计算能力服务的局部动态重配置模块。
进一步的,所述资源层在处理器CPU端定制了用于重构模块配置的控制器PCAP,PCAP使用DMA的方式进行重构数据的传输,且PCAP作为一个硬核模块固化在PS区域。
本方案中,所述管理层运用分布式容器集群管理技术,实现资源调度,资源管理,节点监控以及通信功能。
进一步的,管理层根据用户需求和资源占用情况生成业务部署配置文件,运行于云端的管理程序根据调度算法决策,将业务部署在具有FPGA计算资源池的节点上。
本方案中,所述服务层采用容器封装技术,将用户的应用封装为轻量、安全的docker容器,从用户需求出发,采用主动、被动结合的方式为用户提供服务,每个用户的服务封装为一个Docker容器,容器的环境中配置应用运行所需的库类支持。
本发明第二方面还提出一种天基FPGA虚拟化计算服务方法,应用于上述的一种天基FPGA虚拟化计算服务系统,所述方法包括:
接收用户配置好的镜像文件和部署命令;
查询部署服务能够匹配的局部动态重配置模块是否被占用,安排服务的部署或排队;
待成功部署用户服务后,将部署结果反馈用户;
系统计算资源池节点执行计算任务并形成服务产品;
将所述服务产品按需分发给用户。
本方案中,接收用户配置好的镜像文件和部署命令,还包括:
用户将配置好的镜像文件上传至雾卫星节点;
雾卫星节点开放固定的套接字为地址以接收用户的镜像文件与部署命令。
本方案中,系统计算资源池节点执行计算任务并形成服务产品,还包括:
系统计算资源池节点执行计算任务并将携带有效信息的数据传送至云端数据中心;
所述云端数据中心进行数据处理并形成服务产品。
本发明第三方面还提出一种计算机可读存储介质,所述计算机可读存储介质中包括一种天基FPGA虚拟化计算服务方法程序,所述天基FPGA虚拟化计算服务方法程序被处理器执行时,实现如上述的一种天基FPGA虚拟化计算服务方法的步骤。
本发明的天基FPGA虚拟化计算服务系统包括:资源层、管理层和服务层,资源层利用局部动态重构技术将FPGA逻辑计算资源虚拟化为计算资源池;管理层用于对所述资源层进行统一的运维和管理,并对用户服务进行调度和部署;服务层用于负责应用封装,提供用户接口,生成服务产品。本发明以SoC FPGA为天基边缘网络的计算资源,并为用户提供了统一的服务接口,通过FPGA动态可重构技术、容器技术和分布式容器集群管理技术三部曲实现FPGA动态虚拟化,让运行在数据中心上的虚拟机实例共享使用同一块或多块FPGA进行运算,促使FPGA资源利用率最大化,并能减少用户排队等候时间,降低业务整体时延,达到为用户提供优质服务的目的。
本发明的附加方面和优点将在下面的描述部分中给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1示出了本发明一种天基FPGA虚拟化计算服务系统的框图;
图2示出了本发明一种PCAP局部动态重构的架构图;
图3示出了本发明一种设备插件的架构图;
图4示出了本发明一种Docker容器的架构图;
图5示出了本发明一种天基FPGA虚拟化计算服务方法的流程图;
图6示出了本发明一实施例的天基FPGA虚拟化计算服务的流程图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
卫星通信网络具有高、远、广域覆盖的优势,成为5G网络的重要组成部分。FPGA因其灵活性好,能效比高可以对天基视频压缩、图像处理相关业务进行加速。针对在轨应用的计算需求问题,以SoC FPGA为天基边缘网络的计算资源,并为用户提供了统一的服务接口;研究了FPGA资源的弹性伸缩机制,可以最大化FPGA资源利用率。通过FPGA动态可重构技术,容器技术和分布式容器集群管理技术三部曲实现FPGA动态虚拟化,FPGA虚拟化技术让运行在数据中心上的虚拟机实例共享使用同一块或多块FPGA进行运算。
图1示出了本发明一种天基FPGA虚拟化计算服务系统的框图。
如图1所示,本发明第一方面提出一种天基FPGA虚拟化计算服务系统,所述系统包括:
资源层,利用局部动态重构技术将FPGA逻辑计算资源虚拟化为计算资源池;
管理层,用于对所述资源层进行统一的运维和管理,并对用户服务进行调度和部署;
服务层,用于负责应用封装,提供用户接口,生成服务产品。
需要说明的是,为满足在轨计算密集型应用的计算需求,本发明提出天基FPGA虚拟化计算服务系统。所述由软件平台和硬件平台组成。根据系统功能划分,可将整体架构划分为三层:服务层、管理层和资源层。资源层即为SoC FPGA硬件平台,利用局部动态重构技术将FPGA逻辑计算资源虚拟化为计算资源池。服务层与管理层紧密结合组成软件平台。服务层以“推拉结合”为服务思想,用户可将服务封装为容器或调用平台预定义服务。管理层接收用户服务请求,监听、维护平台资源,部署服务。天基FPGA虚拟化计算服务平台通过资源池构建,集群管理,容器封装等手段,达到为用户提供高附加值的优质服务。
架构最底层的资源层是系统的硬件计算资源虚拟化后的资源池。采用局部动态重构技术,使得上层对器件物理资源数量不可见,用户进行FPGA应用开发时只需满足虚拟资源池空间大小要求。系统计算资源可以被动态地、快速地重新分配,并且不需要中断正在进行的运算。系统docker引擎驱动需在资源层实现以支持用户容器部署。FPGA虚拟化的实现对系统而言,能同时部署多用户业务,可增加资源利用率;对用户而言,可减少排队等候时间降低业务整体时延。
管理层主要负责对底层的资源层进行统一的运维和管理,以及用户服务容器的调度和部署。采用kubernetes集群管理技术,汇总资源层的信息,包含节点运行状态、性能,资源占用情况,剩余可用资源数量等。管理层根据用户需求和资源占用情况生成业务部署配置文件,运行于云端的管理程序根据调度算法决策,可将业务部署具有FPGA计算资源虚拟池的节点上。
服务层负责应用封装,提供用户接口,生成服务产品。采用容器封装技术,将用户的应用封装为轻量、安全的docker容器,便于部署和迁移服务。服务可独立部署,以功能模块为单元,具有可伸缩性,功能模块可独立更换和升级。系统的服务层紧密与天基信息网络背景相结合,是从用户需求出发,采用主动、被动结合的方式为用户提供满足用户需求的灵活、可伸缩、高可靠服务。
天基FPGA虚拟化计算服务系统可以提供高质量的图像流解决方案,在异构计算框架基础上,通过引入并行和流水等技术手段,提高计算性能、能效比和计算时效性,对计算任务进行硬件加速处理,减轻上下行带宽压力。天基FPGA虚拟化计算服务系统不仅面向多用户业务灵活适应其在轨应用的处理需求,还可以加速传统天基业务运行速率,加快业务部署。
根据本发明的实施例,所述资源层采用ARM+FPGA异构计算架构,ARM和FPGA逻辑计算单元分别置于FPGA芯片的PS和PL两个区域,PS区域包含处理器和存储资源,支持操作系统运行,用于负责控制服务计算任务的分配;PL区域用于负责逻辑运算,其包括静态区域和动态区域,静态区域用于负责构建PS侧软件与PL侧动态区域用户IP沟通的桥梁,动态区域为用户提供计算能力服务的局部动态重配置模块。
进一步的,所述资源层在处理器CPU端定制了用于重构模块配置的控制器PCAP,PCAP使用DMA的方式进行重构数据的传输,且PCAP作为一个硬核模块固化在PS区域。
FPGA作为一种高性能、低功耗的可编程芯片,可以根据客户定制来做针对性的算法设计。所以在处理海量数据的时候,FPGA相比于CPU和GPU,优势在于:FPGA计算效率更高,FPGA更接近IO。
然而,传统的FPGA计算的工作原理是运行前一次性将流文件下载到FPGA的整个区域中,告诉硬件架构具体完成什么功能,在需要的时候访问数据存储器或I/O进行数据读或写。相较于通用处理器串行执行指令计算模式,传统的FPGA可伸缩性差、资源利用率低,且开发过程周期长,程序可移植性差。基于上述,传统FPGA开发无法有效将应用级与系统级任务隔离,不满足可独立部署服务的平台服务层设计要求。为解决以上问题,本发明引入Dynamic Partial Reconfiguration(DPR)技术实现基于虚拟资源池的FPGA规模可伸缩性设计。基于FPGA的局部动态重配置具有更低功耗、更低的系统资源开销和更方便的配置接口控制等优点。
本发明的FPGA是成熟的嵌入式ARM+FPGA异构计算架构,ARM和FPGA逻辑计算单元分别置于SoC FPGA的Processing System(PS)和Programmable Logic(PL)两个区域。PS与PL分别负责片上系统的控制和逻辑计算,它们之间的通信采用了工业标准的AdvancedeXtensible Interface(AXI)连接方式。其中PS上包含处理器和存储等资源,可支持操作系统运行,主要负责控制服务计算任务的分配。为支持容器形式的服务和分布式集群管理,PS需实现docker引擎和容器部署后对FPGA逻辑计算资源的驱动程序。PL部分主要负责逻辑运算,可分为静态区域和动态区域。静态区域负责构建PS侧软件与PL侧动态区域用户IP沟通的桥梁。静态区域主要完成包括AXI总线协议、DMA数据传输、内存控制器、中断处理、地址管理模块和总线管理和适配模块、动态加载模块和一些系统调试模块等。动态区域对应的则是可以为用户提供计算能力服务的可重配置模块,采用业界通用的AXI总线与控制层面进行互联。
在通用处理器CPU端,专门定制了用于重构模块配置的控制器ProcessorConfiguration Access Port(PCAP)。PCAP使用DMA的方式进行重构数据的传输,具有较高的数据通信速率,且PCAP作为一个硬核模块固化在PS端,不占FPGA的硬件资源,不额外占用CPU与FPGA之间的接口资源。基于PCAP的局部动态重构架构如图2所示。系统启动之后,CPU首先将部分重构比特流数据从外部的非易失存储器(如SD卡)中读取并存放到DDR中。当系统需要进行FPGA动态重构时,CPU向PCAP发送起始命令,PCAP通过DMA操作直接将重构比特流数据从DDR传输到FPGA中,整个数据传输过程无需CPU干预。PL部分包含静态逻辑和reconfig block(重配置模块)A。重配置模块允许通过加载部分配置文件(通常是部分BIT文件)来修改正在运行的程序功能,且不会影响未重新配置的器件上运行的应用程序的完整性。在重新配置块A中通过下载几个部分配置文件A1.bit、A2.bit、A3.bit或A4.bit中的一个来修改该模块运行程序。系统依据“时分复用”的思想,按照用户的需求,可动态地将存储在片外存储器中的代码分时加载进空闲的可重构区域中,提高FPGA的资源利用率。用户的多样化需求如何可靠部署到计算资源节点,对节点、服务容器的管理需要一个管理层为系统“出谋划策”。
根据本发明的实施例,所述管理层运用分布式容器集群管理技术,实现资源调度,资源管理,节点监控以及通信功能。
具体的,系统管理层运用分布式容器集群管理技术——Kubernetes,实现资源调度,资源管理,节点监控,通信等功能。Kubernetes可移植性高,可拓展性强,可以实现对服务的高效调度,自我诊断,自我升级等功能,使天基FPGA虚拟化计算服务系统的管理层够更高效的运行。从kubernetes1.8版本开始,提供设备插件框架,包含提供通用设备插件机制和标准的设备API接口。开发者无需修改kubernetes核心代码就可以将自己的硬件设备供kubelet使用。
如图3所示,首先在我们的计算资源节点异构架构SoC FPGA上已实现FPGA逻辑资源虚拟化。ARM上控制程序,完成动态资源池资源表征和管理,驱动程序安装。安装kubernetes组件,部署到相应的节点上,成为插件;节点加入集群时需向集群注册,插件需要向kubelet注册,注册内容要包含自己的endpoint、version、resource_name等。Kubelet连接插件的endpoint,两者采用grpc建立通信,其中一个endpoint与一个插件设备相对应。Kubernetes代码中定义了两个用于插件通信的接口,分别用于插件向kubelet注册,和kubelet向插件索要资源接口等支持信息。Kubelet监听Unix Socket,API版本号和设备名称,当插件有更新变化时,kubelet能获取到插件发来的通知。
由master节点统一管理云内所有的资源节点,收集资源信息,包括运行状态、性能情况。Master节点各组件各司其职,Controller-manager是资源对象自动化控制中心。资源的名称和总数量汇总至API Server,API Server提供集群管理HTTP Rest接口,是对资源进行操作的入口。而Scheduler负责资源调度根据使用该资源pod的创建和删除,做资源可用量的加减法,进而在调度时刻判断是否有满足资源条件的节点。根据不同需求的特点和时限实施服务规划,保证资源的高可用性和负载均衡。指定卫星调度方案,生成相应控制指令。用户通过kubectl管理用具使用kubernetes或者是更加友好的接口、界面上传镜像文件,生成配置文件。
需要说明的是,系统服务层设计基于天基场景,面向广大用户,旨在实现从应用到服务的生成。天基信息服务体系采用“推拉结合”的方式,面向用户来说就是按需部署服务和预定义服务两种方式。第一种方式,用户根据自身需求,将满足系统要求的服务请求通过网络发送至管理层。管理层根据资源占用和剩余现状分配任务,部署服务。第二种方式,系统根据以往用户多次服务记录预定义天基常见服务,并将相应重配置文件存储于系统的非易失性存储介质中。系统可向用户做个性化推荐,当收到用户服务请求或用户订阅该项服务时,即可通过指令完成服务部署。执行业务计算后将结果广播给各用户,形成具有高时效性的服务产品。
需要说明的是,FPGA虚拟化计算服务系统以容器为最小调度单元。每个用户的服务封装为一个docker容器,容器的环境中配置应用运行所需的库类支持。容器增加了服务的可移植性,便于创建和部署应用。Docker容器如图4所示,通过docker统一用户的服务实现方式。系统软件封闭了大量与系统、硬件相关的驱动层的细节,用户无需关注与芯片细节相关的I/O驱动、存储访问、总线架构等工作。为了方便用户进行FPGA开发,只需调用用户软件实现的相关接口。依据系统提供的PL读写端口APIs采用统一的外部接口与用户程序交互。用户依据自身需求,配置服务运行环境,并依据系统提供的可用端口与可用门阵列数目,配置PL与PS的通信方式以及服务响应方式,进行FPGA程序开发,生成相应的业务镜像文件。
需要说明的是,Docker是一个基于Linux容器(LXC)技术的开源的容器引擎,为任何应用创建一个轻量级的、可移植的、自给自足的容器。Docker引擎的基础是LCX技术容器有效地将单个操作系统管理的资源划分为独立的组,以更好地平衡被隔离的组之间资源使用需求的冲突。容器与虚拟化相比,无需任何特殊的解释机制就可以将指令直接在CPU本地运行,避免了指令级模拟和即时编译,同时也不需要准虚拟化和复杂的系统调用替换。Docker容器的出现一定程度上解决了应用部署困难、可移植性的问题。Docker源代码是使用Go语言进行开发的,并且由DotCloud开发商托管到Github平台上。
图5示出了本发明一种天基FPGA虚拟化计算服务方法的流程图。
如图5所示,本发明第二方面还提出一种天基FPGA虚拟化计算服务方法,应用于上述的一种天基FPGA虚拟化计算服务系统,所述方法包括:
S502,接收用户配置好的镜像文件和部署命令;
S504,查询部署服务能够匹配的局部动态重配置模块是否被占用,安排服务的部署或排队;
S506,待成功部署用户服务后,将部署结果反馈用户;
S508,系统计算资源池节点执行计算任务并形成服务产品;
S510,将所述服务产品按需分发给用户。
进一步的,接收用户配置好的镜像文件和部署命令,还包括:
用户将配置好的镜像文件上传至雾卫星节点;
雾卫星节点开放固定的套接字为地址以接收用户的镜像文件与部署命令。
进一步的,系统计算资源池节点执行计算任务并形成服务产品,还包括:
系统计算资源池节点执行计算任务并将携带有效信息的数据传送至云端数据中心;
所述云端数据中心进行数据处理并形成服务产品。
具体的,如图6所示,用户将配置好的镜像文件上传至采用SoC FPGA计算平台的雾卫星节点,或上传至云端再部署到雾卫星节点上。雾卫星节点开放固定的套接字为地址接收用户的镜像与部署命令。在接收用户的部署命令后,系统查询部署服务能够匹配的局部动态重配置模块是否被占用,进而安排服务的部署或排队等待。当系统成功部署用户服务后,将部署结果反馈用户,用户即可获取服务响应结果。星上计算资源节点执行计算任务,如图像传感器采集图像处理业务,将携带有效信息的数据回传至云端数据中心,信息融合处理中心进行数据处理,形成服务产品,通过分发系统按需分发给用户。根据用户需求重新选择回传的通信链路,可不必再将计算结果回传至云端,而由雾卫星节点直接与用户节点通信。与此同时,通信链路应可考虑在动态星间链路、星地链路中选取最优路径,可降低时延、均衡卫星通信链路带宽负载。
本发明第三方面还提出一种计算机可读存储介质,所述计算机可读存储介质中包括一种天基FPGA虚拟化计算服务方法程序,所述天基FPGA虚拟化计算服务方法程序被处理器执行时,实现如上述的一种天基FPGA虚拟化计算服务方法的步骤。
本发明的天基FPGA虚拟化计算服务系统包括:资源层、管理层和服务层,资源层利用局部动态重构技术将FPGA逻辑计算资源虚拟化为计算资源池;管理层用于对所述资源层进行统一的运维和管理,并对用户服务进行调度和部署;服务层用于负责应用封装,提供用户接口,生成服务产品。本发明以SoC FPGA为天基边缘网络的计算资源,并为用户提供了统一的服务接口,通过FPGA动态可重构技术、容器技术和分布式容器集群管理技术三部曲实现FPGA动态虚拟化,让运行在数据中心上的虚拟机实例共享使用同一块或多块FPGA进行运算,促使FPGA资源利用率最大化,并能减少用户排队等候时间,降低业务整体时延,达到为用户提供优质服务的目的。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种天基FPGA虚拟化计算服务系统,其特征在于,所述系统包括:
资源层,利用局部动态重构技术将FPGA逻辑计算资源虚拟化为计算资源池;
管理层,用于对所述资源层进行统一的运维和管理,并对用户服务进行调度和部署;
服务层,用于负责应用封装,提供用户接口,生成服务产品。
2.根据权利要求1所述的一种天基FPGA虚拟化计算服务系统,其特征在于,所述资源层采用ARM+FPGA异构计算架构,ARM和FPGA逻辑计算单元分别置于FPGA芯片的PS和PL两个区域,PS区域包含处理器和存储资源,支持操作系统运行,用于负责控制服务计算任务的分配;PL区域用于负责逻辑运算,其包括静态区域和动态区域,静态区域用于负责构建PS侧软件与PL侧动态区域用户IP沟通的桥梁,动态区域为用户提供计算能力服务的局部动态重配置模块。
3.根据权利要求2所述的一种天基FPGA虚拟化计算服务系统,其特征在于,所述资源层在处理器CPU端定制了用于重构模块配置的控制器PCAP,PCAP使用DMA的方式进行重构数据的传输,且PCAP作为一个硬核模块固化在PS区域。
4.根据权利要求1所述的一种天基FPGA虚拟化计算服务系统,其特征在于,所述管理层运用分布式容器集群管理技术,实现资源调度,资源管理,节点监控以及通信功能。
5.根据权利要求4所述的一种天基FPGA虚拟化计算服务系统,其特征在于,所述管理层根据用户需求和资源占用情况生成业务部署配置文件,运行于云端的管理程序根据调度算法决策,将业务部署在具有FPGA计算资源池的节点上。
6.根据权利要求1所述的一种天基FPGA虚拟化计算服务系统,其特征在于,所述服务层采用容器封装技术,将用户的应用封装为轻量、安全的docker容器,从用户需求出发,采用主动、被动结合的方式为用户提供服务,每个用户的服务封装为一个Docker容器,容器的环境中配置应用运行所需的库类支持。
7.一种天基FPGA虚拟化计算服务方法,应用于权利要求1至6任一项所述的一种天基FPGA虚拟化计算服务系统,其特征在于,所述方法包括:
接收用户配置好的镜像文件和部署命令;
查询部署服务能够匹配的局部动态重配置模块是否被占用,安排服务的部署或排队;
待成功部署用户服务后,将部署结果反馈用户;
系统计算资源池节点执行计算任务;
云端数据中心形成服务产品并按需分发给用户。
8.根据权利要求7所述的一种天基FPGA虚拟化计算服务方法,其特征在于,接收用户配置好的镜像文件和部署命令,还包括:
用户将配置好的镜像文件上传至雾卫星节点;
雾卫星节点开放固定的套接字为地址以接收用户的镜像文件与部署命令。
9.根据权利要求7所述的一种天基FPGA虚拟化计算服务方法,其特征在于,系统计算资源池节点执行计算任务并形成服务产品,还包括:
系统计算资源池节点执行计算任务并将携带有效信息的数据传送至云端数据中心;
所述云端数据中心进行数据处理并形成服务产品。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中包括一种天基FPGA虚拟化计算服务方法程序,所述天基FPGA虚拟化计算服务方法程序被处理器执行时,实现如权利要求7至9中任一项所述的一种天基FPGA虚拟化计算服务方法的步骤。
CN201911000259.5A 2019-10-21 2019-10-21 天基fpga虚拟化计算服务系统、方法和可读存储介质 Active CN110719206B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911000259.5A CN110719206B (zh) 2019-10-21 2019-10-21 天基fpga虚拟化计算服务系统、方法和可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911000259.5A CN110719206B (zh) 2019-10-21 2019-10-21 天基fpga虚拟化计算服务系统、方法和可读存储介质

Publications (2)

Publication Number Publication Date
CN110719206A true CN110719206A (zh) 2020-01-21
CN110719206B CN110719206B (zh) 2022-05-03

Family

ID=69213937

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911000259.5A Active CN110719206B (zh) 2019-10-21 2019-10-21 天基fpga虚拟化计算服务系统、方法和可读存储介质

Country Status (1)

Country Link
CN (1) CN110719206B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111813560A (zh) * 2020-08-13 2020-10-23 中国人民解放军国防科技大学 一种基于云池端的智能天基系统体系
CN111858463A (zh) * 2020-07-17 2020-10-30 上海科技大学 一种基于dvfs的优化重配置算法
CN112214282A (zh) * 2020-10-12 2021-01-12 成都精灵云科技有限公司 分布式系统及支持接口配置的分布式系统
CN112328402A (zh) * 2020-11-25 2021-02-05 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 高效能自适应天基计算平台的架构及其实现方法
CN112433823A (zh) * 2020-12-08 2021-03-02 上海寒武纪信息科技有限公司 动态虚拟化物理卡的设备及方法
CN113094246A (zh) * 2021-03-30 2021-07-09 之江实验室 一种边缘异构计算环境仿真系统
CN113608861A (zh) * 2021-06-25 2021-11-05 西安空间无线电技术研究所 一种软件化载荷计算资源虚拟化分配方法及装置
CN113973049A (zh) * 2021-10-13 2022-01-25 中国科学院计算技术研究所 一种fpga集群管理与部署比特流的方法
CN114371938A (zh) * 2022-01-10 2022-04-19 中国人民解放军国防科技大学 天基智能网联边缘计算框架
CN116107726A (zh) * 2023-04-13 2023-05-12 上海思尔芯技术股份有限公司 Fpga资源调度方法、装置、设备以及存储介质
CN114500579B (zh) * 2021-12-27 2024-03-26 西安空间无线电技术研究所 一种基于订阅发布的天基计算自主服务发现及协同方法
CN118278695A (zh) * 2024-04-22 2024-07-02 中国科学院国家空间科学中心 基于态势及需求混合驱动的天基资源能力虚拟化方法和系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102739771A (zh) * 2012-04-18 2012-10-17 上海和辰信息技术有限公司 一种支持服务融合的云应用集成管理平台和方法
CN103995939A (zh) * 2014-05-30 2014-08-20 广东顺德中山大学卡内基梅隆大学国际联合研究院 一种基于arm与fpga的动态可重构嵌入式系统
CN104506620A (zh) * 2014-12-23 2015-04-08 西安电子科技大学 一种可扩展的自动化计算服务平台及其构建方法
CN106776002A (zh) * 2016-11-15 2017-05-31 华为技术有限公司 Fpga的虚拟化硬件架构的通信方法及装置
CN207780770U (zh) * 2017-10-30 2018-08-28 西南民族大学 基于fpga的局部重配置系统
CN109818669A (zh) * 2019-01-18 2019-05-28 中国科学院空间应用工程与技术中心 一种基于虚拟化的卫星业务处理方法、系统和存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102739771A (zh) * 2012-04-18 2012-10-17 上海和辰信息技术有限公司 一种支持服务融合的云应用集成管理平台和方法
CN103995939A (zh) * 2014-05-30 2014-08-20 广东顺德中山大学卡内基梅隆大学国际联合研究院 一种基于arm与fpga的动态可重构嵌入式系统
CN104506620A (zh) * 2014-12-23 2015-04-08 西安电子科技大学 一种可扩展的自动化计算服务平台及其构建方法
CN106776002A (zh) * 2016-11-15 2017-05-31 华为技术有限公司 Fpga的虚拟化硬件架构的通信方法及装置
CN207780770U (zh) * 2017-10-30 2018-08-28 西南民族大学 基于fpga的局部重配置系统
CN109818669A (zh) * 2019-01-18 2019-05-28 中国科学院空间应用工程与技术中心 一种基于虚拟化的卫星业务处理方法、系统和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
孙宝三等: "面向服务的天基计算技术架构研究", 《中国电子科学研究院学报》 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111858463A (zh) * 2020-07-17 2020-10-30 上海科技大学 一种基于dvfs的优化重配置算法
CN111858463B (zh) * 2020-07-17 2024-04-02 上海科技大学 一种基于dvfs的优化重配置方法
CN111813560A (zh) * 2020-08-13 2020-10-23 中国人民解放军国防科技大学 一种基于云池端的智能天基系统体系
CN111813560B (zh) * 2020-08-13 2023-04-07 中国人民解放军国防科技大学 一种基于云池端的智能天基系统体系
CN112214282A (zh) * 2020-10-12 2021-01-12 成都精灵云科技有限公司 分布式系统及支持接口配置的分布式系统
CN112328402A (zh) * 2020-11-25 2021-02-05 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 高效能自适应天基计算平台的架构及其实现方法
CN112433823A (zh) * 2020-12-08 2021-03-02 上海寒武纪信息科技有限公司 动态虚拟化物理卡的设备及方法
CN113094246B (zh) * 2021-03-30 2022-03-25 之江实验室 一种边缘异构计算环境仿真系统
CN113094246A (zh) * 2021-03-30 2021-07-09 之江实验室 一种边缘异构计算环境仿真系统
CN113608861A (zh) * 2021-06-25 2021-11-05 西安空间无线电技术研究所 一种软件化载荷计算资源虚拟化分配方法及装置
CN113608861B (zh) * 2021-06-25 2023-11-10 西安空间无线电技术研究所 一种软件化载荷计算资源虚拟化分配方法及装置
CN113973049A (zh) * 2021-10-13 2022-01-25 中国科学院计算技术研究所 一种fpga集群管理与部署比特流的方法
CN114500579B (zh) * 2021-12-27 2024-03-26 西安空间无线电技术研究所 一种基于订阅发布的天基计算自主服务发现及协同方法
CN114371938A (zh) * 2022-01-10 2022-04-19 中国人民解放军国防科技大学 天基智能网联边缘计算框架
CN114371938B (zh) * 2022-01-10 2024-02-02 中国人民解放军国防科技大学 天基智能网联边缘计算框架
CN116107726A (zh) * 2023-04-13 2023-05-12 上海思尔芯技术股份有限公司 Fpga资源调度方法、装置、设备以及存储介质
CN116107726B (zh) * 2023-04-13 2023-07-18 上海思尔芯技术股份有限公司 Fpga资源调度方法、装置、设备以及存储介质
CN118278695A (zh) * 2024-04-22 2024-07-02 中国科学院国家空间科学中心 基于态势及需求混合驱动的天基资源能力虚拟化方法和系统

Also Published As

Publication number Publication date
CN110719206B (zh) 2022-05-03

Similar Documents

Publication Publication Date Title
CN110719206B (zh) 天基fpga虚拟化计算服务系统、方法和可读存储介质
US10467725B2 (en) Managing access to a resource pool of graphics processing units under fine grain control
US10120668B2 (en) Optimizing resource usage and automating a development and operations deployment pipeline
US11182717B2 (en) Methods and systems to optimize server utilization for a virtual data center
US11579908B2 (en) Containerized workload scheduling
US11740921B2 (en) Coordinated container scheduling for improved resource allocation in virtual computing environment
US20190227781A1 (en) Methods and systems that carry out live migration of multi-node applications
CN113971095A (zh) 扩展进程中的kubernetes应用程序接口
KR20210096259A (ko) 컴퓨팅 리소스 할당
US11385887B2 (en) Multi-mission configurable spacecraft system
US12021898B2 (en) Processes and systems that translate policies in a distributed computing system using a distributed indexing engine
CN114168255A (zh) 容器云平台中异构指令集容器的运行方法和装置
WO2020234792A1 (en) An fpga-as-a-service system for accelerated serverless computing
US20220114055A1 (en) Transparent dynamic reassembly of computing resource compositions
US20230004414A1 (en) Automated instantiation and management of mobile networks
US11184244B2 (en) Method and system that determines application topology using network metrics
US20170003991A1 (en) Host-gateway-facilitated aggregation of host-computer clusters
CN114281444B (zh) 一种实施云桌面客户端的布置方法
Pemberton et al. The serverless data center: Hardware disaggregation meets serverless computing
US11057263B2 (en) Methods and subsystems that efficiently distribute VM images in distributed computing systems
CN114579250A (zh) 一种构建虚拟集群的方法、装置及存储介质
Pham et al. Moving compute towards data in heterogeneous multi-FPGA clusters using partial reconfiguration and I/O virtualisation
CN116841731A (zh) 一种fpga虚拟化资源调度系统及方法
CN114253655A (zh) 基于mips64指令集的安全容器隔离方法和装置
CN114281443B (zh) 一种云桌面系统及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant