互換性を保ちつつ64bit拡張を実現した
AMDの拡張命令「AMD64」
拡張命令から見るx86 CPUの3回目は、まず64bit拡張について取り上げよう。前回の最後で触れた通り、AMDは2003年4月にリリースした「Opteron」で、x86命令の64bit拡張である「x86-64」(現在のAMD64)を導入する。
AMD64は動作モードとして、以下の2種5モードを持つ。
- Long Mode
- 64bit Mode、Compatibility Mode
- Legacy Mode
- Protected Mode、Virtual-8086 Mode、Real Mode
Legacy Modeは従来の32bit CPUとして動くモードなので、拡張されたのはLong Modeの方である。こちらは64bit OS(と64bitのデバイスドライバー)が必須であり、これをフルに使えるのが64bit Mode。一方で、従来の32bitアプリケーションをそのまま動かすのがCompatibility Modeとなる。
では何が拡張されたのか? というと、まずレジスターが図1のように大幅に拡張された。SSE用のXMMレジスターが0~15(従来は0~7)に拡張され、汎用レジスターも新たにR8~R15までが追加された。
x86 CPUがRISCプロセッサーと比べて、アーキテクチャー的に見劣りしていたのがこの汎用レジスターの少なさだ。それゆえ、x86ではスタック操作を多用していたのだが、これでやっとそうした弱点もなくなったことになる。また従来の汎用レジスターも(FPU/MMXを除き)すべて64bitに拡張された。
一方、命令セットに関しては、従来と互換性を取りつつ、64bit拡張を行なったものとされる。例えばADD命令(加算)の場合、一例を挙げると以下のようになっている。
32bit | 64bit |
---|---|
ADD AL,imm8 | ADD AL,imm8 |
ADD AX,imm16 | ADD AX,imm16 |
ADD EAX,imm32 | ADD EAX,imm32 |
- | ADD RAX,imm32 |
ADD reg/mem8,reg8 | ADD reg/mem8,reg8 |
ADD reg/mem16,reg16 | ADD reg/mem16,reg16 |
ADD reg/mem32,reg32 | ADD reg/mem32,reg32 |
- | ADD reg/mem64,reg64 |
命令フォーマットはまったく一緒だし、従来のデータサイズを扱う命令は同じだが、そこに64bit拡張が入るという形だ。厳密に言えば、例えば「ADD reg/mem32, reg32」という命令で対象となる「reg32」は、従来ならば「EAX~ESP」までのどれかだったが、64bit環境では「RAX~RSP」に加えて「R8~R15」も演算の対象となる。このあたりは下位互換性を保ちつつ、レジスター拡張に備えたものだ。
ちなみにMMXや3DNow!に関しては、扱うレジスターにそもそも変化がなく、また元々64bit命令だったこともあり、MMX Move命令で相手となる汎用レジスターが増えただけだ。SSEはXMM8~15も対象にする形に拡張されている。
この連載の記事
-
第772回
PC
スーパーコンピューターの系譜 本格稼働で大きく性能を伸ばしたAuroraだが世界一には届かなかった -
第771回
PC
277もの特許を使用して標準化した高速シリアルバスIEEE 1394 消え去ったI/F史 -
第770回
PC
キーボードとマウスをつなぐDINおよびPS/2コネクター 消え去ったI/F史 -
第769回
PC
HDDのコントローラーとI/Fを一体化して爆発的に普及したIDE 消え去ったI/F史 -
第768回
PC
AIアクセラレーター「Gaudi 3」の性能は前世代の2~4倍 インテル CPUロードマップ -
第767回
PC
Lunar LakeはWindows 12の要件である40TOPSを超えるNPU性能 インテル CPUロードマップ -
第766回
デジタル
Instinct MI300のI/OダイはXCDとCCDのどちらにも搭載できる驚きの構造 AMD GPUロードマップ -
第765回
PC
GB200 Grace Blackwell SuperchipのTDPは1200W NVIDIA GPUロードマップ -
第764回
PC
B100は1ダイあたりの性能がH100を下回るがAI性能はH100の5倍 NVIDIA GPUロードマップ -
第763回
PC
FDD/HDDをつなぐため急速に普及したSASI 消え去ったI/F史 -
第762回
PC
測定器やFDDなどどんな機器も接続できたGPIB 消え去ったI/F史 - この連載の一覧へ