Arm Architecture: Cache [Author-Led Lecture Part 3-4]

The author of "The Structure and Principles of Arm Architecture for System Software Development" will help you master 'Cache'—the absolute fundamental of system software and the core of the latest Arm architectures (Armv8-A, Armv7-A)!

(5.0) 7 reviews

120 learners

Level Beginner

Course period Unlimited

cortex-a
cortex-a
ARM Architecture
ARM Architecture
armv8
armv8
memory-management
memory-management
cortex-a
cortex-a
ARM Architecture
ARM Architecture
armv8
armv8
memory-management
memory-management

What you will gain after the course

  • You can understand the basic operating principles of the cache in the Arm architecture (Armv8-A).

  • You can see how the cache-related features of the Arm architecture are utilized in actual projects.

  • You can grasp the execution flow and structure related to cache from a big-picture perspective.

  • I can answer questions related to Cache well in an interview.

<Notice>

1. Issuing a 30% discount coupon to celebrate surpassing 300 students

To celebrate surpassing 300 students (Parts 1 and 2), we are issuing a 30% discount coupon. Thank you. Limited to the first 200 people.

2. Roadmap Guide 🎯

This lecture <Arm Architecture: Cache [Author's Lecture Part 3-4]> is included in the roadmap 'Arm for System Software Developers - advanced course'.


If you wish to learn the Arm architecture (Armv8-A, Armv7-A) systematically, it is recommended to take advantage of the roadmap (30% discount on all lectures). For your reference, the Arm Architecture Roadmap (complete author-led series) consists of two parts: the Basic Course and the Advanced Course.


In modern system software,
the most important Arm architecture

Arm processors used in smartphones, AI SoC system semiconductors, electric vehicle automotive (autonomous driving, infotainment), cloud servers, and MacBooks are all Armv8-A based 64-bit Cortex-A processors (Cortex-A53, Cortex-A57, Cortex-A72, etc.). Currently, the Armv8-A architecture can be seen as the content requiring the most essential foundational knowledge in the system software industry.

The first step to becoming an advanced system SW developer!
Understanding the principles of cache operation🙋‍♂

However, to become an advanced system software developer, you must have a good understanding of how memory is managed, which is one of the key features of the Arm architecture. The core of memory management consists of the 'virtual memory system', 'cache operation principles', and 'memory models and barriers'.

Then, why is it important to understand the 'operating principles of cache'?

1⃣ First, in the memory hierarchy, the cache is located between the CPU core and the main memory. Since the cache can have a profound impact on system performance, understanding the basic structure of the cache, multi-level cache architecture, and cache lookup is fundamental knowledge for improving system performance.

2⃣ Second, if you understand the structure of the cache well, you can write cache-friendly code that utilizes cache hits. For example, frequently used routines can be designed to run only on specific CPU cores. As a result, you can reduce cache misses and engage in performance-optimized programming.

3⃣ Third, the operating principles of the cache provide the foundational knowledge to effectively debug crash issues. In real-world projects, the cache can become corrupted, or errors may occur during 'cache line fill' operations. Understanding the structure and operation of the cache is the fundamental knowledge required to effectively debug these cache-related issues.

4⃣ Fourth, having a good understanding of cache-related topics will help you perform well in technical interviews. In particular, fabless companies (system semiconductors) frequently ask questions about cache during their technical interviews.

What you will learn

It explains the basic concepts of cache in an easy and detailed manner and introduces the structure of the CPU cache.

We explain the multi-level cache applied to most CPUs and analyze the flow of how the cache is processed within the memory system from a big-picture perspective.

Explains the components of the cache in detail and describes cache information (cache lines and additional information) using the TRACE32 debugging program.

It explains the cache policies (Write-Back, Write-Through) applied to multi-level caches in an easy-to-understand and detailed manner.

We introduce cache-related terminology used in the Arm architecture and explain how cache-related APIs are utilized in real-world industry projects.

Based on my experience writing books and lecturing,
deeper and more detailed than anyone else!

I am the unprecedented author in the domestic system software field who wrote books on 'Arm Architecture (Armv8-A, Armv7-A)' and the 'Linux Kernel'. I am also an active developer who is well-versed in the latest system software trends (electric vehicles, system semiconductors-system software), and an educator who is most actively engaged in spreading knowledge within the system software field.

  • Author of 'Structure and Principles of Arm Architecture for System Software Development' (2024, National Academy of Sciences Outstanding Book Award)

  • 'Structure and Principles of the Linux Kernel Learned Through Debugging' (2021, National Academy of Sciences Outstanding Book Award) Author

  • Main Instructor for 'Programmers Dev Course: Linux System and Kernel Expert'

  • June 2022, Korea Computer Congress (KCC2022) - Tutorial Presentation [Conquering the Linux Kernel Using ftrace]

  • LG Electronics 'Linux Kernel' and 'Armv8 Architecture' Internal Instructor (Including domestic and overseas developers) - (2020~2024)


I can confidently say that I am an educator who can explain the key features of the Arm architecture (Armv8-A, Armv7-A) better than anyone else in Korea.

Vivid course reviews left by learners

<Structure and Principles of Arm Architecture for System Software Development - Part 1/2 Author's Lecture>


Notes before taking the course

Prerequisite Knowledge and Precautions 📢

  • You can follow the main content related to cache even without prior knowledge.

  • It is recommended to have a prior understanding of exception levels, exceptions, and assembly instructions, which form the foundation of the Arm architecture.

  • A habit of consistently listening to the lectures and reviewing is more important than prior knowledge.

Recommended for
these people

Who is this course right for?

  • A junior developer who wants to build expertise in the system software field, including system semiconductors (fabless) and the electric vehicle sector (autonomous driving, infotainment).

  • A job seeker who wants to develop system software in the fields of system semiconductors (fabless) and electric vehicles.

Need to know before starting?

  • Computer Architecture

  • Operating System

Hello
This is austinkim

6,444

Learners

252

Reviews

99

Answers

4.9

Rating

23

Courses

Global Author & Linux System Software Developer (Arm, RISC-V Architecture)

A global author who has written unprecedented books on 'Arm Architecture (Armv8-A, Armv7-A)' and the 'Linux Kernel' in the domestic system software field (both books were selected as Excellent Academic Books by the National Academy of Sciences of the Republic of Korea), and is the first in Korea to author the book (in English) "Reverse Engineering Armv8-A Systems" through an international publisher (Packt). Above all, he is an active developer who is most well-versed in the latest system software trends (electric vehicles, system semiconductors-system software). He is also an educator who is most actively engaged in spreading knowledge within the system software field.

  • Author of the book (English) 'Reverse Engineering Armv8-A Systems: A practical guide to Kernel, Firmware, and TrustZone analysis', (Packt Publishing)

  • Author of 'Structure and Principles of Arm Architecture for System Software Development' (2024 National Academy of Sciences Outstanding Book Award)

  • Author of 'Structure and Principles of the Linux Kernel Learned Through Debugging' (2021, National Academy of Sciences Outstanding Scholarly Book Award)

  • Main Instructor for 'Programmers Dev Course: Linux System and Kernel Expert'

  • June 2022, Korea Computer Congress (KCC2022) - Tutorial Presentation [Conquering the Linux Kernel Using ftrace]

  • LG Electronics 'Linux Kernel' and 'Armv8 Architecture' internal instructor (including domestic and overseas developers) - (2020–Present)

I can confidently say that I am an educator who can explain the Linux kernel and Arm architecture (Armv8-A, Armv7-A) better than anyone else in Korea.

Lecture Inquiries: austindh.kim@gmail.com

Main Roadmap 🎯

'Arm for System Software Developers - basic course'

'Arm for System Software Developers - advanced course'

Linux kernel for system software developers - basic course

More

Curriculum

All

22 lectures ∙ (2hr 31min)

Published: 
Last updated: 

Reviews

All

7 reviews

5.0

7 reviews

  • grapesgun0624님의 프로필 이미지
    grapesgun0624

    Reviews 5

    Average Rating 5.0

    5

    100% enrolled

    I always had a hard time with cash when I was an undergraduate student, but I learned a lot from this lecture. Thank you!

    • aceoftop1975님의 프로필 이미지
      aceoftop1975

      Reviews 121

      Average Rating 5.0

      5

      100% enrolled

      2024/07/29/Mon 17:00 I listened to the lecture well. When I listen to the lecture, I always gain new knowledge and information. Thank you for the detailed explanation. All of Kim Dong-hyun's lectures are good.

      • 16203975365님의 프로필 이미지
        16203975365

        Reviews 1

        Average Rating 5.0

        5

        100% enrolled

        • mist14093016님의 프로필 이미지
          mist14093016

          Reviews 5

          Average Rating 5.0

          5

          32% enrolled

          • heecheolsong님의 프로필 이미지
            heecheolsong

            Reviews 24

            Average Rating 5.0

            5

            32% enrolled

            austinkim's other courses

            Check out other courses by the instructor!