05-03-2006 06:23 PM
05-04-2006 08:49 AM
It doesn't appear that a 6259 can handle TTL at 50 MHz. You'd need to sample at >100 MHz. It's not clear how many channels you have, but assuming that it's one channel per column in your image, you're stuck with:
Analog Acq: (1 / # channels) MHz sampling rate, supports 1-32 channels.
Correlated Digital Input: 10 MHz sampling rate independent of # channels, supports 1-32 channels.
Counter / Timer: Accepts external inputs <= 20 MHz, limit of 2 channels.
My recommendation: Buy one or more PCI-6602 counter / timer cards. Each will provide you with 8 channels for the TTL pulses. These boards support a feature called *prescaling* which can divide down an external signal of 100+ MHz by a factor of 8. (I haven't used the prescaling feature with multiple channels but I *think* you can use it on all 8 at once.)
Supposing you sample every 10 msec. The data acq board's hw counters increment based on the incoming 50 MHz pulses. You sample that count value only 1 time each 10 msec, producing data for yourself at a rate of (# channels)*(100 samples / sec / channel)*(4 Bytes / channel).
Compare that with AI or hw-clocked DI at 100 MHz. You'd get a data rate of (# channels)*(100e6 samples / sec / channel)*(1 to 8 Bytes / channel), which probably isn't even possible on a PC.
-Kevin P.
05-04-2006 11:26 AM
05-04-2006 11:54 AM
1. The sampling specs for the 6259 can be found by following the "Specifications" link(s) on its main product page at ni.com. It lists 1 MHz (aggregate) meaning that with 32 channels, you'll get a A->D rate of 1 MHz split among them, i.e., 31.25 kHz per channel.
2. What's the rationale for doing D->A and then A->D? Is it because of the channel count? You'll be introducing some error with this method.
3. Guessing that your channel count is 32 as you previously mentioned, your alternatives look like:
A. Build circuit board with 32 hardware counter chips and 32 DAC's to produce 32 analog signals proportional to counts. Counts must be resettable based on the A->D strobe. Spend a *long time* designing the board, getting it fabbed, and then hanging out with solder iron and o'scope getting it all debugged. Use 6259 to clock in 32 Analog signals.
B. Buy 4 PCI-6602's, 4 terminal blocks, and 1 RTSI cable. Spend a couple days or so adapting an example program to directly read 32 count values free from the D->A->D noise.
-Kevin P.
05-04-2006 02:18 PM
05-04-2006 03:26 PM
FYI, there are probably plenty of other alternative ways to approach your problem other than what you or I have come up with so far. For example, I initially thought of this purely as a standard analog / digital acquisition problem, where the assembly of data into an image was just a visualization option.
In any event, to the extent you're considering LabVIEW or NI data acq boards in your solution, I'd highly recommend calling your local NI Sales/Tech Rep. You'll be able to have a much more detailed conversation which will lead to a more optimal overall solution than I'm liable recommend.
There are different possible cables / terminal blocks for the 6602, but if you've got a tight budget you may be surprised -- the combo I have normally ordered costs another $450 per board (2 meter shielded high-speed-digital cable, SCB-68 shielded terminal block enclosure).
-Kevin P., out here in a good-sized company, where the money value of time is typically much much higher than in university.