Fundamentals of Computer Architecture
Description
When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan .
- Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
- Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.
About this course: This course introduces several topics for the learners about the fundamentals of computer architecture. After completing this course, the students will have the basic knowledge of: • Computer Performance and Benchmarks • Summarizing Performance • Amdahl’s law • Introduction to Embedded Systems Learning Outcome: • After completing this course, the learners will have the tools to evaluated different computer architectures as well as the software executing on them. • The learners of this course will have knowledge about modern microprocessors and the design techniques used to increase their performance. Skills Gained: • Basic skills to evacuate the performance of compute…
Frequently asked questions
There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.
When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan .
- Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
- Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.
About this course: This course introduces several topics for the learners about the fundamentals of computer architecture. After completing this course, the students will have the basic knowledge of: • Computer Performance and Benchmarks • Summarizing Performance • Amdahl’s law • Introduction to Embedded Systems Learning Outcome: • After completing this course, the learners will have the tools to evaluated different computer architectures as well as the software executing on them. • The learners of this course will have knowledge about modern microprocessors and the design techniques used to increase their performance. Skills Gained: • Basic skills to evacuate the performance of computer systems
Who is this class for: This course is meant for first year Master students in Electrical Engineering or Computer Science. Note that as a consequence, quiz questions are more like exam questions where you have to construct the answer based on the principles that are taught in the web lectures, rather than to recall the literal text of the teacher.
Created by: EIT Digital-
Taught by: Juha Plosila, Associate Professor
Information Technology
Each course is like an interactive textbook, featuring pre-recorded videos, quizzes and projects.
Help from your peersConnect with thousands of other learners and debate ideas, discuss course material, and get help mastering concepts.
CertificatesEarn official recognition for your work, and share your success with friends, colleagues, and employers.
EIT Digital EIT Digital is a pan-European education and research-based open innovation organization founded on excellence. Its mission is to foster digital technology innovation and entrepreneurial talent for economic growth and quality of life. By linking education, research and business, EIT Digital empowers digital top talents for the future. EIT Digital provides online "blended" Innovation and Entrepreneurship education to raise quality, increase diversity and availability of the top-level content provided by 20 reputable universities of technology around Europe. The universities all together deliver a unique blend of the best of technical excellence and entrepreneurial skills and mindset to digital engineers and entrepreneurs at all stages of their careers. The academic partners support Coursera’s bold vision to enable anyone, anywhere, to transform their lives by accessing the world’s best learning experience. This means that EIT Digital gradually shares parts of its entrepreneurial and academic education programmes to demonstrate its excellence and make it accessible to a much wider audience. EIT Digital’s online education portfolio can be used as part of blended education settings, in both Master and Doctorate programmes, and for professionals as a way to update their knowledge. EIT Digital offers an online programme in 'Internet of Things through Embedded Systems'. Achieving all certificates of the online courses and the specialization provides an opportunity to enroll in the on campus program and get a double degree. These are the courses in the online programme:Syllabus
WEEK 1
Introduction
This week we first present a definition of computer architecture and the overall objectives of this specialization. Then we will learn how to measure and summarize performance, and about Amdahl's famous law. Finally we will give an introduction to embedded systems.
8 videos, 2 readings, 3 practice quizzes expand
- Video: Introduction
- Video: Performance Measurement
- Video: Benchmarks & Summary
- Practice Quiz: Fundamentals
- Video: Summarizing Performance
- Video: CPU Performance Equation
- Practice Quiz: Understanding Performance
- Video: Amdahl's law
- Video: Amdahl's examples and design principles
- Reading: Gustafson's Law
- Reading: Weak and Strong Scaling
- Video: Introduction to Embedded Systems
- Practice Quiz: What is an embedded system?
Graded: Fundamentals of Computer Architecture and Introduction to Embedded Systems
WEEK 2
ISA Design and MIPS64
The set of instructions supported by a processor is called its Instruction Set Architecture (ISA). This week we will learn the MIPS64 ISA, which will be used for code examples throughout this specialization. We will also learn some basic code optimizations that reduce the number of instructions.
4 videos, 1 reading expand
- Video: Highlights of MIPS64 Architecture
- Video: Addressing Modes and Instruction Formats
- Video: MIPS64 Operations
- Reading: MIPS 64 Overview
- Video: Basic Code Optimizations
Graded: MIPS64 and Optimizations
WEEK 3
Review of Pipelining
This week we will learn about pipelining, which is a technique that overlaps the execution of several instructions. Pipelining is a key implementation technique to make CPUs fast. Using the canonical 5-stage pipeline for illustration, we will learn about pipelining hurdles called hazards and how they can be solved.
12 videos expand
- Video: Pipelining Principal – Real-World Example
- Video: Canonical 5-Stage Pipeline
- Video: MIPS Pipeline Features and Pipeline Hazards
- Video: Structural Hazards & Data Hazards
- Video: Load-Use Data Hazard
- Video: Control Hazards
- Video: Pipeline Hazards
- Video: Deal with Branch Hazard
- Video: Scheduling Instructions for Branch Delay Slots
- Video: Summary of Module
- Video: Exercise
- Video: Branch Delay and Pipelining Summary
Graded: Pipelining
WEEK 4
Multicycle Operations and Pipeline Scheduling
This week we extend the canonical 5-stage pipeline with multicycle operations; operations that require multiple cycles to execute. Thereafter we learn how instructions can be scheduled in order to reduce the number of pipeline stalls.
9 videos expand
- Video: Multicycle Operations
- Video: Challenges for Longer Pipelines
- Video: MIPS R4K Pipeline
- Video: Multicycle Operations
- Video: Code Example and Pipeline Assumptions
- Video: Scheduling to Reduce Stalls
- Video: Loop Unrolling and Summary
- Video: Module Summary
- Video: Pipeline Scheduling
Graded: Multicycle Operations & Pipeline Scheduling
WEEK 5
Cache Basics
To bridge the gap between processor speed and memory speed, modern processors employ caches. Caches are high-speed memories that contain recently used code and data. This week we will learn the basics of caches (how they are organized, how data is found in the cache, etc.). In addition, we will learn the average memory access time (AMAT) equation as well as 5 basic cache optimizations that aim at reducing the AMAT.
10 videos expand
- Video: Caches and the Principle of Locality
- Video: Direct Mapped Cache Organization
- Video: Hit or Miss example
- Video: Cache Basics
- Video: Cache Metrics and Improving AMAT
- Video: Basic Optimizations to Improve Miss Rate
- Video: Cache Equations for Set-Associative Caches
- Video: Reduce Miss Penalty by Multilevel Cache
- Video: Give Priority to Read Misses
- Video: Cache Optimizations
Graded: Cache
Share your review
Do you have experience with this course? Submit your review and help other people make the right choice. As a thank you for your effort we will donate $1.- to Stichting Edukans.There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.