FPGA · Hard · SystemVerilog

Configurable SPI Master

Integrate a configurable SPI master supporting all four CPOL/CPHA modes.

Task

On start, assert CS, load tx_data and begin toggling SCLK. Generate sample/shift events from leading/trailing edges, capture MISO, and deassert CS with done after WORD_BITS samples.

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

Edge cases worth testing

Common mistakes

Interview follow-up questions

Concepts to review

SPI, CPOL, CPHA, master

Open Configurable SPI Master in the HDLForge interactive editor.

Related problems

Explore the FPGA Design Practice & Interview Preparation hub.

Continue practising