← Back to Patent Explorer
US6536024B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Method for making integrated circuits having gated clock trees

Assignee: GlobalFoundries Inc
•
Filing: 2000-07-14
•
Granted: 2003-03-18
•
Expires: 2020-07-14
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for synthesizing a logic circuit that is driven by a clock signal, and that has a plurality of clock domains each having a plurality of clock sinks. A semiconductor substrate is provided. All of the plurality of clock sinks of one clock domain are placed into at least one cluster of clock sinks on the semiconductor substrate. A clock sink-density of each cluster of clock sinks is approximately equal to or greater than a clock sink density of an integrated circuit. A first portion of the plurality of clock sinks of a domain have a higher sink density than a second portion of the plurality of clock sinks of the same domain. The first portion has a subregion and the second portion has a subregion. The subregion of the first portion is adjacent to the region of the second portion.

Inventors

  • 👤 David J. Hathaway

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 11:14
CPC Classifications
G; G06; G06F; G06F30/00; G06F30/30; G06F1/00; G06F1/04; G06F1/10

Claims Analysis

Total Claims: 35
Claim 1
Independent Claim 161 words
A method for synthesizing a logic circuit that is driven by a clock signal, and that has a plurality of clock domains each having a plurality of clock sinks, the method comprising: providing a semiconductor substrate; placing all of the plurality of clock sinks of one clock domain into at least one cluster of clock sinks on the semiconductor substrate, wherein a clock sink-density of each cluster of clock sinks is approximately equal to or greater than a clock sink density of an integrated circuit that includes the clock sinks of all of the clock domains, wherein a first portion of the plurality of clock sinks of a clock domain has a higher sink density than a second portion of the plurality of clock sinks of the same clock domain; wherein the first portion has a subregion and the second portion has a subregion, and wherein the subregion of the first portion is adjacent to the subregion of the second portion.
Claim 2
Independent Claim 161 words
A method for synthesizing a logic circuit that is driven by a clock signal, and that has a plurality of clock domains each having a plurality of clock sinks, the method comprising: providing a semiconductor substrate; placing all of the plurality of clock sinks of one clock domain into at least one cluster of clock sinks on the semiconductor substrate, wherein a clock sink-density of each cluster of clock sinks is approximately equal to or greater than a clock sink density of an integrated circuit that includes the clock sinks of all of the clock domains, wherein a first portion of the plurality of clock sinks of a clock domain has a higher sink density than a second portion of the plurality of clock sinks of the same clock domain; wherein the first portion has a subregion and the second portion has a subregion, and wherein the subregion of the first portion is adjacent to the subregion of the second portion.
Claim 3
Independent Claim 144 words
A method for synthesizing a logic circuit that is driven by a clock signal, and that has a plurality of clock domains each having a plurality of clock sinks, the method comprising: providing a semiconductor substrate; placing all of the plurality of clock sinks of one clock domain into at least one cluster of clock sinks on the semiconductor substrate, wherein a clock sink-density of each cluster of clock sinks is approximately equal to or greater than a clock sink density of an integrated circuit that includes the clock sinks of all of the clock domains, wherein a first portion of the plurality of clock sinks of a clock domain has a first region and a second portion of the plurality of clock sinks of the same clock domain has a second region, and wherein the first region is separated from the second region.
Claim 4
Independent Claim 144 words
A method for synthesizing a logic circuit that is driven by a clock signal, and that has a plurality of clock domains each having a plurality of clock sinks, the method comprising: providing a semiconductor substrate; placing all of the plurality of clock sinks of one clock domain into at least one cluster of clock sinks on the semiconductor substrate, wherein a clock sink-density of each cluster of clock sinks is approximately equal to or greater than a clock sink density of an integrated circuit that includes the clock sinks of all of the clock domains, wherein a first portion of the plurality of clock sinks of a clock domain has a first region and a second portion of the plurality of clock sinks of the same clock domain has a second region, and wherein the first region is separated from the second region.
Claim 5
Dependent Claim 32 words
The method of claim 2 wherein the plurality of clock sinks of the first portion and the plurality of clock sinks of the second portion are gated by different physical clock gates.
Claim 6
Dependent Claim 52 words
The method of claim 2 wherein the plurality of clock sinks of the first portion are gated by a first clock gate controlled by a first clock gating signal, and the plurality clock sinks of the second portion are gated by a second clock gate controlled by a second clock gating signal.
Claim 7
Dependent Claim 25 words
The method of claim 4 wherein the second clock gating signal is a composite clock gating signal that logically includes the first clock gating signal.
Claim 8
Dependent Claim 41 words
The method of claim 2 wherein the plurality of clock sinks of the first portion are gated by a first clock gate controlled by a first clock gating signal, and the plurality of clock sinks of the second portion are ungated.
Claim 9
Dependent Claim 23 words
The method of claim 2 wherein there are no clock sinks of any other domain between the first region and the second region.
Claim 10
Dependent Claim 19 words
The method of claim 2 wherein there are no clock sinks of any other domain within the first region.
Claim 11
Dependent Claim 20 words
The method of claim 1 wherein at least one clock sink of another clustered domain is within the second region.
Claim 12
Dependent Claim 150 words
An integrated circuit that is driven by a clock signal, comprising: a semiconductor substrate; and a plurality of clock domains each having a plurality of clock sinks; wherein the plurality of clock sinks of one clock domain forms at least one cluster of clock sinks on the semiconductor substrate, wherein a clock sink-density of each cluster of clock sinks is approximately equal to or greater than a clock sink density of the integrated circuit that includes the clock sinks of all of the clock domains, wherein a first portion of the plurality of clock sinks of a clock domain has a higher sink density than a second portion of the plurality of clock sinks of the same clock domain; wherein the first portion has a subregion and the second portion has a subregion, and wherein the subregion of the first portion is adjacent to the region of the second portion.
Claim 13
Dependent Claim 150 words
An integrated circuit that is driven by a clock signal, comprising: a semiconductor substrate; and a plurality of clock domains each having a plurality of clock sinks; wherein the plurality of clock sinks of one clock domain forms at least one cluster of clock sinks on the semiconductor substrate, wherein a clock sink-density of each cluster of clock sinks is approximately equal to or greater than a clock sink density of the integrated circuit that includes the clock sinks of all of the clock domains, wherein a first portion of the plurality of clock sinks of a clock domain has a higher sink density than a second portion of the plurality of clock sinks of the same clock domain; wherein the first portion has a subregion and the second portion has a subregion, and wherein the subregion of the first portion is adjacent to the region of the second portion.
Claim 14
Independent Claim 156 words
A method for creating an integrated circuit having a clock signal distributed by a gated clock tree having a plurality of clock domains each having a plurality of clock sinks, comprising the steps of: creating a model of the integrated circuit, wherein the model includes a netlist, and wherein the model of the integrated circuit includes a netlist of the gated clock tree; changing the gated clock tree's netlist, wherein changing the gated clock tree's netlist includes placing a copy of a domain's gate at a level to implement single-gate gating of each separated subdomain; establishing at least one target condition for a clock domain; and making a determination of the extent to which a clock domain is in compliance with the at least one target condition, wherein making a placement refinement is based upon the determination, and wherein a performance of the placement refinement divides a clock gate domain into a plurality of separated subdomains.
Claim 15
Independent Claim 156 words
A method for creating an integrated circuit having a clock signal distributed by a gated clock tree having a plurality of clock domains each having a plurality of clock sinks, comprising the steps of: creating a model of the integrated circuit, wherein the model includes a netlist, and wherein the model of the integrated circuit includes a netlist of the gated clock tree; changing the gated clock tree's netlist, wherein changing the gated clock tree's netlist includes placing a copy of a domain's gate at a level to implement single-gate gating of each separated subdomain; establishing at least one target condition for a clock domain; and making a determination of the extent to which a clock domain is in compliance with the at least one target condition, wherein making a placement refinement is based upon the determination, and wherein a performance of the placement refinement divides a clock gate domain into a plurality of separated subdomains.
Claim 16
Dependent Claim 25 words
The method of claim 11 wherein the extent to which a domain is in compliance with a target condition is represented by a weighting factor.
Claim 17
Dependent Claim 29 words
The method of claim 12 further comprising changing the weighting factor of the target condition so that the target condition will have no influence upon a subsequent placement refinement.
Claim 18
Dependent Claim 20 words
The method of claim 12 wherein the weighting factor applies to the connections between the clock sinks of the domain.
Claim 19
Dependent Claim 17 words
The method of claim 12 wherein the weighting factor applies to the clock sinks of the domain.
Claim 20
Dependent Claim 15 words
The method of claim 12 wherein the weighting factor is implemented by a numerical value.
Claim 21
Dependent Claim 23 words
The method of claim 12 wherein the weighting factor is implemented by modifying a netlist to change an influence of a particular connection.
Claim 22
Dependent Claim 28 words
The method of claim 11 wherein the step of making a placement refinement results in an increase of the extent of the domain's compliance with the target condition.
Claim 23
Dependent Claim 13 words
The method of claim 11 wherein the placement refinement provides real placement information.
Claim 24
Dependent Claim 35 words
The method of claim 19 wherein the determination of the extent to which a domain is in compliance with the target condition is based upon information provided by a performance of the placement refinement step.
Claim 25
Dependent Claim 13 words
The method of claim 11 wherein the placement refinement is a partitioning min-cut.
Claim 26
Dependent Claim 43 words
The method of claim 21 wherein performance of the placement refinement step places all clock sinks of a given clock gate domain together in one region in compliance with the target condition, wherein the wherein the target condition is a minimum sink density.
Claim 27
Dependent Claim 25 words
The method of claim 11 wherein the netlist includes: a connection between a clock signal and at least one clock sink of a clock domain.
Claim 28
Dependent Claim 20 words
The method of claim 11 wherein the steps of making a determination and of making a placement refinement are repeated.
Claim 29
Dependent Claim 80 words
The method of claim 11 wherein a target condition includes at least one of: a minimum target sink density; a maximum target sink density; a maximum domain switching capacitance; a maximum overlap of sub/domain regions; a minimum overlap of sub/domain regions; a limitation on crossing of clock signal wires; a maximum of heat release per unit area; and a maximum of heat release per unit area per unit time; and a range of heat-release per unit area per unit time.
Claim 30
Dependent Claim 52 words
The method of claim 25 wherein a target condition is a target sink density, and wherein the determination of the extent to which clock domain is in compliance with the target condition includes calculating the density of sinks in a clock domain and comparing the calculated density to the target sink density.
Claim 31
Dependent Claim 35 words
The method of claim 26 wherein the target condition is a minimum sink density, and wherein the minimum sink density is approximately equal to or greater than a clock sink density of the integrated circuit.
Claim 32
Independent Claim 134 words
A method for creating an integrated circuit, comprising the steps of: providing a semiconductor substrate; providing a logic circuit design; providing a clock tree design having clock sinks in common with the logic circuit design; performing a placement refinement providing information about a location of the clock sinks on the substrate; and performing an after-placement-type clock tree optimization method before placement is complete, wherein the after-placement-type clock tree optimization method comprises the steps of: determining a correlation level between a plurality of clock gating signals and their corresponding gates which gate a source clock; and combining a single clock gating signal and a single corresponding gate said plurality of clock gating signals and their corresponding gates only if the correlation level determined by the determining step falls within preselected range of levels of correlation.
Claim 33
Independent Claim 134 words
A method for creating an integrated circuit, comprising the steps of: providing a semiconductor substrate; providing a logic circuit design; providing a clock tree design having clock sinks in common with the logic circuit design; performing a placement refinement providing information about a location of the clock sinks on the substrate; and performing an after-placement-type clock tree optimization method before placement is complete, wherein the after-placement-type clock tree optimization method comprises the steps of: determining a correlation level between a plurality of clock gating signals and their corresponding gates which gate a source clock; and combining a single clock gating signal and a single corresponding gate said plurality of clock gating signals and their corresponding gates only if the correlation level determined by the determining step falls within preselected range of levels of correlation.
Claim 34
Dependent Claim 184 words
A computer program product for use in designing an integrated circuit having a clock signal distributed by a gated clock tree having a plurality of clock domains each having a plurality of clock sinks, the computer program product comprising a medium readable by a computer, the computer readable medium having: program code for creating a model of the integrated circuit, wherein the model includes a netlist, and wherein the model of the integrated circuit includes a netlist of the gated clock tree; program code for changing the gated clock tree's netlist, wherein changing the gated clock tree's netlist includes placing a copy of a domain's gate at a level to implement single-gate gating of each separated subdomain; program code for establishing at least one target condition for a clock domain; program code for making a determination of the extent to which a clock domain is in compliance with the at least one target condition; and program code for making a placement refinement based upon the determination, wherein a performance of the placement refinement divides a clock gate domain into a plurality of separated subdomains.
Claim 35
Dependent Claim 184 words
A computer program product for use in designing an integrated circuit having a clock signal distributed by a gated clock tree having a plurality of clock domains each having a plurality of clock sinks, the computer program product comprising a medium readable by a computer, the computer readable medium having: program code for creating a model of the integrated circuit, wherein the model includes a netlist, and wherein the model of the integrated circuit includes a netlist of the gated clock tree; program code for changing the gated clock tree's netlist, wherein changing the gated clock tree's netlist includes placing a copy of a domain's gate at a level to implement single-gate gating of each separated subdomain; program code for establishing at least one target condition for a clock domain; program code for making a determination of the extent to which a clock domain is in compliance with the at least one target condition; and program code for making a placement refinement based upon the determination, wherein a performance of the placement refinement divides a clock gate domain into a plurality of separated subdomains.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2006-03-17 2006-09-16 2007-03-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2010-03-17 2010-09-16 2011-03-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2014-03-17 2014-09-16 2015-03-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag