Pufferverstärker für ADC

Hi Leute, ich habe hier einen 16Bit ADC, der über 4 Pufferverstärker (4 Kanäle) getrieben werden soll. Beim Sampeln, welches ungefähr 1µs dauert, liegen 30pF am Eingang, die von außen getrieben werden müssen.

Das Nutzsignal selbst ist maximal 10kHz schnell. Die 4 Nutzsignale können von den Pegeln her aber durchaus weit auseinander liegen und werden durch den ADC nacheinander gewandelt.

Ich möchte 14 Bit Genauigkeit erreichen. Damit der OPV es sicher schafft, 30pF in 1µs um max. 4V umzuladen, muss er nur 120µA treiben können (theoretisch). Aber wie schnell muss er dafür sein? Ich hätte jetzt eine minimale Slewrate von 4V/µs angesetzt.

Eine Kapazität vor die Eingänge zu setzen, bringt nichts. Bei 30nF wäre ich erst bei 10Bit und der OpAmp würde sich freuen.

Wie würdet Ihr das angehen? Welchen Verstärker würdet Ihr empfehlen? Im Moment habe ich den AD8630 eindesignt, aber der scheint nach obiger Überlegung viel zu langsam zu sein. Der Verstärker muss Rail2Rail können, möglichst wenig Offset haben, mit

3,7V Single-Supply auskommen und schnell sein. Und davon dann gleich vier, am besten im TSSOP14.

Grüße Michael

Reply to
Michael Rübig
Loading thread data ...

Hallo Michael,

In der Regel steht es im Datenblatt des AD-Wandlers, wie sich der Hersteller das vorstellt, dass die Genauigkeit auch erreicht werden kann. Sehr oft wird man in der Tat einen passiven Tiefpaß mit einem Kondensator sehr groß gegen die Ladekapazität machen. Die 30 pF scheinen mir sehr hoch zu sein. Wie heisst denn der AD?

Marte

Reply to
Marte Schwarz

Marte Schwarz schrieb:

Es ist ein LTC1867L

formatting link
Seite 3

32pF (Sample Mode)

Da werden auch OPVs vorgeschlagen, aber entweder kein Rail2Rail oder zu hoher Offset oder einfach nur langsam.

Michael

Reply to
Michael Rübig

Hallo Michael,

formatting link

- 4pf ansonsten,... OH, macht den Kohl nicht Fett. Viel Holz!

Nun ja, die müssen eben in der Lage sein, einen Tiefpass zu treiben, der am hinteren Ende einige viele nF hat. LT hat ja auf Seite 10 die entsprechenden Hinweise. Die Bilder auf Seite 5 sollten Dir auch zu verstehen geben, dass man bei 100 kHz nicht mehr mit den Auflösungen rechnen sollte, die bei 1 kHz machbar sind. Da die Eingangsbahnwiderstände endlich sein werden, wird es ab einigen 10 nF wenig bringen, die Eingangskapazität weiter zu erhöhen...

Marte

Reply to
Marte Schwarz

Marte Schwarz schrieb:

formatting link

Das Problem sehe ich halt darin, dass das Sample&Hold-Glied die 32pF an den Eingang schaltet und die 32pF im Worst Case innerhalb 1µs von 0V auf

3V aufgeladen werden müssen. Wenn ich nur einen externen großen C vorsehe, dann erreiche ich bei 32nF gerade mal 10 Bit, für 14-Bit brauche ich knapp 500nF. Wie soll ich 500nF bei 10kHz noch präzise treiben? Das muss also ein Holzweg sein.

Wie oben beschrieben, kann das nicht die zielführende Lösung sein.

Genau deshalb denke ich, dass große Cs sicher der falsche Ansatz sind, da man immer an der e-Funktion der Ladekurve scheitert, die am Ende sehr flach ist. Wie machen das schnelle Oszis? sicher nicht mit dicken Cs, da wird bestimmt aktiv getrieben.

In der Endanwendung soll sicher nicht bei 100kHz die volle Genauigkeit erreicht werden. Aber egal wie langsam ich die Wandelrate festlege, die

1µS Aquisition-Time kann ich dabei nicht ändern und genau die sind in Kombination mit den 32pF das Problem.

Oder habe ich irgendwo einen Denkfehler?

Michael

Reply to
Michael Rübig

Michael Rübig schrieb:

Scheint mal ein Problem zu sein, zu dem nicht viele was zu sagen haben. Ich habe nun einen AD8618 eindesignt.

formatting link
Der ist zwar etwas ungenauer, scheint aber ausreichend schnell zu sein. Wenn man sich den "Large-Signal-Transient-Response" auf Seite 10 anschaut, dann sieht man, dass dieser OP nach ca. 0,5µs seinen Endwert erreicht hat, und das bei sogar 200pF Last. Ich werde wohl noch einen Snubber eindesignen, den man notfalls bestücken kann, um das Einschwingen zu verkürzen.

... und dann halt mal messen ...

Michael

Reply to
Michael Rübig

Denke Du fokussierst zu sehr auf die Slew-Rate. Die wird wesentlich, wenn dein Originaleingangssignal so schnell und weit wechselt und die ganze innere Mimik des OPV sich umstellen muss. Für das jeweilige Neu-Treiben des S&H ist das weniger entscheidend. Der OPV braucht da nur online nachschieben. Ein 20MHz OPV bei einem 10kHz Signal ist da wohl overkill - der überträgt nur sinnlos Hochfrequenz.

Da kommt der Ausgangswiderstand des OPV, d.h. seiner Ausgangstransistoren/FETs zum Tragen um den S&H und Pufferkondensatur noch schnell genug zu treiben. Zout ist aber idR weit unter der Größenordnung 50Ohm Impedanz, die LT beim 50Ohm +

2000pF Input Filter ja vorschlägt. Selbigen Filter und ggf. noch ein C davor sollte man auch aus dem Grund mit reinmachen, damit der OPV nicht von hinten geschockt und beim Umschalten weit ausgelenkt wird.

Nur mit Rail-To-Rail + unipolar + höheren Frequenzen + 14Bit siehts wohl schlecht aus. Darum schlägt LT sowas auch gar nicht vor. An den Rändern steigt die Impedanz an. Ein Pull-Down ... und dann halt mal messen ...

und ggf. gibts das Spice-Model des OPV her.

Grüsse Robert

Reply to
robert

robert schrieb:

Das scheint wohl zu stimmen, siehe unten.

Ja, aber wenn das nicht aktiv durch ne Regelung passiert, ist die Spannung, die dabei raus kommt ziemlich undefiniert und alles andere als genau. Er weiß ja nicht, wie viel er nachschieben muss. Das Resultat: Siehe unten.

Das ist hier die Frage. Ich denke immernoch, dass ich einen schnellen brauche.

Wie bereits geschrieben, ist mein Problem nicht die hohe Frequenz des Eingangssignals, sondern die kurze Zeit (1µS) des Sampelns, die ich gar nicht beeinflussen kann.

Ich habe mal mit dem von Linear vorgeschlagenen LT1490 Spice-Modell simuliert. Wie erwartet, sinkt die Ausgangsspannung des OPVs beim Zuschalten von leeren 30pF auf fast 0V ab und steigt dann recht schnell wieder an, sogar deutlich schneller als die Slewrate des LT1490. Das ist vermutlich so, weil man die Ausgangstransistoren des OPV in dieser Zeitspannung als Basis- bzw. Gate-Schaltung betrachten muss. Auch der e-Funktion-ähnliche Anstieg deutet darauf hin. Der OPV überschwingt dann leicht und findet sich erst nach über 10µs einigermaßen wieder auf der Eingangsspannung wieder. Nach 1µS liegt er noch 35mV daneben. Das sind gerade mal 7Bit Genauigkeit. Also untauglich.

Und da ist es egal, wie schnell oder langsam das Eingangssignal ist.

Michael

Reply to
Michael Rübig

Die Online-Regelung ist viel schneller und da brauchts nichts die volle Slew-Rate - sofern angesprochener von LT vorgeschlagener RC Filter wegen A) Rückschlagabschirmung und B) Teil-Pufferung) zwischen OPV und AD drin ist

Meine ich ja die Frequenz auf der Output-Seite - d.h. es braucht die niedrige > ... und dann halt mal messen ...

er ist etwas schneller weil die innere Mimik nicht ganz mit runtergerissen wurde.

Ist klar - wie gesagt - der völlig ungepufferte Rückschlag. R sollte >> 10 Ohm sein. Wie ist es wenn z.B. 50 Ohm, 2000pF wie angesprochen zwischen OPV und AD sind? Ggf noch ein ein 2-ter C davor und varieren:

+---------+ | | | | | |\| | +--|-\ | ___ | >---+----+------|___|------+--- ADC -|+/ | | |/| --- --- --- --- | | -+-- -+-

Grüsse Robert

Reply to
robert

Hallo Michael,

Genau dieser Fall ist in den wenigsten Fällen gegeben und wird, wie auf Seite 5 gezeigt hier nicht mit voller Auflösung unterstützt. Bei natürlichen Signalen sind die höheren Frequenzanteile mit kleinerer Amplitude vertreten. Da muss dann nicht von 0 auf 3 V aufgeladen werden, sondern nur von 2,990 auf 3,000 V.

Da spielen ja noch andere Effekte mit, wie Gate-charge und so... Wer solch komische Sachen machen will, muss sich schon besseres einfallen lassen.

Wieso eigentlich zu langsam? Mach Dir einfach mal klar, was 14 Bit bei dieser Frequenz sind. So linear wird ohnehin kein OP sein, da wird ohnehin fast immer die Open-Loop Gain bzw die GBW zu kein sein. Die Frage ist doch, was man tatsächlich braucht.

Sicher nicht mit S&H Kapazitäten von 30 pF und auch nicht mit 14 bit.

Ja, der S&H Kondensator wird ja nicht jedesmal auf 0V entladen.

Marte

Reply to
Marte Schwarz

Hi Michael,

Wie Du in einem solchen Bild erkennen willst, wann der OP auf 14 Bit eingeschwungen hat, ist mir ein Rätsel. Aber wie bereits beschrieben. Du bräuchtest das Large-Signal nur dann, wenn Dein Sprung wirklich von 0 weg gine, also beim 100 ksps Wechsel der Polarität der differenziellen Eingänge. Wenn man dann die 2 nF parallel hat, dann wird dem OP auch nicht mehr der ganze Sprung abverlangt, da offensichtlich der C die meiste Aufladung bereits berwerkstelligt.

Marte

Reply to
Marte Schwarz

Marte Schwarz schrieb:

Wenn ich reihum die Kanäle nacheinander sample, sehr wohl. Aber da muss man halt eventuell 2 Messungen hintereinander machen und die erste Messung verwerfen.

In dem Post an Robert habe ich durch Simulation gezeigt, dass durch den von mir beschriebenen Effekt mit einem langsamen OPV durchaus 35mV Fehler rauskommen können. Und in dieser Größenordnung spielt der Open-Loop-Gain noch keine Rolle.

Natürlich nicht. Aber bei höheren Geschwindigkeiten hat man bei 3pF und

10Bit schon Probleme. Letztendlich läuft es auf das gleiche raus.

Wenn ich mehrere Kanäle nacheinander messe kann das duchaus sein. Mir geht es darum, das Optimum rauszuholen. Die Frage ist, wie ich da ansetze. Sicher nicht mit großen Cs und langsamen OPVs. Ich kann mir nicht vorstellen, dass ich hier schon an technologische Grenzen stoße.

Michael

Reply to
Michael Rübig

robert schrieb:

Der Begriff Online-Regelung ist mir in diesem Zusammenhang neu. Eine Regelung hat für mich immer was mit Gegenkopplung zu tun. Wo ist die Gegenkopplung bei der Online-Regelung?

Ich verstehe nicht, was Du meinst. Wenn der OPV bei der schlagartigen Belastung nicht knallhart stehen bleibt, hilft alles andere auch nicht. Und wie in der Simulation gezeigt, kann zumindest ein langsamer OPV nicht knallhart stehen bleiben.

So erkläre ich mir das auch.

Meiner Meinung nach mache ich die Schaltung dadurch noch weicher. Widerstände in Reihe sind sicherlich nicht zielführend, da sie die schnelle Umladung behindern. Der Widerstand in Reihe wird benötigt, um einen OPV mit großer kapazitiver Last stabil zu halten. Die Kapazitive Last zu vergrößern macht hier aber keinen Sinn, weil ich dann in die Größenordnung von 100nF gehen müsste.

Ich werde bei Gelegenheit weiter simulieren, jetzt ist erst mal Wochenende.

Michael

Reply to
Michael Rübig

Hallo Michael,

Ok, warum gibt's Du nicht 3,7V Single-Supply auf? Das wird doch sonst nur ein teurer Krampf und da bekommst Du 16-bits IMHO nicht sauber mit hin. Es ist doch nicht so der Akt, mal eben +7V und -3V daraus zu machen, oder noch mehr. Oszillator aus Schmitt-Invertern et cetera, kannst Du sogar taktsynchron machen.

--
Gruesse, Joerg

http://www.analogconsultants.com
Reply to
Joerg

Marte Schwarz schrieb:

Das kann man hier natürlich nicht erkennen. Man kann aber erkennen, dass er nach 1µs keine Änderungen größer ca. 20mV mehr macht, und das ganze bei 200pF Last. Kann also nur besser werden. Wie gut er tatsächlich ist, muss man messen, da komm ich nicht drum rum.

Genau dann.

Dafür muss der OPV dann die 2nF zusätzlich weiter auf den Endwert hin aufladen. Ob er dadurch insgesamt schneller fertig wird, würde ich bezweifeln. Bei 3nF liegt man nach der reinen kapazitiven Umladung immer noch 1% daneben. Vielleicht gibts da ja ein Optimum.

Vielleicht sollte ich aber auch über 4 Einzel-ADC nachdenken ...

Michael

Reply to
Michael Rübig

Hallo Joerg,

Ich wollte eigentlich ne getaktete Spannungsversorgung auf der LP eigentlich vermeiden, wenn ich schon genau messen will. An die Rails muss ich eh nicht ganz ran. 100mV reichen aus. 14Bit reichen übrigens auch. Was meinst Du eigentlich? Ist das Problem durch einen schnellen OPV lösbar, mal unabhängig von dessen Versorgung?

Michael

Reply to
Michael Rübig

Hallo,

Wieso sollte sie das tun, wenn man, wie verlangt 100 Ohm und 2 nF zwischen OP und AD schaltet?

lieber nicht. Der OP muss den 2nF Kondensator über den Widerstand bedienen können.

Was soll das helfen? Der C direkt am OP-Ausgang bringt denselbigen höchstens aus einem Gleichgewicht ins Schwingen. Wenn das R schon 100 Ohm sein darf, dann ist der Ausgangswiderstand des OPs sicher nicht mehr das Problem.

Marte

Reply to
Marte Schwarz

Marte Schwarz schrieb:

Wenn man das Datenblatt ganz genau liest, könnte man daraus ableiten, dass jeder Kanal sein eigenes Sample&Hold-Glied hat. Es ist nämlich immer von Sample&Hold capacitors die Rede. ^ Und damit würde sich das Problem in Wohlgefallen auflösen.

Michael

Reply to
Michael Rübig

Hallo Michael,

100mV Signalspannung? Dann geht es mit 3,7V. Oder bis 100mV heran an die Rails? Dann geht es nicht ohne viel Aufwand.

Klar wird ein schnellerer (und kraeftiger) Opamp helfen. Aber wenn der

100mV die Rails muss, geht ihm schlicht die Puste aus und er nutzt nichts. Rechne Dir mal die minimalen Rdson von seinen Ausgangs-FETs aus (geht ueber die Sink/Source Current versus Output Voltage Graphen) und wie lange das dauert, bis der Kondensator auf 16bit Genauigkeit am Ziel ist.

Switching kannst Du doch taktsynchron machen. 74HC14 oder so. Wenn der Takt aber nur 10kHz ist, braucht man einiges an Kondensatoren. Ich mache das am liebsten mit 50kHz oder mehr.

Andererseits, sei froh, dass es alles Hardware ist. Ich muss heute VBA lernen. So'n Driss, ist wie Griessuppe reinwuergen, wuerde lieber Hardware entwickeln ...

--
Gruesse, Joerg

http://www.analogconsultants.com
Reply to
Joerg

Die ist auch da, aber der OPV muss mit seiner ganzen Mimik nicht auch der Ferne kommen und Sprünge regeln.

(Es geht da nur um das Rail-To-Rail - dass der OPV bei Output nahe

0V oder VCCA nicht selbstverständlich die diesselbe niedrige Output-impedanz hat wie im innneren Bereich. Aber offensichtlich ist Rail-to-Rail nicht ganz so extrem wichtig)

.. was also ggf. gemäß oben und unten gesagtem auch weiter verbessert werden kann.

Der schlimme Effekt ist ja bei direktem Anschluss zunächst mal der Schalt-Rückschlag. Und nicht das noch niedrige Tau z.B. = 5Ohm *

30pF - ja noch jenseits von gut und böse. Kann also bei 10kHz problemlos erhöht werden - auf z.B. 50Ohm * 1000pF = 0.05µs plus 5Ohm * 1000pF ggf. mit dem ersten Kondensator.

exp(20) = "immer noch unendlich"

Einfach mal probieren.

Grüsse Robert

Reply to
robert

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.