Arm® Cortex®-M3/M4/M0 ソフトウェアトレーニングコース(オンライン)
- 日程:2023年11月29日(水) 9:00~18:00
※進行状況により終了時間は少し変動の可能性があります
コースの概要
本コースは、Arm® Cortex®-M3/M4/M0 コアをベースにしたプラットフォームでソフトウェアを開発するエンジニアのために作成されています。
Arm®v7-Mのアーキテクチャ、例外、メモリシステムに関する知識を講義で習得します。Arm® Cortex®-M3/M4の違いも習得できます。
※v6-Mのアーキテクチャ、Cortex-M0についても補足します。
受講対象者
- Arm® Cortex®-M3/M4/M0 を使用したシステムのソフトウェア開発を行う予定のある ソフトウェアエンジニア
- マイコンに関する一般的な知識
- 既存のArm®プロセッサの知識は問いませんが、あれば役に立ちます。
オンライン開催にあたり
- Web会議サービス(Zoom)で開催します。
- ブラウザでのご参加は「Google Chrome」のみ対応しています。
※Google Chromeの使用ができない場合は、Zoomアプリのインストールが必要になります。
※Zoomのアカウントの取得は必須ではございません。
お申し込み方法
受付終了:2023年11月21日(火) 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 Arm®v7-M プログラマモデル
- 1.1 イントロダクション
Arm®v7-M プロファイル概要 - 1.2 データタイプ
データタイプ - 1.3 コアレジスタ
Arm®v7-M プロファイルレジスタセット / 浮動小数点拡張レジスタ / プログラムカウンタ(PC) / リンクレジスタ (LR) / スタックポインタ(SP) / Program Status Register / CONTROLレジスタ / その他の専用レジスタ - 1.4 モード、特権、スタック
モードの概要 / 特権実行 / スタック - 1.5 例外
例外処理 - 1.6 命令セット概念
命令セット サポート / バイナリの上位互換性 / 命令セット例
2 Arm® Cortex®-M3_M4 概要
- 2.1 Arm® Cortex®-M3_M4 概要
Arm® Cortex®-M3/M4 プロセッサ / Arm® Cortex®-M3 & Arm® Cortex®-M4 特徴 / Arm® 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 Arm®v7-M 例外処理
- 4.1 イントロダクション
概要 / マイクロコード化された割り込みのメカニズム / 割り込みオーバーヘッド - 4.2 例外モデル
例外タイプ / プロセッサのモードの使い方の例 / 外部割り込み / プリエンプション / 例外モデル / 例外プロパティ / 例外優先順位の例 / ベクタ テーブル / ベクタ テーブル オフセット レジスタ / リセットの動作 / 例外の動作 / 例外優先度の概要 / 例外の状態
4.2.1 例外のエントリと終了の動作
例外エントリの動作 / 例外エントリ時のスタッキング / 割り込みエントリ時のタイミング / ReturnAddress 値 / 例外からのリターン / EXC_RETURN / NMI 例外エントリの例/NMI 例外リターンの例 / ネストの例 / テールチェインの例 / 後着の例 / ステート復旧中に新しい割り込みが発生した場合
4.2.2 優先順位付けと制御
例外優先度と優先度の引き上げ / 優先度の引き上げ例-PRIMASK / 特殊用途のマスクレジスタ / 優先度を引き上げる命令 / v7-M優先度グルーピング / グループ優先度、サブ優先度の選択 / 割り込み制御とステータスビット / 割り込みイネーブルレジスタ / 割り込みペンディング レジスタ / 割り込みアクティブレジスタ / 割り込みプライオリティレジスタ
4.2.3 割り込み感度
割り込み感度 / パルス割り込み / レベル割り込み / 同じ割り込みを再度保留する - 4.3 ベクタテーブルと割り込みハンドラの記述
CMSIS-CORE: vector table / 割り込みハンドラの記述 / 割り込みの管理 - 4.4 内部例外とRTOSサポート
内部例外 / SysTickタイマ / SVCall / SVCallハンドラ / PendSV / 優先度エスカレーション / 内部割り込みレジスタ - 4.5 フォールト例外
v7-Mのフォールト例外 / フォールト エスカレーション / フォールトの処理 / ロックアップ状態 / ロックアップ状態の動作 / ロックアップ状態の解除 / 同期例外 / 非同期例外 - 4.6 付録
割り込み終了時のタイミング / テールチェインのタイミング / 後着のタイミング / コアサイズに対する割り込みの影響 / Arm® Cortex®-Mプロファイル機能比較 / Cで記述するベクタテーブル / コンフィギュレーションおよび制御レジスタ(CCR)
5 Arm®v7-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 ) / メモリバリアのさらなる使用 - 5.6 付録
アラインされたデータとアラインされていないデータ / アラインされていないアクセス / システムキャッシュ / キャッシュ ヒットとミス / リード アロケート / ライト アロケート / ライトバック キャッシング / ライトスルー キャッシング / Arm® Cortex®-M3/M4 ライトバッファ / 密結合メモリ(TCM) / ノーマル メモリ / ノーマル メモリ - 共有属性 / ノーマル メモリ - キャッシュ属性 / デバイス メモリ / デバイス メモリ - 共有属性 / ストロングリオーダ メモリ / メモリアクセスの順序は重要か? / メモリアクセス順序 / アクセス順序の規定