Modified AMI code

Modified AMI codes are Alternate Mark Inversion (AMI) line codes in which bipolar violations may be deliberately inserted to maintain system synchronization. There are several types of modified AMI codes, used in various T-carrier and E-carrier systems.

Contents

Overview

The clock rate of an incoming T-carrier signal is extracted from its bipolar line code. Each signal transition provides an opportunity for the receiver to see the transmitter's clock. The AMI code guarantees that transitions are always present before and after each mark (1 bit), but are missing between adjacent spaces (0 bits). To prevent loss of synchronization when a long string of zeros is present in the payload, deliberate bipolar violations are inserted into the line code, to create a sufficient number of transitions to maintain synchronization; this is a form of run length limited coding. The receive terminal equipment recognizes the bipolar violations and removes from the user data the marks attributable to the bipolar violations.

T-carrier was originally developed for voice applications. When voice signals are digitized for transmission via T-carrier, the data stream always includes ample 1 bits to maintain synchronization. (To help this, the μ-law algorithm for digitizing voice signals encodes silence as a continuous stream of 1 bits.) However, when used for the transmission of digital data, the conventional AMI line code may fail to have sufficient marks to permit recovery of the incoming clock, and synchronization is lost. This happens when there are too many consecutive zeros in the user data being transported.

The exact pattern of bipolar violations that is transmitted in any given case depends on the line rate (i.e., the level of the line code in the T-carrier hierarchy) and the polarity of the last valid mark in the user data prior to the unacceptably long string of zeros. It would not be useful to have a violation immediately following a mark, as that would not produce a transition. For this reason, all modified AMI codes include a space (0 bit) before each violation mark.

In the descriptions below, "B" denotes a balancing mark with the opposite polarity to that of the preceding mark, while "V" denotes a bipolar violation mark,which has the same polarity as the preceding mark. In order to preserve AMI coding's desirable absence of DC bias, the number of positive marks must equal the number of negative marks. This happens automatically for balancing (B) marks, but the line code must ensure that positive and negative violation marks balance each other.

Zero code suppression

The first technique used to ensure a minimum density of marks was zero code suppression a form of bit stuffing, which set the least significant bit of each 8-bit byte transmitted to a 1. (This bit was already unavailable due to robbed-bit signaling.) This avoided the need to modify the AMI code in any way, but limited available data rates to 56,000 bits per second per DS0 voice channel. Also, the low minimum density of ones (12.5%) sometimes led to increased clock slippage on the span.

Increased demand for bandwidth, and compatibility with the G.703 and ISDN PRI standards which called for 64,000 bits per second, led to this system being superseded by B8ZS.

B8ZS (North American T1)

Commonly used in the North American T1 (Digital Signal 1) 1.544 Mbit/s line code, bipolar with eight-zero substitution (B8ZS) replaces each string of 8 consecutive zeros with the special pattern "000VB0VB". Depending on the polarity of the preceding mark, that could be 000+−0−+ OR 000−+0+−.

B6ZS (North American T2)

At the North American T2 rate (6.312 Mbit/s), bipolar violations are inserted if 6 or more consecutive zeros occur. This line code is called bipolar with six-zero substitution (B6ZS), and replaces 6 consecutive zeros with the pattern "0VB0VB". Depending on the polarity of the preceding mark, that could be 0+−0−+ OR 0−+0+−.

HDB3 (European E-carrier)

Used in all levels of the European E-carrier system, the high density bipolar of order 3 (HDB3) code replaces any instance of 4 consecutive 0 bits with one of the patterns "000V" or "B00V". The choice is made to ensure that consecutive violations are of differing polarity, i.e. separated by an odd number of normal + or - marks.

HDB 3 coding of "0000"
Number of +/- bits
since last V
Pattern Polarity
of last Pulse
Coded
odd 000V + 000+
000−
even B00V + −00−
+00+

These rules are applied on the code as it is being built from the original string. Everytime there are 4 consecutive zeros in the code they will be replaced by either 000−, 000+, +00+ or −00−. To determine which pattern to use, you have to count the number of pluses (+) and the number of minuses (−) since the last violation bit V that you used and subtract one from the other. If the result is an odd number then 000− or 000+ is used. If the result is an even number then +00+ or −00− is used. To determine which polarity to use you must look at the pulse preceding the four zeros. If 000V form must be used then V simply copies the polarity of last pulse, if B00V form must be used then B and V chosen will have the opposite polarity of the last pulse.

Summary of HDB3 encoding rules

Transmitted Data    HDB3 Encoded Pattern
0       0
1       Alternate Mark Inversion (AMI)
0000     000V (three 0's and a violation)
0000 0000        B00V B00V

Example 1 of HDB3 encoding

The pattern of bits

" 1 0 0 0 0 1 1 0 "

encoded in HDB3 is

" + 0 0 0 V − + 0 "

(the corresponding encoding using AMI is " + 0 0 0 0 − + "). Example 2 of HDB3 encoding

The pattern of bits

" 1 0 1 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 "

encoded in HDB3 is " + 0 − 0 0 0 V 0 + − B 0 0 V − + B 0 0 V 0 0 " which is:

" + 0 − 0 0 0 − 0 + − + 0 0 + − + − 0 0 − 0 0 "

(the corresponding encoding using AMI is " + 0 − 0 0 0 0 0 + − 0 0 0 0 + − 0 0 0 0 0 0 ")

Example 3 of HDB3 encoding

The pattern of bits

" 1 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 0 1 0 0 0 0"

encoded in HDB3 is "+ 0 − 0 0 0 V + 0 0 0 V − + B 0 0 V + − + 0 0 0 V − + − + B 0 0 V + 0 − B 0 0 V " which is:

" + 0 − 0 0 0 − + 0 0 0 + − + − 0 0 − + − + 0 0 0 + − + − + − 0 0 − + 0 − + 0 0 + "

(the corresponding encoding using AMI is " + 0 − 0 0 0 0 + 0 0 0 0 − + 0 0 0 0 − + − 0 0 0 0 + − + − 0 0 0 0 + 0 − 0 0 0 0 ")

B3ZS (North American T3)

At the North American T3 rate (44.736 Mbit/s), bipolar violations are inserted if 3 or more consecutive zeros occur. This line code is called bipolar with three-zero substitution (B3ZS), and is very similar to HDB3. Each run of 3 consecutive zeros is replaced by "00V" or "B0V". The choice is made to ensure that consecutive violations are of differing polarity, i.e. separated by an odd number of normal B marks.

B3ZS coding of "000"
Number of B bits
since last V
Pattern Polarity
of last B
Coded
odd 00V + 00+
00−
even B0V + −0−
+0+

See also

Other line codes that have 3 states:

 This article incorporates public domain material from the General Services Administration document "Federal Standard 1037C".


Wikimedia Foundation. 2010.

Look at other dictionaries:

  • Line code — An example of coding a binary signal using rectangular pulse amplitude modulation with polar non return to zero code …   Wikipedia

  • Pulse-code modulation — PCM redirects here. For other uses, see PCM (disambiguation). Pulse code modulation (PCM) is a method used to digitally represent sampled analog signals. It is the standard form for digital audio in computers and various Blu ray, Compact Disc and …   Wikipedia

  • Manchester code — In telecommunication and data storage, Manchester code (also known as Phase Encoding, or PE) is a line code in which the encoding of each data bit has at least one transition and occupies the same time. It therefore has no DC component, and is… …   Wikipedia

  • Hybrid ternary code — The hybrid (H ) ternary line code operates on a hybrid principle that combines the binary non return to zero level (NRZ L) and the polar return to zero (RZ) codes and thus it is called H ternary. The H ternary code has three levels for signal… …   Wikipedia

  • Bipolar encoding — An example of bipolar encoding, or AMI (Alternate mark inversion). In telecommunication, bipolar encoding is a type of line code (a method of encoding digital information to make it resistant to certain forms of signal loss during transmission).… …   Wikipedia

  • HDB3 — Der HDB3 Code (High Density Bipolar), auch als Modified AMI Code bezeichnet, ist ein Leitungscode aus dem Bereich der Telekommunikation. HDB3 Kodierung eines seriellen Datenstroms Inhaltsverzeichnis 1 Kurzdefinition …   Deutsch Wikipedia

  • Modulation — For musical change of key, see Modulation (music). For other uses, see Modulation (disambiguation). Passband modulation v · d · e …   Wikipedia

  • T-carrier — In telecommunications, T carrier, sometimes abbreviated as T CXR , is the generic designator for any of several digitally multiplexed telecommunications carrier systems originally developed by Bell Labs and used in North America, Japan, and Korea …   Wikipedia

  • Методы кодирования цифровых сигналов — В этой статье не хватает ссылок на источники информации. Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена. Вы можете …   Википедия

  • Differential Manchester encoding — Differential Manchester encoding, also called biphase mark code (BMC) or FM1, is a line code in which data and clock signals are combined to form a single 2 level self synchronizing data stream. It is a differential encoding, using the presence… …   Wikipedia


Share the article and excerpts

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

We are using cookies for the best presentation of our site. Continuing to use this site, you agree with this.