www.radartutorial.eu www.radartutorial.eu Radar Basics

Barker codes

Length of
codes n
code elements peak sidelobe
ratio in dB
2+ − ,  + +−6.0
3+ + −−9.5
4+ + − + ,  + + + −−12.0
5+ + + − +−14.0
7+ + + − − + −−16.9
11+ + + − − − + − − + −−20.8
13+ + + + + − − + + − + − +−22.3

Table 1: The known Barker codes

Figure 1: Diagram of a transmission pulse phase-coded with the Barker code of length n = 7

Diagram of a phase coded transmission pulse: two functions are shown.
 The upper function is the logical levels on a time axis.
 The lower function shows the phase coded high-frequency waves matching the logic levels of the upper function. There is a phase jump with each logical level change.

Figure 1: Diagram of a transmission pulse phase-coded with the Barker code of length n = 7

Barker codes

A Barker code is one of the possibilities for intra-pulse biphase modulation for pulse compression radar equipment to improve range resolution for relatively long transmission pulses. They are sequences of numbers of different lengths of +1 and −1, which meet the condition of autocorrelation as perfect as possible. As perfect as possible here means that the size of the sidelobes resulting from the autocorrelation is less than or equal to 1.

Barker codes are named after their inventor Ronald Hugh Barker, who examined 6 000 different polynomials in a study published in 1953. This resulted in the list of the 9 known Barker codes. (Simple negations or inversions of the pulse sequence would also be possible, but are faded out here). Later computer-aided investigations investigated pulse sequences up to a code length of n = 4·1033,[1] but found no other code sequences to which this requirement also applies.

The mathematical description is:


(In other words: the amount of the sum of adjacent sub-pulses should be less than or equal to 1 in all partial lengths of the sequence).

Remarks: Although the sequence + + given for the length of code n = 2 in Table 1 also formally fulfills this mathematical condition, it cannot be used in practice under the aspect that intrapulse modulation should improve the distance resolution by 1/n. (This sequence has a similar special position as the 2 as the only even prime number: as a prime number it is also only divisible by 1 and by itself without remainder, but only because there are no other divisors!)


With modulation, the plus in the table and in Fig. 1 corresponds to a phase of 0°, the minus to a phase jump of 180°. In practice, this can be achieved simply by using a ring mixer whose IF output is misused as a switching input (for an explanation of the function, see the self-construction project of a radar). This ring mixer must be controlled (as shown in figure 1 above) with a negative or positive voltage. The switching voltage can be generated by a shift register whose TTL output is raised to ± 5 V by an operational amplifier switched as a comparator.

Figure 2: Autocorrelation of a Barker code of length n = 7.

sliding window:

Figure 2: Autocorrelation of a Barker code of length n = 7.

Pulse Compression

The pulse compression of a Barker code is a process of correlation, especially of autocorrelation, because the shape of the transmitted signal is compared with the shape of the received signal, here with itself. This filter is either an analog matched filter or the comparison is done digitally in memory by the sliding window method.

Nested Barker codes
Length of
codes n
peak sidelobe
ratio in dB

Table 2: Nested Barker codes

The known Barker codes are only suitable for relatively short transmission pulses, as they are limited to a length of 13 code elements. The maximum achievable peak sidelobe ratio (PSLR) of 22.3 dB is also far below the required 30 dB. There are also other lengths of sequences with sidelobes in the range ≤2 and ≤3.

Nested Barker codes use the Kronecker product of two Barker codes. The Kronecker productB5⊗B13 means that the transmit pulse is divided into 13 sub-pulses with the one Barker code (B13). Each of these subpulses is then divided with the Barker code (B5) into 5 even smaller subpulses. For the negative subpulses of B13, each element of the B5 code is multiplied by −1. This results in a total code length of 65 subpulses.

Video recommendation: Paul Denisowski, “Understanding Barker codes”, educational film by Rohde & Schwarz, Munich, Germany

Sources and ressources:

  1. Borwein, P., Mossinghoff, M. (2014). “Wieferich pairs and Barker sequences”, II. LMS Journal of Computation and Mathematics, 17(1), S. 24-32 (DOI: 10.1112/S1461157013000223)