CSE 141: Introduction to
Computer Architecture


Michael B. Taylor
EBU 3B 3202 office

Teaching Assistants

Mark Gahagan
Ben Ellis (Tutor)

Class Meetings

Lecture TuTh 2:00p-3:20p WLH 2111
Discussion Wed 1:00-1:50p WLH 2205
Final 12/13/2012 3:00a-5:59p TBA


Office Hours


December 11Homework 5 selected solutions are now up in the homework section. Reminder: The midterm and its accompanying solutions can be found in the "Midterm Solutions" week of the discussion section.
November 27Homework 5 is out now, and is due December 7th at 5PM. A reminder also that Midterm corrections are due Wednesday at 1PM.
November 25TA and Course Evaluations are out now. Be sure to fill them out by the December 10 deadline!
November 13Homework 4 is now online. Questions in bold would be good practice for the midterm. The assignment itself is due on November 26
October 30Homework 3 is now online. Due date: November 9 (5PM)
October 24New deadline posted for project titled "Silver Release". See project page for details
October 16Second homework assignment has been posted. First homework assignment and design concept can be picked up in discussion section on 10/17
October 3First assignment has been posted. All questions are from the Revised 4th Edition of the Textbook.
September 27Join and monitor this google group immediately:

Course Description

The course examines the basics of modern processor operation. Topics include computer system performance, instruction set architectures, pipelining, branch prediction, memory-hierarchy design, and a brief introduction to multiprocessor architecture issues.

This course is taught in tandem with CSE 141L. Unless you have discussed it with me, you should be enrolled in both.

Required Textbook

Computer Organization and Design, Revised Fourth Edition, Fourth Edition: The Hardware/Software Interface (The Morgan Kaufmann Series in Computer Architecture and Design)

Note: This link activates amazon.com commissions that will be used to purchase the prizes for the class project. You are free not to use the link, or to use it for buying all of your textbooks and amazon.com items. I guarantee that all of the funds will be applied to class prizes and/or pizza.

Students get free 2-day shipping with Amazon Student.


Project 25% Design your own ISA!
Midterm 20% Closed book.
Final 30% Cumulative; closed book.
Homework 10% Homeworks assigned through the course. They aren't worth much, but help you pace yourself. Statistically graded.
Quizzes 5% Randomly; they will help make sure you pace yourself on the material
Class Participation 10% or more In class, or in the google group

Grading Appeal Process If you feel there has been an error in how a test was graded, you have one week from when the assignment is return to bring it to our attention. There is no regrading of HW because of the small weight. You must submit to the appropriate TA a written description of the problem issue, what you feel the fair resolution is, and your unmodified coursework. We photocopy a random sampling of student exams to detect inappropriate modifications. Note that we regrade the entire exam; so your grade may either rise or fall after resubmission. Should, after you appeal, you be unsatisfied with the TA's treatment of the issue, you may resubmit the appeal to the professor.


NOTE: Subject to skew and jitter. We reserve the right to change this -- and will change it frequently.

I will post the slides for most lectures. Since the slides contain material I am not allowed to distribute publically, they are only available from on campus or via the campus proxy. Instructions for setting up the proxy can be found here. Using the proxy is useful in general, since it gives you full access to the libraries and other resources from off campus. If you are a concurrent enrollment student, you will need to make a friend in the class (always a good idea) to access some of these materials.

Please note that I have by default posted last year's slides here. Some number of days after a class occurs, I will update with the slides from this year's class.

Thu, September 27 Overview, Administrivia, ISA Design slides
Tue, October 02 Instruction Set Design Read: 1.1-1.3; 2.1-2.7; Key points: Types of machines and general terminology. Parts of the machine. Key components of an instruction set. Operand storage in registers and memory. Arithmetic, logical, and memory ops in MIPS.

Project 1 Out:
    Design Concept: October 14
    Alpha release: October 21
    Beta release: October 28
    Final deadline: November 4
Thu, October 04 Instruction Set Design Read: 2.8, 2.10, 2.12-2.13, 2.16-2.19 Skim/Review: 2.4, 2.6, 2.9, 2.14; Key points: Function calls, translation from source code to machine code, the diversity of ISA design decisions between MIPS, ARM, and x86.
Tue, October 09 Instruction Set Design
Thu, October 11 Measuring Performance Read: 1.4-1.9; Key points: Speedup. The performance equation. Amdahl's law. Benchmarks and their shortcomings slides
Tue, October 16 Measuring Performance
Thu, October 18 Perf/Single Cycle processors Read: 4.1-4.4; Key points: Designing a single-cycle datapath, datapath vs. control, clocking, control signals, decoding, handling branches. Review Appendix C if your logic design is rusty.
Tue, October 23 Single Cycle Implementation; Multicycle Read: 4.5-4.6; Key points: Basic of pipelining. Pipelined datapath layout. Pipeline registers. Limitations of pipelining. See also improved 141L version slides
Thu, October 25 Pipelining; Branch Prediction Read: 4.7-4.8 slides
Tue, October 30 Data hazards; Control Hazards; Branch Prediction Read: 4.9,4.10,4.11 slides
Thu, November 01 More Branch Prediction slides
Tue, November 06 Caches; Memory Systems Read: 5.1-5.3 slides
Thu, November 08 Caches Read: 5.1-5.3 slides
Tue, November 13 Advanced caching and VM Read: 5.4-5.5 slides
Thu, November 15 Midterm (likely to change)
Tue, November 20 I/O & VM Read: 6.1-6.13
Tue, November 27 ISA Bake-off; Pizza fest
Thu, November 29 Multiprocessors/GPU Intro Read: 7.1-7.3; 7.7 slides
Tue, December 04 CMPs
Thu, December 06 Final Review

Discussion Schedule

NOTE: Subject to skew and jitter. We reserve the right to change this.

Wed, October 03 Designing your Project ISA slides
Wed, October 10 Optimizing your Project ISA slides
Wed, October 17 Hacking the Assembler Infrastructure slides
Wed, October 24 Hacking the Simulator Infrastructure slides
Wed, October 31
Wed, November 07
Wed, November 14 Midterm Review slides
Wed, November 21
Wed, November 28 Midterm Solutions slides
Wed, December 05 Final Review slides


* Homeworks should be done individually. You may talk to one another, but should not look at each other's solutions
* For all homeworks, please create a cover page. The cover page should contain the following info: course (CSE141), term (Fall 2012), homework number (e.g. HW #1), name, and date.
* Typed solutions will make the TA smile but are not strictly required.
* All homeworks are due in Mark's mailbox (Room 2237, CSE Department, Mailbox Name : "Gahagan, Mark"). No late assignments will be accepted! DO NOT submit your homework via e-mail.

Assignment #1 Due Fri, October 12, 5 pm 2.3.1ab 2.3.2ab 2.3.4a 2.4.1b 2.5.5b 2.6.4b 2.8.2ab 2.11.3ab 2.12.1a 2.12.2b 2.15.2a 2.17.5b 2.19.1a 2.26.1b (Solutions)
Assignment #2 Due Fri, October 26, 5 pm 2.38.1a 2.38.2a 2.38.3a 2.39.1b 2.39.2b 2.39.4b 2.39.5b 1.4.4ab 1.4.5ab 1.4.6ab 1.12.4a 1.13.4a 1.16.1ab 1.16.2ab (Solutions)
Assignment #3 Due Fri, November 9, 5 pm 1.3.1a 1.3.2a 1.3.3a 1.4.1a 1.15.1a 1.15.3a 1.15.6a 4.1.1b 4.1.2b 4.1.3b 4.1.6b 4.2.1a 4.2.2a 4.2.3a 4.6.1a 4.6.2a 4.6.3a 4.9.2a 4.9.3a 4.12.1b 4.12.3b 4.12.5b (Solutions)
Assignment #4 Due Monday, November 26, 5pm 4.19.1a 4.19.2a 4.19.3a 4.19.4a 4.20.1a 4.20.2a 4.20.3a 4.21.1a 4.21.2a 4.23.1a 4.23.3a 4.24.1a 4.24.3a 5.2.2b 5.3.2b 5.3.3a (Solutions)
Assignment #5 Due Fri, December 7, 5 pm 5.7.1a 5.7.2a 5.7.3a 5.7.4a 5.7.5a 5.7.6a 5.8.1a 5.10.1a 5.11.1a 5.11.4 5.11.5 5.11.6 7.6.1 7.6.2 7.6.3 7.11.1 7.11.2 7.11.3 7.11.4 (Solutions)


Quiz #1 TBA

Academic Integrity

Cheating is unacceptable. Our policy in this class is to aggressively pursue cheaters, and to ensure that they receive the maximum penalty allowable under the University of California academic system. If you are choosing between not turning in an assignment, or using somebody's else work, do yourself a favor and just don't turn it in. You are facing a permanent mark on your academic record and a certainty of having to explain it to any future employer or school that you apply to.

Exams You must work independently on exams. You may be held responsible if you allow others to copy your work.

Project For the project, if students are allowed to work in groups, you may obviously work with your group members. With non-group members, you may brainstorm about the ISA but you better make sure there are substantial differences between your ISA encodings and features, and you must write your own code. We will use automatic software for finding inappropriate similarities between student code, and substantial similarities in student work (including to previous teachings of the class) could result in us requiring the student to redo the assignment, or in cases of copying, referring the student to UCSD for cheating.

HW For homeworks, you may study and work with other students. However, you may not look at their write-ups. and you should not look at another student's homeworks before you have done the assignment yourself. A solutions manual, meant only for instructors, exists for this text. Obtaining or using this or other materials (such as other faculty's posted solutions to book problems) is cheating.


Project 1: Design Your Own ISA