HDLForge learning hub

FPGA Design Practice & Interview Preparation

Practice FPGA-oriented design topics including debouncing, FSMs, CDC synchronizers, BRAM inference, timing constraints and reset strategy.

What interviewers usually look for

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

How to practise this topic

  1. Separate functional checks from implementation concerns such as CDC and timing.
  2. Test asynchronous or noisy inputs with realistic transitions when relevant.
  3. Confirm reset assertion and release do not create unintended pulses or state.

Practice problems

Button Debouncer
Easy · fpga · clock · input
Create a synchronous button debouncer suitable for an FPGA.
Traffic Light FSM
Easy · fsm · state-machine
Design a finite-state machine controlling a simple traffic light sequence.
Parameterized PWM Generator
Easy · fpga · pwm · counter
Generate a PWM waveform from an unsigned duty-cycle input.
Toggle-Based Pulse Synchronizer
Hard · cdc · pulse · synchronizer · fpga
Transfer a one-cycle pulse between unrelated clock domains using a toggle synchronizer.
Clock-Enable Data Register
Easy · clock-enable · fpga · sequential
Model the FPGA-friendly alternative to fabric clock gating: a register controlled by clock enable.
Four-Sample Delay Line
Easy · DSP · FIR · shift register
Store the current and previous input samples for a four-tap FIR.
DSP Valid Pipeline
Easy · DSP · pipeline · valid
Keep control timing aligned with a multi-stage arithmetic datapath.
Streaming FIR Pipeline Top
Hard · DSP · streaming · integration
Combine sample storage, FIR arithmetic and registered output into a streaming block.
Streaming Byte Position Counter
Easy · packet parser · streaming · counter
Track byte position within a packet without buffering the complete frame.
EtherType Extractor
Medium · Ethernet · parser · field extraction
Extract the Ethernet EtherType field from the word carrying bytes 12-15.
IPv4 Protocol Extractor
Medium · IPv4 · parser · field extraction
Capture the IPv4 protocol byte after an Ethernet IPv4 frame is identified.
UDP Port Extractor
Medium · UDP · parser · ports
Extract source and destination ports from a simplified fixed-header IPv4/UDP packet.
Packet Statistics Counters
Easy · packet parser · statistics · counters
Maintain simple line-rate counters for total IPv4 packets and UDP packets.
Streaming Ethernet/IPv4/UDP Parser
Hard · packet parser · streaming · integration
Integrate a fixed-latency streaming packet parser without full-frame buffering.
Feed Word Counter
Easy · HFT · market data · streaming
Track 32-bit word position inside each market-data message.
Market Message Header Decoder
Medium · HFT · protocol decode · message type
Decode a compact first-word header into message type and sequence number.
Symbol Filter
Medium · HFT · symbol filter · comparison
Discard messages that do not match a configured symbol ID.
Price / Quantity Extractor
Medium · HFT · field extraction · price
Capture normalized price and quantity from consecutive feed words.
Message Classifier
Easy · HFT · classification · combinational
Classify three feed message types into add, update and delete operations.
Feed Latency Meter
Medium · HFT · latency · timestamp
Measure cycle latency from message start to normalized output.
Low-Latency Market Data Parser
Hard · HFT · streaming · fixed latency
Integrate a simplified fixed-format feed parser that emits normalized add/update/delete messages.
SPI Clock Divider
Easy · SPI · clock divider · serial
Generate a programmable SPI clock-enable tick from the system clock.
SPI SCLK Generator
Medium · SPI · CPOL · clocking
Generate SCLK with programmable idle polarity.
SPI Sample / Shift Edge Classifier
Medium · SPI · CPHA · timing
Classify each SCLK transition as a sample edge or a shift edge using CPHA.
SPI MOSI Shift Register
Medium · SPI · MOSI · shift register
Serialize one configurable-width transmit word MSB-first.
SPI MISO Receive Register
Medium · SPI · MISO · sampling
Capture one receive word MSB-first from MISO.
SPI Chip-Select Controller
Easy · SPI · chip select · transaction
Control an active-low SPI chip-select around a transfer.
SPI Transfer Bit Counter
Medium · SPI · counter · word length
Track how many sample edges have occurred in a configurable transfer.
Configurable SPI Master
Hard · SPI · CPOL · CPHA · master
Integrate a configurable SPI master supporting all four CPOL/CPHA modes.

How to use this topic

Start with easier problems, implement or reason through the task without looking at a solution, then revisit medium and hard problems. Use the HDLForge roadmap to combine this topic with adjacent skills.

Follow the HDLForge roadmap or browse the complete problem set.

Related implementation guides