Apparatus and method for managing integrated circuit designs
First Claim
1. A computerized system for generating user-configured designs of integrated circuits, comprising:
- a user interface adapted to provide and receive information to and from a user, respectively; and
an object-oriented design environment operatively coupled to said user interface and having a plurality of associated design tools, wherein a plurality of components associated with said IC design are represented as objects, said objects being substantially encapsulated and containing information relating to both the interfaces and build hierarchy associated with its respective design component, said design tools using said information within said objects to build said design, said objects being substantially user-configurable and selectable within said environment via said user interface.
2 Assignments
0 Petitions
Accused Products
Abstract
Apparatus and methods for integrated circuit (IC) design, including management of the configuration, design parameters, and functionality of a design in which custom instructions or other design elements may be controlled by the designer. In one exemplary embodiment, a computer program rendered in an object-oriented language implementing the aforementioned methods for designing user-customized digital processors is disclosed. Design iteration, component encapsulation, use of human-readable file formats, extensible dynamic GUIs and tool sets, and other features are employed to enhance the functionality and accessibility of the program. Components within the design environment comprise encapsulated objects which contain information relating to interfaces with other components in the design, hierarchy, and other facets of the design process.
-
Citations
46 Claims
-
1. A computerized system for generating user-configured designs of integrated circuits, comprising:
-
a user interface adapted to provide and receive information to and from a user, respectively; and
an object-oriented design environment operatively coupled to said user interface and having a plurality of associated design tools, wherein a plurality of components associated with said IC design are represented as objects, said objects being substantially encapsulated and containing information relating to both the interfaces and build hierarchy associated with its respective design component, said design tools using said information within said objects to build said design, said objects being substantially user-configurable and selectable within said environment via said user interface.
-
-
2. A method for generating a hierarchy within an integrated circuit design having a plurality of components, comprising:
-
providing at least some of said plurality of components with code, said at least some components each having a first type of site;
defining a second type of site on those of said plurality of components without said code; and
joining at least some of said first and second sites, thereby generating a hierarchy.
-
-
3. A method for generating an integrated circuit design build having a plurality of components, comprising:
-
providing at least some of said plurality of components with code, said at least some components each having a first type of site;
defining a second type of site on those of said plurality of components without said code;
joining at least some of said first and second sites, thereby generating a hierarchy;
querying the top most component in said hierarchy for its code;
reading said code from said top component;
merging in code from at least one component linked to said top component; and
repeating said acts of querying and merging throughout said hierarchy to produce said build.
-
-
4. A computerized IC design system having a debug environment comprising a script debugger adapted to allow (i) the setting of at least one breakpoint in code being debugged and (ii) step-wise progression through said code during generation of said design.
-
5. A system for designing a processor comprising an object-oriented design environment adapted to permit user-configurability of said processor, wherein at least one component of said processor is described in terms of an object.
-
6. A method of designing an integrated circuit having a plurality of design components, wherein at least a portion of the descriptions of said components are encapsulated.
-
7. A method of designing an integrated circuit having a plurality of design components, wherein at least a portion of the descriptions of said components interact, at least one of said interacting components having at least one link associated therewith.
- 8. A system for generating an integrated circuit design having a plurality of components represented by objects, said objects comprising both types and instances.
- 11. A computerized system for designing an integrated circuit, said system comprising an object-oriented environment being adapted to store a plurality of component instances as a project in a substantially hierarchical data structure.
-
14. A computerized system for designing an integrated circuit, said system comprising an object-oriented environment having a substantially standardized data structure adapted to be compatible with a plurality of heterogeneous tools associated with said system.
-
15. A computerized system for generated an integrated circuit design using at least one software tool, wherein a plurality of components within said design comprise encapsulated objects, said encapsulated objects containing information provided to said at least one tool as to how two or more of said components may be linked.
- 16. A computerized system for generated an integrated circuit design, wherein a plurality of components associated with said design and each having at least one interface comprise encapsulated objects, said encapsulated objects each containing information specifying at least one default connection configuration said at least one site.
- 18. A system for generating a design of an integrated circuit, comprising a plurality of different build processes stored within a library.
- 21. A system for generating a design of an integrated circuit, comprising a plurality of component definitions, at least a portion of said component definitions each comprising at least portions of GUI code.
-
24. A system for generating a design of an extensible integrated circuit, comprising an object-oriented design environment coupled to at least one remote information source via a network interface, wherein said environment is configured to cooperate with said at least one source to automatically obtain updates to components or other relevant data automatically via said network interface.
-
25. An interactive GUI-based system for generating a design of an integrated circuit, comprising:
-
at least one GUI-based function;
a design library; and
a plurality of heterogeneous design components disposed within said library;
wherein said library categorizes said components based on one or more criteria, said at least one GUI function identifying particular components based on their category criteria and subsequently displaying them.
-
-
26. A computerized object oriented IC design environment having a plurality of design components which may be linked within a design, wherein said links comprise at least a portion which is human readable.
- 27. A computerized system for generating a design of an integrated circuit, said design comprising a plurality of components represented as encapsulated objects, at least a portion of said encapsulated objects containing information describing at least one dependency of the represented component.
- 30. A computerized system for generating a design of an integrated circuit wherein said design comprises a plurality of components represented by encapsulated objects, said encapsulated objects comprising at least one interface which includes design hierarchy information.
- 32. A computerized system for generating the design of an integrated circuit, comprising a user-extensible software toolset having a plurality of tools adapted to permit the addition of at least one plug-in module.
- 34. A computerized system for generating a design of an integrated circuit, comprising an object-oriented design environment with data libraries, wherein data stored in said libraries is adapted to be retrieved using path designations split into a plurality of subcomponents.
- 36. A computerized system adapted to generate a design of an integrated circuit, said design comprising a plurality of components represented by encapsulated objects, said objects each having at least one interface with another object, said at least one interface containing information relating to data transferred across that interface.
-
39. A computerized system for generating designs of integrated circuits, comprising at least one extensible GUI tree, said extensible GUI tree permitting a user to specify the relationship between said tree and at least one plug-in module.
- 40. A computer-based system for generating designs of user-configured integrated circuits, said system being adapted to automatically generate customized documentation associated with the specific configuration selected by said user.
- 42. A computerized system for generating an integrated circuit design, said system comprising a build sequencer adapted to permit a user to selectively utilize one or more of a plurality of substantially separate build sequences during generation of said design.
- 44. A computerized system for generating a design of an integrated circuit, comprising at least one module adapted to generate a topological representation of said design based on information provided by each component within said design.
Specification