Forum: Mikrocontroller und Digitale Elektronik Empfindlichkeit von Quarzoszillatoren


von Norbert (Gast)


Lesenswert?

Hallo,

Mich würde mal kurz eure Erfahrung interessieren, wie empfindlich 
Quarzoszillatoren sind (oder sein können).

Wir haben nämlich erhebliche Probleme mit einem WLAN-Chip. Der ist über 
SDIO an einen Controller angeschlossen, auf dem Linux läuft.

Anfangs lief er gar nicht, sprich es wurden keine WLAN-Netze gefunden. 
Auf Anraten des Herstellers haben wir dann die Ziehkondensatoren für den 
Quarz etwas geändert, so in der Größenordnung von 4pF auf 8 oder 12pF. 
Das brachte eine erheblich Verbesserung, und WLAN-Traffic war nun 
möglich. Hätte ich nicht erwartet (allerdings bin ich auch mehr auf der 
Softwareseite beheimatet).

Allerdings traten weiterhin verschiedene Fehler auf, Verbindungsabbrüche 
und Timeouts und sowas. Der Chiphersteller meinte daraufhin, daß die 
Kapazitäten für den Quarz noch nicht optimal wären und zu Störungen bei 
der SDIO-Kommunikation führen würde.

Es kamen dann Vorschläge, statt den 8pF vielleicht 6pF zu verwenden, 
zumindest so in der Größenordnung.

Ich habe da irgendwie erhebliche Zweifel, daß Quarzoszillatoren wirklich 
so empfindlich sind, daß man da mit einzelnen Pikofarads herumspielen 
muß. Wir sind schließlich nicht auf der Funkseite, sondern bei der ganz 
banalen Taktversorgung. Der Quarz ist unmittelbar neben dem Chip 
platziert, und die SDIO-Leitung hat maximal 4cm zum Prozessor. Vorher 
hatten wir einen anderen WLAN-Chip drauf, der funktionierte mit den 
(sozusagen falschen) 4pF und demselben Quarz ganz wunderbar - leider 
wurde er abgekündigt.

Ich würde mal gerne eure Meinung hören, ob Quarzoszillatoren wirklich so 
dermaßen empfindlich sind, oder ob eher der Hersteller seinen Oszillator 
nicht im Griff hat?

von Stefan F. (Gast)


Lesenswert?

Der oszillator ist teil des Chips. Sollen wir jetzt über alle möglichen 
WLAN Chips der Welt philosophieren, oder magst du uns verraten, um wen 
es hier geht?

von Jim M. (turboj)


Lesenswert?

Norbert schrieb:
> Ich habe da irgendwie erhebliche Zweifel, daß Quarzoszillatoren wirklich
> so empfindlich sind, daß man da mit einzelnen Pikofarads herumspielen
> muß.

Zumindest bei den BLE Teilen hier muss der Quarz auch in so 1ms sicher 
angelaufen sein, da spielen dann einzelen pF durchaus eine Rolle. Viel 
Abweichung darf der auch nicht haben.

Norbert schrieb:
> Vorher
> hatten wir einen anderen WLAN-Chip drauf, der funktionierte mit den
> (sozusagen falschen) 4pF und demselben Quarz ganz wunderbar - leider
> wurde er abgekündigt.

Hier spielt auch der innere Aufbau des Oszillators eine Rolle. Eventuell 
hat der "alte" Chip den Quarz nie abgeschaltet.

Ich hätte auch erstmal nachgeschaut welchen Quarz der neue Hersteller 
des Chips empfielt. Könnte ja sein das ESR oder andere Parameter auch 
nicht stimmen.

Blöd ist dass man bei Quarzen schlecht einen Oszi dran hängen kann, da 
das den Quarz selbst beeinflusst.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Ein Frequenzzähler könnte helfen, wenn die Frequenz tatsächlich so 
daneben liegt, dass die Kommunikation gestört ist. Oder schwingt der 
Quarz nicht richtig an?
Der Oszillator ist, wenn ich es recht verstehe, im WLAN-Chip integiert, 
man kenn also nur die beiden Kapazitäten ändern?

von HildeK (Gast)


Lesenswert?

Die Bürdekondensatoren haben Einfluss auf die Frequenzgenauigkeit und 
das Anschwingverhalten. Normalerweise schwingen die auch mit dem 
doppelten oder halben optimalen Kapazitätswert noch problemlos, wenn 
auch die nominale Frequenz nicht optimal erreicht wird. Dass er dann mal 
nicht oder nur schlecht anschwingt, dürfte höchstens bei den 
Grenztemperaturen zu beobachten sein.
Die Wahl des richtigen Wertes hängt auch von den Layoutgegegenheiten ab, 
so dass ein typischer Datenblattwert nur eben ein Richtwert sein kann. 
Wir haben in solchen Fällen den Quarzhersteller um eine 
Schaltungsoptimierung gebeten, was auch problemlos zum Support gehörte.
Da konnte es schon mal vorkommen, dass der Musteraufbau mit 20pF 
bestückt war und der Hersteller dann 8pF empfohlen hat. Trotzdem hat das 
auch mit dem falschen Wert problemlos geschwungen.
Fazit: eine solche Empfindlichkeit darf nicht vorhanden sein.

Wenn dein Chip hier Probleme hat, dann ist wahrscheinlich dessen Design 
schlecht - auch die Tatsache, dass der Vorgänger gut funktionierte, 
deutet darauf hin.

Generell: diese Sorgen hast du los, wenn du einen fertigen 
Quarzoszillator nimmst. Neue Sorgen liefert dann der Kaufmann im 
Hintergrund ...

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Ich werde den Verdacht nicht los, das hier jemand was designed hat, von 
dem er wenig Ahnung hat. Der Quarz wird, um auf 2,4GHz zu kommen, per 
PLL hochmultipliziert, was jede kleine Frequenzänderung der Taktfrequenz 
auf der Endfrequenz vervielfacht.

Schaut euch andere WLAN Layouts an, die funktionieren - so wirds 
gemacht. Es ist ja auch nicht so, das die Hersteller keine 
Referenzdesigns anbieten.

: Bearbeitet durch User
von Hurra (Gast)


Lesenswert?

Du meinst vermutlich einen Quarz, keinen Oszillator. Einen 
Quarzoszillator zieht man eher nicht ;-)

Wichtig wäre:
Man sollte keinesfalls die Frequenz direkt am Quarz messen, weil der 
Tastkopf hat auch eine Kapazität, die ist oft größer als die 
Lastkapazitäten.
Am Besten eigent sich ein Referenztaktausgang am IC, oder auch ein 
Timerausgang. Es muss halt ein bekannter Faktor dazwischen sein.

Messen tut man das mit einem sehr gutem Oszi (Statistikfunktion) oder 
einem Frequenzzähler.

Man lötet dann solange verschiedene Kondensatoren drauf, bis es genau 
stimmt. Systematisch natürlich...

Man sollte auch eine Kontrollmessung danach bei möglichst vielen 
Platinen machen, um sicher zu sein, dass man das richtig gemacht hat.

Das Ziehen ist Layoutabhängig, daher muss das schon auf dem richtigen 
Board geschehen. Die Kontrollmessung macht man am Besten (nochmal) mit 
den ersten Boards aus der nächsten Fertigung.

PS:
Man muss dann aber schon den Hersteller des Quarzes festlegen. Nimmt der 
Fertiger "irgendeinen mit 24MHz und 50ppm", kann man sich die Aktion 
schenken. Die sind nicht alle gleich.

von Mitlesa (Gast)


Lesenswert?

Matthias S. schrieb:
> Der Quarz wird, um auf 2,4GHz zu kommen, per
> PLL hochmultipliziert, was jede kleine Frequenzänderung der Taktfrequenz
> auf der Endfrequenz vervielfacht.

Das funktioniert aber bereits bei jedem billigen NRF24 einwandfrei,
wenn auch die Reichweite bei Frequenzabweichungen ein wenig leiden
kann.

Entscheidend ist ja ob der Sender in die Nutzbandbreite des Emfängers
ausreichend genau hineintrifft. Dies dürfte bei WLAN-Anwendungen
durchaus der Fall sein da die erforderliche Bandbreite des Über-
tragungskanals (einige MHz) gross gegenüber der denkbaren Frequenz-
abweichung des Quarzes (plus Vervielfachung vielleicht einige hundert
KHz) ist.

von Gerhard O. (gerhard_)


Lesenswert?

Hier noch ein Vorschlag:

Man könnte am Oszillatoreingang noch eine Varicap Diode über einen 
Trennungskondensator anschliessen nachdem man den Original Bürde C 
entfernt hat. Dann kannst Du mit einem Trimpoti die Frequenz genau 
einstellen und die Stelle finden bei der das WLAN optimal funktioniert. 
Dann hätte man einen Anhaltspunkt welces C eingebaut werden sollte. 
Sonst halt ein Trimmer C einbauen. Es gibt ja wunderschöne kleine SMD 
Typen.

Eine Kapazitätsdiode mit einem 5-30pF Abstimmbereich wäre günstig hier. 
Mir fällt jetzt gerade kein Typ ein. Vielleicht würde eine MV209 
funktionieren.

http://www.onsemi.com/pub_link/Collateral/MMBV109LT1-D.PDF

Mfg,
Gerhard

von Hurra (Gast)


Lesenswert?

Mitlesa schrieb:
> Entscheidend ist ja ob der Sender in die Nutzbandbreite des Emfängers
> ausreichend genau hineintrifft.

Naja, ein Kanal ist z.B. 20MHz. Das sind >8300ppm. Aber das ist kein 
simples Modulationsverfahren.
Da wird es nicht reichen, nur den Kanal auf 50% genau zu treffen...

Üblicherweise liest man +-25ppm an. Das gilt in Summe, also alle Fehler 
der PLL noch dazu.

Das hat zur Folge, dass man den Quarz normalerweise eben hinziehen muss, 
um Fehler im Layout auszugleichen. Meine Quarze liegen eben öfter 50ppm 
oder so daneben.
Das werden die Chinesen sicher getan haben, auch wenn sie vermutlich 
keinen so genauen Quarz verwenden.

Ich würde das tun, das ist schließlich kein Hexenwerk. Wer ein Layout 
für WLAN-Chips macht, sollte das nötige Equipment sowieso haben :-)

Wer sich die Arbeit sparen will, nimmt ein WLAN-Modul, z.B. von Murata. 
Solche mit SDIO gibs wie Sand am Meer. Die haben auch schon die ganzen 
FCC-Zulassungen, was eine Chiplösung selten hat.
Mir wude der FCC-Kram mit fast 100k angeboten, da kann man sich das 
selbermachen schenken...

von Axel S. (a-za-z0-9)


Lesenswert?

Ich habe ehrlich Zweifel, daß das Problem des TE, die Frequenz seines 
Quarzoszillators ist. Vielleicht ist es ja wirklich ein Oszillator, der 
im Start/Stop betrieben wird und der relevante Parameter ist die 
Anschwingzeit.

Die Problembeschreibung ist auch sehr dürftig: "es wurden keine WLAN- 
Netze gefunden" klingt wie ein Problem auf der Funkseite, dann wieder 
"Verbindungsabbrüche und Timeouts", was eher nicht die Funkseite ist.

Ungeachtet dessen, ist es ganz sicher nicht die "Empfindlichkeit" irgend 
eines Quarzoszillators, die hier Probleme macht. Daß man die Frequenz 
eines Quarzes mit den Bürdekondensatoren ziehen kann, ist elektronisches 
Trivialwissen. Und man nutzt es in der Regel, um die Frequenz noch 
genauer einzustellen, als die Werkstoleranz des Quarzes hergibt.

von Hurra (Gast)


Lesenswert?

Axel S. schrieb:
> eines Quarzes mit den Bürdekondensatoren ziehen kann, ist elektronisches
> Trivialwissen. Und man nutzt es in der Regel, um die Frequenz noch
> genauer einzustellen, als die Werkstoleranz des Quarzes hergibt.

Das ist so nicht richtig.

Ein Beispiel aus der Praxis:
Quarz, 24MHz Seiko-Epson TSX-3225 mit 10ppm typisch. Datenblatt:
http://www5.epsondevice.com/en/products/mhz_range/tsx3225.html

Initial : Durchgängig auf 10 Boards so 55-65ppm zu wenig
Mit 5,3pF weniger hats fast exakt gestimmt.

Sowas in dem Bereich ist üblich.

Die Kapazitäten sind fast immer recht grob daneben, einfach weil man bei 
der Auslegung weder die Kapazität der Pins des internen Oszillators 
kennt, noch die des Layouts.

Bei Standardanwendungen wie Ethernet, UART oder USB sind <65ppm Fehler 
natürlich egal. Aber wenn man die 10ppm herausholen will, kommt man um 
Finetuning nicht herum.
Ein Standardbeispiel dafür wäre eine Echtzeituhr.

von Axel S. (a-za-z0-9)


Lesenswert?

Hurra schrieb:
> Axel S. schrieb:
>> eines Quarzes mit den Bürdekondensatoren ziehen kann, ist elektronisches
>> Trivialwissen. Und man nutzt es in der Regel, um die Frequenz noch
>> genauer einzustellen, als die Werkstoleranz des Quarzes hergibt.
>
> Das ist so nicht richtig.
>
> Ein Beispiel aus der Praxis:
> Quarz, 24MHz Seiko-Epson TSX-3225 mit 10ppm typisch. Datenblatt:
> http://www5.epsondevice.com/en/products/mhz_range/tsx3225.html
>
> Initial : Durchgängig auf 10 Boards so 55-65ppm zu wenig
> Mit 5,3pF weniger hats fast exakt gestimmt.

Und wo ist da jetzt der Widerspruch zu dem, was ich geschrieben habe? 
Wenn man die Bürdekondensatoren verändert, dann kann man damit die 
Frequenz des Quarzes ziehen. Und um die Frequenz einzustellen, braucht 
man natürlich einen einstellbaren Kondensator (vulgo: Trimmer). Muß 
ich solche Trivialitäten wirklich extra hinschreiben?

Mit einem fest eingebauten Kondensator zieht man die Frequenz natürlich 
nur um einen festen Wert. Und mit einem Kondensator mit dem falschen 
Wert auf eine falsche Frequenz. Überrascht?

> Die Kapazitäten sind fast immer recht grob daneben, einfach weil man bei
> der Auslegung weder die Kapazität der Pins des internen Oszillators
> kennt, noch die des Layouts.

Die Existenz parasitärer Elemente, in erster Linie parasitärer 
Kapazitäten und Induktivitäten, ist ebenfalls elektronisches 
Trivialwissen.

> wenn man die 10ppm herausholen will, kommt man um Finetuning
> nicht herum. Ein Standardbeispiel dafür wäre eine Echtzeituhr.

Einmal darfst du raten, warum diese Uhren früher einen Trimmer neben dem 
Quarz verbaut haben. Heutzutage mach man das eleganter, indem man den 
Teilerfaktor der RTC per Software-Kalibrierung etwas verbiegt.

von Andi B. (andi_b2)


Lesenswert?

Hurra schrieb:
> Bei Standardanwendungen wie Ethernet, UART oder USB sind <65ppm Fehler
> natürlich egal.

Bei meinen Ethernet MACs und PHYs wird immer max. +-50ppm gefordert.
Und ein Quarz wird "gebaut" für eine bestimmte Lastkapazität. Nur bei 
dieser garantiert der Hersteller die Daten wie z.B. die 
Frequenzgenauigkeit. Wenn man einen Quarz nicht mit der vorgeschriebenen 
Lastkapazität betreibt, dann ist er schon per Definition verstimmt. Es 
hat gar keinen Sinn über pF zu diskutieren, wenn man nicht mal die vom 
Quarz gewünschte (vorgeschriebene) Kapazität kennt. Klar spielen bei den 
üblichen pF Werten die Pin- und Leitungskapazitäten schon eine Rolle und 
verringern damit den Wert der üblicherweise zwei zugeschalteten C's. 
Deren Wert wäre im Idealfall ja (ohne Pin- und Leitungskapazität) 
doppelt so groß wie die vorgeschriebene Lastkapazität, weil ja in Serie 
geschaltet (aus Sicht des Quarzes).

Man lässt sich also vom Hersteller/Lieferanten ein paar Quarze 
vermessen, baut diese ein und vergleicht die Frequenz. Natürlich wegen 
der Tastkopfkapazität nicht am Quarz, sondern auf einem Clock Ausgang. 
So macht man noch das Feintuning der beiden C's an den Oszillatorpins zu 
denen ja die Leitungs- und Pinkapazitäten parallel liegen.

von Hurra (Gast)


Lesenswert?

Axel S. schrieb:
> Und wo ist da jetzt der Widerspruch zu dem, was ich geschrieben habe?

> Trivialwissen. Und man nutzt es in der Regel, um die Frequenz noch
> genauer einzustellen, als die Werkstoleranz des Quarzes hergibt.

Werkstoleranz  : 10ppm
Daneben war er : 63ppm

Daneben > Werkstoleranz. Also ist er von Haus aus ungenauer als die 
Werkstoleranz.
Mehr an deinem Beitrag habe ich gar nicht in Zweifel gezogen. Sorry, 
wenn das falsch rüberkam.

Dass das Trivialwissen ist, stimmt leider nicht. Ich kenne so einige 
"Entwickler" die nie davon gehört haben, dass man da irgenwas messen 
muss. Das Worte "Blödsinn" und "Übertrieben" sind hier in der Firma in 
diesem Zusammenhang schon gefallen.
Heute kann man froh sein, wenn die Leute den Unterschied Quarz <> 
Quarzoszillator kennen. Scroll nach oben ;-)

von Peter D. (peda)


Lesenswert?

Jim M. schrieb:
> Zumindest bei den BLE Teilen hier muss der Quarz auch in so 1ms sicher
> angelaufen sein

Ich kenne Quarze so eher im 10ms Bereich zum Anschwingen. Die 32kHz 
Uhrenqzuarze können sogar mehrere Sekunden benötigen.

Z.B. beim AVR wird als Resetzeit 65ms empfohlen. Als ich sie mal beim 
AT90S2313 auf 4ms verkürzte, erfolgte kein Reset mehr.

: Bearbeitet durch User
von Georg A. (georga)


Lesenswert?

>  Wir sind schließlich nicht auf der Funkseite, sondern bei der ganz
> banalen Taktversorgung.

Ja, das ist so banal, dass Chiphersteller einen grossen Teil beim Design 
nur auf die Taktverteilung legen...

Der Takt ist heutzutage alles, um den muss man sich liebevoll kümmern.

Es geht da nicht nur um den statisch absoluten Fehler (da kann man auf 
RF-Seite viel wegsynchronisieren) sondern auch um den Jitter. Und gerade 
OFDM ist da ziemlich penibel. Bei DAB (ist auch OFDM, allerdings mit 
deutlich engerem Trägerabstand als bei WLAN) reicht es schon, gegen den 
Quarz zu schnippen und die Fehlerrate geht signifikant hoch. D.h. wenn 
dein Quarz dursch schlechtes Layout oder labile Oszillationsbedingungen 
Störsignale auffängt, produziert er damit eine heftige FM. Dagegen kommt 
die Timingsynchronisation nicht mehr an...

von Harald W. (wilhelms)


Lesenswert?

Hurra schrieb:

> Werkstoleranz  : 10ppm
> Daneben war er : 63ppm
>
> Daneben > Werkstoleranz.

...und für welche Bürdekapazität galt diese Toleranz?

> Dass das Trivialwissen ist, stimmt leider nicht.

Ich gewinne hier im Forum auch immer mehr die Erkenntnis,
das man für Trivialwissen anscheinend ein mehrjähriges
Studium braucht. Früher hat man das während der Lehre in
der Berufsschule gelernt.

von Norbert (Gast)


Lesenswert?

Hallo,

Danke schon mal für die Antworten. Wie schon angedeutet bin ich nicht 
gerade der versierte Elektronikentwickler, sondern eher der hardwarenahe 
Softwareentwickler. Von daher hat mich vor allem die Einschätzung von 
euch Experten interessiert, wie sensibel die Werte der Ziehkondensatoren 
sind, da ich selber damit gar keine Erfahrung habe.

Der Unterschied zwischen Quarz und Oszillator ist mir schon klar, in 
diesem Fall ist der Oszillator im Chip integriert und wird vom externen 
Quarz gesteuert. Meine Frage war nun, wie sensibel diese Oszillatoren 
üblicherweise auf die externe Beschaltung reagieren. Ob man da wirklich 
pikofaradweise justieren muß, damit das ganze ohne Fehler läuft.

Anlaufen tut der Quarz auf jeden Fall, wir bekommen ja 
WLAN-Datenübertragung in erheblichem Umfang zustande. Der Start ist also 
nicht das Problem.

Die Fehler treten im Laufe des Betriebs auf und kommen aus dem 
Zusammenspiel zwischen Chip-Firmware und dem (Linux-) Treiber zustande, 
die Anbindung zwischen den beiden ist wie gesagt über SDIO. Da ich 
keinen Zugriff auf die Firmware oder das Protokoll habe, was da über 
SDIO läuft, bin ich da nicht tiefer eingestiegen. Der Chip-Hersteller 
meint, die nicht optimalen Kondensatoren des Quarzes wären für eine 
fehlerhafte SDIO-Kommunikation verantwortlich.

Ich habe an dieser Einschätzung irgendwie deutliche Zweifel. Ich frage 
nochmal anders. Kann man sagen:

- Wenn der Oszillator erstmal läuft, dann sind die Ziehkondensatoren 
schon irgendwie richtig und sollten keine Auswirkung auf die restliche 
Funktion haben (speziell im WLAN oder SDIO-Umfeld)?

- Selbst wenn der Oszillator anläuft, kann durch falsche Kapazitätswahl 
der Oszillator später wieder stoppen oder falsch laufen?

- Die Empfindlichkeit des Oszillators (also der Teil innerhalb des 
Chips) hängt von dessen Design ab und kann so richtig grottig sein? Oder 
sind das Standardschaltungen, die quasi überall identisch vorkommen?

Teilweise zeigt der Hersteller auch nicht besondere Kompetenz. 
Beispielsweise frage ich nach "Ist der Enable-Pin high- oder low-aktiv?" 
und bekomme als Antwort "Der Pin ist low-aktiv. Um den Chip zu enabeln, 
muß er also auf High gesetzt werden."

Ich habe mal den Vorschlag von hier weitergetragen, anstelle dem Quarz 
einen kompletten Oszillator dranzuhängen. Mal sehen, ob es dann besser 
läuft.

von Gerd E. (robberknight)


Lesenswert?

Norbert schrieb:
> Die Fehler treten im Laufe des Betriebs auf und kommen aus dem
> Zusammenspiel zwischen Chip-Firmware und dem (Linux-) Treiber zustande,
> die Anbindung zwischen den beiden ist wie gesagt über SDIO. Da ich
> keinen Zugriff auf die Firmware oder das Protokoll habe,

Du hast von denen nur einen Closed-Source-Treiber bekommen? Nach meiner 
Erfahrung kann Dir das bei der längerfristigen Pflege Deines Produkts 
ganz schön in die Suppe spucken. Denn ein, z.B. für Sicherheitsupdates 
etc. nötiges, Update auf einen neuen Kernel wird dann evtl. durch diesen 
Treiber unmöglich gemacht.

Ich habe mich schon viele viele Stunden mit genau solchen Problemen 
rumgeschlagen und kann daher nur empfehlen das zu vermeiden.

Gerade bei WLAN-ICs gibt es heute eigentlich genug Auswahl daß man auch 
welche mit Open Source Treibern verwenden kann und sich damit diesen 
ganzen Ärger vom Hals hält.

Und auch Dein jetztiges Problem könntest Du damit genauer untersuchen. 
Vielleicht ist es ja gar nicht der Oszillator, sondern nur ein Bug im 
Treiber. Es könnte z.B. sein, daß der davon ausgeht daß der Takt Deiner 
CPU für eine bestimmte Sequenz synchron zu dem des WLAN-Moduls ist, was 
aber eben nicht auf die Dauer garantiert ist.

> - Wenn der Oszillator erstmal läuft, dann sind die Ziehkondensatoren
> schon irgendwie richtig und sollten keine Auswirkung auf die restliche
> Funktion haben (speziell im WLAN oder SDIO-Umfeld)?

Nein. Der Takt könnte dauerhaft daneben liegen und damit nicht richtig 
mit anderen WLAN-Teilnehmern kommunizieren. Der Takt wird ja von dem 
WLAN-Modul höchstwahrscheinlich für den RF-Teil und das SDIO verwendet.

> - Selbst wenn der Oszillator anläuft, kann durch falsche Kapazitätswahl
> der Oszillator später wieder stoppen oder falsch laufen?

Ja, wäre möglich.

Ein weiterer möglicher Fehler wäre zu hohes oder zu niedriges 
Spannungsniveau am Quarz. Jeder Quarz hat ein Leistungslimit was er 
verträgt und braucht eine gewisse Spannung um sauber zu laufen.

Lies Dir mal diese Application Note von ST durch:
http://www.st.com/resource/en/application_note/cd00221665.pdf

Die ist natürlich auf Controller von ST gemünzt, aber ich finde dort 
werden die Hintergründe und Parameter ganz gut erklärt.

> Teilweise zeigt der Hersteller auch nicht besondere Kompetenz.
> Beispielsweise frage ich nach "Ist der Enable-Pin high- oder low-aktiv?"
> und bekomme als Antwort "Der Pin ist low-aktiv. Um den Chip zu enabeln,
> muß er also auf High gesetzt werden."

Ein weiterer Grund nur einen WLAN-Adapter zu nehmen zu dem Du auch den 
Source hast. Da kannst Du das selber fixen oder jemanden dafür 
beauftragen. So bist Du auf Gedeih und Verderb einem Support dieser 
Qualität ausgeliefert. Wenn irgendwas klemmt kann einen sowas ganz schön 
in die Zwickmühle bringen.

von Axel S. (a-za-z0-9)


Lesenswert?

Norbert schrieb:
> Der Unterschied zwischen Quarz und Oszillator ist mir schon klar, in
> diesem Fall ist der Oszillator im Chip integriert und wird vom externen
> Quarz gesteuert. Meine Frage war nun, wie sensibel diese Oszillatoren
> üblicherweise auf die externe Beschaltung reagieren. Ob man da wirklich
> pikofaradweise justieren muß, damit das ganze ohne Fehler läuft.

Wischiwaschi. Was bedeutet "ohne Fehler läuft" konkret?

Mal ein einfaches Zahlenbeispiel. Ein 10MHz Quarz, der für 12pF 
Lastkapazität gebaut ist und eine Werkstoleranz von +/-50ppm hat, wird 
bei Verwendung von zwei 22pF Kondensatoren + je 2pF parasitären 
Kapazitäten (Pins, Leiterbahnen, etc.) mit einer Frequenz zwischen 
9999500Hz und 10000500Hz schwingen. Je weiterem pF mehr/weniger wird er 
um ca. 10Hz langsamer/schneller sein. Das ist pure Physik. Das kriegst 
du nicht wegdiskutiert und mit jeglicher Optimierung des Oszillators 
auch nicht ausgebügelt.

Das ist aber auch nicht die Frage. Die Frage ist vielmehr: ist die 
Funktion der Kommunikation zwischen Host und WLAN-Modul tatsächlich 
derart sensibel bezüglich der exakten Oszillatorfrequenz? Und die 
Antwort wird in der Regel sein: Nein, ist sie nicht. Und das ist auch 
leicht begründbar. Wenn es durch Herstellungstoleranzen ohnehin schon 
+/-500Hz Abweichung gibt, die auch bei knappst möglicher Auslegung 
toleriert werden müssen, wieso sollten dann vielleicht 50Hz zusätzliche 
Abweichung durch leicht fehldimensionierte Bürdekondensatoren das System 
zum Kippen bringen? Noch dazu reproduzierbar und nicht nur in 
Einzelfällen (wenn sich die Toleranzen gerade ungünstig addieren)?

> Anlaufen tut der Quarz auf jeden Fall, wir bekommen ja
> WLAN-Datenübertragung in erheblichem Umfang zustande. Der Start ist also
> nicht das Problem.

Dieses folgt nicht aus jenem. Start/Stop-Betrieb heißt, daß der 
Oszillator (zum Strom sparen) still gelegt wird, wenn nichts zu tun ist. 
Und daß er bei Bedarf innerhalb eines vorgegebenen Zeitfensters anlaufen 
muß. Daß das manchmal (oder sogar oft) funktioniert, reicht nicht. Es 
muß schon immer, oder zumindest allermeistens funktionieren.

Ist das so? Wissen wir nicht.

> Die Fehler treten im Laufe des Betriebs auf und kommen aus dem
> Zusammenspiel zwischen Chip-Firmware und dem (Linux-) Treiber zustande,
> die Anbindung zwischen den beiden ist wie gesagt über SDIO. Da ich
> keinen Zugriff auf die Firmware oder das Protokoll habe, was da über
> SDIO läuft, bin ich da nicht tiefer eingestiegen.

Mit anderen Worten: du hast keine Ahnung, was da schief läuft. Das ist 
kein Vorwurf, nur eine Feststellung. Es bedeutet, aber auch, daß du 
einfach nur im Nebel stocherst. Zeitverschwendung.

> Ich habe an dieser Einschätzung irgendwie deutliche Zweifel. Ich frage
> nochmal anders. Kann man sagen:
>
> - Wenn der Oszillator erstmal läuft, dann sind die Ziehkondensatoren
> schon irgendwie richtig und sollten keine Auswirkung auf die restliche
> Funktion haben (speziell im WLAN oder SDIO-Umfeld)?

Jein. So ein Quarzoszillator ist schon einigermaßen elastisch. Er wird 
auch mit fehldimiensionieren Bürdekondensatoren schon anlaufen. Er wird 
dann vielleicht 10ppm oder 50ppm daneben liegen. Oder er wird statt 10ms 
zum Anlaufen 100ms brauchen. Aber: ob das relevant für die Funktion ist, 
hängt von Details ab, die wir nicht kennen.

> - Selbst wenn der Oszillator anläuft, kann durch falsche Kapazitätswahl
> der Oszillator später wieder stoppen oder falsch laufen?

Nicht stoppen. Und falsch läuft er im Fall des Falles sofort.

> - Die Empfindlichkeit des Oszillators (also der Teil innerhalb des
> Chips) hängt von dessen Design ab und kann so richtig grottig sein?

Die Empfindlichkeit als Frequenzabweichung vs. Kapazitätsabweichung wird 
im wesentlichen vom Quarz bestimmt.

> Teilweise zeigt der Hersteller auch nicht besondere Kompetenz.
> Beispielsweise frage ich nach "Ist der Enable-Pin high- oder low-aktiv?"
> und bekomme als Antwort "Der Pin ist low-aktiv. Um den Chip zu enabeln,
> muß er also auf High gesetzt werden."

Womöglich nur ein Problem der Sprache an sich. Aber ja, das ist ein 
schlechtes Zeichen.

von Andi B. (andi_b2)


Lesenswert?

Norbert schrieb:
> - Wenn der Oszillator erstmal läuft, dann sind die Ziehkondensatoren
> schon irgendwie richtig und sollten keine Auswirkung auf die restliche
> Funktion haben (speziell im WLAN oder SDIO-Umfeld)?

Nein.

> - Selbst wenn der Oszillator anläuft, kann durch falsche Kapazitätswahl
> der Oszillator später wieder stoppen oder falsch laufen?

Ja.

> - Die Empfindlichkeit des Oszillators (also der Teil innerhalb des
> Chips) hängt von dessen Design ab und kann so richtig grottig sein? Oder
> sind das Standardschaltungen, die quasi überall identisch vorkommen?

Ja.

Wenn es sich um ein kommerzielles Produkt handelt, dann bitte arbeite 
mal in die Grundlagen zu Quarz-Oszillatorschaltugen durch (z.B. die 
Grundlagen in den alten Jauch Kataloge sollten für dich reichen), oder 
lass einen kompetenten HW-Entwickler ran.

Ansonsten poste mal das Datenblatt des Quarzes und den relevanten 
Abschnitt der WLAN Modul Beschreibung bzw. des Chips.

: Bearbeitet durch User
von Hurra (Gast)


Lesenswert?

Harald W. schrieb:
> Hurra schrieb:
>
>> Werkstoleranz  : 10ppm
>> Daneben war er : 63ppm
>>
>> Daneben > Werkstoleranz.
>
> ...und für welche Bürdekapazität galt diese Toleranz?

4p7 (ok) und 10p (daneben)

Harald W. schrieb:
> Ich gewinne hier im Forum auch immer mehr die Erkenntnis,
> das man für Trivialwissen anscheinend ein mehrjähriges
> Studium braucht. Früher hat man das während der Lehre in
> der Berufsschule gelernt.

So sind die Erfahrungen verschieden.
Ich wurde neulich erst angepflaumt, weil ich von einem Kollegen wissen 
wollte, nach welchen Kriterien er seinen Quarz ausgesucht hat. Für einen 
STM32. Der glaubt mir bis heute nicht, dass man da etwas berechnen / 
auslegen muss.

von Toto mit Harry (Gast)


Lesenswert?

Hurra schrieb:
> Der glaubt mir bis heute nicht, dass man da etwas berechnen / auslegen
> muss.

Müssen tut man das nicht, man kann aber nach einer durch Standards 
festgelegten Auswahl seine Auslegung überprüfen..

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.