Emulation of a programmable hardware element
First Claim
1. A memory medium comprising program instructions for debugging a program, wherein the program is intended for deployment on a programmable hardware element to perform a function, wherein the program instructions are executable to perform:
- a) converting a first portion of the program into a first hardware configuration program which is deployable on the programmable hardware element to perform a corresponding first portion of the function, wherein a remaining portion of the program is to be debugged by a user;
b) configuring the programmable hardware element with the first hardware configuration program;
c) executing the program, wherein said executing comprises;
the programmable hardware element executing the first portion of the program; and
the computer system executing the remaining portion of the program;
wherein the remaining portion of the program is operable to be analyzed and debugged in response to said executing; and
d) receiving user input modifying the remaining portion of the program to debug the remaining portion of the program.
5 Assignments
0 Petitions
Accused Products
Abstract
System and method for debugging a program intended for execution on a programmable hardware element (PHE) to perform a function. A first portion of the program is converted into a first hardware configuration program (HCP) deployable on the PHE, where a remaining portion is to be debugged by a user. The PHE is configured with the first HCP, and the program executed, including the PHE executing the first portion of the program, and the computer system executing the remaining portion, which is then analyzed and debugged in response to being executed, and user input received modifying the remaining portion to debug the remaining portion. The method is repeated, where in each iteration the first portion is a successively larger portion of the program. After being debugged, the program is converted into a second HCP deployable on the PHE to perform the function, and the PHE configured with the second HCP.
-
Citations
39 Claims
-
1. A memory medium comprising program instructions for debugging a program, wherein the program is intended for deployment on a programmable hardware element to perform a function, wherein the program instructions are executable to perform:
-
a) converting a first portion of the program into a first hardware configuration program which is deployable on the programmable hardware element to perform a corresponding first portion of the function, wherein a remaining portion of the program is to be debugged by a user;
b) configuring the programmable hardware element with the first hardware configuration program;
c) executing the program, wherein said executing comprises;
the programmable hardware element executing the first portion of the program; and
the computer system executing the remaining portion of the program;
wherein the remaining portion of the program is operable to be analyzed and debugged in response to said executing; and
d) receiving user input modifying the remaining portion of the program to debug the remaining portion of the program. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A memory medium comprising program instructions for debugging a program, wherein the program is usable to configure a reconfigurable system, wherein the program performs a function, wherein the reconfigurable system includes a programmable hardware element, wherein the program is intended for deployment on the programmable hardware element, wherein the program instructions are executable to perform:
-
a) receiving user input indicating a first portion of the program for deployment on the programmable hardware element, wherein a remaining portion of the program is to be debugged by a user;
b) converting the first portion of the program into a first hardware configuration program which is deployable on the programmable hardware element to perform a corresponding first portion of the function;
c) configuring the programmable hardware element with the first hardware configuration program;
d) executing the program, wherein said executing comprises;
the programmable hardware element executing the first portion of the program; and
the computer system executing the remaining portion of the program;
wherein the remaining portion of the program is operable to be analyzed and debugged in response to said executing; and
e) receiving user input modifying the remaining portion of the program to debug the remaining portion of the program. - View Dependent Claims (24, 25, 26)
-
-
27. A memory medium comprising program instructions for debugging a program, wherein the program is usable to configure a reconfigurable system, wherein the program performs a function, wherein the reconfigurable system includes a programmable hardware element, wherein the program is intended for deployment on the programmable hardware element, wherein the program instructions are executable to perform:
-
receiving user input indicating a first portion of the program for deployment on the programmable hardware element, wherein a first remaining portion of the program is to be debugged by a user;
converting the first portion of the program into a first hardware configuration program which is deployable on the programmable hardware element to perform a corresponding first portion of the function;
configuring the programmable hardware element with the first hardware configuration program;
executing the program, wherein said executing comprises;
the programmable hardware element executing the first portion of the program; and
the computer system executing the first remaining portion of the program;
wherein the remaining portion of the program is operable to be analyzed and debugged in response to said executing;
receiving user input modifying the remaining portion of the program to debug the remaining portion of the program;
receiving user input indicating a second portion of the program for deployment on the programmable hardware element, wherein the second portion of the program comprises the first portion of the program and a debugged portion of the first remaining portion of the program, wherein a second remaining portion of the program is to be debugged by a user, wherein the second remaining portion comprises only a subset of the first remaining portion of the program;
converting the second portion of the program into a first hardware configuration program which is deployable on the programmable hardware element to perform a corresponding first portion of the function;
configuring the programmable hardware element with the first hardware configuration program;
executing the program, wherein said executing comprises;
the programmable hardware element executing the second portion of the program; and
the computer system executing the second remaining portion of the program.
-
-
28. A system for debugging a program, wherein the program is intended for deployment on a programmable hardware element to perform a function, the system comprising:
-
a reconfigurable device, comprising;
a programmable hardware element; and
a computer system comprising a processor and a memory;
wherein the computer system is coupled to the reconfigurable device;
wherein the memory stores program instructions which are executable by the processor to;
a) convert a first portion of the program into a first hardware configuration program which is deployable on the programmable hardware element to perform a corresponding first portion of the function, wherein a remaining portion of the program is to be debugged by a user;
b) configure the programmable hardware element with the first hardware configuration program;
c) execute the program, wherein in executing the program;
the programmable hardware element executes the first portion of the program; and
the computer system executes the remaining portion of the program;
wherein the remaining portion of the program is operable to be analyzed and debugged in response to said executing; and
d) receive user input modifying the remaining portion of the program to debug the remaining portion of the program. - View Dependent Claims (29, 30, 31)
-
-
32. A system for debugging a program, wherein the program is intended for deployment on a programmable hardware element to perform a function, comprising:
-
means for a) converting a first portion of the program into a first hardware configuration program which is deployable on the programmable hardware element to perform a corresponding first portion of the function, wherein a remaining portion of the program is to be debugged by a user;
means for b) configuring the programmable hardware element with the first hardware configuration program;
means for c) executing the program, wherein said executing comprises;
the programmable hardware element executing the first portion of the program; and
the computer system executing the remaining portion of the program;
wherein the remaining portion of the program is operable to be analyzed and debugged in response to said executing; and
means for d) receiving user input modifying the remaining portion of the program to debug the remaining portion of the program. - View Dependent Claims (33, 34, 35)
-
-
36. A method for debugging a program, wherein the program is intended for deployment on a programmable hardware element to perform a function, the method comprising:
-
a) converting a first portion of the program into a first hardware configuration program which is deployable on the programmable hardware element to perform a corresponding first portion of the function, wherein a remaining portion of the program is to be debugged by a user;
b) configuring the programmable hardware element with the first hardware configuration program;
c) executing the program, wherein said executing comprises;
the programmable hardware element executing the first portion of the program; and
the computer system executing the remaining portion of the program;
wherein the remaining portion of the program is operable to be analyzed and debugged in response to said executing; and
d) receiving user input modifying the remaining portion of the program to debug the remaining portion of the program. - View Dependent Claims (37, 38, 39)
-
Specification