Foundations of Computer Architecture
605.411
Course Description
This course provides a detailed examination of the internal structure and operation of modern computer systems. Each of the major system components
is investigated including the following topics: the design and operation of the ALU, FPU, and CPU; microprogrammed vs. hardwired control, pipelining,
and RISC vs. CISC machines; the memory system including caches and virtual memory; parallel and vector processing, multiprocessor systems and
interconnection networks; superscalar and superpipelined designs; and bus structures and the details of low level I/O operation using interrupt
mechanisms, device controllers, and DMA. The impact of each of these topics on system performance is also discussed. The instruction set
architectures and hardware system architectures of different machines are examined and compared. The classical Von Neumann architecture is also
compared and contrasted with alternative approaches such as data flow machines and neural networks.
Syllabus
- (7:30pm-10:35pm) Computer Architecture Basics/Performance Analysis
- (7:30pm-10:35pm) Instructions & SPIM simulator
- Computer Arithmetic
- Floating Point and Digital Logic
- Datapath and Control (Take Home Mid Term Given)
- Control Unit (Take Home Mid Term Due)
- Pipelining
- Memory Systems
- I/O Systems
- I/O Bus Structures
- High Speed Processing/Multiprocessors (Take Home Final Given)
- High Speed Processing/Multiprocessors (Take Home Final Due)
Prerequisites
There are no specific prerequisites for this course.
A course in programming with a high-level language such as Java, C/C++, or
Pascal, as well as an introductory course in basic computer organization and
assembly language programming (including computer arithmetic and the
internal representation of data). May be taken concurrently with 605.401 Foundations
of Software Engineering.
Instructor
John Boon is a part-time Operations Researcher for RAND and is the proprietor of Intelligent Information Analysis, a consulting firm providing integrated mathematics and computer science services.
Mr. Boon's areas of expertise are operations research, advanced statistical analysis, systems analysis, and software engineering. Mr. Boon earned
undergraduate degrees in mathematics and political science from Virginia Wesleyan College and a M.S. in operations research from the George
Washington University. He has been a tenured faculty member at another college and has taught graduate level classes since 1988.
Computer Lab Requirements
Students are urged to access the
SPIM simulator (spimwin.exe
for Microsoft Windows environments)
from
ftp://ftp.cs.wisc.edu/pub/spim/. Documentation for this simulator
is also available from this ftp location.
Students must have an email address and
must make that address known to the course
instructor as soon as practical after the
start of the course. Students may use
their own computing resources (hardware/software
tools) or may arrange to access the necessary
tools through the student services entities
of JHU. Students must have access to
the Internet, have a web browser and
the Acrobat Reader application.
Additional
Course
Information
Return to
Computer Science Courses | Computer
Science | Part-Time Engineering