Synchronization modules for performing synchronization of programmable hardware elements
First Claim
1. A method for modifying a program for a target system, wherein the target system comprises a first device with a first programmable hardware element (PHE), comprising:
- storing a first program for implementation on the first PHE of the first device, wherein the first program comprises;
1) a first synchronization module having code for implementation on the first PHE of the first device, wherein the first synchronization module provides a standard interface for interacting with other code; and
2) first user-created code which performs a first function;
wherein the first synchronization module is configured to adjust timing of the first user-created code in the first program according to a first type of synchronization;
receiving user input specifying use of a second type of synchronization to synchronize the first user-created code;
replacing the first synchronization module with a second synchronization module in response to the user input, wherein the second synchronization module is configured to adjust timing of the first user-created code in the first program according to the second type of synchronization, wherein the second synchronization module provides the standard interface for interacting with other code, and wherein the first user-created code does not require modification in response to said replacing the first synchronization module;
generating a hardware description for the first PHE based on the second synchronization module and the first user-created code; and
configuring the first PHE according to the hardware description, wherein during operation, the first PHE is configured to adjust timing of the first user-created code according to the second synchronization module.
5 Assignments
0 Petitions
Accused Products
Abstract
Customizing a target system. The target system may include a first device with a first programmable hardware element (PHE) and a second device with a second PHE. Synchronization modules may be provided for implementation on the first and second PHEs. The synchronization modules may provide a standard interface for interacting with other code. A user may specify user-created code for the first and second PHEs which utilizes the synchronization modules. The user-created code may interact with the synchronization modules using the standard interface. Accordingly, hardware descriptions may be generated for the first and second PHEs of the target system. Different modules may be used for different interconnects. Additionally, multiple synchronization modules may be used, e.g., dynamically, during operation of the target system.
43 Citations
17 Claims
-
1. A method for modifying a program for a target system, wherein the target system comprises a first device with a first programmable hardware element (PHE), comprising:
-
storing a first program for implementation on the first PHE of the first device, wherein the first program comprises; 1) a first synchronization module having code for implementation on the first PHE of the first device, wherein the first synchronization module provides a standard interface for interacting with other code; and 2) first user-created code which performs a first function; wherein the first synchronization module is configured to adjust timing of the first user-created code in the first program according to a first type of synchronization; receiving user input specifying use of a second type of synchronization to synchronize the first user-created code; replacing the first synchronization module with a second synchronization module in response to the user input, wherein the second synchronization module is configured to adjust timing of the first user-created code in the first program according to the second type of synchronization, wherein the second synchronization module provides the standard interface for interacting with other code, and wherein the first user-created code does not require modification in response to said replacing the first synchronization module; generating a hardware description for the first PHE based on the second synchronization module and the first user-created code; and configuring the first PHE according to the hardware description, wherein during operation, the first PHE is configured to adjust timing of the first user-created code according to the second synchronization module. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory, computer accessible memory medium storing program instructions for modifying a program for a target system, wherein the target system comprises a first programmable hardware element (PHE), wherein the program instructions are executable to:
-
display a first program for implementation on the first PHE, wherein the first program comprises; 1) a first synchronization module having code for implementation on the first PHE, wherein the first synchronization module provides a standard interface for interacting with other code; and 2) first user-created code which performs a first function; wherein the first synchronization module is configured to synchronize timing of the first user-created code in the first program according to a first type of synchronization; receive user input specifying use of a second type of synchronization to synchronize the first user-created code; replace the first synchronization module with the second synchronization module in response to the user input, wherein the second synchronization module is configured to adjust timing of the first user-created code in the first program according to the second type of synchronization, wherein the second synchronization module provides the standard interface for interacting with other code, and wherein the first user-created code does not require modification in response to said replacing the first synchronization module; generate a hardware description for the first PHE based on the second synchronization module and the first user-created code; and configure the first PHE according to the hardware description, wherein during operation, the first PHE is configured to adiust timing of the first user-created code according to the second synchronization module. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
Specification