
Given that most CS students, especially at liberal arts colleges, lack engineering or logic design experience, we employ visualization in our computer architecture course to expedite student learning. By having students design and learn visually, students developed a deeper understanding and appreciation of computer architecture. Within a single semester, the course equips students with the skills to engage in innovative computer architecture research. We describe the course materials, student projects, and undergraduate research. By combining visualization with experiential learning, we broaden participation and encourage undergraduate research in computer architecture. The course materials will be made publicly available.
A new tool called Visceral VCD was utilized to replace FPGA hardware during the pandemic. Its functionality was proven utilizing multiple projects in a digital logic course. The pedagogy of the assignments is discussed in detail, as well as how the use of Visceral VCD allowed electrical and computer engineering students to complete all coursework remotely during quarantine. Use of this tool was continued after quarantine restrictions eased due to its effectiveness. Visceral VCD can be used in place of hardware for multiple hardware description languages and FPGA development environments.
Computer architecture students today arguably do not have as close a connection to energy as they do to performance. Specifically, they are not trained to reason about energy in a quantifiable way. Architecture students are taught that performance and energy are considered equally important. However, most course material focuses on a performance-driven narrative, meaning that students learn about processors, memories, networks, and systems with a strong sense of the performance implications, but with little intuition for the energy implications. On the other hand, VLSI students concretely learn about energy, but they are immersed in a world of gates and transistors and do not connect their understanding about energy back up to the abstraction of SoC-level components. How can we bridge this gap to enable architecture students to reason about the energy implications of hardware design concepts, directly within a computer architecture class? In this work, we attempt to mitigate these challenges by introducing a teaching methodology that integrates energy into pipeline diagrams. We include examples of specific classroom tools including the representation of an energy map, and we show how pipeline diagrams augmented with an energy map can enable first-order quantitative comparisons of performance, energy, and power across different design points. The approach is simple enough for lecture, in-class activities, and in exams. We hope this approach can train future students in thinking from first principles in evaluating performance-energy tradeoffs.
Computer architecture is primarily studied through simulation. Most existing simulators are either comprehensive research tools, or ones targeting a single area within computer architecture. CADSS is an open source computer architecture simulator that can support simulations written in multiple languages across a variety of areas of computer architecture, either individually or combined together. It is designed to support student learning, as well as assessment by instructors.
This paper describes the computer architecture content in Dive into Systems, our free, online textbook that introduces a broad range of computer systems topics. Dive into Systems assumes only a CS1 background of the reader, and includes numerous examples and illustrations to foster a reader’s understanding of its content. Our textbook is designed to be used as a primary textbook for a range of courses that introduce computer systems and computer architecture topics. It also serves as a supplementary text in upper-level undergraduate and graduate level courses to provide background material on computer architecture, systems, and parallel computing. In addition to presenting the details about our book’s coverage of computer architecture topics, we also discuss the overarching themes of our textbook and our motivations for writing a free online textbook to introduce computer systems topics. Our book is currently used by more than 45 institutions in a wide range of courses, including undergraduate computer architecture courses.