Rebounder Tech Blog

Written by the people who actually run these systems in production.

What Stops You First in Quartus Is the Setup

Published About 2 min readBy the Rebounder engineering team — the people who operate these systems

This article may contain affiliate links. Its content is not affected by advertising.

In short

The DE10-Lite's 7-segment display is active LOW and lights on 0, so writing 1 as intuition suggests inverts the display.

The environment

Quartus Prime Lite Edition (18.1) and a DE10-Lite carrying an Intel MAX10. The free edition is fine for getting started.

Three places you get stuck

① The programmer’s driver

The first stumble was the USB Blaster driver. The board connects and is not recognised, and time goes there.

The first wall in getting started with FPGAs is the drivers, not the circuit itself.

② Pin assignment

Each signal you wrote has to be assigned, one at a time, to a specific switch, LED or 7-segment on the board (for example, an input to PIN_C10 with the I/O standard 3.3-V LVTTL).

Once you are used to it, it is routine, but at first “the code is right and nothing happens = a missing pin setting” is confusing.

③ The 7-segment lights on 0

The DE10-Lite’s 7-segment display is active LOW — that is, it lights on 0.

Write it expecting 1 to light and the display comes out inverted.

Verilog examples (easiest first)

Basic gates

assign outC = inA & inB;   // AND
assign outD = inA | inB;   // OR

One line and the logic takes shape.

Extracting bits

assign LED = SW[7:4];      // the top 4 bits of an 8-bit switch to the LEDs

Decimal on a two-digit 7-segment

Split 6 bits (0–63) into ones and tens with %10 and /10, convert into 7-segment patterns and drive two digits. This is where ③, active LOW, catches you.

Later on I also used register arrays and `define macros, trying out a slightly more software-like style bit by bit.

What the three have in common

Lined up, none of them is solved by knowledge of circuits.

  • ① is an OS-side problem
  • ② is a tool setting
  • ③ is an electrical property of the board

When you start learning FPGAs, what you brace for is the logic design. What actually stopped me was outside the circuit.

Which, turned around, also means you clear it once and never get stuck there again. ① to ③ are environment-specific problems and do not happen with a second board. Knowing they are heavy only the first time keeps you from giving up when you get stuck.

Frequently asked questions

Q1My code is correct and nothing happens.

Suspect a missing pin assignment. Each signal you wrote has to be assigned, one at a time, to a specific switch, LED or 7-segment on the board, and without that nothing runs however correct the code is.

Q2The board is connected and I cannot program it.

The programmer's driver (USB Blaster) may not be recognised. The first wall in getting started with FPGAs is not the circuit but this kind of environment setup.

Q3Why does the 7-segment display look wrong?

Because the DE10-Lite's 7-segment is active LOW and lights on 0. Write it expecting 1 to light and the display comes out inverted.

What this article is based on

  • Markdown file

Every claim in this article comes from the records above. The repositories we operate are private so we cannot link to them, but which file, which lines, and at which commit we read them is recorded for every article. Nothing here is written from guesswork.