CN111414129B - 基于云的fpga控制数据的配置系统和方法以及电子设备 - Google Patents
基于云的fpga控制数据的配置系统和方法以及电子设备 Download PDFInfo
- Publication number
- CN111414129B CN111414129B CN201910012890.0A CN201910012890A CN111414129B CN 111414129 B CN111414129 B CN 111414129B CN 201910012890 A CN201910012890 A CN 201910012890A CN 111414129 B CN111414129 B CN 111414129B
- Authority
- CN
- China
- Prior art keywords
- control data
- fpga
- cloud
- module
- storage module
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17748—Structural details of configuration resources
- H03K19/1776—Structural details of configuration resources for memories
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
- G06F15/7871—Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/28—DMA
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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内部的控制模块,和设置于所述FPGA外部的存储模块,其中,所述存储模块用于,存储云端发送的控制数据;所述控制模块用于,从所述存储模块中获取所述控制数据,并根据所述控制数据对所述FPGA中相应的处理单元进行配置。本发明实施例通过在FPGA内部设置控制模块,以从FPGA外部的存储模块中获取控制数据,以对FPGA中相应处理单元进行配置,使得在进行FPGA数据迁移时,可以按照普通数据的迁移方式,直接将存储于外部存储模块中的控制数据进行迁移,从而实现FPGA数据的热迁移。
Description
技术领域
本发明涉及云服务技术领域,尤其涉及一种基于云的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 (7)
1.一种基于云的现场可编程门阵列FPGA控制数据的配置系统,其特征在于,包括:设置于FPGA内部的控制模块和直接内存存取DMA模块,和设置于所述FPGA外部的存储模块,其中,云端通过PCIe高速外围组件互联接口与所述DMA模块连接;
所述DMA模块用于,将用户通过云端发送的控制数据发送至所述存储模块;
所述存储模块用于,存储云端发送的控制数据;
所述控制模块用于,从所述存储模块中获取所述控制数据,并根据所述控制数据对所述FPGA中相应的处理单元进行配置。
2.根据权利要求1所述的基于云的FPGA控制数据的配置系统,其特征在于,所述控制模块还用于,实时监控所述存储模块,从所述存储模块中获取所述控制数据的增量数据,并根据所述控制数据的增量数据对相应的所述处理单元进行配置。
3.根据权利要求1所述的基于云的FPGA控制数据的配置系统,其特征在于,所述控制数据包括:寄存器地址、寄存器值以及属性标识,其中,所述寄存器地址为所述处理单元中的寄存器的空间偏移地址,所述寄存器值为向所述寄存器配置的值,所述属性标识用于标识向所述寄存器配置的读写属性。
4.一种基于云的FPGA控制数据的配置方法,其特征在于,包括:
设置于FPGA内部的DMA模块将用户通过云端发送的控制数据发送至设置于FPGA外部的存储模块;
所述存储模块存储云端发送的控制数据;
设置于所述FPGA内部的控制模块从所述存储模块中获取所述控制数据,并根据所述控制数据对所述FPGA中相应的处理单元进行配置;
其中,云端通过PCIe高速外围组件互联接口与所述DMA模块连接。
5.根据权利要求4所述的基于云的FPGA控制数据的配置方法,其特征在于,还包括:
所述控制模块实时监控所述存储模块,从所述存储模块中获取所述控制数据的增量数据,并根据所述控制数据的增量数据对相应的所述处理单元进行配置。
6.根据权利要求4所述的基于云的FPGA控制数据的配置方法,其特征在于,所述控制数据包括:寄存器地址、寄存器值以及属性标识,其中,所述寄存器地址为所述处理单元中的寄存器的空间偏移地址,所述寄存器值为向所述寄存器配置的值,所述属性标识用于标识向所述寄存器配置的读写属性。
7.一种电子设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于运行所述存储器中存储的所述程序,以用于:
设置于FPGA内部的DMA模块将用户通过云端发送的控制数据发送至设置于FPGA外部的存储模块;
所述存储模块存储云端发送的控制数据;
设置于所述FPGA内部的控制模块从所述存储模块中获取所述控制数据,并根据所述控制数据对所述FPGA中相应的处理单元进行配置;
其中,云端通过PCIe高速外围组件互联接口与所述DMA模块连接。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910012890.0A CN111414129B (zh) | 2019-01-07 | 2019-01-07 | 基于云的fpga控制数据的配置系统和方法以及电子设备 |
| US17/419,810 US11593022B2 (en) | 2019-01-07 | 2020-01-02 | System, method. and electronic device for cloud-based configuration of FPGA configuration data |
| PCT/CN2020/070057 WO2020143520A1 (zh) | 2019-01-07 | 2020-01-02 | 基于云的fpga控制数据的配置系统和方法以及电子设备 |
| 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 (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910012890.0A CN111414129B (zh) | 2019-01-07 | 2019-01-07 | 基于云的fpga控制数据的配置系统和方法以及电子设备 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN111414129A CN111414129A (zh) | 2020-07-14 |
| CN111414129B true CN111414129B (zh) | 2023-05-05 |
Family
ID=71490730
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201910012890.0A Active CN111414129B (zh) | 2019-01-07 | 2019-01-07 | 基于云的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 (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102020207498A1 (de) * | 2020-06-17 | 2021-12-23 | Siemens Aktiengesellschaft | Gerät zum Einsatz im Internet der Dinge |
| US11669452B2 (en) | 2020-11-11 | 2023-06-06 | Nokia Solutions And Networks Oy | Reconfigurable cache hierarchy framework for the storage of FPGA bitstreams |
| US12541235B2 (en) * | 2023-05-24 | 2026-02-03 | Altera Corporation | Systems and methods with auxiliary control boards having interface devices |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102314400A (zh) * | 2011-09-27 | 2012-01-11 | 广东威创视讯科技股份有限公司 | 一种分散聚合式dma方法及装置 |
| CN103970708A (zh) * | 2014-03-18 | 2014-08-06 | 中国航天科工信息技术研究院 | 一种fpga与通用处理器之间的通信方法及系统 |
| CN107786616A (zh) * | 2016-08-30 | 2018-03-09 | 江苏蓝创聚联数据与应用研究院有限公司 | 基于云端的主机智能监控系统 |
| WO2018064419A1 (en) * | 2016-09-30 | 2018-04-05 | Amazon Technologies, Inc. | Controlling access to previously-stored logic in a reconfigurable logic device |
| WO2018064418A1 (en) * | 2016-09-29 | 2018-04-05 | Amazon Technologies, Inc. | Configurable logic platform with multiple reconfigurable regions |
Family Cites Families (11)
| 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 |
| TW200734894A (en) | 2006-03-10 | 2007-09-16 | Univ Chung Hua | Virtual tree searcher using parallel tree search method |
| 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 |
| US9152448B2 (en) * | 2012-05-11 | 2015-10-06 | Vmware, Inc. | Performance of load balancing modules with migration awareness |
| CN102880680B (zh) | 2012-09-11 | 2015-08-12 | 大连梯耐德网络技术有限公司 | 一种基于随机访问存储器的多用户统计方法 |
| 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 |
| US10250572B2 (en) * | 2016-09-29 | 2019-04-02 | Amazon Technologies, Inc. | Logic repository service using encrypted configuration data |
| US11115293B2 (en) * | 2016-11-17 | 2021-09-07 | Amazon Technologies, Inc. | Networked programmable logic service provider |
| CN108616592A (zh) | 2018-04-28 | 2018-10-02 | 济南浪潮高新科技投资发展有限公司 | 一种物联网终端及其可靠连接方法 |
| US10855529B2 (en) * | 2018-11-26 | 2020-12-01 | Stmicroelectronics Application Gmbh | Processing system, related integrated circuit, device and method |
-
2019
- 2019-01-07 CN CN201910012890.0A patent/CN111414129B/zh active Active
-
2020
- 2020-01-02 WO PCT/CN2020/070057 patent/WO2020143520A1/zh not_active Ceased
- 2020-01-02 EP EP20738140.1A patent/EP3910463A4/en active Pending
- 2020-01-02 US US17/419,810 patent/US11593022B2/en active Active
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102314400A (zh) * | 2011-09-27 | 2012-01-11 | 广东威创视讯科技股份有限公司 | 一种分散聚合式dma方法及装置 |
| CN103970708A (zh) * | 2014-03-18 | 2014-08-06 | 中国航天科工信息技术研究院 | 一种fpga与通用处理器之间的通信方法及系统 |
| CN107786616A (zh) * | 2016-08-30 | 2018-03-09 | 江苏蓝创聚联数据与应用研究院有限公司 | 基于云端的主机智能监控系统 |
| WO2018064418A1 (en) * | 2016-09-29 | 2018-04-05 | Amazon Technologies, Inc. | Configurable logic platform with multiple reconfigurable regions |
| WO2018064419A1 (en) * | 2016-09-30 | 2018-04-05 | Amazon Technologies, Inc. | Controlling access to previously-stored logic in a reconfigurable logic device |
Non-Patent Citations (4)
| Title |
|---|
| wangzhiguang.Design of DMA controller of PCIe bus interface based on FPGA.《Microelectronic Technology》.2018,全文. * |
| 彭卓文 ; 杨新民 ; 王胜红 ; .基于FPGA控制的高速大容量NAND FLASH存储模块设计.电子设计工程.2017,(第07期),全文. * |
| 杨磊 ; 刘美枝 ; 高海 ; 党婵娟 ; .基于FPGA和ARM的高速数据采集系统设计.山西大同大学学报(自然科学版).2017,(第06期),全文. * |
| 秦秀磊 ; 张文博 ; 王伟 ; 魏峻 ; 赵鑫 ; 钟华 ; 黄涛 ; .面向云端Key/Value存储系统的开销敏感的数据迁移方法.软件学报.2013,(第06期),全文. * |
Also Published As
| Publication number | Publication date |
|---|---|
| EP3910463A4 (en) | 2022-09-14 |
| US20220066690A1 (en) | 2022-03-03 |
| EP3910463A1 (en) | 2021-11-17 |
| US11593022B2 (en) | 2023-02-28 |
| WO2020143520A1 (zh) | 2020-07-16 |
| CN111414129A (zh) | 2020-07-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP2955618B1 (en) | Method and apparatus for sharing content of electronic device | |
| CN110837407B (zh) | 无服务器云服务系统及其资源管理方法以及电子设备 | |
| CN111414129B (zh) | 基于云的fpga控制数据的配置系统和方法以及电子设备 | |
| US20150261567A1 (en) | Task migration method and apparatus | |
| US20180307847A1 (en) | Selective encoding method and electronic device using same | |
| CN105426141A (zh) | 信息处理方法及支持其的电子设备 | |
| US20150339036A1 (en) | Method for organizing home screen and electronic device implementing the same | |
| KR20160008885A (ko) | 전자 장치 및 전자 장치의 메모리 관리 방법 | |
| CN113297124B (zh) | 设备枚举方法、设备、系统及存储介质 | |
| CN109445917B (zh) | 应用处理方法和装置、电子设备、计算机可读存储介质 | |
| CN114385164A (zh) | 页面生成与渲染方法、装置、电子设备及存储介质 | |
| US20150379322A1 (en) | Method and apparatus for communication using fingerprint input | |
| US20150341827A1 (en) | Method and electronic device for managing data flow | |
| US20170093595A1 (en) | Communication method, computer readable storage medium and information processing device | |
| US20140307896A1 (en) | Method for controlling audio output and device supporting the same | |
| CN107566398A (zh) | 流量控制方法和装置、计算机设备、计算机可读存储介质 | |
| US20160188244A1 (en) | Apparatus and method for providing security for memory in electronic device | |
| CN109656673B (zh) | 程序的加载方法、装置、系统以及电子设备 | |
| HK40033553A (zh) | 基於云的fpga控制数据的配置系统和方法以及电子设备 | |
| US10430046B2 (en) | Electronic device and method for processing an input reflecting a user's intention | |
| CN112418806A (zh) | 临床研究项目管理系统 | |
| CN109375995B (zh) | 应用冻结方法和装置、存储介质、电子设备 | |
| CN111414130B (zh) | 计算节点系统及其数据获取方法以及电子设备 | |
| CN112637088A (zh) | 网络系统、网络处理方法和装置、电子设备以及计算机可读存储介质 | |
| CN110795318A (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 | ||
| REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40033553 Country of ref document: HK |
|
| GR01 | Patent grant | ||
| GR01 | Patent grant |