EE-469

No: EE 469 / CSE 469

Title: Computer Design and Organization

Credits: 5

UW Course Catalog Description

Course Catalog Entry:

EE 469 / CSE 469 Computer Design and Organization (5)
Introduction to computer architecture. Assembly and machine language, microprocessor organization including control and datapath. Computer arithmetic. Memory systems and caching. Performance modeling of microprocessors. Prerequisite: either EE 271 or CSE 369; CSE 143.

Coordinator: Scott Hauck, Professor Electrical Engineering

Goals: To teach the organization and design of modern microprocessors

Learning Objectives: At the end of this course, students will be able to:

Write simple assembly language programs.

Identify the major components of a microprocessor.

Design a microprocessor that supports a given instruction set.

Analyze microprocessor performance, including cache memory systems.

Demonstrate understanding of modern microprocessor features.

Textbooks: Patterson, Hennessy, Computer Organization and Design: The Hardware/Software Interface, Fifth Edition, 2014, Morgan Kaufmann.

Prerequisites by Topic:

Introduction to Digital Circuits and Systems (EE 271 or CSE 369)

Introduction to Programming – C, C++, or Java (CSE 142, 143)

Topics:

Introduction to processor architecture. Performance measures.

Assembly language programming.

Computer Arithmetic.

Processor Datapaths & Control.

Pipelining.

Memory hierarchy, caches.

Advanced topics in computer architecture: ILP, VLIW, Superscalar.

Course Structure: The class meets for four hours every week. There will be a midterm and final, multiple lab assignments (involving the design of a single-cycle and pipelined processor with approximately 8 instructions), and approximately weekly short homework assignments.

Computer Resources: PCs or Laptops with Altera Quartus and Modelsim software installed. Students will design a simple microprocessor through multiple laboratory assignments:

Register File

Arithmetic Logic Unit

Single-cycle CPU

Pipelined CPU

Laboratory Resources: None.

Grading: Class grades will be based upon weekly homeworks, the lab assignments, midterm, and final exam.

Outcome Coverage:

(a) An ability to apply knowledge of mathematics, science, and engineering. The class has an engineering/mathematics and design focus throughout. The homeworks, labs, and exams test various aspects of the math and engineering knowledge developed by the students. (M)

(b) An ability to design and conduct experiments, as well as to analyze and interpret data. N/A.

(c) An ability to design a system, component or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability and sustainability. Students must design efficient, effective hardware components. This includes a focus on multiple performance metrics. (H)

(d) An ability to function on multidisciplinary teams. N/A

(e) An ability to identify, formulate and solve engineering problems. Homeworks focus on the application of engineering concepts to typical design problems. (M)

(f) An understanding of professional and ethical responsibilities. N/A

(g) An ability to communicate effectively. N/A

(h) The broad education necessary to understand the impact of engineering solutions in a global, economic, environmental and societal context. N/A

(i) A recognition of the need for, and an ability to engage in life-long learning.Computer architecture is a rapidly evolving field, and students will be exposed to the changes in architecture design over time. (L)

(j) Knowledge of contemporary issues. The class focuses on contemporary microprocessor design issues, and current architectures. (L)

(k) An ability to use the techniques, skills and modern engineering tools necessary for engineering practice. CAD tools will be utilized for their CPU design. (M)

Prepared By: Scott Hauck

Last revised: 02/27/15