Computer Science I / Hardware Description Thinking
Practice question · Multiple choice

A hardware description language looks like a programming language and does something quite different. What is the essential difference, and why does it catch newcomers out?

Hints
  1. Two concurrent assignments in Verilog. In what order do they happen?
  2. Ask what a for loop in synthesisable HDL actually produces.
Show the answer

A. Because HDL describes hardware that exists all at once, in parallel.

Why

Software executes one instruction after another; hardware is all present at once, so two concurrent assignments are two circuits and writing them in the other order changes nothing. The characteristic trap is that a for loop unrolls, a thousand iterations generates a thousand adders. A conditional becomes a multiplexer, because both branches exist physically.

Read the lesson: Hardware Description Thinking →

Practise Hardware Description Thinking

The app has 6 more questions on this lesson, and keeps your place in the course. Computer Science I is free to start.

More questions on Hardware Description Thinking