If the SDRu Receiver block or System object™ is not keeping up with the hardware, you are not processing data in real time. Burst mode allows you to buffer a minimum set of contiguous samples without losing samples.
You must first determine if you need burst mode.
To determine if you should enable burst mode,
For more information, see Detect Underruns and Overruns.
If your model is not running in real time, you can:
Use Burst mode
Use vector-based processing
Accelerate with code generation
Any combination of these techniques may be applied to approach or achieve real-time performance.
Use burst mode when your model is experiencing underruns or overruns because it can’t keep up with the amount of data being sent or received in real time. Burst mode allows you to buffer a minimum set of contiguous samples without underruns or overruns.
Overruns and underruns can still happen between bursts, especially with large burst sizes. Therefore, enabling the burst mode feature is recommended only if your model cannot keep up in real time.
The maximum burst size (in frames) is imposed by the operating
system and the USRP™ device UHD™. The maximum size imposed
by the UHD is approximately 1 GB, or 256 megasamples. This maximum
number of samples is enforced by our software. For example, with
a frame size of 4000 samples, the maximum burst is approximately 67k
frames. Depending on the memory constraints on a specific host, a
lower limit may required. Exceeding the limit will be flagged by
'unable to allocate memory' error.
The default burst size is 100 frames.
Receiver Burst Mode Processing
When using burst mode for reception, the first SDRu receiver
object call transfers a whole burst to the host computer memory and
the SDRu receiver object processes the first frame. Subsequent SDRu
receiver object calls process the rest of the burst, one frame at
a time, from the host computer memory (not from the radio). When all
the frames in the transferred data have been processed, the next SDRu
receiver object call transfers another whole burst to the host computer
memory and the first frame of data is processed by the SDRu receiver
object. For example with
EnableBurstMode set to
For the first SDRu receiver object call, a whole burst (375,000 samples/frame
* 10 frames/burst = 3,750,000 samples/burst) is transferred to the
host computer memory and the SDRu receiver object processes the first
frame of data. For subsequent SDRu receiver object calls (second through
tenth calls), one frame at a time, is processed from the host computer
memory. After the whole burst has been processed, on the eleventh
SDru receiver object call, another whole burst is transferred from
the radio to the host computer memory and the first frame of data
is processed by the SDRu receiver object.
Transmitter Burst Mode Processing
When using burst mode for transmission, data is not transferred
to the radio until the SDRu transmitter object has been called
After the SDRu transmitter object has been called
the whole burst is transferred to the radio and transmitted.