/CSCI93

Source code of my very own "Vulture Platform Computer" (VPC) - compiler, assembler code, emulator and FPGA code (VHDL). From Harvard Extension School Computer Architecture Fall-2017

Primary LanguageJava

alt text

My academia code

In 2017 I decided (for pure passion) to take a hard core Computer Architecture software engineering course at Harvard Extension School. The most recent syllabus of this class - now called CSCIE93 - is here.

Vulture Platform Computer (VPC) is a project that creates a computer from scratch that produces the product of two numbers. Yeah, that's it. But it was the most difficult IT project that I have ever done.

Why?

It has its own chip architecture and instructions (largely based on MIPS), it has its own assembler language, a compiler and an emulator. Once compiled, the binary code generated is runnable an Intel Altera DE2-115 Development and Education FPGA board with VHDL. All this in less than 3 months while working on a demanding full time job (lead engineering one world's biggest banks in application containerization).

VPC Components:

You will find the full instructions of the VPC on the Operational here: https://github.com/brito-rafa/CSCI93/blob/master/VPC-v22-Brito.pdf

Final Project (video) of the course is here: https://www.youtube.com/watch?v=gvAxTfBhVyo

My final grade was A- :)

(*) Why Vulture? It is the mascot of my brazilian soccer team, Flamengo. The picture of king vulture on this README is from O'Reilly SpamAssassin Book - this project has nothing to do with Spam, and I took the liberty to use its art - thank you so much!