IP Library Granted Patent US 11,132,436
Granted Patent B2
US 11,132,436 · App. 15/930,113 · Granted Sep 28, 2021

FPGA cloud host development method and system

Inventor: Chen Liang (Hangzhou, CN)
Assignee: Alibaba Group Holding Limited
G06F21/51G06F9/45533G06F30/34G06F2111/04G06F2221/033
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,132,436
App. No.
15/930,113
Granted
Sep 28, 2021
Kind
B2
Abstract

A method including detecting, in response to a design file uploaded by a development device, validity of an actual constraint file included in the design file and corresponding to an FPGA of the FPGA cloud host; synthesis processing the design file in response to detecting that the actual constraint file is valid; and writing a burner file obtained from the synthesis processing into the FPGA. The validity of the actual constraint file is detected to prevent a malicious attack of a user to FPGA hardware.

Claims (49)

1. A method comprising:

detecting, in response to a design file uploaded by a development device, validity of an actual constraint file included in the design file, the actual constraint file corresponding to a Field Programmable Gate Array (FPGA) of a FPGA cloud host;

synthesis processing the design file in response to detecting that the actual constraint file is valid comprising:

in response to determining that a locally stored and authorized third-party intellectual property (IP) core is called in the design file, synthesis processing the called third-party IP core and the design file;

feeding a predefined non-sensitive synthesis report obtained from the synthesis processing back to the development device, wherein the non-sensitive synthesis report does not include information of the called third-party IP core; and

writing a burner file obtained from the synthesis processing into the FPGA.

2. The method of claim 1 , wherein:

the writing the burner file obtained from the synthesis processing into the FPGA comprises writing, in response to a writing instruction triggered by the development device, the burner file corresponding to the writing instruction into the FPGA.

3. The method of claim 2 , wherein the writing the burner file corresponding to the writing instruction into the FPGA comprises:

transmitting the burner file to a virtual machine manager corresponding to the FPGA cloud host for writing the burner file into the FPGA through the virtual machine manager.

4. The method of claim 1 , wherein the detecting the validity of the actual constraint file included in the design file comprises:

determining that the actual constraint file is valid in response to determining that a result of comparison between a template constraint file stored locally and the actual constraint file indicates that the template constraint file is consistent with the actual constraint file, the template constraint file corresponding to the FPGA.

5. The method of claim 4 , wherein the method further comprises:

sending, in response to a development request triggered by the development device, the template constraint file to the development device.

6. A development device comprising:

one or more processors; and

one or more memories storing thereon computer-readable instructions that, when executed by the one or more processors, cause the one or more processors to perform acts comprising:

uploading a design file to a development management platform;

receiving a predefined non-sensitive synthesis report generated and sent by the development management platform, the predefined non-sensitive synthesis report generated, in response to determining that an authorized third-party intellectual property (IP) core is called in the design file, by synthesis processing the called third-party IP core and the design file wherein the non-sensitive synthesis report does not include information of the called third-party IP core; and

sending, to the development management platform, a writing instruction triggered according to the predefined non-sensitive synthesis report, the writing instruction instructing to write a burner file corresponding to the design file into a Field Programmable Gate Array (FPGA).

7. The development device of claim 6 , wherein the design file includes an actual constraint file corresponding to an FPGA of the FPGA cloud host, for detecting, by the development management platform, validity of the actual constraint file and synthesis processing the design file in response to detecting that the actual constraint file is valid.

8. The development device of claim 7 , wherein, prior to the uploading the design file to the development management platform, the method further comprises:

sending a development request to the development management platform in response to a development start operation; and

receiving a template constraint file corresponding to the FPGA that is sent by the development management platform in response to the development request.

9. The development device of claim 8 , wherein detecting, by the development management platform, the validity of the actual constraint file is based on determining that a result of comparison between the template constraint file and the actual constraint file indicates that the template constraint file is consistent with the actual constraint file.

10. A system comprising:

a development management platform in remote communication with a development device that:

detects validity of an actual constraint file;

synthesis processes a design file in response to detecting that the actual constraint file is valid comprising:

in response to determining that an authorized third-party intellectual property (IP) core is called in the design file, synthesis processing the called third-party IP core and the design file, and

feeds a predefined non-sensitive synthesis report obtained from the synthesis processing back to the development device, wherein the non-sensitive synthesis report does not include information of the called third-party IP core; and

writes a burner file obtained from the synthesis processing into a Field Programmable Gate Array (FPGA).

11. The system of claim 10 , wherein the development device:

designs the design file including the actual constraint file corresponding to the FPGA; and

uploads the obtained design file to the development management platform.

12. The system of claim 10 , wherein:

the development device sends a writing instruction triggered according to the predefined non-sensitive synthesis report to the development management platform.

13. The system of claim 12 , wherein:

the development management platform writes the burner file into the FPGA according to the writing instruction.

14. The system of claim 13 , wherein the development management platform compares a template constraint file stored locally with the actual constraint file, and determines that the actual constraint file is valid in response to determining that a result of comparison indicates that the template constraint file is consistent with the actual constraint file, wherein the template constraint file corresponds to the FPGA.

15. The system of claim 10 , wherein:

the development device sends a development request to the development management platform in response to a development start operation.

16. The system of claim 15 , wherein:

the development management platform sends the template constraint file to the development device in response to the development request.

17. The system of claim 10 , wherein:

the development management platform stores the authorized third-party IP core.

18. The system of claim 10 , further comprising:

a virtual machine manager that receives the burner file sent by the development management platform, and writes the burner file into the FPGA; and

a user virtual machine having a data access link with the FPGA, that deploys code in the design file and accesses the FPGA through the data access link.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2026
From: ALIBABA GROUP HOLDING LIMITED
To: CLOUD INTELLIGENCE ASSETS HOLDING (SINGAPORE) PRIVATE LIMITED
Reel/Frame 075499/0384 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 13, 2020
From: LIANG, CHEN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 053491/0115 →
Priority Claims (1)
CN 201711117784.6 · Nov 13, 2017 · national
Continuity (2)
Continuation PCTCN2018113901 · Nov 5, 2018
Related Publication 20200272730A1 · Aug 27, 2020