Servus zusammen, ich stehe schon wieder vor einem Problem mit meinem Spartan-3E Design: Mein 13 MHz Takt erreicht den Ausgang mit einem deutlichen Jitter von bis zu 500 ps. Ich habe bereits mehrere Taktquellen versucht und auch höhere Takte heruntergeteilt und diese intern verwendet (sowohl per VHDL als auch mit Hilfe des DCMs). Könnt ihr mir ein paar Tipps geben, wie ich den Jitter im FPGA schwächen kann? Danke und Grüße PS: Den Thread hier Beitrag "Xilinx Spartan3 - timing jitter" habe ich bereits gelesen und beschäftige mich derzeit mit der Theorie zu PLLs und DLLs.
@ Der Daimlerfahrer (daimlerfahrer) >Mein 13 MHz Takt erreicht den Ausgang mit einem deutlichen Jitter von >bis zu 500 ps. Ich habe bereits mehrere Taktquellen versucht und auch Naja, wozu soll der Takt denn verwendet werden? >höhere Takte heruntergeteilt und diese intern verwendet (sowohl per VHDL >als auch mit Hilfe des DCMs). DCMs, DLLs und PLLs im FPGA kannst du da vergessen, die machen ziemlich viel Jitter. Generell sind FPGAs nicht so doll, was Jitter von durchgeschleiften Takten angeht. Externe PLLs sind da schon was anderes. >Könnt ihr mir ein paar Tipps geben, wie ich den Jitter im FPGA schwächen >kann? Nicht erst durchschleifenn. Ausserhalb mit Taktreiber den Takt sternförmig ans FPGA und die andern ICs führen. MfG Falk
Leider muss ich den Takt durchs FPGA führen, da ich dort eine PWM damit mache und den Ausgang des FPGA auf einen Treiber weitergeben möchte.
@ Der Daimlerfahrer (daimlerfahrer) >Leider muss ich den Takt durchs FPGA führen, da ich dort eine PWM damit >mache und den Ausgang des FPGA auf einen Treiber weitergeben möchte. Nu ja, man kann schon eineiges machen, 500ps klingt schon recht viel. Wie sieht dein Layout aus? Sauber und reichlich Abblockkondensatoren? An der VCC-IO Bank, an welcher der Takt eingespeist wird sollten möglichst wenig, und nur langsame Ausgänge schalten, die machen nämlich auch Jitter durch pulsartige Belastung von VCC-IO. Für diese Bank VCC-IO gesondert über LC-Filter führen, ähnlich wie bei ADCs. MFG Falk
@ Der Daimlerfahrer (daimlerfahrer) nur, um einen 'sehr speziellen Effekt' auszuschließen: verwendest Du 2 DCMs, die 'nebeneinander' liegen ? Gruß Jochen
Bisher arbeite ich auf dem Spartan-3E Eval Board. Demnach habe ich wenig Einfluss auf Positionierung und Dimensionierung der Cs. Ich werde mal versuchen den Clock etwas "frei" zu stellen und andere Ein- und Ausgänge entfernt zu platzieren. Danke schonmal für Deine Tipps!
@ Der Daimlerfahrer (daimlerfahrer) das Eval-Board sollt i.O. sein - dort würde ich als letztes suchen... nochmal - jetzt etwas eindringlicher: verwendest Du 2 DCMs, die nebeneinander liegen ?
Ich verwende in meinem Design nur einen DCM, um den Takt in 90° Schritten zu schieben. Sorry hatte meinen Beitrag geschrieben während Du die Frage gepostet hast... Ich benutze intern einige Bufferketten, die mir ein zusätzliches Delay geben. Daher kommt wohl der Jitter... Denn je mehr Buffer ich nutze, desto stärker fällt der Jitter aus.
>Sorry hatte meinen Beitrag geschrieben während Du die Frage gepostet >hast... passiert mir auch ;-) >Ich verwende in meinem Design nur einen DCM o.k. - dann fällt mein Verdacht aus >Ich benutze intern einige Bufferketten, die mir ein zusätzliches Delay >geben. Stichwort: Verwendung des dyn. Phaseshift einer DCM als Alternative !?! Gruß Jochen
@ Joko (Gast) >>Ich benutze intern einige Bufferketten, die mir ein zusätzliches Delay >>geben. Ohhh,ich ahne schreckliches. >Stichwort: Verwendung des dyn. Phaseshift einer DCM als Alternative !?! Wenn man in einem FPGA einen jitterarmen Takt haben will sind SÄMTLICHE DCMs, DLLS, PLLs etc. tabu! Und wozu meinst du, die 90 Grad Version des 13 MHz Taktes zu brauchen? MFG Falk
@Falk >Wenn man in einem FPGA einen jitterarmen Takt haben will sind SÄMTLICHE >DCMs, DLLS, PLLs etc. tabu! Ich stimme Dir 'im Prinzip' zu - die Frage ist nur, was man als jitterarm bezeichnen möchte: - bei den angegebenen 500ps ist (selbst bei der Verwendung einer DCM) irgendwas oberfaul ! - 200 ps sollten aber selbst mit einer DCM möglich sein - für deutlich weniger Jitter sind dann DCMs tabu - PLLs hingegen können bei geeigneter Verwendung sogar den Jitter verringern "dyn." Phase-Shift war natürlich nur zur 'Einstellung' der gewünschten Phasenlage gedacht - im Moment der 'Verstellung' ergibt sich definitionsgemäß natürlich ein 'extremer' Jitter Bei 13MHz würd' ich mir allerdings überlegen, ob ich nicht einen höheren, jitterarman Takt (auf dem Board vorhanden ?) verwenden kann, um daraus dann die geforderten 'timings' zu abzuleiten... Gruß Jochen
Der Punkt ist tatsächlich, dass ich dynamische Phaseshifts erzeugen möchte, die kleinere Schritte aufweisen, als mit einem Zähler zu realisieren wäre... Zudem soll das ganze sehr schnell einstellbar sein. Damit kommt der PS im DCM nicht in Frage (auch wenn der 'nur' ein paar Takte braucht). Die 90°,180° und 270° Schritte brauche ich, um mein Signal bei Bedarf bis zu 360° zu verschieben.
@Joko (Gast) >- bei den angegebenen 500ps ist (selbst bei der Verwendung einer DCM) > irgendwas oberfaul ! Jain. Das ist abhängig von vielen EInstellungen, Freqeunzverhälnissen etc. >- 200 ps sollten aber selbst mit einer DCM möglich sein Unter Umständen. >- für deutlich weniger Jitter sind dann DCMs tabu >- PLLs hingegen können bei geeigneter Verwendung sogar den Jitter > verringern PLL != PLL Die internen in FPGAs sind bei weitem nicht so gut wie man landläufig denkt. >Die 90°,180° und 270° Schritte brauche ich, um mein Signal bei Bedarf >bis zu 360° zu verschieben. Dann nimm 4x13MHz, das ist wesentlich einfacher und jitterarm. MFG Falk
Das wäre meine nächste Frage gewesen: Bekomme ich weniger Jitter, wenn ich einen höheren Takt nehme und mir daraus meine 13 MHz generiere mit der entsprechenden Phasenstellung (90, 180 und 270 Grad)? Und wie verhält es sich, wenn ich noch einen Tiefpass am Ausgang vorsehen würde und diesen wieder an einen Komparator führe? Entsprechend Dimensioniert sollte mein Signal doch sauberer werden!?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.