# Binary offset carrier modulation

Binary offset carrier modulation (BOC modulation) was developed by John Betz in order to allow interoperability of satellite navigation systems. It is currently used in the US GPS system, Indian IRNSS system and in Galileo and is a square sub-carrier modulation, where a signal is multiplied by a rectangular sub-carrier of frequency $f_{\text{sc}}$ equal to or greater than the chip rate. Following this sub-carrier multiplication, the spectrum of the signal is divided into two parts, therefore BOC modulation is also known as a split-spectrum modulation. Their major advantages are, that one can shape the spectrum to allow inter-system-compatibility and better theoretically achievable tracking capabilities, due to higher frequencies if downmixed to the complex baseband. On the other hand, a huge variety of different implementations or instantiations was set up, making it difficult to get the whole picture. Early (and sometimes recent) publications dealing with that topic usually do not include matched filters for pulse shaping as well as the concept of complex Gaussian noise - which is very often not treated correctly - to yield a mathematically consistent baseband description that, although complicated looking, models the physics correctly. I.e. if these standards are not treated correctly, theoretical results are not reliable. This is independent of the media and the peer-review and the person, who published it.

## Design

The main idea behind BOC modulation is to reduce the interference with BPSK-modulated signals, which have a sinc function shaped spectrum. Therefore, BPSK-modulated signals such as C/A GPS codes have most of their spectral energy concentrated around the carrier frequency, while BOC-modulated signals (used in Galileo system) have low energy around the carrier frequency and two main spectral lobes further away from the carrier (thus the name of split-spectrum).
BOC modulation has several variants: sine BOC (sinBOC), cosine BOC (cosBOC), alternative BOC (altBOC), multiplexed BOC (MBOC), double BOC (DBOC) etc. and some of them have been currently selected for Galileo GNSS signals.
A BOC waveform is typically denoted via BOC(m, n) or BOC$(f_{\text{sc}},\;f_{\text{c}})$, where $f_{\text{sc}}$ is the sub-carrier frequency, $f_{\text{c}}$ is the chip frequency, $m=f_{\text{sc}}/f_{\text{ref}}$, $n=f_{\text{c}}/f_{\text{ref}}$, and $f_{\text{ref}}=1.023$ Mcps is the reference chip frequency of C/A GPS signal.
A sine BOC(1, 1) modulation is similar to Manchester code; that is, in the digital domain, a '+1' is encoded as a '+1 −1' sequence, and a '0' is encoded as a '−1 +1' sequence. For an arbitrary $N_{\text{BOC}}=2m/n$ modulation order, in sine BOC(m, n) case, a '+1' is encoded as an alternating sequence of '+1 −1 +1 −1 +1 ...', having $N_{\text{BOC}}$ elements, and a '0' (or '−1') is encoded as an alternating '−1 +1 ...' sequence, also having $N_{\text{BOC}}$ elements.
BOC modulation is typically applied on CDMA signals, where each chip of the pseudorandom code is split into BOC sub-intervals, as explained above (i.e., there are $N_{\text{BOC}}$ BOC intervals per chip).
The power spectral density of a BOC-modulated signal depends on the BOC modulation order $N_{\text{BOC}}=2{\frac {f_{\text{sc}}}{f_{\text{c}}}}=2{\frac {m}{n}}$.
BOC-modulated signals, by difference with BPSK signals, create the so-called ambiguities in the correlation function. The BOC-modulated signals in GNSS can be processed either with a Full BOC receiver or via various unambiguous approaches.