CSE 141L: Introduction to Computer Architecture (Lab) (2024)

Pat Pannuto

CSE 141L: Introduction to Computer Architecture (Lab) (1)

CSE 141L: Introduction to Computer Architecture (Lab) (2)

CSE 141L: Introduction to Computer Architecture (Lab) (3)

CSE 141L: Introduction to Computer Architecture (Lab) (4)

CSE 141L: Introduction to Computer Architecture (Lab) (5)

CSE 141L: Introduction to Computer Architecture (Lab) (6)

CSE141L - Winter 2022

Meets M/W from 12:00 to 12:50 in CENTR 115.

Pat Pannuto is the instructor, and their office is CSE 3202 (right in the corner).
Office hours Wednesday 3:30-4:20pm (via Zoom orin-person), or always available by appointment (please email / chat after class).

Overview

Hands-on digital design projects aiming to familiarize students with state machines, digital logic implementations, design of processor, control, and memory systems.This is a digital design, simulation, and synthesis project course.

This course is designed to run alongside CSE 141.We expect that you are enrolled in both.

Objectives

By the end of this course, students will be able to:

  1. Learn correct hardware design practices suitable for FPGA and VLSI digital design.
  2. Learn how to write Synthesizable Verilog, and to use the tools to turn it into a circuit.
  3. Design, Implement, and Test your own digital circuits, all the way to an FPGA bitstream.
  4. Learn about computer architecture in the best way – by doing.
  5. Learn how programs and algorithms are implemented in hardware.
  6. Work in a team, building a large, complex system using design principles that apply to both software and hardware.
  7. Help your classmates and exercise your creativity.

Prerequisites

  • CSE141 is a strongly enforced co-requisite. You must either be concurrently enrolled in CSE141 or have previously taken CSE141. It is expected that students take CSE141 and CSE141L in the same term.
  • CSE140/140L (Required).This course assumes knowledges of circuits and primitives such as registers and gates, synchronous and combinational logic, state machines, and structures such as muxes and adders. We also assume some familiarity with tools (Quartus, ModelSim, and Verilog generally) from 140/140L.
  • CSE110 (Strongly Recommended). 110 gives critical experience in the design, planning, and implementation of a large-scale project. It is strongly encouraged for students to take 110 first, as this course is also a large project but more of the planning and breakdown of work is your own responsibility in 141L.
  • Pat Pannuto
  • CSE 141L: Introduction to Computer Architecture (Lab)
    • CSE141L - Winter 2022
    • Overview
      • Objectives
      • Prerequisites
    • Syllabus
      • DISCLAIMER
      • Instructor
        • TAs
      • Schedule
      • Expectations
        • Academic Integrity
        • Accommodations for Students with Disabilities
      • Assignments
        • Logistics
        • Course Resources
      • Grading
        • Milestones
      • Agenda

Syllabus

DISCLAIMER

Due to our unusual circ*mstances, the details in this syllabus may change (e.g. schedule, grading policy, assignments, etc.). We will update this syllabus in the event of changes as the course progresses.

Instructor

  • Pat Pannuto - ppannuto@eng.ucsd.edu

TAs

  • Adithya Anand - ananand@ucsd.edu
  • Link Lin - yul065@ucsd.edu
  • Chavisa Thamjarat - cthamjar@ucsd.edu
  • Kanlin Wang - kaw008@ucsd.edu

Schedule

Lectures are M/W from 12:00 to 12:50 US/Pacific, CENTR 115.

Expectations

Course format is two hours of lecture/demo/discussion per week, plusindependent work in the CSE basem*nt labs (B250, B260, B270) or at home on owncomputers. Attendance is strongly recommended, but not required, and alllectures are podcast.

Discussions, Q&A, peer-to-peer instruction, etc. take place on our Piazzawebsite. You are encouraged to post questions, help answer other students'questions, and provide feedback and suggestions to your instruction staff.

What is important to me is that students put forth an honest effort and treatone another, and the instructors, courteously and honestly. Constructivecriticism is always welcome.

Academic Integrity

This is a collaborative course, but students are expected to do their own workand to refrain from taking credit for the work of others.

Accommodations for Students with Disabilities

If you have a disability for which you are or may be requesting accommodations,please contactOffice for Students with Disabilities. Youmust have documentation from the Office before accommodations can be granted.

Assignments

Students shall work in teams of one to three members each.

Each group will work over the course of the quarter to design and implementa custom processor.

There are four reports, due at the starts of weeks 4, 6, and 8, plus the final report.Reports shall be submitted on Gradescope.

There is no final exam for this course. The complete processor and its finalreport are due at the end of the assigned "exam session."This quarter, that is 2:30pm US/Pacific on Wednesday, March 16.

Logistics

Submit reports on Gradescope.

We will use Piazza for Q&A.

Course Resources

Grading

Each team shall design a specialized RISC processor.These will be tested on instructor-provided testbenches, and final coursegrades will depend on how well your designs perform against these testbenchesand whether your designs can be synthesized into actual digital gate-levellogic.

Milestones

There are intermediate deadlines (Milestones 1, 2, and 3).The primary goal of these is to help you ensure that you are on track.They will be evaluated by course staff, but this is primarily for feedback toyou for your benefit; generally these will not directly impact your finalgrade.

An imperfect milestone is okay, but take it as a very serious warningsign that you are behind; it will only get harder to catch up as timeprogresses.It is far better to submit what you have than to submit nothing.

Each incomplete milestone will lower your course grade by one notch (e.g. , A to A- or A- to B+).

Habitually late submissions may lower your course grade by one notch (e.g. , A to A- or A- to B+).

Agenda

This course meets for one hour twice a week.Loosely speaking, there will be one traditional lecture per week and oneinteractive demo session showcasing how to use tools or implement ideas coveredin lecture.

Update: In accordance with the campus policy, this course will be fullyremote for the first two weeks of instruction. We will meet on Zoom. See theCanvas announcement for more details.

Week Topic Readings & Assignments
Week 1
Jan 3-9
  • M: Welcome, Logistics, & Basics [slides][pdf]
  • W: SystemVerilog [slides][pdf]
  • F: Processor Specification Released
Week 2
Jan 10-16
  • M: Microprocessor Architecture & ISAs [slides][pdf]
  • W: Early Design [slides][pdf]
    • Notesheet
Microprocessor Types
Week 3
Jan 17-23
Microprocessor Implementation
  • Jan 17: No class, university holiday.
  • W: Implementation (demos) [slides][pdf]
Assembly Language
Week 4
Jan 24-30
SystemVerilog [slides][pdf] Milestone 1 DUE
Deadline 12:00pm US/Pacific Jan 26
Week 5
Jan 31-Feb 6
SystemVerilog Verification [slides][pdf] SystemVerilog
Week 6
Feb 7-13
  • M: Synthesis vs Simulation [slides][pdf]
  • W: Alternative tools [slides][pdf]
Milestone 2 DUE
Deadline 12:00pm US/Pacific Feb 9
Week 7
Feb 14-20
Debugging
  • M: Timing; General Help
  • W: General Help; Intro Verilator
    • Code from Class
Note: To allow for free and open discussion, lectures after this point will not be recorded.
Week 8
Feb 21-27
  • Feb 21: No class, university holiday.
  • W: General Help
Milestone 3 DUE
Deadline 12:00pm US/Pacific Feb 23
Week 9
Feb 28-Mar 6
Open Discussions / Q&A
Week 10
Mar 7-13
[No Lecture] Good luck on projects!
Week 11
Mar 14-16
Final Report DUE
Deadline 2:30pm US/Pacific March 16

CSE 141L: Introduction to Computer Architecture (Lab) (7)

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Copyright Pat Pannuto, 2022.

CSE 141L: Introduction to Computer Architecture (Lab) (2024)
Top Articles
Latest Posts
Article information

Author: Ms. Lucile Johns

Last Updated:

Views: 6637

Rating: 4 / 5 (41 voted)

Reviews: 80% of readers found this page helpful

Author information

Name: Ms. Lucile Johns

Birthday: 1999-11-16

Address: Suite 237 56046 Walsh Coves, West Enid, VT 46557

Phone: +59115435987187

Job: Education Supervisor

Hobby: Genealogy, Stone skipping, Skydiving, Nordic skating, Couponing, Coloring, Gardening

Introduction: My name is Ms. Lucile Johns, I am a successful, friendly, friendly, homely, adventurous, handsome, delightful person who loves writing and wants to share my knowledge and understanding with you.