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.
- 9. The system of claim 8, wherein at least one of said types are stored in at least one library, and at least one of said instances stored in at least one project.
- 10. The system of claim 9 further comprising at least one link type and at least one link instance.
- 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.
- 12. The system of claim 11, wherein said hierarchical data structure comprises a tree structure with each of said component instances of said project comprising its own directory on a storage device associated with said system.
- 13. The system of claim 12, wherein at least one of said components has a first directory adapted to store data associated with that component, and a second directory comprising at least one library element owned by said at least one component.
- 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.
- 17. The system of claim 16, wherein said information comprises a script adapted to be run upon initiation by a tool, said running of said script describing said configuration.
- 18. A system for generating a design of an integrated circuit, comprising a plurality of different build processes stored within a library.
- 19. The system of claim 18, wherein at least one of said build processes is associated with at least one project, said at least one build process specifying the manner in which a design associated with said project is constructed.
- 20. The system of claim 18, wherein said at least one build process is adapted to generate output having uniquely instantiated variable names to permit multiple copies of said output to be used in said design.
- 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.
- 22. The system of claim 21, wherein said GUI code comprises Java language GUI objects.
- 23. The system of claim 21, wherein said GUI code comprises routines distributed as Java classes which can be dynamically included into a running application.
- 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.
- 28. The system of claim 27, wherein at least one of said represented components comprises an instruction cache, and said information comprises a maximum memory bus width.
- 29. The system of claim 27, wherein said information comprises at least one Java script.
- 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.
- 31. The system of claim 30, wherein said at least one interface comprises first and second interfaces of the relevant component, the first interface comprising a parent interface, and the second interface comprising a child interface.
- 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.
- 33. The system of claim 32, wherein at least one object class file is disposed in a predetermined directory of a storage device, said tools examining said at least one class file to permit use of said at least one plug-in module by said tools.
- 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.
- 35. The system of claim 34, wherein said plurality of subcomponents comprises a first subcomponent indicating type or instance data, and a plurality of other subcomponents which are sequentially invoked to return one or more objects associated therewith.
- 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.
- 37. The system of claim 36, wherein said plurality of components comprise a processor core and an extension instruction, said information comprising HDL that must be added to HDL associated with said core for said extension.
- 38. The system of claim 36, wherein said information comprises a script which is evaluated at runtime to retrieve said data.
- 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.
- 41. The system of claim 40, wherein said specific configuration comprises a multiplier, and said customized documentation comprises HTML documentation having information relating to (i) at least one instructions associated with said multiplier; and (ii) the gate count associated with said multiplier.
- 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.
- 43. The system of claim 42, wherein said plurality of sequences comprise a compilation sequence and a verification sequence.
- 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.
- 45. The system of claim 44, wherein said system comprises an object oriented environment, at least a portion of said components being represented by an encapsulated object, each of said encapsulated objects comprising information used by said module to assemble said topological representation.
- 46. The system of claim 45, wherein said topological representation is displayed as part of a GUI environment, said GUI environment being adapted to utilize second information disposed within said encapsulated objects and provide a user indication when illegal combinations of said components are present in the design.
PRIORITY AND RELATED APPLICATIONS
[0001] The present application claims priority to U.S. Provisional Patent Application Serial No. 60/375,997, entitled “Apparatus And Method For Managing Integrated Circuit Designs” filed Apr. 25, 2002, which is incorporated herein by reference in its entirety (including all appendices thereto). The present application is related to co-pending U.S. patent application Ser. No. 09/418,663 filed Oct. 14, 1999, entitled “Method And Apparatus For Managing The Configuration And Functionality Of A Semiconductor Design,” which claims priority to U.S. Provisional Patent Application Serial No. 60/104,271 filed Oct. 14, 1998, of the same title, also incorporated herein by reference in their entireties.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60375997 |
Apr 2002 |
US |