ソフトウェアやハードウェアの異常事態のフォルト(Fault)や割り込みが発生した時に、CPUがメイン・プログラム以外のプログラムを実行する処理を「例外処理」と呼ぶ。「例外処理」の定義は、各マイコンで異なるため、マニュアルを確認する必要がある。例えばリセット処理を例外処理に含むマイコンもあれば、含まないマイコンもある。
フォルトや割り込みやリセットの処理方法は、マイコンごとに異なり、この処理方式も「アーキテクチャ」の1つの要因といえる。例えば、割り込みが発生時に、コンテキスト(現在のPC[プログラム・カウンタ]やレジスタの状態)をスタックに保存する(PUSHと呼ばれる)が、保存するレジスタの種類や順番はマイコンによって異なる。また、割り込み処理が終わり、コンテキストをスタックから戻す操作(POPと呼ぶ)の手順もマイコンによって変わる。
例外処理は、ハードウェアによって行われるとは限らない。ソフトウェアが介在するマイコンもある。例えば、ArmのARM7プロセッサの例外処理は、ソフトウェアの介在が必要だが、Cortex-Mプロセッサは、統合ネスト型ベクタ割り込みコントローラ(NVIC:Nested Vectored Interrupt Controller)という割り込み制御のハードウェアが行う。
最近のマイコンは製造プロセスの微細化により、高機能な論理回路を実装しても、さほどコストに影響を与えないため、割り込み制御モジュールが実装される場合が多い。
割り込み処理については、「Q&Aで学ぶマイコン講座(27):割り込みハンドラとは?」で詳しく解説している。
日系半導体メーカーにて、25年以上にわたりマイコンの設計業務に携わる。その後、STマイクロエレクトロニクスに入社し、現在までArm Cortex-Mプロセッサを搭載したSTM32ファミリの技術サポート業務に従事。Armマイコン以外にも精通しており、一般的な4ビットマイコンから32ビットマイコンまで幅広い知識を有する。業務の傍らマイコンに関する技術論文や記事の執筆を行っており、複雑な技術を誰にでも分かりやすい文章で解説することがモットー。
マイコンの“アーキテクチャ”って何?
マイコンに搭載されたA-Dコンバーターの測定精度を上げる方法【原因と対策】
マイコンのセキュリティ機能を詳細解説 〜ハードウェア編
ESDによる不具合発生メカニズムと対策のヒント
データシートを正しく理解するなら「凡例」から気を抜くな
不良解析レポートを理解するための基礎知識 ―― 一次物理解析&電気的特性評価Copyright © ITmedia, Inc. All Rights Reserved.
記事ランキング