CS 6070 : Architecture of Computers
CS 6070: Architecture of Computers
Semester Hours: 3.0
Contact Hours: 3
Coordinator: Jong Kwan "Jake" Lee
Text: TBD
Author: TBD
Year: TBD
SPECIFIC COURSE INFORMATION
Catalog Description
Architectures of modern computing systems. Techniques for high-speed computation: pipelining, vector processing, array processors. General purpose parallel architectures: SIMD, MIMD and data flow systems and their memory organizations and processor communication. Prerequisites: Full Admission to MS in CS program or consent of department.
Course type: ELECTIVE
SPECIFIC COURSE GOALS
- I understand the quantitative principles (e.g. taking advantage of parallelism, exploring principle of locality, losing on the common case) of computer design.
- I understand the pipelining works on a modern CPU.
- I can explore instruction level parallelisms (e.g. loop unrolling, scheduling, branch prediction) in RISC/MIPS instruction sets.
- I understand how vector processing works.
- I understand cache structure and its relevant concepts (e.g. cache performance evaluation, replacement policies).
LIST OF TOPICS COVERED
- Introduction to Technology and Architecture*
- Impact of technology on computer architecture
- Evolution of computer architecture
- Associative Memory (CAM)
- Hardware concepts of CAM
- Lewin’s O(n) sorting algorithm
- Cache Memory*
- Basic cache structure
- Set associative caches
- Evaluating Cache performances
- Determining Cache parameters
- Replacement Policies
- Implementing LRU replacement policies
- Detail example of a cache memory system
- Virtual Memory*
- Basic virtual memory structure
- Translation lookaside buffer
- Segment tables
- Replacement algorithms
- Detail example of a virtual memory system
- Pipeline Techniques*
- Principles of Pipelined computers
- Evaluating performance of pipelined computers
- Reservation tables and collision vectors
- Maximizing pipeline performance
- Conditional branches in pipelined computers
- Internal forwarding and deferred instructions
- Reconfigurable computer architectures
- Reconfigurable busses
- Addition in time O(1)
- Multiprocessors
- Flynn’s classification of multiprocessors
- Vector computers*
- Numerical algorithms on a vector computer
- Pipelining in vector computers
- Examples of vector computers
- Multiprocessor interconnections*
- General purpose multiprocessors, e.g. RP-1, HEP
- Data flow computers
- RISC Computers
- Pipelined structure of the CPU
- RISC characteristics
- Detail example of a RISC computer
*This topic is core material to be covered every time the course is taught.
Updated: 12/17/2025 04:49PM