CS 2190: Computer Organization

CS 2190: Computer Organization

Semester Hours:   3.0
Contact Hours:    3
Coordinator:   Tianyi Song
Text:   Computer organization and design: HW/SW Interface
Author(s):   Patterson and hennessy
Year:   2014, 5th Edition

SPECIFIC COURSE INFORMATION

Catalog Description

Overview of computer design. Data & instruction representations. Assembly language. Logic design. Control & data flow. Introduction to Instruction-level parallelism. Memory hierarchy fundamentals. Multiple processor systems. Students cannot get credit for both CS 2170 and CS 2190. Prerequisite: Grade of C or better in CS 2010. Approved for distance education.

Course type: REQUIRED

SPECIFIC COURSE GOALS

  • I can explain the fundamental concepts of computer organization.
  • I can use different data representations.
  • I can design basic circuits using logic gates and flip-flops.
  • I can utilize an assembler tool to write and execute simple assembly language programs.
  • I can explain the data and control hazards in designing instruction sets for pipelining.
  • I can explain basic instruction-level parallelism methods.
  • I can explain how the different memory units work in the memory hierarchy.

COMPUTER SCIENCE STUDENT OUTCOMES ADDRESSED BY THIS COURSE

  • CS 1 Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions
  • CS 2 Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline

LIST OF TOPICS COVERED

  • Overview of Computer Design (0.5 weeks, ~3%)
    • Building blocks
    • Functional point of view
  • Data Representations (1.5 weeks, ~11%)
    • Numeric representations
      • Codes, arithmetic, addition/subtraction, 2's complement, floating-point numbers
    • Character representations
  • Assembly language (2.0 weeks, ~14%)
    • MIPS assembly language
    • Simulator
  • Logic Design (2.0 week, ~14%)
    • Gates, truth tables, logic equations, don't care terms
    • Combinational logic
    • Basic arithmetic logic unit
    • Flip-flop (D flip-flop)
  • Instruction Representation (1.5 weeks, ~11%)
    • Operation, operand
    • Instruction format
    • Addressing modes
    • Decision-making
    • Procedure/function calls
  • Control & Data Flow (2.5 weeks, ~17%)
    • Structures
    • Control unit
    • Data path, data and control hazards
    • Forwarding, stalls, exception, interrupt
  • Introduction to Instruction-level Parallelism (2.0 weeks, ~14%)
    • Multiple-Issues
    • Speculation
    • Loop Unrolling
  • Memory Hierarchy Fundamentals (1.0 week, ~7%)
    • Memory hierarchies
    • Measuring performance
  • Multiple Processor Systems (1.0 week, ~7%)
    • Multicores, multiprocessors; clusters

COMPUTER SECURITY TOPICS

Faculty who recently offered CS 2190 have discussed and identified a list of topics related to computer security in this course. Below is a list for instructors to incorporate. (*) indicates topics that are mandatory.

Security Topic

Description

Textbook Reference1

Estimated Class Hours

*Math (integer) overflows

Examples: adding two positive numbers exceeds the max value causing number to become negative.

Chapter 2.4

1

*Data as instruction

Generally, computers make no distinction b/w data and instruction - an assembly language program can modify a data location and branch to that location causing the data to be interpreted as an instruction

Chapter 2.5

1

*Virtual memory

Memory hierarchy and how address translation works.

Chapter 5.7

>1

¹Computer Organization and Design: HW/SW Interface by Patterson and Hennessy, 5th Edition

Updated: 12/02/2025 03:39PM