YoVDO

Computer Architecture

Offered By: Codecademy

Tags

Computer Science Courses Python Courses Assembly Language Courses Computer Architecture Courses Instruction Set Architecture Courses Logic Gates Courses

Course Description

Overview

Learn about the rules, organization of components, and processes that allow computers to process instructions.

##
In this course, you’ll learn about what the main physical components of a computer are, why 0 and 1 are such important numbers within computing, how instruction set architecture (ISA) establishes communication between the hardware and software components of a computer, and more. Starting from understanding how a computer works to learning about data-level parallelism, this course will teach you computer architecture with a combination of lessons, articles, quizzes, problem sets, and projects. At the end of the course, you'll be prompted to create your own CPU simulator in Python.

Syllabus

  • Introduction to Computer Architecture: Get started with computer architecture by learning about how a computer works, the binary numbering system, and logic gates.
    • Article: Course Syllabus
    • Lesson: How Computers Work
    • Lesson: Binary Numbering System
    • Quiz: Binary Numbering System Quiz
    • Lesson: Learn: Logic Gates
    • Project: Creating an Adder Circuit
  • Instruction Set Architecture: Learn about instruction set architectures and how they fit into the topic of computer architecture.
    • Article: Introduction to Instruction Set Architecture
    • Lesson: Instruction Set Architecture
    • Quiz: Instruction Set Architecture
    • Project: Ultra Super Calculation Computer
  • Assembly Language: Learn about Assembly languages and their role in computer architectures.
    • Lesson: Assembly Language
    • Quiz: Assembly Language Quiz
    • Article: Assembly Language Problem Set
  • Cache: Learn about cache memory by implementing a simulation cache complete with cache reads, writes, replacement policies, and associativity.
    • Lesson: Cache
    • Quiz: Cache Memory
    • Article: Cache Problem Set
  • Instruction Parallelism: Learn about the different methods of processing instructions efficiently!
    • Article: The Instruction Cycle
    • Lesson: Instruction Pipelining
    • Article: Hazards of Instruction Pipelining
    • Article: Superscalar Architecture
    • Quiz: Instruction Parallelism
    • Article: Instruction Parallelism Problem Set
  • Data-Level Parallelism: Explore different approaches to achieve higher data throughput with data-level parallelism.
    • Lesson: Data-Level Parallelism
    • Quiz: Data-Level Parallelism
    • Article: Data-Level Parallelism Problem Set

Taught by

Zoe Bachman

Related Courses

Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course)
Hebrew University of Jerusalem via Coursera
Digital Systems: From Logic Gates to Processors
Universitat Autònoma de Barcelona (Autonomous University of Barcelona) via Coursera
How Computers Work: Demystifying Computation
Raspberry Pi Foundation via FutureLearn
Digital Electronic Circuits
Indian Institute of Technology, Kharagpur via Swayam
Understanding Maths and Logic in Computer Science
Raspberry Pi Foundation via FutureLearn