59. Excess-3 to BCD Converter

Loading simulator…

Excess-3 code is generated by adding 0011 to a BCD digit. Therefore, converting Excess-3 back to BCD is equivalent to subtracting:

0011

from the valid Excess-3 input.

For example:

Excess-3 0011 → BCD 0000
Excess-3 1000 → BCD 0101
Excess-3 1100 → BCD 1001

The circuit can be simplified by defining the shared intermediate signal:

N = E1 · E0

The resulting output equations are:

D3 = E3 · (E2 + N)
D2 = (E2 ⊕ N)'
D1 = E1 ⊕ E0
D0 = E0'

Substituting N = E1 · E0:

D3 = E3 · [E2 + (E1 · E0)]
D2 = [E2 ⊕ (E1 · E0)]'
D1 = E1 ⊕ E0
D0 = E0'

Circuit Operation

  • E1 and E0 are ANDed to generate the shared signal:

    N = E1 · E0
  • D3 is generated by ORing E2 with N and then ANDing the result with E3.
  • D2 is generated by XNORing E2 with N.
  • D1 is generated by XORing E1 and E0.
  • D0 is generated by inverting E0.

Only valid Excess-3 codes 0011–1100 corresponding to decimal digits 0–9 are required to produce defined BCD outputs. The other six combinations are treated as don't-care conditions.