University of Colorado at Boulder
University of Colorado at Boulder Search A to Z Campus Map CU Search Links
ECE Home
Course List
Contact Us

ECEN 4593 - Computer Organization

Catalog Data ECEN 4593 (3). Computer Organization. Studies computer design at the gate level. Discusses instruction set architecture design, arithmetic and logic unit design, control logic, memory design and caches, simple pipelining, I/O, and peripheral devices. Briefly covers aspects of modern computer architecture, such as multicore processors and cache coherence for these.
Credits and Design 3 credit hours. Required core course for ECE program, elective course for EE program.
Prerequisite(s) ECEN 2350, Digital Logic
ECEN 3350, Programming of Digital Systems, or CSCI 2400, Computer Systems
Corequisite(s) None.
Instructor(s) Andrew Pleszkun.
Textbook David A. Patterson and John L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, 4th Edition, Morgan Kaufmann, 2009, ISBN-13 978-0-12-374493-7.
Course Objectives For students to:
  1. Understand the principles, tradeoffs and characteristics of computer system design.
  2. Understand the implementation of a processor at the data-path and gate-level.
  3. Understand the memory and I/O hierarchy in a computer system.
Learning Outcomes After taking this course students will be able to recognize and use the following concepts, ideas, and/or tools:
  1. Instruction set architecture (ISA) design, including an understanding of RISC architectures and the effect of implementation technology on processor architecture.
  2. Performance metrics used in the evaluation of processor performance, including how to analyze the impact of proposed performance improvements.
  3. Design approaches for implementing the core of a processor, including control of different data-paths and pipelining, as well as design approaches to support arithmetic logic.
  4. Memory hierarchy, including the design tradeoffs in building a cache memory and an understanding of virtual memory.
Student Outcomes
3a 3b 3c 3d 3e 3f 3g1 3g2 3h 3i 3j 3k
Design Teams Engr
Oral Written Engr Solns
H   M   M           L L
Topics Covered
  1. Instruction set architectures (ISAs), addressing modes and instruction encoding
  2. CISC and RISC architectures
  3. Logic structures in computer design
  4. Data-path and control-unit implementation
  5. Pipelining, pipeline design, and multi-issue machines
  6. Number representations, arithmetic, ALU design
  7. Floating-point representation and arithmetic
  8. Static and dynamic RAM
  9. Caches, cache design
  10. I/O hardware
  11. Processor performance metrics and analysis

Last revised: 05-23-11, PM, ARP.