GAIO CLUB

2026年01月22日

組込みシステムとは – 今知りたい!車載組込みシステムソフト開発 #1

車載組込みシステムソフト開発
今知りたい!車載組込みシステムソフト開発 #01
本コラムは「車載組込みシステム開発」について、基礎からわかりやすく解説するシリーズです。
本には載っていない、エンジニアの20年以上の開発人生の中で経験した、車載に関わる組込みソフト開発独自の難しさや知識をご紹介します。

第1回では、「組込みシステムとは何か?」をテーマに、組込みシステムがどのような場面で使われているのか、その特徴、そして組込みを語るうえで欠かせないマイコンについて、基本的な知識から解説します。

組込みシステム(Embedded System)とは

組込みシステムとは、機械や機器に組み込まれ、その機器専用の制御を行うコンピューターシステムのことです。

最も分かりやすい例は家電製品です。例えば電子レンジの内部には緑色のプリント基板があり、その基板上のマイコンが電子レンジの制御を担っています。その他にも、家電製品では、炊飯器や冷蔵庫、洗濯機、エアコン、テレビ、ビデオ、デジタルカメラ、オーディオ機器などがあります。

特にテレビは最近、電子タブレットと同じくらいの機能が搭載されています。もちろん、ゲームマシンや電子楽器にも入っており、パソコンの周辺機器であるプリンターやスキャナーなども組込みシステムが入っているものの一つです。
組込みシステムとは
運輸分野、特に自動車について言えば、自動車は元々メカの塊でしたが、ある時期から電子制御が少しずつ導入され、車の燃費性能など多様な制御技術が発達してきました。自動車は、組込みシステムの中でも特にソフトウェアの規模が大きい分野の一つとなっています。
その他、ロケットや医療機器など、私たちが使用する製品のほとんどに組込みシステムが搭載されています。
組込みシステムとは

組込みシステムの特徴

組込みシステムには、以下の4つの特徴が挙げられます。

1. 専用性

埋め込まれる機器に特化したソフトウェアで構成されています。

2. リソース制約

コストダウンを目的として、CPU性能やメモリ容量が制約され、その製品に必要な最低限の性能のCPUが選定されているため、後から追加で機能拡張がしにくいほど、リソースを限界まで使用しています。

3. 高い信頼性

製品によっては、不具合が人命に関わる可能性や、リコールの対象になるため、非常に高い信頼性が求められます。

4. リアルタイム性

自動車などの制御においては、パソコンのようにボタンを押してから何秒も待つことは許されません。操作に対する反応時間というリアルタイム性が厳しく要求されます。

組込みシステムにおけるソフトウェアの役割

組込みシステム内部のソフトウェアはどのようになっているのでしょうか。炊飯器を例に見ていきます。
炊飯器の中には専用のコンピュータシステムが組込まれており、その中にマイコンがあります。マイコンには、ROMRAMが備わっています。

ROM(Read-Only Memory)は、プログラムやデータを格納するメモリ
RAM(Random Access Memory)は、CPUが計算する途中経過のデータを格納する揮発性メモリ

例えば、炊飯器のプログラムに白米、炊き込みご飯、タイ米を炊くための制御を記載しているとします。
ハードウェアだけで機能を実装してしまうと、後から玄米を炊く制御など新しい機能を追加したり、日本向け仕様から海外向け仕様に変えるといった仕様変更が難しくなります。
この機能をソフトウェアで実装すると、特に仕向け変更など、小さな仕様の変更が容易に行えるというメリットがあります。
組込みシステムにおけるソフトウェアの役割

マイコン(マイクロコンピュータ)の基本構造

次にマイコン(マイクロコンピュータ)について解説します。
マイコンとは、マイクロコントローラーやマイクロコンピュータなどを略した和製英語です。パソコン等と同様に、CPUやメモリ周辺機能が搭載されています。

パソコン等に使用されるIntelやAMDのCPUは消費電力も大きく、高性能ですが、マイコンは写真のようにプリント基板上に小さく載っている15ミリメートル以下の小さなパッケージで、消費電力も少ないLSI※1です。

※1 LSI(Large Scale Integration):大規模集積回路
一般的にIC(Integrated Circuit):半導体集積回路 の中で、素子数が1000以上の規模の大きなものを指す。
マイコン(マイクロコンピュータ)の基本構造

マイコンの構造を構成する3要素

コンピューターの基本は、以下の3つの要素で構成されています。

1. CPU (Central Processing Unit)

プログラムを読み込み、演算や処理を実行する機能を持つ部分です。

2. メモリー

CPUが動作するためのプログラムを格納する場所です。
ROMは、読み出し専用のメモリで、コンピューターの電源を切ってもデータが消えません。
RAMは、電源が切れるとデータが揮発する揮発性メモリで、CPUが演算途中のワーキングデータをSRAM(Static Random Access Memory)の中に一時的に蓄えます。例えば、炊飯器のある機能を学習した結果などを保存することができます。

3. I/O (Input/Output)

CPUの指示に基づいて周辺のハードウェアを制御する部分です。例えば、炊飯器の制御や自動販売機のヒーター機能のオン/オフなどの制御をI/Oが行います。

割り込み
I/O制御の例として、タイマー機能があります。
例えば、1mmごとに割り込みを発生させて、1mm経過したことを通知する場合、割り込みコントローラーを通じてCPUに通知が行われます。CPUは割り込み処理を通じて1mmが経過したことを認識し、1mmごとに実行すべき処理を動作させます。
割り込みは基本的に、 I/OからCPUに対し、処理の完了、次の処理要求、エラーの発生といった通知を行うための仕組みです。
マイコン内部の概略ブロック図

まとめ

今回は、組込みシステムとは何か、組込みシステムにおけるソフトウェアの役割、そしてマイコンの基本構造について解説しました。第2回ではマイコンについてより詳しく解説いたします。

筆者紹介

安田 威彦(監修)

ガイオ・テクノロジー株式会社

技師長

人気のコラム

最新のコラム