LVDS receiver in FPGA-2

Gast #1279853
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
Gast #1279915
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.
Gast #1279926
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.
Gast #1279931
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
Gast #1279951
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.
Gast #1279965
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
Gast #1279980
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
#1280173
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).
Gast #1280302
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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren