Patent US3142430A successfully refreshed from Google Patents.
← Back to Patent Explorer
US6080201A Expired / Lapsed US ⏱️ 0.0 years remaining

Integrated placement and synthesis for timing closure of microprocessors

Assignee: GlobalFoundries Inc
•
Filing: 1998-02-10
•
Granted: 2000-06-27
•
Expires: 2018-02-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract One aspect of the invention relates to a method for improving timing convergence in computer aided semiconductor circuit design. In one particular version of the invention, the method includes the steps of generating a behavioral model of a desired semiconductor circuit, which includes timing constraints for individual paths in the circuit, synthesizing the behavioral model to produce a netlist which represents an implementation of the desired semiconductor circuit mapped to a specific semiconductor technology, the netlist including a list of components in the circuit and a list of nets which connect the components in the circuit, and the step of synthesizing includes performing a timing analysis on the implementation so that the paths in the circuit represented by the netlist meet the timing constraints, the timing analysis being performed using estimated wire lengths for the nets. Next, the components in the netlist are placed into an image representing a predefined area of the semiconductor chip. During this step, actual wire lengths are determined for the nets in the netlist. The steps of synthesizing and placing are then repeated until timing convergences is achieved. Each time the step of synthesizing is repeated, the actual wire lengths from the step of placing are substituted for the estimated wire lengths. Finally, the circuit is routed to produce the final design data.

Inventors

  • 👤 Shervin Hojat
  • 👤 Paul Gerard Villarrubia

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 04:09
CPC Classifications
G; G06; G06F; G06F30/00; G06F30/30; G06F30/32; G06F30/323; G06F30/39; G06F30/327; G06F2119/00; G06F2119/12

Claims Analysis

Total Claims: 15
Claim 1
Independent Claim 364 words
A method for improving timing convergence in computer aided semiconductor circuit design, the method comprising the steps of: generating a behavioral model of a desired semiconductor circuit, the behavioral model including timing constraints for individual paths in the circuit; synthesizing the behavioral model to produce a netlist which represents an implementation of the desired semiconductor circuit mapped to a specific semiconductor technology, the netlist including a list of components in the circuit and a list of nets which connect the components in the circuit, the step of synthesizing including performing a timing analysis on the implementation set forth in the netlist so that the paths in the circuit represented by the netlist meet the timing constraints, the timing analysis being performed using estimated wire lengths for the nets; placing the components in the netlist into an image representing a predefined area of a semiconductor chip, the step of placing including determining actual wire lengths for the nets in the netlist; performing a timing analysis on the implementation set forth in the netlist using the actual wire lengths for the nets in the netlist; modifying the netlist in the event the timing analysis using the actual wire lengths indicates a violation of any of the timing constraints; placing the components in the modified netlist into the image representing the predefined area of the semiconductor chip, the step of placing the components in the modified netlist including determining actual wire lengths for the nets in the modified netlist; performing a timing analysis on the implementation set forth in the modified netlist using the actual wire lengths for the nets in the modified netlist; repeating the steps of modifying the netlist, placing the components in the modified netlist, and performing the timing analysis on the implementation set forth in the modified netlist using the actual wire lengths for the nets in the modified netlist until said timing analysis on the implementation set forth in the modified netlist indicates no violation of any of the timing constraints; and routing the circuit represented by the modified netlist after the timing analysis on the implementation set forth in the modified netlist indicates no violation of any of the timing constraints.
Claim 2
Independent Claim 364 words
A method for improving timing convergence in computer aided semiconductor circuit design, the method comprising the steps of: generating a behavioral model of a desired semiconductor circuit, the behavioral model including timing constraints for individual paths in the circuit; synthesizing the behavioral model to produce a netlist which represents an implementation of the desired semiconductor circuit mapped to a specific semiconductor technology, the netlist including a list of components in the circuit and a list of nets which connect the components in the circuit, the step of synthesizing including performing a timing analysis on the implementation set forth in the netlist so that the paths in the circuit represented by the netlist meet the timing constraints, the timing analysis being performed using estimated wire lengths for the nets; placing the components in the netlist into an image representing a predefined area of a semiconductor chip, the step of placing including determining actual wire lengths for the nets in the netlist; performing a timing analysis on the implementation set forth in the netlist using the actual wire lengths for the nets in the netlist; modifying the netlist in the event the timing analysis using the actual wire lengths indicates a violation of any of the timing constraints; placing the components in the modified netlist into the image representing the predefined area of the semiconductor chip, the step of placing the components in the modified netlist including determining actual wire lengths for the nets in the modified netlist; performing a timing analysis on the implementation set forth in the modified netlist using the actual wire lengths for the nets in the modified netlist; repeating the steps of modifying the netlist, placing the components in the modified netlist, and performing the timing analysis on the implementation set forth in the modified netlist using the actual wire lengths for the nets in the modified netlist until said timing analysis on the implementation set forth in the modified netlist indicates no violation of any of the timing constraints; and routing the circuit represented by the modified netlist after the timing analysis on the implementation set forth in the modified netlist indicates no violation of any of the timing constraints.
Claim 3
Dependent Claim 40 words
A method as in claim 1 wherein the step of placing comprises defining cuts across the image to create multiple partitions within in the image, the locations for the components being established in the image with respect to the partitions.
Claim 4
Dependent Claim 16 words
A method as in claim 2 wherein the step of synthesizing is repeated after every cut.
Claim 5
Dependent Claim 19 words
A method as in claim 2 wherein the step of synthesizing is repeated after a predetermined number of cuts.
Claim 6
Dependent Claim 32 words
A method as in claim 1 further comprising performing a transform on the circuit after the step of placing if a path in the circuit does not meet its associated timing constraints.
Claim 7
Dependent Claim 24 words
A method as in claim 1 wherein the step of generating a behavioral model comprises describing the desired circuit in a hardware description language.
Claim 8
Dependent Claim 382 words
A computer aided semiconductor circuit design system having improved timing convergence, the system comprising: means for generating behavioral model of a desired semiconductor circuit, the behavioral model including timing constraints for individual paths in the circuit; means for synthesizing the behavioral model to produce a netlist which represents an implementation of the desired semiconductor circuit mapped to a specific semiconductor technology, the netlist including a list of components in the circuit and a list of nets which connect the components in the circuit, wherein the means for synthesizing includes means for performing a timing analysis on the implementation so that the paths in the circuit represented by the netlist meet the timing constraints, the timing analysis being performed using estimated wire lengths for the nets; means for placing the components in the netlist into an image representing a predefined area of a semiconductor chip, wherein the means for the placing includes a means for determining actual wire lengths for the nets in the netlist; means for performing a timing analysis on the implementation set forth in the netlist using the actual wire lengths for the nets in the netlist; means for modifying the netlist in the event the timing analysis using the actual wire lengths indicates a violation of any of the timing constraints; means for placing the components in the modified netlist into the image representing the predefined area of the semiconductor chip, wherein the means for placing the components in the modified netlist includes means determining actual wire lengths for the nets in the modified netlist; means for performing a timing analysis on the implementation set forth in the modified netlist using the actual wire lengths for the nets in the modified netlist; means for repeating the functions of modifying the netlist, placing the components in the modified netlist, and performing the timing analysis on the implementation set forth in the modified netlist using the actual wire lengths for the nets in the modified netlist until said timing analysis on the implementation set forth in the modified netlist indicates no violation of any of the timing constraints; and means for routing the circuit represented by the modified netlist after the timing analysis on the implementation set forth in the modified netlist indicates no violation of any of the timing constraints.
Claim 9
Dependent Claim 382 words
A computer aided semiconductor circuit design system having improved timing convergence, the system comprising: means for generating behavioral model of a desired semiconductor circuit, the behavioral model including timing constraints for individual paths in the circuit; means for synthesizing the behavioral model to produce a netlist which represents an implementation of the desired semiconductor circuit mapped to a specific semiconductor technology, the netlist including a list of components in the circuit and a list of nets which connect the components in the circuit, wherein the means for synthesizing includes means for performing a timing analysis on the implementation so that the paths in the circuit represented by the netlist meet the timing constraints, the timing analysis being performed using estimated wire lengths for the nets; means for placing the components in the netlist into an image representing a predefined area of a semiconductor chip, wherein the means for the placing includes a means for determining actual wire lengths for the nets in the netlist; means for performing a timing analysis on the implementation set forth in the netlist using the actual wire lengths for the nets in the netlist; means for modifying the netlist in the event the timing analysis using the actual wire lengths indicates a violation of any of the timing constraints; means for placing the components in the modified netlist into the image representing the predefined area of the semiconductor chip, wherein the means for placing the components in the modified netlist includes means determining actual wire lengths for the nets in the modified netlist; means for performing a timing analysis on the implementation set forth in the modified netlist using the actual wire lengths for the nets in the modified netlist; means for repeating the functions of modifying the netlist, placing the components in the modified netlist, and performing the timing analysis on the implementation set forth in the modified netlist using the actual wire lengths for the nets in the modified netlist until said timing analysis on the implementation set forth in the modified netlist indicates no violation of any of the timing constraints; and means for routing the circuit represented by the modified netlist after the timing analysis on the implementation set forth in the modified netlist indicates no violation of any of the timing constraints.
Claim 10
Dependent Claim 44 words
A system as in claim 7 wherein the means for placing comprises a means for defining cuts across the image to create multiple partitions within the image so that the locations for the components are established in the image with respect to the partitions.
Claim 11
Dependent Claim 25 words
A system as in claim 8 wherein the means for substituting the actual wire lengths for the estimated wire lengths performs re-synthesis after every cut.
Claim 12
Dependent Claim 28 words
A system as in claim 8 wherein the means for substituting the actual wire lengths for the estimated wire lengths performs re-synthesis after a predetermined number of cuts.
Claim 13
Dependent Claim 27 words
A system as in claim 7 further comprising means for transforming the circuit after if a path in the circuit does not meet its associated timing constraints.
Claim 14
Dependent Claim 375 words
A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for placing circuit elements in an integrated circuit image, said method steps comprising: generating behavioral model of a desired semiconductor circuit, the behavioral model including timing constraints for individual paths in the circuit; synthesizing the behavioral model to produce a netlist which represents an implementation of the desired semiconductor circuit mapped to a specific semiconductor technology, the netlist including a list of components in the circuit and a list of nets which connect the components in the circuit, the step of synthesizing including performing a timing analysis on the implementation so that the paths in the circuit represented by the netlist meet the timing constraints, the timing analysis being performed using estimated wire lengths for the nets; placing the components in the netlist into an image representing a predefined area of a semiconductor chip, the step of placing including determining actual wire lengths for the nets in the netlist; performing a timing analysis on the implementation set forth in the netlist using the actual wire lengths for the nets in the netlist; modifying the netlist in the event the timing analysis using the actual wire lengths indicates a violation of any of the timing constraints; placing the components in the modified netlist into the image representing the predefined area of the semiconductor chip, the step of placing the components in the modified netlist including determining actual wire lengths for the nets in the modified netlist; performing a timing analysis on the implementation set forth in the modified netlist using the actual wire lengths for the nets in the modified netlist; repeating the steps of modifying the netlist, placing the components in the modified netlist, and performing the timing analysis on the implementation set forth in the modified netlist using the actual wire lengths for the nets in the modified netlist until said timing analysis on the implementation set forth in the modified netlist indicates no violation of any of the timing constraints; and routing the circuit represented by the modified netlist after the timing analysis on the implementation set forth in the modified netlist indicates no violation of any of the timing constraints.
Claim 15
Dependent Claim 375 words
A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for placing circuit elements in an integrated circuit image, said method steps comprising: generating behavioral model of a desired semiconductor circuit, the behavioral model including timing constraints for individual paths in the circuit; synthesizing the behavioral model to produce a netlist which represents an implementation of the desired semiconductor circuit mapped to a specific semiconductor technology, the netlist including a list of components in the circuit and a list of nets which connect the components in the circuit, the step of synthesizing including performing a timing analysis on the implementation so that the paths in the circuit represented by the netlist meet the timing constraints, the timing analysis being performed using estimated wire lengths for the nets; placing the components in the netlist into an image representing a predefined area of a semiconductor chip, the step of placing including determining actual wire lengths for the nets in the netlist; performing a timing analysis on the implementation set forth in the netlist using the actual wire lengths for the nets in the netlist; modifying the netlist in the event the timing analysis using the actual wire lengths indicates a violation of any of the timing constraints; placing the components in the modified netlist into the image representing the predefined area of the semiconductor chip, the step of placing the components in the modified netlist including determining actual wire lengths for the nets in the modified netlist; performing a timing analysis on the implementation set forth in the modified netlist using the actual wire lengths for the nets in the modified netlist; repeating the steps of modifying the netlist, placing the components in the modified netlist, and performing the timing analysis on the implementation set forth in the modified netlist using the actual wire lengths for the nets in the modified netlist until said timing analysis on the implementation set forth in the modified netlist indicates no violation of any of the timing constraints; and routing the circuit represented by the modified netlist after the timing analysis on the implementation set forth in the modified netlist indicates no violation of any of the timing constraints.

References Cited (Backward Citations)

US5218551A Cited
US5402357A Cited
US5237514A Cited
US5937190A Cited
US5629860A Cited
US5784600A Cited
US5923564A Cited
US5831870A Cited
US5838582A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-06-27 2003-12-27 2004-06-27 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-06-27 2007-12-27 2008-06-27 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-06-27 2011-12-27 2012-06-27 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag