4B3T

4B3T, which stands for 4 (four) Binary 3 (three) Ternary, is a line encoding scheme used for ISDN PRI interface. 4B3T represents four binary bits using three pulses.

Description

It uses three states:

  • + (positive pulse),
  • 0 (no pulse), and
  • − (negative pulse).

This means we have 24 = 16 input combinations to represent, using 33 = 27 output combinations. 000 is not used to avoid long periods without a transition. 4B3T uses a paired disparity code to achieve an overall zero DC bias: six triplets are used which have no DC component (0+−, 0−+, +0−, −0+, +−0, −+0), and the remaining 20 are grouped into 10 pairs with differing disparity (e.g. ++− and −−+). When transmitting, the DC bias is tracked and a combination chosen that has a DC component of the opposite sign to the running total.

This mapping from 4 bits to three ternary states is given in a table known as Modified Monitoring State 43 (MMS43). A competing encoding technique, used for the ISDN basic rate interface where 4B3T is not used, is 2B1Q.

The sync sequence used is the 11-symbol Barker code, +++−−−+−−+− or its reverse, −+−−+−−−+++.

Encoding table

Each 4-bit input group is encoded as a 3-symbol group (transmitted left to right) from the following table. Encoding requires keeping track of the accumulated DC offset, the number of + pulses minus the number of − pulses in all preceding groups. The starting value is arbitrary; here we use the values 1 through 4, although −1.5, −0.5, +0.5 and +1.5 is another possibility.

MMS 43 coding table[1]
InputAccumulated DC offset
Hex Binary 1234
0 0000 + 0 +   (+2)0−0 (−1)
1 0001 0 − +   (+0)
2 0010 + − 0   (+0)
3 0011 0 0 +   (+1)− − 0   (−2)
4 0100 − + 0   (+0)
5 0101 0 + +   (+2)− 0 0   (−1)
6 0110 − + +   (+1)− − +   (−1)
7 0111 − 0 +   (+0)
8 1000 + 0 0   (+1)0 − −   (−2)
9 1001 + − +   (+1)− − −   (−3)
A 1010 + + −   (+1)+ − −   (−1)
B 1011 + 0 −   (+0)
C 1100 + + +   (+3)− + −   (−1)
D 1101 0 + 0   (+1)− 0 −   (−2)
E 1110 0 + −   (+0)
F 1111 + + 0   (+2)0 0 −   (−1)

This code forces a transition after at most five consecutive identical non-zero symbols, or four consecutive zero symbols.

Decoding table

Decoding is simpler, as the decoder does not need to keep track of the encoder state, although doing so allows greater error detection. The 000 triplet is not a legal encoded sequence, but is typically decoded as binary 0000.

TernaryBinary Hex TernaryBinary Hex TernaryBinary Hex
0 0 0N/A N/A − 0 00101 5 + − −1010 A
+ 0 +0000 0 − + +0110 6 + 0 −1011 B
0 − 00000 0 − − +0110 6 + + +1100 C
0 − +0001 1 − 0 +0111 7 − + −1100 C
+ − 00010 2 + 0 01000 8 0 + 01101 D
0 0 +0011 3 0 − −1000 8 − 0 −1101 D
− − 00011 3 + − +1001 9 0 + −1110 E
− + 00100 4 − − −1001 9 + + 01111 F
0 + +0101 5 + + −1010 A 0 0 −1111 F
gollark: socket.io?
gollark: I mean, things *wrapping* websockets might, but native websocket stuff won't.
gollark: Not *all*.
gollark: Websockets sound better for this sort of thing.
gollark: Unfortunately edge on iOS is going to literally just be the regular renderer with different styling.

See also

Other line codes that have 3 states:

References

  1. "Wired Communications T-SMINTO 4B3T Second Gen. Modular ISDN NT (Ordinary)" (PDF) (Data sheet). Version 1.1. Infineon. November 2001. PEF 80902.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.