Lecture: TuTh 11:40am-1:15pm, 102 Natural Sciences 2 Annex (recordings on YouTube)
Instructor: Scott Beamer (sbeamer@ucsc.edu)
Description: Agile Hardware Design techniques take the best of software engineering methods and apply them to improve hardware design productivity. Agile approaches not only reduce the time to solution, but they can also produce solutions which are better tailored for their target problems. In this course, we cover these techniques while taking advantage of the Chisel hardware design language which brings the strengths of functional object-oriented programming to hardware design. The course will consist of engaging lectures (intermixed coding demos and guest speakers) and progressive design assignments that culminate in a small project.
Prerequisites: Experience in at least 2 of the following 3 areas: logic design (Verilog/VHDL e.g. CSE 100/L or 125/L), computer architecture (e.g. CSE 120/220), and advanced programming (functional, object oriented, etc…).
We will be welcoming undergraduate students into the course!
NOTE: We will be making much of this course publicly available including the assignments, code templates, and recordings of the lectures.
This is the fifth offering of this course, and it was previously offered in Winter 2024, Winter 2023, Winter 2022, and started in Spring 2021.