FPGA · Easy · Verilog, SystemVerilog, VHDL

Button Debouncer

Create a synchronous button debouncer suitable for an FPGA.

Task

Filter mechanical bouncing and produce a clean single-cycle event.

Examples

Constraints

What this problem is testing

FPGA problems test whether logically correct RTL will behave predictably in hardware, including clock-domain boundaries, reset release, noisy inputs, inferred resources, and timing.

Interview habit: before coding, state reset behavior, the state that must be stored, and the conditions that update each output.

Verification plan

Common mistakes

Interview follow-up questions

Concepts to review

fpga, clock, input

Open Button Debouncer in the HDLForge interactive editor.

Related problems

Explore the FPGA Design Practice & Interview Preparation hub.

Continue practising