05-28-2010 11:16 AM
To Henrik: Thanks for your suggestion. Unfortunately I have to use a PCI or PCIe card to work together with my PCI digitizer.
Thanks a lot. Daniel.
Actually my experiment run will be next month so I have to run and I hope you can help me make a final decision quickly.
The task for the PCI2-6320 will be count for some digital pulse according to a start trigger for about 200ms-1s. There may be as high as 30k pulses during that time so the counting rate will be as high as 150kHz. The pulse width will be set to tens of ns. We don't need very high precision of timestamp of each pulse, 1us precision should be enough. After the PCIe-6320 finish the pulse counting another start trigger will be send to my NI4154 board and NI5154 should start data acquisition.
Currently I send digital pulses to channel 0 and another signal to channel 1 of NI5154. NI5154 will morning two start triggers (one for channel 0 and one channel 1) to counting pulses in channel 0 and waveform capture in channel 1. The PCIe-6320 should do the job of NI5154 channel 0 so Ni5154 does't need to switch between two channels as you know this takes time.
In summary each time the total number of digital pulse PCIe-6320 counted is related to the total number of waveforms will be captured in channel 1. We have two detectors: count and save timestamp of digital pulses from first one using PCIe-6320 and capture each waveform from second one. In each cycle PCIe-6320 count for few hundred ms and and Ni5154 capture waveform for a few seconds. Two start triggers will be sent in each cycle to trigger them separately. A labview data acquisition software will be used to control both device and fetch data from both device.
thanks and I hope you understand my measurement.
05-28-2010 02:16 PM
Hi Lixin,
So it sounds like the DAQ board will count pulses for some short time and then just later, the digitizer will acquire waveforms for a longer period of time. Thus, it does not appear that the boards need to be synchronized in any way, since you are not relating the pulses that are being counted and timestamped to the acquisition on the digitizer. It sounds like using the two different boards should work just fine for what you need, if the workaround of reducing the settling time is not ideal for what you need to perform all the measurements on just the digitizer.
Regards,
05-28-2010 02:48 PM - edited 05-28-2010 02:49 PM
Thanks a lot. Daniel.
I am still not clear about how you get the time stamps of each pulse. The 10 ns precision from the on-board 100MHz clock is certainly good enough for our counting purpose. Does the time stamp information saved in the buffer waiting for software featch? Can I trigger the counter for a 500ms long measurement and then read all data out once? how large is the buffer? I didn't get those information on the web?
best,
Lixin
05-28-2010 03:52 PM
Hi Lixin,
The idea is that you set the source of the counter (what is being counted) to be the timebase of the board, and then you set the gate to be your external signal. The reason it is buffered is that you only return the count when an external pulse is recognized on the gate. Therefore, when a pulse occurs, it returns the current count of the timebase as it is being counted on the source of the counter. By looking at the current count of the timebase, you can correlate when the pulse occurred relative to when you started counting. For example, if a pulse goes into the counter and it returns a count of 5000000 and then you get another pulse and it returns a count of 5005000, then you would know that those pulses were 5000 ticks apart, which for a 100 MHz timebase would equate to 50 µs.
More information on this type of measurement can be found with the following tutorial. There are also numerous examples available online and with the driver that can be used to achieve this functionality.
As far as whether or not you can read all the values at once, you should not have any problems doing a finite buffered counter measurement with 30k samples at a rate of about 150 kHz. I think the X Series card has a 127 sample FIFO for each counter, but the board will constantly be transferring the readings into your computer memory (RAM) through DMA transfer, so you should not have any problems with buffer overflows, and 30k samples per acquisition is not a very large amount of samples to store in your computer's RAM.
Regards,