Determining the frequency of any point returned is determined by the function where 'n' is a zero based
sample point.
Real-Time Analysis
The API provides the functionality of an online real-time spectrum analyzer for the full instantaneous
bandwidth of the device (20MHz for the BB60A, 27MHz for the BB60C). Through the use of FFTs at an
overlapping rate of 50%, the spectrum results have no blind time (100% probability of intercept) for
events as short as 50ns. Due to the demands in processing, restrictions are placed on resolution
bandwidth. Video bandwidth is non-configurable.
The configuration routines which affect the spectrum results are
bbConfigureAcquisition() – Configure detector and linear/logarithmic scale
bbConfigureCenterSpan() – Configure center frequency and span of no more than
the devices maximum instantaneous bandwidth, specified in the header macros.
bbConfigureLevel() – Configure reference level and attenuators
bbConfigureGain() – Specify internal amplifiers
bbConfigureSweepCoupling() – Specify RBW
bbConfigureRealTime() – Specify the real-time update rate and frame scale
The number of sweep results far exceeds a program's capability to acquire, view, and process, therefore
the API combines sweeps results for a user specified amount of time. It does this in two ways. One, is
the API either max holds or averages the sweep results into a standard sweep. Also the API creates an
image frame which acts as a density map for every sweep result processed during a period of time. Both
the sweep and density map are returned at rate specified by the function bbConfigureRealTime. For a
full example of using real-time see
I/Q Streaming
The API is capable of providing programmers with a continuous stream of digital I/Q samples from the
device. The digital I/Q stream consists of interleaved 32-bit floating point I/Q pairs scaled to mV. The
digital samples are amplitude corrected providing accurate measurements. The I/Q data rate at its
highest is 40MS/s and can be decimated down by a factor of up to 128 (in powers of two). Each
decimation value further reduces the overall bandwidth of the I/Q samples, so the API also provides a
configurable band pass filter to control the overall passband of a given I/Q data stream. The I/Q data
stream can also be tuned to an arbitrary frequency value.
Configuration routines used to prepare streaming are
bbConfigureCenterSpan() – Set the center frequency of the I/Q data stream.
bbConfigureLevel() – See Gain and Attenuation in the Streaming Mode
bbConfigureGain() – See Gain and Attenuation in the Streaming Mode
bbConfigureIO() – Configure the BNC ports of the BB60.
bbConfigureIQ() – Specify the decimation and bandwidth of the I/Q data stream.
Once configured, initialize the device with the BB_STREAMING mode and the BB_STREAM_IQ flag. Data
acquisition begins immediately. The API buffers ~3/4 second worth of digital samples in circular buffers.
It is the responsibility of the user application to poll the samples via
Signal Hound | Modes of Operation
'
ℎ = + ∗
Appendix: Code Examples: Real-Time
Mode.
fast enough to
bbFetchRaw()
9
Need help?
Do you have a question about the BB60C and is the answer not in the manual?