Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Synchrones Design und seine Grenzen von der heilen Welt in die Realität.

Ähnliche Präsentationen


Präsentation zum Thema: "Synchrones Design und seine Grenzen von der heilen Welt in die Realität."—  Präsentation transkript:

1 Synchrones Design und seine Grenzen von der heilen Welt in die Realität

2 © A. Steininger / TU Wien 2 Boolesche Logik Delay & Skew Grundproblem des Logikdesign Synchrones Design Lösungsprinzip, Vorteile konzeptioneller Mangel Grenzen Metastabilität Überblick

3 © A. Steininger / TU Wien 3 Die Boole‘sche Logik eindeutige zeitfreie Beschreibung kombinatorischer Logik z.B. als Wahrheitstabelle sequentieller Logik z.B. über Zustandsgraph (Abfolge) unabhängig von der Implementierung explizite Zeitbezüge spielen keine Rolle (außer Abfolge) A

4 © A. Steininger / TU Wien 4 Die praktische Realisierung Es treten Signalverzögerungen auf in allen Transistoren / Gattern an allen Verbindungen Diese Signalverzögerungen sind prinzipiell nicht vermeidbar sind nicht deterministisch Warum ? A

5 © A. Steininger / TU Wien 5 Grenzen der Geschwindigkeit Wellenausbreitung Information kann sich niemals schneller als mit Lichtgeschwindigkeit ausbreiten. Ladevorgänge Das Laden von Kapazitäten mit begrenztem Strom beansprucht Zeit. Bewegung der Ladungsträger Bewegung/Diffusion von Ladungsträgern im Halb- leiter erfolgt nur mit begrenzter Geschwindig- keit. (Sättigungswert bei Si typ. 0,1 mm/ns) Wiederholung

6 © A. Steininger / TU Wien 6 Einflußfaktoren auf Delay Anzahl der durchlaufenen Logikstufen Komplexität der Operation Optimierung & Mapping Routing Geometrie (Länge, Abstand der Verbindungen) Vias bzw. Switches Exemplarstreuung & Betriebsbedingungen Prozessvariationen Temperatur Versorgungsspannung

7 © A. Steininger / TU Wien 7 Komponenten des Delay Gate Delay Durchlaufzeit durch ein Logikelement kaum abhängig vom Routing relativ gut vorhersagbar Interconnect Delay Signallaufzeit auf den Leitungen  stark abhängig vom Routing  schlecht vorhersagbar Wiederholung

8 © A. Steininger / TU Wien 8 Trends beim Delay Mit Verkleinerung der Feature-Size sinkt der Gate Delay rascher als der Interconnect Delay Bei den heute üblichen Technologien überwiegt der Interconnect Delay klar. Eine realistische Vorher- sage des Timings ist daher erst nach dem Routing möglich, Optimierungen vor dem Routing werden immer schwieriger.  m  1.00.50.25 1.0 delay [ns] interconnect gate 0.1 Wiederholung

9 © A. Steininger / TU Wien 9 Konsequenzen für das Design Einer endlosen Steigerung der Geschwindigkeit von Elektronik sind Grenzen gesetzt. Die Laufzeiten von Signalen auf unter- schiedlichen Pfaden können niemals als gleich angenommen werden, es tritt stets ein so genannter Skew auf.

10 © A. Steininger / TU Wien 10 Was ist Skew ?  t = t skew Skew ist der Unterschied im Signal-Delay ▪ entlang unterschiedl. Äste einer verzweigten Leitung ▪ entlang eines Busses ▪ durch gleichartige Gatter t dly1 t dly2 t skew = |t dly1 – t dly2 | Wiederholung

11 © A. Steininger / TU Wien 11 Folgen des Skew Y = A   A  0 1 0 A 1 0 1 0 0 TT Im eingeschwungenen Zustand ist Y immer "0" Beim Umschalten treten jedoch Glitches auf A

12 © A. Steininger / TU Wien 12 Pulse & Glitches Puls: A bfolge zweier entgegen- gesetzt gerichteter Flanken  positiv:   negativ:  Pulsbreite: Zeitabstand (PW) zwischen diesen Flanken Glitch: s ehr kurzer, meist unerwünschter Puls PW

13 © A. Steininger / TU Wien 13 Hazard… …ist die Möglichkeit für das Entstehen von Glitches in einer Schaltung (abh. von relativen Laufzeiten, Temperatur, Versorgung, Eingangsmustern). Ein Glitch ist somit die Manifestation eines Hazard in einer Implementierung der Schaltung. Ein Glitch wird gefährlich, wenn er (von seiner transienten Erscheinung) in einen Zustand übernommen wird, indem seine Flanke eine Auswirkung hat (Steuersignal), oder der transiente falsche Wert in ein Speicherelement übernommen wird.

14 © A. Steininger / TU Wien 14 Kombinatorische Hazards static 1: unerwünschter negativer Glitch bei einem Übergang von 1 auf 1 static 0: unerwünschter positiver Glitch bei einem Übergang von 0 auf 0 dynamischer Glitch: Glitch vor einem vorgesehenen Zustandswechsel

15 © A. Steininger / TU Wien 15 Asynchroner Teiler "Zählerstände": (Q,Y,X) = 0,0,0 ungültig 0,0,1 0,1,1 1,1,1 A

16 © A. Steininger / TU Wien 16 Datenkonsistenz Einzel-Daten die für eine gemeinsame Interpretation vorgesehen sind, müssen zeitlich richtig korreliert sein Beispiel „asynchroner Zähler“ von vorhin: konsistent „0“konsistent „F“

17 © A. Steininger / TU Wien 17 Die Boole‘sche Logik eindeutige zeitfreie Beschreibung kombinatorischer Logik z.B. als Wahrheitstabelle sequentieller Logik z.B. über Zustandsgraph (Abfolge) unabhängig von der Implementierung explizite Zeitbezüge spielen keine Rolle A sind nicht darstellbar !

18 © A. Steininger / TU Wien 18 Ein kurzes Resumee... Boole‘sche Logik beschreibt das Input/ Output-Mapping zeitfrei Es wird also von kontinuierlich gültigen Eingängen ausgegangen Skew verursacht aber inkonsistente Eingänge und daher ungültige Zwischenzustände ABCF 0000 0010 0101 0111 1000 1011 1100 1111 A

19 © A. Steininger / TU Wien 19 Boolesche Logik Delay & Skew Grundproblem des Logikdesign Synchrones Design Lösungsprinzip, Vorteile konzeptioneller Mangel Grenzen Metastabilität Überblick

20 © A. Steininger / TU Wien 20 Wozu eine Design-Methode? SRCSNK f(x) Wenn sie gültig und konsistent sind Wenn SNK die vorigen konsumiert hat Wann kann SNK die Daten verwenden? Wann kann SRC die nächsten Daten senden? A

21 © A. Steininger / TU Wien 21 Grundproblem beim Design Es darf nur mit konsistenten, eingeschwungenen Zuständen operiert werden ? Wie unterscheidet man konsistente Zustände von Übergangszuständen oder Glitches ? Zeitbedingungen für Konsistenz synchrones Design asynchrone „bounded delay“ Verfahren (Timer) Hinzufügen von „Meta-Information“ asynchrone „delay-insensitive“ Verfahren (Codierung) A

22 © A. Steininger / TU Wien 22 Boolesche Logik Delay & Skew Grundproblem des Logikdesign Synchrones Design Lösungsprinzip, Vorteile konzeptioneller Mangel Grenzen Metastabilität Überblick

23 © A. Steininger / TU Wien 23 Synchrones Design: Philosophie „Wenn der Ursprung Problems im Zeit- bereich liegt, dann ist es auch im Zeit- bereich lösbar“ Eingänge werden erst verarbeitet, wenn alle Einschwingvorgänge sicher beendet sind. Taktsignal gibt jeweils die Zeitpunkte vor, zu denen die Daten gültig sind.

24 © A. Steininger / TU Wien 24 Der synchrone Ansatz SRCSNK f(x) Nach einer bestimmten ZEIT T clk kann SNK den Ausgang von f(x) verwenden, und zur gleichen ZEIT kann SRC neue Daten senden.

25 © A. Steininger / TU Wien 25 Timing bei synchroner Logik Taktperiodeaktive Flanke Einschwingzeit * clock to output delay * combinational delay * routing delay, … Setup/Hold Window HILO

26 © A. Steininger / TU Wien 26 Statische Timinganalyse combin. logic t PD,CLK 1/f CLK,max = max (t dly,DATA,ij ) + t SU – min (t dlyD,CLK,i ) Delays im Daten- und Clock-Pfad werden für jedes Flip-Flop syste- matisch analysiert Überprüfung vorgegebener Constraints Ermittlung der maximal zulässigen Taktfrequenz CLK D D D D … t dly,DATA,1m t dly,DATA,2m t dly,DATA,km FF1 FF2 FFk FFm A Wiederholung

27 © A. Steininger / TU Wien 27 Synchrone digitale Logik "Digital" = Amplituden nicht mehr kontinuierlich es werden nur zwei Logikpegel unterschieden eigentliche Spannungsverläufe sind irrelevant "Synchron" = Zeit nicht mehr kontinuierlich Logikpegel werden nur zu bestimmten Zeitpunkten betrachtet (aktive Taktflanke) Vorgänge dazwischen (Einschwingen) irrelevant Es wird stets nur mit einge- schwungenen Zuständen gearbeitet

28 © A. Steininger / TU Wien 28 Vorteile synchroner Logik Einfachheit und Produktivität Arbeiten auf hoher Abstraktionsebene Wahrheitstabellen mit "vorigem" Zustand Einschwingvorgänge irrelevant => betrachtete Zustände stets klar definiert Timing-Analysen erst nachträglich klare Trennung zwischen Takt und Daten vereinfacht die Timinganalyse

29 © A. Steininger / TU Wien 29 Weitere Vorteile Effizienz: nur ein zusätzliches Steuersignal für das gesamte Design periodischer Takt ist einfach generierbar Daten können single-rail codiert sein minimale Anzahl von Flanken auf den Datenleitungen Takt liefert implizit auch einen Zeitbegriff

30 © A. Steininger / TU Wien 30 Alle Probleme gelöst ? Ermittlung der zulässigen Taktfrequenz erfordert Kenntnis aller Laufzeiten Kennen wir die Laufzeiten wirklich ? Im Grunde ist der Schluss von einer Zeitbedingung auf Daten- konsistenz und indirekt und jede Zeitbedingung willkürlich A

31 © A. Steininger / TU Wien 31 Einflußfaktoren auf Delay Anzahl der durchlaufenen Logikstufen Komplexität der Operation Optimierung & Mapping Routing Geometrie (Länge, Abstand der Verbindungen) Vias bzw. Switches Exemplarstreuung & Betriebsbedingungen Prozessvariationen Temperatur Versorgungsspannung Implementierung & Technologie festgelegt Routing fertig & Technologie festgelegt unbekannt => worst case Annahmen A

32 © A. Steininger / TU Wien 32 Problem Timinganalyse erfolgt erst am Ende des Design-Flow (große Iterationsschleife bei Adaptionen) erfordert mittlerweile gewaltigen Aufwand Design-Entry Technol.-Mapping Partition, Place & Route Manufact. / Download Specification Validation Behavioral Simulation Postlayout-GL-Simulation Prelayout-GL-Simulation Test A Compilation Functional Simulation

33 © A. Steininger / TU Wien 33 Problem Timinganalyse erfolgt erst am Ende des Design-Flow (große Iterationsschleife bei Adaptionen) erfordert mittlerweile gewaltigen Aufwand nur mit „idealem“ Taktnetz praktisch machbar t PD,CLK CLK D D D D … t dly,DATA,1m t dly,DATA,2m t dly,DATA,km FF1 FF2 FFk FFm combin. logic A

34 © A. Steininger / TU Wien 34 Problem Worst-Case Annahme sind im Normalfall zu pessimistisch (Chip könnte schneller sein) keine Robustheit bezüglich Überschreitung (Graceful Degradation)    grenz A

35 © A. Steininger / TU Wien 35 Problem Taktverteilung Taktverteilung weit verzweigte Taktnetze im Chip Minimierung von Delay & Skew aufwendig A

36 © A. Steininger / TU Wien 36 Problem Verlustleistung hoher Leistungs- verbrauch im Taktnetz gleichzeitiges Schalten => Stromspitzen => Probleme mit Spannungsversorgung ständiges Schalten => viel unnötige Aktivität laut Publikationen 40% (z.B. DEC) A

37 © A. Steininger / TU Wien 37 Problem EMV Die langen Taktnetze sind gute Antennen. Fast die gesamte Energie der Störabstrahlung ist auf eine einzige spektrale Komponente konzentriert. f E(f) max / CE A

38 © A. Steininger / TU Wien 38 Problem Erweiterbarkeit Jede kleine Änderung der Schaltung erfordert neuerlich eine vollständige Timing-Analyse. Jeder Umstieg auf eine andere Technologie verändert das Timing komplett. Zusammenspiel von IP-Cores auf einem Chip stellt hohen Anforderungen an Spec

39 © A. Steininger / TU Wien 39 Grenzen synchroner Logik Die Voraussetzungen für synchrone Logik werden zunehmend unrealistisch Die extremen Taktfrequenzen lassen kaum mehr Spielraum für Timing-Margins. Jede sinnvolle Schaltung hat Schnittstellen zur Umwelt. Diese sind zwangsläufig asynchron und führen daher immer zu Setup/Hold-Violations. In sehr vielen Designs gibt es mehrere Clock- Domains. An den Schnittstellen dazwischen kommt es ebenfalls zu Setup/Hold-Violations. A

40 © A. Steininger / TU Wien 40 Schwindende Timing-Margins Synchrones Modell: Realität: Transiente Vorgänge Setup/Hold A

41 © A. Steininger / TU Wien 41 Synchrones Design am Limit ? Die Idealvorstellung beim synchronen Design war es, Einschwingvorgänge nicht beachten zu müssen. Tatsächlich besteht bei High-End-Designs ein überwiegender Anteil am Aufwand darin, die Einschwingvorgänge so zu optimieren und alle Reserven so weit auszureizen, dass sich maximale Taktfrequenz erreichen lässt. Die Komplexität dieser Optimierungsaufgabe übersteigt die Fähigkeit der verfügbaren Tools bei weitem. Angesichts der rasant wachsenden Taktraten ist anzunehmen, dass sich diese Situation in Zukunft noch verschlechtert.

42 © A. Steininger / TU Wien 42 Grenzen synchroner Logik Die Voraussetzungen für synchrone Logik werden zunehmend unrealistisch Die extremen Taktfrequenzen lassen kaum mehr Spielraum für Timing-Margins. Ein worst- case-Design ist im Einzelfall unnötig langsam. Jedes sinnvolle System hat Schnittstellen zur Umwelt. Diese sind zwangsläufig asynchron und führen daher immer zu Setup/Hold-Violations. In sehr vielen Designs gibt es mehrere Clock- Domains. An den Schnittstellen dazwischen kommt es ebenfalls zu Setup/Hold-Violations.

43 © A. Steininger / TU Wien 43 Asynchrone Eingänge Asynchrones Ereignis Setup/Hold Taktperiode T clk Dec. Win. T 0 Wahrscheinlichkeit für Setup/Hold-Violation:

44 © A. Steininger / TU Wien 44 Grenzen synchroner Logik (3) Die Voraussetzungen für synchrone Logik werden zunehmend unrealistisch Die extremen Taktfrequenzen lassen kaum mehr Spielraum für Timing-Margins. Ein worst- case-Design ist im Einzelfall unnötig langsam. Jede sinnvolle Schaltung hat Schnittstellen zur Umwelt. Diese sind zwangsläufig asynchron und führen daher immer zu Setup/Hold-Violations. In sehr vielen Designs gibt es mehrere Clock- Domains. An den Schnittstellen dazwischen kommt es ebenfalls zu Setup/Hold-Violations.

45 © A. Steininger / TU Wien 45 Mehrere Clock-Domänen CLK 1 (Ref) CLK 2 Die aktiven Flanken der beiden Takte haben beliebige Phasenlage zueinander. Es kommt daher zwangsläufig zu Setup/Hold-Violations. Eine ähnliche Situation ergibt sich auch bei nur einem Takt mit großem (unbestimmtem) Skew. A

46 © A. Steininger / TU Wien 46 Boolesche Logik Delay & Skew Grundproblem des Logikdesign Synchrones Design Lösungsprinzip, Vorteile konzeptioneller Mangel Grenzen Metastabilität Überblick

47 © A. Steininger / TU Wien 47 Funktionsmodell eines Latch transparenthold Wiederholun g

48 © A. Steininger / TU Wien 48 Setup- und Hold-Time Eine Änderung am Eingang muss die Rückkopplungsschleife vollständig durchlaufen UND Die TGs müssen umgeschalten werden Diese Vorgänge brauchen Zeit: „Decision Window“ (= SetupTime + Hold-Time) Innerhalb dieses „Decision Window“ dürfen keine Flanken am Eingang auftreten (Metastabilität!)

49 © A. Steininger / TU Wien 49 Response-Time eines Flip-Flop Eine Änderung des Eingangs während des Decision- Window führt zu einer deutlichen (unbegrenzten) Erhöhung der Durchlaufzeit. t clk2out t clk2out,nom t clk2data t setup t hold 0 CLK D

50 © A. Steininger / TU Wien 50 Metastabilität: Zeitverhalten Der Ausgang des DFF bleibt für unbestimmte Zeit in einem undefinierten „metastabilen“ Zustand und geht dann zufällig auf ´1´oder ´0´. CLK D Q t=?

51 © A. Steininger / TU Wien 51 Metastabilität: phys. Vergleich Die Kugel bleibt für unbestimmte Zeit im labilen Gleichgewicht. Die kleinste Störung lenkt die Kugel zufällig in eine Richtung Wieviel Schwung befördert die Kugel von einer Seite auf die andere? Was passiert bei zu wenig Schwung?

52 Zu kleiner Impuls LowHigh Output t low high source: Thomas Polzer slides for PhD defense, 11/2013 © A. Steininger / TU Wien 52

53 Genügend großer Impuls LowHigh t low high source: Thomas Polzer slides for PhD defense, 11/2013 © A. Steininger / TU Wien 53 Output

54 Grenzwertiger Impuls LowHigh t low high source: Thomas Polzer slides for PhD defense, 11/2013 © A. Steininger / TU Wien 54 Output

55 © A. Steininger / TU Wien 55 Metastabilität: Kennlinie 1 2 3 4 5 12345 Inv 1 Inv 2 u e,2 = u a,1 u e,1 = u a,2 stabil (HI) stabil (LO) metastabil A

56 © A. Steininger / TU Wien 56 Folgen der Metastablität Es ist unerheblich, in welchen Zustand das FF letztendlich kippt Problematisch ist der Zeitraum der Meta- stabilität, denn der "verbotene" Pegel kann von einem nachfolgenden FF übernommen werden und dieses ebenfalls in die Metastabilität treiben => Fortpflanzung kann von mehreren nachfolgenden FFs unterschiedlich interpretiert werden und daher zu Inkonsistenzen führen

57 © A. Steininger / TU Wien 57 Fortpflanzung d. Metastability X Metastab. X data clk u ein u aus Die Inverter-Kennlinie beschreibt ein analoges Übertragungsverhalten, ein metastabiler Zustand kann daher eventuell auch übertragen werden. Inverter- Kennlinie A

58 © A. Steininger / TU Wien 58 Inkonsistente Wahrnehmung X 0 1 Metastab. Der metastabile Zustand wird von einem FF als "1" wiedergegeben, von einem anderen als "0" X Schwellwert A A B Schwellwert B A

59 © A. Steininger / TU Wien 59 Was ist die Resolution Time? clk asyn syn t CO t comb t SU trtr asyn clk syn comb. logic Normaler Betrieb: t r > 0 Upset: t r < 0 Resolution time t r ist jene Zeit die für das Auflösen der Meta- stabilität maximal zur Verfügung steht

60 © A. Steininger / TU Wien 60 Mean Time Between Upset „Upset“ metastabiler Ausgang wird nach t r von nachfolgenden FF am Eingang übernommen Mean Time Between Upset (MTBU) Erwartungswert für das Zeitintervall zwischen zwei Upsets (statistische Größe !)

61 © A. Steininger / TU Wien 61 Parameter in der Formel Resolution Time t r Jene Zeit die dem Ausgang zum Einschwingen zur Verfügung steht Bauteilparameter des FF  c, T 0 werden experimentell bestimmt Zeitkonstante  c abh. v. Transitfrequenz T 0 aus effektiver Breite des decision window Taktperiode des FF T clk = 1/f clk Average Rate of Change dat mittlere Rate der Flanken am FF-Eingang

62 © A. Steininger / TU Wien 62 Erläuterung der Formel Wahrscheinlichkeit, dass metastabiler Zustand während t r nicht aufgelöst wird Wahrscheinlichkeit dass Flanke im „decision window“ erfolgt Häufigkeit der Flanken am Eingang Upset-Rate A

63 © A. Steininger / TU Wien 63 Zahlenbeispiel MTBU FF mit 100MHz Takt und 500kHz Eingangssignal. t comb = 3ns, t SU = 0.5ns,  c = 0.25ns, T 0 = 0.1ns t CO = 1.5ns ein Upset alle 13 Stunden. Bei 16 Kanälen also mehr als ein Upset stündlich. Bei 10000 Produkten/1Kanal im Schnitt alle 5s ! A

64 © A. Steininger / TU Wien 64 Erhöhen der MTBU im Design Metastabilität prinzipiell nicht vermeidbar, aber MTBU lässt sich hinreichend erhöhen: dat und f clk möglichst niedrig halten meist jedoch durch Applikation vorgegeben T 0 und  c möglichst klein halten durch Technologie, Speed Grade bestimmt t r möglichst gross halten hat extrem starken Einfluß Grundidee für diverse Synchronizer

65 © A. Steininger / TU Wien 65 Technologie und MTBU Je nach Ziel- technologie sind die Parameter unterschiedlich. Das hat gewaltige Auswirkungen auf die MTBU. T0T0 CC 1 t r -t CO (ns) f dat = 1MHz f clk = 10MHz

66 © A. Steininger / TU Wien 66 Resolution Time erhöhen (1) FF mit 100MHz Takt und 500kHz Eingangssignal. t comb = 3ns, t SU = 0.5ns,  c = 0.25ns, T 0 = 0.1ns t CO = 1.5ns ein Upset alle 13 Stunden. 80MHz 7.5ns 30 1.3.10 9 s 42 Jahre Taktfrequenz vermindern A 1.25. 10 -8 s

67 © A. Steininger / TU Wien 67 Resolution Time erhöhen (2) Verminderung des Taktes selten möglich. Alternativen: Schnelleres FF => verringerte t SU 2 oder mehr Taktperioden für Synchronisation Voriges Beispiel (bei 100MHz) : 1 Takt länger warten ergibt t r = 15ns => MTBU steigt um 17 Größenordnungen (!) von 13 Stunden auf 724*10 12 Jahre

68 © A. Steininger / TU Wien 68 Synchronizer Zweites Eingangs-FF mit geteiltem Takt Beste MTBU erzielbar (t CO und t SU nur 1x ) Skew problematisch Kaskade von n Eingangs-FFs MTBU etwas schlechter (t CO und t SU je Stufe) einfach & problemlos In jedem Fall wird das Eingangssignal um n Taktzyklen verzögert weitergegeben! asyn clk synasyn clk syn 2n2n

69 © A. Steininger / TU Wien 69 Beispiel 2-stage Synchronizer 1MHz 100MHz comb. logic t comb = 3ns, t SU = 0.5ns,  c = 0.25ns, T 0 = 0.1ns, t CO = 1.5ns FF 1 FF 2FF 3 Schaltung A aus FF2 + FF3 wie zuvor, aber durch Vorschalten von FF1 erhöht sich die effektive Resolution Time: t res,ges = t res,FF2 + t res,FF1 t res,ges = 8ns+5ns, MTBU ges = 1,2*10 11 Jahre

70 © A. Steininger / TU Wien 70 Ist Metastabilität vermeidbar? In konventioneller synchroner Architektur NEIN, das Auftreten von Upsets läßt sich nur hinreichend unwahrscheinlich machen In adaptierten synchronen Architekturen JA, man benötigt einen abschaltbaren Takt In asynchronen Architekturen: JA, sie verwenden Handshaking anstatt eines starren Taktes

71 Wie kommt man zu der MTBU- Formel? Welches Modell benötigt man? © A. Steininger / TU Wien 71 Modell für Metastability

72 © A. Steininger / TU Wien 72 modelliere bistabile elemente als Paar von Invertern lineares Modell für Inverter, um den Mittelpunkt der Transferfunktion („balance point“) Betrachte „homo- genen“ Fall, d.h. ge- schlossene Schleife u in u out Inverter- Characteristik u out = - A * u in u1u2 Einfaches Modell

73 © A. Steininger / TU Wien 73 Berücksichtigung der Dynamik Näherung mit dynamischem Modell 1.Ordnung: RC Glied Annahme von Symmetrie (gleiches A, RC für beide Inverter) zur Vereinfachung Annahme symmetrischer Versorgung (+VCC/- VCC) gegen GND -A RC =  u1 u2

74 © A. Steininger / TU Wien 74 Differentialgleichungen Vorwärtspfad: Rückwärtspfad: Laplace: Lösung im Zeitbereich:

75 © A. Steininger / TU Wien 75 Die Lösung u 2 0 -u 1 0 … Differenz der Initialspannungen (Ladungen an Cs); Null am balance point  … RC Konstante, Bandbreite = 1/RC A … Verstärkung des Inverters (am balance point) A/  … Verstärkungs-/Bandbreite-Produkt des Inv. beginnend bei der Initialspannung steigt u 2 exponentiell mit der Zeit gegen die positive oder negative Versorgungsspannung

76 © A. Steininger / TU Wien 76 Plot von u 2 über der Zeit Für jeden gegebenen Betrachtungszeitpunkt t können wir den verbotenen Eingangsspannungsbereich auf einen verbotenen Bereich der Initialspannunsdifferenz abbilden

77 © A. Steininger / TU Wien 77 Verbotener Anfangsbereich u0u0u0u0 Der verbotene Eingangsspannungsbereich korres-pondiert mit einem verbotenen Bereich der Initialspannungs- differenz (gleich nach dem Umschalten). Dieser wird exponentiell kleiner mit größerer Resolution-time t res und größerem Verstärkungs-/Bandbreite-Produktrigh A/t.

78 © A. Steininger / TU Wien 78 Aperture Window T AW Wie lange bleibt die Eingangsspannung im verbotenen Bereich? Das hängt von der Steigung des rückgekoppelten Signales ab (…und von der Eingangsspannung!) +u 0,border  u 0,border T AW u diff (t), slope S

79 © A. Steininger / TU Wien 79 Kalibrierung von T AW T AW hängt ab von u 0,border, diese von t res Wenn das Ausgangssignal sofort verwendet wird: daher Technologie- parameter

80 © A. Steininger / TU Wien 80 Mit exponentialverteilten inter-arrival times der Eingangsereignisse (Rate dat ) und Abtastung mit Periode T clk (d.h. Fenster T AW wiederholt sich) lässt sich die Upset Rate berechnen zu Damit ergibt sich die MTBU zu Flanke im Aperture-Window

81 © A. Steininger / TU Wien 81 Zusammensetzen der Lösung T0T0   C

82 © A. Steininger / TU Wien 82 Rate der Eingangsereignisse Abtastfrequenz Technologie- parameter Erwartungswert für Intervall zwischen Upsets (statistisch!) Verfügbare Resolution time Die allg. verwendete Formel

83 © A. Steininger / TU Wien 83 Provozieren von Metastability asynchronous inputs multiple clock domains clock divider (uncontrolled delay) low timing margins slow technology (gain/BW prod) supply drop (excessive delay) Operation under high temperature

84 © A. Steininger / TU Wien 84 Ermittlung von T 0,  C experimentell: variiere t res messe MTBU log graph => Gerade Anstieg ->  C Offset -> T 0 Typische Werte T0T0 CC 1 t res (ns) dat = 2MHz f clk = 10MHz

85 © A. Steininger / TU Wien 85 Behauptung: „Metastabilität ist in neuen Technologien nicht mehr relevant“ log MTBU[s] t res 6 12 5 1996 (XC4005 ) 2002 (XC2VP4 ) ABER: Die Taktraten sind in diesem Zeitraum um einen Faktor 16 gestiegen – und die Zeitreserven haben sich im selben Maß verkleinert! Metastability – Trends

86 © A. Steininger / TU Wien 86 Das ursprüngliche Problem SRCSNK f(x) Wenn sie gültig und konsistent sind Wenn SNK die vorigen konsumiert hat Wann kann SNK die Daten verwenden? Wann kann SRC die nächsten Daten senden?

87 © A. Steininger / TU Wien 87 Wir haben eine einfache Bedingung für den Informationsfluss mittels komplizierter Timing-Parameter ausgedrückt, die wir nicht einmal kennen STÖRT DAS ? Der synchrone Ansatz A

88 © A. Steininger / TU Wien 88 Diese verflixte Ampel … JA! Es stört sehr! A

89 © A. Steininger / TU Wien 89 Diese verflixte… Ampel Wie viele Autos warten? Mikrowellenherd Ist das Essen schon heiß? Scheibenwischer Ist die Sicht durch die Scheibe gut? Treppenhauslicht Hält sich jemand im Steigenhaus auf?

90 © A. Steininger / TU Wien 90 Der synchrone Ansatz SRCSNK f(x) Nach einer bestimmten ZEIT T clk kann SNK den Ausgang von f(x) verwenden, und zur gleichen ZEIT kann SRC neue Daten senden. Eine Beziehung zwischen Datenfluss und Zeit ist sehr praktisch und effektiv, aber in Realität existiert eine solche Beziehung nicht (von sich aus). Wir müssen beim Design eine solche Beziehung künstlich herstellen (Timing-Analyse, Constraints) A

91 © A. Steininger / TU Wien 91 Geht es auch besser? SRCSNK f(x) Wenn sie gültig und konsistent sind Wenn SNK die vorigen konsumiert hat Wann kann SNK die Daten verwenden? Wann kann SRC die nächsten Daten senden? A ACK: „Datenwort gültig, kann verwendet werden“ REQ: „Daten konsumiert, bitte nächste senden“

92 © A. Steininger / TU Wien 92 Handshake als Lösung Der Handshake bildet eine Regelschleife für den Datenfluss zwischen SRC und SNK. Dies macht den Betrieb robuster als im Falle einer Steuerung Die Kunst des asynchronen Design liegt darin, die vielfältigen Regelschleifen richtig zu koordinieren. Das ist viel komplizierter als beim synchronen Design.

93 © A. Steininger / TU Wien 93 Zusammenfassung (1) In realen Schaltungen sind Signallaufzeiten unvermeidlich. Die Differenzen dieser Laufzeiten (Skew) variieren in nicht vorhersagbarer Weise. Boole‘sche Logik geht von kontinuierlich gültigen und konsistenten Eingängen aus. Zeitliche Zusammenhänge sind in Boole‘scher Logik nicht beschreibbar. Genau diesen Mangel muss eine Design-Methode kompensieren.

94 © A. Steininger / TU Wien 94 Zusammenfassung (2) Synchrones Design verwendet Zeitbedingungen, um die die Datenkonsistenz zu beurteilen. Diese Methode ist effizient und bewährt. Der Schluss von Zeitbedingung auf Konsistenz ist aber indirekt und willkürlich. Synchrones Design ist daher keine natürliche Lösung des Grundproblems. Dieser Mangel wird mit steigenden Taktfrequenzen immer deutlicher spürbar.

95 © A. Steininger / TU Wien 95 Zusammenfassung (3) Bei Timing Violations und an den Grenzen von Clock Domains kann es zu Metastabilität kommen. Eine Verletzung der Setup-/Hold time kann zu beliebig langem Verweilen des Ausgangs eines Flip- Flop in einem undefinierten Pegel führen. Übernimmt ein nachfolgendes Flip-Flop diesen un- definierten Zustand („Upset“), kommt es zu Fort- pflanzung und zu inkonsistenter Interpretation. Die Wahrscheinlichkeit dafür kann berechnet wer- den. Sie steigt exponentiell mit sinkenden Timing- Reserven, hängt aber auch von der Technologie ab.


Herunterladen ppt "Synchrones Design und seine Grenzen von der heilen Welt in die Realität."

Ähnliche Präsentationen


Google-Anzeigen