Bit stuffing

Bit stuffing

In data transmission and telecommunication, bit stuffing (also known—uncommonly—as positive justification) is the insertion of noninformation bits into data. Stuffed bits should not be confused with overhead bits.

Bit stuffing is used for various purposes, such as for bringing bit streams that do not necessarily have the same or rationally related bit rates up to a common rate, or to fill buffers or frames. The location of the stuffing bits is communicated to the receiving end of the data link, where these extra bits are removed to return the bit streams to their original bit rates or form. Bit stuffing may be used to synchronize several channels before multiplexing or to rate-match two single channels to each other.

Applications include Plesiochronous Digital Hierarchy and Synchronous Digital Hierarchy.

Another use of bit stuffing is for run length limited coding: to limit the number of consecutive bits of the same value in the data to be transmitted. A bit of the opposite value is inserted after the maximum allowed number of consecutive bits. Since this is a general rule the receiver doesn't need extra information about the location of the stuffing bits in order to do the destuffing.

This is done to create additional signal transitions to ensure reliable transmission or to escape special reserved code words such as frame sync sequences when the data happens to contain them.

Applications include Controller Area Network, HDLC, and Universal Serial Bus.

Bit stuffing does not ensure that the payload is intact ("i.e." not corrupted by transmission errors); it is merely a way of attempting to ensure that the transmission starts and ends at the correct places. Error detection and correction techniques are used to check the frame for corruption after its delivery and, if necessary, the frame will be resent.

Zero-bit insertion

Zero-bit insertion is a particular type of bit stuffing (in the latter sense) used in some data transmission protocols. It was popularized by IBM's SDLC (later renamed HDLC), to ensure that the Frame Sync Sequence (FSS) doesn't incidentally appear in a data frame. An FSS is used to indicate the beginning and/or end of a frame.

The name relates to the insertion of only 0 bits. No 1 bits are inserted to limit sequences of 0 bits.

The bit sequence "01111110" containing six adjacent 1 bits is commonly used as a "Flag byte" or FSS.

To ensure that this pattern never appears in normal data, a 0 bit is stuffed after every five 1 bits in the data. This adds 1 stuffed bit to every 32 random payload bits. Note that this stuffed bit is added even if the following data bit is 0, which could not be mistaken for a sync sequence, so that the receiver can unambiguously distinguish stuffed bits from normal bits.

A similar scheme is used in the Universal Serial Bus, but for a different reason: to ensure sufficient clock edges. Low- and full-speed USB data is sent NRZI encoded: a 0 bit causes a signal transition, while a 1 bit causes no change. The receiver must count the time between transitions to determine the number of 1 bits, and if that time is too long, the receiver can lose count. USB stuffs a 0 bit (causing a transition) after every 6 consecutive 1 bits; this guarantees at least one transition every 7 bit times. (A (0,6) RLL code.)

The main disadvantage of this form of bit-stuffing is that the code rate is unpredictable; it depends on the data being transmitted.

External links

[http://www.webopedia.com/TERM/B/bit_stuffing.html What is bitstuffing?]

"Source: from Federal Standard 1037C in support of MIL-STD-188"


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • Bit-Stuffing — Als Bitstopfen (englisch bit stuffing) bezeichnet man in der Nachrichtentechnik das Einfügen eines oder mehrerer Bits in eine Datenübertragung, um Signalinformationen (d.h. keine Daten im eigentlichen Sinne/keine Nutzdaten) an den Empfänger zu… …   Deutsch Wikipedia

  • Bit Stuffing — Als Bitstopfen (englisch bit stuffing) bezeichnet man in der Nachrichtentechnik das Einfügen eines oder mehrerer Bits in eine Datenübertragung, um Signalinformationen (d.h. keine Daten im eigentlichen Sinne/keine Nutzdaten) an den Empfänger zu… …   Deutsch Wikipedia

  • Bit stuffing — Als Bitstopfen (englisch bit stuffing) bezeichnet man in der Nachrichtentechnik das Einfügen eines oder mehrerer Bits in eine Datenübertragung, um Signalinformationen (d.h. keine Daten im eigentlichen Sinne/keine Nutzdaten) an den Empfänger zu… …   Deutsch Wikipedia

  • bit stuffing —    Insertion of an occasional dummy bit into a binary stream so that the mean data rate is slightly less than the bit signaling rate of the channel. The position of the stuffed bits must be signaled on a supplementary channel. Also called pulse… …   IT glossary of terms, acronyms and abbreviations

  • Bit-Stuffing — in BOP Einfügen (nach Empfang Entfernen) eines Hilfsbit innerhalb der transparenten Datenübertragung, um Gleichheit mit dem Stop Flag zu vermeiden; Gegensatz: Byte Stuffing …   Acronyms

  • Bit-Stuffing — in BOP Einfügen (nach Empfang Entfernen) eines Hilfsbit innerhalb der transparenten Datenübertragung, um Gleichheit mit dem Stop Flag zu vermeiden; Gegensatz: Byte Stuffing …   Acronyms von A bis Z

  • bit stuffing —    A technique used to ensure that a specific bit pattern never occurs in the data transmitted over a communications channel. Additional bits are added at the transmitting end and removed at the receiving end of the channel as the data is… …   Dictionary of networking

  • bit stuffing — (Computers) process of adding extra bits to a data stream before transmission (adjusts data and frames to suit communications protocols the extra bits are discarded after the data is received) …   English contemporary dictionary

  • zero-bit insertion —    A technique used to achieve transparency in bit oriented protocols.    A zero is inserted into sequences of one bits that cause false flag direction. Also called bit stuffing …   IT glossary of terms, acronyms and abbreviations

  • Consistent Overhead Byte Stuffing — (COBS) is an algorithm for encoding data bytes that results in efficient, reliable, unambiguous packet framing regardless of packet content, thus making it easy for receiving applications to recover from malformed packets. Byte stuffing is a… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”