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
- Numeric 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