r4511 - in developers/werner: . mic
werner at docs.openmoko.org
werner at docs.openmoko.org
Mon Jul 7 14:47:52 CEST 2008
Author: werner
Date: 2008-07-07 14:47:52 +0200 (Mon, 07 Jul 2008)
New Revision: 4511
Added:
developers/werner/mic/
developers/werner/mic/README
developers/werner/mic/SIMULATE
developers/werner/mic/a6.sch
developers/werner/mic/a7.sch
developers/werner/mic/dat2qdf
developers/werner/mic/out2dat
developers/werner/mic/wolfson.sch
Log:
Simulation of the GTA02 microphone input circuit.
Added: developers/werner/mic/README
===================================================================
--- developers/werner/mic/README (rev 0)
+++ developers/werner/mic/README 2008-07-07 12:47:52 UTC (rev 4511)
@@ -0,0 +1,79 @@
+Circuit models
+--------------
+
+This directory contails three Qucs models of the microphone input
+circuit:
+
+- a6.sch
+
+ Original GTA02v6 circuit and audio settings.
+
+- a7.sch
+
+ The settings and circuit proposed for GTA02v7. The changes are as
+ follows:
+
+ - swap MIC2 and MIC2N (so the single-ended microphone moves from
+ MIC2 to MIC2N)
+ - increase C3013 (do we go all the way to 4.7uF ?)
+ - Vmid voltage dividers set to 50k/50k
+
+- wolfson.sch
+
+ This is the circuit as Wolfson have intended it to be. Differences
+ from a6.sch:
+
+ - C4304 is increased from 100nF to 1uF
+ - C3013 is increased from 100nF to 4.7uF
+ - MIC2N is connected to VREF (I removed C4303, since it has no
+ function in this case)
+ - Vmid voltage dividers set to 50k/50k
+
+
+Frequency sweep
+---------------
+
+In http://people.openmoko.org/werner/mic/, the files a6.ps, a7.ps, and
+wolfson.ps show gain and phase difference for a frequency sweep from 10Hz
+to 10kHz (the human ear picks up frequencies from 20Hz to 20kHz). We can
+see that a6 and a7 both act like high-pass filters, while the Wolfson
+design is fairly linear.
+
+
+Audio simulation
+----------------
+
+The big question is of course: what does it sound like ? The simulation
+can also be used to process a real-life audio sample. See file SIMULATE
+for this.
+
+I used a short sequence from the FGTH's "Two Tribes", with the voice
+sample from Patrick Allen. To better approximate the sound quality we'll
+actually need for GSM (and to make the simulation a bit less CPU-hungry)
+I reduced the sample rate to 20ksamples/s.
+
+The results are in https://people.internal.openmoko.org/werner/mic/
+(to make comparison easier, I've adjusted the amplitudes so that they
+all have about the same volume).
+
+orig.ogg is the signal at its original sample rate of 44.1ksamples/s.
+in.ogg is the signal used for the "microphone" input. (Amplified to
+sound roughly as loud as the rest.)
+
+Findings: a faint reduction of lower frequencies can be heard when
+comparing a6 and a7 to the Wolfson design, but all this is dominated
+by the effects of downsampling to 20ksamples/s. There are no other
+audible distortions.
+
+
+Model details
+-------------
+
+This is how the parameters were chosen:
+
+- the overall gain is 18dB
+- R1: dimensioned to obtain a 18dB gain, as a function of R2
+- R2: 18kOhm at 18dB is from the WM8753L data sheet, page 7 (Rmic2n)
+- R3: 163kOhm is from the data sheet (Rmic2)
+- R4 and R5 are given by the Vmid settings. Note that we used to have an
+ incorrect setting of 500kOhm/500kOhm in the past, as Andy discovered.
Added: developers/werner/mic/SIMULATE
===================================================================
--- developers/werner/mic/SIMULATE (rev 0)
+++ developers/werner/mic/SIMULATE 2008-07-07 12:47:52 UTC (rev 4511)
@@ -0,0 +1,56 @@
+Simulating processing of an audio stream:
+
+- pick the source, e.g.,
+
+ F="Frankie Goes To Hollywood - Two Tribes (Carnage\ Mix).mp3"
+
+- extract example, apply restrictions, and convert to the SoX .dat format.
+ E.g.,
+
+ sox "$F" -r 20000 -c 1 test.dat vol 0.2 trim 460 10
+
+ Restrictions:
+ - sample rate 20ksamples/s (-r 20000)
+ - mono (-c 1)
+ - reduce amplitude to 20% to simulate microphone input (vol 0.2)
+ - start at 460 seconds and extract 10 seconds (trim 460 10)
+
+- convert to the Qucs input file format:
+
+ ./dat2qdf test.dat >test.qdf
+
+- in Qucs, set up the simulation and generate the netlist:
+
+ - load the .sch file
+ - make a transient simulation with at least 4 steps per sample
+ - add a file-based voltage source reading test.qdf
+ - start the simulation (just to generate the netlist)
+ - abort the simulation
+
+- get the netlist (let's call this experiment "wolfson"):
+
+ cp ~/.qucs/netlist.txt wolfson.net
+
+- run the circuit simulation:
+
+ qucsator -b -i wolfson.net -o wolfson.qdat
+
+- convert the simulation data to a SoX .dat file
+
+ ./out2dat -a -o 1.67 wolfson.qdat >wolfson.dat
+
+ The first number sets the amplification. The second number is how
+ many seconds of the input we skip. (To allow for the circuit to
+ settle.)
+
+- plat back with SoX:
+
+ play wolfson.dat
+
+ or, to adjust the volume, e.g.,
+
+ play wolfson.dat vol 2
+
+- convert to Ogg:
+
+ sox wolfson.dat wolfson.ogg
Added: developers/werner/mic/a6.sch
===================================================================
--- developers/werner/mic/a6.sch (rev 0)
+++ developers/werner/mic/a6.sch 2008-07-07 12:47:52 UTC (rev 4511)
@@ -0,0 +1,101 @@
+<Qucs Schematic 0.0.13>
+<Properties>
+ <View=-214,-40,1426,928,1,0,0>
+ <Grid=10,10,1>
+ <DataSet=a6.dat>
+ <DataDisplay=a6.dpl>
+ <OpenDisplay=1>
+ <showFrame=0>
+ <FrameText0=Title>
+ <FrameText1=Drawn By:>
+ <FrameText2=Date:>
+ <FrameText3=Revision:>
+</Properties>
+<Symbol>
+</Symbol>
+<Components>
+ <GND * 1 -40 600 0 0 0 0>
+ <R R2 1 390 380 -26 -59 0 2 "18 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <OpAmp OP2 1 700 400 -26 -86 1 0 "1e6" 1 "15 V" 0>
+ <Vac V1 1 -40 550 18 -26 0 1 "0.1 V" 1 "1 kHz" 0 "0" 0 "0" 0>
+ <R R1 1 710 280 -26 -59 1 0 "125 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <GND * 1 1220 290 0 0 0 0>
+ <Vdc V2 1 1220 210 18 -26 0 1 "3.3 V" 1>
+ <GND * 1 1100 300 0 0 0 0>
+ <OpAmp OP3 1 420 160 -26 42 1 2 "1e6" 1 "15 V" 0>
+ <GND * 1 880 260 0 0 0 0>
+ <R R3 1 520 230 15 -26 0 1 " 163 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <Eqn Eqn1 1 -130 700 -31 17 0 0 "db=dB(Vout.v/V1.U)" 1 "ph=phase(Vout.v)" 1 "yes" 0>
+ <C C4304 1 70 420 -26 17 1 2 "100 nF" 1 "1.66" 1 "polar" 0>
+ <C C3013 1 1100 210 17 -26 1 3 "100 nF" 1 "1.67" 1 "polar" 0>
+ <C C4305 1 70 380 -26 -83 0 2 "100 nF" 1 "1.66" 1 "polar" 0>
+ <GND * 1 -140 600 0 0 0 0>
+ <R R4 1 880 90 15 -26 0 1 "500 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <R R5 1 880 190 15 -26 0 1 "500 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <.AC AC1 1 20 70 0 44 0 0 "log" 1 "10 Hz" 1 "10 kHz" 1 "1000" 1 "no" 0>
+ <.DC DC1 1 -160 -20 0 44 0 0 "26.85" 0 "0.001" 0 "1 pA" 0 "1 uV" 0 "no" 0 "150" 0 "no" 0 "none" 0 "CroutLU" 0>
+ <Vfile V3 0 80 550 18 -26 0 1 "/home/moko/svn.openmoko.org/developers/werner/mic/test.qdf" 1 "cubic" 0 "no" 0 "1" 0 "0" 0>
+ <.TR TR1 0 -160 60 0 73 0 0 "lin" 1 "0" 1 "10 s" 1 "80000" 1 "AdamsMoulton" 1 "6" 1 "1 ns" 0 "1e-16" 0 "150" 0 "0.001" 0 "1 pA" 0 "1 uV" 0 "26.85" 0 "1e-3" 0 "1e-6" 0 "1" 0 "CroutLU" 0 "no" 0 "yes" 0 "0" 0>
+</Components>
+<Wires>
+ <-40 600 -40 620 "" 0 0 0 "">
+ <-40 580 -40 600 "" 0 0 0 "">
+ <610 380 670 380 "" 0 0 0 "">
+ <610 280 610 380 "" 0 0 0 "">
+ <610 280 680 280 "" 0 0 0 "">
+ <740 280 800 280 "" 0 0 0 "">
+ <740 400 800 400 "" 0 0 0 "">
+ <800 400 850 400 "" 0 0 0 "">
+ <800 280 800 400 "" 0 0 0 "">
+ <-40 420 -40 520 "" 0 0 0 "">
+ <-40 420 40 420 "" 0 0 0 "">
+ <100 420 520 420 "" 0 0 0 "">
+ <1220 240 1220 290 "" 0 0 0 "">
+ <1100 240 1100 300 "" 0 0 0 "">
+ <1100 140 1100 180 "" 0 0 0 "">
+ <180 160 340 160 "" 0 0 0 "">
+ <340 160 340 260 "" 0 0 0 "">
+ <340 260 480 260 "" 0 0 0 "">
+ <480 180 480 260 "" 0 0 0 "">
+ <450 180 480 180 "" 0 0 0 "">
+ <450 140 520 140 "" 0 0 0 "">
+ <520 140 880 140 "" 0 0 0 "">
+ <520 140 520 200 "" 0 0 0 "">
+ <420 380 610 380 "" 0 0 0 "">
+ <1220 20 1220 180 "" 0 0 0 "">
+ <880 20 1220 20 "" 0 0 0 "">
+ <880 140 1100 140 "" 0 0 0 "">
+ <880 120 880 140 "" 0 0 0 "">
+ <880 20 880 60 "" 0 0 0 "">
+ <520 420 670 420 "" 0 0 0 "">
+ <520 260 520 420 "" 0 0 0 "">
+ <880 140 880 160 "" 0 0 0 "">
+ <880 220 880 260 "" 0 0 0 "">
+ <100 380 360 380 "" 0 0 0 "">
+ <-140 380 -140 600 "" 0 0 0 "">
+ <-140 380 40 380 "" 0 0 0 "">
+ <340 160 380 160 "" 0 0 0 "">
+ <-40 580 80 580 "" 0 0 0 "">
+ <-40 520 80 520 "" 0 0 0 "">
+ <850 400 850 400 "Vout" 870 350 0 "">
+ <520 140 520 140 "Vmid" 560 80 0 "">
+</Wires>
+<Diagrams>
+ <Rect 118 781 362 184 3 #c0c0c0 1 10 1 0 1000 10000 1 10 1 30 1 -1 0.5 1 315 0 225 "" "" "">
+ <"db" #0000ff 0 3 0 0 0>
+ </Rect>
+ <Rect 540 784 357 184 3 #c0c0c0 1 10 1 0 2000 10000 1 -6.02409 20 68.6681 1 -1 0.5 1 315 0 225 "" "" "">
+ <"ph" #0000ff 0 3 0 0 0>
+ </Rect>
+ <Rect 976 784 362 184 3 #c0c0c0 1 10 0 10 2000 10000 1 -0.00106631 0.005 0.012901 1 -1 1 1 315 0 225 "" "" "">
+ <"Vmid.v" #0000ff 0 3 0 0 0>
+ </Rect>
+</Diagrams>
+<Paintings>
+ <Text 240 350 12 #000000 0 "MIC2N">
+ <Text 250 430 12 #000000 0 "MIC2">
+ <Text 250 130 12 #000000 0 "VREF">
+ <Text 1030 110 12 #000000 0 "VMID">
+ <Text 1030 -10 12 #000000 0 "AVDD">
+ <Rectangle 300 -20 720 500 #00aa00 2 2 #c0c0c0 1 0>
+</Paintings>
Added: developers/werner/mic/a7.sch
===================================================================
--- developers/werner/mic/a7.sch (rev 0)
+++ developers/werner/mic/a7.sch 2008-07-07 12:47:52 UTC (rev 4511)
@@ -0,0 +1,101 @@
+<Qucs Schematic 0.0.13>
+<Properties>
+ <View=-214,-40,1426,928,1,0,0>
+ <Grid=10,10,1>
+ <DataSet=a7.dat>
+ <DataDisplay=a7.dpl>
+ <OpenDisplay=1>
+ <showFrame=0>
+ <FrameText0=Title>
+ <FrameText1=Drawn By:>
+ <FrameText2=Date:>
+ <FrameText3=Revision:>
+</Properties>
+<Symbol>
+</Symbol>
+<Components>
+ <GND * 1 -40 600 0 0 0 0>
+ <R R2 1 390 380 -26 -59 0 2 "18 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <OpAmp OP2 1 700 400 -26 -86 1 0 "1e6" 1 "15 V" 0>
+ <Vac V1 1 -40 550 18 -26 0 1 "0.1 V" 1 "1 kHz" 0 "0" 0 "0" 0>
+ <R R1 1 710 280 -26 -59 1 0 "125 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <GND * 1 1220 290 0 0 0 0>
+ <Vdc V2 1 1220 210 18 -26 0 1 "3.3 V" 1>
+ <GND * 1 1100 300 0 0 0 0>
+ <OpAmp OP3 1 420 160 -26 42 1 2 "1e6" 1 "15 V" 0>
+ <GND * 1 880 260 0 0 0 0>
+ <R R3 1 520 230 15 -26 0 1 " 163 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <Eqn Eqn1 1 -130 700 -31 17 0 0 "db=dB(Vout.v/V1.U)" 1 "ph=phase(Vout.v)" 1 "yes" 0>
+ <C C4305 1 70 380 -26 -83 0 2 "100 nF" 1 "1.66" 1 "polar" 0>
+ <GND * 1 -140 600 0 0 0 0>
+ <.AC AC1 1 20 70 0 44 0 0 "log" 1 "10 Hz" 1 "10 kHz" 1 "1000" 1 "no" 0>
+ <.DC DC1 1 -160 -20 0 44 0 0 "26.85" 0 "0.001" 0 "1 pA" 0 "1 uV" 0 "no" 0 "150" 0 "no" 0 "none" 0 "CroutLU" 0>
+ <Vfile V3 0 80 550 18 -26 0 1 "/home/moko/svn.openmoko.org/developers/werner/mic/test.qdf" 1 "cubic" 0 "no" 0 "1" 0 "0" 0>
+ <.TR TR1 0 -160 60 0 73 0 0 "lin" 1 "0" 1 "10 s" 1 "800000" 1 "AdamsMoulton" 1 "6" 1 "1 ns" 0 "1e-16" 0 "150" 0 "0.001" 0 "1 pA" 0 "1 uV" 0 "26.85" 0 "1e-3" 0 "1e-6" 0 "1" 0 "CroutLU" 0 "no" 0 "yes" 0 "0" 0>
+ <R R5 1 880 190 15 -26 0 1 "50 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <R R4 1 880 90 15 -26 0 1 "50 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <C C3013 1 1100 210 17 -26 1 3 "4.7 uF" 1 "1.67" 1 "polar" 0>
+ <C C4304 1 70 420 -26 17 1 2 "100 nF" 1 "1.66" 1 "polar" 0>
+</Components>
+<Wires>
+ <-40 600 -40 620 "" 0 0 0 "">
+ <-40 580 -40 600 "" 0 0 0 "">
+ <610 380 670 380 "" 0 0 0 "">
+ <610 280 610 380 "" 0 0 0 "">
+ <610 280 680 280 "" 0 0 0 "">
+ <740 280 800 280 "" 0 0 0 "">
+ <740 400 800 400 "" 0 0 0 "">
+ <800 400 850 400 "" 0 0 0 "">
+ <800 280 800 400 "" 0 0 0 "">
+ <100 420 520 420 "" 0 0 0 "">
+ <1220 240 1220 290 "" 0 0 0 "">
+ <1100 240 1100 300 "" 0 0 0 "">
+ <1100 140 1100 180 "" 0 0 0 "">
+ <180 160 340 160 "" 0 0 0 "">
+ <340 160 340 260 "" 0 0 0 "">
+ <340 260 480 260 "" 0 0 0 "">
+ <480 180 480 260 "" 0 0 0 "">
+ <450 180 480 180 "" 0 0 0 "">
+ <450 140 520 140 "" 0 0 0 "">
+ <520 140 880 140 "" 0 0 0 "">
+ <520 140 520 200 "" 0 0 0 "">
+ <420 380 610 380 "" 0 0 0 "">
+ <1220 20 1220 180 "" 0 0 0 "">
+ <880 20 1220 20 "" 0 0 0 "">
+ <880 140 1100 140 "" 0 0 0 "">
+ <880 120 880 140 "" 0 0 0 "">
+ <880 20 880 60 "" 0 0 0 "">
+ <520 420 670 420 "" 0 0 0 "">
+ <520 260 520 420 "" 0 0 0 "">
+ <880 140 880 160 "" 0 0 0 "">
+ <880 220 880 260 "" 0 0 0 "">
+ <340 160 380 160 "" 0 0 0 "">
+ <-40 580 80 580 "" 0 0 0 "">
+ <-40 520 80 520 "" 0 0 0 "">
+ <100 380 360 380 "" 0 0 0 "">
+ <-40 380 -40 520 "" 0 0 0 "">
+ <-40 380 40 380 "" 0 0 0 "">
+ <-140 420 -140 600 "" 0 0 0 "">
+ <-140 420 40 420 "" 0 0 0 "">
+ <850 400 850 400 "Vout" 870 350 0 "">
+ <520 140 520 140 "Vmid" 560 80 0 "">
+</Wires>
+<Diagrams>
+ <Rect 118 781 362 184 3 #c0c0c0 1 10 1 0 1000 10000 1 10 1 30 1 -1 0.5 1 315 0 225 "" "" "">
+ <"db" #0000ff 0 3 0 0 0>
+ </Rect>
+ <Rect 540 784 357 184 3 #c0c0c0 1 10 1 0 2000 10000 1 -6.02409 20 68.6681 1 -1 0.5 1 315 0 225 "" "" "">
+ <"ph" #0000ff 0 3 0 0 0>
+ </Rect>
+ <Rect 976 784 362 184 3 #c0c0c0 1 10 0 10 2000 10000 1 -0.00106631 0.005 0.012901 1 -1 1 1 315 0 225 "" "" "">
+ <"Vmid.v" #0000ff 0 3 0 0 0>
+ </Rect>
+</Diagrams>
+<Paintings>
+ <Text 240 350 12 #000000 0 "MIC2N">
+ <Text 250 430 12 #000000 0 "MIC2">
+ <Text 250 130 12 #000000 0 "VREF">
+ <Text 1030 110 12 #000000 0 "VMID">
+ <Text 1030 -10 12 #000000 0 "AVDD">
+ <Rectangle 300 -20 720 500 #00aa00 2 2 #c0c0c0 1 0>
+</Paintings>
Added: developers/werner/mic/dat2qdf
===================================================================
--- developers/werner/mic/dat2qdf (rev 0)
+++ developers/werner/mic/dat2qdf 2008-07-07 12:47:52 UTC (rev 4511)
@@ -0,0 +1,2 @@
+#!/usr/bin/awk -f
+!/^;/ { print $1 "," $2 }
Property changes on: developers/werner/mic/dat2qdf
___________________________________________________________________
Name: svn:executable
+ *
Added: developers/werner/mic/out2dat
===================================================================
--- developers/werner/mic/out2dat (rev 0)
+++ developers/werner/mic/out2dat 2008-07-07 12:47:52 UTC (rev 4511)
@@ -0,0 +1,71 @@
+#!/usr/bin/perl
+
+
+sub usage
+{
+ print STDERR "usage: $0 [-a] [-f factor] [-o offset] [-s skip] file ...\n";
+ print STDERR " -a autoscale\n";
+ print STDERR " -f factor multiply with factor\n";
+ print STDERR " -o offset subtract DC offset\n";
+ print STDERR " -s skip skip that many seconds\n";
+ exit(1);
+}
+
+
+while ($ARGV[0] =~ /^-/) {
+ $opt = shift @ARGV;
+ if ($opt eq "-a") {
+ $auto = 1;
+ }
+ elsif ($opt eq "-f") {
+ $f = shift @ARGV;
+ }
+ elsif ($opt eq "-o") {
+ $offset = shift @ARGV;
+ }
+ elsif ($opt eq "-s") {
+ $skip = shift @ARGV;
+ }
+ else {
+ &usage;
+ }
+}
+
+&usage if $auto && defined $factor;
+
+while (<>) {
+ chop;
+ if (/<indep time \d+>/) {
+ *a = *t;
+ next;
+ }
+ elsif (/<dep Vout.Vt time>/) {
+ *a = *v;
+ next;
+ }
+ elsif (/</) {
+ undef *a;
+ }
+ next unless defined *a;
+ s/^\s*//;
+ push(@a, $_);
+}
+print "; Sample Rate ", 1/($t[1]-$t[0]), "\n";
+if (defined $skip) {
+ while ($t[0] < $skip) {
+ pop(@t);
+ pop(@v);
+ }
+}
+if ($auto) {
+ $f = 0;
+ for (@v) {
+ $f = abs($_-$offset) if $f < abs($_-$offset);
+ }
+ $f = 1/$f;
+ print STDERR "f=$f\n";
+}
+print "; Channels 1\n";
+for ($i = 0; $i != @t; $i++) {
+ print $t[$i], " ", ($v[$i]-$offset)*$f, "\n";
+}
Property changes on: developers/werner/mic/out2dat
___________________________________________________________________
Name: svn:executable
+ *
Added: developers/werner/mic/wolfson.sch
===================================================================
--- developers/werner/mic/wolfson.sch (rev 0)
+++ developers/werner/mic/wolfson.sch 2008-07-07 12:47:52 UTC (rev 4511)
@@ -0,0 +1,103 @@
+<Qucs Schematic 0.0.13>
+<Properties>
+ <View=-214,-40,1426,928,1,0,0>
+ <Grid=10,10,1>
+ <DataSet=wolfson.dat>
+ <DataDisplay=wolfson.dpl>
+ <OpenDisplay=1>
+ <showFrame=0>
+ <FrameText0=Title>
+ <FrameText1=Drawn By:>
+ <FrameText2=Date:>
+ <FrameText3=Revision:>
+</Properties>
+<Symbol>
+</Symbol>
+<Components>
+ <GND * 1 -40 600 0 0 0 0>
+ <R R2 1 390 380 -26 -59 0 2 "18 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <OpAmp OP2 1 700 400 -26 -86 1 0 "1e6" 1 "15 V" 0>
+ <Vac V1 1 -40 550 18 -26 0 1 "0.1 V" 1 "1 kHz" 0 "0" 0 "0" 0>
+ <R R1 1 710 280 -26 -59 1 0 "125 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <GND * 1 1220 290 0 0 0 0>
+ <Vdc V2 1 1220 210 18 -26 0 1 "3.3 V" 1>
+ <GND * 1 1100 300 0 0 0 0>
+ <OpAmp OP3 1 420 160 -26 42 1 2 "1e6" 1 "15 V" 0>
+ <GND * 1 880 260 0 0 0 0>
+ <R R3 1 520 230 15 -26 0 1 " 163 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <Eqn Eqn1 1 -130 700 -31 17 0 0 "db=dB(Vout.v/V1.U)" 1 "ph=phase(Vout.v)" 1 "yes" 0>
+ <C C4305 0 70 380 -26 -83 0 2 "100 nF" 1 "1.66" 1 "polar" 0>
+ <GND * 1 -140 600 0 0 0 0>
+ <.AC AC1 1 20 70 0 44 0 0 "log" 1 "10 Hz" 1 "10 kHz" 1 "1000" 1 "no" 0>
+ <.DC DC1 1 -160 -20 0 44 0 0 "26.85" 0 "0.001" 0 "1 pA" 0 "1 uV" 0 "no" 0 "150" 0 "no" 0 "none" 0 "CroutLU" 0>
+ <Vfile V3 0 80 550 18 -26 0 1 "/home/moko/svn.openmoko.org/developers/werner/mic/test.qdf" 1 "cubic" 0 "no" 0 "1" 0 "0" 0>
+ <R R5 1 880 190 15 -26 0 1 "50 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <R R4 1 880 90 15 -26 0 1 "50 kOhm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
+ <C C3013 1 1100 210 17 -26 1 3 "4.7 uF" 1 "1.67" 1 "polar" 0>
+ <C C4304 1 70 420 -26 17 1 2 "1 uF" 1 "1.66" 1 "polar" 0>
+ <.TR TR1 0 -160 60 0 73 0 0 "lin" 1 "0" 1 "10 s" 1 "800000" 1 "AdamsMoulton" 1 "6" 1 "1 ns" 0 "1e-16" 0 "150" 0 "0.001" 0 "1 pA" 0 "1 uV" 0 "26.85" 0 "1e-3" 0 "1e-6" 0 "1" 0 "CroutLU" 0 "no" 0 "yes" 0 "0" 0>
+</Components>
+<Wires>
+ <-40 600 -40 620 "" 0 0 0 "">
+ <-40 580 -40 600 "" 0 0 0 "">
+ <610 380 670 380 "" 0 0 0 "">
+ <610 280 610 380 "" 0 0 0 "">
+ <610 280 680 280 "" 0 0 0 "">
+ <740 280 800 280 "" 0 0 0 "">
+ <740 400 800 400 "" 0 0 0 "">
+ <800 400 850 400 "" 0 0 0 "">
+ <800 280 800 400 "" 0 0 0 "">
+ <-40 420 -40 520 "" 0 0 0 "">
+ <-40 420 40 420 "" 0 0 0 "">
+ <100 420 520 420 "" 0 0 0 "">
+ <1220 240 1220 290 "" 0 0 0 "">
+ <1100 240 1100 300 "" 0 0 0 "">
+ <1100 140 1100 180 "" 0 0 0 "">
+ <180 160 340 160 "" 0 0 0 "">
+ <340 160 340 260 "" 0 0 0 "">
+ <340 260 480 260 "" 0 0 0 "">
+ <480 180 480 260 "" 0 0 0 "">
+ <450 180 480 180 "" 0 0 0 "">
+ <450 140 520 140 "" 0 0 0 "">
+ <520 140 880 140 "" 0 0 0 "">
+ <520 140 520 200 "" 0 0 0 "">
+ <420 380 610 380 "" 0 0 0 "">
+ <1220 20 1220 180 "" 0 0 0 "">
+ <880 20 1220 20 "" 0 0 0 "">
+ <880 140 1100 140 "" 0 0 0 "">
+ <880 120 880 140 "" 0 0 0 "">
+ <880 20 880 60 "" 0 0 0 "">
+ <520 420 670 420 "" 0 0 0 "">
+ <520 260 520 420 "" 0 0 0 "">
+ <880 140 880 160 "" 0 0 0 "">
+ <880 220 880 260 "" 0 0 0 "">
+ <-140 380 -140 600 "" 0 0 0 "">
+ <-140 380 40 380 "" 0 0 0 "">
+ <340 160 380 160 "" 0 0 0 "">
+ <-40 580 80 580 "" 0 0 0 "">
+ <-40 520 80 520 "" 0 0 0 "">
+ <180 380 360 380 "" 0 0 0 "">
+ <180 160 180 380 "" 0 0 0 "">
+ <100 380 180 380 "" 0 0 0 "">
+ <850 400 850 400 "Vout" 870 350 0 "">
+ <520 140 520 140 "Vmid" 560 80 0 "">
+</Wires>
+<Diagrams>
+ <Rect 118 781 362 184 3 #c0c0c0 1 10 1 0 1000 10000 1 10 1 30 1 -1 0.5 1 315 0 225 "" "" "">
+ <"db" #0000ff 0 3 0 0 0>
+ </Rect>
+ <Rect 540 784 357 184 3 #c0c0c0 1 10 1 0 2000 10000 1 -6.02409 20 68.6681 1 -1 0.5 1 315 0 225 "" "" "">
+ <"ph" #0000ff 0 3 0 0 0>
+ </Rect>
+ <Rect 976 784 362 184 3 #c0c0c0 1 10 0 10 2000 10000 1 -0.00106631 0.005 0.012901 1 -1 1 1 315 0 225 "" "" "">
+ <"Vmid.v" #0000ff 0 3 0 0 0>
+ </Rect>
+</Diagrams>
+<Paintings>
+ <Text 240 350 12 #000000 0 "MIC2N">
+ <Text 250 430 12 #000000 0 "MIC2">
+ <Text 250 130 12 #000000 0 "VREF">
+ <Text 1030 110 12 #000000 0 "VMID">
+ <Text 1030 -10 12 #000000 0 "AVDD">
+ <Rectangle 300 -20 720 500 #00aa00 2 2 #c0c0c0 1 0>
+</Paintings>
More information about the commitlog
mailing list