LearnTronics
Simplifying Boolean Expressions
Algebra can remove unnecessary hardware
The purpose is not merely to make an expression prettier. An equivalent expression with fewer operations may require fewer gates, fewer connections, less loading, less power, and less accumulated propagation delay.
Example 1 — absorption
Y = A + A•B
Y = A (absorption)
Example 2 — use the easy pieces first
Y = A•1 + B•0
Y = A + 0 (identity and dominance)
Y = A
Example 3 — factor before simplifying
Y = A•B + A•~B
Y = A(B + ~B) (factor A)
Y = A•1 (complement)
Y = A
Another way to read Example 3
“A AND B, OR A AND NOT B” simply says that A is required, while B may be either state. Therefore B does not actually affect the result.
Do not optimize blindly
In real hardware, the mathematically smallest expression is not automatically the best implementation. Available ICs, timing, fan-out, hazards, power, board space, cost, and testability can change the practical choice.