Electronic – Differential Manchester Encoding

communicationencoderencodingmanchester-coding

I am trying to understand Differential Manchester Encoding. The way I understand it is that the representation depends on the previous bit. If the previous bit was 0 there is a transition, but if it was one there is no transition.

Given that, would the following be correct?
enter image description here

Best Answer

Your representation is correct. Differential Manchester encodes each data bit as follow:

  • If it has the same value as the data bit before --> High to Low transition (that would be a '0' in non-differential Manchester)
  • If it has a different value than the data bit before --> Low to High Transition (that would be a '1' in non-differential Manchester).

The very first bit of the transmission would not be specified, you may choose to encode it as normal Manchester.

You may also first calculate the "differential data stream" and then perform a normal Manchester encoding of this differential data stream. The differential data stream would be defined as: \${\text{diff}}_i={\text{data}}_i \oplus {\text{data}}_{i-1}\$.

For example if your data is 00110110 you would get X0101101 and then encode it as normal Manchester.

The decoding of the data stream is just the same. You may decode it first as normal Manchester and then apply \${\text{data}}_i={\text{decoded}}_i \oplus {\text{decoded}}_{i-1}\$