EEC 170 – Introduction To Computer Architecture

Units: 4 (3 Lecture/1 Discussion)
Prerequisites: (ECS 036B or ECS 030 or ECS 034 or EEC 007); (EEC 018 or EEC 180A).
Catalog Description: Introduces basic aspects of computer architecture, including computer performance measurement, instruction set design, computer arithmetic, pipelined/non-pipelined implementation, and memory hierarchies (cache and virtual memory). Presents a simplified Reduced Instruction Set Computer using logic design methods from the prerequisite course. GE Credit: SE

ABET Student Outcomes: 
Students who have completed this course should have achieved: 
a)    Student Outcome 1: an ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics

Expanded Course Description:
I. Computer Performance
     A. Measuring Performance
     B. Benchmark Selection
     C. Comparing and Summarizing Performance
II. Instruction Sets
     A. Addressing
     B. Instruction Representation
     C. Branching
     D. Support for Procedures
     E. Complex Instructions
III. Computer Arithmetic
     A. Integer Representation
     B. Addition and Subtraction
     C. Logical Operations
     D. ALU Design
     E. Multiplication
     F. Division
     G. Floating Point
IV. Non-Pipelined Processor Design
     A. Datapath
     B. Simple Control Unit
     C. Finite State Machine Control Unit
V. Pipelined Processor Design
     A. Pipelined Datapath
     B. Pipelined Control
     C. Data Hazards
     D. Branch Hazards
     E. Exceptions
VI. Memory System Design
     A. Memory Hierarchy
     B. Mapping and Replacement Techniques
     C. Cache
     D. Virtual Memory