k510-Physikalische_Eigenschaften

k510-Physikalische_Eigenschaften

Page 1

page-01.png

Kapitel 5 – Timing

  1. Physikalische Eigenschaften
  2. Timing wichtiger Komponenten
  3. Exaktes Timing von ReTI
    Albert-Ludwigs-Universität Freiburg
    Prof. Dr. Armin Biere
    Institut für Informatik

Page 2

page-02.png

Wiederholung: Übergang beim RS-Flipflop

Zustand Zustand :

(Schaltplan: /R, G2, G1, /S, Q, /Q)

Senke /S zur Zeit ab und hebe zu wieder an (einen solchen Signalverlauf nennt man Puls).

Nach Zeit ist . Nach Zeit ist .

„Gatter brauchen Zeit zum Schalten!" Aber wie lange ist , ? Oder wie lange muss ein Puls mindestens dauern? (= Pulsweite).

Page 3

page-03.png

Wiederholung: Timing-Diagramm D-LATCH

Wie lange müssen die einzelnen Signale aktiv sein, damit der Schreibvorgang reibungslos abläuft? D. h. Wie lange ist Setup-Zeit , Hold-Zeit , Pulsweite ?

Page 4

page-04.png

Physikalische Signale ↔ Logische Signale

In jeder Technologie gibt es eine Versorgungsspannung (z.B. bei NanGate). Eine Spannung wird als logischer Wert interpretiert.

  • Am Eingang (Input) eines Gatters: , . „Wie interpretiert ein Gatter anliegende Spannungswerte an seinen Inputs?"
  • Am Ausgang (Output) eines Gatters: , . „Mit welchem Spannungswert signalisiert ein Gatter eine logische 0/1 am Ausgang?"

, , , eines Bausteins sind gegeben.

Page 5

page-05.png

Zusammenschalten von Gattern

Will man den Ausgang eines Gatters mit dem Eingang eines Gatters verbinden, dann sollte gelten:

Sonst werden Signale falsch interpretiert.

Page 6

page-06.png

Beispiel: NanGate

Entsprechend Output-Pegel , .

Page 7

page-07.png

Verzögerung

Page 8

page-08.png

Beispiel-Spannungsverlauf ,

Page 9

page-09.png

Allgemeine Bemerkung zu Verzögerungszeiten

Im Allgemeinen gilt nicht , so dass man nicht einfach als Verzögerungszeit definieren kann. wird verformt.

Die Verzögerungszeit (Propagation Delay) wird definiert als

bezüglich einer festen „Referenzspannung" mit (Bsp.: bei NanGate).

Bestimme , mit .

Page 10

page-10.png

Angaben zur Verzögerungszeit

In der Regel gibt es verschiedene Verzögerungszeiten für Übergänge am Ausgang:

  • : Verzögerungszeit bei .
  • : Verzögerungszeit bei .

Page 11

page-11.png

Modellierung der Verzögerungszeit

Problem bei der Modellierung der Verzögerungszeit bezüglich fester Spannung : Keine Aussage darüber, wann logische Signale 0 oder 1 sind, d. h. physikalische Signale unterhalb oder oberhalb sind.

Page 12

page-12.png

Illustration des Problems

→ Ähnliches Problem am Gattereingang.

Page 13

page-13.png

Anstiegs- und Abfallzeiten

Für jedes Signal braucht man also zusätzliche Informationen über:

  • Anstiegszeit (Rise Time) = Zeit, in der Signal von nach steigt.
  • Abfallzeit (Fall Time) = Zeit, in der Signal von nach fällt.

Bzw. noch genauer würde man eigentlich benötigen:

  • Anstiegszeit von nach
  • Abfallzeit von nach

Page 14

page-14.png

Beschränkung dieser Zeiten

Die in unseren Analysen verwendeten Gatter haben die folgende angenehme Eigenschaft:

mit folgender Eigenschaft: Falls rise/fall time am Gattereingang, dann rise/fall time am Gatterausgang.

Page 15

page-15.png

Beispiel: NanGate

NanGate für spezifiziert. Bausteine NAND, NOT, AND, OR, EXOR.

  • zwischen und
  • ()

Die Zeiten, an denen die entsprechenden Signale wohldefinierte logische Werte 0, 1 annehmen, unterscheiden sich von denen für um höchstens .

Page 16

page-16.png

Bemerkung

Eine rise/fall time an den primären Eingängen einer Schaltung kann man garantieren, wenn man den Schaltvorgang zur Zeit beginnt und spätestens zur Zeit abschließt.

Page 17

page-17.png

Verzögerungszeit

Nach welcher Zeit ist spätestens logisch 1, wenn der Schaltvorgang von 0 nach 1 bei zur Zeit 0 angefangen hat und zur Zeit spätestens beendet ist?

a.
b.
c.
d.

Page 18

page-18.png

Analyse der Verzögerungszeit einer Kette von Gattern (2/3)

durchläuft nach .

Page 19

page-19.png

Analyse der Verzögerungszeit einer Kette von Gattern (3/3)

Durchläuft nach Zeit die Spannung , dann durchläuft die Spannung nach .

Falls mit Anstiegszeit , dann auch .

Also ist auf jeden Fall zur Zeit logisch 1.

Beginnt man im Beispiel den Schaltvorgang bei und beendet ihn bei , dann gilt und ist spätestens nach logisch 1.

Page 20

page-20.png

Vereinbarungen

Im Folgenden soll „Signal wird zum Zeitpunkt abgesenkt/angehoben" bedeuten: wird abgesenkt/angehoben mit .

Desweiteren sind alle Zeitangaben in ns. Wir nehmen außerdem in Zukunft immer an: rise/fall times .

Page 21

page-21.png

Einfluss auf Verzögerungszeiten

Verzögerungszeiten von Gattern sind nicht konstant, sondern werden beeinflusst durch:

  • Betriebstemperatur
  • Fertigungsprozess des Chips
  • kapazitive Last am Gatterausgang (Fanout)

(Gattereingänge, die mit einem Gatterausgang verbunden sind, verhalten sich wie Kondensatoren, d. h. sie werden beim Schalten ge- bzw. entladen.)

Page 22

page-22.png

Worst-case Timing-Analyse

Wegen Abhängigkeit der Verzögerungszeit von Temperatur, Fertigungsprozess und Fanout werden vom Hersteller keine festen Zeiten / angegeben, sondern 3 Werte:

  • = untere Schranke
  • = obere Schranke
  • = typischer Wert (???)

Page 23

page-23.png

min, max und typ (1/2)

Für die tatsächliche Verzögerungszeit gilt:

Wir nehmen in den folgenden Analysen an, dass im Intervall liegt, falls

  • die Temperatur im Bereich liegt („kommerzieller Temperaturbereich" 0 – 70 °C, „militärischer Temperaturbereich" – 125 °C)
  • und bestimmte kapazitive Last nicht überschritten wird.

wird so gewählt, dass mit Einhalten einer Fanoutbeschränkung von 10, auf keinen Fall überschritten wird.

Page 24

page-24.png

min, max und typ (2/2)

Für gilt ebenfalls . Beim Rechnen mit macht man aber einen Fehler mit unbekannter Größe.

→ Kein Rechnen mit , sondern mit Intervallen .

Page 25

page-25.png

Exkurs: Rechnen mit Intervallarithmetik (1/2)

Definition: Ein Intervall auf ist eine zusammenhängende und abgeschlossene Teilmenge von . Man bezeichnet es auch als das abgeschlossene Intervall von bis .

Wir betrachten hier nur die Menge der abgeschlossenen Intervalle auf .

Es gilt:

(eine reelle Zahl kann aufgefasst werden als das Punktintervall von bis )

Page 26

page-26.png

Exkurs: Rechnen mit Intervallarithmetik (2/2)

Definition: Gegeben ein Operator in . Der dazugehörige Operator auf ist definiert als:

für .

Beispiele:

Page 27

page-27.png

Bemerkungen

Wir schreiben vereinfachend nur „op" statt „". Für uns sind nur , und als Operator von Bedeutung (bzw. nur mit Punktintervallen).

Ein Intervall bezeichnen wir mit .

Page 28

page-28.png

Beispiel: AND-Gatter

AND
0.02 0.12
0.02 0.12

Page 29

page-29.png

Fall 1

, fest auf 1. von 0 auf 1 zum Zeitpunkt (genauer: „ geht von 0 auf 1 und durchläuft zum Zeitpunkt ")

→ Änderung von zur Zeit:

→ Änderung von zur Zeit:

Page 30

page-30.png

Fall 1 – Timing-Diagramm

Page 31

page-31.png

Fall 2

, , können sich zum Zeitpunkt ändern, sind vorher und nachher stabil. Es ist unbekannt, wieviele Signale sich ändern und wie sie sich ändern.

→ Gröbere Abschätzungen

Page 32

page-32.png

Gröbere Abschätzung

Bestimme Zeitintervalle, zu denen Gatter überhaupt schalten können.

ist beliebiges Gatter oder eine Schaltung. Gesucht ist ein Intervall , in dem die Verzögerungsintervalle aller möglichen Schaltvorgänge enthalten sind.

Definiere:

Dann ist das gesuchte Intervall (also pessimistisch geschätzt).

Page 33

page-33.png

Timing-Abschätzung

In welchem Intervall kann schalten?

Page 34

page-34.png

Gröbere Abschätzung

Bestimmung von Zeitintervallen, zu denen Gatter überhaupt schalten können:

Annahmen:

  • schaltet im Intervall .
  • schaltet im Intervall .
  • Die Verzögerungszeiten von sind gegeben durch: , .

Dann gilt mit und :

Also kann schalten im Intervall .

Man könnte auch den Vereinigungsoperator „" definieren mit:

Page 35

page-35.png

Anwendung auf Beispiel, Fall 2

AND
0.02 0.12
0.02 0.12

Wenn die Gatter schalten, dann in folgenden Intervallen:

  • , , :
  • :
  • :

Page 36

page-36.png

Fall 2 – Timing-Diagramm

Page 37

page-37.png

Interpretation des Timing-Diagramms

Was kann im grauen Bereich passieren? Beispiel:

  • : :

Annahme: AND-Gatter haben folgende (feste) Verzögerungszeiten:

  1. AND-Gatter: ,
  2. AND-Gatter: ,

Page 38

page-38.png

Timing-Diagramm zum Beispiel

  1. AND: ,
  2. AND: ,

: : Spike

In manchen Anwendungen will man Spikes verhindern (z.B. FlipFlops).

Page 39

page-39.png

Spikefreies Umschalten von Gattern

Ziel: Übergang von zu , ohne Spike am Ausgang.

Bemerkung: Der Übergang bzw. umgekehrt ist der einzige, bei dem an AND/NAND-Gattern ein Spike auftreten kann.

Page 40

page-40.png

AND-Gatter

Wähle sicheren Abstand.

Page 41

page-41.png

Sicherer Abstand für Senken von und Anheben von

Lemma: Man kann zeigen, dass Übergänge für und mit Abstand sicher sind, d. h. keine Spikes am Ausgang entstehen können.

Page 42

page-42.png

Zum Beweis – Timing im Gatter

  1. Senke bei .
    wegen spätestens bei

    Grund: Bei tatsächlichem Schalten von wegen würde das Signal spätestens nach den Wert durchlaufen und wäre 0 spätestens nach . Interner Umschaltvorgang „ wegen " muss also spätestens nach beendet sein.

  2. Hebe (bzgl. !) zum Zeitpunkt .
    → Zum Zeitpunkt gilt auf jeden Fall noch .

    Also:

    • Vor :
    • Nach :

→ Übergänge für und mit Abstand ().

AND
0.02 0.12
0.02 0.12

Page 43

page-43.png

Analog: Spikefreies Umschalten bei NAND

NAND
0.02 0.15
0.02 0.12

Kritischer Übergang: Zuerst , dann .

Daraus ergibt sich der Abstand