Multi-Level Transmit 3

The Multi-Level Transmit 3 scheme (or MLT-3 for short) uses 3 voltage levels: +V, 0V and -V. As is the case with other types of coding schemes, in order to know the next voltage level one must know what the previous levels were. The logic to encode each bit might seem fuzzy at first, but it's quickly understood after analyzing a few examples. Here's the breakdown of the encoding rules that uses MLT-3.

  • If the current bit is 0 , the previous level is maintained.
  • If the current bit is 1 , there are two possibilities:
    • If the previous level was different than 0V, the current level will be 0V.
    • If the previous level was 0V, the current level will be the opposite to the previous non-zero level.

MLT3 is often used in in Fast Ethernet (100Base-TX), due to its high bandwidth efficiency and its low Electromagnetic Interference (I). This last feature is largely due to the fact that, since the transitions always occur small steps -between 0V and a positive or negative voltage, instead of between a positive and a negative voltage directly-, the rate of change of voltage is smaller (and this rate is a major factor in EMI).


As all encoding schemes, however, it also has some drawbacks. Among them is its higher complexity compared to other schemes, and the fact that long sequences of 0s decrease the signal frequency (although this is only an issue when the data to transmit isn't pre-coded by design with a different scheme, like 4B5B.)


Below are a couple of examples of the MLT-3 scheme.


First graph example

Second graph example