Back to Course
Department
of Computer Science and Engineering
Introduction
to Computer Architecture
CSCE 212
Course
Description: We will explore foundational topics in
computer engineering pertaining to the architecture of computing systems. The material in this course is premised on a
basic idea—that computer systems are architected in layers, where higher layers
are built upon lower layers. This
“scaffolding” approach has been the basis for the development of Computer
Architecture as a discipline within the Computer Engineering field. We will cover the terrain of this
discipline, exploring several important developments in the architecture of
computing systems along the way. We
start at the bottom, dealing with the discrete logic on which all digital
computer systems are built, progressing through layers involving the
abstraction of units of work into instructions executed on microprogrammed
hardware. Finally, we get to the layers
associated with making computing resources available for many competing tasks,
as supported by the Operating System and applications built on this platform.
Instructor: Dr. James P. Davis, Adjunct Professor
Department of
Computer Science and Engineering
College of
Engineering and Information Technology
University of
South Carolina, Columbia, SC 29208
Phone: (803) 318-3984 Email: james_davis@attglobal.net
Office
Hours: At this point, I do not have an office at
USC, so there are no office hours.
However, I can easily be reached via email to set up a consultation
meeting.
Time: T-TH 12:30 – 1:45PM (Room
2A31, Swearangen)
Text: A.S. Tanenbaum, Structured Computer Organization (4th
Ed.), Prentice-Hall: Englewood Cliffs, NJ, 1999.
Grading
Policy: Homework: 25%
It will be assigned on Tuesdays for the week, and
taken up the following Tuesday (exception for exam schedule).
Examinations: Two exams
and a final 25%
each
(Decision on whether the final is cumulative will be based on the class’ performance on the first two exams.)
Course Structure: We will generally follow the flow of material in the text, so reading the text is highly recommended. I will introduce additional material in places where we need more emphasis, or where additional material will provide better understanding, given the needs of the student for mastering materials in subsequent courses of study. My emphasis will be on having the student grasp the material sufficiently to apply it to a number of specialized problems that may be encountered in later courses, as well as to give the student a sense of what it really means to practice the discipline of computer engineering.