MPC5xxファミリ
MPC5xxファミリは、Motorola(後にFreescale Semiconductor、現在はNXP Semiconductors)によって開発された、
32ビットの
PowerPCアーキテクチャを基盤とする
マイクロプロセッサ群です。このファミリには、MPC555やMPC565といった代表的な製品が含まれます。
概要と特徴
これらのプロセッサは、主に40MHzから66MHzの周波数で動作し、自動車分野におけるエンジン制御装置やトランスミッション制御装置など、様々な制御用アプリケーションで広く採用されました。MPC5xxファミリは、
組み込みシステム向けに特化した設計が特徴です。通常、CPUコアに加え、多様な周辺インタフェースが集積されており、MMU(
メモリ管理ユニット)を持たない一方で、比較的大きなオンチップSRAMや、最大1MBにも達する低遅延のオンチップ
フラッシュメモリを内蔵しています。この独特な構成は、リアルタイム応答性が求められる制御アプリケーションに最適化されており、そのためしばしば
マイクロコントローラとして位置づけられます。
特にメモリ関連では、従来の
PowerPC仕様で定められていたハードウェアによる固定ページブロックアドレス変換ではなく、ソフトウェアによって制御される可変ページサイズのアドレス変換機構を備えています。この独自のアドレス変換モデルは、その後のPower命令セット仕様における組み込み型MMUモデルの基礎となりました。
アーキテクチャと性能
MPC5xxファミリは、
ハーバード・アーキテクチャを採用したシングルコア設計であり、先行するMPC8xx PowerQUICCファミリの後継にあたります。MPC8xxファミリとの違いとして、MPC5xxファミリは浮動小数点コプロセッサを搭載しており、数値計算能力が強化されています。
初期のチップ、例えばMPC509などでは命令キャッシュが搭載されていましたが、より新しい世代の製品では、大量のオンボードNOR
フラッシュメモリから命令を効率的にバーストアクセスできる設計が多く見られます。このオンチップ
フラッシュメモリは、ダイ面積を広く占有し、チップの製造コストを上昇させる要因となるため、一部の低価格モデルでは搭載が見送られることもありました。
制御アプリケーションの多くは、比較的小さなデータセットと、非常に長い制御ループにおいて低遅延で動作する必要があります。このような用途では、データと命令への直接的かつ迅速なアクセスが非常に重要になります。プロセッサが1クロックでアクセス可能なオンチップSRAMに大部分のデータを格納できる場合、優れた性能を発揮します。しかし、チップ外部のデータに頻繁にアクセスする必要がある場合、外部RAMからのバーストアクセスができないことや、使用されるバスアクセスプロトコルが遅いことから、全体の性能は低下する傾向にあります。
インタフェースと応用
搭載される周辺デバイスインタフェースはモデルによって異なりますが、一般的にAD変換器(ADC)、タイム・プロセッサ・ユニット(TPU)、汎用入出力(GPIO)、そして
[UART]]や[[シリアルポート]などを備えています。メモリインタフェースは比較的単純で、デフォルトのメモリアドレスを指定し、いくつかのベースレジスタを設定することで容易にプログラム可能です。この使いやすさから、自動車や産業機器向けだけでなく、ホビー用途としても一定の人気を得ました。
開発の終焉
PowerPC 5xxシリーズ(MPC5xxファミリの別名)の開発は、より柔軟で高性能な
PowerPC 55xxシリーズの人気が高まったことにより、終了しています。
MPC5xxファミリは、その特定のアーキテクチャと機能セットにより、リアルタイム制御が求められる
組み込みシステム、特に自動車産業において重要な役割を果たしました。