Pegelwandler

Konzept

Idee

Nachdem ich mir den Eingangspuffer des Openbench Logic Sniffer mit zu hohen Spannungen zerschossen hatte, wollte ich mir für die Zukunft ein Zusatzgerät basteln, mit dem das nicht mehr passieren würde.

Anforderungen

Neben der offensichtlichen Spannungsfestigkeit muss der Pegelwandler vor allem sehr schnell sein, da der OLS mit einer Abtastrate von bis zu 200MHz arbeitet.

Technische Umsetzung

Den Eingangspegel könnte man mit diskreten Transistoren auf 5V Logik wandeln, platzsparender erschien mir aber die Verwendung von Komparatoren, nämlich dem LM339. Dieser Chip enthält vier Komparatoren in einem SO14 Gehäuse mit einer maximalen Eingangsspannung von 36V. Als weitere Bauteile werden nur noch Pull Up Widerstände an den Ausgängen (da Open Collector Ausgänge) und Pull Down Widerstände an den Eingängen benötigt. Die Pull Down Widerstände sind nicht nötig, wenn nur Schaltungen mit definierten Schaltzuständen analysiert werden sollen. Unbeschaltete Eingänge haben dann aber immer einen High Pegel.

So sieht die erste Version der Platine aus. Die Pull Up und Pull Down Widerstände sind noch bedrahtet und finden auf der Rückseite Platz. Über das Kabel werden die Komparatoren direkt vom OLS mit 5V für die Stromversorgung und 2,5V als Vergleichsspannung versorgt.

Das Problem mit den Widerständen ist an dieser Stelle nur die Schaltgeschwindigkeit. Da bei jedem Flankenwechsel die Kapazitäten an den Pins umgeladen werden müssen, dürfen die Widerstände nicht zu groß sein. Der Logic Sniffer arbeitet mit maximal 200MHz, also können Signale bis circa 100MHz analysiert werden. Die gemeinsame Kapazität des LM339 Ausgangs und des 74LCX16245 Eingangs beträgt ungefähr 15pF. Da der LM339 mit den 5V vom USB-Port versorgt wird, können wenigstens relativ hohe Schaltströme auch für alle Kanäle realisiert werden. Als Faustregel für die maximale Taktfrequenz bei gegebener Kapazität und gegebenem Widerstand gilt f=1/5*R*C. Um die 100MHz zu realisieren, dürften also nur 100 Ohm als Pull Up Widerstand verwendet werden, bei einem Schaltstrom von 50mA. Die macht aber der LM339 nicht mit, dieser verträgt laut Datenblatt maximal 16mA. Dies entspricht in etwa einem 300 Ohm Widerstand, was wiederum einer maximalen Schaltfrequenz von 44MHz entspricht.

Ich habe als Test eine Platine mit 470 Kiloohm Pull Up und Pull Down Widerständen bestückt und eine Messreihe mit meinem Frequenzgenerator durchgeführt. Mich interessiert hierbei die Abhängigkeit des vom SUMP Analyzer Client errechneten Tastgrades von der eingestellten Frequenz, da das ja direkt durch zu langsame Umladung der Gates beeinflusst wird.

Die Referenzmessung ohne den Pegelwandler ergibt einen Tastgrad von 50,8%. Bei 2kHz bleibt auch mit dem Pegelwandler der Tastgrad bei 50,8%. Bei höheren Frequenzen aber steigt der gemessene Tastgrad immer weiter an. Bis auf die Beule zwischen 10kHz und 15kHz sieht das Ganze nach einem linearen Zusammenhang aus. Da ich nur eine Messung gemacht habe, ist das natürlich nicht sehr aussagekräftig.

Mit den 470k Ohm Widerständen sollte laut der oben genannten Formel eine Schaltfrequenz von etwa 28kHz die obere Grenze sein, bevor das Signal zu sehr verzerrt wird. Allerdings messe ich bei 30kHz schon einen Tastgrad von 58,1%. Bei ungefähr 160kHz wird der Trigger des Logic Sniffers gar nicht mehr ausgelöst. Ohne den Pegelwandler kann man den Funktionsgenerator voll ausreizen und das Signal mit 2MHz erfassen.

Die Software gibt auch eine Messunsicherheit für die Frequenz des gemessenen Signals an. Hier ist noch diese Messunsicherheit in Abhängigkeit von der Frequenz dargestellt.

Ergebnis

Der Pegelwandler tut was er soll, aber man muss sich im Klaren darüber sein, wo die Grenzen liegen. Möchte man sich beispielsweise das Signal eines Schaltreglers, der bei 500kHz arbeitet, ansehen, so müssen die Pull Up Widerstände passen, sonst passiert aus Sicht des LAs nichts. Insgesamt gesehen hat der Pegelwandler aber seine Berechtigung, zum Beispiel um Signale auf einer RS232 Schnittstelle mitzuschneiden. Wirklich schnelle Signale dürften auch eher selten über 5V Logik hinausgehen, sodass der Pegelwandler innerhalb seiner Grenzen eine gute Ergänzung zum Openbench Logic Sniffer darstellt.

Die aktuelle Version, fertig aufgebaut mit 10k Ohm 0402er SMD Widerständen:

Downloads

Eagle Files für die Platine des Pegelwandlers:

Eagle .brd: Download
Eagle .sch: Download