Forum: Mikrocontroller und Digitale Elektronik SPI-Signale über LVDS Treiber schicken


von Martin (Firma: Angestellt) (herki)


Lesenswert?

Hallo

Ich hab ein Projekt mit 4 (in der späteren Ausbaustufe 8 ) SPI-Slaves.
Zur Verringerung von Störaussendung möchte ich den kompletten SPI-Bus 
(ohne Slave-Signal) über LVDS-Treiber und LVDS-Receiver schicken.

Jetzt kommt meine Frage:
Kann ich die LVDS-Signale aufteilen?

Hat sowas schon jemand gemacht?

Würde mich über Antworten wie immer sehr freuen.

VG

Martin

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Was meinst Du mit "aufteilen"? Willst Du an einen LVDS-Treiber mehrere 
Empfänger anschließen?

Das kann funktionieren, so wird beispielsweise bei SCSI (ab "Ultra2") 
LVDS auf dem parallelen Bus verwendet.

Du solltest jedoch Dir die Datenblätter der gewünschten LVDS-Bausteine 
genau ansehen, ob die Ausgangstreiber auch die Lasten mehrerer Empfänger 
treiben können.

von Martin (Firma: Angestellt) (herki)


Lesenswert?

Hi rufus

Danke für die Antwort.

Ja. So meinte ich das:

1 Treiber --> mehrere Empfänger

Kannst Du mir vielleicht schon einen Typen nennen der das event. könnte?

VG

Martin

von Reinhard Kern (Gast)


Lesenswert?

Martin R. schrieb:
> 1 Treiber --> mehrere Empfänger

Hallo Martin,

LVDS erfordert Leitungen bestimmter Impedanz mit entsprechendem 
Abschluss. Mehrere Empfänger geht, wenn externe Abschlusswiderstände 
verwendet werden und die Leitung nur am Ende abgeschlossen wird, 
Verzweigungen gehen nicht.

Allerdings ist LVDS für GHz spezifiziert, SPI ist demgegenüber 
Gleichstrom. In dem Fall wird das alles ziemlich egal sein.

Gruss Reinhard

von (prx) A. K. (prx)


Lesenswert?

Reinhard Kern schrieb:

> Allerdings ist LVDS für GHz spezifiziert, SPI ist demgegenüber
> Gleichstrom. In dem Fall wird das alles ziemlich egal sein.

Reflexionen gibt es bei sternförmiger Verdrahtung oder zu langen Stubs 
trotzdem, und bei der Taktleitung ist das nicht unbedingt egal. Dass 
LVDS für GHz gebaut ist ändert nichts an der Physik.

von Martin (Firma: Angestellt) (herki)


Lesenswert?

Hey

Danke für die Antworten.

Dann ist das also doch net so einfach....
Schade.

Naja. Jetzt hab ich mehrere Möglichkeiten:
1) Ich lass SPI auf 3V3-Pegel
2) Ich reduziere die Spannung auf 2V5 oder 1V8 (muss mal schauen ob es 
da einfache Pegelshifter gibt)
3) Ich bau an die CPU 4 bzw. 8 LVDS-Treiber ein (teuer)
4) Ich probier es mit LVDC-Buffern

Hab ich vielleicht noch ne Möglichkeit übersehen?

VG

Martin

von karadur (Gast)


Lesenswert?

Hallo

evtl. RS485?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Welche Datenrate und welche Übertragungslänge willst Du nutzen?

von Martin (Firma: Angestellt) (herki)


Lesenswert?

Clk-Freqeunz des SPI wäre 7,5MHz

Länge kann ich noch nicht genau abschätzen aber ich denke mal, dass es 
max. 15 cm werden

SPI ist notwendig, da die Slaves (ADC und DAC's) einen SPI-Anschlus 
haben.

VG

Martin

von (prx) A. K. (prx)


Lesenswert?

Da bei 15cm und Mikrocontroller-typischen Flanken noch keine speziellen 
Übertragungsbausteine erforderlich sind: Lässt sich die Entstörung nicht 
ebenso über eine entsprechende Leitungsführung realisieren?

von Martin (Firma: Angestellt) (herki)


Lesenswert?

Hi

Ich bin gerade Diplomand und habe vorher noch nie eine Platine designed. 
Nun habe ich von einem befreundeten Kollegen den Tipp bekommen, dass ich 
besonderes Augenmerk auf den SPI haben sollte, da der gern "überall 
herumspuckt"

Einen Treiber werde ich aber wohl so oder so verwenden müssen.
Meine CPU hat einen zugesicherten Ausgangstrom von 4mA bei 2,9V.
Bei einer Taktrate von 7,5MHz entspricht das einer Lastkapazität von 
183,9pF.

Der ADC ACPL-244 hat aber schon eine Eingangskap. von 30pF. Und bei 
8*30pf + 15pF für die Leitung liege ich bei 255pF.

Gut... Das ist jetzt alles Theorie. Aber ich komm jetzt halt mal von der 
FH und mein DA-Betreuer steht auf Theorie.

VG

Martin

von (prx) A. K. (prx)


Lesenswert?

Martin R. schrieb:

> Der ADC ACPL-244

Tante Gugel hält diesen "ADC" für einen Optokoppler. Zudem für einen, 
der bei 7,5Mhz bloss noch blöd aus der Wäsche schaut.

von Christian R. (supachris)


Lesenswert?

Wichtig wie immer ist nicht die Frequenz des Signals sondern die 
Anstiegszeit der Signale. Wenn du einen sehr schnell schaltenden 
host-Prozessor hast, musst du dir schon Gedanken über die richtige 
Terminierung der Signale machen. Die Frequenz ist da weniger relevant.

von Martin (Firma: Angestellt) (herki)


Lesenswert?

A. K. schrieb:
> Martin R. schrieb:
>
>> Der ADC ACPL-244
>
> Tante Gugel hält diesen "ADC" für einen Optokoppler.

Hast natürlich recht.
Ich meinte den
ADS7950SBDBT von TI. Der hat nur 15pF

--> Komme somit nun auf 120pF

Hatte aber nen Denkfehler in der Leitungsberechnung.
Ich habe 8*15cm Leitungslänge

--> Summasumarum: 240 pF

Aber nun bitte zurück zu meinem vermeindlichem "Problem" mit dem 
Spannungspegel des SPI-Busses.

VG

Martin

von (prx) A. K. (prx)


Lesenswert?

Dann mach normale 74HC Treiber/Muxer dran. Sind schnell genug für 7,5MHz 
und langsam genug um Probleme mit Reflexionen zu vermeiden.

> Aber nun bitte zurück zu meinem vermeindlichem "Problem" mit dem
> Spannungspegel des SPI-Busses.

Von Pegelwandlung war noch garnicht die Rede.

von Martin (Firma: Angestellt) (herki)


Lesenswert?

A. K. schrieb:
> Dann mach normale 74HC Treiber/Muxer dran. Sind schnell genug für 7,5MHz
> und langsam genug um Probleme mit Reflexionen zu vermeiden.
>
>> Aber nun bitte zurück zu meinem vermeindlichem "Problem" mit dem
>> Spannungspegel des SPI-Busses.
>
> Von Pegelwandlung war noch garnicht die Rede.

Danke für den Tipp.

Pegelwandlung hab ich um 13:09 und um 13:53 angesprochen.

Normal ist es doch so: Spannung runter --> ausgesendete Störungen runter

Das war mein Ziel.

von (prx) A. K. (prx)


Lesenswert?

Martin R. schrieb:

> Normal ist es doch so: Spannung runter --> ausgesendete Störungen runter

Die Frequenz - bzw. hier die Flankensteilheit - geht in diese Rechnung 
aber auch ein. Daher wäre ich kein bischen überrascht, wenn ein 
Gigahertz-tauglicher LVDS-Transceiver netto mehr Signal in den Äther und 
die Stromversorgungsleitungen jagt als ein vergleichsweise gemächlicher 
74HC bei 3V.

von Martin (Firma: Angestellt) (herki)


Lesenswert?

Guter Einwand

von Reinhard Kern (Gast)


Lesenswert?

Martin R. schrieb:
> Normal ist es doch so: Spannung runter --> ausgesendete Störungen runter

Das ist schon so, aber das sind Peanuts. Halbe Spannung -> halbe EMV, 
aber mehr eben nicht, und bei grösserer Flankensteilheit der Treiber 
wird das auch noch aufgehoben.

Wesentlich wichtiger, weil es da um Grössenordnungen geht, ist die 
Leiterbahnverlegung, auf der LP als Differential Pair, im Kabel als 
verdrilltes Paar, nach HF-Regeln und mit sauberer Impedanzkontrolle. SPI 
ohne Treiber hat allerdings keine Differenzsignale, da bleibt bloss 
entsprechende GND-Führung und Abschirmung. Ist ja auch bloss von Chip zu 
Chip gedacht.

Wurde denn schon mal nachgerechnet, ob SPI überhaupt mit so hoher 
Datenrate betrieben werden muss? Normalerweise ist Clock und damit 
Übertragungsrate nach Bedarf einstellbar, wie die Baudrate bei RS232C.

Damit EMV-Probleme garnicht erst entstehen, gibt es Treiber mit 
kontrollierter Flankensteilheit. Bei seriellen Schnittstellen RS232C/V24 
ist das schon immer so, daher hat man damit so gut wie nie Ärger. Der 
beliebte MAX232 hat z.B. typ. 3V/µs, da strahlt kaum noch was. 
TI-Bustreiber haben auch sowas.

Gruss Reinhard

von Martin (Firma: Angestellt) (herki)


Lesenswert?

Hallo Reinhard

Sorry. Ich hab den Thread aus den Augen verloren.

Ja die Clk-Rate von 7,5MHz benötige ich unbedingt.
Wenn es geht sogar mehr (mein jetziger COntroller schafft leider nicht 
mehr).
Ich hab 4 ADC-Slave mit jeweils 4 Kanälen und einer Auflösung von je 12 
Bit --> 192 Bit
Alle Daten würde ich gerne alle 10us einmal abrufen.
--> Benötige ich eigentlich 19,2MHz

Würde es was bringen wenn ich die MOSI,MISO und TCK-Signale auf 2,5V 
oder 1,8V "herunter-shifte" (Mir fällt grad kein blöderes Wort ein ;-) )

Ich hab da schon div. Pegelwandler von Maxim (MAX3000er-Reihe) gesehen.
Gibts da noch andere günstige Alternativen?


VG

Martin

von Falk B. (falk)


Lesenswert?

@  Martin R. (herki)

>Sorry. Ich hab den Thread aus den Augen verloren.

Und auch die Größenordung des Problems!

Ein SPI-Bus über 15cm (Zentimeter!) ist ein Witz. Da braucht es keinen 
Treiber und erst recht kein LVDS!!

>Würde es was bringen wenn ich die MOSI,MISO und TCK-Signale auf 2,5V
>oder 1,8V "herunter-shifte" (Mir fällt grad kein blöderes Wort ein ;-) )

Vergiss den Unsinn. Entscheidend ist dein Layout, nicht der 
Spannungspegel. Siehe Artikel Wellenwiderstand.

MFG
Falk

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.