Directamente de la hoja de datos: ¿Es este realmente un circuito de filtro sensato?

Cirrus Logic CS42426-CQZ es un CODEC de audio que quiero usar en una tarjeta de sonido USB personalizada. Puede descargar la hoja de datos desde allí.

En la página 61, la hoja de datos tiene un circuito recomendado para cada canal A/D y D/A, pero no veo el propósito de tal complejidad. Claro, se están convirtiendo entre diferencial y single-ended, pero también hay formas más simples de hacerlo.

Copié su esquema en algún software de simulación de código abierto ( http://qucs.sourceforge.net/ ) y la respuesta de frecuencia ni siquiera coincide con el propósito declarado. Pero al menos la respuesta audible es algo plana:

Entrada de ADC: En(Está bien, entonces confían en el CMRR del propio ADC como parte del filtro anti-aliasing. No me gusta esa idea).

Salida DAC:Afuera

Supongo que en realidad se toman en serio el uso de esos circuitos en una aplicación del mundo real, pero algo no parece estar bien al respecto. Como dije, la respuesta audible es bastante plana, por lo que probablemente suene bien sin teléfonos celulares u otras RF, pero creo que puedo hacerlo mejor con los viejos clásicos de OpAmps 101. ¿Están de acuerdo?

¿Existe realmente una buena razón para que un ADC de audio aumente de una ganancia nominal de 20 kHz a un pico de 300 kHz? ¿O para que el DAC haga lo mismo de 20 Hz a alrededor de 0,5 Hz?


Para completar, aquí están los archivos de simulación. Cópielos en archivos de texto sin formato, cambie la extensión a .sch si a su sistema le importa y ábralos en Qucs:

ADC en:

<Qucs Schematic 0.0.18>
<Properties>
  <View=785,329,2079,1333,0.883466,0,0>
  <Grid=10,10,1>
  <DataSet=DiffAmpIn.dat>
  <DataDisplay=DiffAmpIn.dpl>
  <OpenDisplay=1>
  <Script=DiffAmpIn.m>
  <RunScript=0>
  <showFrame=0>
  <FrameText0=Title>
  <FrameText1=Drawn By:>
  <FrameText2=Date:>
  <FrameText3=Revision:>
</Properties>
<Symbol>
</Symbol>
<Components>
  <GND * 1 1120 480 0 0 0 0>
  <VProbe In 1 1110 460 28 -31 0 0>
  <GND * 1 940 640 0 0 0 0>
  <C C4 5 1010 520 -26 17 0 0 "100 uF" 1 "" 0 "neutral" 0>
  <GND * 1 1080 640 0 0 0 0>
  <R R18 5 1080 590 16 -10 0 3 "10 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <.DC DC1 5 930 700 0 41 0 0 "26.85" 0 "0.001" 0 "1 pA" 0 "1 uV" 0 "no" 0 "150" 0 "no" 0 "none" 0 "CroutLU" 0>
  <C C6 5 1230 420 -26 17 0 0 "470 pF" 1 "" 0 "neutral" 0>
  <R R23 5 1310 380 -9 10 0 2 "634 Ohm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <R R22 5 1350 500 -9 10 0 2 "91 Ohm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <OpAmp OP3 5 1230 500 -26 -42 1 0 "1e6" 0 "15 V" 0>
  <R R27 5 1300 570 16 -10 0 3 "634 Ohm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <C C8 5 1600 610 17 -26 0 1 "2700 pF" 1 "" 0 "neutral" 0>
  <Vac V1 5 940 590 18 -26 0 1 "1 V" 1 "1 kHz" 1 "0" 0 "0" 0>
  <C C7 5 1390 660 -26 17 0 0 "470 pF" 1 "" 0 "neutral" 0>
  <R R24 5 1470 620 -9 10 0 2 "634 Ohm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <R R25 5 1510 740 -9 10 0 2 "91 Ohm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <OpAmp OP4 5 1390 740 -26 -42 1 0 "1e6" 0 "15 V" 0>
  <GND * 1 1260 780 0 0 0 0>
  <R R26 5 1310 760 -9 10 0 2 "332 Ohm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <.AC AC1 5 930 750 0 41 0 0 "log" 1 "0.1 Hz" 1 "100 MHz" 1 "901" 1 "no" 0>
  <VProbe Diff 1 1820 610 -16 28 0 3>
  <GND * 1 1760 740 0 0 0 0>
  <VProbe Neg 1 1750 720 28 -31 0 0>
  <GND * 1 1760 500 0 0 0 0>
  <VProbe Pos 1 1750 480 28 -31 0 0>
</Components>
<Wires>
  <1080 480 1100 480 "" 0 0 0 "">
  <1080 480 1080 520 "" 0 0 0 "">
  <1040 520 1080 520 "" 0 0 0 "">
  <940 520 980 520 "" 0 0 0 "">
  <940 520 940 560 "" 0 0 0 "">
  <940 620 940 640 "" 0 0 0 "">
  <1080 620 1080 640 "" 0 0 0 "">
  <1080 520 1080 560 "" 0 0 0 "">
  <1080 520 1200 520 "" 0 0 0 "">
  <1300 420 1300 500 "" 0 0 0 "">
  <1260 420 1300 420 "" 0 0 0 "">
  <1180 420 1200 420 "" 0 0 0 "">
  <1300 500 1320 500 "" 0 0 0 "">
  <1380 500 1400 500 "" 0 0 0 "">
  <1180 380 1180 420 "" 0 0 0 "">
  <1180 380 1280 380 "" 0 0 0 "">
  <1400 380 1400 500 "" 0 0 0 "">
  <1340 380 1400 380 "" 0 0 0 "">
  <1270 500 1300 500 "" 0 0 0 "">
  <1180 420 1180 480 "" 0 0 0 "">
  <1180 480 1200 480 "" 0 0 0 "">
  <1300 500 1300 540 "" 0 0 0 "">
  <1400 500 1600 500 "" 0 0 0 "">
  <1600 500 1600 580 "" 0 0 0 "">
  <1600 640 1600 740 "" 0 0 0 "">
  <1300 600 1300 720 "" 0 0 0 "">
  <1460 660 1460 740 "" 0 0 0 "">
  <1420 660 1460 660 "" 0 0 0 "">
  <1340 660 1360 660 "" 0 0 0 "">
  <1460 740 1480 740 "" 0 0 0 "">
  <1340 620 1340 660 "" 0 0 0 "">
  <1340 620 1440 620 "" 0 0 0 "">
  <1500 620 1560 620 "" 0 0 0 "">
  <1540 740 1560 740 "" 0 0 0 "">
  <1560 740 1600 740 "" 0 0 0 "">
  <1560 620 1560 740 "" 0 0 0 "">
  <1430 740 1460 740 "" 0 0 0 "">
  <1340 660 1340 720 "" 0 0 0 "">
  <1340 720 1360 720 "" 0 0 0 "">
  <1260 760 1260 780 "" 0 0 0 "">
  <1260 760 1280 760 "" 0 0 0 "">
  <1340 760 1360 760 "" 0 0 0 "">
  <1300 720 1340 720 "" 0 0 0 "">
  <1600 740 1710 740 "" 0 0 0 "">
  <1710 740 1740 740 "" 0 0 0 "">
  <1710 620 1710 740 "" 0 0 0 "">
  <1710 620 1800 620 "" 0 0 0 "">
  <1600 500 1710 500 "" 0 0 0 "">
  <1710 500 1740 500 "" 0 0 0 "">
  <1710 500 1710 600 "" 0 0 0 "">
  <1710 600 1800 600 "" 0 0 0 "">
</Wires>
<Diagrams>
  <Rect 880 1239 498 359 3 #c0c0c0 1 10 1 0.1 1 1e+08 1 -0.540919 1 6 1 -1 0.5 1 315 0 225 "" "" "">
    <"In.v" #0000ff 0 3 0 0 0>
    <"Diff.v" #ff0000 0 3 0 0 0>
  </Rect>
  <Rect 1480 1239 498 359 3 #c0c0c0 1 10 1 0.1 1 1e+08 1 -1 0.5 1 1 -0.100118 1 4.34333 315 0 225 "" "" "">
    <"Pos.v" #0000ff 0 3 0 0 0>
    <"Neg.v" #ff0000 0 3 0 0 0>
  </Rect>
</Diagrams>
<Paintings>
</Paintings>

Salida DAC:

<Qucs Schematic 0.0.18>
<Properties>
  <View=-56,169,1878,1394,0.909091,0,88>
  <Grid=10,10,1>
  <DataSet=DiffAmpOut.dat>
  <DataDisplay=DiffAmpOut.dpl>
  <OpenDisplay=1>
  <Script=DiffAmpOut.m>
  <RunScript=0>
  <showFrame=0>
  <FrameText0=Title>
  <FrameText1=Drawn By:>
  <FrameText2=Date:>
  <FrameText3=Revision:>
</Properties>
<Symbol>
</Symbol>
<Components>
  <GND * 1 40 660 0 0 0 0>
  <IProbe Neg 1 370 500 -26 16 0 0>
  <IProbe Pos 1 370 620 -26 16 0 0>
  <R R16 5 250 620 -9 10 0 2 "0 Ohm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <R R17 5 250 500 -9 10 0 2 "0 Ohm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <GND * 1 460 560 0 0 0 0>
  <R R19 5 550 680 -9 10 0 2 "1.65 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <C C2 5 550 620 -26 17 0 0 "5800 pF" 1 "" 0 "neutral" 0>
  <R R21 5 730 680 -9 10 0 2 "1.87 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <R R23 5 730 620 -9 10 0 2 "887 Ohm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <R R18 5 550 440 -9 10 0 2 "5.49 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <C C1 5 550 500 -26 17 0 0 "1800 pF" 1 "" 0 "neutral" 0>
  <R R20 5 730 440 -9 10 0 2 "6.19 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <R R22 5 730 500 -9 10 0 2 "2.94 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <C C5 5 890 680 -26 17 0 0 "22 uF" 1 "" 0 "neutral" 0>
  <OpAmp OP1 5 870 560 -26 -42 1 0 "1e6" 0 "15 V" 0>
  <C C3 5 890 620 -26 17 0 0 "1200 pF" 1 "" 0 "neutral" 0>
  <C C4 5 890 500 -26 17 0 0 "390 pF" 1 "" 0 "neutral" 0>
  <GND * 1 960 700 0 0 0 0>
  <GND * 1 1320 560 0 0 0 0>
  <VProbe Out 1 1310 540 28 -31 0 0>
  <C C6 5 1090 560 -26 17 0 0 "22 uF" 1 "" 0 "neutral" 0>
  <R R24 5 1170 560 -9 10 0 2 "1 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <R R25 5 1260 630 19 -8 0 3 "47.5 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "US" 0>
  <GND * 1 1260 680 0 0 0 0>
  <GND * 1 1040 520 0 0 0 0>
  <VProbe Amp 1 1030 500 28 -31 0 0>
  <.DC DC1 5 30 730 0 39 0 0 "26.85" 0 "0.001" 0 "1 pA" 0 "1 uV" 0 "no" 0 "150" 0 "no" 0 "none" 0 "CroutLU" 0>
  <.AC AC1 5 30 780 0 39 0 0 "log" 1 "0.1 Hz" 1 "10 MHz" 1 "801" 1 "no" 0>
  <Vac V1 5 40 610 18 -26 0 1 "0 V" 1 "1 kHz" 1 "0" 0 "0" 0>
  <Vac V3 5 190 620 -26 18 0 0 "1 V" 1 "1 kHz" 1 "0" 0 "0" 0>
  <Vac V2 5 190 500 -26 -50 0 2 "1 V" 1 "1 kHz" 1 "0" 0 "0" 0>
</Components>
<Wires>
  <280 620 340 620 "" 0 0 0 "">
  <40 640 40 660 "" 0 0 0 "">
  <40 560 40 580 "" 0 0 0 "">
  <40 560 140 560 "" 0 0 0 "">
  <140 500 160 500 "" 0 0 0 "">
  <140 620 160 620 "" 0 0 0 "">
  <140 500 140 560 "" 0 0 0 "">
  <140 560 140 620 "" 0 0 0 "">
  <280 500 340 500 "" 0 0 0 "">
  <400 500 420 500 "" 0 0 0 "">
  <400 620 420 620 "" 0 0 0 "">
  <420 440 420 500 "" 0 0 0 "">
  <420 440 520 440 "" 0 0 0 "">
  <420 620 420 680 "" 0 0 0 "">
  <420 680 520 680 "" 0 0 0 "">
  <460 560 500 560 "" 0 0 0 "">
  <500 560 500 620 "" 0 0 0 "">
  <500 620 520 620 "" 0 0 0 "">
  <580 620 660 620 "" 0 0 0 "">
  <580 680 660 680 "" 0 0 0 "">
  <660 680 700 680 "" 0 0 0 "">
  <660 620 660 680 "" 0 0 0 "">
  <660 620 700 620 "" 0 0 0 "">
  <500 500 500 560 "" 0 0 0 "">
  <500 500 520 500 "" 0 0 0 "">
  <580 500 660 500 "" 0 0 0 "">
  <580 440 660 440 "" 0 0 0 "">
  <660 440 700 440 "" 0 0 0 "">
  <660 440 660 500 "" 0 0 0 "">
  <660 500 700 500 "" 0 0 0 "">
  <760 680 860 680 "" 0 0 0 "">
  <920 680 960 680 "" 0 0 0 "">
  <760 440 960 440 "" 0 0 0 "">
  <760 500 840 500 "" 0 0 0 "">
  <760 620 840 620 "" 0 0 0 "">
  <840 580 840 620 "" 0 0 0 "">
  <840 500 840 540 "" 0 0 0 "">
  <840 620 860 620 "" 0 0 0 "">
  <840 500 860 500 "" 0 0 0 "">
  <910 560 960 560 "" 0 0 0 "">
  <960 500 960 560 "" 0 0 0 "">
  <920 500 960 500 "" 0 0 0 "">
  <960 440 960 500 "" 0 0 0 "">
  <920 620 960 620 "" 0 0 0 "">
  <960 620 960 680 "" 0 0 0 "">
  <960 680 960 700 "" 0 0 0 "">
  <1120 560 1140 560 "" 0 0 0 "">
  <1200 560 1260 560 "" 0 0 0 "">
  <1260 560 1300 560 "" 0 0 0 "">
  <1260 560 1260 600 "" 0 0 0 "">
  <1260 660 1260 680 "" 0 0 0 "">
  <1000 520 1020 520 "" 0 0 0 "">
  <960 560 1000 560 "" 0 0 0 "">
  <1000 560 1060 560 "" 0 0 0 "">
  <1000 520 1000 560 "" 0 0 0 "">
</Wires>
<Diagrams>
  <Rect 300 1119 498 359 3 #c0c0c0 1 10 1 0.1 1 3e+06 1 -0.422698 1 4.66459 1 -1 0.5 1 315 0 225 "" "" "">
    <"Pos.i" #0000ff 0 3 0 0 0>
    <"Neg.i" #ff0000 0 3 0 0 0>
  </Rect>
  <Rect 880 1119 498 359 3 #c0c0c0 1 10 1 0.1 1 3e+06 1 -0.00012118 0.0002 0.00133304 1 -1 0.5 1 315 0 225 "" "" "">
    <"Amp.v" #0000ff 0 3 0 0 0>
    <"Out.v" #ff0000 0 3 0 0 0>
  </Rect>
</Diagrams>
<Paintings>
</Paintings>
¿Usaste los amplificadores operacionales correctos?
@Andyaka Esto es simulación. Usé el modelo de amplificador operacional genérico, que está configurado de forma predeterminada para una ganancia interna de 1e6 y clips a +-15V. No hay otras configuraciones. La elección del amplificador operacional físico no importa todavía.
Si debe saberlo, estoy diseñando mi circuito real con LM833, pero eso no tiene nada que ver con esta simulación. Espero que cualquier amplificador operacional haga esto en este circuito.

Respuestas (2)

Me gusta esta pregunta. Es un buen ejemplo de cómo los esquemas de la hoja de datos son excelentes para mostrar conceptos, pero no solo para usarse tal cual.

Mirando la descripción del filtro, parece que los conceptos principales son: respuesta plana en la banda de paso de audio, impedancia de fuente baja para las entradas ADC, operación centrada alrededor de un VQ de 2.7V y una atenuación de 20dB es adecuada para anti-aliasing. .

El límite de 2700pF implica que el ADC es una entrada de capacitor conmutada, sin ningún búfer. A 6 MHz, eso es aproximadamente 10 ohmios de impedancia de salida del filtro. Si bien sería fácil usar algo como un integrador con pérdida para obtener la atenuación y centrarse en VQ, la impedancia de salida sería mayor.

La disposición del amplificador, a veces llamada "compensación de carga en el bucle", es para hacer frente a la carga capacitiva en los amplificadores operacionales. Una compensación como esta tiene una Q ajustable para que la transición a la caída pueda ser mucho más nítida que un RC simple. A menudo se requiere cierta cantidad de ajuste para obtener la planitud deseada. En este caso, parece que hay un error en el esquema que provocó un pico con los valores de las piezas.

Aquí hay un esquema con designadores de referencia:

ingrese la descripción de la imagen aquí

Puede ver dónde creo que falla el esquema, con la conexión de R4. Pero, antes de entrar en eso, repasemos cómo debería funcionar el circuito.

Con carga capacitiva, un OpAmp perderá margen de fase. Un buen OpAmp normalmente tendrá unos 60 grados de margen de fase. Pero incluso una carga de 100pF puede causar que el margen de fase disminuya a 40 o 45 grados, lo que resulta en una respuesta pico. La adición de R2, C2 y R3 permite que el amplificador mantenga el margen de fase con carga. C2 reduce el ancho de banda, aumentando el margen de fase. R3 ayuda a minimizar la pérdida de margen de fase con la adición de C4. R2 proporciona retroalimentación de baja frecuencia para corregir cualquier error de banda de paso causado por R3.

La respuesta del circuito puede ajustarse ajustando el valor de C2. Hacer C2 más grande reducirá la Q del filtro. A bajas frecuencias domina el lazo de R2, pero el lazo de C2 domina a frecuencias más altas donde la impedancia de C2 es menor que la de R2+R3. Luego, la caída a través de R3 no está compensada y la señal es atenuada por R3 C4 y la caída eventual del amplificador.

Considere solo la sección no inversora con amplificador ideal. La función de transferencia, dejando fuera el cero de C1 R1 sería:

vo Vin = C2 s ( R2 + R3 ) + 1 C2 C4 R2 R3 s 2 + s ( C2 R2 + C2 R3 ) + 1

El denominador se parece sospechosamente a la forma cuadrática clásica que contiene Q y ω o , así que deriva esos.

Q = R2 R3 C4 ( 1 R2 + 1 R3 ) C2 ( R2 + R3 ) 3 / 2

ω o = 1 R2 + 1 R3 C2 C4 ( R2 + R3 )

Dado que se usó un amplificador ideal para hacer que las cosas sean manejables, Q tiende a infinito cuando C2 tiende a cero. Esto no será un problema ya que solo nos importan las frecuencias por debajo del ancho de banda del amplificador. Con un amplificador real, Q caería con la ganancia del amplificador. Introduciendo valores para R2, R3 y C4, podemos trazar Q como una función de C2.

ingrese la descripción de la imagen aquí

Q disminuye a medida que aumenta el valor de C2. Si el amplificador tiene demasiados picos, simplemente aumente C2 para aplanar la respuesta.

Ahora, mirando la curva, parece que C2 de 470pF tendría una Q de ~0.8. Esa sería una respuesta bastante plana. ¿Qué sucedió?

En la hoja de datos, el esquema muestra R4 conectado a la salida U1. Esto hace 2 cosas malas. Primero, después de tomarse algunas molestias para compensar los efectos de baja frecuencia de R3 y R6, conectar R4 a U1 agrega una caída de R3. Si observa la impedancia de salida del filtro, verá que es cierto. En segundo lugar, hace que se produzca un pico con C2 y C3 de 470pF (el pico de Q es de alrededor de 300pF, más o menos de lo que disminuye Q). Si R4 está conectado al nodo con R2 R3 y C4, Q actúa como se esperaba. Además, la impedancia de salida del filtro se mantendrá muy baja a través de la banda de paso de audio, hasta que se reduzca y luego siga la impedancia C4.

¡Vaya, muy buena respuesta! Estaba a punto de desechar su circuito y poner mi señal amortiguada de mayor voltaje a través de un simple divisor de resistencia diferencial acoplado a CA, manteniendo también el límite de entrada para el almacenamiento de carga y la atenuación final de RC. Pero con su explicación de cómo se supone que funciona, y funciona si se hace bien, creo que me gusta más su búfer corregido.
Sin embargo, hay un punto que cuestionaría: que -20dB es adecuado para anti-aliasing. Esto probablemente sea cierto si los componentes de alta frecuencia son una pequeña parte de la señal original, pero el ruido externo no lo es. El objetivo principal de elegir este ADC de 24 bits con ~100dB S/N en lugar de un ADC de 16 bits es grabar con al menos una calidad de 16 bits en cualquier momento sin pensar demasiado en el nivel de la señal. Dado el ruido de alta frecuencia sin cambios con una señal de nivel reducido, creo que quiero casi nada a 6 MHz como pueda con un efecto mínimo a 20 kHz y una complejidad de circuito razonable.
@AaronD: me pregunto si -20dB también son suficientes. Mi experiencia es con ADC Flash y SAR. Pero, la Teoría de Sigma Delta parece ser que con el sobremuestreo, la integración y la aniquilación, se moldea el ruido de cuantificación, empujando el ruido fuera de la banda de paso hacia frecuencias más altas. Por lo tanto, el ruido de banda de paso es bajo, mientras que la frecuencia de muestreo es alta. Si es del orden de -20dB, cualquier ruido que deje el suavizado se perderá en el modelado. Mire analog.com/static/imported-files/tutorials/MT-022.pdf para empezar, si aún no lo ha hecho. Prueba y descubre si es cierto. Buena suerte.
Sí, tal vez así. Comienza el aliasing en Fs/2, que es 6 MHz para Fs = 12 MHz, pero el filtro digital aún lo elimina hasta que llega a alrededor de Fs - BW. Solo entonces aparece en la señal deseada, y para entonces es significativamente inferior a -20dB, proveniente del mismo filtro analógico.

Cirrus en realidad tiene una nota de aplicación que describe la intención de los circuitos: http://www.cirrus.com/en/pubs/appNote/an241-1.pdf

De las descripciones en ese documento, tiene razón en que los picos no deberían estar allí.

En general, el modelo podría estar equivocado en dos lugares:

  1. Las características de entrada ADC y salida DAC no se están modelando. Los circuitos pueden esperar una determinada fuente/carga.

  2. El modelo de amplificador operacional utilizado puede no ser suficiente para este circuito. Descubrí que algunos circuitos que van más allá de 1 MHz necesitan un producto de ancho de banda de mayor ganancia que el que ofrecen los modelos genéricos típicos. La documentación de la placa de evaluación para este ADC muestra que usan este circuito con un amplificador operacional 2068 que tiene un producto de ancho de banda de ganancia de 27 MHz.

EDITAR: Después de mirar más a fondo, los valores exactos se usan en su tablero de evaluación para esta parte. Entonces, mi recomendación es modelarlo primero con la misma parte que están usando, el 2068. Con suerte, esto debería mostrar el funcionamiento correcto.

EDIT2: ejecuté el circuito ADC a través de QUCS, y no tienen modelos de especias adecuados para amplificadores operacionales reales. LT Spice de Linear Technology es un muy buen simulador de especias gratuito. Pasar el circuito por allí da una buena respuesta plana como se predijo. (Si abre esta imagen en una nueva pestaña, se amplía para que pueda ver los detalles).

Resultados del barrido de CA del circuito ADC

¡Buen descubrimiento! Explica un poco mejor el objetivo y proporciona ejemplos para múltiples situaciones, pero no es una explicación detallada de cómo funciona el circuito. (Supongo que asumen que si tiene el conocimiento suficiente para apreciar sus especificaciones, ¿tiene el conocimiento suficiente para darse cuenta de eso?) Descubrí que si elimino los límites de 470p alrededor de los amplificadores operacionales (circuito abierto), la simulación hace lo que Espero, pero cuando están ahí, obtengo el pico de ~4dB a ~300kHz. ¿Podrían ser adiciones del mundo real para ayudar al amplificador específico con el que probaron y que no necesariamente son necesarios para el mío?
Además, como encontraste uno para el búfer ADC, busqué uno complementario para el DAC. no hay Al menos no una coincidencia exacta. Sin embargo, lo que encontré tenía la misma topología que encontré en la hoja de datos con aproximadamente el mismo nivel de explicación que la nota ADC. Pero este hizo un trabajo mucho mejor al elegir los valores de los componentes para preservar el CMRR y no comportarse mal como el de la hoja de datos. ( cirrus.com/en/pubs/appNote/AN048Rev2.pdf )
Sugeriría obtener primero el modelo para el 2068 en su simulación. Los condensadores de 470 pF son para estabilidad o para el filtro de paso bajo que mencionan. Había asumido lo último, pero ahora no estoy tan seguro.