Synchronous Class Delivery
The class lectures will be delivered synchronously via
https://und.zoom.us/j/2489867333, and the Zoom video will be posted on the
Blackboard afterwards.
Students can watch the video clips anytime they want.
Textbook (the most popular textook)
Computer Organization and Design MIPS Edition: The Hardware/Software Interface, 6
th ed., David A. Patterson and John L. Hennessy, Morgan Kaufmann, ISBN: 978-0-12-820109-1
†There is no specific textbook adopted for the assembly language discussed in this course because the lecture notes and the links provide enough information for us to use.)
Lecture Notes
Other than the textbook, award-winning, interactive, complementary, and abridged lecture notes
(based on the textbook and other online documents and user manuals) and detailed and precise class instructions will be provided.
Collectively, the lecture notes and instructions are more like a
small book, which supplies much more information than regular notes do and makes the subject studies much easier.
Students will not have problem learning the subjects or taking the
exams after studying them and doing the homeworks and programming
exercises.
Course Description
This course gives a study of computer architecture, which is the science
and art of selecting and interconnecting hardware components to create
computers that meet functional, performance, and cost goals.
It consists of two themes:
- A high-level study of computer architecture including computer
architecture basics, simple performance evaluations, arithmetic for
computers, CPUs, memory, storage, and some other special topics.
- A low-level study of programming languages—the MIPS assembly
language—including machine presentation of numbers and characters, data
transfers, addressing, arithmetic, conditional processing, procedures,
etc.
A system structure of basic computer systems —
An assemble-link-execute cycle —
Objectives
After taking this course, students are able to achieve the following goals, but not limited to:
- Knowledge of MIPS assembly language principles,
- Knowledge of computing component and system principles,
- An ability to understand and evaluate a computer-based system to meet desired needs, and
- An ability to apply computer science principles in the modeling
and design of computer-based systems in a way that demonstrates
comprehension of the tradeoffs involved in design choices.
Evaluations
Five homeworks —— 20% total (04% each)
Two programming exercises —— 20% total (10% each)
Two exams —— 20% each
Final exam —— 20%
Tentative Schedule
Weeks 1, 2, & 3 —— Introduction (Chapter 1)
Weeks 4, 5, 6, & 7 —— MIPS assembly language programming (Chapter 2)
Weeks 8 & 10 —— Arithmetic for computers (Chapter 3)
Weeks 11, 12, 13, & 14 —— The processor (Chapter 4)
Weeks 15, 16, & 17 —— Memory hierarchy (Chapter 5)
Instructor’s Qualification
The instructor has been teaching computer architecture for more than 15 years, so he is well familiar with the topics. In addition, he taught an assembly-language course for 7 years and designed and implemented a POPLOG virtual machine for which both LISP and PROLOG compilers generate code.
Dishonesty
Under no circumstances will acts of academic dishonesty be tolerated.
Any suspected incidents of dishonesty will be promptly referred to the Assistant Dean of Students.
Refer to the Code of Student Life, Appendix B: Acts of Dishonesty.
Disability
Students who need special accommodations for
learning or who have special needs are invited to share these concerns
or requests with the instructor as soon as possible.