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

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

難易度 初級

受講期間 無制限

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

学習した受講者のレビュー

5.0

5.0

mikeseohyungjin

31% 受講後に作成

現職開発者として講義が役に立ち、核心だけを扱う良い講義です。高手の仲間入りをするために必須で知っておくべき内容をtrace32を通じて実習できる過程は全世界的にも見つけにくいのですが、大きな助けになりました。

5.0

김준

100% 受講後に作成

現場経験から滲み出る年輪が感じられる素晴らしい講義でした。

5.0

박정모

100% 受講後に作成

大変助かりました。

受講後に得られること

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

  • RISC-Vを構成する核心機能であるエクセプション(Exception)、インタラプトコントローラ、Calling Conventionの動作原理を学ぶことができます。

  • TRACE32シミュレータプログラムを使用して、エクセプション(Exception)、割り込みコントローラ、コーリングコンベンション(Calling Convention)などの機能をデバッグで実習することができます。

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

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

<お知らせ>

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

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

2. 2025年最新講義リニューアル

最新のRISC-Vアーキテクチャの機能と、実務プロジェクトにすぐ適用できる有益なコンテンツを発掘し、以下の講義を追加しました。

  • 'Synchronous エクセプションの動作方式' セッション追加 (4つの講義) - 07/23 (2025)

最新のシステムソフトウェア業界で
注目を集めている RISC-Vアーキテクチャ

最近、オープンソースベースの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を説明する用語そのものが、どういう意味なのか理解しにくい。


Armアーキテクチャと比較してRISC-Vアーキテクチャに関する資料は十分ではなく、RISC-Vを具体的かつ分かりやすく説明する資料が不足しているのが現実です。新人開発者を含むシステムソフトウェア開発者の方々が、RISC-Vを学ぶ過程で直面する困難を解消するために、この講義を制作することになりました。

グローバルな実務経験で検証された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/)

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

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

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

講義の核心的な差別化ポイント

1. TRACE32シミュレータプログラム(教育用)によるRISC-Vアーキテクチャのデバッグ

RISC-Vアーキテクチャ(レジスタ、アセンブリ命令、Privilegeモード)を学ぶ近道は何でしょうか?それはまさに、直接デバッグ実習を行う方法です。

この講義を受講すれば、教育用TRACE32シミュレータプログラムを「インフラン講義資料」からダウンロードして、直接TRACE32シミュレータプログラムを活用し、RISC-Vアーキテクチャのレジスタ、アセンブリ命令、Privilegeモードの実習を直接行うことができます。

ちなみに、システムソフトウェア開発全般においてTRACE32デバッガと関連プログラムは広範囲に使用されます。TRACE32プログラムはライセンスがあって初めて実行可能です。

2. RISC-Vボードから抽出した5つのカーネルメモリダンプを提供

システムソフトウェアの開発過程で求められる最も重要な能力は、問題解決能力です。その中でも、クラッシュ問題を分析して解決する能力が最も多く必要とされます。今回の講義では、最も人気のあるRISC-Vボードの一つであるVision-Five 2から抽出した5つのカーネルクラッシュメモリダンプをデバッグしながら、エクセプションとコーリングコンベンション(Calling convention)に関するデバッグ実習を行います。講義を受講される方は、TRACE32プログラムとともに5つのメモリダンプをダウンロードして、直接エクセプションとコーリングコンベンションをデバッグすることができます。

3. 核心内容を厳選して分かりやすく解説

初心者の方はRISC-Vを学ぶ際、最初にリファレンス文書を入手して分析することが多いですが、初心者にとってRISC-Vのどの内容を先に学ぶべきか、なかなか見当がつきません。何を優先して学ぶべきかを判断するのが難しいためです。本講義では、実務に応用できる、必ず知っておくべき内容を厳選して解説します。例えば、RISC-Vベースのデバイスから取得したメモリダンプやカーネルログを開き、レジスタやアセンブリ命令について分かりやすく詳細に説明します。

4. ソフトウェアとスタックとともに具体的な例を挙げて説明

RISC-Vは、システムソフトウェア開発を極めたい、あるいはこの分野に進出するために学ぶケースがほとんどです。今回の講義では、実践プロジェクトでRISC-Vがどのように活用されているか、様々な例を挙げて説明します。

  • RISC-Vシステムでソフトウェアがどのように実行されるのか

  • RISC-Vシステムでどのような過程を経てブーティングされるのか

  • RISC-Vシステムでどのようにデバッグおよびリバーシングを行うべきか

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

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

システムソフトウェア業界のエコシステムを見ると、2025年までArmアーキテクチャを中心に組み込みおよびチップセット業界のエコシステムが構成されています。多くのシステムソフトウェア開発者は、ArmプロセッサやArmアーキテクチャに慣れている状況です。今回の講義では、RISC-Vの核心概念をArmアーキテクチャと比較しながら説明します。

  • 例外の種類と処理方式

  • 割り込みコントローラの構造と処理方式

  • Calling Conventionの処理方式(使用されるレジスタと関連アセンブリ命令)

教育者はArmアーキテクチャに関する書籍の著者であるため、誰よりもRISC-VをArmアーキテクチャと比較しながら分かりやすく説明することができます。

こんな内容を学びます 📕

例外の基本概念を詳細に説明し、RISC-Vアーキテクチャで定義されている例外の主要な機能(フィーチャー)を分かりやすく解説します。

RISC-Vアーキテクチャの核となる機能であるエクセプションの実行フローを説明します。また、マシンモードとユーザーモードで構成されたシステムにおけるエクセプションの処理方式を詳細に説明します。

RISC-Vアーキテクチャで定義されている、例外を誘発した原因を示す例外コード(Exception code)について説明し、メモリアボートによって例外が処理されるフローについても説明します。

ソフトウェア開発の観点から、例外およびクラッシュが発生した際の実行フローを詳しく説明します。

アセンブリ命令を一行ずつ分析しながら、例外がどのような流れで誘発されるかを説明します。また、例外が発生した際にスタックでどのように処理されるかについても説明します。

T32デバッグ実習プログラムでアセンブリ命令を実行しながら、エクセプションの実習を行います。エクセプションが誘発された際、どのCSR(scause, mcause)レジスタが変更されるのかを詳細に説明します。

TRACE32プログラムで例外を誘発する実習を行いながら、Linuxカーネルで処理される例外ハンドラについて詳細に説明します。

RISC-Vベースのボードから取得したメモリダンプを分析しながら、RISC-Vアーキテクチャのエクセプションの動作方式を説明します:カーネルログを分析し、コールスタックを分析します。

TRACE32プログラムでページテーブルに関するデバッグ実習を行います。これを通じて、エクセプションが発生した原因について具体的に把握します。

RISC-Vアーキテクチャで定義されている割り込みコントローラの基本動作方式について説明します。PLICとCLICの構造を分かりやすく説明します。

割り込みに関連する例外コードをレビューし、PLIC(Platform Level Interrupt Controller)の構造について説明します。

PLICを構成する核心的なハードウェア構成要素について説明し、PLICを制御するCSRレジスタについて分かりやすく説明します。

RISC-Vアーキテクチャで導入されたCalling Convention(関数呼び出し規約)について説明し、Calling Conventionをサポートするレジスタをレビューします。

関数に渡される引数の処理方式について、全体像を説明します。

RISC-VアーキテクチャのCalling convention(関数呼び出し規約)をサポートするアセンブリ命令を分析します。また、例題のアセンブリ命令も分析します - c.sdsp命令の分析

RISC-VアーキテクチャのCalling convention(関数呼び出し規約)をサポートするアセンブリ命令を分析します。また、例題のアセンブリ命令も分析します - c.ldsp命令の分析

RISC-VアーキテクチャのCalling convention(関数呼び出し規約)をサポートするアセンブリ命令を分析します。また、例題のアセンブリ命令も分析します - c.ldsp命令の分析


TRACE32デバッグ実習で、壊れたコールスタックを復元する実習を行います。


TRACE32デバッグ実習で、スタックオーバーフローによって引き起こされたメモリダンプの解析を行います。


執筆・講義の経歴を活かし、
誰よりも深く詳細に!

国内のシステムソフトウェア分野において空前絶後の!「Armアーキテクチャ(Armv8-A, Armv7-A)」と「Linuxカーネル」の本を執筆した著者(2冊とも大韓民国学術院の優秀図書に選定)であり、国内初で海外出版社(Packt)を通じて"Reverse Engineering Armv8-A Systems"本(英語)を執筆したグローバル著者です。何よりも最新のシステムソフトウェアトレンド(電気自動車、システム半導体-システムソフトウェア)を最も熟知している現役の開発者です。また、システムソフトウェア分野で最も活発に知識共有活動を行っている教育者でもあります。 through an overseas publisher (Packt). Above all, I am an active developer who is most well-versed in the latest system software trends (Electric Vehicles, System Semiconductors - System Software). I am also an educator who is most actively engaged in spreading knowledge in the field of system software.

  • '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,414

受講生

251

受講レビュー

99

回答

4.9

講座評価

23

講座

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

国内のシステムソフトウェア分野において前例のない!「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出版), (Packt Publishing)

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

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

  • 「Programmers Dev Course:Linuxシステムおよびカーネル専門家」メイン講師

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

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

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

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

主要ロードマップ 🎯

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

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

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

もっと見る

カリキュラム

全体

91件 ∙ (11時間 33分)

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

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

受講レビュー

全体

9件

5.0

9件の受講レビュー

  • mikeseohyungjin5975님의 프로필 이미지
    mikeseohyungjin5975

    受講レビュー 4

    平均評価 5.0

    修正済み

    5

    31% 受講後に作成

    現職開発者として講義が役に立ち、核心だけを扱う良い講義です。高手の仲間入りをするために必須で知っておくべき内容をtrace32を通じて実習できる過程は全世界的にも見つけにくいのですが、大きな助けになりました。

    • aceoftop1975님의 프로필 이미지
      aceoftop1975

      受講レビュー 121

      平均評価 5.0

      5

      100% 受講後に作成

      2025年06月03日(火)16:58 本当に良い講義を聞きました。stack情報を使って、デバッグができるということを、ようやく理解できました。楽しい一日を過ごしてください。ありがとうございます。

      • jungmopark3648님의 프로필 이미지
        jungmopark3648

        受講レビュー 3

        平均評価 4.3

        5

        100% 受講後に作成

        大変助かりました。

        • jun7kim8005님의 프로필 이미지
          jun7kim8005

          受講レビュー 2

          平均評価 5.0

          5

          100% 受講後に作成

          現場経験から滲み出る年輪が感じられる素晴らしい講義でした。

          • heecheolsong님의 프로필 이미지
            heecheolsong

            受講レビュー 24

            平均評価 5.0

            5

            31% 受講後に作成

            austinkimの他の講座

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

            似ている講座

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