inflearn logo
知識共有
inflearn logo

デバッグで学ぶRISC-Vアーキテクチャ - 第3部

オープンソースベースの最新CPUアーキテクチャであるRISC-Vの核心概念と実用的なヒントを、分かりやすく詳細に解説します。

難易度 初級

受講期間 無制限

cpu
cpu
cpu-architecture
cpu-architecture
riscv
riscv
cpu
cpu
cpu-architecture
cpu-architecture
riscv
riscv

受講後に得られること

  • 技術面接でRISC-Vに関する質問に適切に答え、説明することができます。

  • RISC-Vを構成する核となる機能である仮想メモリシステム、メモリバリア、キャッシュの動作原理を学ぶことができます。

  • Linuxカーネルのようなオペレーティングシステムカーネルにおいて、RISC-Vアーキテクチャがどのように活用されているかを知ることができます。

  • RISC-Vベースで実行されるブートローダーやLinuxカーネルのスタートアップコードを分析できます。

お知らせ 🎯

国内初のRISC-V講座のリリースを記念して、30%割引クーポンを発行(先着100名様)いたします。

クーポンリンク: https://inf.run/rGFpZ

最新のシステムソフトウェア業界で
注目を集める RISC-Vアーキテクチャđang nổi lên

最近、オープンソースベースのCPUアーキテクチャであるRISC-Vアーキテクチャが注目を集めています。IT関連のメディア記事やニュースを見ると、以下のような内容をすぐに確認することができます。

  • nVidia、インテル、クアルコムといったビッグテック企業でRISC-Vベースの製品(チップセット)を開発している。

  • 国内でRISC-Vを活用した多様なチップを設計するスタートアップ企業が増えており、RISC-Vデバイスベースの製品を開発する比率が高まっている。

  • AI半導体を設計する際、RISC-VベースのCPUアーキテクチャが多く活用されている。

  • 2026年までに150億個のデバイスがRISC-Vベースでリリースされる予定だ。

  • 大学院(プロセッサ設計)では、RISC-V CPUを設計できるツールキットを使用して、さまざまな研究を進めている。

組み込みおよびシステムソフトウェア企業において、RISC-V CPUアーキテクチャを活用して製品を開発する比率が高まっています。そのため、就職活動生は技術面接でもRISC-Vに関する準備をしなければならない状況です。

講義を制作した背景

初心者にとってRISC-Vアーキテクチャは学ぶのが難しいです。その理由は以下の通りです:

  • RISC-Vを構成する膨大な内容の中で、何が重要なのかわからない

  • RISC-Vを構成する内容のうち、どの機能が実戦プロジェクトで活用されているのか分からない

  • RISC-Vのスペック文書をいくら熱心に読んでも、すぐには理解しにくい。


  • RISC-Vを説明する用語そのものが、どういう意味なのか理解しにくい


今回の講義はデバッグで学ぶRISC-Vアーキテクチャシリーズの3番目の講義で、入門レベルを超えて高年収を狙えるレベルのシステムソフトウェア開発者になるための内容を扱います。メモリシステム(仮想メモリ、メモリバリア、キャッシュ)とHypervisor Extension機能について解説します。

グローバルな実務経験で検証されたRISC-V専門家による講義

1. Linux Plumbers Conference 発表:Debugging RISC-V Kernel Crashes(2025年12月)

(出典: https://www.youtube.com/watch?v=LNih2OdEcYo&t=1s)

2. 著書:Practical Debugging for Embedded RISC‑V (グローバルPackt出版社 - 2026年11月出版予定)

(出典: https://www.amazon.com/Practical-Debugging-Embedded-RISC%E2%80%91V-RISCV-Based/dp/1806699354/)

講義の構成と第2部、第3部講義のロードマップ

今回の講義は、RISC-Vの全講義リストの中で、RISC-Vの核心機能である第3部の内容を扱います。

RISC-Vアーキテクチャの全講義は、ロードマップ - 'システムソフトウェア開発者のためのRISC-Vアーキテクチャ' 講義でご確認いただけます。

講義の主な差別化ポイント

1. RISC-Vアーキテクチャのメモリシステムを分かりやすく解説します

高級システムソフトウェア開発者になるためには、メモリシステムへの理解は不可欠です。その理由は以下の通りです。

  • 実戦プロジェクトで直面するエクセプション問題を適切にデバッグするためには、仮想アドレスの基本概念とMMUをしっかりと理解しておく必要があります。

  • システムのパフォーマンスを最適化するためには、メモリシステムの機能を正しく理解しておく必要があります。

  • 新しいプロジェクトのブリンアップを円滑に進めるためにも、メモリ関連の機能をしっかりと把握しておく必要があります。

しかし、RISC-Vのリファレンス文書の分析を通じてメモリシステム(仮想メモリシステム、メモリバリア、キャッシュ)を正確に把握することは困難です。本講義では、実務に不可欠な核心概念をわかりやすく明確に説明します。

2. 実務例題で学ぶ RISC-V メモリ機能

今回の講義では、実践的な例を通じてRISC-Vのメモリ関連機能がどのように使用されるかを具体的に説明します。

  • Linuxカーネルでページテーブルを設定するコード

  • fence命令でメモリリオーダリングを防止する例

  • Instruction cacheをフラッシュするアセンブリ命令

RISC-Vアーキテクチャの内容とともに、自然に実践感覚を素早く身につけることができます。

3. 多様なデバッグ実習講義

メモリーシステムで扱う内容は、直接デバッグを行わなければ、学んだ内容を消化するのが難しく、実務の開発にすぐ活用することも困難です。今回の講義では、メモリーダンプデバッグの実習(Crash Utility、TRACE32)を通じて、さまざまな実習を進めていきます。

  • 関数およびグローバル変数のアドレス確認(仮想アドレスの概念)

  • 仮想アドレスを直接物理アドレスに変換する実習

  • ページテーブルのエントリ情報を確認 (Crash Utility, TRACE32を活用)

4. Armアーキテクチャと比較してRISC-Vを説明

多くの開発者がすでにArmベースのSoCやArmアーキテクチャに精通しています。本講義では、理解を深めるためにRISC-Vの核心概念をArmアーキテクチャと比較して説明します。

  • 仮想メモリシステムの構造

  • メモリバリア方式

  • キャッシュ制御方法

教育者はArmアーキテクチャに関する書籍の著者(2024年 大韓民国学術院 優秀図書賞受賞)であるため、誰よりもRISC-VをArmアーキテクチャと比較しながら分かりやすく説明することができます。

こんな内容を学びます 📕

RISC-Vアーキテクチャの主要なメモリ機能を紹介し、仮想メモリシステムを構成する核となる機能も紹介します。全体像とともに分かりやすく解説します。

仮想メモリシステムの核心である仮想メモリマップを紹介します。また、カーネル空間とユーザー空間ごとの仮想アドレスの範囲について、分かりやすく説明します。

ページテーブルを設定するsatpレジスタについて説明し、メモリダンプデバッグの実習を通じて仮想アドレスの概念を分かりやすく説明します。(メモリダンプは講義資料で提供されます。)

仮想アドレスとページテーブルの概念を説明し、実際のケーススタディを通じて仮想アドレスの範囲について説明します。

マルチレベルページテーブルの構造を説明し、PTE (Page Table Entry) について詳細に説明します。

マルチレベルページテーブルを通じて仮想アドレスを物理アドレスに直接変換する過程を詳細に説明します。Crash Utilityプログラムを使用して仮想アドレスを物理アドレスに変換するデバッグ実習も行います。

SiFiveのU74コアとP550コアのMMUスペックを分析しながら、MMUの動作方式をハードウェア設計の観点から詳細に説明します。


メモリーリオーダリングについて説明し、メモリーリオーダリングを防止するfence命令の動作原理を分かりやすく説明します。

fence命令の基本構造(form)を説明し、多様なオプションを適用したfence命令の動作方式を詳細に説明します。

マルチコアシステム環境におけるfence命令の動作方式を説明します。fence命令を実行すると、どのような原理で他のコアと同期されるのかを分析します。また、例題のアセンブリ命令を分析しながらfence命令を説明します。

fence.i命令を紹介し、大きな流れとしてfence.i命令を実行した際に処理されるフローまで説明します。

様々な例のアセンブリルーチンを分析しながら、fence.i命令を分析します。Armアーキテクチャと比較しながら、fence.i命令を分析します。

キャッシュの基本概念を説明し、キャッシュがなぜ使用されるのかについても説明します。

マルチコアシステムにおけるキャッシュの動作原理を説明し、Armアーキテクチャと比較しながらRISC-Vで定義されたキャッシュの核となる機能について分析します。

キャッシュを構成する基本要素について説明し、キャッシュルックアップ(キャッシュを検索するプロセス)においてアドレスがどのような方式で処理されるかについて詳細に説明します。


ハイパーバイザを紹介し、RISC-Vアーキテクチャにおいてハイパーバイザが実行されるPrivilegeモードについて説明します。

RISC-Vアーキテクチャで定義されたHypervisor Extensionのコア機能を紹介し、Hypervisor Extensionを有効にする方法を説明します。


Guest OSで例外が発生した際に、Hypervisorがそれを先に制御する実行フローについて説明します。


執筆・講義の経験をもとに
誰よりも深く詳細に!

国内のシステムソフトウェア分野において前代未聞!「Armアーキテクチャ(Armv8-A、Armv7-A)」と「Linuxカーネル」の本を執筆した著者(2冊とも大韓民国学術院の優秀図書に選定であり、国内初めて海外出版社(Packt)を通じて"Reverse Engineering Armv8-A Systems"の本(英語)を執筆したグローバル著者です。何よりも最新のシステムソフトウェアトレンド(電気自動車、システム半導体-システムソフトウェア)を最も熟知している現役の開発者です。また、システムソフトウェア分野で最も活発に知識共有活動を行っている教育者でもあります。

  • 'Reverse Engineering Armv8-A Systems: A practical guide to Kernel, Firmware, and TrustZone analysis' 著者(英語書籍)、(Packt 出版社)

  • 'システムソフトウェア開発のためのArmアーキテクチャの構造と原理' (2024年、大韓民国学術院 優秀図書賞) 著者

  • 'デバッグを通じて学ぶLinuxカーネルの構造と原理' (2021年、大韓民国学術院 優秀図書賞) 著者

  • 'プログラマーズ・デブコース:Linuxシステムおよびカーネル専門家'メイン講師

  • 2022年6月、韓国コンピュータ総合学術大会 (KCC2022) - チュートリアル発表 [ftraceを利用してリナックスカーネルを征服する]

  • LG電子「リナックスカーネル」および「Armv8アーキテクチャ」社内講師(国内および海外開発者を含む) - (2020年〜2024年)

こんな方に
おすすめです

学習対象は
誰でしょう?

  • システム半導体(ファブレス)、電気自動車分野(自動運転、インフォテインメント)を含むシステムソフトウェア分野で、自らの能力を高めていきたいジュニア開発者

  • システム半導体(ファブレス)、電気自動車分野でシステムソフトウェア開発を目指している就活生

  • RISC-Vアーキテクチャの機能を活用して、実務でどのようにデバッグを行うかを知りたいシステムソフトウェア開発者(システム半導体、電気自動車)

  • システムソフトウェア分野へキャリアチェンジしようとしている他分野の開発者

  • システムソフトウェア分野(メモリ、ファイルシステム、オペレーティングシステム)の大学院進学を目指す大学生

前提知識、
必要でしょうか?

  • コンピュータ構成学

  • C言語

  • オペレーティングシステム

こんにちは
austinkimです。

キャリア認証

6,710

受講生

280

受講レビュー

106

回答

4.9

講座評価

23

講座

グローバル著者 & リナックスシステムソフトウェア開発者 (Arm, RISC-V アーキテクチャ)

国内のシステムソフトウェア分野において前例のない!「Armアーキテクチャ(Armv8-A, Armv7-A)」と「Linuxカーネル」の本を執筆した著者(2冊とも大韓民国学術院の優秀図書に選定であり、国内初めて海外出版社(Packt)を通じて「Reverse Engineering Armv8-A Systems」の本(英語)を執筆したグローバル著者です。何よりも最新のシステムソフトウェアトレンド(電気自動車、システム半導体-システムソフトウェア)を最も熟知している現役の開発者です。また、システムソフトウェア分野で最も活発に知識の普及活動を行っている教育者でもあります。"Reverse Engineering Armv8-A Systems" (bằng tiếng Anh) thông qua nhà xuất bản nước ngoài (Packt). Trên hết, ông là một nhà phát triển đang làm việc thực tế, người nắm rõ nhất các xu hướng phần mềm hệ thống mới nhất (xe điện, bán dẫn hệ thống - phần mềm hệ thống). Ngoài ra, ông còn là một nhà giáo dục hoạt động tích cực nhất trong việc truyền bá kiến thức trong lĩnh vực phần mềm hệ thống.

  • Professional 知識共有者およびコンサルタント

  • LG電子 Linuxカーネルオープンソースチーム勤務(〜2026年5月)

  • 'Reverse Engineering Armv8-A Systems: A practical guide to Kernel, Firmware, and TrustZone analysis' 著書(英語) 著者、(Packt 出版社)

  • 『システムソフトウェア開発のためのArmアーキテクチャの構造と原理』2024年、大韓民国学術院 優秀図書賞)著者))

  • 『デバッグを通じて学ぶLinuxカーネルの構造と原理』 (2021年、大韓民国学術院 優秀学術図書賞) 著者)

  • 'Programmers Dev Course: リナックスシステムおよびカーネル専門家' メイン講師

     

 

韓国国内で誰よりもリヌックスカーネルとArmアーキテクチャ(Armv8-A, Armv7-A)を分かりやすく説明できる教育者であると、自信を持って申し上げます。

講義に関するお問い合わせ : austindh.kim@gmail.com

 

主なロードマップ 🎯

'システムソフトウェア開発者のための Arm - basic course'

'システムソフトウェア開発者のためのArm - advanced course'

システムソフトウェア開発者のための Linux kernel - basic course

 

もっと見る

カリキュラム

全体

82件 ∙ (9時間 17分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

4件

4.5

4件の受講レビュー

  • rousalome6394님의 프로필 이미지
    rousalome6394

    受講レビュー 4

    平均評価 5.0

    5

    20% 受講後に作成

    この講義を聞いて組み込み技術面接に合格しました。RISC-V関連の質問を受けたら、RISC-Vについてどんな質問でもうまく答えられるという確信があります。講義を聞いて変わった自分の姿が少し驚きでした。 RISC-Vスペックを読むたびに新鮮でしたが、今ではスラスラ読めるようになりました。プロジェクトにすぐ適用できる内容も多くて、周りの同僚開発者にも推薦しました。

    • jungmopark3648님의 프로필 이미지
      jungmopark3648

      受講レビュー 3

      平均評価 4.3

      3

      100% 受講後に作成

      全体的に基礎知識に基づいた教育だったので、得るものがあまりありませんでした。

      • abcd123123님의 프로필 이미지
        abcd123123

        受講レビュー 330

        平均評価 5.0

        5

        61% 受講後に作成

        • rhgusdud090649님의 프로필 이미지
          rhgusdud090649

          受講レビュー 4

          平均評価 4.5

          5

          30% 受講後に作成

          austinkimの他の講座

          知識共有者の他の講座を見てみましょう!

          似ている講座

          同じ分野の他の講座を見てみましょう!

          新規会員登録で25%OFF

          ¥11,532

          25%

          ¥15,382