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) : ENEE244; completion of all required 200-level ENEE courses
- 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
- Instruction Set Architecture
- Computer Arithmetic
- Processor Datapath and Control
- Virtual Memory
 Formerly: ENEE250. Additional information: Electrical Engineering and Computer Engineering majors may not substitute CMSC311 for ENEE350.