RFNoC RX Radio
Jump to navigation
Jump to search
The RFNoC RX Radio block is used to stream samples from the USRP receiver into the RFNoC module. Its functionality is very similar to the
USRP Source Block, with the distinction that the output can be
instantly processed in the FPGA part of the USRP. Therefore, this block allows for lower latency and real-time
processing, which is beneficial in applications requiring tight integration between the RF front-end and the digital
signal processing chain. This enables more efficient handling of high data rates and computationally intensive tasks
directly within the FPGA.
Parameters
(R): Run-time adjustable
- Channel count
- default: 1
- This specifies the number of channels / streams to be used with the block.
- Block Args
- default: ""
- Viable properties can be found at RFNoC Radio control.
- Device Select / Instance Select
- Default: -1 / Default: -1
- These properties specify the device and instance to be used. It is best practice to always explicitly specify both. This is crucial because many USRP setups involve multiple instances of different blocks, and GNU Radio tends to select the first device or instance it finds, which may not be the most suitable choice. Explicit specification helps to prevent errors and ensures the correct setup is used.
- - Use uhd_usrp_probe to determine the correct device and instance numbers.
- - Always specify the device and instance explicitly to avoid automatic mismatches by GNU Radio.
- Even with a single device with multiple instances:
- - 0/Radio#0 → Device 0, Instance 0
- - 0/Radio#1 → Device 0, Instance 1
- Specification with multiple devices:
- - 0/Radio#1 → Device 0, Instance 1
- - 1/Radio#1 → Device 1, Instance 1
- By consistently specifying the device and instance, you ensure that the most appropriate settings are applied and avoid potential issues caused by automatic selection.
- Sample Rate (Hz)
- dtype: real
- The number of samples per second, which is equal to the bandwidth in Hz we wish to observe. The UHD device driver will try its best to match the requested sample rate. If the requested rate is not possible, the UHD block will print an error at runtime.
- Ch0 Antenna Select
- options: [TX/RX, RX2, RX1]
- default: RX2
- For subdevices with only one antenna, this may be left on default. Otherwise, the user should specify one of the possible antenna choices. See the daughter-board application notes for the possible antenna choices.
- Ch0 Center Frequency (Hz)
- default: 1e9
- Specifies the center frequency used for downconversion. This frequency is the focal point around which the incoming signal is shifted to a lower frequency for further processing, ensuring accurate capture of the target frequency band.
- Ch0 Gain
- default: 0
- Value used for gain, which is either between 0 and the max gain for the USRP (usually around 70 to 90), when using the default "Absolute" Gain Type.
- Ch0 Bandwidth (Hz)
- default: 0
- The bandwidth used by the USRP's anti-aliasing filter. To use the default bandwidth filter setting, this should be zero. Only certain subdevices have configurable bandwidth filters. See the daughterboard application notes for possible configurations.
- Ch0 DC Offset Correction
- options: ['True', 'False']
- default: 'False'
- Attempts to remove the DC offset, i.e. the average value of a signal, which is something that will be very visible in the Frequency domain.
- Ch0 IQ Balance
- options: ['True', 'False']
- default: 'False'
- Attempts to correct any IQ imbalance, which is when there is a mismatch between the I and Q signal paths, typically causing a stretching effect to a constellation.
- Ch0 Enable Timestamps
- options: ['True', 'False']
- default: 'True'
- Controls whether or not a channel has timestamps
- Ch1 Antenna Select
- options: [TX/RX, RX2, RX1]
- default: RX2
- For subdevices with only one antenna, this may be left on default. Otherwise, the user should specify one of the possible antenna choices. See the daughter-board application notes for the possible antenna choices.
- Ch1 Center Frequency (Hz)
- default: 1e9
- Specifies the center frequency used for downconversion. This frequency is the focal point around which the incoming signal is shifted to a lower frequency for further processing, ensuring accurate capture of the target frequency band.
- Ch1 Gain
- default: 0
- Value used for gain, which is either between 0 and the max gain for the USRP (usually around 70 to 90), when using the default "Absolute" Gain Type.
- Ch1 Bandwidth (Hz)
- default: 0
- The bandwidth used by the USRP's anti-aliasing filter. To use the default bandwidth filter setting, this should be zero. Only certain subdevices have configurable bandwidth filters. See the daughterboard application notes for possible configurations.
- Ch1 DC Offset Correction
- options: ['True', 'False']
- default: 'False'
- Attempts to remove the DC offset, i.e. the average value of a signal, which is something that will be very visible in the Frequency domain.
- Ch1 IQ Balance
- options: ['True', 'False']
- default: 'False'
- Attempts to correct any IQ imbalance, which is when there is a mismatch between the I and Q signal paths, typically causing a stretching effect to a constellation.
- Ch1 Enable Timestamps
- options: ['True', 'False']
- default: 'True'
- Controls whether or not a channel has timestamps
- Ch2 ;Ch0 Antenna Select
- options: [TX/RX, RX2, RX1]
- default: RX2
- For subdevices with only one antenna, this may be left on default. Otherwise, the user should specify one of the possible antenna choices. See the daughter-board application notes for the possible antenna choices.
- Ch2 Center Frequency (Hz)
- default: 1e9
- Specifies the center frequency used for downconversion. This frequency is the focal point around which the incoming signal is shifted to a lower frequency for further processing, ensuring accurate capture of the target frequency band.
- Ch2 Gain
- default: 0
- Value used for gain, which is either between 0 and the max gain for the USRP (usually around 70 to 90), when using the default "Absolute" Gain Type.
- Ch2 Bandwidth (Hz)
- default: 0
- The bandwidth used by the USRP's anti-aliasing filter. To use the default bandwidth filter setting, this should be zero. Only certain subdevices have configurable bandwidth filters. See the daughterboard application notes for possible configurations.
- Ch2 DC Offset Correction
- options: ['True', 'False']
- default: 'False'
- Attempts to remove the DC offset, i.e. the average value of a signal, which is something that will be very visible in the Frequency domain.
- Ch2 IQ Balance
- options: ['True', 'False']
- default: 'False'
- Attempts to correct any IQ imbalance, which is when there is a mismatch between the I and Q signal paths, typically causing a stretching effect to a constellation.
- Ch2 Enable Timestamps
- options: ['True', 'False']
- default: 'True'
- Controls whether or not a channel has timestamps
- Ch3 ;Ch0 Antenna Select
- options: [TX/RX, RX2, RX1]
- default: RX2
- For subdevices with only one antenna, this may be left on default. Otherwise, the user should specify one of the possible antenna choices. See the daughter-board application notes for the possible antenna choices.
- Ch3 Center Frequency (Hz)
- default: 1e9
- Specifies the center frequency used for downconversion. This frequency is the focal point around which the incoming signal is shifted to a lower frequency for further processing, ensuring accurate capture of the target frequency band.
- Ch3 Gain
- default: 0
- Value used for gain, which is either between 0 and the max gain for the USRP (usually around 70 to 90), when using the default "Absolute" Gain Type.
- Ch3 Bandwidth (Hz)
- default: 0
- The bandwidth used by the USRP's anti-aliasing filter. To use the default bandwidth filter setting, this should be zero. Only certain subdevices have configurable bandwidth filters. See the daughterboard application notes for possible configurations.
- Ch3 DC Offset Correction
- options: ['True', 'False']
- default: 'False'
- Attempts to remove the DC offset, i.e. the average value of a signal, which is something that will be very visible in the Frequency domain.
- Ch3 IQ Balance
- options: ['True', 'False']
- default: 'False'
- Attempts to correct any IQ imbalance, which is when there is a mismatch between the I and Q signal paths, typically causing a stretching effect to a constellation.
- Ch3 Enable Timestamps
- options: ['True', 'False']
- default: 'True'
- Controls whether or not a channel has timestamps
Example Flowgraph
You can find this example at rfnoc_radio_loopback.grc
Source Files
- C++ files
- rfnoc_rx_radio_impl.cc
- Header files
- rfnoc_rx_radio_impl.h
- Public header files
- rfnoc_rx_radio.h
- Block definition
- uhd_rfnoc_rx_radio.block.yml