DEBUG · デバッグプローブ/オンチップデバッグ概要
Universal Debug Engine(UDE)は、PLS のマルチコア対応デバッグ・トレース・テスト統合環境(ソフトウェア)です。Infineon AURIX/TriCore、NXP/ST Power Architecture(MPC56/57/58・SPC56/57/58)、Arm Cortex-M/R/A、Renesas RH850、RISC-V、ARC、SuperH SH-2A、STM32、Stellar、S32 など、極めて広範なコアに対応します。
ターゲットアクセスは、別売のアクセスデバイス UAD ファミリ(UAD2pro / UAD2next / UAD3+ の3機種)と組み合わせて行います。用途・予算・トレース要件に応じて3機種から選択します。
【UDE 2024 の主な新機能】AURIX TC4x の cDSP デバッグ・SOTA対応、TRAVEO T2G/XMC7000・RH850/U2B のトレース対応、UDE SimplyTrace と RTOS Awareness の統合(タスクトレース)、miniMCDS対応(TC38x等)、トレースの浮動小数点表示。RTOSは SAFERTOS/FreeRTOS/PXROS-HR/MicroC-OS-II/AUTOSAR をサポート。
【動画で学ぶ UDE】PLS のウェビナーシリーズ(Hitex 共催)では、UDE の主要機能を実機デモで解説しています。下記「動画で学ぶ UDE の内容」に、トレースベース解析・ツール全体像・Python自動化・Arm Cortex-A/Rマルチコアデバッグ・変数可視化の5本について、視聴しなくても要点が掴めるよう内容をまとめました。
主要仕様
| 種別 | デバッグ・トレース・テスト統合環境(ソフト) |
|---|---|
| 対応コア | AURIX/TriCore・Power・Cortex-M/R/A・RH850・RISC-V・ARC・SH-2A 他 |
| 機能 | マルチコアデバッグ・トレース・コードカバレッジ・テスト自動化 |
| 拡張 | RTOS Awareness・MCDS/SimplyTrace・MemTool・Code Coverage |
| ハードウェア | UAD2pro / UAD2next / UAD3+(3機種) |
ソフトウェア機能(デバッグ)
| デバッグ | HLL(C/C++/Rust)+アセンブラのクロスデバッグ・Mixed Mode・構文強調 |
|---|---|
| マルチコア | システム中心UI・コア別色分け・同期Run Control・Multi-Program Loader |
| 特殊コア | GTM/PPU/SCRM/HSM/eTPU 等の特殊コアに対応 |
| 実行時観測 | アプリデータのリアルタイム観測・高度な可視化 |
| FLASH | オン/オフチップFLASH書込を統合(Memtool Add-In) |
| UI | Perspectives・マルチスクリーン・ホーム画面・事前定義ターゲット構成 |
ソフトウェア機能(トレース・解析)
| トレース方式 | MCDS・AURORA(AGBT/SGBT/HSSTP)・Nexus・CoreSight(ETM/PTM/ITM/FTM)・ARC SmaRT |
|---|---|
| 設定 | UEC(Universal Emulation Configurator)でGUI構成 |
| 解析 | Code Coverage(ISO 26262構造カバレッジ)・Profiling・Execution Sequence・Call Graph |
| 再構成 | トレースから時間整合したプログラムフローを復元 |
| 出力形式 | Raw/UTF(Binary/Text/HTML)・VCD・TAB/SPACE・XML |
ソフトウェア機能(自動化・IDE)
| Object Model | COMベースAPI(全baseライセンス同梱・追加費用なし) |
|---|---|
| スクリプト | Python/PowerShell/JavaScript/Perl/VisualBasic/C#/C++(COM対応言語) |
| Python | 組込みPython 3.12インタプリタ(Script Console・自動補完・外部スクリプト) |
| Eclipse | Eclipse統合(専用デバッグパースペクティブ・全アーキ対応・追加費用なし) |
| コンパイラ | HighTec/GNU・Tasking・Keil/Arm・Wind River・Green Hills・Renesas・CodeWarrior |
RTOS・AUTOSAR Awareness
| RTOS | PXROS-HR・SAFERTOS・FreeRTOS・Sciopta・OSEK/ORTI・PXROS・CMX・uC/OS-II・rcX・Keil RTX・Nucleus PLUS |
|---|---|
| AUTOSAR | AUTOSAR Classic Platform・ARTI/ORTI 対応 |
| ARTI | ARTIファイル(arxml)からタスク/runnable/ISRをトレース・可視化 |
| 表示 | RTOS/AUTOSARオブジェクト・状態の可視化/各ウィンドウへの遷移 |
AUTOSAR ARTI 詳細
| ARTIとは | ビルドツールとデバッグ/トレースツール間のIF。arxmlに全デバッグ情報を格納 |
|---|---|
| Support Window | OSオブジェクトを詳細表示(HALT状態で更新) |
| 情報クラス | ArtiHook/OSClass/AlarmClass/ContextClass/IsrClass/MessageContainerClass/RessourceClass/StackClass/TaskClass/CoreClass |
| タスクトレース | task実行・category 2 ISR・関数をトレース(ARTIフック基盤) |
| ArtiHookGenerator | ARTI.c/ARTI.h(フックマクロ)をビルド時に自動生成するCLIツール |
| 3rd party連携 | トレースを ASAM MDF でエクスポート→タイミング解析ツールへ |
| Vector Timing Bundle | MICROSAR向けスケジューリングトレース統合(TA Tool Suite連携) |
対応マイコン一覧(メーカー別・統合)
| Infineon | AURIX TC4x/TC3xx/TC2xx・TriCore AUDO・XMC7xxx/4xxx/1xxx・TRAVEO T2G・PSoC 4・XC166/XC2000/XE166・C166/ST10・MOTIX |
|---|---|
| STMicroelectronics | Stellar SR6P/SR6G/SR5E・STM32(全Cortex-M)・SPC56x/SPC57x/SPC58x |
| NXP | S32G2/G3・S32V・S32Z/S32E・S32N5・S32K1/K3/K5・i.MX RT・MPC56xx/57xx・S32R・Kinetis |
| Renesas | RH850(U2A/U2B/U2C・C1/D1/E1/E2/F1/P1)・R-Car・RA・RZ/T2M・SuperH SH-2A |
| Arm(各社) | Cortex-R52(+)・Cortex-A5x/A7x/A8/A9・Cortex-M0/3/4/7・M33/M23/M55/M52/M85・Arm7/9/11 |
| Texas Instruments | Jacinto(TDA4/DRA8)・Sitara(AM64x/AM263Px/TMS570)・MSPM0 G・MSPM33 |
| Synopsys | ARC EM/EV/HS・ARC-V |
| IPコア/その他 | Bosch GTM・DFA・Andes D23・RISC-V・SiFive・AMD/Xilinx Zynq-7000・Hilscher NETX 90・XScale |
| 中国系ベンダー | Tongxin Micro THA6・Thinktech Alioth TTA8・NOVOSENSE・GigaDevice・C*Core |
動画で学ぶ UDE の内容(5本の要点)
| ① トレースベース・デバッグと実行時解析 | オンチップトレースは、実行時の挙動に影響を与えずに(非侵襲で)リアルタイムアプリを解析できる強力な機能です。Infineon AURIX の MCDS(Multi-Core Debug Solution)トレースシステムを例に、トレースベース・デバッグの始め方を実演。トレースを用いてアプリの性能ボトルネックを特定する方法、タイミング問題や並列実行が原因のバグを見つける手順を解説します。プログラムフローの時間正確な再構築が中心テーマです。 |
|---|---|
| ② デバッグ・トレース用ツールの全体像 | UDE をデバッグ・トレース・テストツールとして導入する回(約40分)。(1) 対応マイクロコントローラ(AURIX/TriCore・Power Architecture・Arm Cortex・RH850 ほか)、(2) デバッガハードウェア=Universal Access Device ファミリ(UAD2pro/UAD2next/UAD3+)、(3) UDE の機能概要、という3部構成で、ツール選定に必要な全体像をつかめます。 |
| ③ Python によるデバッグ自動化 | UDE の自動化インターフェースを Python から使う方法(約37分)。UDE Object Model(Microsoft COM ベースのソフトウェアAPI)を介して、ターゲットシステムの制御・ターゲット状態の取得・状態の操作(変数書き換え等)を Python スクリプトで行います。UDE には Python 3.12 インタプリタが組み込まれており(Python Script Console)、対話実行も外部スクリプト実行も可能。日々の定型作業やテストの自動化に直結する内容です。 |
| ④ Arm Cortex-A/Cortex-R SoC のマルチコアデバッグ | Arm Cortex-A53 / Cortex-R52 を搭載するヘテロジニアス・マルチコアSoCのデバッグ(約23分)。NXP S32 Automotive Platform(S32G・S32S)と ST Stellar を実例に、UDE のマルチコア機能(コアの同期スタート/ストップ、コアグループ、マルチコアブレークポイント)と基本的なマルチコアトレースを実演します。 |
| ⑤ 変数の可視化(Visualizing Variables 101) | UDE が備える豊富な変数可視化機能の解説(約21分)。ターゲット変数の値を、ウォッチ・メモリ・グラフィカル表示など多様な方法で観測・可視化する手順を、基礎から実演します。実行中のアプリケーションデータをリアルタイムに把握するための実践的な内容です。 |
主な用途
- 対象MCUのデバッグ・トレース作業を1つの環境で行う
- 実行制御・変数観測・トレース解析を統合して進める
- チーム内でデバッグ環境を統一する
導入メリット
- ハードウェアと解析機能が統合されており、設定の手間が少ない
- デバッグとトレースを行き来せずに解析できる
- スクリプトから制御でき、自動化にも展開できる
対応環境
- 対応コア:Infineon TriCore / AURIX 他マルチコアSoC
- 機能:デバッグ/フラッシュ/トレース(MCDS)/RTOS Awareness
- ハードウェア:UAD(Universal Access Device)
よくある質問
XCP経由でターゲットに接続できません。何が必要ですか?
FLASHへ新しいELFを読み込むたびに『Program』ボタンを押しています。自動化できますか?
ELFとHEXでFLASHへのダウンロードパターンに差が出ることがあります。なぜですか?
FLASHから起動しRAMへ自身をコピーする独自ブートローダをデバッグするには?
Eclipse環境にUDEをインストールしてデバッグするには?
ネットワークドライブ上のファイルだとプログラム読み込みが遅いのですが?
全ブレークポイントを一括で有効/無効にする最短手順は?
Memory/SFRビューに『????????』と表示されるのはなぜですか?
『Runtime components are older than required』警告や、コンテキストメニューで落ちる場合は?
この製品が含まれるソリューション
この製品は、複数製品を組み合わせた次の構成の要素です。構成全体での位置づけは各ソリューションページをご覧ください。
- AURIX マルチコア 車載ECU 開発 — この製品の役割: 中核TriCore/AURIX — マルチコアデバッグ × MCDSトレース × AUTOSAR
関連製品




お問い合わせ
対象MCU・数量・安全要件などをお聞かせください。最適な構成と概算をご提案します。
UDE — AURIX / TriCore マルチコアデバッグの本命
PLS の全製品を見る →