CN112181745A - Cloud service platform system and method for FPGA prototype verification - Google Patents

Cloud service platform system and method for FPGA prototype verification Download PDF

Info

Publication number
CN112181745A
CN112181745A CN202011041516.2A CN202011041516A CN112181745A CN 112181745 A CN112181745 A CN 112181745A CN 202011041516 A CN202011041516 A CN 202011041516A CN 112181745 A CN112181745 A CN 112181745A
Authority
CN
China
Prior art keywords
fpga
neuro
virtual machine
prototype
networking
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
CN202011041516.2A
Other languages
Chinese (zh)
Other versions
CN112181745B (en
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.)
Shanghai Sierxin Technology Co ltd
Original Assignee
Shanghai Guowei Silcore Technology Co Ltd
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 Shanghai Guowei Silcore Technology Co Ltd filed Critical Shanghai Guowei Silcore Technology Co Ltd
Priority to CN202011041516.2A priority Critical patent/CN112181745B/en
Publication of CN112181745A publication Critical patent/CN112181745A/en
Application granted granted Critical
Publication of CN112181745B publication Critical patent/CN112181745B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2247Verification or detection of system hardware configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • 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/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/45591Monitoring or debugging support
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)
  • Telephonic Communication Services (AREA)

Abstract

The invention provides a cloud service platform system and a method for FPGA prototype verification, wherein the system comprises a Web server unit, a VM virtual machine unit and a Neuro server unit which are in communication connection with each other, wherein the Web server unit is configured to provide a serial port for remote operation of a user; the VM virtual machine unit is configured to provide an os carrier for a user to operate the FPGA device; the Neuro server unit is configured to manage FPGA resources and service communication credentials between each FPGA device and the VM virtual machine unit. The invention provides a unified hardware platform and middleware at the cloud end, and can greatly reduce the development and deployment cost of the accelerator.

Description

Cloud service platform system and method for FPGA prototype verification
Technical Field
The disclosure relates to the technical field of FPGA prototype verification, in particular to a cloud service platform system and a cloud service platform method for FPGA prototype verification.
Background
The prototype verification of the FPGA (Field-Programmable Gate Array) can not only accelerate the development of the design of ASIC and the like, shorten the research and development period, reduce the development cost of an ASIC application system, but also improve the success rate of tape-out.
However, in the existing FPGA prototype verification technology, the FPGA development hardware period is long, the development difficulty is high, and the release and deployment protection requirements of the hardware acceleration algorithm are also very high.
Disclosure of Invention
In view of this, the embodiments of the present disclosure provide a cloud service platform system and a method for FPGA prototype verification, which overcome the technical defects that in the existing FPGA prototype verification technology, the FPGA development hardware period is long, the development difficulty is large, and the release and deployment protection requirements of the hardware acceleration algorithm are also very high.
In order to achieve the purpose, the invention provides the following technical scheme:
the cloud service platform system for FPGA prototype verification is characterized by comprising a Web server unit, a VM virtual machine unit and a Neuro server unit which are in communication connection with each other, wherein the Web server unit is configured to provide a window for remote operation of a user; the VM virtual machine unit is configured to provide an os carrier for a user to operate the FPGA device; the Neuro server unit is configured to manage FPGA resources and service communication credentials between each FPGA device and the VM virtual machine unit.
Further, the process of managing the FPGA resource by the Neuro server unit includes: and registering and reporting the state of the FPGA, and generating a communication key.
The invention also provides a cloud service method of the cloud service platform system for the FPGA prototype verification, which comprises the following steps:
s1, creating a networking work order in a Neuro server unit, building an FGPA environment according to networking work order information, generating a test report, and programming a uuid device code;
s2, uploading a test report by the Neuro server, confirming that the FGPA environment is built completely, and updating the work order state;
s3, sending a registration message after the FPGA built-in service Runtime is powered on, and sending a heartbeat message to a Neuro server end every fixed period;
s4, after receiving the registration and heartbeat messages of the FPGA equipment, the Neuro server presents the networking system to the Neuro server prototype management;
s5, the Neuro server provides prototype management system interface call for the Web server;
s6, ordering the prototype system by the user at the Web server according to the requirement, and recording the unique uuid code of the prototype system;
s7, selecting a virtual machine at the Web server end by the user to execute the running environment of the operation prototype system;
s8, selecting the created virtual machine as a script running environment to lock the prototype system, inquiring whether the networking of the Neuro server is in an idle state or not according to uuid, if the networking is in the use state, feeding back the networking to a user, if the networking is in the idle state, writing the communication Token into each FPGA device of the networking by the Neuro server, and then pushing the file for operating the networking to an appointed directory of the virtual machine through a built-in service system server of the virtual machine;
and S9, through a network NAT mechanism, the user remotely connects the virtual machine, opens the virtual terminal to find the pushed file in the specified directory, and the FPGA equipment can be operated by reading the built-in file of the readme.
Furthermore, the networking work order comprises an FPGA model, a number, a peripheral sub-card equipment connection position and a clock.
Further, the prototype management system interface call comprises a model number of the prototype system, a prototype list, a drop order, a return, a lock and an unlock.
Further, in S7, the virtual machine is a shared virtual machine or a computational virtual machine.
Further, in S8, the operation networking file includes an IP address, a model, a test report, and an operation script.
The cloud service platform system and the method for the FPGA prototype verification provide a unified hardware platform and middleware at a cloud end in the FPGA prototype verification technology, realize a virtualization scheme of FPGA software and hardware, meet the requirement of cloud security isolation, shorten the period of FPGA hardware development, reduce the development difficulty and greatly reduce the development and deployment cost of an accelerator. In addition, the invention is compatible with various FPGA devices (Intel and Xilinx), supports Shell programming of Multi-boot, is more reliable and is easier to transplant and develop.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the drawings needed to be used in the embodiments will be briefly described below, and it is apparent that the drawings in the following description are only some embodiments of the present disclosure, and it is obvious for those skilled in the art that other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a schematic diagram of a cloud service platform system according to the present invention;
fig. 2 is a schematic diagram illustrating VM virtual machine creation and management in the cloud service method according to the present invention;
fig. 3 is a flow chart of a Neuro server communication service in the cloud service method of the present invention;
fig. 4 is a flowchart illustrating the operation of locking the prototype system in the cloud service method according to the present invention.
Detailed Description
The embodiments of the present disclosure are described in detail below with reference to the accompanying drawings.
The embodiments of the present disclosure are described below with specific examples, and other advantages and effects of the present disclosure will be readily apparent to those skilled in the art from the disclosure in the specification. It is to be understood that the described embodiments are merely illustrative of some, and not restrictive, of the embodiments of the disclosure. The disclosure may be embodied or carried out in various other specific embodiments, and various modifications and changes may be made in the details within the description without departing from the spirit of the disclosure. It is to be noted that the features in the following embodiments and examples may be combined with each other without conflict. All other embodiments, which can be derived by a person skilled in the art from the embodiments disclosed herein without making any creative effort, shall fall within the protection scope of the present disclosure.
It is noted that various aspects of the embodiments are described below within the scope of the appended claims. It should be apparent that the aspects described herein may be embodied in a wide variety of forms and that any specific structure and/or function described herein is merely illustrative. Based on the disclosure, one skilled in the art should appreciate that one aspect described herein may be implemented independently of any other aspects and that two or more of these aspects may be combined in various ways. For example, an apparatus may be implemented and/or a method practiced using any number of the aspects set forth herein. Additionally, such an apparatus may be implemented and/or such a method may be practiced using other structure and/or functionality in addition to one or more of the aspects set forth herein.
It should be noted that the drawings provided in the following embodiments are only for illustrating the basic idea of the present disclosure, and the drawings only show the components related to the present disclosure rather than the number, shape and size of the components in actual implementation, and the type, amount and ratio of the components in actual implementation may be changed arbitrarily, and the layout of the components may be more complicated.
In addition, in the following description, specific details are provided to facilitate a thorough understanding of the examples. However, it will be understood by those skilled in the art that the aspects may be practiced without these specific details.
As shown in fig. 1, the cloud service platform system for FPGA prototype verification according to the embodiment of the present disclosure is characterized by including a Web server unit, a VM virtual machine unit, and a Neuro server unit, which are communicatively connected to each other, where the Web server unit is configured to provide a window for a user to remotely operate; the VM virtual machine unit is configured to provide an os carrier for a user to operate the FPGA device; the Neuro server unit is configured to manage FPGA resources and service communication credentials between each FPGA device and the VM virtual machine unit.
Further, the process of managing the FPGA resource by the Neuro server unit includes: and registering and reporting the state of the FPGA, and generating a communication key.
As shown in fig. 2 to 4, the present invention further provides a cloud service method of the cloud service platform system for FPGA prototype verification, including the following steps:
s1, creating a networking work order in the Neuro server unit, building an FGPA environment by a worker according to networking work order information, generating a test report, and programming a uuid device code;
the networking work order is created by a user according to common requirements, and the main items of the work order comprise information such as the type and the number of the FPGA, the connection position of peripheral daughter card equipment, a clock and the like.
S2, uploading a test report by the Neuro server, confirming that the FGPA environment is built completely, and updating the work order state;
s3, sending a registration message after the built-in service Runtime of the FPGA is powered on, and sending a heartbeat message to a Neuro server end at regular intervals, so that a central manager serving as the FPGA can know information of each device in time and accurately judge the state of the device, as shown in FIG. 3;
s4, after receiving the registration and heartbeat messages of the FPGA equipment, the Neuro server terminal presents the networking system to the Neuro server prototype management, and the networking system can be on-line for a user to select to place an order after being confirmed by a worker;
s5, the Neuro server provides interface calls of the model, the prototype list, the order placing, the returning, the locking, the unlocking and the like of the prototype management system for the web server;
s6, the user selects an original system ordering of the FPGA type, the particle number, the clock, the daughter card type and the position which are suitable for the service requirement of the user at the Web server side, and records the uuid unique code of the original system;
s7, selecting a sharing virtual machine or a computing virtual machine at the Web server end by the user to execute the running environment of the operation prototype system;
s8, selecting the created virtual machine as a script running environment to lock the prototype system, inquiring whether the networking of the Neuro server is in an idle state or not according to uuid, if the networking is in the use state, feeding back the networking to a user, if the networking is in the idle state, writing the communication Token into each FPGA device of the networking by the Neuro server, and then pushing files such as IP addresses, models, test reports, operation scripts and the like of the operation networking to an appointed directory of the virtual machine through a built-in service system server of the virtual machine, as shown in FIG. 4;
and S9, through a network NAT mechanism, the user remotely connects the virtual machine, opens the virtual terminal to find the pushed file in the specified directory, and the FPGA equipment can be operated by reading the built-in file of the readme.
The above description is only for the specific embodiments of the present disclosure, but the scope of the present disclosure is not limited thereto, and any changes or substitutions that can be easily conceived by those skilled in the art within the technical scope of the present disclosure should be covered within the scope of the present disclosure. Therefore, the protection scope of the present disclosure shall be subject to the protection scope of the claims.

Claims (7)

1. The cloud service platform system for FPGA prototype verification is characterized by comprising a Web server unit, a VM virtual machine unit and a Neuro server unit which are in communication connection with each other, wherein the Web server unit is configured to provide a window for remote operation of a user; the VM virtual machine unit is configured to provide an os carrier for a user to operate the FPGA device; the Neuro server unit is configured to manage FPGA resources and service communication credentials between each FPGA device and the VM virtual machine unit.
2. The cloud service platform system for FPGA prototyping according to claim 1, wherein the process of managing FPGA resources by the Neuro server unit includes: and registering and reporting the state of the FPGA, and generating a communication key.
3. The cloud service method of the cloud service platform system for FPGA prototype verification according to claim 1, comprising the steps of:
s1, creating a networking work order in a Neuro server unit, building an FGPA environment according to networking work order information, generating a test report, and programming a uuid device code;
s2, uploading a test report by the Neuro server, confirming that the FGPA environment is built completely, and updating the work order state;
s3, sending a registration message after the FPGA built-in service Runtime is powered on, and sending a heartbeat message to a Neuro server end every fixed period;
s4, after receiving the registration and heartbeat messages of the FPGA equipment, the Neuro server presents the networking system to the Neuro server prototype management;
s5, the Neuro service provides prototype management system interface call for the Web service;
s6, ordering the prototype system by the user at the Web server according to the requirement, and recording the unique uuid code of the prototype system;
s7, selecting a virtual machine at the Web server end by the user to execute the running environment of the operation prototype system;
s8, selecting the created virtual machine as a script running environment to lock the prototype system, inquiring whether the networking of the Neuro server is in an idle state or not according to uuid, if the networking is in the use state, feeding back the networking to a user, if the networking is in the idle state, writing the communication Token into each FPGA device of the networking by the Neuro server, and then pushing the file for operating the networking to an appointed directory of the virtual machine through a built-in service system server of the virtual machine;
and S9, through a network NAT mechanism, the user remotely connects the virtual machine, opens the virtual terminal to find the pushed file in the specified directory, and the FPGA equipment can be operated by reading the built-in file of the readme.
4. The cloud service method for FPGA prototype verification according to claim 3, wherein the networking work order includes FPGA model, number, peripheral daughter card device connection position, and clock.
5. The FPGA proto-verified cloud service method according to claim 3, wherein said prototype management system interface calls comprise a model number of a prototype system, a prototype list, a drop, a return, a lock, and an unlock.
6. The cloud service method for FPGA prototyping according to claim 3, wherein in S7, the virtual machine is a shared virtual machine or a computer virtual machine.
7. The cloud service method for FPGA proto-verification according to claim 3, wherein in S8, the files of the operation network comprise IP addresses, models, test reports, and operation scripts.
CN202011041516.2A 2020-09-28 2020-09-28 Cloud service platform system and method for FPGA prototype verification Active CN112181745B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011041516.2A CN112181745B (en) 2020-09-28 2020-09-28 Cloud service platform system and method for FPGA prototype verification

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011041516.2A CN112181745B (en) 2020-09-28 2020-09-28 Cloud service platform system and method for FPGA prototype verification

Publications (2)

Publication Number Publication Date
CN112181745A true CN112181745A (en) 2021-01-05
CN112181745B CN112181745B (en) 2022-09-09

Family

ID=73944851

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011041516.2A Active CN112181745B (en) 2020-09-28 2020-09-28 Cloud service platform system and method for FPGA prototype verification

Country Status (1)

Country Link
CN (1) CN112181745B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112394300A (en) * 2021-01-20 2021-02-23 上海国微思尔芯技术股份有限公司 Networking detection method and system
CN113076710A (en) * 2021-06-07 2021-07-06 上海国微思尔芯技术股份有限公司 Clock signal global synchronization and division verification method and device, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006268862A (en) * 2002-04-17 2006-10-05 Fujitsu Ltd System for concurrent development of asic and programmable logic device, development program, and development method
CN106850753A (en) * 2016-12-28 2017-06-13 江苏虎甲虫计算技术有限公司 A kind of remote hardware experimental system
CN108959011A (en) * 2018-07-03 2018-12-07 山东芯革电子科技有限公司 A kind of shared on-line debugging method based in FPGA prototype verification system
CN111400119A (en) * 2020-03-24 2020-07-10 天津飞腾信息技术有限公司 Multi-project and multi-platform self-adaptive chip design FPGA prototype verification method and system
CN111431749A (en) * 2020-03-27 2020-07-17 重庆海云捷迅科技有限公司 FPGA cloud server management platform and use method thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006268862A (en) * 2002-04-17 2006-10-05 Fujitsu Ltd System for concurrent development of asic and programmable logic device, development program, and development method
CN106850753A (en) * 2016-12-28 2017-06-13 江苏虎甲虫计算技术有限公司 A kind of remote hardware experimental system
CN108959011A (en) * 2018-07-03 2018-12-07 山东芯革电子科技有限公司 A kind of shared on-line debugging method based in FPGA prototype verification system
CN111400119A (en) * 2020-03-24 2020-07-10 天津飞腾信息技术有限公司 Multi-project and multi-platform self-adaptive chip design FPGA prototype verification method and system
CN111431749A (en) * 2020-03-27 2020-07-17 重庆海云捷迅科技有限公司 FPGA cloud server management platform and use method thereof

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
程翼胜: "SoC芯片FPGA原型的软硬件协同验证", 《单片机与嵌入式系统应用》, no. 11, 1 November 2017 (2017-11-01) *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112394300A (en) * 2021-01-20 2021-02-23 上海国微思尔芯技术股份有限公司 Networking detection method and system
CN112394300B (en) * 2021-01-20 2021-04-09 上海国微思尔芯技术股份有限公司 Networking detection method and system
CN113076710A (en) * 2021-06-07 2021-07-06 上海国微思尔芯技术股份有限公司 Clock signal global synchronization and division verification method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN112181745B (en) 2022-09-09

Similar Documents

Publication Publication Date Title
JP7421511B2 (en) Methods and apparatus, electronic devices, readable storage media and computer programs for deploying applications
US9189378B1 (en) Systems, methods, and apparatuses for testing mobile device applications
CN110752947A (en) K8s cluster deployment method and device, and deployment platform
CN112181745B (en) Cloud service platform system and method for FPGA prototype verification
CN105429839A (en) Virtualized network function VNF optimization method, device and system
CN115292026A (en) Management method, device and equipment of container cluster and computer readable storage medium
CN109564527A (en) The security configuration of cloud computing node
KR101692733B1 (en) Method for managing virtual machine and device therefor
CN112860282B (en) Cluster plug-in upgrading method, device and server
CN108446102A (en) A kind of integral system and method for development deployment application program
CN102375894B (en) Method for managing different types of file systems
US20230342183A1 (en) Management method and apparatus for container cluster
CN113419813B (en) Method and device for deploying bare engine management service based on container platform
CN112448909A (en) Electronic lock management method, device, system and storage medium
CN113296744A (en) Application development system and method
CN112068929A (en) Unified management method for accessing multi-architecture cloud platform to third-party web service
CN108696550B (en) System and method for quickly building and replicating clouds
CN113128909A (en) Server management method based on power resources
CN109167826B (en) Method, device and system for putting WEB application on shelf
CN115668152A (en) Applying topology discovery
CN111506657A (en) Method for deploying block chain node equipment
CN114398082B (en) Compatible operation method and device for frame type block chain application
CN115442206B (en) Method and system for remote deployment of GO micro-services in cloud environment
Liao et al. A Blockchain-driven Elastic Firmware Deployment Platform for TR-069 Compatible Appliances
CN116938757A (en) Data processing method, device, electronic equipment and storage medium

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
CP03 Change of name, title or address

Address after: Room 27, 6th floor, No. 29 and 30, Lane 1775, Qiushan Road, Lingang New District, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai, 201306

Patentee after: Shanghai Sierxin Technology Co.,Ltd.

Address before: 200433 3332, No.26 Guoding Branch Road, Yangpu District, Shanghai

Patentee before: Shanghai Guowei silcore Technology Co.,Ltd.

CP03 Change of name, title or address