Department of Computer Science
CSU Stanislaus
California State University
CS3740-001: Computer Organization
Fall 2023
Instructor: Dr. Xuejun Liang
My Office: DBH 282
Office Hours: MW 1:00 p.m.-2:00 p.m. and Th 11:00 a.m. – 12:00 a.m.
ZOOM Meeting ID: 4438930033, Phone: (209) 667-3169, Email: xliang@csustan.edu
Class Information
Classroom: Bizzini 102 / Online
Class Date & Time: MWF 2:00 p.m.- 2:50 p.m.
Class Website: https://www.cs.csustan.edu/~xliang/Courses/CS3740-23F
Important Notification:
1. |
This class is Hybrid In-Person & Online - Synchronous.
In-person class meetings will be on campus at the room, day, and time listed.
Online class meetings will be at the day and time listed. On-camera
participation may be required. All the three tests and the final examination
will be in-person. Other in-person classes will be scheduled if needed. |
2. |
Students are
required to check the Canvas course website daily for the course announcements
and weekly teaching modules which include my lecture videos and homework
assignments. We will not meet online for lectures. Instead, you can choose
your convenient time to study lecture videos and other required course
materials, but you must submit your assignments on time in Canvas. |
3. |
We have a Course
Questions Forum on the discussions panel of our canvas course website for
asking any course-related questions by simply clicking on the “Reply” button.
If you know an answer to a classmate’s question, please jump in and answer by
clicking “Reply” on the classmate’s question. When you start a new question,
please provide some basic information about the question. For example, the
related lecture, the textbook chapter and section, the homework assignment
number, the programming assignment number, and etc. I encourage all students to participate in this forum. I
believe your participation will have a positive impact on your learning. |
4. |
You will submit
your homework assignments via the Canvas course website. It is required to
scan your assignment into a PDF file. Please make sure the file is clearly
readable. You should submit your homework assignments on time. I will accept
the homework assignments late for maximum three days (including
holidays) with the point deduction
20% per day. Please note that you will not able to submit an assignment after
three days of the due day in Canvas. Please also note that you will submit
your source codes for your programming projects as text files with the file extension
name “.txt”. |
5. |
You can select
your best times to study the recorded lectures. But you should study the
recorded lectures before or during the scheduled week. I will try to post my
recorded lectures a few days early. Please note that each week will contain
multiple recorded lectures and/or other videos. You should watch them in the
posted order. |
Course Materials
Textbook: The Essentials of Computer Organization and Architecture, Fifth Edition, by LindaNull and Lobur, Jones & Bartlett Learning, 2019
Computer Architecture
Simulators for Different Instruction Formats: Webpage
Lecture Slides with the textbook
Chapter 1 Introduction
Chapter 2 Data Representation in Computer Systems
Chapter 3 Boolean Algebra and Digital Logic
Chapter 4 MARIE: An Introduction to a Simple Computer
Chapter 5 A Closer Look at Instruction Set Architectures
Chapter 6 Memory
Chapter 7 Input/Output Systems
Chapter 8 System Software
Chapter 9 Alternative Architectures
Chapter 10 Topics in Embedded Systems
Chapter 11 Performance Measurement and Analysis
New Lecture Slides
with the textbook
Chapter 5 A Closer Look at Instruction Set Architectures (A, B, C, D)
Chapter 6 Memory (A, B, C, D, E, F, G)
Chapter 7 Input/Output Systems (A, B, C, D, E)
Chapter 8 System Software (A, B)
Chapter 9 Alternative Architectures (A, B, C, D)
Chapter 10 Topics in Embedded Systems (A, B)
Chapter 11 Performance Measurement and Analysis (A, B, C, D, E)
Computer Architecture Simulators for Different Instruction Formats (pdf)
Course Syllabus and Major Topics
Course
Description
Instruction set
architecture design, digital logic techniques, cache memory, virtual memory,
I/O architectures and devices, computer performance enhancements. Selected
topics on embedded systems, parallel computer architecture and processing
approaches.
Course Outcomes
After successful completion of this course, students will be able to:
1. Describe the organizations of a computer, its major functional units, its instruction set, its instruction formats, its instruction execution, as well as interrupts and I/O operations, and translate assembly instructions into object codes.
2. Describe memory hierarchy, cache memory, and virtual memory, and compute the cache miss ratio and the effective memory access time for a simple program, and the physical address for a given virtual address.
3. Describe I/O architectures, I/O bus operations, magnetic disks, solid state drives, optical disks, magnetic tape, and redundant array of independent disks (RAID), and compute the disk capacity and performance.
4. Become familiar with the functions provided by operating systems and programming tools. Understand the role played by each software component in maintaining the integrity of a computer system and its data.
5. Understand Flynn’s taxonomy and describe models, structures, and techniques used for organizations of parallel and multiprocessor architectures and interconnection networks.
6. Describe the processes and practices of embedded hardware design and understand key concepts and tools for embedded software development.
7. Evaluate computer performances by using quantitative approaches, including Amdahl’s law, and describe common benchmarks and their limitations.
Homework Assignments
Programming Projects