Fundamentals of Computer Architecture

Product type

Fundamentals of Computer Architecture

Coursera (CC)
Logo Coursera (CC)
Provider rating: starstarstarstar_halfstar_border 7.2 Coursera (CC) has an average rating of 7.2 (out of 6 reviews)

Need more information? Get more details on the site of the provider.

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…

Read the complete description

Frequently asked questions

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.

Didn't find what you were looking for? See also: Computer Hardware, Architecture, CompTIA A+ / Network+ / Security+, IT Security, and Web Accessibility.

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
Level Intermediate Language English How To Pass Pass all graded assignments to complete the course. User Ratings 4.4 stars Average User Rating 4.4See what learners said Coursework

Each course is like an interactive textbook, featuring pre-recorded videos, quizzes and projects.

Help from your peers

Connect with thousands of other learners and debate ideas, discuss course material, and get help mastering concepts.

Certificates

Earn 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


  1. Video: Introduction
  2. Video: Performance Measurement
  3. Video: Benchmarks & Summary
  4. Practice Quiz: Fundamentals
  5. Video: Summarizing Performance
  6. Video: CPU Performance Equation
  7. Practice Quiz: Understanding Performance
  8. Video: Amdahl's law
  9. Video: Amdahl's examples and design principles
  10. Reading: Gustafson's Law
  11. Reading: Weak and Strong Scaling
  12. Video: Introduction to Embedded Systems
  13. 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


  1. Video: Highlights of MIPS64 Architecture
  2. Video: Addressing Modes and Instruction Formats
  3. Video: MIPS64 Operations
  4. Reading: MIPS 64 Overview
  5. 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


  1. Video: Pipelining Principal – Real-World Example
  2. Video: Canonical 5-Stage Pipeline
  3. Video: MIPS Pipeline Features and Pipeline Hazards
  4. Video: Structural Hazards & Data Hazards
  5. Video: Load-Use Data Hazard
  6. Video: Control Hazards
  7. Video: Pipeline Hazards
  8. Video: Deal with Branch Hazard
  9. Video: Scheduling Instructions for Branch Delay Slots
  10. Video: Summary of Module
  11. Video: Exercise
  12. 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


  1. Video: Multicycle Operations
  2. Video: Challenges for Longer Pipelines
  3. Video: MIPS R4K Pipeline
  4. Video: Multicycle Operations
  5. Video: Code Example and Pipeline Assumptions
  6. Video: Scheduling to Reduce Stalls
  7. Video: Loop Unrolling and Summary
  8. Video: Module Summary
  9. 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


  1. Video: Caches and the Principle of Locality
  2. Video: Direct Mapped Cache Organization
  3. Video: Hit or Miss example
  4. Video: Cache Basics
  5. Video: Cache Metrics and Improving AMAT
  6. Video: Basic Optimizations to Improve Miss Rate
  7. Video: Cache Equations for Set-Associative Caches
  8. Video: Reduce Miss Penalty by Multilevel Cache
  9. Video: Give Priority to Read Misses
  10. Video: Cache Optimizations

Graded: Cache
There are no reviews yet.

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.