Claims
- 1. An application programming interface for configuring routing resources of a programmable logic device, comprising:a first function configured and arranged to automatically generate configuration bits for configuration of routing resources that connect a source to a sink responsive to input data specifying the source and sink; a second function configured and arranged to automatically generate configuration bits for configuration of routing resources that connect a source to a plurality of sinks responsive to input data specifying the source and the plurality of sinks.
- 2. The interface of claim 1, further comprising a third function configured and arranged to generate configuration bits for configuration of routing resources that connect a source to a sink consistent with a set of types of resources responsive to input data specifying the types of resources.
- 3. The interface of claim 2, wherein the set of types of resources is an ordered set.
- 4. The interface of claim 3, further comprising a fourth function configured and arranged to add a resource type to the ordered set responsive to input data specifying the resource type.
- 5. The interface of claim 1, wherein the first function is further configured and arranged to generate a plurality of ordered sets of resource types and determine whether routing resources can be configured consistent with any of the ordered sets of resource types.
- 6. The interface of claim 1, further comprising a third function configured and arranged to generate configuration bits for configuration of routing resources that connect a plurality of sources to a plurality of sinks responsive to input data specifying the sources and sinks.
- 7. The interface of claim 1, further comprising a third function configured and arranged to generate and output an ordered set of resource types beginning at a source and terminating at a sink responsive to input data specifying the source and sink.
- 8. The interface of claim 1, further comprising a third function configured and arranged to generate configuration bits that release routing resources that connect a source and a sink responsive to input data specifying the source.
- 9. The interface of claim 8, further comprising a fourth function configured and arranged to generate configuration bits that release routing resources beginning at a sink and proceeding toward the source responsive to input data specifying the sink, wherein releasing the routing resources stops where a routing resource is one of two or more routing resources driven at a connection point.
- 10. The interface of claim 1, further comprising a third function configured and arranged to generate configuration bits for configuration of routing resources that connect a source to a sink responsive to input data specifying the source, sink, and specific routing resources comprising a path.
- 11. The interface of claim 10, further comprising a fourth function configured and arranged to add a specific routing resource to the path responsive to input data specifying the specific routing resource.
- 12. A computer-implemented method for configuration of routing resources of a programmable logic device, comprising:providing a program interface having as input parameters a source and a sink corresponding to an output port and an input port of configurable elements of a programmable logic device, respectively; and generating configuration bits for configuration of routing resources for connection of the source and sink responsive to programming interface calls.
- 13. The method of claim 12, further comprising generating configuration bits that configure routing resources that connect a source to a sink consistent with a set of types of resources responsive to input data specifying the types of resources.
- 14. The method of claim 13, wherein the set of types of resources is an ordered set.
- 15. The method of claim 14, further comprising:providing a program interface for constructing an ordered set of types of resources; and adding a resource type to the ordered set responsive to input data specifying the resource type.
- 16. The method of claim 12, further comprising generating a plurality of ordered sets of resource types and determining whether routing resources can be configured consistent with any of the ordered sets of resource types.
- 17. The method of claim 12, further comprising generating configuration bits for configuration of routing resources that connect a plurality of sources to a plurality of sinks responsive to input data specifying the sources and sinks.
- 18. The method of claim 12, further comprising:providing a program interface for finding an ordered set of resource types; and generating and outputting one or more ordered sets of resource types beginning at a source and terminating at a sink responsive to input data specifying the source and sink.
- 19. The method of claim 12, further comprising:providing a program interface to disconnect a source and a sink; and generating configuration bits that release routing resources that connect a source and a sink responsive to input data specifying the source.
- 20. The method of claim 19, further comprising generating configuration bits that release routing resources beginning at a sink and proceeding toward the source responsive to input data specifying the sink, wherein releasing the routing resources stops where a routing resource is one of two or more routing resources driven at a connection point.
- 21. The method of claim 12, further comprising generating configuration bits for configuration of routing resources to connect a source to a sink responsive to input data specifying the source, sink, and specific routing resources comprising a path between the source and the sink.
- 22. The method of claim 21, further comprising:providing a program interface for constructing a path; and adding a specific routing resource to the path responsive to input data specifying the specific routing resource.
- 23. An apparatus for configuring routing resources of a programmable logic device, comprising:means for automatically generating configuration bits for configuration of routing resources that connect a source to a sink responsive to input data specifying the source and sink; and means for automatically generating configuration bits for configuration of routing resources that connect a source to a plurality of sinks responsive to input data specifying the source and plurality of sinks.
RELATED PATENT APPLICATIONS
This patent application is related to the following co-pending patent applications:
1. U.S. patent application Ser. No. 08/919,531, entitled, “METHOD OF DESIGNING FPGAS FOR DYNAMICALLY RECONFIGURABLE COMPUTING,” filed on Aug. 28, 1997 by Steven A. Guccione; and
2. U.S. patent application Ser. No. 09/168,300, entitled “CONFIGURATION OF PROGRAMMABLE LOGIC DEVICES WITH ROUTING CORES”, filed Oct. 7, 1998 by Steven Guccione and Delon Levi.
The contents of the above applications are incorporated herein by reference.
GOVERNMENT CONTRACT
The U.S. Government has a paid-up license in the above referenced invention and the right in limited circumstances to require the patent owner to license others on reasonable terms as provided for by the terms of DABT63-99-3-0004 awarded by DARPA.
US Referenced Citations (6)