For those who care, I have drawn up designs for the second iteration of my
BeagleBoard-based data acquisition platform.
This new design features 32 DAC channels and 32 ADC channels, both with 16-bit
resolution. The ADC sampling rate is a little lower than I would have liked
at 100ksamples/second (with the SPI bus running at 2MHz), but this should be
more than enough for most tasks. The DACs on the other hand can run at up to
20MHz (limited by the level shifters). Additionally, the board now exposes 8
GPIO pins behind a level shifter, making it possible to directly interface with
standard 5V TTL levels.
The ADC part I'm using is TI's ADS8344 and the DAC is TI's DAC8568. The level
shifters are TI's TXB0108 and the demultiplexer used for chip select is TI's
SN74AHC139. Altogether, the board is quite expensive. Each of the four DACs are
$25.00 and each of the four ADCs are $10. Thus, a fully populated board is
about $150 in parts alone. Far more expensive than I was hoping for, but it
seems that these prices are pretty common in the world of converters.
The board is designed to fit on a BeagleBoard XM-style expansion connector and
thus sits beneath the BeagleBoard.
One issue I encountered with the last design was the large in-rush of
current at startup which seems to cause the BeagleBoard to brown-out. This
makes it necessary to remove the board while starting up the BeagleBoard. While
I'm not certain of the cause of this, I suspect that the largish filter
capacitors (330uF IIRC) on the voltage rails might be at least in part to
blame. Anyone have any thoughts on this? I've reduced the value of these to
100uF, but it would be nice to have a slightly more certain solution.
If anyone has any comments, I would love to hear them. I think this design is
orders of magnitude better than the original, but there is no doubt still room
for improvement. In particular, I would love to hear suggestions about the PCB
layout. I took some steps to ensure good analog characteristics (e.g.
maintaining continuity in the ground plane), but I'm sure there are other
things that could be improved. Moreover, the reference supply is little more
than a RC filter. Is this sufficient or could there be a better option here
(perhaps an active voltage reference or Zener regulator)?
Anyways, I look forward to hearing any feedback that folks have. Thanks for