CS314: Computer Architecture and Design
Welcome to CS314! Textbook is available here now. (Sep. 15)
Assignment 4 is released! Deadline is Dec. 19, please see the details here.
Assignment 3 is released! Deadline is Nov. 15, please see the details here.
Assignment 2 is released! Deadline is Oct. 25, please see the details here.
Assignment 1 is released! Deadline is Oct. 8, please see the details here.
Lab location is at: 机组实验地址:软件学院大楼5号102、104室(靠近东川路600号凯旋校门)
The course is aimed at teaching the fundamentals of the computer organization and design. Upon completion of this course, a student should be able to explain the operation of a CPU, understand the merits of virtual memory, cache and interrupt system, and analyze the fundamentals of I/O system.
The emphasis of this course is on the basic issues of computer organization and computer design. Computer organization is concerned with the way the hardware components are connected together to form a computer system. Computer design is concerned with the development of the hardware for the computer taking into consideration of a given set of specifications. In this course, students will learn the principle and hardware implementation of computer components, and how to completely design a correct single processor computer.
|Week||Date||Lecture Topic||Slide Download|
|1||Sep.20||Chapter 1 Introduction and Performance Evaluation||CIS314-chapter1-2017.pptx|
|2||Sep.27||Chapter 2 Instructions:Language of the Computer||CS314-chapter2-2-2017.pptx|
|3||Oct.18||Chapter 3-1 Arithmetic for Computers||CS314-chapter3-1-2017.pptx|
|3||Oct.25||Chapter 3-2 Arithmetic for Computers||CS314-chapter3-2-2017.pptx|
|4||Nov.22||Chapter 4-1 The Processor, Part A||CS314-chapter4A-2017.pptx|
|4||Nov.22||Chapter 4-2 The Processor, Part B||CS314-chapter4B-2017.pptx|
|4||Nov.22||Chapter 4-3 The Processor, Part C||CS314-chapter4C-2017.pptx|
|4||Nov.22||Chapter 4-4 The Processor, Part D||CS314-chapter4D-2017.pptx|
|4||Dec.13||Chapter 4-5 The Processor, Part E||CS314-chapter4E-2017.pptx|
|4||Dec.13||Chapter 4-5 The Processor, Part E-2||CS314-chapter4E-supplement.processors.pdf|
|5||Dec.13||Chapter 5 Memory Hierarchy||CS314-chapter5A-2017.pptx|
|Final||Dec.20||Class Review||Class Review.pptx|
|Final||Dec.20||Homework Solutions1||chapter 1.pptx|
|Final||Dec.20||Homework Solutions2||chapter 2.pptx|
|Final||Dec.20||Homework Solutions3||chapter 3.pptx|
|Final||Dec.20||Homework Solutions4||chapter 4.pptx|
Haojin Zhu is currently an Associate Professor with Department of Computer Science and Engineering, Shanghai Jiao Tong University, China. He received his B.Sc. degree (2002) from Wuhan University (China), his M.Sc.(2005) degree from Shanghai Jiao Tong University (China), both in computer science and the Ph.D. in Electrical and Computer Engineering from the University of Waterloo (Canada), in 2009. His current research interests include wireless network security and distributed system security. He is a member of IEEE.
- Computer Org and Design, 4rd Ed.,Revised Printing, Patterson Hennessy, 2012
- Every Friday afternoon 2 pm ~ 5 pm at SEIEE building 3-509
- Project Reports + Assignments ~20%
- Class participation ~10%
- Final ~70%
Please send your first assignment in a single compressed package (.zip, .rar, etc.) to TA's ftp server.The ftp address is "ftp://public.sjtu.edu.cn", the username is "lijie0123" and the password is "public". You should upload your assignments to "/upload/Computer Architecture and Design/". Please name your file as "StudentID_assignment1.zip". For example, if your student ID is 5140309000, and this is the first assignment, you should name your file "5140309000_assignment1.zip" and upload it to "ftp://public.sjtu.edu.cn/upload/Computer Architecture and Design/Assignment1/".
- Chapter 1 : 1.16
- Design a program to check if your computer is big endian or little endian. Please submit the source code and the execution results.
Submission Due: Oct.8
- Chapter 2 : 2.4, 2.14, 2.20
Submission Due: Oct.25
- Chapter 3 : 3.6, 3.8, 3.11, 3.14
- Objective: Understanding the applications of IEEE 754 floating points in real-world machine
- Task 1: In your machine, what is the accuracy for single precision and double precision (or the number of bits required for single/double precision floating)? Please use a simple program to demonstrate it.
- Task 2: Run a program to obtain the results of “-8.0/0”and“sqrt（-4.0）”in your machine.
- 1. Submit your codes and execution results by printing your screen.
- 2. Answer the following questions:
- 1)What are the accuracy of float and double in your machine.
- 2)How to represent infinite and NAN in your machine.
Submission Due: Nov.15
- Chapter 4 : 4.10, 4.11, 4.12, 4.13, 4.16
Submission Due: Dec.19