CSC 456 - Computer Architecture and Multiprocessors
Catalog Description:Major components of digital computers and the organization of these components into systems. Begins with single processor systems and extends to parallel systems for multiprocessing. Topics include computer organization, instruction set design, cache memory, pipelined processors, and multiprocessors. Recent developments in PC and desktop architectures are also studied.
Contact Hours:
- Lecture: 3 hours
Co-requisites: None
Restrictions: None
Coordinator:
Textbook: None
Course Outcomes:
Upon successful completion of this course, a student will be able to…
- Obtain a complete overview of interactions among different components in computer systems
- Identify the performance issue of computer systems
- Optimize the performance of applications
- Create high-performance code that can utilize heterogeneous computing resources, including GPUs and FPGAs
- Create hardware accelerators
Topics:
- ISA
- Performance
- Performance bottlenecks
- Basic processor design
- Pipelined processor
- DE1 SoC
- Pipeline hazards
- Memory Hierarchy
- Optimizing memory-intensive applications
- SuperScaler and dynamic instruction handling
- Multithreaded architecture
- Optimizing multithreaded programs
- GPUs and heterogeneous computing
- OpenCL programming model
- CUDA programming model
- Branch prediction
- Storage and I/O
- Project presentations
See Course Listings