Instructor:
Archana Chidanandan
|
Schedule
|
Meeting:
Section 1 :
MWR/1-2/O259
Section 2 :
TF/1-2/O259
W/3-4/O259 |
|
Teaching Assistants:
|
Timothy E
Cline (TW 6-8PM NewRes 124)
Charles W Moore
(W 2-4PM, F217)
|
| |
Text:
Computer Organization &
Design, 2nd Edition, Patterson & Hennessy, Morgan Kauffmann, 1998.
|
|
Prereqs:
ECE 130,
Introduction to
Logic Design
CSSE 120,
Fundamentals of
Software Development I
|
|
Course Grading:
26% : Homework
16% : Quizzes
38% : Project
20% : Exams |
|
Computer
instruction set architecture and implementation. Specific topics
include historical perspectives, performance evaluation, computer
organization, instruction formats, addressing modes, computer
arithmetic, ALU design, floating-point representation, single-cycle and
multi-cycle data paths, and processor control. Assembly language
programming is used as a means of exploring instruction set
architectures. The final project involves the complete design and
implementation of a miniscule instruction set processor.
Students who complete this course shall be able to:
- Apply the principle of abstraction in analysis
and design problems.
- Explain the binary representation of various
forms of data.
- Given the syntax and semantics for an assembly
language, design, implement, test, and debug simple programs in that
language that involve arithmetic operations, input and output, various
control structures (including selection, iteration, and recursive
procedures), and interrupts.
- Design an instruction set architecture that is
appropriate for a given application, taking into consideration key
computer organization design principles.
- Design a hardware implementation of an
instruction set architecture, and use modern computer aided design tools
to model, simulate, test, and debug that implementation.
- Analyze the performance of an instruction set
architecture and implementation in terms of metrics such as CPU
execution time, instruction count, cycles per instruction (CPI), clock
frequency, throughput, and response time.
- Work effectively as members of a team.
- Communicate effectively in both written and
verbal form.
|