Skew

Gast #298376
Lesenswert?

Skew ist der Laufzeitunterschied den ein Signal erfaehrt, wenn es
gleichzeitig ueber verschiedene Verbindungen gefuehrt wird. Skew ergibt
sich durch Gatterlaufzeiten, Verbindungs- und Leiterbahnlaengen. Je
hoeher die Signalfrequenz ist, desto mehr macht sich der Skew
bemerkbar. Bei 1Mhz (=1uSec) ist eine Verzoegerung um sagen wir mal
10nSec nicht erheblich. Bei 100Mhz waehre das aber schon ein ganze
Periodenlaenge. Aus diesem Grund gibt es bei FPGAs die Moeglichkeit,
Signallaufzeiten aufeinander abzustimmen, um an der Port gleichschnelle
Signale zu kriegen.
Gast #298378
Lesenswert?

Ergänzung Skew Taktnetzwerke:

Taktnetzwerke werden wegen dem Skew als sogenannte clocktrees
(Takt-Bäume)
ausgeführt. Bei diesem "Baum" sind alle Äste gleichlang, so dass der
Takt, dessen Urprung in der Taktwurzel liegt, die gleiche Laufzeit hat.
Das garantiert einen synchronen Betrieb und erleichtert die Rechenarbeit
für das Place und Route Tool.

Beispiel: Takt 100 Mhz, Takteingang FF1 sieht nach 1 ns die Taktflanke,
FF2 nach 2ns. Ein Signal von Q Aisgang FF1 das zum Zeitpunkt t1: 1ns
aktiv wird, muss zum Zeitpunkt t2 = 12 ns (t1 +Periode +skew) am
dateneingang D von FF2 anliegen,
hat also 11 ns Zeit. (setup-,clock to putput und sonstige zeiten nicht
betrachtet). Hier hilft Dir der skew. Dagegen muss ein Signal von FF2
zu FF1 zum spätestens Zeitpunkt t2=11ns  eintreffen, da aber t1 = 2ns
für FF2 ist hat es nur 9 ns Zeit. Und
das für die selbe Strecke (t1 +Periode - skew) .  Xilinx tools vor der
ISE 5 (?) haben den skew nicht für jeder Strecke betrachtet, hier würde
also im Beispiel der gesamte FPGA auf 9ns Periode gereoutet werden
müssen, obwohl die Taktperiode 10 ns beträgt. Skew kostet also
Taktfrequenz. Die neueren Tools berechnen den Skew mitein, dafür
brauchen sie aber länger. Im Beispiel würde
das Routing auf 11ns getrimmt werden, wenn es kein Signal zw. FF2 und
FF1 gibt. Oder die FF's werden so plaziert, das die die Signale
untereinander austauschen an Pinkte des clocktrees mit geringen skew
zueinander angeschlossen werden.


In den FPGA's gibt es wegen dem clock skew besondere Netzwerke mit
geringen Skew und besondere Takteingangspins die auf dieses Netzwerk
führen. Für hohe Frequenzen und eigentlich immer nur diese Pins für
Takte verwenden.
Gast #298379
Lesenswert?

> In den FPGA's gibt es wegen dem clock skew besondere Netzwerke mit
> geringen Skew und besondere Takteingangspins die auf dieses Netzwerk
> führen. Für hohe Frequenzen und eigentlich immer nur diese Pins für
> Takte verwenden.

Das Xilinx-Routing-Tool verweigert sogar das Routen von clocks auf
nicht-clock-Eingänge!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren