Skip to content
Samuel Fayn
← All work

Georgia Tech · Digital Design Lab

Fall 2025

SCOMP Arithmetic Peripheral

A hardware math add-on for SCOMP, a simple teaching CPU: multiply, divide, and absolute value, written in VHDL on an Intel FPGA.

SCOMP Arithmetic Peripheral
Overview

SCOMP is a simple teaching processor used in Georgia Tech’s digital design lab. The SCOMP we were provided with could add and subtract but could not multiply, divide, or take an absolute value. Working on a team, I built a math coprocessor that gives SCOMP those three missing operations. The coprocessor is a set of hardware add-ons, called peripherals, written in the hardware language VHDL and running on an Intel FPGA, a chip that can be reprogrammed to act as custom hardware.

Role
Hardware engineer (team)
When
Fall 2025
Where
Georgia Tech · Digital Design Lab
Stack
VHDLIntel DE10-Standard FPGASCOMPDigital logic

SCOMP Arithmetic Peripheral, screen by screen

Tour · 4 screens

Register map listing each operation’s address, inputs, and outputs

01 / 04or swipe the screen

01 / 04 · How a program uses the coprocessor

Design decisions

Supporting bigger numbers risked making the coprocessor harder to use, so the team split multiplication into two designs instead of one. The simple multiplier is the easy path for 8-bit numbers; the complex multiplier handles full 16-bit numbers at the cost of a second instruction. A programmer picks whichever multiplier fits the task.

Each operation was built as its own separate hardware block behind a shared interface, so teammates could work on different operations in parallel without stepping on one another.

The change that mattered most was replacing a hand-written multiplier with VHDL’s standard math libraries. The standard libraries do the arithmetic reliably and cut the debugging, which freed the team to focus on the harder problem — getting SCOMP and the peripherals to talk to each other correctly.