Digital Logic Laboratory

This lab enables opportunities that facilitate learning both combinational and simple sequential designs. These designs are implemented using a Lattice FPGA through schematic capture and Verilog. Some examples of projects are adders, 4 digit seven segment display controllers, SPI communicators, and even an open ended final design project.

The following lab material requires Adobe Acrobot Reader to view.

Lattice MachX03 FPGA Starter Kit

Hardware Used

Software Used

Important Documents

Lab Manual



Section 1: Basic Combinational Logic and the MachXO2

This section covers the basics of using the Lattice Diamond software to program an FPGA, and connecting the Lattice Breakout Kit to the button board.

Section 2: Adders on an FPGA

Learn about number systems and adders.

Section 3: Combinational Logic (Seven Segment Driver)


Design a 7- segment display decoder.

Section 4: Driving multi-digit LED displays


Use a state machine to cycle through digits fast enough to blur separate images together into a single number.

Section 5: Voltmeter


Design a system that will measure an analog voltage and display it using a multi-digit 7 segment display.
ADC Module

Section 6: Final Design Project


Design something creative.

Appendix: System Overview

  • Lattice Breakout Board
  • Schematics
  • Silk Screens and Pinouts
  • Parts List and Suppliers