Forum: Mikrocontroller und Digitale Elektronik Impedanzkontrollierte Leiterbahnen I2C und SPI


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Sawyer M. (sawyer_ma)


Bewertung
0 lesenswert
nicht lesenswert
Hallo alle zusammen,

bei einem 4-Lage Layout stellt sich mir gerade die Frage ob ich für I2C 
im high speed mode sowie auch SPI eine Differential Pair Anordnung 
verwendet. Des Weiteren kommt da dann auch die Frage auf für welche 
Impedanz um Reflexionen zu vermeiden?

Wie macht Ihr das bei SPI und I2C?

Welche Leiterbahnbreiten wählt Ihr?

Arbeitet Ihr in euren Designs auch mit Differential Pairs?

Viele Grüße

von olaf (Gast)


Bewertung
0 lesenswert
nicht lesenswert
> Arbeitet Ihr in euren Designs auch mit Differential Pairs?

Wo genau siehst du denn bei diesen Protokollen die differentielle 
Übertragung. Bitte mit Beispiel belegen.

Olaf

von Sascha (Gast)


Bewertung
0 lesenswert
nicht lesenswert
überhaupt nicht !
Bei I2C must du die Kapazitäten klein halten und für gleiche 
Leitungslänge (Delay) sorgen. Damit Clock und Data zeitlich richtig 
ankommt. Dann darf es zwischen Clock und Data keine Übersprecher geben. 
Also mit einer Masseleiterbahn dazwischen auseinander halten.

Bei SPI gilt eigentlich das gleiche, nur sind hier die Kapazitäten nicht 
ganz so kritisch. Übersprecher von Clock aud Data eher. Bei SPI kann man 
mit Terminationen (Widerstände) noch die Überschwinger reduzieren.

Gruß Sascha

von Falk B. (falk)


Bewertung
0 lesenswert
nicht lesenswert
@ Sawyer Ma (sawyer_ma)

>bei einem 4-Lage Layout stellt sich mir gerade die Frage ob ich für I2C
>im high speed mode sowie auch SPI eine Differential Pair Anordnung
>verwendet.

Eher nicht, denn I2C als auch SPI sind single ended. Da sollte man 
bestenfalls eine Massefläche darunter haben. Siehe Wellenwiderstand.

> Des Weiteren kommt da dann auch die Frage auf für welche
>Impedanz um Reflexionen zu vermeiden?

Das ist mehr oder minder beliebig, man muss nur die Serienterminierung 
passend machen. Das sind auch 100-200 Ohm praktikabel.

>Wie macht Ihr das bei SPI und I2C?

Bei I2C ist mir das bisher vollkommen egal gewesen, bei 400kbit/s und 
eher langsamen Flanken spielt das keine Rolle. Bei SPI muss zumindest 
der Takt wirklich sauber sein, sonst gibt es Probleme. Bei MISO & MOSI 
kann man sich deutlich mehr Störungen erlauben. Bei CS würde ich 
tendentiell auch eher Vorsicht walten lassen, denn auch hier kann eine 
sehe schlechte Flanke einem schnellen IC 2 Flanken vorgaukeln, wo 
eigentlich nur eine ist.

>Welche Leiterbahnbreiten wählt Ihr?

Ganz normal wie für den Rest des Layouts. Keine Extrawürste braten.

>Arbeitet Ihr in euren Designs auch mit Differential Pairs?

Nö.

von Uwe N. (ex-aetzer)


Bewertung
0 lesenswert
nicht lesenswert
Sascha schrieb:

> Bei I2C must du die Kapazitäten klein halten und für gleiche
> Leitungslänge (Delay) sorgen. Damit Clock und Data zeitlich richtig
> ankommt.

Das ist völlig übertrieben - I2C kann bis afaik 1MHz, üblicherweise eher 
100kHz bis 400kHz.

> Bei SPI gilt eigentlich das gleiche, nur sind hier die Kapazitäten nicht
> ganz so kritisch. Übersprecher von Clock aud Data eher. Bei SPI kann man
> mit Terminationen (Widerstände) noch die Überschwinger reduzieren.

Warum sollte das bei SPI nicht kritischer sein - SPI kann deutlich 
schneller
arbeiten  als I2C.

von Rudolph (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Uwe N. schrieb:
> Warum sollte das bei SPI nicht kritischer sein - SPI kann deutlich
> schneller
> arbeiten  als I2C.

OpenCollector gegen PushPull.

von HildeK (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Sawyer M. schrieb:
> Wie macht Ihr das bei SPI und I2C?

Bei I2C nichts besonderes. Bei SPI in die Taktleitung eine quellseitige 
Serienterminierung. Dann geht aber nur ein Slave pro Taktleitung.

von Falk B. (falk)


Bewertung
0 lesenswert
nicht lesenswert
@HildeK (Gast)

>Bei I2C nichts besonderes. Bei SPI in die Taktleitung eine quellseitige
>Serienterminierung. Dann geht aber nur ein Slave pro Taktleitung.

Was aber oft eher unpraktisch ist. Es geht auch anders.

Beitrag "Re: Skurriles Problem mit BS170 Mosfets"

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