マイクロアーキテクチャ (micro-architecture)
最終更新日: 1999/05/27
https://atmarkit.itmedia.co.jp/icd/root/78/7205278.html
※ 漠然としたイメージはあったが、キッチリと「定義」を聞いたのは初めてだ…。
※ ちょっとウレシかったんで、貼っておく…。
※ 「CPUの設計者」視点なんだな…。

『マイクロプロセッサにおいて、命令を実行・処理するための内部的なアーキテクチャのこと。
命令セットアーキテクチャ(ISA)が、プログラマの側から見たプロセッサの構造を定義しているのに対して、
マイクロアーキテクチャでは、内部的なプロセッサの構造を定義する。
同じ命令セットアーキテクチャを持つプロセッサでも、さまざまなマイクロアーキテクチャが考えられる。
例えば、同じx86アーキテクチャのプロセッサでも、Intel社はもとより、各メーカーからも、マイクロアーキテクチャの異なるさまざまなx86互換プロセッサが開発され、販売されている。
マイクロアーキテクチャでは、命令コードを実行するための内部的な構造を定義している。
たとえば、命令コードのデコード・実行に際して、マイクロプログラム方式を使うのか(CISC系のプロセッサに多い)、
ワイヤードロジック方式を使うのか(RISC系のプロセッサに多い)、
それともいったんRISC風の単純な命令に分解してから実行するのか、などといったものから、
パイプラインの機能と構成、
スーパーパイプラインやスーパースカラーアーキテクチャを使うかどうか、
使うならその構造はどうするのか、
命令実行ユニットや浮動小数点演算、
マルチメディア処理機能の実装やその構成方法、
レジスタリネーミングや分岐予測機能とその実現方法、
キャッシュの量とその構成、
バスインターフェイス、キャッシュインターフェイス、
割り込み機能、
そして実装に利用されるテクノロジなどとの兼ね合いによる機能の取捨選択(トランジスタ数やチップ面積、
使用するプロセス、消費電力、設計のためのツールや
人的・資金的リソースによる制限、他)など、
マイクロアーキテクチャレベルで考慮しなければならない事項は非常に多岐に渡る。』