Skip to main content

Switch bounce; negative edge RS flip-flop

Short answer

Switch bounce is eliminated by an SR latch debouncer: an SPDT switch makes first contact set/reset the latch, and bounces cause S'=R'=1, holding the state. A negative edge-triggered RS flip-flop updates only at the falling clock edge. Excitation table: Q_n to Q_{n+1} gives S,R: 0→0: 0,X; 0→1: 1,0; 1→0: 0,1; 1→1: X,0.

How do you eliminate the switch contacts bounce circuits? Explain the operation of negative edge triggered RS flip-flop along with excitation table.

Eliminating switch contact bounce

When a mechanical switch is closed or opened, its contacts bounce several times for a few milliseconds, so a digital circuit sees many pulses instead of one clean transition.

Method 1: SR (NAND) latch debouncer using an SPDT switch:

 +5V-[R1]-+-------S'-->+--------+
          |            | NAND   |--> Q (clean)
     A  o-+            | SR     |
         \             | latch  |--> Q'
  GND --o  (arm)       |        |
     B  o-+            |        |
          |            |        |
 +5V-[R2]-+-------R'-->+--------+
  • When the switch moves from A to B, the first touch at B resets the latch.
  • Bounces at B only make R' go 1, 0, 1, ...; with S' = 1 and R' = 1 the latch holds its state, so the output stays clean.
  • The output changes only once, at the first contact.

Method 2: an RC filter followed by a Schmitt-trigger inverter (e.g. 74HC14); the capacitor smooths the bounces and the hysteresis gives one clean edge. Method 3: software delay (about 10–20 ms) in microcontrollers.

Negative edge-triggered RS flip-flop

It changes state only at the falling edge of the clock. An edge detector makes a very narrow pulse CLK* when CLK goes from 1 to 0, and the steering gates G1 and G2 are enabled only during this pulse. Symbol: triangle with a bubble at CLK.

 CLK --+--->[ NOT ]----------->+-----+
       |                       | AND |---> CLK*
       +--->[ delay dt ]------>+-----+
 CLK* = CLK' . CLK(delayed): a narrow pulse
 at every falling edge of CLK
          +------+  S*  +------+
 S -------| NAND |----->| NAND |-----> Q
 CLK* ----|  G1  |  Q'->|  G3  |
          +------+      +------+
          +------+  R*  +------+
 R -------| NAND |----->| NAND |-----> Q'
 CLK* ----|  G2  |  Q-->|  G4  |
          +------+      +------+
 G3 and G4 form a cross-coupled NAND latch.
CLKSRQn+1Q_{n+1}
Falling edge00QnQ_n (hold)
Falling edge010 (reset)
Falling edge101 (set)
Falling edge11Invalid
0, 1, risingXXQnQ_n

Excitation table

QnQ_nQn+1Q_{n+1}SR
000X
0110
1001
11X0

Characteristic equation: Qn+1=S+R′QnQ_{n+1} = S + R'Q_n with SR=0SR = 0.

✓ Answer checked by Claude Opus 5.5 (high effort)

All Digital Logic chapter 6 questions →