sample & hold timing again....

Roel Das Roel.Das at student.groept.be
Sat Apr 22 17:16:00 CEST 2000


Hello again...

I was just making some calculations on the timing. (With the help of the
many responses from last week, thanks...)

This is what I found out:
I'm using a serial DAC, the DAC716 in 2 wire mode. (PCB is finished, no way
back)
This means; the mux has to be disabled while sending the data thru, every
change in data appears at the ouput.

Now, to send 16 bits at 2MHz (The fastest my µP can handle), you need 80 µs.

This needs to be done 16 times. PLUS settling time of 6µs and an extra
transition time, when the mux is enabled. (Take that total 20 µs)

This results in about 100 µs per channel. Taken into count that there are 16
channels; this means 1.6 ms total.

This won't work. (more calculations below...)
I'm really freakin' out. Best thing to do is get rid of the 2 wire
operation.

The main question: can I fix this for now, by cutting the traces on the pcb,
and connecting the pins with wires? Can it work that way? I will make a new
PCB for it, once , but don't have the time at the moment. (This is more than
an endwork project. It will be mine, has to be perfect...)

If I do it this way, timing won't be an issue. The mux can be enabled as
long as the µP is sending data, which means about 80 µs. Together that's
still 1280 µs. But this also means the caps can be really big, which lowers
the ripple alot.

Anyway, some people suggested that refresh time should be 1ms, any reasons
for that? Is 1280 close enough?

Other things I can fix in the upgrade?

Oh boy. think i'm getting in a bad mood.

Thanks...
Roel.

I guess I learned alot today. Damn. Hate to learn the hard way. Teachers
ain't gonna like this...

----------------------------------------------------------------------------
-----------------------------
some more calculations as the mails suggested:

to get the cap loaded to a value lower than 1/2 LSB of the DAC, taken into
account the 400 ohm Ron value for the DG506 mux ( max 400 ohm, typical 270);
the time is t = R * C * 11.78 = 4712 * C

The total time for one channel = 80 µs + 6 µs + (4712 * C)
Total time = 1376 µs + 75392 * C

----------------------------------------------------------------------------
------------------------------
Back with the 100 µs per channel...

When you aproximate the ripple by using VoltsPerSecond = CurrentInAmps /
CapacitanceInFarads

or V / t = I / C

The leakage current of the DG506 mux = 300 nA !!!!; that of the tl072 is
much lower...
I do use an upgrade however with leakage of 20 nA (maxim 336, I don't know
it's price however, it's a sample...)

This gives V = 20nA * 1.6ms / C

This means: to get the ripple lower than 1 LSB (=0.15mV), the cap has to be
bigger than approx. 200 nF

All together: it's not gonna work. oh jee.



















More information about the Synth-diy mailing list