ECE-554: Digital Engineering Laboratory

ECE-554 was my capstone design course.  Of all the classes I've taken, ECE-554 required the most time and effort.  The course outline is simple: design a non-trivial processor for some purpose. My team, which was composed of 5 students, decided on constructing an explicitly multithreaded processor that supports subword instructions.  (A general outline can be viewed via the link below).  Our 'demo' featured a Windows terminal that streamed images into the processor which processed them via a variety of filters.  We also demonstrated the use of multiple threads in implementing a fault-tolerant computing scheme.

Project Overview
Micro-architecture Manual
Architecture Manual
Software Manual

I implemented a major portion of the software run on the processor, but its successful implementation was truly a team effort.   Overall, our group was the only one to construct a fully working processor to the specification provided in our documentation.