マイクロアーキテクチャ
パイプライン処理は、現代的なマイクロアーキテクチャで最も使われているデータ処理方法である。この手法はほとんどの近代的なマイクロプロセッサ、マイクロコントローラ、DSPに用いられている。パイプライン設計は複数の重複した実行処理ができ、あたかも工場の組み立てラインのようにふるまう。マイクロアーキテクチャ設計におけるパイプライン処理にはいくつかの基本的なステージがある。ステージにはフェッチ、デコード、実行、そして書き出しなどがあり、それ以外の、たとえばメモリアクセスなどのステージを含むアーキテクチャもある。パイプラインの設計は、マイクロアークテクチャ設計で行う中心的な仕事の一つである。
実行ユニットもマイクロアークテクチャには欠かせないものである。実行処理ユニットには演算論理装置 (ALU)、浮動小数点ユニット (FPU)、ロード/ストアユニット、分岐予想ユニット、複数命令を処理するSIMDからなる。これらのユニットがプロセッサの制御や演算を行う。
実行ユニット数の選択、それらの処理時間(レイテンシ)と処理能力(スループット)は、マイクロアーキテクチャ設計の作業のうちで中心的なものである。サイズ、レイテンシとスループットとシステムのメモリへの接続も、マイクロアーキテクチャ的な設計上の決定事項である。
システムレベルの設計事項のうち、たとえばメモリコントローラなどの周辺回路を含むかどうか、といったこともマイクロアーキテクチャ設計プロセスの一部と考えられている。これにはパフォーマンスや接続方法についての選択も含まれる。
アーキテクチャ設計とは異なり、特定のパフォーマンスレベルを目指す際、マイクロアーキテクチャ設計では、制約条件により綿密に注意が払われる。マイクロアークテクチャの設計上の決定事項は直結的にシステムに影響するため、以下のような問題に注意を払わなければならない。
チップの面積とコスト
消費電力
ロジックの複雑さ
接続の容易性
製造の容易さ
デバッグの簡単さ
試験をする方法、能力