Presentation is loading. Please wait.

Presentation is loading. Please wait.

Automatic Length Compensation for Analog Integrated Circuit Routing.

Similar presentations


Presentation on theme: "Automatic Length Compensation for Analog Integrated Circuit Routing."— Presentation transcript:

1 Automatic Length Compensation for Analog Integrated Circuit Routing

2 Matthew A. Smith (Foley & Lardner LLP) Lars Schreiner (Cadence Design Systems, Inc.) Erich Barke (University of Hannover) Volker Meyer-zu-Bexten (ATMEL Germany GmbH)

3 Matthew Smith 3 Overview  Approach  Problems to be Solved  Results  Summary

4 Matthew Smith 4 Overview  Approach  Problems to be Solved  Results  Summary

5 Matthew Smith 5  One goal (of many): balance parasitic loads on interconnects  Analog Router  During routing length differences between bus traces occur PARSY GLOBAL LOCAL Terminal: Beginning of a “Net Bundle”

6 Matthew Smith 6 Length Compensation Create a Geometry Equalizes Trace Lengths L=100 L=110 L=120

7 Matthew Smith 7 Length Compensation Create a Geometry Equalizes Trace Lengths L=100 L=110 L=120

8 Matthew Smith 8 Length Compensation Create a Geometry Equalizes Trace Lengths L=100 L=110 L=120

9 Matthew Smith 9 Length Compensation Create a Geometry Equalizes Trace Lengths L=100 L=110 L=120

10 Matthew Smith 10 Length Compensation Create a Geometry Equalizes Trace Lengths L= 120 L=110 L=120

11 Matthew Smith 11 Length Compensation Create a Geometry Equalizes Trace Lengths L=120 L=110 L=120

12 Matthew Smith 12 Length Compensation Create a Geometry Equalizes Trace Lengths L=120 L=110 L=120

13 Matthew Smith 13 Length Compensation Create a Geometry Equalizes Trace Lengths L=120 L=110 L=120

14 Matthew Smith 14 Length Compensation Create a Geometry Equalizes Trace Lengths L=120

15 Matthew Smith 15 Length Compensation Create a Geometry Equalizes Trace Lengths L=120

16 Matthew Smith 16 A More Difficult Case L=100 L=200 L=120 L=200 L=150

17 Matthew Smith 17 A More Difficult Case L=100 L=200 L=120 L=200 L=150 Find the longest trace(s)

18 Matthew Smith 18 A More Difficult Case L=100 L=200 L=120 L=200 L=150 Make all lengths 200

19 Matthew Smith 19 A More Difficult Case L=100 L=200 L=120 L=200 L=150

20 Matthew Smith 20 A More Difficult Case L=100 L=200 L=120 L=200 L=150

21 Matthew Smith 21 A More Difficult Case L=100 L=200 L=120 L=200 L=150

22 Matthew Smith 22 A More Difficult Case L=100 L=200 L=120 L=200 L=150

23 Matthew Smith 23 A More Difficult Case L=100 L=200 L=120 L=200

24 Matthew Smith 24 A More Difficult Case L=100 L=200 L=120 L=200

25 Matthew Smith 25 A More Difficult Case L=100 L=200 L=120 L=200

26 Matthew Smith 26 A More Difficult Case L=100 L=200 L=120 L=200

27 Matthew Smith 27 A More Difficult Case L=100 L=200 L=120 L=200

28 Matthew Smith 28 A More Difficult Case L=100 L=200

29 Matthew Smith 29 A More Difficult Case L=100 L=200

30 Matthew Smith 30 A More Difficult Case L=100 L=200 Middle trace uncompensated

31 Matthew Smith 31 A More Difficult Case L=100 L=200 Middle trace uncompensated Needs room for compensation geometry

32 Matthew Smith 32 A More Difficult Case L=100 L=200 Middle trace uncompensated Needs room for compensation geometry HOWEVER

33 Matthew Smith 33 A More Difficult Case L=100 L=200 Middle trace uncompensated Needs room for compensation geometry HOWEVER To make room, other traces must be moved (lengthened)

34 Matthew Smith 34 Problem To Be Solved

35 Matthew Smith 35  General Length Compensation Problem for Parallel Traces Problem To Be Solved

36 Matthew Smith 36  Arbitrary Number of Traces  General Length Compensation Problem for Parallel Traces Problem To Be Solved

37 Matthew Smith 37  Arbitrary Number of Traces  General Length Compensation Problem for Parallel Traces  Arbitrary Lengths, Widths and Spacings Problem To Be Solved

38 Matthew Smith 38 Characteristics of a Good Solution

39 Matthew Smith 39  Compensates Trace Lengths Characteristics of a Good Solution

40 Matthew Smith 40  Compensates Trace Lengths  Introduces Minimal Extra Trace Length Characteristics of a Good Solution

41 Matthew Smith 41  Compensates Trace Lengths  Introduces Minimal Extra Trace Length  Keeps Footprint Small Characteristics of a Good Solution

42 Matthew Smith 42  Compensates Trace Lengths  Introduces Minimal Extra Trace Length  Keeps Footprint Small  Introduces Few Additional Bends Characteristics of a Good Solution

43 Matthew Smith 43  Compensates Trace Lengths  Introduces Minimal Extra Trace Length  Keeps Footprint Small  Introduces Few Additional Bends  Flexible and Easy to Implement Characteristics of a Good Solution

44 Matthew Smith 44 Overview  Approach  Problems to be Solved  Results  Summary

45 Matthew Smith 45 Overview  Approach  Problems to be Solved  Results  Summary

46 Matthew Smith 46 Ripple Compensation

47 Matthew Smith 47 Ripple Compensation  Multiple copies of a simple compensation geometry

48 Matthew Smith 48 Ripple Compensation RH  Multiple copies of a simple compensation geometry

49 Matthew Smith 49 Ripple Compensation  A fixed height RH is chosen for the compensation geometry  Multiple copies of a simple compensation geometry RH

50 Matthew Smith 50 Ripple Compensation  A fixed height RH is chosen for the compensation geometry  Number of ripples determined by dividing length to be added by 2RH  Multiple copies of a simple compensation geometry RH

51 Matthew Smith 51 Example

52 Matthew Smith 52  One ripple („storage ripple“) is extended in bus direction Example

53 Matthew Smith 53  One ripple („storage ripple“) is extended in bus direction Example Storage Ripples

54 Matthew Smith 54  One ripple („storage ripple“) is extended in bus direction  Within the storage ripples are the ripples for other traces Example Storage Ripples

55 Matthew Smith 55 Leftover Ripples

56 Matthew Smith 56 Leftover Ripples  Ripples can be made smaller in case the compensation length is not evenly divisible by 2RH

57 Matthew Smith 57 Leftover Ripples  Ripples can be made smaller in case the compensation length is not evenly divisible by 2RH Leftover ripple

58 Matthew Smith 58 Algorithm

59 Matthew Smith 59 L=100 µm L=120 µm L=110 µm L=130 µm 1 2 3 4 Algorithm RH=5 µm

60 Matthew Smith 60 L=100 µm L=120 µm L=110 µm L=130 µm 1 2 3 4 Algorithm RH=5 µm  Step 1: compute the compensation lengths

61 Matthew Smith 61 L=100 µm L=120 µm L=110 µm L=130 µm 1 2 3 4 Algorithm RH=5 µm  Step 1: compute the compensation lengths  compensation length is the length of the longest trace minus the length of the current trace

62 Matthew Smith 62 L=100 µm L=120 µm L=110 µm L=130 µm 1 2 3 4 Algorithm RH=5 µm  Step 1: compute the compensation lengths  compensation length is the length of the longest trace minus the length of the current trace

63 Matthew Smith 63 L=120 µm L=110 µm L=130 µm 1 2 3 4 Algorithm L=30 µm RH=5 µm

64 Matthew Smith 64 L=110 µm L=130 µm 1 2 3 4 Algorithm L=30 µm L=10 µm RH=5 µm

65 Matthew Smith 65 L=130 µm 1 2 3 4 Algorithm L=30 µm L=10 µm L=20 µm RH=5 µm

66 Matthew Smith 66 1 2 3 4 Algorithm L=30 µm L=10 µm L=20 µm L=0 µm RH=5 µm

67 Matthew Smith 67  Starting at the top, calculate the number of ripples A needed RH=5 µm Algorithm L=30 µm

68 Matthew Smith 68  Starting at the top, calculate the number of ripples A needed RH=5 µm Algorithm  A = L / 2RH  A = 30 / 10 = 3 L=30 µm

69 Matthew Smith 69  Generate (A-1) ripples and half of the Ath ripple RH=5 µm Algorithm

70 Matthew Smith 70  Repeat for the second trace. A = 10 / 10 = 1 RH=5 µm Algorithm

71 Matthew Smith 71 RH=5 µm Algorithm  Repeat for the third trace. A = 20 / 10 = 2

72 Matthew Smith 72 RH=5 µm Algorithm  Repeat for the fourth trace. A = 0 / 10 = 0

73 Matthew Smith 73 RH=5 µm  Stepping back up through the traces, construct the last half of each storage ripple and complete the trace Algorithm

74 Matthew Smith 74 RH=5 µm Algorithm  Stepping back up through the traces, construct the last half of each storage ripple and complete the trace

75 Matthew Smith 75 RH=5 µm Algorithm  Stepping back up through the traces, construct the last half of each storage ripple and complete the trace

76 Matthew Smith 76 RH=5 µm Algorithm  Stepping back up through the traces, construct the last half of each storage ripple and complete the trace

77 Matthew Smith 77 Problems

78 Matthew Smith 78 Problems  Consumption of space in bus direction

79 Matthew Smith 79 Problems  Consumption of space in bus direction  Introduction of bends

80 Matthew Smith 80 Problems  Consumption of space in bus direction  Introduction of bends  Introduction of serpentine structures

81 Matthew Smith 81 Problems  Consumption of space in bus direction  Introduction of bends  Introduction of serpentine structures  Compensation of parasitic capacitances

82 Matthew Smith 82 Problem: Space Consumption

83 Matthew Smith 83 Space Consumption  Vertical space consumption small, but

84 Matthew Smith 84 Space Consumption  Geometries increase in length with the square of the number of traces  Vertical space consumption small, but

85 Matthew Smith 85 Space Consumption  Geometries increase in length with the square of the number of traces  Example: with n=16 traces, width = 4 µm und spacing = 1 µm, to compensate for a 90º turn in the bus total length of the required module = 1,2 mm !  Vertical space consumption small, but

86 Matthew Smith 86 Partial solution 1: Compensation by group Differential pair 1 Differential pair 2 Ground Trace Length

87 Matthew Smith 87 Implementation of Groups

88 Matthew Smith 88 Implementation of Groups  User can give every trace a group number

89 Matthew Smith 89 Implementation of Groups  User can give every trace a group number  Length compensation only within each group

90 Matthew Smith 90 Solution 2: Total Length Fitting

91 Matthew Smith 91 Partial solution 2: Total Length Fitting  Ripple Height increased to make geometries shorter. RH=5

92 Matthew Smith 92 Partial solution 2: Total Length Fitting  Ripple Height increased to make geometries shorter. RH=5 RH=10

93 Matthew Smith 93 Problem: Resistance Compensation

94 Matthew Smith 94 Problem: Resistance Compensation  The same length does not guarantee the same resistance

95 Matthew Smith 95 Problem: Resistance Compensation  90º corners are problematic  The same length does not guarantee the same resistance

96 Matthew Smith 96 Partial solution: No 90º Corners  Decreases electromigration as well 45º bends rounded corners

97 Matthew Smith 97 Resistance in leftover ripples  Difficult to estimate the resistance of small ripples.

98 Matthew Smith 98 Resistance in leftover ripples  Difficult to estimate the resistance of small ripples.  Partial solution: introduce a minimum ripple height RH min

99 Matthew Smith 99 Resistance in leftover ripples  Difficult to estimate the resistance of small ripples.  Partial solution: introduce a minimum ripple height RH min  Recommended at least two times the trace width

100 Matthew Smith 100 Resistance in leftover ripples  Difficult to estimate the resistance of small ripples.  Partial solution: introduce a minimum ripple height RH min  Recommended at least two times the trace width  Also necessary for 45º angle ripples

101 Matthew Smith 101  Introduction of the minimum ripple height (RH min ). Minimum ripple height  Especially tricky implementation

102 Matthew Smith 102 Coupling between ripples  Ripples introduce serpentine structures

103 Matthew Smith 103 Coupling between ripples  Ripples introduce serpentine structures  Coupling between adjacent ripples results (likely) in signal distortion

104 Matthew Smith 104 Coupling between ripples  Ripples introduce serpentine structures  Coupling between adjacent ripples results (likely) in signal distortion  Serpentine structures are known to have resonant frequencies

105 Matthew Smith 105 Coupling between ripples  Ripples introduce serpentine structures  Coupling between adjacent ripples results (likely) in signal distortion  Serpentine structures are known to have resonant frequencies  Partial solution: give the designer the flexibility to weaken coupling Stronger coupling Weaker coupling

106 Matthew Smith 106 Cavity Parameter  Introduction of the „Cavity“ Parameter.  A minimum distance between the vertical sides of a ripple

107 Matthew Smith 107 Modelling capacitances  Extraction of the capacitances via modelling

108 Matthew Smith 108 Modelling capacitances  Capacitance compensation good with exception of outer traces  Extraction of the capacitances via modelling

109 Matthew Smith 109 Modelling capacitances  Capacitance compensation good with exception of outer traces  Partial solution: Introduction of shielding elements  Extraction of the capacitances via modelling

110 Matthew Smith 110 Shielding Example 42,8 47,9 47,5 46,9 42,1 Total C (fF)

111 Matthew Smith 111 Overview  Approach  Problems to be Solved  Results  Summary

112 Matthew Smith 112 Summary  Length compensation module created in C++.

113 Matthew Smith 113 Summary  Solves general length compensation problem  Length compensation module created in C++.

114 Matthew Smith 114 Summary  Solves general length compensation problem  Length compensation module created in C++.  Supports group-based length compensation

115 Matthew Smith 115 Summary  Solves general length compensation problem  Length compensation module created in C++.  Supports group-based length compensation  Can modify own size to fit within specified length parameters

116 Matthew Smith 116 Summary  Solves general length compensation problem  Length compensation module created in C++.  Supports group-based length compensation  Can modify own size to fit within specified length parameters  Creates 90º and 45º geometries

117 Matthew Smith 117 Summary  Solves general length compensation problem  Length compensation module created in C++.  Supports group-based length compensation  Can modify own size to fit within specified length parameters  Creates 90º and 45º geometries  Can use specified constraints on structure size / spacing

118 Matthew Smith 118 Summary  Solves general length compensation problem  Length compensation module created in C++.  Supports group-based length compensation  Can modify own size to fit within specified length parameters  Creates 90º and 45º geometries  Can use specified constraints on structure size / spacing  Use of capacitative shielding supported

119 Matthew Smith 119 Example of Difficult Cases

120 Matthew Smith 120 End

121 Matthew Smith 121 Erweiterung der Funktionalität  Benutzer kann jeder Leitung eine Gruppenindex zuordnen  Längenausgleich wird nur innerhalb der jeweiligen Gruppe ausgeführt  Ermöglicht den Einsatz von Shielding. Gruppenaufteilung und Shielding:

122 Matthew Smith 122 Erweiterung der Funktionalität  Gesucht wird ein RH, die ein Modul mit einer Gesamtlänge L g <L max produziert. Längenanpassungsfähigkeit  Schwierige Aufgabe, wenn auch RH min eingehalten werden muss.  Einführung des Parameters „Maxlength“ (L max )

123 Matthew Smith 123 Erweiterung der Funktionalität Längenanpassungsfähigkeit

124 Matthew Smith 124 Erweiterung der Funktionalität Längenanpassungsfähigkeit  Änderung des Rippleausgleichs—Höhen „ebnen“

125 Matthew Smith 125 Erweiterung der Funktionalität Längenanpassungsfähigkeit

126 Matthew Smith 126 Erweiterung der Funktionalität Längenanpassungsfähigkeit

127 Matthew Smith 127 Erweiterung der Funktionalität Längenanpassungsfähigkeit

128 Matthew Smith 128 Erweiterung der Funktionalität Längenanpassungsfähigkeit

129 Matthew Smith 129 Erweiterung der Funktionalität Längenanpassungsfähigkeit


Download ppt "Automatic Length Compensation for Analog Integrated Circuit Routing."

Similar presentations


Ads by Google