8065652

Method and System for Determining Hard and Preferred Rules in Global Routing of Electronic Designs

PublishedNovember 22, 2011
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
53 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A computer-implemented method for determining whether to use hard rules or whether to use soft rules for a first g-cell during global routing of an integrated circuit design, comprising: performing global routing with one or more of the hard rules which comprise a first requirement for a routing demand and guide the global routing; determining, by using at least one processor, whether a first g-cell in the global routing is overcongested by at least using one or more of the soft rules, wherein the one or more of the soft rules comprise a second requirement for the routing demand and are not the hard rules; identifying or creating a marking of the first g-cell as using soft rule to improve at least a performance aspect of the integrated circuit design by using at least some of the soft rules where the first g-cell is determined not to be overcongested in the act of determining whether the first g-cell is overcongested, wherein the marking of the first g-cell indicates what rule the first g-cell is to be based at least in part upon during a routing of the integrated circuit design; and storing a result of the act of identifying the marking of the first g-cell in a tangible computer accessible medium for use in subsequent routing or displaying the result on a display apparatus.

2

2. The computer-implemented method of claim 1 , in which the action of determining whether the first g-cell is overcongested comprises: identifying a route in the first g-cell; identifying whether the marking of the first g-cell is using hard rule or using soft rule; determining the pitch contribution to the first g-cell based at least in part upon the marking of the first g-cell; and adjusting the pitch in the first g-cell according to the pitch contribution.

3

3. The computer-implemented method of claim 2 , in which the act of adjusting the pitch comprises adding or subtracting the pitch based at least in part upon the pitch contribution.

4

4. The computer-implemented method of claim 2 , in which the pitch contribution is a hard rule pitch where the marking of the first g-cell is using hard rule.

5

5. The computer-implemented method of claim 2 , in which the pitch contribution is a soft rule pitch where the marking of the first g-cell is using soft rule.

6

6. The computer-implemented method of claim 1 , further comprising: reevaluating congestion of the first g-cell after marking the g-cell as using soft rule.

7

7. The computer-implemented method of claim 6 , further comprising: marking the congestion based at least in part upon a result of the action of reevaluating the congestion; rerouting a route in a second g-cell in accordance with a result of the marking congestion action; determining whether the second g-cell is overcongested; and marking the second g-cell as using soft rule, in which the second g-cell is determined not to be overcongested.

8

8. The computer-implemented method of claim 1 , further comprising: determining whether a first criterion is met for the integrated circuit design.

9

9. The computer-implemented method of claim 8 , in which the first criterion comprises a design density control criterion.

10

10. The computer-implemented method of claim 8 , in which the first criterion comprises whether the route is on a critical path.

11

11. The computer-implemented method of claim 8 , in which the first criterion comprises whether a critical dimension is involved.

12

12. The computer-implemented method of claim 1 , further comprising: merging the first g-cell determined to be overcongested with a third g-cell until a second criterion is met to form a fourth g-cell, in which the third g-cell is adjacent to the first g-cell.

13

13. The computer-implemented method of claim 12 , in which the third g-cell is determined not to be overcongested.

14

14. The computer-implemented method of claim 12 , further comprising: merging the first g-cell determined to be overcongested with a fifth g-cell until a third criterion is met to form a sixth g-cell, in which the third g-cell is determined to be overcongested and the fourth g-cell is determined not to be overcongested.

15

15. The computer-implemented method of claim 14 , in which the third criterion comprises a second predefined cost metric for routing.

16

16. The computer-implemented method of claim 14 , in which the third criterion comprises a first minimum threshold number of components within the fifth g-cell to be considered during global routing.

17

17. The computer-implemented method of claim 14 , in which the third criterion comprises a second maximum threshold number of g-cells in the integrated circuit design.

18

18. The computer-implemented method of claim 12 , further comprising: determining whether the fourth g-cell inherits the marking from the first g-cell; identifying a marking of design rule for the fourth g-cell; performing the global routing in the fourth g-cell; evaluating congestion of the fourth g-cell based at least in part on a second corresponding soft rule; and determining whether the fourth g-cell is overcongested based at least in part upon a result of the action of evaluating the congestion of the fourth g-cell based at least in part on the second corresponding soft rule.

19

19. The computer-implemented method of claim 18 , in which the marking for the fourth g-cell is using hard rule, where the fourth g-cell does not inherit marking of design rule from the first g-cell.

20

20. The computer-implemented method of claim 18 , in which the marking of design rule for the fourth g-cell is identical to the marking of the first g-cell, where the fourth g-cell inherits marking of design rule from the first g-cell.

21

21. The computer-implemented method of claim 18 , further comprising: undoing the action of merging the first g-cell with a third g-cell, in which the fourth g-cell is determined to be overcongested.

22

22. The computer-implemented method of claim 18 , further comprising: marking the fourth g-cell as using hard rule, in which the fourth g-cell is determined to be overcongested under the second corresponding soft rule.

23

23. The computer-implemented method of claim 18 , further comprising: marking the fourth g-cell as using soft rule, in which the fourth g-cell is determined not to be overcongested under the second corresponding soft rule.

24

24. The computer-implemented method of claim 12 , in which the second criterion comprises a first predefined cost metric for routing.

25

25. The computer-implemented method of claim 12 , in which the second criterion comprises a first maximum threshold number of components within the fourth g-cell to be considered during global routing.

26

26. The computer-implemented method of claim 12 , in which the second criterion comprises a second maximum threshold number of g-cells in the integrated circuit design.

27

27. The computer-implemented method of claim 1 , in which the action of determining congestion comprises: determining a routing demand of the first g-cell; determining a routing capacity of the first g-cell; and identifying the first g-cell as overcongested based at least in part upon the routing demand and the routing capacity.

28

28. The computer-implemented method of claim 1 , further comprising: uncoarsening the first g-cell determined not to be overcongested until a fourth criterion is met to form a set of g-cells comprising a seventh g-cell.

29

29. The computer-implemented method of claim 28 , in which the seventh g-cell is identical to the first g-cell.

30

30. The computer-implemented method of claim 28 , further comprising: determining whether the seventh g-cell inherits a marking of design rule from the first g-cell; identifying a marking of design rule for the seventh g-cell; performing global routing in at least the seventh g-cell; evaluating congestion of the seventh g-cell under a third corresponding soft rule; and determining, under the third corresponding soft rule, whether the seventh g-cell is overcongested based at least in part upon the congestion of the seventh g-cell.

31

31. The computer-implemented method of claim 30 , in which the marking for the seventh g-cell is using hard rule, where the seventh g-cell does not inherit marking of design rule from the first g-cell.

32

32. The computer-implemented method of claim 30 , in which the marking for the fourth g-cell is identical to the marking for the first g-cell, where the seventh g-cell inherits marking of design rule from the first g-cell.

33

33. The computer-implemented method of claim 30 , further comprising: undoing the action of uncoarsening the first g-cell, in which the seventh g-cell is determined to be overcongested.

34

34. The computer-implemented method of claim 30 , further comprising: marking the seventh g-cell as using hard rule, in which the seventh g-cell is determined to be overcongested under the third corresponding soft rule.

35

35. The computer-implemented method of claim 30 , further comprising: marking the fourth g-cell as using soft rule, in which the seventh g-cell is determined not to be overcongested under the third corresponding soft rule.

36

36. The computer-implemented method of claim 28 , in which the fourth criterion comprises a predefined uncoarsening scheme.

37

37. The computer-implemented method of claim 28 , in which the fourth criterion comprises a minimum threshold number of g-cells in the set of g-cells.

38

38. The computer-implemented method of claim 28 , in which the fourth criterion comprises a result of congestion evaluation of the set of g-cells.

39

39. A system for determining whether to use the hard rules or whether to use the preferred rules for a first g-cell during global routing of an integrated circuit design, comprising: at least one processor configured for: performing global routing with one or more hard rules which comprise a first requirement for a routing demand and guide the global routing; determining whether a first g-cell in the global routing is overcongested by at least using one or more of the soft rules, wherein the one or more of the soft rules comprise a second requirement for the routing demand and are not the hard rules; and identifying or creating a marking of the first g-cell as using soft rule to improve at least a performance aspect of the integrated circuit design by using at least some of the soft rules where the first g-cell is determined not to be overcongested in the act of determining whether the first g-cell is overcongested, wherein the marking of the first g-cell indicates what rule the first g-cell is to be based at least in part upon during a routing of the integrated circuit design; and a non-transitory tangible computer readable medium or a storage device configured for storing a result produced by the means for identifying the marking of the first g-cell for use in subsequent routing or a display apparatus configured for displaying, the result.

40

40. The system of claim 39 , in which the at least one processor programmed for determining whether the first g-cell is overcongested is further programmed for: identifying a route in the first g-cell; identifying whether the marking of the first g-cell is using hard rule or using soft rule; determining a pitch contribution to the first g-cell based at least in part upon the marking of the first g-cell; and adjusting a pitch in the first g-cell according to the pitch contribution.

41

41. The system of claim 39 , in which the at least one processor is further programmed for: reevaluating congestion of the first g-cell after marking the g-cell as using soft rule; marking congestion based at least in part upon a result of the reevaluating action; rerouting a route in a second g-cell in accordance with a result of the marking congestion action; determining whether the second g-cell is overcongested; and marking the second g-cell as using soft rule, in which the second g-cell is determined not to be overcongested.

42

42. The system of claim 39 , the at least one processor being further programmed for: merging the first g-cell determined to be overcongested with a third g-cell until a second criterion is met to form a fourth g-cell, in which the third g-cell is adjacent to the first g-cell; determining whether the fourth g-cell inherits marking of design rule from the first g-cell; identifying a marking of design rule for the fourth g-cell; performing global routing in the fourth g-cell; evaluating congestion of the fourth g-cell based at least in part on a second corresponding soft rule; and determining whether the fourth g-cell is overcongested based at least in part upon a result of the action of evaluating congestion of the fourth g-cell based at least in part on the second corresponding soft rule.

43

43. The system of claim 39 , in which the at least one processor is further programmed for: determining a routing demand of the first g-cell; determining a routing capacity of the first g-cell; and identifying the first g-cell as overcongested based at least in part upon the routing demand and the routing capacity.

44

44. The system of claim 39 , the at least one processor is further programmed for: uncoarsening the first g-cell determined not to be overcongested until a fourth criterion is met to form a set of g-cells comprising a seventh g-cell; and uncoarsening the first g-cell determined not to be overcongested until a fourth criterion is met to form a set of g-cells comprising a seventh g-cell.

45

45. The system of claim 44 , the at least one processor is further programmed for: determining whether the seventh g-cell inherits a marking of design rule from the first g-cell; identifying a marking of design rule for the seventh g-cell; performing global routing in at least the seventh g-cell; evaluating congestion of the seventh g-cell under a third corresponding soft rule; and determining, under the third corresponding soft rule, whether the seventh g-cell is overcongested based at least in part upon the congestion of the seventh g-cell.

46

46. A computer program product comprising a non-transitory computer-usable storage medium having executable code which, when executed by a processor, causes the processor to execute a process for determining whether to use the hard rules or whether to use the preferred rules for a first g-cell during global routing of an integrated circuit design, the process comprising: performing global routing with one or more hard rules which comprise a first requirement for a routing demand and guide the global routing; determining, by using at least one processor, whether a first g-cell in the global routing is overcongested by at least using one or more of the soft rules, wherein the one or more of the soft rules comprise a second requirement for the routing demand and are not the hard rules; identifying or creating a marking of the first g-cell as using soft rule to improve at least a performance aspect of the integrated circuit design by using at least some of the soft rules where the first g-cell is determined not to be overcongested in the ac of determining whether the first g-cell is overcongested, wherein the marking of the first g-cell indicates what rule the first g-cell is to be based at least in part upon during a routing of the integrated circuit; and storing a result of the act of identifying the marking of the first g-cell in a non-transitory tangible computer accessible storage medium for use in subsequent routing or displaying the result on a display apparatus.

47

47. The computer program product of claim 46 , in which act of determining whether the first g-cell is overcongested further comprises: identifying a route in the first g-cell; identifying whether the marking of the first g-cell is using hard rule or using soft rule; determining a pitch contribution to the first g-cell based at least in part upon the marking of the first g-cell; and adjusting a pitch in the first g-cell according to the pitch contribution.

48

48. The computer program product of claim 46 , the process further comprising: reevaluating congestion of the first g-cell after marking the g-cell as using soft rule; marking congestion based at least in part upon a result of the reevaluating action; rerouting a route in a second g-cell in accordance with a result of the marking congestion action; determining whether the second g-cell is overcongested; and marking the second g-cell as using soft rule, in which the second g-cell is determined not to be overcongested.

49

49. The computer program product of claim 46 , further comprising: merging the first g-cell determined to be overcongested with a third g-cell until a second criterion is met to form a fourth g-cell, in which the third g-cell is adjacent to the first g-cell; determining whether the fourth g-cell inherits marking of design rule from the first g-cell; identifying a marking of design rule for the fourth g-cell; performing global routing in the fourth g-cell; evaluating congestion of the fourth g-cell based at least in part on a second corresponding soft rule; and determining whether the fourth g-cell is overcongested based at least in part upon a result of the action of evaluating congestion of the fourth g-cell based at least in part on the second corresponding soft rule.

50

50. The computer program product of claim 46 , further comprising: determining a routing demand of the first g-cell; determining a routing capacity of the first g-cell; and identifying the first g-cell as overcongested based at least in part upon the routing demand and the routing capacity.

51

51. The computer program product of claim 46 , further comprising: uncoarsening the first g-cell determined not to be overcongested until a fourth criterion is met to form a set of g-cells comprising a seventh g-cell; and uncoarsening the first g-cell determined not to be overcongested until a fourth criterion is met to form a set of g-cells comprising a seventh g-cell.

52

52. The computer program product of claim 51 , further comprising: determining whether the seventh g-cell inherits a marking of design rule from the first g-cell; identifying a marking of design rule for the seventh g-cell; performing global routing in at least the seventh g-cell; evaluating congestion of the seventh g-cell under a third corresponding soft rule; and determining, under the third corresponding soft rule, whether the seventh g-cell is overcongested based at least in part upon the congestion of the seventh g-cell.

53

53. The computer-implemented method of claim 1 , further comprising: performing detailed routing based at least in part upon the marking of the first g-cell as using soft rule rather than involving a rip-up and reroute process for a portion of the integrated circuit design, wherein at least one of the one or more of the soft rules increases the routing demand in a portion of the integrated circuit design comprising the first g-cell.

Patent Metadata

Filing Date

Unknown

Publication Date

November 22, 2011

Inventors

Jeffrey Scott Salowe
Charles T. Houck

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “METHOD AND SYSTEM FOR DETERMINING HARD AND PREFERRED RULES IN GLOBAL ROUTING OF ELECTRONIC DESIGNS” (8065652). https://patentable.app/patents/8065652

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.