Arm® Cortex®-M3/M4/M0 ソフトウェアトレーニングコース(オンライン)
- 日程: 2025年12月15日(月) 9:00~18:00 ※募集は締め切りました。次回開催をお待ちください。
コースの概要
本コースは、Arm Cortex-M3/M4/M0 コアをベースにしたプラットフォームでソフトウェアを開発するエンジニアのために作成されています。
Armv7-Mのアーキテクチャ、例外、メモリシステム、メモリ保護および同期化といったコアアーキテクチャの基礎に加え、組込みソフトウェア開発時の要点について学びます。さらにCMSISの概要に関する知識についても講義で習得します。Arm Cortex-M3/M4の違いも習得できます。
※v6-Mのアーキテクチャ、Cortex-M0についても補足します。
受講対象者
- Arm Cortex-M3/M4/M0 を使用したシステムのソフトウェア開発を行う予定のある ソフトウェアエンジニア
- マイコンに関する一般的な知識
- 既存のArmプロセッサの知識は問いませんが、あれば役に立ちます。
オンライン開催にあたり
- Web会議サービス(Zoom)で開催します。
- ブラウザでのご参加は「Google Chrome」のみ対応しています。
※Google Chromeの使用ができない場合は、Zoomアプリのインストールが必要になります。
※Zoomのアカウントの取得は必須ではございません。
お申し込み方法
受付終了:2025年12月2日(火) 18:00まで ※募集は締め切りました。次回開催をお待ちください。
受講料:40,000円(受講者1名様/税抜き)
下記コース名をクリックしてお申し込みフォームからお申込みください。
※同業者様等のお申し込みについてはお断りする場合もございます。
「Arm® Cortex®-M3/M4/M0 ソフトウェアトレーニングコース」
お支払方法
請求書はお申し込みいただいた講座の開催が確定した後、講座の開催月にお申込書に記載されたお申込者様宛にお送りいたします。
請求書に記載される期日(請求書の発行月末締め翌月末振込み)に受講料を弊社指定銀行へお振込ください。
(振込手数料は振込者がご負担下さい。)
支払い処理について上記の方法以外をご希望の場合、 Arm®トレーニン事務局までご連絡下さい。ご相談に応じます。
お問い合わせ先
Arm®トレーニング事務局
TEL : 03-6756-9405
E-mail : arm_training@dts-insight.co.jp
コース内容
1 Armv7-M プログラマモデル
- 1.1 イントロダクション
Armv7-M プロファイル概要 - 1.2 データタイプ
データタイプ - 1.3 コアレジスタ
Armv7-M プロファイルレジスタセット / 浮動小数点拡張レジスタ / プログラムカウンタ(PC) / リンクレジスタ (LR) / スタックポインタ(SP) / Program Status Register / CONTROLレジスタ / その他の専用レジスタ - 1.4 モード、特権、スタック
モードの概要 / 特権実行 / スタック - 1.5 例外
例外処理 - 1.6 命令セット概念
命令セット サポート / バイナリの上位互換性 / 命令セット例 - 1.7 プログラミング標準
Arm Procedure Call Standard / Cortex Microcontroller Software Interface Standard / CMSIS-Core の概要 / CMSIS-Core の例
2 Arm Cortex-M3/M4 概要
- 2.1 Arm Cortex-M3_M4 概要
Arm Cortex-M3 & Arm Cortex-M4 特徴 /Arm Cortex-M3/M4 プロセッサ / Cortex-M3とCortex-M4 の相違点 / M プロファイル 命令 / 他のArmプロセッサとの相違点 / コアレジスタセット / プロセッサパイプライン / サイクルカウ ント / メモリマップ / ビット幅のメモリアクセス / ビットバンディング / モード、特権、スタック/ 割り込みと例外 / メモリ保護ユニット (MPU) / 電力管理 / コア デバッグ / システムタイマ - SysTick / Arm Cortex-M4 浮動小数点ユニット
3 Arm Cortex-M3/M4 プロセッサコア
- 3.1 Arm Cortex-M3/M4 プロセッサコア
プロセッサブロック図/プロセッサパイプライン/フェッチステージ/最適化されたパイプライン/分岐用語/分岐命令のパイプラインの例/フラッシュ/直接分岐先のプリフェッチ/フォールディング/LDR のパイプラインの例/ライトバッファ/STR のパイプラインの例/STR-STR のパイプラインの例/命令サイクルタイミング
4 Armv7-M 例外処理
- 4.1 イントロダクション
概要 / マイクロコード化された割り込みのメカニズム / 割り込みオーバーヘッド - 4.2 例外モデル
例外タイプ / プロセッサのモードの使い方の例 / 外部割り込み / プリエンプション / 例外モデル / 例外のプロパティ / 例外優先度の例 / Armv7-Mのベクタテーブル / ベクタ テーブル オフセット レジスタ(VTOR) / リセットの動作 / 例外の動作 / 例外優先度の概要 / 例外の状態
4.2.1 例外のエントリと終了の動作
例外エントリの動作 / 例外エントリ時のスタッキング / 割り込みエントリ時のタイミング / ReturnAddress 値 / 例外からのリターン / EXC_RETURN / NMI 例外エントリの例/NMI 例外リターンの例 / ネストの例 / テールチェインの例 / 後着の例 / ステート復元中に新しい割り込みが発生した場合
4.2.2 優先順位付けと制御
例外優先度と優先度の引き上げ / 優先度の引き上げ例-PRIMASK / 特殊用途のマスクレジスタ / 優先度を引き上げる命令 / v7-M優先度グルーピング / グループ優先度、サブ優先度の選択 / 割り込み制御とステータスビット / 割り込みイネーブルレジスタ / 割り込みペンディング レジスタ / 割り込みアクティブレジスタ / 割り込みプライオリティレジスタ
4.2.3 割り込み感度
割り込み感度 / パルス割り込み-1パルス/パルス割り込み-複数パルス / レベル割り込み / 同じ割り込みを再度保留する - 4.3 ベクタテーブルと割り込みハンドラの記述
CMSIS-CORE: vector table / 割り込みハンドラの記述 / 割り込みの管理 - 4.4 内部例外とRTOSサポート
内部例外 / SysTickタイマ / SVCall / SVCallハンドラ / PendSV / 優先度エスカレーション / 内部割り込みレジスタ - 4.5 フォールト例外
v7-Mのフォールト例外 / フォールト エスカレーション / フォールトの処理 / ロックアップ状態 / ロックアップ状態の動作 / ロックアップ状態の解除 / 同期例外 / 非同期例外
5 Armv7-M メモリモデル
- 5.1 イントロダクション
イントロダクション - 5.2 メモリ アドレス空間
システム アドレス マップ / メモリ セグメント / アドレスマップ概要 / システムセグメント / Private Peripheral Bus (PPB) / System Control Space (SCS) / System Control Block (SCB) / SCB レジスタ概要 - 5.3 メモリ タイプと属性
メモリ タイプと属性 - 5.4 アライメントとエンディアン
命令とデータ アライメント / エンディアン / エンディアン設定の影響 - 5.5 バリア
メモリバリア命令 / データメモリバリア ( DMB ) / データ同期バリア ( DSB ) / 命令同期バリア ( ISB ) / 例1: メモリのリマップ/例2: 自己修正コード/例3: SLEEPONEXIT/例4: CONTROL レジスタ/例5 & 6: ベクタテーブル/例7: MPU プログラミング / メモリバリアのさらなる使用