ECE354 - Computer Systems Lab II (Spring 2019)

A designer knows that he/she has achieved perfection in design not when there is nothing left to add but when there is nothing left to take away - Antoine de Saint-Exupery 

Course Info


Some Mondays & Wednesdays (Check schedule) at 2:30 p.m. (Duration - 1:15 – 2 hours)


Lectures: Marston Hall room 132, Lab: Duda Hall


ECE353 - Computer Systems Lab I


Prof. Csaba Andras Moritz, Office Hours: Wed 2:30PM-3:30PM, or by email appointment; office is in Knowles 2nd floor (next to elevator).

Recommended Text:

Marilyn Wolf: Computers as Components 3rd edition, Morgan Kauffman Publishers, 2012.

Course web page:

Course Administration: (course information and lab instructions).

Please go through the slides carefully for details regarding administration, rules, and requirements.

Grad TAs:

Undergrad TAs:

TA Schedule:

Sachin Bhat (
Sourabh Kulkarni (

Bryan Tam (
David Welch (





10 AM - 12 PM
12 PM - 2 PM
2 PM - 5 PM

Sourabh and Sachin


4 PM - 6 PM



10 AM - 12 PM



11 AM - 1 PM
2 PM - 4 PM
4 PM - 6 PM



11 AM - 1 PM
2 PM - 4 PM


Course Description

With the advent of low cost embedded systems, ubiquitous computing will soon be a reality. This course, which is being offered in a new redesigned format utilizing a state-of-the-art development board (first offering in Spring 2017), focuses on rapid prototyping of embedded systems using novel System-on-Chip (SOC) FPGAs and sophisticated development tools for both software and hardware design. Students gain hands-on experience working with state-of-the-art Altera DE1-SOC boards which integrate an ARM-based hardcore processor system (HPS) consisting of processor, peripherals and memory interfaces tied with the FPGA fabric. The FPGA fabric allows custom hardware designs to be mapped as well as it can accommodate an Altera NIOS softcore microprocessor. In the process of designing systems with these boards, students get familiar with software tools like Quartus Prime, Qsys, Nios II IDE, ModelSim and Altera Monitor program. The labs involve interfacing external modules with the boards, implementing image processing algorithms in software, implementing a data compression algorithm in hardware using Verilog and decompression algorithm in software using C. Hence it is expected that the students are acquainted with basic digital design, and have a good grasp of languages such as Verilog and C before taking this course. 

Course Objectives:

·       To understand the principles of Embedded Systems and the tradeoffs which guide the hardware-software partitioning of any design.

·       To develop embedded software and hardware, including reusing existing components.

·       To prototype, debug and demonstrate embedded systems combining modules, interfaces, computation, memory.

·       To evaluate and document laboratory processes and products.

Student Feedback on the course:
It is consistently one of the highest rated courses in the department.

UMass Calendar:

The course has been completely redesigned including new hardware, tools and projects. The team involved in redesigning the course for Spring 2017 consists of Prof. Csaba Andras Moritz, Sachin Bhat, Carl Senecal, Omid Meh, Sourabh Kulkarni and Sam Baldwin (involved in board selection process). 

If interested, please review the key aspects: (i) What others do; (ii) Altera’s FPGA boards - comparison; (iii) DE1-SoC board (our selection).