Odp: [sdiy] Getting back to my Midi->CV converter...
harrybissell
harrybissell at prodigy.net
Sun Oct 13 06:41:30 CEST 2002
Hi Seb (et al)
since you are doing ALL NEW research... why not use some
programmable current source to charge / discharge a cap to
do the LFO's... instead of setting the next voltage, you set the
next rate of change. This would make the wave from line
segments instead of stairsteps...
or am I all wet?
H^) harry
Seb Francis wrote:
> Hi Roman,
>
> This is why I'm so happy that I'm able to post things to this list :-)
>
> I had not even considered this (showing my inexperience ...) In fact I had never even heard of charge injection. I've had a quick scan through an electronics book and discovered that it's a typical effect with FET switches.
>
> I found the following formula:
> Q = C(Vf - Vs)
> C - gate-capacitance
> Vf - finishing voltage
> Vs - starting voltage
>
> This seems to suggest that the amount of charge injected depends on the voltage step (so it's not constant). Also, the S&H can go negative or positive, so charge injection could probably go in either direction (not sure about this one). I had wondered what the cause the non-linearity specs on S&H datasheets was - this must be some part of it.
>
> I guess you just use the formula Q=CV to calculate the voltage effect of the charge injected? So using 10nF caps would result in max error of about 1mV in the worst case quoted on the MAX306 datasheet (or 0.2mV in the typical case).
>
> I assume using larger caps will also reduce the effect of MUX-crosstalk on the S&H voltage. I'm not sure how to calculate this effect from the quoted crosstalk figure of -92dB. Any ideas?
>
> Unfortunatly this increases the S&H settle time to about 20us which will limit the total refresh rate of all 15CVs to about 2KHz what with the serial data transmission, DAC settling time, etc... This is a shame because I was kind of aiming for 5KHz since I want to have digital LFOs running at up to 100Hz (and wanted 50 samples per cycle to get a smooth wave). However, I think I can live with 2KHz - all the calculations for LFOs, envelopes, portamento, etc.. were looking like they wouldn't quite fit with the refresh rate in any case.
>
> Seb
>
> Roman wrote:
>
> > what about charge injection?
> > at MAX306's specified typical 2pC and your chosen 2n2 S&H cap
> > it will cause voltage error of about 1mV. At 10pC max it goes wild
> > causing huge 5mV error! ;)
> >
> > Is the charge injection constant? Does it change direction? Can it
> > be trimmed out? Or DAC could write 5mV less accounting for
> > expected MAX's influence?
> >
> > Roman
> >
> > ----- Original Message -----
> > From: Seb Francis <seb at is-uk.com>
> > To: patchell <patchell at silcom.com>
> > Cc: <synth-diy at dropmix.xs4all.nl>
> > Sent: Saturday, October 12, 2002 4:03 AM
> > Subject: Re: [sdiy] Getting back to my Midi->CV converter...
> >
> > > As it goes, I've just been doing the S&H capacitor maths for my own MIDI 2 CV,
> > maybe this saves you the trouble ...
> > >
> > > My DAC accuracy is 1/2 LSB at 14bit (about 0.5mV with FSR of 15V - it needs to
> > be -7.5V->7.5V for the digital envelopes)
> > > Desired accuracy is within 1mV (just over a cent at 1V/Octave)
> > >
> > > So desired S&H accuracy is 0.5mV
> > >
> > > Taking 2.2nF caps as a starting point
> > > MAX306 MUX max resistance is 175R
> > >
> > > t - time in seconds
> > > V - "good enough" final voltage (14.9995V)
> > > Vi - DAC voltage (15V)
> > >
> > > V=Vi * ( 1 - e^(-t/RC) )
> > > t = -ln(1 - V/Vi) * RC
> > > ~= 4us for the above cap and a FSR of 15V
> > >
> > > So I figured 5us is enough time to wait for the S&H to settle. It could be
> > reduced by using smaller caps, but I want to have digital LFOs and envelopes,
> > and the PIC will be busy enough calculating these during the 5us pause (25 whole
> > instructions!). And anyway, I guess the output could end up a bit "stepped" if
> > the caps were too small.
> > > I'm planning on refreshing the 15 S&Hs pretty frequently in order to get
> > reasonably smooth LFOs up to 100Hz if possible. If you are refreshing much
> > slower (e.g. full S&H cycle once per ms) then bigger caps might be better to
> > avoid droop - I didn't do any calculations for this yet.
> > >
> > > Personally I'm using polystyrene caps (and low-offset, low-drift opamps of
> > course)
> > >
> > > Seb
> > >
> > >
> > >
> > > Grant Richter wrote:
> > >
> > > > Bear in mind the refresh rate is also the latency time. You need to refresh
> > > > every channel once a millisecond. Also use polycarbonate caps for the sample
> > > > and holds.
> > > >
> > > > I build a large scanned sample and hold array (80 channels) for testing
> > > > infared temperature detectors. Getting 12 bit accuracy at high speed was
> > > > quite a challenge. You can really see dielectric absorption in action!
> > > >
> > > > > From: patchell <patchell at silcom.com>
> > > > > Date: Thu, 10 Oct 2002 21:46:35 -0700
> > > > > To: "synth-diy at dropmix.xs4all.nl" <synth-diy at dropmix.xs4all.nl>
> > > > > Subject: [sdiy] Getting back to my Midi->CV converter...
> > > > >
> > > > > http://www.silcom.com/~patchell/miditocv/miditocv.html
> > > > >
> > > > > I noticed I originally posted that page about 4 years ago...my how
> > > > > time flies.
> > > > >
> > > > > The web page gives a very brief description of what I plan on doing,
> > > > > plus, I posted a schematic of the FPGA I just got to compile that is
> > > > > going to do the DMA services for updating the sample/holds...yep, I said
> > > > > DMA...just call me crazy Jim...it has been a while since I did a DMA
> > > > > (about 15 years), so I decided to so this to get my feet wet again
> > > > > before tackling the nasty one I am going to start at work.
> > > > >
> > > > > --
> > > > > -Jim
> > > > > ------------------------------------------------
> > > > > * Visit:http://www.silcom.com/~patchell/
> > > > > *-----------------------------------------------
> > > > > *I'm sure glad Merry Christmas comes just once a year
> > > > > * -Yogi Yorgensen
> > > > > ------------------------------------------------
> > > > >
> > > > >
> > > > >
> > >
More information about the Synth-diy
mailing list