Thursday, August 28, 2014

Analog vs Digital Filter

Another advantage results from the speed of today’s digital signal processors. Nowadays, it is quite of poles. (In the analog domain, it takes one inductor or capacitor to make one pole.) Few analog designers use more than ten poles in a filter, because it’s very difficult to make an analog filter with more than about ten poles work properly.

Rob Frohne, KL7NA




Thursday, April 10, 2014

UHD Drivers run in user space ! Nice to know

The UHD drivers all run up in user-space, and are as efficient as they can be, pretty much.  There *is* a lot of code in UHD, but very little of it is in the "critical path" in delivering samples to the applications that use those samples.  There may be some tweaks here and there, and the R&D team certainly, in my experience, takes advantage of those tweaks when possible.  But at the end of the day, you're at the mercy of what your OS can deliver and nothing in the USRP/UHD "universe" can really do much about that....

Wednesday, April 9, 2014

B200 and B210

USRP B200 (1 Tx, 1 Rx) features:
  • Fully integrated, full duplex, 1x1 RF transceiver
  • Continuous RF coverage from 70 MHz–6 GHz
  • Up to 56 MHz of real-time bandwidth (61.44 MS/s quadrature)
  • Bus-powered SuperSpeed USB 3.0 connectivity
  • GNU Radio and OpenBTS support through the open-source UHD
  • Open and reconfigurable Spartan-6 XC6SLX75 FPGA with free Xilinx tools (for advanced users)
USRP B210 (2 Tx, 2 Rx) features:
  • Fully integrated, full duplex, 2x2 RF transceiver
  • Continuous RF coverage from 70 MHz–6 GHz
  • Up to 56 MHz (1x1) and 32 MHz (2x2) of real-time bandwidth
  • Fast SuperSpeed USB 3.0 connectivity
  • Includes universal DC power supply
  • GNU Radio and OpenBTS support through the open-source UHD
  • Open and reconfigurable Spartan-6 XC6SLX150 FPGA (for advanced users)
  • Early access prototyping platform for the Analog Devices AD9361 RFIC, a fully integrated direct conversion transceiver with mixed signal baseband

Thursday, January 2, 2014

Some SDR Philosophy :D

Real analog-to-digital converters lack the discrimination to pick up sub-microvolt, nanowatt radio signals. Therefore a low-noise amplifier must precede the conversion step and this device introduces its own problems. For example if spurious signals are present (which is typical), these compete with the desired signals within the amplifier's dynamic range. They may introduce distortion in the desired signals, or may block them completely. The standard solution is to put band-pass filters between the antenna and the amplifier, but these reduce the radio's flexibility - which some see as the whole point of a software radio. Real software radios often have two or three analog "channels" that are switched in and out. These contain matched filters, amplifiers and sometimes a mixer.

Friday, December 20, 2013

CFO estimation in OFDM

Frequency error in OFDM systems is often called carrier frequency offset (CFO).

CFO can be caused by frequency differences between the transmitter and receiver oscillators, Doppler shift of mobile channels, or oscillator instabilities.

All sub-carriers are affected by the same amount of CFO. CFO is classified into two categories:

fractional sub-carrier spacing CFO, and integer sub-carrier spacing CFO.

Fractional CFO introduces inter-carrier interference (ICI) between sub-carriers. It destroys the orthogonality of sub-carriers and results in bit error rate (BER) degradation.

Integer CFO does not introduce ICI between sub-carriers, but does introduce a cyclic shift of data sub-carriers and a phase change proportional to OFDM symbol number.

Therefore, it’s necessary to correct this CFO at the OFDM receiver.

There are several techniques to estimate and compensate for these errors using time-domain or frequency-domain approaches, sometimes called pre-FFT and post-FFT synchronization, respectively.

More details here

Thursday, December 19, 2013

openBTS : use USRP-1 or not ?

Please note that using USRP-1 for use with OpenBTS can be done but there
are a number of disadvantages. A USRP-1 needs a number of modifications to be used with an external clock. This means moving and replacing (soldering) a number of small SMD components, creating a powersupply for the clocktamer and adding a clock input connector. Note that the USRP1 FAN output cannot supply enough power for a clocktamer without modifications. This modifications can be done by an experienced electronics engineer. You whould not have these
performed by someone who does not have experience in SMD soldering. Also note that a USRP-1 cannot use the standard UHD driver when working
with OpenBTS. It needs a gnuradio based driver. Support for this driver has stopped a long time ago, so you must patch and compile an old gnuradio version which you have to modify yourself for 52 Mhz use. That means that getting OpenBTS to run with a USRP-1 is quite complicated and a non standard procedure.

To get OpenBTS to run with a modified USRP-1 with clocktamer: Start with a linux system. You would then have to get the sourcecode of a very old gnuradio release (3.4.2 or older), patch/modify this source for default 52 Mhz use. Compile and install it  (You cannot use binary packages) and then compile and install all other required packages, finishing with compiling and installing OpenBTS using the right configure/compile options. After that it should work similar to working with modern N210 based systems.

Note that USRP-1 based OpenBTS systems are less reliable. The FPGA inside a USRP-1 is not fast enough to always reach the timing required for OpenBTS. Most of the time it works, but you may get occasional synchronisation /timing errors. Especially when the temperature is high.

With USRP-2 or USRP N210 bases systems you don't have these issues since
the FPGA inside them is much faster. They use gBit ethernet for communication with the host-PC which has much higher speed and lower latency compared to USB (used with USRP1).

Wednesday, December 18, 2013

About External Clocking in USRP : GPSDO or OCTO-Clock or OCTO-Clock-GPS or GPSDO

If all frequency and phase and time relations are exactly known, this
simplifies the algorithms. If they are only approximately know this
will   narrow the needed search space for synchronization loops.


The best setup is with several USRPs connected with cables to a single octoclock-GPS.

The second best setup is several (unconnected) units with GPSDO.

An alternative would be clocktamer-GPS modified by adding a 1 PPS
output, but this will have lower performance then GPSDO.

Please see descriptions below for the advantages and disadvantages of
the different possibilities:

1. WIth each USRP unit having a Clocktamer-STD (without GPS, without 1 PPS)
you have no frequency, no phase and no timestamps locked. You would need
to do all synchronisation in software. This will impact the computational load greatly.


2. With each USRP unit having a Clocktamer-GPS standard (without 1 PPS) you
can only have frequency locked, but not phase or timestamps. Note that having no timestamps lock means that your algorithms may need to search though long timespans (several msecs) to look for the right packet. This will impact the computational load greatly.


3. With each USRP unit having a CLocktamer-GPS, and you have the
Clocktamer-GPS modified to also have a 1 PPS output, then you can have frequency and timestamps locked, like with GPSDO. There will be temporary frequency offsets and the phases will not align. Because the clocktamer-GPS uses a Frequency locked loop (not Phase-Locked-Loop) the frequency and phase deviations will be larger then compared to the GPSDO.


4.  With each USRP unit having a GPSDO (includes 1 PPS and 10 MHZ refclock
locked  to the GPS signal) The timestamps and frequency between the different units can be synchronized. There will be temporary phase differences because the reception of the GPS signla and the the lock to the clock to GPS is not perfect. There can also be temporary very small frequency deviations because of this. The timestamp differences will still be small. All differences will be much smaller then compared to systems that do not have their clock locked with PLL to GPS.

5. With octoclock-GPS and 10 Mhz refclock and 1 PPS pulse cables to each unit you can have frequency, phase and timestamps exactly synchronized. This is the perfect setup.

Note that there are no mountingholes in USRP-2 for the GPSDO so you would need to add these or use the GPSDO externally (Needs 5 V DC supply, can also be used without the serial interface attached).

Note that this GPSDO cannot be used with USRP-1.

Clocktamers without GPS do not have the continuous GPS calibration, but do have a much more precise clock then the internal clock of a USRP-2 or a USRP1. The frequency accuracy is just enough for OpenBTS use. They can be used with a USRP-2 when programmed to output 10 MHz.

They can be used with USRP1 when programmed to output 52 MHz or 64 MHz.

A USRP-1 needs a number of modifications to be used with an external clock. This means moving and replacing (soldering) a number of small SMD components, creating a powersupply for the clocktamer and adding a clock input connector. Note that the USRP1 FAN output cannot supply enough power for a clocktamer without modifications. This modifications can be done by an experienced electronics engineer. You whould not have these performed by someone who does not have experience in SMD soldering.

Reference : Mail Conversation with Martin Dudok van Heel
Olifantasia