CodiodeCodiode
Home
Problem Solving
Skill Tracks
My Assignments
Contests
Leaderboard
Community
Settings
Codiode/Problems/Combinational Logic

Odd Parity Bit Generator for 3-bit Data

EasyLogic CircuitBuildFree

Every UART frame appends a single parity bit so the receiver can catch single-bit transmission errors. This is that circuit.

Given three data bits D2, D1, D0, produce an output P such that the total count of 1s across all four signals {D2, D1, D0, P} is always odd. When the data already contains an odd number of 1s, P must be 0. When the data contains an even number of 1s (including zero), P must be 1.

| D2 | D1 | D0 | 1s in data | P | |----|----|----|------------|---| | 0 | 0 | 0 | 0 (even) | 1 | | 0 | 0 | 1 | 1 (odd) | 0 | | 0 | 1 | 0 | 1 (odd) | 0 | | 0 | 1 | 1 | 2 (even) | 1 | | 1 | 0 | 0 | 1 (odd) | 0 | | 1 | 0 | 1 | 2 (even) | 1 | | 1 | 1 | 0 | 2 (even) | 1 | | 1 | 1 | 1 | 3 (odd) | 0 |

Example: D2=1, D1=1, D0=0 → three signals contain two 1s (even), so P=1, giving a total of three 1s across all four signals (odd). ✓

| Signal | Direction | Width | Description | |--------|-----------|-------|-------------| | D2 | input | 1 | Data bit 2 (most significant) | | D1 | input | 1 | Data bit 1 | | D0 | input | 1 | Data bit 0 (least significant) | | P | output | 1 | Parity bit set to make total 1-count odd |

Constraints

  • Purely combinational. No clock, no flip-flops
  • Optimal solution uses 3 components total
  • No restriction on gate types

Topics

CombinationalArithmetic

Solve this problem

Place the gates, wire them up and watch the signals settle. Every submission runs on the same simulation engine that grades it.

Free to solve. A Codiode account keeps your progress.

Sign in to solve

The circuit builder and code editor need a desktop screen. On a phone, read the problem here and open it on a laptop to solve.

Related problems

  • Binary to HexEasy
  • 1-to-4 Demultiplexer from AND and NOT GatesEasy
  • Full Adder from Half AddersEasy
  • Hex Nibble to BinaryEasy
  • 2-to-4 Line Decoder with Active-High EnableEasy
  • Signed Overflow Detection in Two's Complement AdditionMedium
  • Modulo ArithmeticMedium
  • BCD Addition with Carry CorrectionMedium

Browse all problems · Learning tracks