Forum: Mikrocontroller und Digitale Elektronik Impedanzkontrollierte Leiterbahnen I2C und SPI


von Sawyer M. (sawyer_ma)


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)


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)


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)


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)


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)


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)


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)


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"

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.