www.mikrocontroller.net

Forum: FPGA, VHDL & Co. LVDS receiver in FPGA-2


Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich  mal mal wider eine Frage zu LVDS.
Kann mir jemand erklären wie das funktioniert mit den Schieberegistern 
paralel_in seriell_out, mit der Taktansteuerung?
Der LVDS Transmitter bekommt von mir einen Takt CLK_in von 20MHz. Laut 
Datenblatt generiert die interne PLL 7 schiebe Takte und ich hab auch 
schon gelesen, dass man das so in der Praxis macht, um nur eine 
Schieberegisterstufe mit der höchsten Frequenz laufen zu lasen. Bei mir 
hatte bisher ein Schieberegister ein Takt zum schieben und ich kann mir 
nicht vorstellen, wie das ein 7 Bit Schieberegister mit 7 Takten macht. 
Sinn und zweck der sache ist, dass gesendete Signal in einem FPGA zu 
empfangen und dazu muss ich erst einmal verstehen, wie genau das signal 
gesendet wird. Versucht die funktion herraus zu bekommen hab ich von dem 
"CS5820" 21:3 LVDS Transmitter.

würde mich freuen wenn mir jemand weiterhelfen kann

Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
keiner der mir helfen kann?

Autor: Kest (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Formuliere Deine Frage bitte neu. Ich habe nicht verstanden, wie diese 
lautet :-o

Grüße,
Kest

Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kurz und knapp... ich möchte einen lvds-receiver in einem fpga 
implementieren und dazu gerne wissen wie der sender genau funktioniert.
Ich werd aus den Datenblättern nicht so richtig schlau.
Speziell die Sache mit der internen Takterzeugung für die Register 
verstehe ich nicht.

Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Umsetzung des Differenzsignals in TTL Logig im FPGA hab ich schon. 
Nun kommt der Teil, die Bits ordnungsgemäß in ein Schieberegister zu 
schreiben und den Anfang des Datenwortes zu erkennen. Dies muss ja aus 
dem mitgesendetet Takt möglich sein. Um dies richtig zu verstehen, 
wollte ich mir aus dem Datenblatt die Funktionsweise des Senders 
aneignen, was leider bis jetzt ein bischen hängt.

Autor: Kest (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
intern wir der Clock entsprechend Deinen LVDS Einstellungen generiert 
(via PLL/DCM). Wenn die Datenrate z.B. 7x höher ist als der LVDS 
referenz clock, dann generiert die PLL den 7x schnelleren Clock.
Mit diesem Clock werden dann die Daten seriell in eine Kette von 7 FF 
geschoben -- hinten kommen dann die seriellen Daten raus.
Wie "genau" diese Takterzeugung funktioniert, weis ich jetzt auch nicht. 
Es kann eine PLL sein oder durch Durchlaufzeiten der Gatter oder was 
weis ich -- hängt wohl von der Technologie des FPGAs ab.

Grüße,
Kest

Autor: Kest (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich glaube, Deine Frage hat mit LVDS gar nicht zu tun, sonder mit 
Schieberegistern. Suche einfach bei Google nach "Schieberegistern", 
"shift" register und VHDL/Verilog/FPGA...

Grüße,
Kest

Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In LVDS Transmitter'n wird aus dem CLK_in nicht ein Schiebetakt erzeugt, 
sondern (bei mir ein 7 Bit Schieberegister im LVDS Transmitter) 7 
Schiebetakte. Und wie das dann rausgeschoben wird interessiert mich.
Ich hab auch schon bei google unter Schieberegister gesucht aber nix 
gefunden.

Autor: Kest (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich bin ratlos, sorry. Was heißt "wie es rausgeschoben wird"? Und dass 
Du über google nichts gefunden hast, glaube ich jetzt mal nicht ;-) 
Willst Du jetzt alles auf Gatterebene wissen? Transistorebene? Wie eine 
PLL funktioniert? Wie ein FF funktioniert?

Grüße,
Kest

Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich weiß wie eine pll funktioniert und ich weiß auch wie ein 
schieberegister funktioniert, mir is aber halt nicht ganz klar wie das 
im lvds transmitter realisiert wird, da wird eben nicht nur ein 
schiebetakt erzeugt.
Man siehts ja auch im datenblatt "Fully integrated on-chip PLL that 
provides 7X CKIN serial shift clock." pro register.

naja trotzdem danke

Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kann mir eventuell jemand sagen wie ich am einfachsten in einem virtex 5 
fpga einen lvds receiver implementiere?

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du solltest vielleicht bedenken, dass LVDS nicht unbedingt serielle 
Datenübertragung ist. Ebenso erzwingt eine serielle Übertragung nicht 
LVDS. LVDS ist nur der physikalische Standard.
Schau dir im Datenblatt des Virtex 5 die entsprechenden Kapitel zu den 
seriellen Transmittern und Receivern an. Beim Virtex 4 ist es gut 
erklärt, müsste beim Virtex 5 genauso sein (außer dass der eine PLL 
nutzen kann).

Autor: Achim S (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
schau dir doch mal die XAPP873 von Xilinx an. Die hat die Anbindung 
eines schnellen DACs über LVDS-Signale zum Thema. Und sie erklärt auch, 
wie du einen OSERDES einsetzt, um die von dir gewünschte Funktionalität 
des Schieberegisters zu erzeugen. Ist also alles drin, was du brauchst, 
sogar mit link auf ein Referenzdesign ...

schöne Grüße

Achim

Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok vielen danken

mfg
matzunami

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]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [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.