マイコン(マイクロコントローラー)は、1970年代初頭に登場しました。
当時、マイクロプロセッサーが開発されたばかりで、小型かつ高度な計算機能を持つことができることがわかっていました。
それにより、マイコンは小型の組み込みシステムで使用することができ、制御や自動化などのアプリケーションに適していました。
最初にリリースされたマイコンの1つは、Intel社のIntel 8048でした。それ以降、多くのメーカーがマイコンをリリースし、組み込みシステムの分野で使用されるようになりました。
マイコンとマイクロプロセッサーの違い
マイクロコントローラー(マイコン)とマイクロプロセッサーは、両方とも小型で高度な計算機能を持つIC(集積回路)ですが、それらは異なる目的で使用されます。
マイクロプロセッサーは、主にコンピューターの中央処理装置(CPU)として使用され、ソフトウェアを実行するために設計されています。
一方、マイコンは、システム全体を制御するために設計された、小型で完全なコンピューターシステムです。
つまり、マイコンには、CPU、メモリ、入出力ポート、タイマー、アナログ/デジタルコンバーターなど、システム全体で必要な機能がすべて含まれています。
さらに、マイコンは、電子機器の制御、自動化、センサーデータの処理、小型ロボット、自動車、家電製品、医療機器、電子玩具などの組み込みシステムで使用されます。一方、マイクロプロセッサーは、パーソナルコンピューターやサーバー、スマートフォン、タブレット、ゲーム機、組み込みシステムなど、より一般的なコンピューティングアプリケーションで使用されます。
簡単に言えば、マイコンは小型で完全なコンピューターシステムであり、制御や自動化などの組み込みシステムで使用されます。一方、マイクロプロセッサーは、一般的なコンピューティングアプリケーションで使用されるCPUの一種です。
ワンチップマイコン
ワンチップマイコンは、完全なコンピューターシステムが1つのICチップに集積された、小型で高度な計算機能を持つマイクロコントローラーのことを指します。
つまり、CPU、メモリ、入出力ポート、タイマー、アナログ/デジタルコンバーターなど、システム全体で必要な機能がすべて1つのチップに含まれています。
項目 | マイクロプロセッサ | マイクロコントローラー |
外形サイズ | 35×35㎜~50×50㎜ マイクロプロセッサーの外形サイズは、様々な種類があります。一般的には、現代のマイクロプロセッサーは非常に小型で、正方形または長方形の形状をしています。一般的なマイクロプロセッサーのサイズは、数ミリメートルから数センチメートルまでの範囲であり、最も一般的なサイズは約1センチメートル四方のものです。 ただし、特定の用途に応じて、異なるサイズのマイクロプロセッサーが開発されています。例えば、スマートフォンやタブレットなどのモバイルデバイスに使用されるマイクロプロセッサーは、非常に小型で、通常は数ミリメートル四方のものです。一方、高性能なサーバーやスーパーコンピューターに使用されるマイクロプロセッサーは、より大きく、通常は数センチメートル四方のものです。 マイクロプロセッサーの外形サイズは、特定の用途に応じて異なります。しかし、現代のマイクロプロセッサーは、小型で高密度に集積されているため、非常に高い処理能力を持っています。 | 3×3㎜~20×20㎜ マイクロコントローラーの外形サイズは、様々な種類があります。一般的には、マイクロコントローラーはマイクロプロセッサーと同様に非常に小型で、正方形または長方形の形状をしています。一般的なマイクロコントローラーのサイズは、数ミリメートルから数センチメートルまでの範囲であり、最も一般的なサイズは約1センチメートル四方のものです。 ただし、特定の用途に応じて、異なるサイズのマイクロコントローラーが開発されています。例えば、携帯電話や家電製品、自動車などの組み込みシステムに使用されるマイクロコントローラーは、非常に小型で、通常は数ミリメートル四方のものです。一方、工業用制御やロボットなどの高性能な組み込みシステムに使用されるマイクロコントローラーは、より大きく、通常は数センチメートル四方のものです。 マイクロコントローラーの外形サイズは、特定の用途に応じて異なります。しかし、現代のマイクロコントローラーは、小型で高密度に集積されているため、非常に高い処理能力と低消費電力を持っています。 |
ピン数 | 1150~2011ピン マイクロプロセッサーのピン数は、様々な種類があります。一般的には、マイクロプロセッサーのピン数は、その機能や処理能力に応じて異なります。 初期のマイクロプロセッサーは、比較的少数のピン数で構成されていました。例えば、Intel 8080マイクロプロセッサーは40ピンで構成されていました。しかし、現代の高性能なマイクロプロセッサーは、数百から数千のピンで構成されていることがあります。 一般的に、マイクロプロセッサーのピン数は、下記のような要素によって決定されます。 機能: マイクロプロセッサーが提供する機能に応じて、必要なピン数が異なります。たとえば、USBやEthernetなどのインターフェースを持つマイクロプロセッサーは、多数のピンが必要になります。 データバスの幅: マイクロプロセッサーのデータバスの幅に応じて、必要なピン数が異なります。データバスの幅が広いほど、より多くのピンが必要になります。 パッケージの形状: マイクロプロセッサーのパッケージの形状によって、ピン数が異なります。たとえば、BGA (Ball Grid Array)パッケージは、非常に高密度にピンが配置されています。 総じて、マイクロプロセッサーのピン数は、その機能や処理能力、データバスの幅、パッケージの形状によって異なります。 | 6ピン~144ピン マイクロコントローラーのピン数は、様々な種類があります。一般的には、マイクロコントローラーのピン数は、その機能や処理能力、入出力機能に応じて異なります。 一般的に、マイクロコントローラーは、マイクロプロセッサーに比べてピン数が少なく、通常は10〜100ピン程度の範囲で構成されています。これは、マイクロコントローラーが組み込みシステムで使用されることが多く、多数の入出力機能を持つ必要がないためです。 ただし、特定の用途に応じて、異なるピン数のマイクロコントローラーが開発されています。例えば、USBやイーサネットなどのインターフェースを持つマイクロコントローラーは、多数のピンが必要になります。 また、マイクロコントローラーは、小型で高密度に集積されているため、同じピン数でも高機能な機能を持つことができます。例えば、1つのピンで複数の入出力機能を実現することができるマルチファンクションピンを搭載したマイクロコントローラーもあります。 総じて、マイクロコントローラーのピン数は、特定の用途に応じて異なりますが、一般的には10〜100ピン程度の範囲で構成されています。 |
消費電力 | 50W~150W マイクロプロセッサーの消費電力は、その機能や製造プロセス、動作周波数などによって異なります。一般的には、高速で高性能なマイクロプロセッサーは、より多くの電力を消費します。 ただし、近年の製造技術の進歩により、同じ性能を持つマイクロプロセッサーでも消費電力が少なくなっています。また、省電力設計が重視されるようになり、スリープモードやダイナミッククロック調整などの技術が導入され、消費電力を削減することが可能になっています。 一般的に、ノートパソコンやスマートフォンなどの携帯型デバイスに搭載されるマイクロプロセッサーは、数ワット以下の消費電力で動作します。一方、サーバーやスーパーコンピュータなど、高性能を求められるデバイスに搭載されるマイクロプロセッサーは、数十ワット以上の消費電力が必要になることがあります。 また、組み込みシステム用のマイクロプロセッサーは、一般的に低消費電力が求められるため、数mW以下の消費電力で動作するものもあります。これらのマイクロプロセッサーは、バッテリー駆動のデバイスや電力制約のある環境で使用されることが多いです。 | 10mW~200mW マイクロコントローラーの消費電力は、マイクロプロセッサーと同様に、その機能や製造プロセス、動作周波数、周辺機器の使用状況などによって異なります。 一般的に、マイクロコントローラーは省電力設計が重視されており、スリープモードやダイナミッククロック調整などの技術が導入され、消費電力を削減することが可能になっています。 また、組み込みシステム用のマイクロコントローラーは、低消費電力が求められるため、数mW以下の消費電力で動作するものもあります。これらのマイクロコントローラーは、バッテリー駆動のデバイスや電力制約のある環境で使用されることが多いです。 一般的に、マイクロコントローラーの消費電力は、マイクロプロセッサーよりも低い傾向にあります。消費電力が低いため、バッテリー駆動のデバイスや、センサーネットワークなど、電力制約のある環境で使用されることが多いです。 |
CPUコア数 | 2個~8個 マイクロプロセッサーのCPUコア数は、その製品によって異なります。一般的に、マイクロプロセッサーは、シングルコア、デュアルコア、クアッドコア、オクタコアなど、1つ以上のCPUコアを持つ製品があります。 シングルコアのマイクロプロセッサーは、一つのコアで処理を行うため、基本的な処理能力が限られています。一方、デュアルコアやクアッドコアのマイクロプロセッサーは、複数のコアを搭載することで、同時に複数の処理を行うことができます。これにより、より高速で複雑な処理を行うことができるようになります。 オクタコアのマイクロプロセッサーは、8つのCPUコアを搭載しており、高度なマルチタスク処理を行うことができます。オクタコアのマイクロプロセッサーは、高性能のデスクトップコンピュータや、高度なグラフィック処理を行うためのワークステーションなどで使用されることがあります。 ただし、CPUコア数が多いほど消費電力が増加するため、電力制約のある環境では適切なCPUコア数を選択する必要があります。また、マイクロプロセッサーには、ハイパースレッディングなどの技術が導入されており、1つのコアで複数のスレッドを処理することができる場合もあります。 | 1個~2個 マイクロコントローラーのCPUコア数は、その製品によって異なります。一般的に、マイクロコントローラーは、シングルコアまたはマルチコアの製品があります。 シングルコアのマイクロコントローラーは、一つのコアで処理を行うため、基本的な処理能力が限られていますが、小型・低消費電力などの特性があります。 一方、マルチコアのマイクロコントローラーは、複数のコアを搭載することで、同時に複数の処理を行うことができます。これにより、より高速で複雑な処理を行うことができるようになります。 ただし、マイクロコントローラーは、一般的に消費電力が低く、小型の装置に適した特性があるため、CPUコア数が少なく、シングルコアの製品が主流となっています。また、マイクロコントローラーには、省電力などの特性が求められるため、高性能なマイクロプロセッサーに比べて、消費電力の低い製品が多い傾向にあります。 |
CPUビット数 | 32, 64ビット マイクロプロセッサーのビット数は、その製品によって異なります。一般的に、マイクロプロセッサーは8ビット、16ビット、32ビット、または64ビットの製品があります。 8ビットのマイクロプロセッサーは、基本的な処理能力が限られていますが、小型・低消費電力などの特性があります。16ビットのマイクロプロセッサーは、8ビットの製品に比べて処理能力が向上していますが、消費電力はやや高くなります。32ビットのマイクロプロセッサーは、より高速で複雑な処理を行うことができ、高性能なシステムに適しています。64ビットのマイクロプロセッサーは、非常に高速で複雑な処理を行うことができ、大規模なシステムに適しています。 ただし、近年では、AIや機械学習などの分野で使用される高性能なマイクロプロセッサーが注目されており、数百ビット以上の製品も開発されています。 | 8,16、32ビット |
最高速度 | 1GHz~4GHz マイクロプロセッサーの最高速度は、製品によって異なります。一般的に、マイクロプロセッサーの最高動作周波数はGHz単位になっています。 現在の市場で入手可能な一般的なマイクロプロセッサーの最高速度は、4 GHzから5 GHzの範囲にあります。ただし、特定のタスクや用途に特化した高性能なマイクロプロセッサーでは、それ以上の高速度で動作するものが存在します。 ただし、マイクロプロセッサーの最高速度は、その製品が実際に達成できる速度とは異なる場合があります。最高速度は通常、理論上の値であり、実際には熱の問題や電力制限などの制約により、製品が動作する速度が制限されることがあります。 | 4MHz~900MHz マイクロコントローラーの最高速度は、製品によって異なります。一般的に、マイクロコントローラーの動作周波数はMHz単位になっています。 現在の市場で入手可能な一般的なマイクロコントローラーの最高速度は、数十MHzから数百MHzの範囲にあります。ただし、特定のタスクや用途に特化した高性能なマイクロコントローラーでは、それ以上の高速度で動作するものが存在します。 ただし、マイクロコントローラーの最高速度は、その製品が実際に達成できる速度とは異なる場合があります。最高速度は通常、理論上の値であり、実際には周辺回路や入出力処理などの制約により、製品が動作する速度が制限されることがあります。 |
内蔵モジュール | データ処理用が主。 メモリー、周辺IC外付け。 画像、音声処理。大規模データー処理 マイクロプロセッサーには、多数の内蔵モジュールがあります。以下に一般的な内蔵モジュールの例を示します。 CPUコア:プログラムを実行するための中央処理ユニットです。 メモリ:プログラムやデータを格納するためのメモリユニットです。主に、ROM、RAM、フラッシュメモリ、EEPROMなどが使用されます。 タイマー・カウンター:時間を測定するためのユニットです。一定時間ごとに割り込みを発生させたり、PWM信号を生成するなどに使用されます。 入出力ポート:デジタル入出力ポートやアナログ入出力ポートなどがあります。 シリアル通信ポート:UART、SPI、I2C、CANなどの通信プロトコルをサポートするためのシリアル通信ポートがあります。 A/Dコンバーター:アナログ信号をデジタル信号に変換するためのA/Dコンバーターが内蔵されているものがあります。 PWMモジュール:パルス幅変調(PWM)信号を生成するためのモジュールが内蔵されているものがあります。 ウォッチドッグ・タイマー:マイクロプロセッサーのリセットを行うためのウォッチドッグ・タイマーが内蔵されているものがあります。 これらの内蔵モジュールを利用することにより、マイクロプロセッサーは多様な機能を実現することができます。 | 制御用が主。 メモリー、周辺モジュールすべて内臓。 アナログ入出力機能も内蔵。 マイクロコントローラーには、多数の内蔵モジュールがあります。以下に一般的な内蔵モジュールの例を示します。 CPUコア:プログラムを実行するための中央処理ユニットです。 メモリ:プログラムやデータを格納するためのメモリユニットです。主に、ROM、RAM、フラッシュメモリ、EEPROMなどが使用されます。 タイマー・カウンター:時間を測定するためのユニットです。一定時間ごとに割り込みを発生させたり、PWM信号を生成するなどに使用されます。 入出力ポート:デジタル入出力ポートやアナログ入出力ポートなどがあります。 シリアル通信ポート:UART、SPI、I2C、CANなどの通信プロトコルをサポートするためのシリアル通信ポートがあります。 A/Dコンバーター:アナログ信号をデジタル信号に変換するためのA/Dコンバーターが内蔵されているものがあります。 PWMモジュール:パルス幅変調(PWM)信号を生成するためのモジュールが内蔵されているものがあります。 ウォッチドッグ・タイマー:マイクロコントローラーのリセットを行うためのウォッチドッグ・タイマーが内蔵されているものがあります。 これらの内蔵モジュールを利用することにより、マイクロコントローラーは多様な機能を実現することができます。また、マイクロコントローラーによっては、センサーインタフェース、USBホスト/デバイス機能、イーサネットインタフェース、LCDコントローラー、キーパッドコントローラーなどの機能も内蔵されている場合があります。 |
用途 | パソコン。ワークステーション。スマートフォン マイクロプロセッサーは、以下のような幅広い用途で使われています。 パーソナルコンピューター:マイクロプロセッサーは、パーソナルコンピューターのCPUとして広く使われています。主に、x86アーキテクチャのIntelやAMDの製品が一般的です。 スマートフォン:スマートフォンには、アプリケーションや通信処理などを担当するマイクロプロセッサーが内蔵されています。ARMアーキテクチャのプロセッサーが一般的です。 組み込みシステム:マイクロプロセッサーは、組み込みシステムに広く使われています。例えば、家電製品、自動車、医療機器、産業機器、セキュリティシステムなどがあります。 マイクロコントローラー:マイクロプロセッサーは、マイクロコントローラーのCPUとしても使われています。マイクロコントローラーは、制御処理を担当する小型の組み込みシステムであり、主に8ビットや16ビットのプロセッサーが使用されます。 ゲーム機:ゲーム機には、高性能なマイクロプロセッサーが内蔵されています。例えば、PlayStationやXboxなどのゲーム機には、AMDの製品が使われています。 サーバー:サーバーには、高性能なマイクロプロセッサーが使われています。主に、x86アーキテクチャのIntelやAMDの製品が一般的です。 IoTデバイス:マイクロプロセッサーは、IoTデバイスにも使われています。例えば、スマートホームデバイス、センサー、監視カメラなどがあります。ARMアーキテクチャのプロセッサーが一般的です。 | 産業制御システム。 家電、おもちゃ。 車載機器制御 マイクロコントローラーは、以下のような幅広い用途で使われています。 家電製品:マイクロコントローラーは、家電製品の制御に使われます。例えば、エアコン、洗濯機、冷蔵庫、炊飯器、電子レンジ、掃除機などがあります。 自動車:マイクロコントローラーは、自動車の制御に使われます。例えば、エンジン制御、ABS、エアバッグ、エンターテインメントシステム、ドアロックなどがあります。 医療機器:マイクロコントローラーは、医療機器の制御に使われます。例えば、血圧計、心電計、人工呼吸器、インスリンポンプなどがあります。 産業機器:マイクロコントローラーは、産業機器の制御に使われます。例えば、ロボットアーム、プリンター、工場監視システム、温度制御装置などがあります。 ゲーム機:マイクロコントローラーは、ゲーム機の制御に使われます。例えば、Nintendo SwitchやPlayStation Vitaなどの携帯ゲーム機には、マイクロコントローラーが内蔵されています。 ロボット:マイクロコントローラーは、ロボットの制御に使われます。例えば、家庭用ロボット、工業用ロボット、掃除ロボットなどがあります。 IoTデバイス:マイクロコントローラーは、IoTデバイスの制御に使われます。例えば、スマートホームデバイス、センサー、監視カメラ、スマートグリッドなどがあります。 |
価格 | 数千円~数万円 マイクロプロセッサーの価格は、製品の性能、機能、用途によって大きく異なります。一般的に、高性能なマイクロプロセッサーは高価で、低性能なものは低価格です。 例えば、インテル社の最新のデスクトップ向けプロセッサーである「Core i9-12900K」は、2021年現在の販売価格で約1,000ドル以上です。一方、低コストなマイクロプロセッサーである「Raspberry Pi Zero」は、約5ドル程度で販売されています。 ただし、製品の価格は市場や需要によって変動するため、正確な価格は常に変わる可能性があります。また、大量生産によって価格を抑えることもできます。 | 数十円~千円 マイクロコントローラーの価格は、性能や機能、メーカーによって異なります。一般的に、高性能で多機能なものほど高価格になりますが、市場に出回る数が多い場合は、価格が抑えられることがあります。 例えば、STマイクロエレクトロニクス社が製造する8ビットマイクロコントローラー「STM8S003F3」は、1個あたりの価格が約0.5ドルから販売されています。また、同社の32ビットマイクロコントローラー「STM32F103C8T6」は、1個あたりの価格が約2ドルから販売されています。 ただし、価格は市場や需要によって変動するため、正確な価格は常に変わる可能性があります。また、大量生産によって価格を抑えることができるため、大量注文する場合は値引きを受けることができる場合があります。 |
ワンチップマイコンは、小型で安価なため、様々な組み込みシステムに使用されています。
例えば、自動車のエンジン制御、家電製品の操作、医療機器、電子玩具、ロボットなどの制御などに使用されます。
ワンチップマイコンは、市場に登場してから40年以上の歴史があり、現在では多くのメーカーが様々なタイプのマイクロコントローラーを提供しています。そのため、ワンチップマイコンは、組み込みシステムの設計者にとっては必須のツールとなっています。
現代のマイコンシステム構成図
+------------------------+
| |
| マイクロコントローラ |
| |
+-----------+------------+
|
+------------+------------+
| |
| 周辺機器及び |
| センサ類 |
| |
+------------+------------+
|
+------------+------------+
| |
| 電源 |
| |
+------------+------------+
|
+------------+------------+
| |
| 入出力 |
| インターフェース |
| |
+------------+------------+
この構成図では、マイクロコントローラユニットが中央に位置し、周辺機器やセンサー、電源、通信インターフェースなどが接続されています。
マイクロコントローラユニットは、プログラムメモリやデータメモリ、CPU、デジタル入出力、アナログ入出力、タイマー/カウンタ、PWM、UART、SPI、I2Cなどの機能を内蔵しています。これらの機能を活用することで、様々なアプリケーションを実現することができます。
周辺機器やセンサーは、入力信号や出力信号をマイクロコントローラユニットに提供したり、マイクロコントローラから制御信号を受け取ったりするために使用されます。例えば、LED、スイッチ、センサー、モーター、ディスプレイ、通信モジュールなどが挙げられます。
電源は、マイコンシステムを動かすために必要な電力を供給するために使用されます。電源の種類や規格は、アプリケーションによって異なります。
通信インターフェースは、マイクロコントローラユニットと外部の機器やネットワークなどを接続するために使用されます。例えば、USB、Ethernet、Wi-Fi、Bluetooth、CAN、RS-232などが挙げられます。
このような構成で、マイコンシステムは様々なアプリケーションに対応することができます。
コメント