Forum: FPGA, VHDL & Co. ADC FPGA - LVDS Konfiguration


von Karli (Gast)


Lesenswert?

Hallo!

ADC ADS6125 unterstützt CMOS und LVDS. Ich versorge ihne mit 3.3V und 
konfiguriere ihn über das serielle Interface. Geplant hatte ich ihn mit 
LVDS zu verwenden.
Als FPGA dient ein Z7020. Die Bank ist mit 3v3 versorgt. Da noch andere 
Komponenten an den IOs hängen, kann ich das nicht einfach ändern. Leider 
unterstützt der Z7020 bzw. Artix 7 die interne Terminierung nur bei 2v5.

Folgende Fragen habe ich:
-) Der ADC ist standardmäßig als CMOS konfiguriert. Wenn ich ihn mit 
LVDS verwenden will, muss ich das über die Schnittstelle einstellen. Bis 
zur Konfiguration arbeiten die Ausgänge als CMOS - die FPGA Eingänge 
jedoch schon vorher als LVDS. Wie kann ich das Problem umgehen?
Würde es funktionieren, den PowerDownPin auf High zu halten? Ich finde 
im Datenblatt keinen Hinweis, ob das Konfigurieren im Global-Power-Down 
funktioniert.
-) Der ADC selbst bietet interne Terminierung an. Spricht etwas dagegen 
diese zu Verwenden? Normalerweise terminiert man ja beim Empfänger, wozu 
gibt es dann aber die Möglichkeit die Terminierung beim ADC 
einzustellen?

Vielen Dank!
Karli

von Duke Scarring (Gast)


Lesenswert?

Karli schrieb:
> ADC ADS6125
> Leider
> unterstützt der Z7020 bzw. Artix 7 die interne Terminierung nur bei 2v5.
Dann mach eine externe Terminierung dran. Die gibt es auch in so klein, 
das die gut zwischen die differentiellen Leitungen passen.
Wie groß ist die Leitungslänge zwischen ADC und FPGA?
Wie hoch soll die Datenrate auf den LVDS-Lanes sein?

> Folgende Fragen habe ich:
> -) Der ADC ist standardmäßig als CMOS konfiguriert. Wenn ich ihn mit
> LVDS verwenden will, muss ich das über die Schnittstelle einstellen. Bis
> zur Konfiguration arbeiten die Ausgänge als CMOS - die FPGA Eingänge
> jedoch schon vorher als LVDS. Wie kann ich das Problem umgehen?
Aus dem Ausgang kommen max.3,3V raus, die das FPGA verkraften sollte.
Da sollte nichts kaputtgehen.

> -) Der ADC selbst bietet interne Terminierung an. Spricht etwas dagegen
> diese zu Verwenden? Normalerweise terminiert man ja beim Empfänger, wozu
> gibt es dann aber die Möglichkeit die Terminierung beim ADC
> einzustellen?
Mit der internen Terminierung kann man die Reflektionen, die ggf. vom 
FPGA zurückkommen nochmal reduzieren. Allerdings auf Kosten des 
Stromverbrauchs.
Wenn am FPGA brauchbar terminiert wird, sollte das nicht nötig sein.

Duke

von Karli (Gast)


Lesenswert?

Hallo!

Der ADC wird mit 100MHz getaktet. LVDS wäre mit DDR. Die Leitungen auf 
dem Eval-Board sind ca 30mm. Dann kommen noch ca 20mm bis zum ADC. Hier 
(->in den 20mm) hätte ich die Möglichkeit die Terminierungen einzubauen. 
Würde das etwas helfen? Oder kann ich sie Aufgrund der kurzen Leitungen 
weglassen bzw. nur die im ADC verwenden?

Vielen Dank!

schöne Grüße
Karli

von Duke Scarring (Gast)


Lesenswert?

Karli schrieb:
> Hier
> (->in den 20mm) hätte ich die Möglichkeit die Terminierungen einzubauen.
Na dann würde ich nur eine Serienterminierung vorsehen. Es gibt da so 
schöne kleine 4-fach-SMD-Resistorarrays.
Bei 100 MHz dürfte man mit LVDS weniger EMV-Probleme erwarten, als mit 
CMOS:
1. jedes Signal hat seinen eigenen 'Rückkanal' hat und
2. der Pegelhub ist viel geringer.

Duke

von Christian R. (supachris)


Lesenswert?

Karli schrieb:
> Der ADC ist standardmäßig als CMOS konfiguriert. Wenn ich ihn mit
> LVDS verwenden will, muss ich das über die Schnittstelle einstellen. Bis
> zur Konfiguration arbeiten die Ausgänge als CMOS - die FPGA Eingänge
> jedoch schon vorher als LVDS. Wie kann ich das Problem umgehen?

Mit einem anderen ADC haben wir das gleiche Problem umgangen, indem wir 
die DRVDD erst einschalten, nachdem wir per SPI auf LVDS geschalten 
haben. Klappt.

von Gustl B. (-gb-)


Lesenswert?

Der AD9650 macht bei mir weder mit CMOS noch mit LVDS Ärger (zwei 
Platinen). Auch hier kommt der zuerst mit CMOS hoch und wird dann 
umkonfiguriert.

Karli schrieb:
> Dann kommen noch ca 20mm bis zum ADC. Hier
> (->in den 20mm) hätte ich die Möglichkeit die Terminierungen einzubauen.
> Würde das etwas helfen? Oder kann ich sie Aufgrund der kurzen Leitungen
> weglassen bzw. nur die im ADC verwenden?

Das sind in Summe 5 cm. Bau eine Terminierung ein, zumindest ins Layout, 
du musst sie ja nicht bestücken.
Der ADC kann den LVDS Strom verdoppeln (per Register), das ist genau für 
diese zweifache Terminierung gedacht. Also 100 Ohm differentiell im ADC 
und nochmal 100 Ohm differentiell kurz vor dem ADC.

von Karli (Gast)


Lesenswert?

Vielen Dank für die vielen Tipps.
Ich gebe Bescheid, sobald ich etwas versucht habe.

schöne Grüße
Karli

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
Noch kein Account? Hier anmelden.