Clark School Home UMD
ECE

ENEE350 Computer Organization

Course Description: This course covers the basics of computer organization and design. The topics include assembly and machine instructions, datapath and controller design, pipelining and memory hierarchy.

Prerequisite(s) [5]: ENEE244; completion of all required 200-level ENEE courses

Corequisite(s): None

Course Objectives:

  • Develop a deep understanding of the formats in which computers take instructions
  • Develop a conceptual understanding of how to estimate the CPU performance and what are the underlying parameters
  • Develop an understanding of what are the significant modules and components in modern CPUs and how are they interconnected
  • Develop mechanisms for improving the CPU performance using pipelining, and also techniques for addressing the associated hazards
  • Techniques for improving the CPU memory interface using cache memory
  • Ability to design a basic CPU that supports a given set of instructions and also engineering methods for improving its performance

Topics Covered:

  • Instruction Set Architecture
  • Computer Arithmetic
  • Processor Datapath and Control
  • Pipelining
  • Cache
  • Virtual Memory

[5] Formerly: ENEE250. Additional information: Electrical Engineering and Computer Engineering majors may not substitute CMSC311 for ENEE350.