マイクロアーキテクチャ
理論的には、ひとつのマイクロアーキテクチャは(特にそれがマイクロコードを含んでいれば)、異なった2つの制御記憶をプログラムすることで2つの異なる命令セットを実現するために用いることができる。
マシンのマイクロアーキテクチャは通常、マシンのレジスタ、バス、機能ブロックの接続を示すブロック図で表現される。図にはいくつもの実行ユニット(たとえば浮動小数点、整数、分岐予測、単一命令による複数データ演算(SIMDなど)や、パイプラインの構造(たとえば簡単なものでは命令フェッチ、デコード、割り当て、実行などのステージを含むかもしれない)、キャッシュメモリの設計(レベル1、レベル2インターフェイス)、周辺機器のサポートなどが含まれる。
実際の物理的な回路のレイアウトや、ハードウェアの構造、パッケージ、そのほか物理的な詳細はマイクロアーキテクチャの実装と呼ばれる。2つのマシンは同じマイクロアーキテクチャを持つ可能性があり、すなわち同じブロック図で表現されるが、異なったハードウェア実装である可能性がある。