Project F

FPGA & RISC-V Tutorials

Tutorials to get you started and improve your design skills. See also Recommended FPGA sites.

FPGA Graphics

Learn graphics at the hardware level and improve your FPGA design skills.

RISC-V Assembler

Get comfortable with RISC-V assembler.

  • Arithmetic - load immediate (li, lui), addition (add, addi), and subtraction (sub)
  • Logical - bitwise logical instructions, such as and, not, and xori
  • Shift - shift instructions, such as sll, srl, and srai
  • Load and Store - load and store instructions, such as lw, sw, and lbu
  • Branch and Set - branch and set instructions, such as beq, bltu, bgez, and slt
  • Jump and Function - jump instructions: jal and jalr, function calls, and RISC-V ABI
  • Multiply and Divide - multiply and divide instructions, such as mul, mulh, and div
  • Compiler Explorer - use Compiler Explorer to generate RISC-V assembly code
  • Assembler Cheat Sheet - 32-bit RISC-V instruction reference, registers, and concepts

Hello FPGA

An introduction to FPGA development and Verilog with the Digilent Arty or Nexys Video boards.

Maths and Algorithms

Learn about numbers and put maths to work in Verilog algorithms.

FPGA How To

Handy recipes for solving FPGA problems. See the Tools page for FPGA dev and testing tools.

Hardware & Devices

Maths

See the new Maths Tutorials for topics including vectors, fixed-point numbers, division, and DSPs.