Fundamentals of Computer Architecture

بواسطة: Coursera

Overview

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

Syllabus

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.

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.

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.

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.

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.

Taught by

Juha Plosila

Fundamentals of Computer Architecture
الذهاب الي الدورة

Fundamentals of Computer Architecture

بواسطة: Coursera

  • Coursera
  • مجانية
  • الإنجليزية
  • متاح شهادة
  • أيام محددة
  • الجميع
  • N/A
8.1.2PHP Version270msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (169ms)
    • Application (100ms)
    • 1 x Booting (62.54%)
      168.64ms
      1 x Application (37.22%)
      100.36ms
      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 ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed7.98ms
      • select * from `courses` where `slug_ar` = 'fundamentals-of-computer-architecture' limit 1
        6.35ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. fundamentals-of-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-04-16 20:46:55' where `id` = 2533
        640μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-04-16 20:46:55
        • 1. 2533
        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)
        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 `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        140μ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 (47) and `institutions`.`deleted_at` is null
        160μ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
        150μ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` = 2524 limit 1
        330μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 2524
        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
        sryaeSywJyc8LbB2wJAz54RsKMLgbGmuVn5z46fE
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/fundam...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/fundamentals-of-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 => "18.222.220.80" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "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 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "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 => "931688e7892550bb-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" ] "x-forwarded-for" => array:1 [ 0 => "18.222.220.80" ] "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" => "18.222.220.80" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "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" => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "931688e7892550bb-ORD" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_X_FORWARDED_FOR" => "18.222.220.80" "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" => "63498" "REMOTE_ADDR" => "172.69.17.194" "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" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/fundamentals-of-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" => 1744836414.8963 "REQUEST_TIME" => 1744836414 ]
        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 => "Wed, 16 Apr 2025 20:46:55 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6InFWM2hIRjNDU0ttZEZrOUNJcVlVUGc9PSIsInZhbHVlIjoiaHg1TGx0QUQ1UDN6SVVOa3lhbFZKcDlYcUUxdVZaaGRFM1RXOW9GeWhYNzlZSVVaSnI3TXNZR1dBcUdqQUYrQnJyZ1RwbkI2Y0pOLzRCQmI3eS9NYVp4VzYwa29SVjU1THB0R2RLaXJ2aVF6YlRXcHZncjNXY2w1dVY1Y2hXeDgiLCJtYWMiOiIxNTY1NTEzMjBjMmE2OGMwOWM4YjkzZjhiNjAzMWMxNTI2NmUxNjA5OTBlYjAzMTJiNGE0YjdiZWI2MzE1MzdlIiwidGFnIjoiIn0%3D; expires=Wed, 16 Apr 2025 22:46:55 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6InFWM2hIRjNDU0ttZEZrOUNJcVlVUGc9PSIsInZhbHVlIjoiaHg1TGx0QUQ1UDN6SVVOa3lhbFZKcDlYcUUxdVZaaGRFM1RXOW9GeWhYNzlZSVVaSnI3TXNZR1dBcUdqQUYrQnJyZ1Rwb" 1 => "laravel_session=eyJpdiI6IlJzL2dURTJVRGJpcDJmdUlzeHhJQkE9PSIsInZhbHVlIjoibTZQc25CMWVlNS8zV09xOHZ6aStEeWNjQ3JnQk54VzJFVHlWZUxKMmZxVVlsQWlIUGJ6UnlaTVF6VWd1MVc5LzIrRnFadVQrOUFRMllJSk5tNlIweGQ1cnJkNVpWejVIZjR4UWNxNGtVY2xMbXJOVUR3Tm1CZ3lpYzBXWENaOWQiLCJtYWMiOiI3OTg5Njg0MzlhZTI4MmU5ODBiYTk0Mjk3OWQzMWY4NjRlODdhOWZmMGEwZjFhN2Y0M2FjMjkzNDExMjMwM2VlIiwidGFnIjoiIn0%3D; expires=Wed, 16 Apr 2025 22:46:55 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6IlJzL2dURTJVRGJpcDJmdUlzeHhJQkE9PSIsInZhbHVlIjoibTZQc25CMWVlNS8zV09xOHZ6aStEeWNjQ3JnQk54VzJFVHlWZUxKMmZxVVlsQWlIUGJ6UnlaTVF6VWd1MVc5LzIr" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6InFWM2hIRjNDU0ttZEZrOUNJcVlVUGc9PSIsInZhbHVlIjoiaHg1TGx0QUQ1UDN6SVVOa3lhbFZKcDlYcUUxdVZaaGRFM1RXOW9GeWhYNzlZSVVaSnI3TXNZR1dBcUdqQUYrQnJyZ1RwbkI2Y0pOLzRCQmI3eS9NYVp4VzYwa29SVjU1THB0R2RLaXJ2aVF6YlRXcHZncjNXY2w1dVY1Y2hXeDgiLCJtYWMiOiIxNTY1NTEzMjBjMmE2OGMwOWM4YjkzZjhiNjAzMWMxNTI2NmUxNjA5OTBlYjAzMTJiNGE0YjdiZWI2MzE1MzdlIiwidGFnIjoiIn0%3D; expires=Wed, 16-Apr-2025 22:46:55 GMT; path=/XSRF-TOKEN=eyJpdiI6InFWM2hIRjNDU0ttZEZrOUNJcVlVUGc9PSIsInZhbHVlIjoiaHg1TGx0QUQ1UDN6SVVOa3lhbFZKcDlYcUUxdVZaaGRFM1RXOW9GeWhYNzlZSVVaSnI3TXNZR1dBcUdqQUYrQnJyZ1Rwb" 1 => "laravel_session=eyJpdiI6IlJzL2dURTJVRGJpcDJmdUlzeHhJQkE9PSIsInZhbHVlIjoibTZQc25CMWVlNS8zV09xOHZ6aStEeWNjQ3JnQk54VzJFVHlWZUxKMmZxVVlsQWlIUGJ6UnlaTVF6VWd1MVc5LzIrRnFadVQrOUFRMllJSk5tNlIweGQ1cnJkNVpWejVIZjR4UWNxNGtVY2xMbXJOVUR3Tm1CZ3lpYzBXWENaOWQiLCJtYWMiOiI3OTg5Njg0MzlhZTI4MmU5ODBiYTk0Mjk3OWQzMWY4NjRlODdhOWZmMGEwZjFhN2Y0M2FjMjkzNDExMjMwM2VlIiwidGFnIjoiIn0%3D; expires=Wed, 16-Apr-2025 22:46:55 GMT; path=/; httponlylaravel_session=eyJpdiI6IlJzL2dURTJVRGJpcDJmdUlzeHhJQkE9PSIsInZhbHVlIjoibTZQc25CMWVlNS8zV09xOHZ6aStEeWNjQ3JnQk54VzJFVHlWZUxKMmZxVVlsQWlIUGJ6UnlaTVF6VWd1MVc5LzIr" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "sryaeSywJyc8LbB2wJAz54RsKMLgbGmuVn5z46fE" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/fundamentals-of-computer-architecture" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]