Generally for measurement applications data throughput can be calculated the following way:
Data Rate [bits/sec] = Sample Rate [Sample/s] * ADC bitness [bits/Sample]
However for RF applications normally the RFSA fetch function gets IQ data as 16 bits regardless of the ADC bitness. And also a big difference for RF is, that IQ data should be treated separately. So this will mean:
- 16 bits of I Data per Sample = 2 bytes
- 16 bits of Q Data per Sample = 2 bytes
- All together: 4 bytes per IQ Sample
So the equitation for total Data Rate will be the following:
Data Rate[bytes/sec] = IQ Rate [Sample/sec] * 4 [bytes/Sample]
This will mean if you have 100 MS/s IQ Rate it will result in a 400 MB/s Data Rate.
There will be cases when you will have only RF Bandwidth information. The relationship between IQ Rate and Bandwidth is the following:
BandWidth = IQ Rate * 0.8
Which means:
IQ Rate = 1.25 * BandWidth
So the equitation for total Data Throughput will be the following:
DataRate = 1.25 * BandWidth * 4
So
DataRate = 5* BandWidth
This will mean if you have 100MHz Bandwidth you will have a 500 MB / s Data Rate.
The situation is different in case of certain P2P examples where NI implements bitpacking. Bitpacking basically make use of 12bit ADC data as 12bit (not 16bit) thus saving the 4 bits in each loop iteration. So in some VSA code (like P2P), NI has a bitpacking logic that optimized this way. Please contact NI for more information.