mikrocontroller.net

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


Autor: Martin R. (herki)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Martin R. (herki)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Reinhard Kern (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Martin R. (herki)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: karadur (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

evtl. RS485?

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welche Datenrate und welche Übertragungslänge willst Du nutzen?

Autor: Martin R. (herki)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: Martin R. (herki)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Martin R. (herki)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Martin R. (herki)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Martin R. (herki)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guter Einwand

Autor: Reinhard Kern (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Martin R. (herki)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht 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

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]
  • [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.