SPI Taktleitung nicht sauber

Gast #5838583
Lesenswert?

Hallo,

Ich habe eben mal meine SPI Taktleitung mit einem Analog Kompensierten 
Tastkopf überprüft, finde das Signal bei höherer Datenübertragungsrate 
aber nicht sauber. Eventuell kann mir ja jemand sagen ob das dennoch in 
Ordnung ist. Probleme habe ich gar keine.

Anbei 3 Bilder: eins bei 1,25 Mhz; 5 Mhz und 20 Mhz.

Tastkopf hat eine Bandbreite von 300Mhz.

lG
Angehängte Dateien:
Gast #5838599
Lesenswert?

Die Signale sehen gut aus. Die Bilder zeigen, dass du eine kapazitive 
Last auf der Leitung hast (was vollkommen normal ist) und dass du bei 20 
MHz in den Bereich kommst, wo die Leistung des Treiber allmählich zu 
schwach wird, diese Kapazitäten schnell genug umzuladen.

Ich würde die Schnittstelle sicherheitshalber mit maximal 10 MHz 
betreiben, falls Zuverlässigkeit wichtig ist.
Gast #5838604
Lesenswert?

Das 20Mhz  Signal sieht nicht ganz so gut aus...
Als wäre es hinter einem Serienwiderstand abgenommen, und würde darum 
nicht die Endlagen erreichen.
Dabei gehe ich davon aus, dass die Pegel der Realität entsprechen und 
nicht eine Folge einer Messwertverfälschung sind.

Kann sein, dass es so noch zuverlässig funktioniert.
Aber viel höher darf die Frequenz nicht mehr werden.
Gast #5838616
Lesenswert?

Danke für die Antworten.

Anbei mit SCK und MOSI.

Als Massebezug habe ich die "interne" Masse der Platine genommen, also 
nach dem DCDC Converter.

Hier habe ich an einem Debug Header abgegriffen, da ist kein 
Serienwiderstand auf der Clock/Daten Leitung. Ansonsten besitzen alle 
anderen SPI Geräte jeweils einen 22 Ohm Serienwiderstand auf der 
Taktleitung sowie Datenleitungen.
Angehängte Dateien:
Gast #5838622
Lesenswert?

Arduino Fanboy D. schrieb:
> Das 20Mhz  Signal sieht nicht ganz so gut aus...
Das stimmt!

> Als wäre es hinter einem Serienwiderstand abgenommen, und würde darum
> nicht die Endlagen erreichen.
Ein (niederohmiger) Serienwiderstand bewirkt das nicht.
Leider nicht erkennbar, aber vielleicht ist die Bandbreite des Skopes 
auf 20MHz limitiert. Das würde jedenfalls gut zu den Bildern passen.
Gast #5838701
Lesenswert?

HildeK schrieb:
> Leider nicht erkennbar, aber vielleicht ist die Bandbreite des Skopes
> auf 20MHz limitiert. Das würde jedenfalls gut zu den Bildern passen.

Hm, habe jetzt nicht dergleichen in den Einstellungen gefunden.. Laut 
Handbuch ist die mindest BW 70MHz.

Es wurde mit Mode 1 und 0xA0=0b1010 0000 übertragen.

Vielen Dank
Gast #5838713
Lesenswert?

GEKU schrieb:
> Die Signale sehen sauber aus

Hüstel ...

Findest du nicht, dass das 20MHz sehr danach aussieht, als ob es mit der 
kapazitiven Belastung nicht mehr so wirklich klar kommt?

Man müsste sich unter Berücksichtigung der tatsächlichen Schaltschwellen 
der Empfänger das auf der digitalen Seite resultierende Timing genauer 
ansehen, um abschätzen zu können, wieviel Reserven noch bleiben. 
Insbesondere wenn Master und Slave unterschiedliche Treiberleistung 
haben, kann das schief gehen.
(Firma: MED-EL GmbH) #5838714
Lesenswert?

Ein typischer uC hat 50-100R Quellwiderstand. Dazu kommen mindestens 5pF 
am Pin, nochmal 10-20pF an der Leitungsführung und je Anschluß nochmal 
5pF - der Tastkopf alleine hat mindestens 15pF.

Bei Dir scheint die Zeitkonstante ca. 20nsec zu sein, also ca. 200 bis 
400pF - das oder, wie oben auch vermutet, Du hast irrtümlich die 
Bandbegrenzung aktiv - das sind auch typisch 20MHz.
#5838799
Lesenswert?

Joni schrieb:
> Danke für die Antworten.
>
> Anbei mit SCK und MOSI.
>
> Als Massebezug habe ich die "interne" Masse der Platine genommen, also
> nach dem DCDC Converter.

Das war gar nicht die Frage. Sondern WIE du den Tastkopf und dessen 
Masse kontaktiert hast. Denn bei den Signalsteilheiten, aka, 
Anstiegszeiten sollte man wissen was man tut. Stichwort Massefeder.

https://www.mikrocontroller.net/articles/Oszilloskop#Tastk.C3.B6pfe_richtig_benutzen

> Hier habe ich an einem Debug Header abgegriffen, da ist kein
> Serienwiderstand auf der Clock/Daten Leitung. Ansonsten besitzen alle
> anderen SPI Geräte jeweils einen 22 Ohm Serienwiderstand auf der
> Taktleitung sowie Datenleitungen.

Wozu soll das gut sein? Das Taktsignal ist für alle SPI-Slaves ein 
Eingang, da gehört im Normalfall kein Widerstand hin. Und an den 
SPI-Master auch nicht, wenn mehrere Slaves dran hängen, denn diese 
Serienterminierung ist nur bei Punkt zu Punkt Verbindungen zulässig, 
siehe Wellenwiderstand.
Gast #5838886
Lesenswert?

Wolfgang schrieb:
> Man müsste sich unter Berücksichtigung der tatsächlichen Schaltschwellen
> der Empfänger das auf der digitalen Seite resultierende Timing genauer
> ansehen, um abschätzen zu können, wieviel Reserven noch bleiben

Genau so ist es. Man könnte mit dem Oszilloskope mit den Daten ein 
Augenmuster aufzeichnen und dann kontrollieren, ob zum Zeitpunkt der 
übernehmenenden Taktflanken ein eindeutiger High oder Lowpegel mit 
Spielraum davor und danach vorliegt.
Nicht steil angesteigende Flanken alleine sind noch kein 
Qualitätskriterium, es gilt auch die Lage und den Jitter zu bewerten. 
Eine Methode  ist die Darstellung von Augenmusterdiagramme. 
https://de.m.wikipedia.org/wiki/Augendiagramm

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren