レジスタファイル
SPARC命令セットアーキテクチャはレジスタ・ウィンドウを定義しており、アーキテクチャ上の5bitのレジスタ名が、より数百エントリーのレジスタファイルの一部であるウインドウ示す。
数百エントリーものマルチポートのレジスタファイルは非常に大きな面積を必要とする。レジスタウィンドウは 16 レジスタずつスライドし、アーキテクチャ上のレジスタ名が大きな配列内の少数のレジスタのみ示すようになっている。たとえば、アーキテクチャ上のレジスタ r20 は、ウィンドウが7つであれば物理レジスタ#20, #36, #52, #68, #84, #100, #116 を指す可能性がある。
面積を節約するため、SPARC の実装では、レジスタファイルが 32 エントリーのものあり、各セルは7つのビットを持っている。外部のポートからは一つしか読み出すことはできないが、その内容を回転させることができ、1サイクルでレジスタウインドウを動かすことができる。この変化を及ぼすために使用される信号線の大半は局所的なものであるため、わずかな電力で大きなバンド幅を達成することができる。
同様の技法がR10000のレジスタリネーミング用の割り当てファイルにも用いられている。この場合には、各物理レジスタが6bitの仮想レジスタの番号を格納する。このリネーミングファイルでは、分岐予測が誤っていた場合でも、古いリネーミングの状態を1サイクルで復帰できるよう(レジスタ・リネーミング参照)、分岐が発生するごとにリネーミング状態がチェックされる。