全38問から、出題範囲の骨格が掴める14問だけを抜き出しました。まずはここだけ流して、必要なら全問へ進んでください。
全38問に進むこの14問の内容
出典: オリジナル想定問題(当サイト作成、実際の過去問ではありません)。公表されている出題範囲に基づく(最終更新 2026-09-06)
あるマイコン制御の産業用ロボットで、ノイズの影響によりCPUが暴走し、プログラムカウンタが不正な番地を指すようになったが、システムは数百ミリ秒後に自動的にリセットされ正常動作に復帰した。この復帰を実現した仕組みとして最も適切なものはどれか。
- A割込みコントローラの優先度制御
- ✓ウォッチドッグタイマによるリセット
- CDMAコントローラによるメモリ再転送
- DA/D変換器のオーバーレンジ検出
解説
ウォッチドッグタイマは、プログラムが一定時間内に定期的なクリア(タップ)を行わないと自動的にシステムをリセットする機構であり、暴走からの自動復帰に用いられる。他の選択肢は暴走の検知・復帰機能を持たない。
根拠マイコンとハードウェア:ウォッチドッグタイマ
組込みシステムにおける「ポーリング方式」と「割込み方式」による外部イベントの検出方法の違いに関する記述のうち、最も適切なものはどれか。
- A割込み方式はCPUが周期的に状態を確認しに行く方式であり、ポーリング方式はハードウェアからの通知を受けて処理を開始する方式である。
- Bポーリング方式・割込み方式のいずれも、検出できるイベントの応答遅延は同一であり、CPU使用率にのみ差が生じる。
- ✓ポーリング方式は、CPUが周期的にイベント発生の有無を確認しに行くため確認間隔次第で検出遅延やCPU負荷の増大が生じるのに対し、割込み方式はイベント発生時にハードウェアがCPUへ通知するため、CPUは他の処理を行いながら低遅延で応答できる。
- D割込み方式は必ずポーリング方式よりも消費電力が大きくなる。
解説
ポーリングは一定間隔での状態確認が必要でCPU負荷と応答遅延のトレードオフが生じるのに対し、割込みはイベント発生時にハードウェアが通知するため、CPUを他の処理に使いながら低遅延で応答できる。
根拠マイコンとハードウェア:割込みとポーリング
あるデータ収集装置で、DMAコントローラがA/D変換結果をメモリへ高速転送している最中に、CPUが同じメモリバスへアクセスしようとすると処理が一時的に停止する現象が確認された。この現象の原因として最も適切なものはどれか。
- ✓DMAコントローラとCPUが同一のバスを共有しており、DMA転送中はサイクルスチールなどによりCPUのバスアクセスが待たされるため。
- Bウォッチドッグタイマがタイムアウトし、CPUをリセットしているため。
- CA/D変換器のサンプリング周波数がナイキスト周波数を超えているため。
- D割込みコントローラが多重割込みを禁止しているため。
解説
DMAコントローラとCPUが同一バスを共有する構成では、DMA転送中にサイクルスチール等によってバスの使用権が一時的にDMA側へ渡るため、CPUのバスアクセスが待たされることがある。
根拠マイコンとハードウェア:DMA
割込みの検出方式である「エッジトリガ」と「レベルトリガ」の違いに関する記述のうち、最も適切なものはどれか。
- Aレベルトリガは信号の変化の瞬間だけを検出するため、ノイズの影響を受けにくい。
- Bエッジトリガは、要因が解消されるまで割込み要求信号を出し続けるため、ハンドラ側での要因クリア忘れがあっても再度割込みが発生し続ける。
- Cエッジトリガとレベルトリガは検出可能な信号の電圧範囲が異なるだけで、割込みの継続性には差がない。
- ✓エッジトリガは信号の立上り(または立下り)の瞬間を検出して割込みを発生させるため複数回の要因発生を取りこぼす可能性があるが、レベルトリガは信号がアクティブレベルである間、要因が解消されるまで割込み要求を出し続ける。
解説
エッジトリガは信号変化の瞬間のみを捉えるため、パルス幅が短い連続要因を取りこぼす可能性がある。レベルトリガは要因が解消されるまで要求を出し続けるため取りこぼしにくいが、ハンドラ側で要因をクリアしないと割込みが継続して発生する。
根拠マイコンとハードウェア:割込みのトリガ方式
マイコンにおける割込み処理の一般的な流れとして、最も適切な順序はどれか。
- A①IRQ発生 → ③割込みベクタの参照とISRへの分岐 → ②実行中命令の完了 → ④レジスタ退避・本処理・復帰
- ✓①IRQ発生 → ②実行中命令の完了 → ③割込みベクタの参照とISRへの分岐 → ④レジスタ退避・本処理・復帰
- C④レジスタ退避・本処理・復帰 → ①IRQ発生 → ②実行中命令の完了 → ③割込みベクタの参照とISRへの分岐
- D①IRQ発生 → ④レジスタ退避・本処理・復帰 → ②実行中命令の完了 → ③割込みベクタの参照とISRへの分岐
解説
割込みはIRQ発生後、CPUが実行中の命令を完了してから割込みベクタを参照してISRへ分岐し、ISR内でレジスタ退避・本処理・レジスタ復帰を行って元の処理へ戻るのが一般的な流れである。
根拠マイコンとハードウェア:割込み処理の流れ
周期タスクT1(周期10ms、実行時間2ms)、T2(周期20ms、実行時間4ms)、T3(周期40ms、実行時間5ms)をレートモノトニックスケジューリングで実行する組込みシステムがある。これら3タスクの合計CPU使用率はどれか。
- A42.5%
- B62.5%
- C32.5%
- ✓52.5%
解説
各タスクの使用率は実行時間÷周期で求められ、T1=2/10=0.20、T2=4/20=0.20、T3=5/40=0.125となる。合計は0.20+0.20+0.125=0.525、すなわち52.5%である。
根拠組込み向けOSとリアルタイム性:タスクスケジューリング、CPU使用率
振動センサの信号を50Hzでサンプリングしていたところ、実際には存在しない低周波の信号成分が変換結果に現れた。原因を調べたところ、サンプリング対象の信号に80Hzの振動成分が含まれていたことが判明した。この現象の名称と、再発防止のために追加すべき対策の組合せとして最も適切なものはどれか。
- A現象:量子化誤差、対策:A/D変換器の分解能を上げる
- ✓現象:エイリアシング、対策:サンプリング前にナイキスト周波数(25Hz)以上の成分を除去するアンチエイリアシングフィルタを挿入する
- C現象:オフセット誤差、対策:基準電圧の温度補償を行う
- D現象:グリッチ、対策:D/A変換器出力にローパスフィルタを挿入する
解説
サンプリング周波数の半分(この場合25Hz、ナイキスト周波数)を超える周波数成分が入力に含まれると、折り返しにより低周波の偽信号として現れるエイリアシングが発生する。対策としてサンプリング前にアンチエイリアシングフィルタで高域成分を除去する。
根拠信号処理の基礎:標本化定理、エイリアシング
組込みソフトウェアのモジュール分割の設計において、モジュール内部の処理がどれだけ密接に関連し合っているかを表す尺度はどれか。
- ✓凝集度
- B結合度
- C循環的複雑度
- D保守性指数
解説
凝集度はモジュール内部の処理同士の関連の強さを表す指標であり、凝集度が高いほど単一の責務にまとまった良いモジュールとされる。結合度はモジュール間の依存の強さを表す別の指標であり、混同しないよう注意が必要である。
根拠シラバス:業務と役割-機能仕様を実現するハードウェアとソフトウェアへの機能分担の検討、システムアーキテクチャ設計(モジュール分割の設計原則)
ある組込み機器で、外部センサからの割込みハンドラ内にデータの平滑化処理や通信処理までまとめて実装したところ、他の優先度の高い割込みへの応答が大きく遅延する不具合が発生した。この問題への対応として最も適切なものはどれか。
- A割込みハンドラの優先度をすべて同一に設定し直す
- B割込みハンドラ内でウォッチドッグタイマを無効化する
- ✓割込みハンドラでは必要最小限の処理(データ取得とフラグ設定など)のみを行い、平滑化処理や通信処理はメインループ側の処理に委譲する
- D割込みを常時禁止し、ポーリングだけで全処理を行う方式に変更する
解説
割込みハンドラの処理時間が長いと他の割込みの応答性を悪化させるため、ハンドラ内は必要最小限の処理にとどめ、時間のかかる処理はフラグやキューを介してメインループに委譲するのが定石である。割込みを禁止したりポーリングのみに変更したりする対応は、リアルタイム性や省電力性を損なうため適切ではない。
根拠シラバス:機能仕様とリアルタイム性を最適に実現するハードウェアとソフトウェアのトレードオフに基づく機能分担(割込みハンドラとメインループの役割分担)
組込みシステムの安全性設計におけるフェールセーフとフェイルソフトの違いに関する記述のうち、適切なものはどれか。
- ✓フェールセーフは故障発生時にシステムを安全な状態に移行させて機能を停止させる考え方であり、フェイルソフトは故障発生時に機能を縮退させながら運転を継続させる考え方である
- Bフェールセーフは故障発生時に機能を縮退させながら運転を継続させる考え方であり、フェイルソフトは故障発生時にシステムを安全な状態に移行させて機能を停止させる考え方である
- Cフェールセーフとフェイルソフトはいずれも故障を検出せず動作を継続させることを目的とした考え方である
- Dフェールセーフとフェイルソフトはいずれも冗長化されたハードウェアを必ず必要とする考え方である
解説
フェールセーフは、故障が発生した際にシステムを人や設備に危害を及ぼさない安全側の状態(多くは停止)に移行させる考え方である。一方フェイルソフトは、故障時に一部機能を縮退させてでも運転を継続させ、可用性を優先する考え方であり、両者は対応方針が異なる。
根拠シラバス:組込みシステムが用いられる環境条件、安全性、情報セキュリティなどの品質要件を吟味し実現すべき機能仕様に反映(信頼性・安全性設計の考え方)
ある組込み機器を9,000時間連続稼働させたところ、その間に故障が3回発生し、その都度短時間で修理して稼働を再開した(修理時間は無視できるものとする)。この機器のMTBF(平均故障間隔)はどれか。
- A1,500時間
- B2,250時間
- ✓3,000時間
- D4,500時間
解説
MTBFは総稼働時間を故障回数で割って求める。9,000時間÷3回=3,000時間となる。
根拠シラバス:組込みシステムが用いられる環境条件、安全性などの品質要件の吟味(信頼性指標MTBFの算出)
組込み機器内部のセンサやEEPROMなどとの通信に用いられるI2CとSPIの違いに関する記述のうち、適切なものはどれか。
- ✓I2Cは2本の信号線(SDA、SCL)で複数デバイスと通信できアドレス指定でスレーブを選択するのに対し、SPIはクロック線とデータ線に加えデバイスごとのチップセレクト線が必要である
- BI2Cはデバイスごとに専用のチップセレクト線が必要であり、SPIはアドレス指定によって複数デバイスを識別する
- CI2CとSPIはいずれも1本の信号線のみで全二重通信を実現するプロトコルである
- DI2CとSPIはいずれもマスタを持たず、対等な関係のデバイス同士で通信するプロトコルである
解説
I2Cはシリアルデータ線(SDA)とシリアルクロック線(SCL)の2本を複数デバイスで共有し、通信相手はスレーブアドレスで指定する。一方SPIはクロックとデータ線に加えて、通信相手を選択するためのチップセレクト(スレーブセレクト)信号線をデバイスごとに必要とする点が大きな違いである。
根拠シラバス:機能仕様を実現するハードウェアとソフトウェアへの機能分担の検討(周辺デバイスとのシリアル通信インタフェース)
省電力を重視するBLE(Bluetooth Low Energy)機器が、周囲に自分の存在を知らせてから接続を確立するまでの一般的な動作の順序として、最も適切なものはどれか。
- A接続の確立 → アドバタイズパケットの送信 → データの送受信 → スキャン応答
- Bデータの送受信 → スキャン応答 → アドバタイズパケットの送信 → 接続の確立
- Cスキャン応答 → 接続の確立 → アドバタイズパケットの送信 → データの送受信
- ✓アドバタイズパケットの送信 → (必要に応じて)スキャン応答 → 接続要求への応答による接続の確立 → データの送受信
解説
BLEの周辺機器(ペリフェラル)は、まず間欠的にアドバタイズパケットを送信して自分の存在を周囲に知らせる。中心機器(セントラル)からスキャン要求があればスキャン応答を返し、接続要求を受けて接続を確立した後にデータの送受信を行うのが一般的な流れである。
根拠シラバス:機能仕様を実現するハードウェアとソフトウェアへの機能分担の検討(無線通信インタフェースの動作手順)
組込みシステムの実機デバッグにおいて、ターゲット基板上のマイコンに直接接続し、レジスタやメモリの内容確認、ブレークポイントの設定、フラッシュメモリへの書込みなどを行うために広く用いられる標準インタフェースはどれか。
- AUSB Type-C
- ✓JTAG(またはSWD)
- CRS-232C
- DHDMI
解説
JTAGやその簡易版であるSWD(Serial Wire Debug)は、マイコンのオンチップデバッグ機能にアクセスするための標準的なインタフェースであり、ブレークポイントの設定やレジスタ・メモリの参照、フラッシュ書込みなどに広く利用される。USB Type-CやHDMIはデバッグ専用のインタフェースではなく、RS-232Cは一般的な調歩同期式のシリアル通信規格である。
根拠シラバス:開発・実装・テストを計画・実施する業務(実機デバッグに用いるオンチップデバッグインタフェース)