Differential coding

Last updated

In digital communications, differential coding is a technique used to provide unambiguous signal reception when using some types of modulation. It makes transmissible data dependent on both the current and previous signal (or symbol) states.

Contents

The common types of modulation that may be used with differential coding include phase-shift keying and quadrature amplitude modulation.

Purposes of differential coding

When data is transmitted over balanced lines, it is easy to accidentally invert polarity in the cable between the transmitter and the receiver.

Similarly for BPSK. To demodulate BPSK, one needs to make a local oscillator synchronous with the remote one. This is accomplished by a carrier recovery circuit. However, the integer part of the recovered carrier is ambiguous. There are n valid but not equivalent phase shifts between the two oscillators. For BPSK, n = 2; the symbols appear inverted or not.

Differential encoding prevents inversion of the signal and symbols, respectively, from affecting the data.

Assuming that is a bit intended for transmission and was the symbol just transmitted, then the symbol to be transmitted for is

where indicates binary or modulo-2 addition. On the decoding side, is recovered as

That is, depends only on a difference between the symbols and and not on their values (inverted or not).

There are several different line codes designed to be polarity insensitive [1] - whether the data stream is inverted or not, the decoded data will always be correct.

The line codes with this property include differential Manchester encoding, bipolar encoding, NRZI, biphase mark code, coded mark inversion, and MLT-3 encoding.

Conventional differential coding

A block diagram representation of a differential encoder. Note that the output is dependent on both the current and previous register state. Differential coding encoder.png
A block diagram representation of a differential encoder. Note that the output is dependent on both the current and previous register state.
Another type of differential decoder. Differential coding decoder 2.png
Another type of differential decoder.

A method illustrated above can deal with a data stream inversion (it is called 180° ambiguity). Sometimes it is enough (e.g. if BPSK is used or if other ambiguities are detected by other circuits, such as a Viterbi decoder or a frame synchronizer) and sometimes it isn't.

Generally speaking, a differential coding applies to symbols (these are not necessary the same symbols as used in the modulator). To resolve 180° ambiguity only, bits are used as these symbols. When dealing with 90° ambiguity, pairs of bits are used, and triplets of bits are used to resolve 45° ambiguity (e.g. in 8PSK).

A differential encoder provides the ( 1 ) operation, a differential decoder - the ( 2 ) operation.

Both differential encoder and differential decoder are discrete linear time-invariant systems. The former is recursive and IIR, the latter is non-recursive and thus FIR. They can be analyzed as digital filters.

A differential encoder is similar to an analog integrator. It has an impulse response

and a transfer function

A differential decoder is thus similar to an analog differentiator, its impulse response being

and its transfer function

Note that in binary (modulo-2) arithmetic, addition and subtraction (and positive and negative numbers) are equivalent.

Generalized differential coding

Using the relation is not the only way of carrying out differential encoding. More generally, it can be any function provided that an equation has one and only one solution for any and .

Applications

Differential coding is widely used in satellite and radio relay communications together with PSK and QAM modulations.

Drawbacks

Differential coding has one significant drawback: it leads to error multiplication. That is, if one symbol such as was received incorrectly, two incorrect symbols and would be at the differential decoder's output, see: and . This approximately doubles the BER at signal-to-noise ratios for which errors rarely occur in consecutive symbols.

Other techniques to resolve a phase ambiguity

Differential coding is not the only way to deal with a phase ambiguity. The other popular technique is to use syncwords for this purpose. That is, if a frame synchronizer detects repeated inverted sync-words, it inverts the whole stream. This method is used in DVB-S.

See also

Related Research Articles

<span class="mw-page-title-main">Orthogonal frequency-division multiplexing</span> Method of encoding digital data on multiple carrier frequencies

In telecommunications, orthogonal frequency-division multiplexing (OFDM) is a type of digital transmission used in digital modulation for encoding digital (binary) data on multiple carrier frequencies. OFDM has developed into a popular scheme for wideband digital communication, used in applications such as digital television and audio broadcasting, DSL internet access, wireless networks, power line networks, and 4G/5G mobile communications.

In telecommunication, a convolutional code is a type of error-correcting code that generates parity symbols via the sliding application of a boolean polynomial function to a data stream. The sliding application represents the 'convolution' of the encoder over the data, which gives rise to the term 'convolutional coding'. The sliding nature of the convolutional codes facilitates trellis decoding using a time-invariant trellis. Time invariant trellis decoding allows convolutional codes to be maximum-likelihood soft-decision decoded with reasonable complexity.

<span class="mw-page-title-main">Line code</span> Pattern used within a communications system to represent digital data

In telecommunication, a line code is a pattern of voltage, current, or photons used to represent digital data transmitted down a communication channel or written to a storage medium. This repertoire of signals is usually called a constrained code in data storage systems. Some signals are more prone to error than others as the physics of the communication channel or storage medium constrains the repertoire of signals that can be used reliably.

Phase-shift keying (PSK) is a digital modulation process which conveys data by changing (modulating) the phase of a constant frequency carrier wave. The modulation is accomplished by varying the sine and cosine inputs at a precise time. It is widely used for wireless LANs, RFID and Bluetooth communication.

Reed–Solomon codes are a group of error-correcting codes that were introduced by Irving S. Reed and Gustave Solomon in 1960. They have many applications, including consumer technologies such as MiniDiscs, CDs, DVDs, Blu-ray discs, QR codes, Data Matrix, data transmission technologies such as DSL and WiMAX, broadcast systems such as satellite communications, DVB and ATSC, and storage systems such as RAID 6.

<span class="mw-page-title-main">Arithmetic coding</span> Form of entropy encoding used in data compression

Arithmetic coding (AC) is a form of entropy encoding used in lossless data compression. Normally, a string of characters is represented using a fixed number of bits per character, as in the ASCII code. When a string is converted to arithmetic encoding, frequently used characters will be stored with fewer bits and not-so-frequently occurring characters will be stored with more bits, resulting in fewer bits used in total. Arithmetic coding differs from other forms of entropy encoding, such as Huffman coding, in that rather than separating the input into component symbols and replacing each with a code, arithmetic coding encodes the entire message into a single number, an arbitrary-precision fraction q, where 0.0 ≤ q < 1.0. It represents the current information as a range, defined by two numbers. A recent family of entropy coders called asymmetric numeral systems allows for faster implementations thanks to directly operating on a single natural number representing the current information.

<span class="mw-page-title-main">G.711</span> ITU-T recommendation

G.711 is a narrowband audio codec originally designed for use in telephony that provides toll-quality audio at 64 kbit/s. It is an ITU-T standard (Recommendation) for audio encoding, titled Pulse code modulation (PCM) of voice frequencies released for use in 1972.

A satellite modem or satmodem is a modem used to establish data transfers using a communications satellite as a relay. A satellite modem's main function is to transform an input bitstream to a radio signal and vice versa.

In mathematics, the universal enveloping algebra of a Lie algebra is the unital associative algebra whose representations correspond precisely to the representations of that Lie algebra.

In mathematics, particularly algebraic topology and homology theory, the Mayer–Vietoris sequence is an algebraic tool to help compute algebraic invariants of topological spaces, known as their homology and cohomology groups. The result is due to two Austrian mathematicians, Walther Mayer and Leopold Vietoris. The method consists of splitting a space into subspaces, for which the homology or cohomology groups may be easier to compute. The sequence relates the (co)homology groups of the space to the (co)homology groups of the subspaces. It is a natural long exact sequence, whose entries are the (co)homology groups of the whole space, the direct sum of the (co)homology groups of the subspaces, and the (co)homology groups of the intersection of the subspaces.

In telecommunications, 8b/10b is a line code that maps 8-bit words to 10-bit symbols to achieve DC balance and bounded disparity, and at the same time provide enough state changes to allow reasonable clock recovery. This means that the difference between the counts of ones and zeros in a string of at least 20 bits is no more than two, and that there are not more than five ones or zeros in a row. This helps to reduce the demand for the lower bandwidth limit of the channel necessary to transfer the signal.

Amplitude-shift keying (ASK) is a form of amplitude modulation that represents digital data as variations in the amplitude of a carrier wave. In an ASK system, a symbol, representing one or more bits, is sent by transmitting a fixed-amplitude carrier wave at a fixed frequency for a specific time duration. For example, if each symbol represents a single bit, then the carrier signal could be transmitted at nominal amplitude when the input value is 1, but transmitted at reduced amplitude or not at all when the input value is 0.

In coding theory, decoding is the process of translating received messages into codewords of a given code. There have been many common methods of mapping messages to codewords. These are often used to recover messages sent over a noisy channel, such as a binary symmetric channel.

In computer science, Luby transform codes are the first class of practical fountain codes that are near-optimal erasure correcting codes. They were invented by Michael Luby in 1998 and published in 2002. Like some other fountain codes, LT codes depend on sparse bipartite graphs to trade reception overhead for encoding and decoding speed. The distinguishing characteristic of LT codes is in employing a particularly simple algorithm based on the exclusive or operation to encode and decode the message.

<span class="mw-page-title-main">Carrier recovery</span>

A carrier recovery system is a circuit used to estimate and compensate for frequency and phase differences between a received signal's carrier wave and the receiver's local oscillator for the purpose of coherent demodulation.

In mathematics, the Morse–Palais lemma is a result in the calculus of variations and theory of Hilbert spaces. Roughly speaking, it states that a smooth enough function near a critical point can be expressed as a quadratic form after a suitable change of coordinates.

<span class="mw-page-title-main">GPS signals</span> Signals broadcast by GPS satellites

GPS signals are broadcast by Global Positioning System satellites to enable satellite navigation. Receivers on or near the Earth's surface can determine location, time, and velocity using this information. The GPS satellite constellation is operated by the 2nd Space Operations Squadron (2SOPS) of Space Delta 8, United States Space Force.

In coding theory, concatenated codes form a class of error-correcting codes that are derived by combining an inner code and an outer code. They were conceived in 1966 by Dave Forney as a solution to the problem of finding a code that has both exponentially decreasing error probability with increasing block length and polynomial-time decoding complexity. Concatenated codes became widely used in space communications in the 1970s.

A locally decodable code (LDC) is an error-correcting code that allows a single bit of the original message to be decoded with high probability by only examining a small number of bits of a possibly corrupted codeword. This property could be useful, say, in a context where information is being transmitted over a noisy channel, and only a small subset of the data is required at a particular time and there is no need to decode the entire message at once. Note that locally decodable codes are not a subset of locally testable codes, though there is some overlap between the two.

Asymmetric numeral systems (ANS) is a family of entropy encoding methods introduced by Jarosław (Jarek) Duda from Jagiellonian University, used in data compression since 2014 due to improved performance compared to previous methods. ANS combines the compression ratio of arithmetic coding, with a processing cost similar to that of Huffman coding. In the tabled ANS (tANS) variant, this is achieved by constructing a finite-state machine to operate on a large alphabet without using multiplication.