Forum: FPGA, VHDL & Co. Spartan 6 zu langsamer Clock Synchronisieren


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von T. F. (sar)


Bewertung
0 lesenswert
nicht lesenswert
Der Spartan 6 soll synchron zu einem anderen System Signale erzeugen. 
Das System gibt ein Synchronisationspulse aus welches eine Frequenz von 
100Hz-2MHz (je nach Einstellung) haben mit einer Pulslänge von ~100ns. 
Dazu synchron will ich ein paar Signale mit wenig Jitter (<1ns) abtasten 
(analog & digital). Intern werde ich einen Takt von 100MHz bis 150MHz 
anstreben.

Da die interne PLL des Spartan 6 erst bei ein Fin_min von 19MHz hat und 
der Dutycycle auch klein ist benötige ich eine externe Aufbereitung. Zum 
Beispiel der Cirros CS300-CP (https://www.cirrus.com/products/cs2300/) 
könnte den Frequenzbereich abdecken.

Jetzt meine Frage: Gibt es eine andere Möglichkeit den FPGA zu 
synchronisieren ohne externe PLL?

Wenn nein, hat jemand noch andere Vorschläge für eine externe 
Aufbereitung?

Danke,
Stefan

von Tim (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Man könnte zwei GTP-Kanäle (falls überhaupt vorhanden) als 1GSa/s 
Oversampler betreiben, aber das ist ein Aufwand der dir sicher noch 
andere Einschränkungen vorgibt.

Das analoge Modul vorschalten ist schon ein gute praktische Lösung.

Ich würde mich fragen, ob die Anforderungen insbesondere im Jitter 
wirklich so hart sein müssen. 100 Hz und 1 ns wird sicher zusätzliche 
Rauscheffekte wie 1/f hervorrufen.

von Weltbester FPGA-Pongo (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
T. F. schrieb:
> Da die interne PLL des Spartan 6 erst bei ein Fin_min von 19MHz hat

Dafür gibt es eine elegante Lösung mit dem feedback loop die ich mir mal 
ausgedacht habe. Was ist dir die Lösung wert?

von Duke Scarring (Gast)


Bewertung
0 lesenswert
nicht lesenswert
T. F. schrieb:
> Das System gibt ein Synchronisationspulse aus welches eine Frequenz von
> 100Hz-2MHz (je nach Einstellung) haben mit einer Pulslänge von ~100ns.
Woher kommt denn der Takt für dieses System? Wird der intern generiert? 
Läßt er sich evtl. von extern vorgeben?

Duke

von T. F. (sar)


Bewertung
0 lesenswert
nicht lesenswert
Duke Scarring schrieb:
> Woher kommt denn der Takt für dieses System? Wird der intern generiert?
> Läßt er sich evtl. von extern vorgeben?

Der Takt wird intern generiert nur leider habe ich keinen Zugriff darauf 
und kann ihn auch nicht extern vorgeben.

von Duke Scarring (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Du kannst dir auch eine PLL im FPGA nachbauen: Zeit zwischen zwei 
Flanken messen und damit einen NCO füttern. GGf. noch ein Filter, damit 
die Frequenzsprünge klein genug bleiben und fertig ist die Laube...

Duke

von T. F. (sar)


Bewertung
0 lesenswert
nicht lesenswert
Duke Scarring schrieb:
> kannst dir auch eine PLL im FPGA nachbauen: Zeit zwischen zwei
> Flanken messen und damit einen NCO füttern. GGf. noch ein Filter, damit
> die Frequenzsprünge klein genug bleiben und fertig ist die Laube...

Werde ich mir parallel zur externen PLL anschauen und ausprobieren. 
Danke für den Vorschlag.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.