58. BCD to Excess-3 Converter

Loading simulator…

An Excess-3 code is obtained by adding binary 0011 to a valid BCD digit.

For example:

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

Since only BCD inputs 0000–1001 are valid, the remaining six combinations can be treated as don't-care conditions when simplifying the output logic.

Define the shared intermediate term:

N = D1 + D0

The minimized output equations are:

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

Substituting N = D1 + D0 gives:

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

Circuit Operation

  • D1 and D0 are first applied to an OR gate to generate:

    N = D1 + D0
  • E3 is generated by ANDing D2 with N and ORing the result with D3.
  • E2 is generated by XORing D2 with N.
  • E1 is generated using an XNOR gate connected to D1 and D0.
  • E0 is generated by inverting D0.

The shared term D1 + D0 reduces the required logic and provides a compact implementation of the BCD-to-Excess-3 converter.