Rose-Hulman Institute of Technology
Department of Computer Science and Software Engineering

CSSE 232 Computer Architecture I

Some materials for this course are maintained under ANGEL

Instructors:
Archana Chidanandan
J.P. Mellor
 
Text:
Computer Organization & Design, 3rd Edition, Patterson & Hennessy, Morgan Kauffmann, 2004.

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

Course Grading:
20% : Homework
20% : Quizzes
30% : Project
30% : 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: Tuesday September 02, 2008