Counter/Timer

cancel
Showing results for 
Search instead for 
Did you mean: 

Digital counter speeds

Hi everyone,

 

I am currently using a NI 9401 with a NI cDAQ 9172. I am using the onboard counter to do the following (pseudo-code):

 

- on every digital edge on counter-input pin 1 : p=p+1

- if (p = 100) { toggle output pin 2; p=0 }

 

It is working great for frequencies in the 10 MHz range.

 

I now want to do the same counting procedure at a rate of 100 MHz.

If I understand the datasheets correctly then this should not be possible with my current hardware. Is this correct?

 

I had the idea to buy and use an NI myRIO board to do this. What would you expect to be the highest input frequency the above code would work with? In your opinion: would that be the "way to go"?

 

Cheers!

 

0 Kudos
Message 1 of 3
(5,138 Views)

Hi choberg,

 

the cDAQ chassis 9172 offers 4 build in counter with a maximum frequency of 80 MHz. It will not be possible to deal with a 100MHz signal on the 9172. All cDAQ chassis are capable to deal with signals up to 80 MHz so this platform is not the right for the 100 MHz signal.

 

NI cDAQ-9178 Specifications - Page 3
https://www.ni.com/docs/en-US/bundle/cdaq-9178-specs/page/specs.html

 

The myRIO is not designed to deal with a digital signal of 100 MHZ. According to the datasheet, you will not be able to run the digital lines with 100MHz.

 

NI myRIO-1900 User Guide and Specifications - 376047a.pdf
https://www.ni.com/docs/en-US/bundle/myrio-1900-getting-started/resource/376047d.pdf

 

If you realy need to process a 100 Mhz signal on the fly, you need something like FlexRIO:

 

NI 6585R - National Instruments
https://www.ni.com/en-us/shop/model/ni-6585.html

 

The cDAQ, myRIO, cRIO plattform is not suited for your task.

 

Stephan

0 Kudos
Message 2 of 3
(5,072 Views)

Most of the NI DAQ products have limited bandwidth on their front ends that prohibit you from acquiring high frequency signals (above ~25 MHz on most M and X Series for example).  While these cards may have faster timebases (100 MHz in the case of X Series, 80 for M Series and cDAQ), external signals cannot exceed whatever the front-end is capable of passing through.  On the cDAQ / cRIO platform I believe the highest bandwidth TTL module is still the 9402 which is nowhere near capable of passing the 100 MHz signal (or even 80 MHz).

 

I'm not as familiar with myRIO but it has a "minimum pulse width" spec of 20 ns, which makes me think it has the same bandwidth as the X Series digital inputs (20 ns pulse widths at 50% duty cycle gives a 25 MHz limit).

 

The FlexRIO seems a bit excessive for the task you are asking (though I guess you could probably get something working using the 6581 FAM).

 

 

Instead, I would recommend looking into the 6602--its input bandwidth is far higher than that of other DAQ cards and it has the counters necessary to divide down the external signal to produce what you need.  It is also programmed with the same driver as your existing solution.  The 6602 allows for external signals up to 125 MHz (if using the pre-scaling feature, which effectively means you only increment your counter for every 2 ticks of your external signal).  I seem to remember that even without using pre-scaling the 6602 can go higher than the specified 80 MHz, so you might be able to do it without prescaling anyway (but don't quote me on that).

 

 

 

Best Regards,

John Passiak
0 Kudos
Message 3 of 3
(5,046 Views)