Method and apparatus for providing modularity to a behavioral description of a circuit design
First Claim
Patent Images
1. A method for providing a behavioral description of a circuit design, the method comprising the steps of:
- a. providing a template behavioral description, wherein the template behavioral description models a selected portion of the circuit design;
b. instantiating a number of template calls in the behavioral description of the circuit design by incorporating the template call into the behavioral description of the circuit design a number of times, thereby resulting in a number of template instantiations, each of the template instantiations including a reference to the corresponding template behavioral description;
c. identifying the template calls in the behavioral description of the circuit design that correspond to each of the template instantiations;
d. incorporating the behavioral description that corresponds to each of the template instantiations into the behavioral description of the circuit design;
e. wherein the behavioral description of the circuit design is stored in a file, and each of the template calls is positioned at a selected location in the file;
f. wherein said incorporating step (d) incorporates the template behavioral description at the selected locations in the file that correspond to the template calls;
g. wherein said incorporating step 18(d) further includes the step of providing a template marker at each of the selected locations in the file that correspond to the template calls;
h. synthesizing the behavioral description of the circuit design into a hierarchical detailed description of the circuit design;
i. wherein said synthesizing step results in a number of hierarchical elements, wherein each of the number of hierarchical elements corresponding to one of the template instantiations;
j. wherein each of the number of hierarchical elements implements the template behavioral description, and results in a hierarchical detailed description;
k. wherein at least a first and second one of the number of hierarchical elements reference a common placement database;
l. wherein the first one of the hierarchical elements is placed using a floorplanning tool;
m. wherein the first one of the hierarchical elements includes a number of sub-elements;
n. wherein selected ones of the number of sub-elements of the first one of the hierarchical elements are placed using the floorplanning tool, and the common placement database is updated to reflect the placement of the sub-elements of the first one of the hierarchical elements;
o. placing the second one of the hierarchical elements;
p. wherein the second one of the hierarchical elements includes a number of sub-elements, whereby the number of sub-elements of the second one of the hierarchical elements are located at the same relative position as the sub-elements of the first one of the hierarchical elements because the second one of the hierarchical elements references the updated common placement database.
11 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for selectively providing modularity and/or hierarchy to a behavioral description of a circuit design. This is accomplished by providing a template call in the behavioral description of the circuit design. The template call provides a reference to a corresponding template behavioral description. The behavioral description of the circuit design is expanded using an expander preprocessor, wherein a command line switch is used to selectively provide modularity and/or hierarchy to the resulting behavioral description.
-
Citations
9 Claims
-
1. A method for providing a behavioral description of a circuit design, the method comprising the steps of:
-
a. providing a template behavioral description, wherein the template behavioral description models a selected portion of the circuit design;
b. instantiating a number of template calls in the behavioral description of the circuit design by incorporating the template call into the behavioral description of the circuit design a number of times, thereby resulting in a number of template instantiations, each of the template instantiations including a reference to the corresponding template behavioral description;
c. identifying the template calls in the behavioral description of the circuit design that correspond to each of the template instantiations;
d. incorporating the behavioral description that corresponds to each of the template instantiations into the behavioral description of the circuit design;
e. wherein the behavioral description of the circuit design is stored in a file, and each of the template calls is positioned at a selected location in the file;
f. wherein said incorporating step (d) incorporates the template behavioral description at the selected locations in the file that correspond to the template calls;
g. wherein said incorporating step 18(d) further includes the step of providing a template marker at each of the selected locations in the file that correspond to the template calls;
h. synthesizing the behavioral description of the circuit design into a hierarchical detailed description of the circuit design;
i. wherein said synthesizing step results in a number of hierarchical elements, wherein each of the number of hierarchical elements corresponding to one of the template instantiations;
j. wherein each of the number of hierarchical elements implements the template behavioral description, and results in a hierarchical detailed description;
k. wherein at least a first and second one of the number of hierarchical elements reference a common placement database;
l. wherein the first one of the hierarchical elements is placed using a floorplanning tool;
m. wherein the first one of the hierarchical elements includes a number of sub-elements;
n. wherein selected ones of the number of sub-elements of the first one of the hierarchical elements are placed using the floorplanning tool, and the common placement database is updated to reflect the placement of the sub-elements of the first one of the hierarchical elements;
o. placing the second one of the hierarchical elements;
p. wherein the second one of the hierarchical elements includes a number of sub-elements, whereby the number of sub-elements of the second one of the hierarchical elements are located at the same relative position as the sub-elements of the first one of the hierarchical elements because the second one of the hierarchical elements references the updated common placement database. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
Specification