Taktversatz
Englisch: clock skew
Ein Phänomen in synchronen digitalen Schaltungssystemen, bei dem das gleiche Taktsignal aufgrund der Verzögerung bei der Signalausbreitung in Gattern oder Leitungen zu verschiedenen Zeitpunkten verschiedene Komponenten erreicht.
Clock Skew: wenn dein Taktsignal zu spät zur Party kommt
Clock Skew ist die Differenz in der Ankunftszeit desselben Taktsignals an verschiedenen Stellen eines digitalen Schaltkreises. In synchronen Systemen sollen alle Logikgatter bei derselben Taktkante ihren Zustand ändern. Wenn diese Taktkante einen Teil des Schaltkreises vor einem anderen erreicht, verstößt der Schaltkreis gegen seinen eigenen Timing-Vertrag, und es folgen Logikfehler. Die Verzögerung sammelt sich durch die Verdrahtung und durch die Logikgatter selbst an, während sich das Signal von der Taktquelle zu entfernten Registern ausbreitet.
Skew entsteht aus zwei Quellen: Ausbreitungsverzögerung durch die Metallleitungen und Vias auf einer Leiterplatte oder in einem integrierten Schaltkreis, und Ausbreitungsverzögerung durch Puffergatter, die entlang des Taktverteilungsbaums eingefügt sind. Ein Mikroprozessor mit 3 GHz hat eine Taktperiode von etwa 0,33 Nanosekunden. Selbst eine Ausbreitungsverzögerung von 0,1 Nanosekunden über eine Platine oder einen Chip erzeugt messbaren Skew. In großen Systemen kann unkontrollierter Skew die Setup- und Hold-Time-Margen aufzehren, die winzigen Zeitfenster, in denen Daten relativ zur Taktkante stabil sein müssen.
Messung und Management
Designer messen Skew als die maximale Zeitdifferenz zwischen der frühesten und spätesten Ankunft eines Taktsignals an seinen Ziel-Flip-Flops oder Latches. Typische Toleranzbudgets für moderne Logik liegen zwischen 10 und 30 Prozent der Taktperiode. Um Skew zu kontrollieren, verwenden Ingenieure Taktverteilungsnetzwerke mit angepassten Leitungslängen, ausgewogene Takbäume und spezialisierte Low-Skew-Pufferschaltungen. Einige Systeme setzen an jeder Region des Chips eine Phase-Locked Loop (PLL) ein, um den Takt lokal zu regenerieren und neu zu synchronisieren, und wandeln ein globales Skew-Problem in kleinere lokale um.
Negativer Skew, bei dem ein nachgelagertes Register den Takt früher als vorgesehen erhält, kann genauso problematisch sein wie positiver Skew. Er verkürzt die Zeit, die Daten zur Stabilisierung nach der vorherigen Taktkante benötigen, und erzeugt Setup-Time-Verstöße. Umgekehrt kann übermäßiger positiver Skew zu Hold-Time-Verstößen führen, wenn sich Daten zu schnell nach einer früheren Taktkante an anderer Stelle im System ändern.
In integrierten Schaltkreisen ist Skew heute eine beherrschende Entwurfsherausforderung. Moderne Prozesstechnologien bei 5 nm und darunter haben solch hohe Taktfrequenzen und so enge Timing-Margen, dass selbst nanometergroße Schwankungen in der Metalldicke oder Dotierungskonzentration messbaren Skew erzeugen. Foundries und Entwurfsteams charakterisieren jetzt Skew-Eckfälle und beziehen Skew-Budgetierung von den frühesten Phasen des Layouts in die statische Timing-Analyse ein.