Problems / Logic Synthesis / Constant propagation and dead-logic sweep

Constant propagation and dead-logic sweep

Logic Synthesis medium interactive · in-browser

Constant propagation and dead-logic sweep. Real designs strap configuration inputs to fixed values: a mode pin held low, an unused feature disabled. Those constants flow through the logic, and the label above each gate shows the value its output then carries.

Here sel = 0 and en = 1 are tied. A gate is removed for one of three reasons:

  • its output folds to a constant (g1 = a AND 0 = 0),
  • its output is just a copy of one input, so the gate is really a wire (g2 = b AND 1 = b; an AND with 1, or an OR with 0, passes its other input unchanged),
  • its output is unused, driving nothing: dead logic (g6).

A gate stays only if it still computes a real function of two live signals (g4 = b XOR c). So g2 is not "dead", it just collapses to a wire: the gate does no work, so it is deleted and b connects straight through. Click every gate that gets removed, then Submit sweep. The whole output reduces to out = b XOR c.