CSSE 232
Computer Architecture I
 
RHIT Homepage


Course Home
 

Home Syllabus Policies Communication

Handouts Homework Project Resources

Instructors:
Larry Merkle
Archana Chidanandan


Meeting:
Section 1 (LDM):  MTR/8-9/O101
Section 2 (ABC):  TF/9-10/O267
                           W/7-8/O267
Section 3 (LDM):  MTR/1-2/O169


Text:
Computer Organization & Design, 2nd Edition, Patterson & Hennessy, Morgan Kauffmann, 1998.

Reference:
TBA

Prereqs:
ECE 130, Introduction to Logic Design
CSSE 120, Fundamentals of Software Development I

Course Grading:
20% : Homework
16% : Quizzes
0% : Laboratory
44% : Project

20% : Exams
0% : Final 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:

  1. Apply the principle of abstraction in analysis and design problems.
  2. Explain the binary representation of various forms of data.
  3. 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.
  4. Design an instruction set architecture that is appropriate for a given application, taking into consideration key computer organization design principles.
  5. Design a hardware implementation of an instruction set architecture, and use modern computer aided design tools to model, simulate, test, and debug that implementation.
  6. 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.
  7. Work effectively as members of a team.
  8. Communicate effectively in both written and verbal form.


Last modified: Monday November 03, 2003