WO2020143520A1 - 基于云的fpga控制数据的配置系统和方法以及电子设备 - Google Patents

基于云的fpga控制数据的配置系统和方法以及电子设备 Download PDF

Info

Publication number
WO2020143520A1
WO2020143520A1 PCT/CN2020/070057 CN2020070057W WO2020143520A1 WO 2020143520 A1 WO2020143520 A1 WO 2020143520A1 CN 2020070057 W CN2020070057 W CN 2020070057W WO 2020143520 A1 WO2020143520 A1 WO 2020143520A1
Authority
WO
WIPO (PCT)
Prior art keywords
control data
fpga
cloud
storage module
module
Prior art date
Application number
PCT/CN2020/070057
Other languages
English (en)
French (fr)
Inventor
刘翔
龙欣
Original Assignee
阿里巴巴集团控股有限公司
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 阿里巴巴集团控股有限公司 filed Critical 阿里巴巴集团控股有限公司
Priority to US17/419,810 priority Critical patent/US11593022B2/en
Priority to EP20738140.1A priority patent/EP3910463A4/en
Publication of WO2020143520A1 publication Critical patent/WO2020143520A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/1776Structural details of configuration resources for memories
    • 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/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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/28DMA
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the invention relates to the technical field of cloud services, in particular to a cloud-based FPGA control data configuration system and method, and electronic equipment.
  • Field-programmable gate array (Field-Programmable Gate Array; hereinafter referred to as: FPGA) is a device that stores control data in a latched manner.
  • FPGA includes two kinds of data: cache data in the memory (DDR) outside the FPGA and control data (configuration parameters) of each processing unit in the user logic inside the FPGA.
  • DDR memory-mapped I/O
  • MMIO memory-mapped I/O
  • Embodiments of the present invention provide a cloud-based FPGA control data configuration system and method, and electronic equipment to solve the defect that FPGA technology cannot be thermally migrated in the prior art.
  • an embodiment of the present invention provides a cloud-based FPGA control data configuration system, including: a control module provided inside the FPGA, and a storage module provided outside the FPGA, wherein,
  • the storage module is used to store control data sent by the cloud
  • the control module is used to obtain the control data from the storage module and configure the corresponding processing unit in the FPGA according to the control data.
  • An embodiment of the present invention also provides a cloud-based FPGA control data configuration method, including:
  • the storage module installed outside the FPGA stores the control data sent by the cloud
  • the control module provided inside the FPGA obtains the control data from the storage module, and configures the corresponding processing unit in the FPGA according to the control data.
  • An embodiment of the present invention also provides an electronic device, including:
  • a processor configured to run the program stored in the memory for:
  • the storage module installed outside the FPGA stores the control data sent by the cloud
  • the control module provided inside the FPGA obtains the control data from the storage module, and configures the corresponding processing unit in the FPGA according to the control data.
  • the cloud-based FPGA control data configuration system and method and electronic device provided by the embodiments of the present invention, by setting a control module inside the FPGA, to obtain control data from a storage module external to the FPGA to configure corresponding processing units in the FPGA
  • the control data stored in the external storage module can be directly migrated according to the ordinary data migration method, thereby realizing the hot migration of FPGA data.
  • it facilitates the operation and maintenance of the system; on the other hand, it can avoid the reconfiguration of each processing unit after each FPGA migration, thereby reducing the workload on the user side and improving the user experience.
  • FIG. 1 is a system block diagram of an embodiment of a cloud-based FPGA control data configuration system provided by the present invention
  • FIG. 2 is a system block diagram of another embodiment of a cloud-based FPGA control data configuration system provided by the present invention.
  • FIG. 3 is a system block diagram of a specific embodiment of a cloud-based FPGA control data configuration system provided by the present invention.
  • FIG. 4 is a flowchart of an embodiment of a cloud-based FPGA control data configuration method provided by the present invention.
  • FIG. 5 is a schematic structural diagram of an embodiment of an electronic device provided by the present invention.
  • the user side In existing FPGA cloud products, the user side generally sends control data directly to each processing unit in the user logic within the FPGA through the cloud to configure parameters.
  • the control data is distributed and latched in each register in the FPGA, when the FPGA data is migrated, the control data in each register cannot be obtained in real time, so the FPGA data cannot be hot migrated.
  • this application proposes a cloud-based FPGA control data configuration scheme.
  • the main principle is: a control module for configuring control data to each processing unit is provided inside the FPGA.
  • the control data is stored in the storage module external to the FPGA through the cloud, and the control module obtains the control data from the external storage module and configures it to each processing unit.
  • the control data configuration method when FPGA data migration is performed, the control data stored in the external storage module can be directly migrated according to the ordinary data migration method, thereby achieving hot migration of FPGA data.
  • it facilitates the operation and maintenance of the system; on the other hand, it can avoid the reconfiguration of each processing unit after each FPGA migration, so as to reduce the workload on the user side and improve the user experience.
  • FIG. 1 is a system block diagram of an embodiment of a cloud-based FPGA control data configuration system provided by the present invention.
  • the cloud-based FPGA control data configuration system provided by an embodiment of the present invention includes: a control module 11 provided inside the FPGA and a storage module 12 provided outside the FPGA.
  • the storage module 12 is used to store the control data sent by the cloud; the control module 11 is used to obtain the control data from the storage module 12 and configure the corresponding processing unit in the FPGA according to the control data.
  • the user when configuring for an FPGA that stores control data in a latched manner, the user can first store the control data in the storage module 12 outside the FPGA through the cloud, and then the The control module 11 reads control data from the storage module 12 and configures each processing unit in the FPGA according to the obtained control data.
  • the cloud-based FPGA control data configuration system provided by the embodiment of the present invention, by setting a control module inside the FPGA, to obtain control data from a storage module outside the FPGA, to configure the corresponding processing unit in the FPGA, so that the FPGA When data is migrated, the control data stored in the external storage module can be directly migrated according to the ordinary data migration method, thereby realizing the hot migration of FPGA data. On the one hand, it facilitates the operation and maintenance of the system; on the other hand, it can avoid the reconfiguration of each processing unit after each FPGA migration, thereby reducing the workload on the user side and improving the user experience.
  • FIG. 2 is a system block diagram of another embodiment of a cloud-based FPGA control data configuration system provided by the present invention.
  • the control module 11 can also be used to monitor the storage module 12 in real time, obtain incremental data of control data from the storage module 12, and according to the increase of the control data
  • the volume data configures the corresponding processing unit.
  • control module 11 can monitor the change of the control data in the storage module 12 in real time.
  • control data When the control data generates incremental data, the control module 11 obtains the incremental data of the control data from the storage module 12 in real time. And configure the corresponding processing unit according to the incremental data.
  • control data in the embodiment of the present invention may include: register address, register value, and attribute identification.
  • control data may be set in a commonly used register configuration format.
  • the register address is the space offset address of the register in the processing unit inside the FPGA
  • the register value is the value configured to the corresponding register
  • the attribute identifier is used to identify the read-write attribute configured to the corresponding register.
  • the entire space for storing control data can be divided into a fixed number of address combinations, and the user can decide to use one or all of them according to actual needs.
  • the cloud-based FPGA control data configuration system may further include: a direct memory access (Direct Memory Access; DMA for short) module 21 provided inside the FPGA.
  • the DMA module 21 can be used to send control data sent by the user through the cloud to the storage module, so as to realize high-speed data transmission.
  • the cloud-based FPGA control data configuration system provided by the embodiment of the present invention, by setting a control module inside the FPGA, to obtain control data from a storage module outside the FPGA, to configure the corresponding processing unit in the FPGA, so that the FPGA When data is migrated, the control data stored in the external storage module can be directly migrated according to the ordinary data migration method, thereby realizing the hot migration of FPGA data. On the one hand, it facilitates the operation and maintenance of the system; on the other hand, it can avoid the reconfiguration of each processing unit after each FPGA migration, thereby reducing the workload on the user side and improving the user experience.
  • the cloud-based FPGA control data configuration system provided by an embodiment of the present invention includes: a control module 31 provided inside the FPGA (for example, user logic that can be provided in the FPGA static area) and a control module 31 provided outside the FPGA DDR memory module 32, where the DDR memory module 32 is used to store the control data sent by the cloud; the control module 31 is used to obtain the control data from the DDR memory module 32, and according to the control data to the corresponding processing unit in the FPGA user logic To configure.
  • a control module 31 provided inside the FPGA (for example, user logic that can be provided in the FPGA static area) and a control module 31 provided outside the FPGA DDR memory module 32, where the DDR memory module 32 is used to store the control data sent by the cloud; the control module 31 is used to obtain the control data from the DDR memory module 32, and according to the control data to the corresponding processing unit in the FPGA user logic To configure.
  • the user when configuring for each processing unit in the user logic inside the FPGA, the user can first store the control data in the DDR memory module 32 outside the FPGA through the cloud, and then the control provided inside the FPGA
  • the module 31 reads the control data from the DDR memory module 32, and configures each processing unit in the user logic inside the FPGA according to the obtained control data.
  • the control module 31 can configure the control data to the corresponding processing unit through the configuration bus inside the user logic.
  • the solution provided by the embodiment of the present invention can be directly deployed in the existing FGPA static area structure, and does not conflict with the existing MMIO mode.
  • control module 31 can also be used to monitor the DDR memory module 32 in real time, obtain the incremental data of the control data from the DDR memory module 32, and configure the corresponding processing unit in the user logic according to the incremental data of the control data .
  • control module 31 can monitor the change of the control data in the DDR memory module 32 in real time.
  • control data When the control data generates incremental data, the control module 31 obtains the increment of the control data from the DDR memory module 32 in real time Data, and configure the corresponding processing unit in the user logic according to the incremental data.
  • control data may be set to a commonly used register configuration format, and the control data may include: register address, register value, and attribute identification, where the register address is a space offset address of the register in the processing unit , The register value is the value configured to the corresponding register, and the attribute identifier is used to identify the read-write attribute configured to the corresponding register.
  • the entire space for storing control data can be divided into a fixed number of address combinations, and the user can decide to use one or all of them according to actual needs.
  • the FPGA can divide the storage area in the DDR storage module 32. Among them, a small area is used for buffering control data. Compared with the DDR memory module 32, the area reserved for the control data in the DDR memory module 32 is negligible, and does not affect the user logic's requirement for the capacity of the DDR memory module 32.
  • the cloud-based FPGA control data configuration system may further include: a DMA module 33 provided inside the FPGA, and the DMA module 33 may be used to send control data sent by a user through the cloud to the DDR
  • the storage module 32 implements high-speed data transmission.
  • the cloud can be connected to the DMA module 33 through a high-speed peripheral component interconnect (Peripheral Component Interconnect Express; hereinafter referred to as: PCIe) interface, and connected to the DDR memory module 32 outside the FPGA through the DMA module 33 to form a data transmission channel.
  • PCIe peripheral component interconnect Express
  • control data is transmitted to the DDR memory module 32; on the other hand, it can also be used to read relevant data from the DDR memory module 32 during data migration.
  • control data and cache data stored in the DDR storage module 32 are migrated along with the virtual machine (VM), and functions such as downtime backup and load balancing can be realized.
  • VM virtual machine
  • the cloud-based FPGA control data configuration system provided by the embodiment of the present invention, by setting a control module inside the FPGA, to obtain control data from a storage module outside the FPGA, to configure the corresponding processing unit in the FPGA, so that the FPGA When data is migrated, the control data stored in the external storage module can be directly migrated according to the ordinary data migration method, thereby realizing the hot migration of FPGA data. On the one hand, it facilitates the operation and maintenance of the system; on the other hand, it can avoid the reconfiguration of each processing unit after each FPGA migration, thereby reducing the workload on the user side and improving the user experience.
  • FIG. 4 is a flowchart of an embodiment of a cloud-based FPGA control data configuration method provided by the present invention. The method may be executed by the cloud-based FPGA control data configuration system. As shown in FIG. 4, the cloud-based FPGA control data configuration method includes the following steps:
  • a storage module provided outside the FPGA stores control data sent by the cloud.
  • the storage module may receive and store the control data sent by the cloud through the DMA module to achieve high-speed data transmission.
  • the control module provided inside the FPGA obtains control data from the storage module, and configures the corresponding processing unit in the FPGA according to the control data.
  • the user when configuring for an FPGA that stores control data in a latched manner, the user can first store the control data in a storage module external to the FPGA through the cloud, and then the control provided inside the FPGA The module reads control data from the storage module 12 and configures each processing unit in the FPGA according to the obtained control data.
  • control module can also monitor the storage module in real time, obtain the incremental data of the control data from the storage module, and configure the corresponding processing unit according to the incremental data of the control data.
  • control module monitors the change of the control data in the storage module in real time.
  • control data When the control data generates incremental data, the control module obtains the incremental data of the control data from the storage module in real time, and according to the increase The volume data configures the corresponding processing unit.
  • control data can be set to a commonly used register configuration format. It can include: register address, register value and attribute identification, where the register address is the space offset address of the register in the processing unit, the register value is the value configured to the corresponding register, and the attribute identification is used to identify the configuration to the corresponding register Read and write properties.
  • register address is the space offset address of the register in the processing unit
  • the register value is the value configured to the corresponding register
  • the attribute identification is used to identify the configuration to the corresponding register Read and write properties.
  • the entire space for storing control data can be divided into a fixed number of address combinations, and the user can decide to use one or all of them according to actual needs.
  • the cloud-based FPGA control data configuration method provided by an embodiment of the present invention, by setting a control module inside the FPGA to obtain control data from a storage module outside the FPGA, to configure the corresponding processing unit in the FPGA, so that the FPGA When data is migrated, the control data stored in the external storage module can be directly migrated according to the ordinary data migration method, thereby realizing the hot migration of FPGA data.
  • it facilitates the operation and maintenance of the system; on the other hand, it can avoid the reconfiguration of each processing unit after each FPGA migration, thereby reducing the workload on the user side and improving the user experience.
  • FIG. 5 is a schematic structural diagram of an embodiment of an electronic device provided by the present invention. As shown in FIG. 5, the electronic device includes a memory 51 and a processor 52.
  • the memory 51 is used to store programs. In addition to the above-mentioned programs, the memory 51 may be configured to store various other data to support operations on the electronic device. Examples of these data include instructions for any application or method for operating on the electronic device, contact data, phone book data, messages, pictures, videos, etc.
  • the memory 51 may be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read only memory (EEPROM), erasable and removable Programmable read only memory (EPROM), programmable read only memory (PROM), read only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.
  • SRAM static random access memory
  • EEPROM electrically erasable programmable read only memory
  • EPROM erasable and removable Programmable read only memory
  • PROM programmable read only memory
  • ROM read only memory
  • magnetic memory magnetic memory
  • flash memory magnetic disk or optical disk.
  • the processor 52 is coupled to the memory 51 and executes the program stored in the memory 51 for:
  • the storage module installed outside the FPGA stores the control data sent by the cloud
  • the control module provided inside the FPGA obtains control data from the storage module, and configures the corresponding processing unit in the FPGA according to the control data.
  • the electronic device may further include: a communication component 53, a power supply component 54, an audio component 55, a display 56, and other components.
  • FIG. 5 only schematically shows some components, and does not mean that the electronic device includes only the components shown in FIG. 5.
  • the communication component 53 is configured to facilitate wired or wireless communication between the electronic device and other devices. Electronic devices can access wireless networks based on communication standards, such as WiFi, 2G or 3G, or a combination thereof. In an exemplary embodiment, the communication component 53 receives a broadcast signal or broadcast related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 53 further includes a near field communication (NFC) module to facilitate short-range communication.
  • NFC near field communication
  • the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
  • RFID radio frequency identification
  • IrDA infrared data association
  • UWB ultra wideband
  • Bluetooth Bluetooth
  • the power supply component 54 provides power for various components of the electronic device.
  • the power supply component 54 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for electronic devices.
  • the audio component 55 is configured to output and/or input audio signals.
  • the audio component 55 includes a microphone (MIC).
  • the microphone When the electronic device is in an operation mode, such as a call mode, a recording mode, and a voice recognition mode, the microphone is configured to receive an external audio signal.
  • the received audio signal may be further stored in the memory 51 or transmitted via the communication component 53.
  • the audio component 55 further includes a speaker for outputting audio signals.
  • the display 56 includes a screen, which may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user.
  • the touch panel includes one or more touch sensors to sense touch, swipe, and gestures on the touch panel. The touch sensor may not only sense the boundary of the touch or sliding action, but also detect the duration and pressure related to the touch or sliding operation.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种基于云的FPGA控制数据的配置系统和方法以及电子设备。该系统包括:设置于FPGA内部的控制模块(11),和设置于FPGA外部的存储模块(12),其中,存储模块(12)用于,存储云端发送的控制数据;控制模块(11)用于,从存储模块(12)中获取控制数据,并根据控制数据对FPGA中相应的处理单元进行配置。通过在FPGA内部设置控制模块(11),以从FPGA外部的存储模块(12)中获取控制数据,以对FPGA中相应处理单元进行配置,使得在进行FPGA数据迁移时,可以按照普通数据的迁移方式,直接将存储于外部存储模块(12)中的控制数据进行迁移,从而实现FPGA数据的热迁移。

Description

基于云的FPGA控制数据的配置系统和方法以及电子设备
本申请要求2019年01月07日递交的申请号为201910012890.0、发明名称为“基于云的FPGA控制数据的配置系统和方法以及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及云服务技术领域,尤其涉及一种基于云的FPGA控制数据的配置系统和方法以及电子设备。
背景技术
现场可编程门阵列(Field-Programmable Gate Array;以下简称:FPGA)是一种以锁存方式存储控制数据的器件。
在FPGA云产品中,FPGA包括两种数据:FPGA外部的存储器(DDR)中的缓存数据和FPGA内部的用户逻辑中各处理单元的控制数据(配置参数)。在现有技术中,用户侧一般通过内存映射I/O(Memory-mapped I/O;以下简称:MMIO)向用户逻辑中各处理单元发送控制数据,以进行参数配置,控制数据以寄存器锁存的形式存在于各处理单元中。
发明人在实现本发明的过程中,发现现有技术至少存在如下问题:在FPGA中,由于控制数据分散锁存于器件内部的各寄存器中,在进行器件数据迁移时,无法实时获取各寄存器中的控制数据,因此,无法实现FPGA数据的热迁移。
发明内容
本发明实施例提供一种基于云的FPGA控制数据的配置系统和方法以及电子设备,以解决现有技术中无法实现FPGA数据热迁移的缺陷。
为达到上述目的,本发明实施例提供了一种基于云的FPGA控制数据的配置系统,包括:设置于FPGA内部的控制模块,和设置于所述FPGA外部的存储模块,其中,
所述存储模块用于,存储云端发送的控制数据;
所述控制模块用于,从所述存储模块中获取所述控制数据,并根据所述控制数据对所述FPGA中相应的处理单元进行配置。
本发明实施例还提供了一种基于云的FPGA控制数据的配置方法,包括:
设置于FPGA外部的存储模块存储云端发送的控制数据;
设置于所述FPGA内部的控制模块从所述存储模块中获取所述控制数据,并根据所述控制数据对所述FPGA中相应的处理单元进行配置。
本发明实施例还提供了一种电子设备,包括:
存储器,用于存储程序;
处理器,用于运行所述存储器中存储的所述程序,以用于:
设置于FPGA外部的存储模块存储云端发送的控制数据;
设置于所述FPGA内部的控制模块从所述存储模块中获取所述控制数据,并根据所述控制数据对所述FPGA中相应的处理单元进行配置。
本发明实施例提供的基于云的FPGA控制数据的配置系统和方法以及电子设备,通过在FPGA内部设置控制模块,以从FPGA外部的存储模块中获取控制数据,以对FPGA中相应处理单元进行配置,使得在进行FPGA数据迁移时,可以按照普通数据的迁移方式,直接将存储于外部存储模块中的控制数据进行迁移,从而实现FPGA数据的热迁移。一方面,便于系统的运行维护;另一方面,能够避免每次FPGA迁移后对各处理单元的重新配置,从而减少了用户侧的工作量,提高了用户体验。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明提供的基于云的FPGA控制数据的配置系统一个实施例的系统框图;
图2为本发明提供的基于云的FPGA控制数据的配置系统另一个实施例的系统框图;
图3为本发明提供的基于云的FPGA控制数据的配置系统具体实施例的系统框图;
图4为本发明提供的基于云的FPGA控制数据的配置方法实施例的流程图;
图5为本发明提供的电子设备实施例的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在现有的FPGA云产品中,用户侧一般通过云端直接向FPGA内部用户逻辑中的各处理单元发送控制数据,以进行参数配置。但是,由于控制数据分散锁存于FPGA内部的各个寄存器中,在进行FPGA数据迁移时,无法实时获取各寄存器中的控制数据,因此,无法实现FPGA数据的热迁移。
针对现有技术的缺陷,本申请提出了一种基于云的FPGA控制数据的配置方案,其主要原理是:在FPGA内部设置用于向各处理单元配置控制数据的控制模块,当用户向该FPGA配置控制数据时,通过云端将控制数据存储于该FPGA外部的存储模块中,由控制模块从外部存储模块中获取控制数据并配置到各处理单元。采用上述控制数据的配置方式,在进行FPGA数据迁移时,则可以按照普通数据的迁移方式,直接将存储于外部存储模块中的控制数据进行迁移,从而实现FPGA数据的热迁移。一方面,便于系统的运行维护;另一方面,能够避免每次FPGA迁移后对各处理单元的重新配置,以减少了用户侧的工作量,提高用户体验。
上述实施例是对本发明实施例的技术原理的说明,下面通过多个实施例来进一步对本发明实施例具体技术方案进行详细描述。
实施例一
图1为本发明提供的基于云的FPGA控制数据的配置系统一个实施例的系统框图。如图1所示,本发明实施例提供的基于云的FPGA控制数据的配置系统包括:设置于FPGA内部的控制模块11和设置于FPGA外部的存储模块12。
其中,存储模块12用于存储云端发送的控制数据;控制模块11用于从存储模块12中获取控制数据,并根据该控制数据对FPGA中相应的处理单元进行配置。
在本发明实施例中,在针对以锁存的方式存储控制数据的FPGA进行配置时,用户可以首先通过云端将控制数据存储于该FPGA外部的存储模块12中,然后由设置于该FPGA内部的控制模块11从存储模块12中读取控制数据,并根据获取到的控制数据对该FPGA中的各处理单元进行配置。
本发明实施例提供的基于云的FPGA控制数据的配置系统,通过在FPGA内部设置控制模块,以从FPGA外部的存储模块中获取控制数据,以对FPGA中相应处理单元进 行配置,使得在进行FPGA数据迁移时,可以按照普通数据的迁移方式,直接将存储于外部存储模块中的控制数据进行迁移,从而实现FPGA数据的热迁移。一方面,便于系统的运行维护;另一方面,能够避免每次FPGA迁移后对各处理单元的重新配置,从而减少了用户侧的工作量,提高了用户体验。
实施例二
图2为本发明提供的基于云的FPGA控制数据的配置系统另一个实施例的系统框图。如图2所示,在上述图1所示实施例的基础上,控制模块11还可以用于实时监控存储模块12,从存储模块12中获取控制数据的增量数据,并根据控制数据的增量数据对相应的处理单元进行配置。
在本发明实施例中,控制模块11可以实时监控存储模块12中的控制数据的变化,当控制数据产生增量数据时,控制模块11实时地从存储模块12中获取控制数据的增量数据,并根据该增量数据对相应的处理单元进行配置。
进一步地,本发明实施例中的控制数据可以包括:寄存器地址、寄存器值以及属性标识。
在本发明实施例中,控制数据可以设置为常用的寄存器配置格式。其中,寄存器地址为FPGA内部的处理单元中的寄存器的空间偏移地址,寄存器值为向相应的寄存器配置的值,属性标识用于标识向相应的寄存器配置的读写属性。为了方便管理,可以将用于存储控制数据的整个空间划分为固定数目的地址组合,用户可以根据实际需要决定使用其中的一段或者全部。
更进一步地,本发明实施例提供的基于云的FPGA控制数据的配置系统还可以包括:设置于FPGA内部的直接内存存取(Direct Memory Access;以下简称:DMA)模块21。该DMA模块21可以用于将用户通过云端发送的控制数据发送至存储模块,以实现数据的高速传输。
本发明实施例提供的基于云的FPGA控制数据的配置系统,通过在FPGA内部设置控制模块,以从FPGA外部的存储模块中获取控制数据,以对FPGA中相应处理单元进行配置,使得在进行FPGA数据迁移时,可以按照普通数据的迁移方式,直接将存储于外部存储模块中的控制数据进行迁移,从而实现FPGA数据的热迁移。一方面,便于系统的运行维护;另一方面,能够避免每次FPGA迁移后对各处理单元的重新配置,从而减少了用户侧的工作量,提高了用户体验。
实施例三
图3为本发明提供的基于云的FPGA控制数据的配置系统具体实施例的系统框图。如图3所示,本发明实施例提供的基于云的FPGA控制数据的配置系统包括:设置于FPGA内部(例如,可以设置于FPGA静态区域中的用户逻辑)的控制模块31和设置于FPGA外部的DDR存储模块32,其中,DDR存储模块32用于存储云端发送的控制数据;控制模块31用于从DDR存储模块32中获取控制数据,并根据控制数据对FPGA的用户逻辑中相应的处理单元进行配置。
在本发明实施例中,在针对FPGA内部用户逻辑中各处理单元的进行配置时,用户可以首先通过云端将控制数据存储于FPGA外部的DDR存储模块32中,然后由设置于该FPGA内部的控制模块31从DDR存储模块32中读取控制数据,并根据获取到的控制数据对该FPGA内部用户逻辑中的各处理单元进行配置。控制模块31可以通过用户逻辑内部的配置总线将控制数据配置到相应的处理单元。本发明实施例提供的方案可以直接部署于现有的FGPA静态区域结构中,与现有的MMIO方式不产生冲突。
进一步地,控制模块31还可以用于实时监控DDR存储模块32,从该DDR存储模块32中获取控制数据的增量数据,并根据控制数据的增量数据对用户逻辑中相应的处理单元进行配置。
在本发明实施例中,控制模块31可以实时监控DDR存储模块32中的控制数据的变化,当控制数据产生增量数据时,控制模块31实时地从DDR存储模块32中获取控制数据的增量数据,并根据该增量数据对用户逻辑中相应的处理单元进行配置。
具体地,在本发明实施例中,控制数据可以设置为常用的寄存器配置格式,控制数据可以包括:寄存器地址、寄存器值以及属性标识,其中,寄存器地址为处理单元中的寄存器的空间偏移地址,寄存器值为向相应的寄存器配置的值,属性标识用于标识向相应的寄存器配置的读写属性。为了方便管理,可以将用于存储控制数据的整个空间划分为固定数目的地址组合,用户可以根据实际需要决定使用其中的一段或者全部。
FPGA可以对DDR存储模块32中的存储区域进行划分。其中,一小块区域用于缓存控制数据。DDR存储模块32内部预留给控制数据的区域相较于DDR存储模块32整个空间可以忽略不计,不会影响用户逻辑对DDR存储模块32容量大小的需求。
更进一步地,本发明实施例提供的基于云的FPGA控制数据的配置系统还可以包括:设置于FPGA内部的DMA模块33,该DMA模块33可以用于将用户通过云端发送的控制数据发送至DDR存储模块32,以实现数据的高速传输。云端可以通过高速外围组件互联(Peripheral Component Interconnect Express;以下简称:PCIe)接口与DMA模块 33连接,通过DMA模块33与FPGA外部的DDR存储模块32连接,形成数据传输通道,一方面,在配置控制数据时,向DDR存储模块32传输控制数据;另一方面,还可以在数据迁移时,用于从DDR存储模块32读取相关数据。在数据迁移时,将存储于DDR存储模块32中的控制数据和缓存数据,随虚拟机(VM)一起进行迁移,能够实现宕机备份、负载均衡等功能。
本发明实施例提供的基于云的FPGA控制数据的配置系统,通过在FPGA内部设置控制模块,以从FPGA外部的存储模块中获取控制数据,以对FPGA中相应处理单元进行配置,使得在进行FPGA数据迁移时,可以按照普通数据的迁移方式,直接将存储于外部存储模块中的控制数据进行迁移,从而实现FPGA数据的热迁移。一方面,便于系统的运行维护;另一方面,能够避免每次FPGA迁移后对各处理单元的重新配置,从而减少了用户侧的工作量,提高了用户体验。
实施例四
图4为本发明提供的基于云的FPGA控制数据的配置方法实施例的流程图,该方法的执行主体可以为上述基于云的FPGA控制数据的配置系统。如图4所示,该基于云的FPGA控制数据的配置方法包括如下步骤:
S401,设置于FPGA外部的存储模块存储云端发送的控制数据。
在本发明实施例中,存储模块可以通过DMA模块接收并存储云端发送的控制数据,以实现数据的高速传输。
S402,设置于该FPGA内部的控制模块从存储模块中获取控制数据,并根据该控制数据对FPGA中相应的处理单元进行配置。
在本发明实施例中,在针对以锁存的方式存储控制数据的FPGA进行配置时,用户可以首先通过云端将控制数据存储于该FPGA外部的存储模块中,然后由设置于该FPGA内部的控制模块从存储模块12中读取控制数据,并根据获取到的控制数据对该FPGA中的各处理单元进行配置。
进一步地,控制模块还可以实时监控存储模块,从存储模块中获取控制数据的增量数据,并根据控制数据的增量数据对相应的处理单元进行配置。
在本发明实施例中,控制模块以实时监控存储模块中的控制数据的变化,当控制数据产生增量数据时,控制模块实时地从存储模块中获取控制数据的增量数据,并根据该增量数据对相应的处理单元进行配置。
具体地,控制数据可以设置为常用的寄存器配置格式。其可以包括:寄存器地址、 寄存器值以及属性标识,其中,寄存器地址为处理单元中的寄存器的空间偏移地址,寄存器值为向相应的寄存器配置的值,属性标识用于标识向相应的寄存器配置的读写属性。为了方便管理,可以将用于存储控制数据的整个空间划分为固定数目的地址组合,用户可以根据实际需要决定使用其中的一段或者全部。
本发明实施例提供的基于云的FPGA控制数据的配置方法,通过在FPGA内部设置控制模块,以从FPGA外部的存储模块中获取控制数据,以对FPGA中相应处理单元进行配置,使得在进行FPGA数据迁移时,可以按照普通数据的迁移方式,直接将存储于外部存储模块中的控制数据进行迁移,从而实现FPGA数据的热迁移。一方面,便于系统的运行维护;另一方面,能够避免每次FPGA迁移后对各处理单元的重新配置,从而减少了用户侧的工作量,提高了用户体验。
实施例五
以上描述了基于云的FPGA控制数据的配置的内部功能和结构,该系统可实现为一种电子设备。图5为本发明提供的电子设备实施例的结构示意图。如图5所示,该电子设备包括存储器51和处理器52。
存储器51,用于存储程序。除上述程序之外,存储器51还可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器51可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器52,与存储器51耦合,执行存储器51所存储的程序,以用于:
设置于FPGA外部的存储模块存储云端发送的控制数据;
设置于该FPGA内部的控制模块从存储模块中获取控制数据,并根据该控制数据对FPGA中相应的处理单元进行配置。
进一步,如图5所示,电子设备还可以包括:通信组件53、电源组件54、音频组件55、显示器56等其它组件。图5中仅示意性给出部分组件,并不意味着电子设备只包括图5所示组件。
通信组件53被配置为便于电子设备和其他设备之间有线或无线方式的通信。电子设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例 性实施例中,通信组件53经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件53还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
电源组件54,为电子设备的各种组件提供电力。电源组件54可以包括电源管理系统,一个或多个电源,及其他与为电子设备生成、管理和分配电力相关联的组件。
音频组件55被配置为输出和/或输入音频信号。例如,音频组件55包括一个麦克风(MIC),当电子设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器51或经由通信组件53发送。在一些实施例中,音频组件55还包括一个扬声器,用于输出音频信号。
显示器56包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (9)

  1. 一种基于云的FPGA控制数据的配置系统,其特征在于,包括:设置于FPGA内部的控制模块,和设置于所述FPGA外部的存储模块,其中,
    所述存储模块用于,存储云端发送的控制数据;
    所述控制模块用于,从所述存储模块中获取所述控制数据,并根据所述控制数据对所述FPGA中相应的处理单元进行配置。
  2. 根据权利要求1所述的基于云的FPGA控制数据的配置系统,其特征在于,所述控制模块还用于,实时监控所述存储模块,从所述存储模块中获取所述控制数据的增量数据,并根据所述控制数据的增量数据对相应的所述处理单元进行配置。
  3. 根据权利要求1所述的基于云的FPGA控制数据的配置系统,其特征在于,所述控制数据包括:寄存器地址、寄存器值以及属性标识,其中,所述寄存器地址为所述处理单元中的寄存器的空间偏移地址,所述寄存器值为向所述寄存器配置的值,所述属性标识用于标识向所述寄存器配置的读写属性。
  4. 根据权利要求1至3中任一所述的基于云的FPGA控制数据的配置系统,其特征在于,还包括:设置于所述FPGA内部的直接内存存取DMA模块,
    所述DMA模块用于,将所述控制数据发送至所述存储模块。
  5. 一种基于云的FPGA控制数据的配置方法,其特征在于,包括:
    设置于FPGA外部的存储模块存储云端发送的控制数据;
    设置于所述FPGA内部的控制模块从所述存储模块中获取所述控制数据,并根据所述控制数据对所述FPGA中相应的处理单元进行配置。
  6. 根据权利要求5所述的基于云的FPGA控制数据的配置方法,其特征在于,还包括:
    所述控制模块实时监控所述存储模块,从所述存储模块中获取所述控制数据的增量数据,并根据所述控制数据的增量数据对相应的所述处理单元进行配置。
  7. 根据权利要求5所述的基于云的FPGA控制数据的配置方法,其特征在于,所述控制数据包括:寄存器地址、寄存器值以及属性标识,其中,所述寄存器地址为所述处理单元中的寄存器的空间偏移地址,所述寄存器值为向所述寄存器配置的值,所述属性标识用于标识向所述寄存器配置的读写属性。
  8. 根据权利要求5至7中任一权利要求所述的基于云的FPGA控制数据的配置方法,其特征在于,所述设置于FPGA外部的存储模块存储云端发送的控制数据,包括:
    所述存储模块通过DMA模块接收并存储云端发送的所述控制数据。
  9. 一种电子设备,其特征在于,包括:
    存储器,用于存储程序;
    处理器,用于运行所述存储器中存储的所述程序,以用于:
    设置于FPGA外部的存储模块存储云端发送的控制数据;
    设置于所述FPGA内部的控制模块从所述存储模块中获取所述控制数据,并根据所述控制数据对所述FPGA中相应的处理单元进行配置。
PCT/CN2020/070057 2019-01-07 2020-01-02 基于云的fpga控制数据的配置系统和方法以及电子设备 WO2020143520A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/419,810 US11593022B2 (en) 2019-01-07 2020-01-02 System, method. and electronic device for cloud-based configuration of FPGA configuration data
EP20738140.1A EP3910463A4 (en) 2019-01-07 2020-01-02 CLOUD-BASED FPGA CONTROL DATA CONFIGURATION SYSTEM AND METHOD AND ELECTRONIC DEVICE

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910012890.0A CN111414129B (zh) 2019-01-07 2019-01-07 基于云的fpga控制数据的配置系统和方法以及电子设备
CN201910012890.0 2019-01-07

Publications (1)

Publication Number Publication Date
WO2020143520A1 true WO2020143520A1 (zh) 2020-07-16

Family

ID=71490730

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/070057 WO2020143520A1 (zh) 2019-01-07 2020-01-02 基于云的fpga控制数据的配置系统和方法以及电子设备

Country Status (4)

Country Link
US (1) US11593022B2 (zh)
EP (1) EP3910463A4 (zh)
CN (1) CN111414129B (zh)
WO (1) WO2020143520A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11669452B2 (en) * 2020-11-11 2023-06-06 Nokia Solutions And Networks Oy Reconfigurable cache hierarchy framework for the storage of FPGA bitstreams

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070214117A1 (en) * 2006-03-10 2007-09-13 Chung Hua University Method of implementing B++ tree search on parallel using virtual tree structure
CN102880680A (zh) * 2012-09-11 2013-01-16 大连梯耐德网络技术有限公司 一种基于随机访问存储器的多用户统计方法
CN108616592A (zh) * 2018-04-28 2018-10-02 济南浪潮高新科技投资发展有限公司 一种物联网终端及其可靠连接方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6920627B2 (en) * 2002-12-13 2005-07-19 Xilinx, Inc. Reconfiguration of a programmable logic device using internal control
US8407658B2 (en) * 2007-02-01 2013-03-26 International Business Machines Corporation Methods, systems, and computer program products for using direct memory access to initialize a programmable logic device
CN102314400B (zh) * 2011-09-27 2014-12-24 广东威创视讯科技股份有限公司 一种分散聚合式dma方法及装置
US9152448B2 (en) * 2012-05-11 2015-10-06 Vmware, Inc. Performance of load balancing modules with migration awareness
CN103970708B (zh) * 2014-03-18 2017-01-04 中国航天科工信息技术研究院 一种fpga与通用处理器之间的通信方法及系统
US9934175B2 (en) * 2015-10-06 2018-04-03 Xilinx, Inc. Direct memory access for programmable logic device configuration
US10516396B2 (en) * 2016-04-29 2019-12-24 University Of Florida Research Foundation, Incorporated Overlay architecture for programming FPGAs
CN107786616A (zh) * 2016-08-30 2018-03-09 江苏蓝创聚联数据与应用研究院有限公司 基于云端的主机智能监控系统
US10250572B2 (en) * 2016-09-29 2019-04-02 Amazon Technologies, Inc. Logic repository service using encrypted configuration data
US10282330B2 (en) * 2016-09-29 2019-05-07 Amazon Technologies, Inc. Configurable logic platform with multiple reconfigurable regions
US10642492B2 (en) * 2016-09-30 2020-05-05 Amazon Technologies, Inc. Controlling access to previously-stored logic in a reconfigurable logic device
US11115293B2 (en) * 2016-11-17 2021-09-07 Amazon Technologies, Inc. Networked programmable logic service provider
US10855529B2 (en) * 2018-11-26 2020-12-01 Stmicroelectronics Application Gmbh Processing system, related integrated circuit, device and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070214117A1 (en) * 2006-03-10 2007-09-13 Chung Hua University Method of implementing B++ tree search on parallel using virtual tree structure
CN102880680A (zh) * 2012-09-11 2013-01-16 大连梯耐德网络技术有限公司 一种基于随机访问存储器的多用户统计方法
CN108616592A (zh) * 2018-04-28 2018-10-02 济南浪潮高新科技投资发展有限公司 一种物联网终端及其可靠连接方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3910463A4

Also Published As

Publication number Publication date
CN111414129B (zh) 2023-05-05
CN111414129A (zh) 2020-07-14
US20220066690A1 (en) 2022-03-03
EP3910463A4 (en) 2022-09-14
US11593022B2 (en) 2023-02-28
EP3910463A1 (en) 2021-11-17

Similar Documents

Publication Publication Date Title
US9740642B2 (en) Methods and electronic devices for adjusting the operating frequency of a memory
CN105706168B (zh) 用于经由数据掩蔽来降低存储器i/o功率的系统、方法和计算机可读介质
WO2017148292A1 (zh) 一种级联板、ssd远程共享访问的系统和方法
US10211666B2 (en) Electronic device and method of wireless power transfer therefor
WO2016105636A1 (en) Voice handover between wireless networks
WO2020143520A1 (zh) 基于云的fpga控制数据的配置系统和方法以及电子设备
WO2023108989A1 (zh) 数据访问方法、装置及非临时性计算机可读存储介质
WO2021115254A1 (zh) 可穿戴设备的控制方法和装置、电子设备、可读存储介质
KR102343642B1 (ko) 데이터 운용 방법 및 전자 장치
EP3488317B1 (en) Screen casting
US9734890B1 (en) Systems and methods for individually configuring dynamic random access memories sharing a common command access bus
CN109511139B (zh) Wifi控制方法、装置、移动设备、计算机可读存储介质
US20120236770A1 (en) Portable router and power saving control method thereof
WO2016026291A1 (zh) 无线数据卡、通信系统、数据同步方法及计算机存储介质
KR20140035845A (ko) 에너지 보존을 갖는 연속적인 데이터 전달
US20150249749A1 (en) Terminal apparatus, information processing system, and information transmission method
US11175885B2 (en) Display apparatus, audio apparatus and method for controlling thereof
CN113672172A (zh) 应用于led显示控制系统的数据交互方法以及接收卡
US20160188244A1 (en) Apparatus and method for providing security for memory in electronic device
US20150277845A1 (en) Method and electronic device for providing frame information
CN105808468B (zh) 一种控制方法、视频控制器及控制系统
CN111414130B (zh) 计算节点系统及其数据获取方法以及电子设备
CN110795318A (zh) 数据处理方法和装置以及电子设备
WO2017185694A1 (zh) 电子设备以及向直连的另一电子设备提供数据的方法
CN111414127B (zh) 计算集群系统及其数据获取方法以及电子设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20738140

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020738140

Country of ref document: EP

Effective date: 20210809