-
Die Erfindung betrifft eine Schaltungsarchitektur, ein Verfahren und ein System zur Messung und Kompensation von Signalverzögerungen auf source-synchron getakteten Datenbussen. Die Erfindung betrifft im Besonderen eine Schaltungsarchitektur, ein Verfahren und ein System zur Messung und Kompensation von Variationen der Verzögerungszeiten von Datenleitungen für steigende und fallende Signalflanken in source-synchron getakteten schnellen, seriellen on-chip Datenbussen.
-
In modernen Systems-on-Chip mit mehrerern Prozessorkernen spielt die Optimierung der Datenübertragung auf dem Chip eine immer bedeutendere Rolle, da sie wesentlich zum Flächenverbrauch und zur Verlustleistungsaufnahme der Gesamtschaltung beiträgt. Speziell bei langen Punkt-zu-Punkt Verbindungen werden schnelle serielle Datenübertragungsverfahren eingesetzt, welche Vorteile hinsichtlich Flächen- und Energieeffizienz bieten.
-
Eine günstige Architektur stellt hierfür die source-synchrone Datenübertragung dar, bei der neben den Daten auch das hochfrequente Taktsignal über eine längere Strecke mit übertragen wird. Dieses wird dann zum Takten der Empfänger mehrerer Datenleitungen verwendet. Zum sicheren Empfangen der Daten muss das Taktsignal bezüglich der Datenkanäle ausgerichtet sein.
-
Durch Prozessvariationen in der Chipfertigung oder Asymmetrien im Layout entstehen Signalverzögerungen, die sich innerhalb der Datenkanäle unterscheiden können. Dies erschwert es, jeden Datenkanal zum optimalen Zeitpunkt mit demselben Takt am Empfänger abzutasten. Dieses Problem ist speziell in modernen sub-100nm CMOS Technologien und bei hohen Datenraten (mehrere Gbit/s pro Datenkanal) relevant, da hierbei das Zeitfenster zum sicheren Abtasten der Daten im Bereich mehrerer 10ps liegt, was ebenfalls in der Größenordnung der Prozessvariationen bei diesen modernen Technologien liegt.
-
Bei langsameren Datenraten und Schaltungsrealisierungen in größeren Technologieknoten (> 65nm) ist eine Ausrichtung nicht notwendig, da hier die Variation der Signalverzögerungen klein im Vergleich zur Periodendauer des Übertragungstaktes ist. Eine weitere Lösungsmöglichkeit beinhaltet die individuelle Ausrichtung einzelnen Datenkanäle zu einem Taktsignal durch Takt-Daten-Rückgewinnung pro Kanal, wobei sämtliche Variationen der Signalverzögerungen kalibriert werden. Zum Messen von Verzögerungszeiten für on-chip Signale sind folgende Methoden, basierend auf asynchroner Unterabtastung, bekannt.
-
Die Veröffentlichung
J. Schaub, F. Gebara, T. Nguyen, I. Vo, J. Pena, and D. Acharyya, "Onchip jitter and oscilloscope circuits using an asynchronous sample clock," in Solid-State Circuits Conference, 2008. ESSCIRC 2008. 34th European, 2008, pp. 126–129 (nachfolgend mit [1] bezeichnet) betrifft ein Verfahren zur Bestimmung des Jitters von Daten und Taktsignalen, wobei das entsprechende Signal mit einem Abtasttakt abgetastet wird, siehe
1. Bei jeder steigenden Flanke des Abtasttaktes wird das Eingangssignal mit einer Referenzspannung mittels eines Komparator verglichen.
-
Die Abtastwerte des Komparators werden in Zeitschlitze entsprechend der Periodizität des entsprechenden Signals eingeordnet. Das Verhältnis von detektierten Einsen zur Gesamtanzahl von Abtastwerten in jedem Zeitschlitz liefert eine Schätzung für die Verteilungsfunktion (CDF). Die Wahrscheinlichkeitsdichte (PDF) kann durch Differentiation der der Verteilungsfunktion gewonnen werden. Das so erstellte Jitter-Histogramm ermöglicht die Unterscheidung von steigenden und fallenden Taktflanken.
-
Die Veröffentlichung
B. Amrutur, P. K. Das, and R. Vasudevamurthy, "0.84 ps resolution clock skew measurement via subsampling," Very Large Scale Integration (VLSI) Systems, IEEE Transactions on, 2010 (nachfolgend mit [2] bezeichnet) betrifft ein Verfahren zum Messen des Taktversatzes von digitalen Schaltungen mittels asynchroner Unterabtastung. Die Taktknoten werden mit einem asynchronen Abtasttakt abgetastet, was eine Schwebung verursacht, die zeitlich proportional zu dem Taktversatz auf einer höheren Zeitskale ist. Die Schwebung wird zur Trennung von steigenden und fallenden Flanken geeignet maskiert. Der Taktversatz wird mit Histogrammen als sich ergebende arithmetische Differenz der Schwebungen ermittelt. Vorteil dieses Verfahren ist es, dass genaue Abtasttakte nicht erforderlich sind.
-
Der Artikel
C. Knapp and G. Carter, "The generalized correlation method for estimation of time delay," Acoustics, Speech and Signal Processing, IEEE Transactions on, vol. 24, no. 4, pp. 320–327, aug 1976 (nachfolgend mit [3] bezeichnet) betrifft ein Verfahren zur Schätzung der Verzögerungszeit mittels eines ML-Schätzers.
-
Es ist Aufgabe der Erfindung, eine Messung und Kompensation der Variationen der Verzögerungszeiten für Datenkanäle in source-synchron getakteten Datenbussen zu ermöglichen. Diese Aufgabe wird durch eine Schaltungsarchitektur gemäß dem unabhängigen Vorrichtungsanspruch und ein Verfahren gemäß dem unabhängigen Verfahrensanspruch gelöst.
-
Die Erfindung betrifft eine Schaltungsarchitektur mit einer Mehrzahl von Datenleitungen, wobei jede Datenleitung taktbare Sende- und Empfangsmittel aufweist, eine Kerntaktleitung zum Verteilen eines Kerntaktes an die taktbaren Sende- und Empfangsmittel sowie eine Abtasttaktleitung zum Verteilen eines Abtasttaktes zur asynchronen Unterabtastung. Die asynchrone Unterabtastung dient zur Messung und Kompensation von Signalverzögerungen, bspw. mit einem Verfahren wie in [1] und/oder [2] und/oder [3]. Zur Messung werden periodische Datenfolgen auf den Datenleitungen gesendet und die Variationen der Verzögerungszeit durch Auswertung von der Daten der asynchronen Unterabtastung realisiert.
-
Es ist vorgesehen, dass die Schaltungsarchitektur einen Multiplexer zum Auswählen entweder des Kerntaktes oder des Abtasttaktes zum Takten der taktbaren Empfangsmittel der Datenleitungen aufweist. Somit können dieselben taktbaren Empfangsmittel der Datenleitungen, die ohnehin auf der Schaltung zum Empfang von Daten im Normalbetrieb vorhanden sind, verwendet werden, um die asynchrone Unterabtastung zu realisieren.
-
Lediglich zur asynchronen Unterabtastung des Kerntaktes ist ein zusätzliches taktbares Empfangsmittel erforderlich. Daher ist im Weiteren vorgesehen, dass dem Multiplexer ein mit dem Abtasttakt taktbares Empfangsmittel zum Abtasten des Kerntaktes vorgeschaltet ist.
-
In einer Ausgestaltung der Schaltungsarchitektur ist vorgesehen, dass die taktbaren Empfangsmittel der Datenleitungen als Paare von taktbaren Empfangsverstärkern zum Trennen von steigender und fallender Flanke ausgebildet sind. Hierbei werden pro Datenkanal zwei getaktete Empfangsverstärker mit einer kleinen zeitlichen Verschiebung ihrer Takte, vorzugweise um einige Pikosekunden, betrieben und ihre logisch XOR-verknüpft.
-
Das taktbare Empfangsmittel zum Abtasten des Kerntaktes kann als taktbarer Empfangsverstärker ausgebildet sein.
-
In einer Ausgestaltung der Schaltungsarchitektur ist vorgesehen, dass dem taktbaren Empfangsmittel zum Abtasten des Kerntaktes ein kontinuierlicher Verstärker zum Verstärken des Kerntaktes vorgeschaltet ist. Der Kerntakt ist der funktionale Takt der Schaltung im Normalbetrieb.
-
Die Kompensation der Verzögerungszeiten erfolgt durch Schaltungselemente zur selektiven Einstellung der Verzögerungszeit von steigender und fallender Flanke am Sender. Jede zu kompensierende Leitung weist ein derartiges Schaltungselement auf.
-
Ein Vorteil der Erfindung ist, dass die Verzögerungsmessung das Aperturdelay der taktbaren Empfangsverstärker beinhaltet. Zudem ist kaum zusätzlicher Schaltungsaufwand nötig, lediglich Multiplexer, sowie ein taktbarer Verstärker.
-
Die Erfindung betrifft zudem ein Verfahren zur Ermittlung und Kompensation von Signalverzögerungen einer Datenleitung relativ zu einer weiteren Leitung einer Schaltungsarchitektur. Im Analysebetrieb werden über die Datenleitung und die weitere Leitung jeweils eine periodische Datenfolge übertragen. Die periodischen Datenfolgen werden mit einem zum Kerntakt zeitlich versetzten Abtasttakt abgetastet und empfangen. Aus den Abtastwerten wird jeweils ein Histogramm für die Datenleitung und die weitere Leitung ermittelt, wobei die Periode der periodischen Datenfolgen in Zeitfenster aufgeteilt wird und jedem Zeitfenster als Häufigkeit die Anzahl der abgetasteten Einsen relativ zu der Anzahl der Abtastwerte periodenberichtigt zugeordnet wird. Die Histogramme werden nach fallenden und steigenden Flanken getrennt. Aus den Histogrammen kann dann mittels einer arithmetischen Operation die Signalverzögerung ermittelt werden, bspw. wie in [1] und/oder [2] und/oder [3] beschrieben.
-
Erfindungsgemäß ist vorgesehen, dass das Empfangen und Abtasten der Datenleitung mit denselben taktbaren Empfangsmitteln, welche im Normalbetrieb mit dem Kerntakt betrieben werden, im Analysebetrieb mit dem zum Kerntakt zeitlich versetzten Abtasttakt erfolgt.
-
Für den Fall, dass es sich bei der weiteren Leitung um eine Datenleitung handelt, kann die Signalverzögerung, wie in [2] beschrieben, durch Bildung der arithmetischen Differenz der Häufigkeiten gemittelt über alle Zeitfenster von dem Histogramm der Datenleitung und dem Histogramm der weiteren Datenleitung ermittelt werden.
-
Für den Fall, dass es sich bei der weiteren Leitung um eine Kerntaktleitung handelt, wird als periodische Datenfolge der Kerntaktleitung der Kerntakt übertragen. Das Empfangen und Abtasten des Kerntaktes erfolgt mit einem zusätzlichen taktbaren Empfangsmittel.
-
Die Signalverzögerung zwischen Datenleitung und Kerntaktleitung kann insbesondere durch Konstruieren von idealen Takt- und Datensignalen und Schätzen des Maximalwertes der Kreuzkorrelationen zwischen den idealen Signalen und den Histogrammen ermittelt werden, siehe [3].
-
In einer Ausgestaltung des Verfahrens ist vorgesehen, dass jeweils ein initiales Histogramm ermittelt wird und dass die Histogramme durch Zentrieren des jeweiligen initialen Histogramms geschätzt werden. Dies ermöglicht die Separation von fallenden und steigenden Signalflanken, welche einfach durch mittige zeitliche Trennung der Histogramme erreicht werden kann.
-
Die Erfindung betrifft zudem ein System, das eine Schaltungsarchitektur, wie sie oben beschrieben ist, sowie eine digitale Signalverarbeitungseinheit zum Empfangen von Ausgangssignalen der taktbaren Empfangsmittel der Datenleitungen und zum Empfangen des Ausgangssignals des taktbaren Empfangsmittels zum Abtasten des Kerntaktes aufweist. Die Signaleinheit wird hierbei konfiguriert, das oben beschriebene Verfahren durchzuführen und Verzögerungswerte zum Einstellen einer Signalverzögerung für jede Datenleitung und die Kerntaktleitung auszugeben.
-
Die Erfindung wird im Folgenden anhand von Ausführungsbeispielen unter Bezugnahme auf Figuren erläutert. Hierbei zeigen:
-
1 die Erzeugung eines Jitterhistogramms mittels asynchroner Unterabtastung nach dem Stand der Technik;
-
2 ein Blockschaltbild eines Systems mit einer Schaltungsarchitektur zur Messung und Kompensation von Signalverzögerungen und zugehöriger Signalverarbeitungseinheit;
-
3 ein Diagramm mit gemessenen Signalformen;
-
4 einen Algorithmus zur Gewinnung eines Histogramms;
-
5 ein Histogramm, aufgeteilt nach Signalflanken;
-
6 die Auswirkung nicht-idealer Effekte auf die Schätzung eines Histogramms;
-
7 das Frequenzschätzungskriterium als Funktion des Referenzperiodenversatzes; und
-
8 die Schätzung des Taktversatzes mittels Kreuzkorrelation von idealen Signalformen;
-
2 zeigt ein System 1 mit einer Schaltungsarchitektur 2 und zugehöriger Signalverarbeitungseinheit 3. Die Schaltungsarchitektur 2 arbeitet nach dem Prinzip der Serialisierung und Deserilisierung (SERDES). Jeder NoC(Network on Chip)-Link 17 weist eine einzelne Kerntaktleitung 5, sowie mehrere Datenleitungen 4 mit einem Serialisierungsfaktor m auf. Jede Leitung besteht aus zwei differentiellen Leitungen. Der Kerntakt wird am Sender mittels des Phasenschiebers 12 um 90° phasenverschoben, so dass die Abtastflanke im Datenauge zentriert ist. Die Kerntaktleitung 5 und die Datenleitung 4 weisen Verzögerungselemente 10 zum Selektiven Verzögern von steigender und fallender Flanke auf. Die Sendeseite beinhaltet taktbare Sendemittel 15 in Form von Parallel-Seriell-Umsetzern. Auf der Empfangsseite wird der Kerntakt Rx_clk mit einem kontinuierlichen Verstärker 11 verstärkt. Daten der Datenleitungen 4 werden mit taktbaren Empfangsmitteln 6 in Form taktbarer Verstärkern detektiert. Im Normalbetrieb werden die detektierten Daten mittels des Seriell-Parallel-Umsetzers 19 wieder parallelisiert.
-
Über die Abtasttaktleitung 9 wird ein Abtasttakt s_clk zu jedem NoC-Link-Empfänger 6 verteilt. Mit einem Multiplexer 7 wird der Takt für Datenleitungen ausgewählt. Im Normalbetrieb ist dies der Kerntakt RX_clk, im Analysebetrieb der Abtasttakt s_clk. Somit wird sowohl während des Normalbetriebs als auch während des Analysebetriebs die Datenleitung 4 mit einem Takt vom selben physischen Netzwerk 17 abgetastet, so dass sich ein geringer relativer Zeitversatz ergibt. Dem Multiplexer 7 ist ein mit dem Abtasttakt taktbarer Empfangsverstärker 8 zum Abtasten des Kerntaktes RX_clk vorgeschaltet. Die Abtastwerte der asynchronen Unterabtastung werden für jeden NoC-Link mittels eines Multiplexers 20 auf den Abtastdatenbus 21 umgesetzt und an die Signalverarbeitungseinheit 3 ausgegeben. In der Signalverarbeitungseinheit werden die Verzögerungen für jede Datenleitung und die Kerntaktleitung berechnet und über JTAG 22 gesetzt und lokal in jedem NoC-Transmitter 17 gespeichert.
-
Zur Messung werden periodische Datensignale über die Datenleitungen übertragen. Dies geschieht durch wiederholtes Übertragen einer identischen Datenfolge. Der Strom von Abtastwerten wird für alle Datenleitungen 4 und der Kerntaktleitung 5 eines NoC-Links 17 ermittelt.
-
3(a) zeigt die asynchrone Unterabtastung. Hierbei ist Ts die Periode des Abtasttaktes. Die gemessene Signalperiode ist Tm = Tref*N/M, wobei Tref der globale Referenztakt, M der PLL Frequenzmultiplikator und N ist der Datenfolgenmultiplikator ist. Asynchrone Unterabtastung wird dadurch realisiert, dass Tref gegen Ts verstimmt wird. Die effektive Zeitbasis der Unterabtastung tstep ergibt sich zu tstep = |Ts – Tref|
-
Das Auftreten von Abtastwerten innerhalb einer spezifischen Zeit tbin wird im Histogramm mit nbin Zeitfenstern mit tbin = TM/nbin zusammengefasst. Um Zeitfenster zu vermeiden, in die keine Abtastwerte fallen, sollte die Bedingung tstep < tbin erfüllt sein. Eine Verteilungsfunktion (CDF) wird mittels des in [1] beschriebenen Verfahrens konstruiert. Die effektive Zeit jedes Abtastwertes im Histogramm teff wird berechnet und dem entsprechenden Zeitfenster zugewiesen. Der Algorithmus hierzu ist in 4 dargestellt.
-
Wenn der Analysebetrieb begonnen wird, so ist die relative Phase des Abtasttaktes zu dem gemessenen Signal zunächst unbekannt. Dies hat zur Folge, dass der Ort steigender und fallender Flanken innerhalb des effektiven Zeitbereiches [0; teff] zufällig innerhalb mehrerer Messungen variiert. Ein initiales Histogramm h´(teff) wird konstruiert und h(teff) wird durch Zentrieren von h´(teff) innerhalb von [0; teff] geschätzt. Dies erlaubt die Trennung von steigenden und fallenden Flanken. 5 zeigt ein gemessenes Beispielhistogramm, welches zeitlich mittig aufgetrennt ist.
-
Wie in 2 dargestellt, weist die Schaltungsarchitektur einen Multiplexer mit Verzögerung td,mux zwischen dem verstärkten Kerntakt RX_clk und dem Takt zum Triggern der taktbaren Empfangsverstärker clk_1 auf. Dadurch, dass der Abtasttakt s_clk den gleichen physischen Pfad zwischen dem Abtasten des Kerntaktes RX_clk und den Datenleitungen nimmt, wird der Kerntakt RX_clk so abgetastet, als wäre dieser virtuell um td,mux verzögert, siehe 3(b). Somit kann diese Verzögerung ignoriert werden, da sie keinen zusätzlichen Versatz zwischen dem Histogrammen des Kerntaktes und dem Histogramm der Daten verursacht.
-
Die genaue Differenz (Schrittweite) tstep der Periode des gemessenen Signals und des Abtasttaktes muss bekannt sein, um die Histogramme H(teff) genau konstruieren zu können. Aufgrund von Ungenauigkeiten der Taktgeneratoren 13, 14 (2) oder einer Temperaturdrift gibt es einen Schrittweitenfehler dtstep zwischen der erwarteten und wirklichen Schrittweite. Dieser Fehler wirkt sich in der Weise aus, als dass fortfolgende periodische Abtastwerte dem falschen Zeitfenster zugewiesen werden, insoweit folgende Bedingung erfüllt ist nsamples > tbin/tstep. Dies ist insbesondere dann der Fall, wenn eine hohe Anzahl von Abtastwerten nsample aus Gründen der Genauigkeit der Verzögerungsmessung gemessen wird und wenn der Schrittweitenfehler dtstep groß ist.
-
Wie in 6(a) dargestellt, verringert sich der gemessene Signalanstieg in h(teff) mit steigender Anzahl an Abtastwerten nsample und mit steigendem Schrittweitenfehler dtstep. Für die Schätzung von dtstep kann die Standardabweichung sigma (h(t’eff)) als Optimierungskriterium dienen. Diese wird maximiert wenn die tstep + dtstep Schätzung dem wirklichen Wert |Ts – Tm| entspricht. 7 zeigt die gemessene Charakteristik des Optimierungskriteriums.
-
Die Takte der Schaltungsarchitektur 2, 2 können erheblichen Jitter aufweisen. Wie in 6b dargestellt, ist die Trennung von steigenden und fallenden Flanken nicht möglich, wenn der Abtastjitter größer als die Periode des gemessenen Signals ist. Aus diesem Grund wird die effektive Datenperiode durch eine periodische Datenfolge der Länge N erhöht.
-
Die Schaltungsarchitektur, wie in
2 dargestellt, setzt eine relative Verzögerungsanpassung voraus. Nach Trennen der Histogramme h(t
eff) für steigende und fallende Flanken wird das arithmetische Differenzenverfahren, wie in [2] beschrieben, angewandt, um die relative Verzögerung (Versatz, Differenz) zwischen der Datenleitung i und j zu bestimmen:
wobei e der Flankentyp (steigend: e = 1, fallend e = –1) ist.
-
Aufgrund des Jitters können steigende und fallende Flanken des Hochgeschwindigkeitstaktes nicht innerhalb h(teff) getrennt werden. Jedoch lässt sich das Tastverhältnis d durch Mitteln von h(teff) abschätzen. Das Tastverhältnis steht zu den Verzögerungen der steigenden und fallenden Flanke:
-
-
Zur Schätzung des Versatzes vom Kerntakt zu den Daten auf den Datenleitungen werden ideale Taktsignale (hclk,est(teff)) und Datensignale (hdata,est(teff)) innerhalb der effektiven Zeitbasis mit einem zufälligen Versatz konstruiert. Ihre Versatzdifferenz in Bezug auf die gemessenen Histogramme hdata(teff) und hclk(teff) wird unter Verwendung des Maximums ihrer Kreuzkorrelationen CCF (hclk, hclk,est) und CCF (hdata, hdata,est) bestimmt, wie in [3] beschrieben. 8 zeigt eine Beispielmessung mit ausgerichteten Takt- und Datenschätzsignalen. Der relative Verzögerung von Takt zu Daten, wiedergegeben durch den Versatz von hclk,aligned zu hdata,est,aligned, ist die Summe der 90° Verzögerungsverschiebung (Tclk/4) für Double Data Rate (DDR) Signalisierung und der Takt zu Datenverstimmung von td,c2d.
-
Bezugszeichenliste
-
- 1
- System
- 2
- Schaltungsarchitektur
- 3
- digitale Signalverarbeitungseinheit
- 4
- Datenleitung
- 5
- Kerntaktleitung
- 6
- taktbares Empfangsmittel (taktbarer Verstärker)
- 7
- Multiplexer
- 8
- taktbarer Empfangsverstärker des Kerntaktes
- 9
- Abtasttaktleitung
- 10
- Verzögerungselement
- 11
- kontinuierlicher Taktverstärker
- 12
- Phasenschieber
- 13
- Referenztaktgenerator
- 14
- Abtasttaktgenerator
- 15
- taktbares Sendemittel (Parallel-Seriell-Umsetzer)
- 16
- kontinuierlicher Verstärker
- 17
- NoC-Link
- 18
- PLL
- 19
- Seriell-Parallel-Umsetzer
- 20
- Multiplexer
- 21
- Abtastdatenbus
- 22
- JTAG TAP
- 23
- CRC
- RX_clk
- Kerntakt
- s_clk
- Abtasttakt
- clk_1
- Takt der ersten Datenleitung
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- J. Schaub, F. Gebara, T. Nguyen, I. Vo, J. Pena, and D. Acharyya, “Onchip jitter and oscilloscope circuits using an asynchronous sample clock,” in Solid-State Circuits Conference, 2008. ESSCIRC 2008. 34th European, 2008, pp. 126–129 [0006]
- B. Amrutur, P. K. Das, and R. Vasudevamurthy, “0.84 ps resolution clock skew measurement via subsampling,” Very Large Scale Integration (VLSI) Systems, IEEE Transactions on, 2010 [0008]
- C. Knapp and G. Carter, “The generalized correlation method for estimation of time delay,” Acoustics, Speech and Signal Processing, IEEE Transactions on, vol. 24, no. 4, pp. 320–327, aug 1976 [0009]