강의

멘토링

로드맵

NEW
Hardware

/

Embedded IoT

TRACE32入門 - MCU & RTOS開発者のための実戦デバッグ過程

企業が求めるMCU開発者になるための必須スキルである - TRACE32入門コースです。実務ですぐに活用できるTRACE32デバッグ方法を素早く習得できます。

40名 が受講中です。

  • austinkim
실습 중심
trace32
실무적용
문제해결
임베디드
MCU
debugging
riscv
cortex-m3

こんなことが学べます

  • TRACE32デバッガーを活用してレジスターとメモリ内容を読み取り、修正して問題の原因を把握することができます。

  • TRACE32で広範囲に使用されるCMMスクリプトを作成し、デバッグすることができます。

  • TRACE32のブレークポイント設定機能を活用してコードの実行フローを制御することができます。

  • メモリダンプを保存またはロードする機能を活用して効率的にダンプデバッグを行うことができます。

  • TRACE32の機能を活用してCortex-M3プロセッサとRISC-Vの核心機能を学ぶことができます。

キャリアと年収のアップグレードを

希望するMCU開発者注目!!!

企業に引き抜かれるMCU開発者になりたいですか?TRACE32デバッグスキルは必須です。この講義を受講すれば、実務ですぐに活用できるTRACE32デバッグ方法を素早く習得できます。受講と同時に、TRACE32デバッグ実習(シミュレーターモード)を進行できます。

TRACE32を

よく扱うべき理由

TRACE32は世界的に広く使用されているハードウェアデバッガーであり、プログラムです。特にMCU開発において、TRACE32はハードウェアデバッガーであるだけでなく、SDK性格の開発環境です。特に大企業(サムスン、ヒュンダイ、SK)とグローバル半導体会社クアルコム、NXP、インフィニオン)では、MCU開発段階でTRACE32を標準ツールとして使用しています。したがってキャリアのためにMCU開発者がTRACE32の使用法を習得することは、単純な選択ではなく、実務で要求される必須能力と言えます。

今回の講義は、MCU開発者がTRACE32を効果的に使用する方法について説明します。

講義を制作した理由

14年間にわたって様々なクラッシュ問題を解決しながら、TRACE32を活用して数多くの難題(クラッシュ、ロックアップ、ウォッチドッグリセット、ハードウェアバグ)を解決してきました。中世時代に1対1の決闘前夜、鎧を抱いて眠る騎士のように、出張先でTRACE32を抱いて眠ったこともあります。組み込みシステム開発者にとってTRACE32機器は騎士を守る鎧のような存在だからでした。

まだ夜勤をしている組み込みシステム開発者の方々の苦労を少しでも減らしたいという思いで、組み込み開発者や管理者を対象にTRACE32デバッグセミナーを実施しました。しかし、次のような不満を聞きました。

  • 管理者の立場:TRACE32ライセンスを購入しても開発者たちがあまり使用しない。(理由:開発者たちがTRACE32を活用する方法をよく知らないため)

  • 開発者の立場:管理者たちがTRACE32ライセンスを購入してくれないため、デバッグができない。また、TRACE32でデバッグする方法をよく教えてくれる先輩や同僚がいない。

このようなフィードバックを聞いて強力な機能を提供するTRACE32を思ったより上手く活用できていないんだなと思いました。そこで、TRACE32をまだ使ったことがないか慣れていない、MCUファームウェア開発者の方々が実務で活用できるTRACE32入門コース講義を制作することになりました。

講義の差別化ポイント

この講義は単純にTRACE32の使用方法を羅列する過程ではありません。MCU開発者が実務で必ず遭遇する可能性のある状況と共に設計された実習中心の講義です。

1.直接実習可能な環境の提供

受講生はTRACE32プログラム(シミュレータ版)をダウンロードしてすぐに実行することができます。ハードウェアデバッガ機器がなくても、PC環境でTRACE32をインストールし、直接デバッグコマンドを実習することができます。これにより、実際の機器を使用する前の段階で十分に経験を積むことができます。

2.Cortex-M3とRISC-V MCUサポート

この講義は、Arm Cortex-M3とRISC-Vアーキテクチャ関連機能をすべて説明します。現在のMCU市場は、Armベース製品とRISC-Vベース製品に二分されており、両アーキテクチャを理解することは、今後のMCU開発者の競争力を高める重要な要素です。TRACE32を利用して、両アーキテクチャの違いを直接体験することができます。

3.実習中心で、簡単で体系的なデバッグ方法の説明

TRACE32は強力な機能を提供しますが、初めて触れる人には多少複雑に見える可能性があります。この講義は実際の開発で遭遇する可能性のあるシナリオに基づいて構成されています。レジスタ確認メモリダンプ解析関数コールスタック追跡など、MCU開発で頻繁に必要な機能を実習中心で扱います。また、TRACE32のデバッグ方法を段階的に分けて分かりやすく明確に説明します。

4.CMMスクリプト活用法の提供

単純にGUI環境でデバッグすることを超えて、CMMスクリプトを使用してメモリをダンプしたり特定のデータをパースしたりする方法も扱います。この機能は大規模プロジェクトや反復的な分析作業で大きな生産性向上をもたらします。実務ですぐに適用可能なスクリプト例を一緒に提供して、学習効果を最大化します。

この講義を受講すると...

  • TRACE32を使用して、皆さんが開発するELFファイルを直接ロードしてシンボルをデバッグすることができます。セクション情報と変数や関数の情報を確認することができます。これを基に初めて見るソースコードを効率的に分析することができ、最大限短時間でデバッグを実行することができます。

  • TRACE32を活用してブレークポイントを設定し、関連するグローバル変数やローカル変数をすぐに確認できます。またレジスタやメモリコンテンツを直接修正できるため、予期しない問題に効果的に対処することができます。

  • アセンブリ命令(Cortex-M3、RISC-V)を実行して直接デバッグすることができます。変更されたレジスタの値やメモリコンテンツを確認することができます。

  • TRACE32プログラムを使用中に遭遇する問題をデバッグできます。特にCMMスクリプトを実行する過程で遭遇する問題に直接対処でき、1次原因をすぐに確認できます。

こんな内容を学びます

MCUファームウェア開発者がTRACE32をしっかり学ぶべき理由を、実務開発とキャリアの観点から詳しく説明します。 ## 実務開発の観点 ### 1. デバッグ効率の飛躍的向上 - **リアルタイムデバッグ**: 実際のハードウェア上でリアルタイムでコードを追跡・分析可能 - **複雑な問題解決**: タイミング関連のバグ、割り込み処理の問題、メモリ破損などの難しい問題を効率的に解決 - **開発時間短縮**: 従来のprintf デバッグに比べて圧倒的に早い問題特定と解決 ### 2. 高度な分析機能活用 - **パフォーマンス最適化**: 実行時間分析、メモリ使用量監視を通じた最適化 - **リアルタイム制約検証


TRACE32を使用して実務開発でどのような作業ができるかを具体的に説明します。

TRACE32を上手く使うには、TRACE32がサポートするCPUアーキテクチャの基本機能を知る必要があります。MCUファームウェア開発でよく使われるCortex-M3/M4プロセッサの核心機能について説明します。

最近MCUで多く使用されているRISC-Vプロセッサの基本機能について説明します。

TRACE32を実行してみて、この過程で知っておくべき基本的なコマンドを紹介します。CMMスクリプトをデバッグする実習を進行します。

TRACE32の各メニューを説明します。ブレークポイントを設定し、アセンブリ命令をデバッグする実習を進めます。

RISC-VベースのELFファイル(u-boot)をロードした状態で、前回の講義で扱ったTRACE32機能を使用する実習を進めます。MCUファームウェア開発者の立場でCPUが変更されると、TRACE32でどのような機能が一緒に使用されるかを知ることができます。

TRACE32でシンボルをデバッグし、バイナリファイルをロードする具体的な実習を進めます。

TRACE32リファレンスマニュアルを見ながら、デバッグ過程でよく使用するコマンドをまとめます。

受講前の参考事項

教育用TRACE32プログラムの著作権と注意事項

  • 本コースで使用されるTRACE32教育用プログラムはMDSTechとLauterbachに帰属し、ライセンスなしに複製や配布することはできません。

  • 本講義は韓国の開発者のみを対象として制作された講義です。(韓国以外の他の地域にいる海外の開発者はこの講義を受講することができません。理由:TRACE32ライセンス問題)

著作権と注意事項

  • このコースで使用されるTRACE32トレーニングソフトウェアは、MDSTechとLauterbachが所有しています。ライセンスなしにコピーまたは配布することはできません。

  • このコースは韓国の韓国人開発者のみを対象として作成されています。TRACE32ライセンス制限により、韓国以外の開発者はこのコースを受講することができません。

実習環境と前提知識

  • TRACE32プログラム(シミュレーターモード)は「Windows 10」または「Windows 11」環境で使用できます。

  • この講義の前提知識はありませんが、MCUやRTOSについて知っていれば、より楽に授業を受けることができます。

  • C言語の基本文法は知っておくと良いです。

前提知識および注意事項

  • 学習難易度を考慮した必須前提知識の有無

  • 講義動画の品質(音質/画質)など受講と直接関連する内容及び推奨学習方法

  • 質問・回答および今後のアップデート関連内容

  • 講義および学習資料の著作権に関するお知らせ

こんな方に
おすすめです

学習対象は
誰でしょう?

  • MCUベースのファームウェアを開発しながら効率的なデバッグ方法を学びたい組み込みソフトウェアエンジニア

  • TRACE32を初めて触るが、プロジェクトで必ず使用しなければならないジュニア開発者

  • ボードを初めてブリングアップしたり、ペリフェラルデバイスをデバッグする際に困難を抱えるLinux BSPエンジニア

  • RTOS環境でタスク動作とシステム動作を分析したいファームウェア開発者

  • MCUクラッシュや例外を素早く把握して問題解決能力を向上させたい開発者

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

  • C言語

  • MCU

  • RTOS

こんにちは
です。

5,708

受講生

163

受講レビュー

86

回答

4.9

講座評価

22

講座

글로벌 저자 & 리눅스 시스템 소프트웨어 개발자 (Arm, RISC-V 아키텍처)

국내 시스템 소프트웨어 분야에서 전무후무한! 'Arm 아키텍처(Armv8-A, Armv7-A)'와 '리눅스 커널' 책을 쓴 저자(2권의 책 모두 대한민국 학술원 우수도서에 선정)이며, 국내 최초로 해외 출판사(Packt)를 통해 "Reverse Engineering Armv8-A Systems" 책(영어)을 집필한 글로벌 저자입니다. 무엇보다 최신 시스템 소프트웨어 트렌드(전기자동차, 시스템 반도체- 시스템 소프트웨어)를 가장 잘 알고 있는 현업 개발자입니다. 또한 시스템 소프트웨어 분야에서 가장 지식 전파 활동을 활발하게 하는 교육자입니다. 

  • 'Reverse Engineering Armv8-A Systems: A practical guide to Kernel, Firmware, and TrustZone analysis' 책(영어) 저자, (Packt 출판사)

  • '시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리'(2024년, 대한민국 학술원 우수도서상) 저자

  • '디버깅을 통해 배우는 리눅스 커널의 구조와 원리' (2021년, 대한민국 학술원 우수도서상) 저자

  • '프로그래머스 데브 코스: 리눅스 시스템 및 커널 전문가' 메인 강사

  • 2022년 6월, 한국컴퓨터종합학술대회 (KCC2022) - 튜토리얼 발표 [ftrace를 이용해 리눅스 커널 정복하기]

  • LG전자 '리눅스 커널' 및 'Armv8 아키텍처' 사내 강사(국내 및 해외 개발자 포함) - (2020년~현재)

국내에서 어느 누구보다 리눅스 커널과 Arm 아키텍처(Armv8-A, Armv7-A)를 잘 설명할 수 있는 교육자라고 자신있게 말씀드릴 수 있습니다.

강의문의 : austindh.kim@gmail.com

주요 로드맵 🎯

'시스템 소프트웨어 개발자를 위한 Arm - basic course'

'시스템 소프트웨어 개발자를 위한 Arm - advanced course'

시스템 소프트웨어 개발자를 위한 Linux kernel - basic course

カリキュラム

全体

80件 ∙ (9時間 16分)

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

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

受講レビュー

まだ十分な評価を受けていない講座です。
みんなの役に立つ受講レビューを書いてください!

期間限定セール

¥36

29%

¥7,838

austinkimの他の講座

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

似ている講座

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