COURSE INFORMATION
Course Title: ADVANCED COMPUTER ARCHITECTURE
Code Course Type Regular Semester Theory Practice Lab Credits ECTS
CEN 886 A 1 - - - 3 7.5
Academic staff member responsible for the design of the course syllabus (name, surname, academic title/scientific degree, email address and signature) NA
Lecturer (name, surname, academic title/scientific degree, email address and signature) and Office Hours: Betim Çiço
Second Lecturer(s) (name, surname, academic title/scientific degree, email address and signature) and Office Hours: NA
Teaching Assistant(s) and Office Hours: NA
Language: English
Compulsory/Elective: Elective
Classroom and Meeting Time:
Course Description: -
Course Objectives: Main goal of the course is that the student understands all the major concepts used in modern microprocessors. Studying the architecture, organization and use of the newest general purpose (micro)processors currently on the market, and the latest research developments in computer architecture. The module aims to provide students with a fundamental knowledge of computer hardware and computer systems, with an emphasis on system design and performance. The course will cover the different forms of parallelism found in applications (instruction-level, data-level, thread-level, gate-level) and how these can be exploited with various architectural features. It will cover pipelining, superscalar, speculative and out-of-order execution, vector machines, VLIW machines, multithreading, graphics processing units, and parallel microprocessors.This course also treats how processors can be combined in a multiprocessing platform, e.g. by using a NetworkonChip. Interprocessor communication issues will be dealt with. Special emphasis will be on quantifying design decisions in terms of performance and cost.The intention of the course is to give students the ability to understand the design principles and operation of new (multi) processor architectures, and evaluate them both qualitatively and quantitatively. Although we treat several examples, the emphasis will be on architecture concepts.
COURSE OUTLINE
Week Topics
1 Lesson 1 Introduction to the ACA
2 Pipelining: Basic Concepts, Architecture of the MIPS Pipe line processor, Data hazards
3 Branch Prediction Techniques, The problem of control hazards, Static branch prediction techniques, Dynamic branch prediction techniques Exception and Interrupt Handling
4 Instruction Level Parallelism - Intro to ILP; Dependencies and Hazards; Dynamic Scheduling vs. Static Scheduling;, Superscalar vs VLIW Processors;
5 Instruction Level Parallelism - Dynamic Scheduling: Scoreboard Technique, Tomasulo Algorithm, Register Renaming, Reorder Buffer and Speculation
6 Instruction Level Parallelism - Static Multiple-issue Processors: VLIW (Very Long Instruction Word) Architectures, VLIW Code Scheduling
7 Memory Hierarchy: Basic Concepts
8 Lesson 8: Memory Hierarchy: Advanced Concepts - Virtual Memory
9 Multithreading
10 Introduction to Multiprocessors
11 Introduction to Performance
12 SIMD_Vector _Processors
13 Network on chip
14 Introduction to GP- GPUs
Prerequisite(s):
Textbook: Reference Book: "Computer Architecture, A Quantitative Approach", John Hennessy, David Patterson, Morgan Kaufmann, Fifth Edition.
Other References: • Additional Book: "Computer Organization & Design: The Hardware/Software Interface", D. A. Patterson and J. L. Hennessy, Morgan Kaufmann Publishers, Fifth Edition. •Papers from last years IEEE, ACM Conferences.
Laboratory Work:
Computer Usage:
Others: No
COURSE LEARNING OUTCOMES
1 By the end of the module, a student should be able to: Discuss the organisation of computer-based systems and how a range of design choices are influenced by applications.
2 Understand different processor architectures and system-level design processes.
3 Understand the components and operation of a memory hierarchy and the range of performance issues influencing its design.
4 Understand the organisation and operation of current generation parallel computer systems, including multiprocessor and multicore systems.
5 Understand the principles of I/O in computer systems, including viable mechanisms for I/O and secondary storage organisation.
6 Develop systems programming skills in the content of computer system design and organisation.
COURSE CONTRIBUTION TO... PROGRAM COMPETENCIES
(Blank : no contribution, 1: least contribution ... 5: highest contribution)
No Program Competencies Cont.
Doctorate (PhD) in Computer Engineering Program
1 Engineering graduates with sufficient theoretical and practical background for a successful profession and with application skills of fundamental scientific knowledge in the engineering practice. 5
2 Engineering graduates with skills and professional background in describing, formulating, modeling and analyzing the engineering problem, with a consideration for appropriate analytical solutions in all necessary situations 5
3 Engineering graduates with the necessary technical, academic and practical knowledge and application confidence in the design and assessment of machines or mechanical systems or industrial processes with considerations of productivity, feasibility and environmental and social aspects. 5
4 Engineering graduates with the practice of selecting and using appropriate technical and engineering tools in engineering problems, and ability of effective usage of information science technologies. 5
5 Ability of designing and conducting experiments, conduction data acquisition and analysis and making conclusions. 3
6 Ability of identifying the potential resources for information or knowledge regarding a given engineering issue. 5
7 The abilities and performance to participate multi-disciplinary groups together with the effective oral and official communication skills and personal confidence. 5
8 Ability for effective oral and official communication skills in foreign language. 5
9 Engineering graduates with motivation to life-long learning and having known significance of continuous education beyond undergraduate studies for science and technology. 5
10 Engineering graduates with well-structured responsibilities in profession and ethics. 3
11 Engineering graduates who are aware of the importance of safety and healthiness in the project management, workshop environment as well as related legal issues. 4
12 Consciousness for the results and effects of engineering solutions on the society and universe, awareness for the developmental considerations with contemporary problems of humanity. 5
COURSE EVALUATION METHOD
Method Quantity Percentage
Term Paper
1
60
Final Exam
1
40
Total Percent: 100%
ECTS (ALLOCATED BASED ON STUDENT WORKLOAD)
Activities Quantity Duration(Hours) Total Workload(Hours)
Course Duration (Including the exam week: 16x Total course hours) 16 3 48
Hours for off-the-classroom study (Pre-study, practice) 12 6 72
Mid-terms 0
Assignments 0
Final examination 1 27.5 27.5
Other 1 40 40
Total Work Load:
187.5
Total Work Load/25(h):
7.5
ECTS Credit of the Course:
7.5