Selecting a USRP Device
Application Note Number
|2016-05-01|| Neel Pandeya
This AN explores the USRP family at a high level, compares devices across several primary features, and walks the reader through the process of selecting a particular device for the their application.
USRP Product Selector
This guide is provided by Ettus Research to help users select the most appropriate Universal Software Radio Peripheral (USRP™) for their specific application. In order to make the selection process as straightforward as possible, a table showing various features is provided as a basis for the selection process.
Understanding DSP Fundamentals
If you are new to the USRP family of products, software defined radio, or digital signal processing in general, it may be useful to perform some simulation of the signals you wish to manipulate before selecting USRP hardware. Simulating signals and algorithms in software frameworks such as GNU Radio or LabVIEW will ensure a proper understanding of various concepts, such as Nyquist theorem, ADC/DAC and limitations, for example. Understanding the basics of signal theory and digital signal processing is the first step towards understanding how to make the best use of an appropriate USRP model. This link provides access to several resources that may be helpful in understanding the basics.
Table 1 shows USRP/daughterboard combinations commonly used in various application areas. While Table 1 can serve as a starting point for selecting a USRP device, Ettus Research recommends new users evaluate their application requirements against the specifications of the USRP devices. sections of this document will assist in the selection process.
|Application Area||Common USRP Model||Common Daughterboard|
|PHY/MAC Research||N200/N210 X300/X310||WBX/SBX/UBX/CBX|
|OpenBTS||B200/B210 X300/X310 E310/E312 N200/N210||WBX/SBX/UBX/CBX|
|Amarisoft LTE||N200/N210 X300/X310||WBX/SBX/UBX/CBX|
|Education||B200/B210 X300/X310 E310/E312 N200/N210||WBX/SBX/CBX/UBX|
|HF Communications||N200/N210 X300/X310||LFRX/LFTX|
|Distributed RF Sensors||E310/E312||N/A|
|Small Form Factor (SWaP)||B200mini/B205mini E310/E312||N/A|
USRP Device Characteristics
Table 2 shows the key characteristics of all USRP models available from Ettus Research. The table is useful for determining the interface type, bandwidth capabilities, and synchronization mechanisms specified for each USRP model. You can use this information, and the requirements for the application in question, to select a USRP radio.
|USRP Model||Interface||Total Host BW (MSPS 16b/8b)||Daughterboard Slots||ADC Resolution (bits)||ADC Rate (MSPS)||DAC Resolution (bits)||DAC Rate (MSPS)||MIMO Capable||Internal GPS Disciplined Oscillator (Optional)||1 PPS/Ref Inputs|
The following sections cover frequently asked questions in choosing a USRP device that’s right for your application.
Do I want to perform processing on a host PC, or operate the USRP device in a standalone fashion? This is an obvious differentiator of the USRP Embedded Series. If you need the USRP to operate a USRP radio without a host PC, the USRP E310/E312 is the most appropriate. The USRP E310/E312 is ideal for applications that might require mobile transceivers or distributed RF sensors. Unless the user has a clear requirement for embedded operation, Ettus Research recommends the USRP N200, N210, B200, B210, X300 or X310. Developing with a host-based platform typically involves less risk and will require less effort to optimize various pieces of the software radio.
In many cases it may be easier to develop with a USRP B200/B210 or USRP N200/N210, then port the code to the USRP E310/E312. The UHD (USRP Hardware Driver) enables this portability. You must also consider the different processing capabilities of the host machine and ARM processor used on the USRP E310/E312.
Do I Need Synchronization and/or MIMO Capability? Table 3 summarizes the synchronization features of each USRP device. Table 4 shows recommended solutions for MIMO systems of various sizes.
If you need MIMO capability for your application, Ettus Research recommends the USRP N200/N210 or USRP X300/X310. These units can be synchronized by providing a common time and frequency reference. Two USRP N200/N210s can be synchronized for MIMO operation with an Ettus Research MIMO cable. Alternatively, external 10 MHz reference and 1 PPS signals can be distributed to multiple USRP radios. With proper consideration for interface issues, it is possible to create MIMO system of arbitrary size with the USRP N200/N210 or USRP X300/X310.
The USRP B210 can serve a 2x2 MIMO capability because it has two integrated RF channels. However, the available bandwidth is limited dependent upon the USB controller, and selected MIMO configuration. Additional details of each configuration can be found in the USRP B200 and B210 - USB 3.0 Streaming Rate Benchmarks application note.
However, the USB 3.0 interface limits the bandwidth per channel. The combined throughput of all transmit and receive channels cannot exceed 8 MS/s.
In most cases the USRP B100 and E100/E110 are not appropriate for applications requiring a MIMO system. However, if you intend to operate at low frequencies it may be possible to use the LFRX/TX and BasicRX/TX, which can provide two channels on each daughterboard. If only receive capability is needed, the TVRX2 can meet the requirements for multiple-input capability in all USRP devices.
|USRP Model||BW Capability (MSPS w/ 16-bit)||MIMO Capable||Ext Ref. Input||1 PPS Input||Internal GPS Disiplined Oscillator (Optional)||Plug and Play MIMO|
|USRP Model||2 x 2 MIMO||4 x 4 MIMO||M x N MIMO|
|USRP1||2x Daughterboard||Not Recommended||Not Recommended|
|N200/N210||MIMO Cable||MIMO Cable + External||External|
|E100/E110||Not Recommended||Not Recommended||Not Recommended|
|B100||Not Recommended||Not Recommended||Not Recommended|
|B200mini||Not Recommended||Not Recommended||Not Recommended|
|B205mini||Not Recommended||Not Recommended||Not Recommended|
|B200||Not Recommended||Not Recommended||Not Recommended|
|B210||Integrated||Not Recommended||Not Recommended|
|E310||Integrated||Not Recommended||Not Recommended|
|E312||Integrated||Not Recommended||Not Recommended|
What Are My Bandwidth Requirements? Many Bandwidth requirements can also be used to narrow down the USRP selection. As seen in the table, the USRP N200/N210 is capable of streaming up to 50 MS/s in each direction in 8-bit mode, and 25 MS/s in 16-bit mode. The USRP B200 is capable of streaming up to 61.44MS/s total in 16-bit or 8-bit modes, respectively.
The USRP1 only operates in 16-bit modes, and is limited to 8 MS/s applications, such as OpenBTS, only utilizing a few hundred kHz of instantaneous BW. In these cases, the BW capability of the USRP1 and USRP B100 are more than adequate.
However, if there is interest in transmit and/or receiving larger bandwidth signals such as 802.11, the USRP N200/N210 would be more appropriate. Note these limitations are based on the data throughputs provided by the corresponding interfaces. It is important to consider the performance of the processing platform, and the computational intensity of the application. The constraints of the processing platform are independent of the full capability of the Ettus Research USRP radio and UHD.
The USRP E310/E312 FPGA interface provides a maximum throughput of [ADD STAT]
40 MB/s. This bandwidth can be used distributed across transmit and receive sample transfer. At 4 bytes/sample, this provides for a total of [ADD STAT] 10 MS/s. Note this does not guarantee that the embedded processor will be able to process that many samples. Additional care must be taken to understand the processing limitations and best DSP practices for optimum performance.
What interface do I prefer to work with?
Assuming you have narrowed the viable devices down based on bandwidth, MIMO and channel count requirements, it is possible to select a USRP device based on the interface.
In general, USB 3.0 ports are more plentiful on computers. This makes the USRP B200/B210
and USRP1 slightly more usable at short ranges. The USRP N200/N210 requires a Gigabit Ethernet port and a PC typically only provides one such port. If internet access is required, the user will also need to plan for an additional network adaptor.
The Gigabit Ethernet interface of the USRP N200/N210 can operate over significantly longer ranges. This makes it possible to operate the USRP radio it more remote locations further from the host computer. The GigE interface can be accessed via a Gigabit Ethernet switch, allowing access to multiple devices. However, Ettus Research recommends a homogeneous network without other devices, such as network routers attached.
Will I develop custom IP for the USRP device’s FPGA? While most users deploy their USRP devices in a stock configuration, many others customize the FPGA with their own functionality. For example, you may want to offload modulation, demodulation, or other PHY/ MAC operations to the USRP radio. This reduces host processing requirements, and may allow data reduction before passing data over the host interface. A summary of the FPGAs used on each USRP model are shown in Table 5.
|FPGA Series||Spartan 3A DSP||Spartan 3A DSP||Spartan 3A DSP||Spartan 3A DSP||Cyclone||Spartan 3A|
|FPGA Part Number||XC3SD3400A||XC3SD1800A||XC3SD3400A||XC3SD1800A||XC3S1400A|
The USRP N200 and USRP N210 are great, generic platforms to experiment with FPGA development. However, the important difference between these two is the FPGA size, and requirements for Xilinx development tools. The USRP N200 includes a Xilinx Spartan XC3SD1800A FPGA. This FPGA is optimized for DSP capability, and the logic can be modified with free Xilinx ISE tools. The USRP N210 includes a Xilinx Spartan XC3D3400A FPGA. This FPGA provides nearly twice the resources, but requires a licensed seat of the Xilinx development tools for development.
The USRP E100/110 use the same, respective FPGA sizes as the USRP N200/N210.
The USRP B100 provides a cost-optimized Spartan 3A-1400 FPGA. This can also be modified by the free version of Xilinx tools. The USRP B100 FPGA design does not contain many unused resources.
Do I need flexible sample clock frequencies? Some applications may benefit from a flexible sample clock frequency. The USRP E100/110 and USRP B100 both include a flexible frequency clocking solution. This flexibility allows ideal sample clock frequencies to be used for various communications standards. For example, the GSM implementations commonly use a 52 MHz sample clock.
Do I want or need a rack-mountable solution? Generally speaking, the selection of the USRP is based on performance requirements of the electrical components. However, the convenience of a rack-mounted solution may be an attractive feature that drives your decision. The USRP B100, E100/E110, and N200/N210 can all be mounted in the Ettus Research 3U rack chassis. Up to four USRP devices can be mounted in the chassis. Note there is no off- the-shelf rack mounting solution for the USRP1 device.
Will my requirements become more demanding as I learn more about the USRP and RF systems? One final thing to consider is how your requirements will change over time. While a lower-cost USRP device, such as the USRP B100, may meet your immediate requirements, it is possible that the USRP N200/N210 would be a more appropriate platform as you continue to develop more advanced RF systems. Key improvements to note in the higher-end USRP N200/N210 is the increased bandwidth, increased dynamic range, and MIMO capability.
Fortunately, UHD allows the user to develop a single application compatible with all USRP models. Within certain limitations, the code you develop to work on a USRP B100 will generally work on a USRP N200/N210. You must still consider variables such as sample rate, host interface bandwidth, and synchronization features to ensure compatibility.
This application note presents the functional specifications of each USRP device sold by Ettus Research. The data from this document can be used to make an educated selection of the most appropriate USRP device for a particular user or application. If you have any additional questions, do not hesitate to contact us at firstname.lastname@example.org.