Computer Architecture

Brought by: Coursera

Overview

In this course, you will learn to design the computer architecture of complex modern microprocessors.

All the features of this course are available for free. It does not offer a certificate upon completion.

Syllabus

  • Introduction, Instruction Set Architecture, and Microcode
    • This lecture will give you a broad overview of the course, as well as the description of architecture, micro-architecture and instruction set architectures.
  • Pipelining Review
    • This lecture covers the basic concept of pipeline and two different types of hazards.
  • Cache Review
    • This lecture covers control hazards and the motivation for caches.
  • Superscalar 1
    • This lecture covers cache characteristics and basic superscalar architecture.
  • Superscalar 2 & Exceptions
    • This lecture covers the common issues for superscalar architecture.
  • Superscalar 3
    • This lecture covers different kinds of architectures for out-of-order processors.
  • Superscalar 4
    • This lecture covers the common methods used to improve the performance of out-of-order processors including register renaming and memory disambiguation.
  • VLIW 1
    • This lecture covers the basic concept of very long instruction word (VLIW) processors.
  • VLIW2
    • This lecture covers the common methods used to improve VLIW performance.
  • Branch Prediction
    • This lecture covers the motivation and implementation of branch predictors.
  • Advanced Caches 1
    • This lecture covers the advanced mechanisms used to improve cache performance.
  • Advanced Caches 2
    • This lecture covers more advanced mechanisms used to improve cache performance.
  • Memory Protection
    • This lecture covers memory management and protection.
  • Vector Processors and GPUs
    • This lecture covers the vector processor and optimizations for vector processors.
  • Multithreading
    • This lecture covers different types of multithreading.
  • Parallel Programming 1
    • This lecture covers the concepts of parallelism, consistency models, and basic parallel programming techniques.
  • Parallel Programming 2
    • This lecture covers the solutions for the consistency problem in parallel programming.
  • Small Multiprocessors
    • This lecture covers the implementation of small multiprocessors.
  • Multiprocessor Interconnect 1
    • This lecture covers the design of interconnects for a multiprocessor.
  • Multiprocessor Interconnect 2
    • This lecture covers the design of interconnects for multiprocessor and network topology.
  • Large Multiprocessors (Directory Protocols)
    • This lecture covers the motivation and implementation of directory protocol used for coherence on large multiproccesors.

Taught by

David Wentzlaff

Computer Architecture
Go to course

Computer Architecture

Brought by: Coursera

  • Coursera
  • Free
  • English
  • Certificate Not Available
  • Available at any time
  • All
  • Arabic, French, Portuguese, Italian, German, Russian, English, Spanish, Kazakh, Hindi, Swedish, Korean, Greek, Chinese, Thai, Ukrainian, Japanese, Indonesian, Polish, Dutch, Turkish
8.1.2PHP Version783msRequest Duration2MBMemory UsageGET en/courses/{slug}Route
    • Booting (497ms)
    • Application (283ms)
    • 1 x Booting (63.54%)
      497.37ms
      1 x Application (36.2%)
      283.39ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET en/courses/{slug}
      middleware
      web, localize:en
      controller
      App\Http\Controllers\CourseController@show
      as
      en.courses.show
      namespace
      prefix
      /en
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed6.67ms
      • select * from `courses` where `slug_en` = 'computer-architecture' limit 1
        4.93ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. computer-architecture
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-06-12 13:20:01' where `id` = 73
        640μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-06-12 13:20:01
        • 1. 73
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (1)
        230μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        190μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `institutions` where `institutions`.`id` in (9) and `institutions`.`deleted_at` is null
        230μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (2) and `providers`.`deleted_at` is null
        210μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 73 limit 1
        240μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 73
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Institution
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        9Z2BDfso0uQ7jF7VUZZRcVhoqQWNzPKBXSZELsK9
        locale
        en
        _previous
        array:1 [ "url" => "https://www.corspedia.com/en/courses/computer-architecture" ]
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /en/courses/computer-architecture
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "216.73.216.123" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "x-forwarded-for" => array:1 [ 0 => "216.73.216.123" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-ray" => array:1 [ 0 => "94e9a4a4ab7aeb5a-ORD" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "216.73.216.123" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_X_FORWARDED_FOR" => "216.73.216.123" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "94e9a4a4ab7aeb5a-ORD" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "18340" "REMOTE_ADDR" => "172.70.100.211" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/en/courses/computer-architecture" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1749734401.0222 "REQUEST_TIME" => 1749734401 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Thu, 12 Jun 2025 13:20:01 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6InZ4UmlncmQrMEJ0QWhwUlY5aU5YOXc9PSIsInZhbHVlIjoibHpBK2l4d2x3czVLRkZJNWFtNFRUZExqWEhyUmFnclhra3RPcER4MDRCM1JDR2FKUDNMKzJjQjVoaUd4cG8ydTJrT1RjZnFKYVdCR2d4aGk3dUZCaGJScC9qeXNtL05YSDUrNFhFZDdHaEhpeWZ1QnRIYmwrVHZYZjlOVklvbmciLCJtYWMiOiJhNWVmOTI4YjZlYTE5MWUzY2E2MjMxMTlmNmViMDk5ZDMyNGQxMThhZjc0YjkwNjM3YWI0NTNmNTc5NjQxNjA0IiwidGFnIjoiIn0%3D; expires=Thu, 12 Jun 2025 15:20:01 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6InZ4UmlncmQrMEJ0QWhwUlY5aU5YOXc9PSIsInZhbHVlIjoibHpBK2l4d2x3czVLRkZJNWFtNFRUZExqWEhyUmFnclhra3RPcER4MDRCM1JDR2FKUDNMKzJjQjVoaUd4cG8ydTJrT1RjZ" 1 => "laravel_session=eyJpdiI6InVjWGZKazdKbkNWUVFzS1AzUFRxMlE9PSIsInZhbHVlIjoiODBUYW1UMWo2VEdKdk9NbmtJZjhkZDJNazJERTB6eGxud0Ezc1hCOWRPS01EZThMZm5LTzVIVWt3MzZVVkIrMUV0alZyUkNjSFBZZEUyMUxhQ2JUVE4vQVBxYUhuWVM4TU9Vb21MbFVQc01QUERBZXlmTnB3MHRKQXBJWC84N2oiLCJtYWMiOiI5YTQwMTg2OTI4OTBiYTE4ZTM1Mjg1ZTAwNjMxYzNlOTE2Y2Q0ZDRlMDNhOWZiNTk3OTNkYTgxYzI4MzFhNWFlIiwidGFnIjoiIn0%3D; expires=Thu, 12 Jun 2025 15:20:01 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6InVjWGZKazdKbkNWUVFzS1AzUFRxMlE9PSIsInZhbHVlIjoiODBUYW1UMWo2VEdKdk9NbmtJZjhkZDJNazJERTB6eGxud0Ezc1hCOWRPS01EZThMZm5LTzVIVWt3MzZVVkIrMUV0" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6InZ4UmlncmQrMEJ0QWhwUlY5aU5YOXc9PSIsInZhbHVlIjoibHpBK2l4d2x3czVLRkZJNWFtNFRUZExqWEhyUmFnclhra3RPcER4MDRCM1JDR2FKUDNMKzJjQjVoaUd4cG8ydTJrT1RjZnFKYVdCR2d4aGk3dUZCaGJScC9qeXNtL05YSDUrNFhFZDdHaEhpeWZ1QnRIYmwrVHZYZjlOVklvbmciLCJtYWMiOiJhNWVmOTI4YjZlYTE5MWUzY2E2MjMxMTlmNmViMDk5ZDMyNGQxMThhZjc0YjkwNjM3YWI0NTNmNTc5NjQxNjA0IiwidGFnIjoiIn0%3D; expires=Thu, 12-Jun-2025 15:20:01 GMT; path=/XSRF-TOKEN=eyJpdiI6InZ4UmlncmQrMEJ0QWhwUlY5aU5YOXc9PSIsInZhbHVlIjoibHpBK2l4d2x3czVLRkZJNWFtNFRUZExqWEhyUmFnclhra3RPcER4MDRCM1JDR2FKUDNMKzJjQjVoaUd4cG8ydTJrT1RjZ" 1 => "laravel_session=eyJpdiI6InVjWGZKazdKbkNWUVFzS1AzUFRxMlE9PSIsInZhbHVlIjoiODBUYW1UMWo2VEdKdk9NbmtJZjhkZDJNazJERTB6eGxud0Ezc1hCOWRPS01EZThMZm5LTzVIVWt3MzZVVkIrMUV0alZyUkNjSFBZZEUyMUxhQ2JUVE4vQVBxYUhuWVM4TU9Vb21MbFVQc01QUERBZXlmTnB3MHRKQXBJWC84N2oiLCJtYWMiOiI5YTQwMTg2OTI4OTBiYTE4ZTM1Mjg1ZTAwNjMxYzNlOTE2Y2Q0ZDRlMDNhOWZiNTk3OTNkYTgxYzI4MzFhNWFlIiwidGFnIjoiIn0%3D; expires=Thu, 12-Jun-2025 15:20:01 GMT; path=/; httponlylaravel_session=eyJpdiI6InVjWGZKazdKbkNWUVFzS1AzUFRxMlE9PSIsInZhbHVlIjoiODBUYW1UMWo2VEdKdk9NbmtJZjhkZDJNazJERTB6eGxud0Ezc1hCOWRPS01EZThMZm5LTzVIVWt3MzZVVkIrMUV0" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "9Z2BDfso0uQ7jF7VUZZRcVhoqQWNzPKBXSZELsK9" "locale" => "en" "_previous" => array:1 [ "url" => "https://www.corspedia.com/en/courses/computer-architecture" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]