Skip to main content

Combinational vs sequential; latch as bounce eliminator

Short answer

A NAND S'-R' latch with an SPDT switch eliminates contact bounce. When the switch moves, the first contact sets or resets the latch; subsequent bounces leave S'=R'=1 (hold), so output makes a single clean transition.

Differentiate between combination and sequential circuit. Explain briefly how latch can be used as bounce eliminator.

Combinational vs sequential circuit

PointCombinational circuitSequential circuit
Output depends onPresent inputs onlyPresent inputs and past state
MemoryNo memory elementHas memory (latches, flip-flops)
FeedbackNo feedback pathOutput fed back to input
ClockNot neededUsually needed (synchronous)
Described byTruth tableState table / state diagram
ExamplesAdder, MUX, decoderFlip-flop, register, counter

Latch as a switch bounce eliminator

Contact bounce: when a mechanical switch is thrown, the metal contact hits the new terminal and bounces several times for a few milliseconds before it settles. A logic input connected directly to the switch therefore sees a burst of 0-1-0-1 pulses instead of one clean change. A counter would count every bounce.

A NAND S'-R' latch with a single-pole double-throw (SPDT) switch removes these pulses:

        +5V                    +5V
         |                      |
        [R1]                   [R2]
         |                      |
  S' <---+---o A          B o---+---> R'
              \          /
               \___o____/  switch arm
                   |       (touches A or B)
                  GND
          +---------------+
 S' ----->| NAND S'-R'    |---> Q
 R' ----->| latch         |---> Q'
          +---------------+

How it works

  1. With the switch at position A, S' = 0 and R' = 1 (pulled up by R2). The latch is set: Q = 1.
  2. When the switch is moved towards B, it first leaves A. Now S' = R' = 1 (both pulled up): the latch is in the hold state and Q stays 1.
  3. The first time the contact touches B, R' = 0 and the latch resets: Q = 0.
  4. The contact now bounces: it leaves B (R' = 1, hold, Q stays 0) and touches B again (reset again, Q stays 0). The bounce never reaches A, so S' never becomes 0.
  5. Hence Q makes a single clean transition from 1 to 0 at the first contact. Moving the switch back to A gives a single clean 0-to-1 transition in the same way.
 R' (at B)  ‾‾‾‾‾|_|‾|_|‾|________
 Q          ‾‾‾‾‾|________________
              first touch: one clean edge

The latch works because its "hold" condition (S' = R' = 1) ignores the open-contact gaps during bouncing, while the first contact already set the final state.

✓ Answer checked by Claude Opus 5.5 (high effort)

All Digital Logic chapter 6 questions →