Zen (マイクロアーキテクチャ)

Zenマイクロアーキテクチャ（ゼン マイクロアーキテクチャ）とは、アドバンスト・マイクロ・デバイセズによって開発されたマイクロプロセッサのマイクロアーキテクチャである。2017年3月2日に正式発表され、Ryzenプロセッサとして製品化された。

 特徴 
長らく開発が停滞していたBulldozer以来となる、ゼロから完全に新しく設計されたアーキテクチャ。AMDによると、Zenの主な目標はコアあたりのパフォーマンスの向上である。

新しい特徴と改善された点は以下の通りである。
 ライトバック方式のL1キャッシュ
従来のライトスルー方式に比べ、レイテンシがより低くなり、帯域がより増加する。
同時マルチスレッディング
Bulldozerで使われていたCMT（Clustered Multi-Thread）とは異なり、1コアあたり2スレッドで処理できる。これは以前からIBM、インテル、オラクルのプロセッサに使われている。
 大容量の内部命令キャッシュ 
 すべてのコアがサイクルあたり最大6の整数演算、最大4の浮動小数点演算を実行可能。
 キャッシュメモリの帯域の増加
L1・L2では2倍、L3では最大5倍となった。
 クロック・ゲーティング
 より大きなリタイア、ロード、ストアキュー
 Bobcatに似たパーセプトロンによる、分岐予測の改善
 フェッチステージから分離された分岐予測機
 専用のスタックポインタを編集するため、インテルのHaswellやBroadwellに似たスタックエンジンを使用している。
 Move elimination
電力消費を削減するために、物理的なデータの移動を削減する。
命令への対応
高性能なハードウェア乱数生成器であり、インテルのCPUではBroadwell以降から搭載されている。
 DDR4 SDRAMへの対応

すべてのZenコアはクロックサイクルあたり4命令実行でき、μOPSキャッシュから整数、浮動小数点スケジューラに命令を供給する。すべてのコアは2つのアドレス生成ユニット（AGU）、4つの整数・浮動小数点ユニット（FPU）をもち、FPUのうち、2機は加算器として、残りの2機は乗算機として使われる。分岐予測機も改善されている。L1キャッシュは1コアごとに命令用に64KiB、データ用に32KiB、L2キャッシュは512KiB、L3キャッシュはコアあたり2MiB提供される。L3キャッシュは以前のAMDの設計と比較して5倍の帯域を提供する。

 開発と歴史 
2012年8月、AMDはZenマイクロアーキテクチャの開発を、ジム・ケラーの再雇用の直後に計画した。2015年、AMDはZenマイクロアーキテクチャの存在を正式に発表した。

ジム・ケラーは、2015年9月にAMDを退職するまでの3年間、Zenの開発を担当していたチームのリーダーを務めていた。

Zenは、本来であれば2017年にK12プロセッサーの後に登場する予定であったが、2015年のFinancial Analyst Dayにおいて、AMDはZenの設計をK12プロセッサーの開発よりも優先させるために、K12プロセッサーの登場を遅らせることを発表した。当時は、AMDは2016年10月頃に最初のZenベースプロセッサーを市場に投入するとしていた。

2015年11月、AMDはZenのテストを終え、「全て期待通りで、目立ったボトルネックは無かった」と評価した。

2015年12月、SamsungがAMDの14nm FinFETプロセスのプロセッサーであるZenとPolarisアーキテクチャのGPUの製造を担う契約をするかもしれないという噂が流れた。その後、2016年6月に、AMDの「Samsungの14nm FinFETプロセスでの製造が成功した」というアナウンスにて、Samsungも製造を担当することが正式に判明した。

Zenベースの最初のシステムは、E3 2016にてデモンストレーションが行われた。

 前世代との比較 
Zenは、以前のBulldozerとはまったく異なり、インテル製のプロセッサ向けに最適化されているソフトウェアでのパフォーマンスを向上させるために、さまざまな機能の変更や強化が行われている。

 製造プロセス 
Zenアーキテクチャは14nm・12nm FinFETプロセスで製造される。これは、AMD FXや旧世代のAPUで使われていた32nmプロセスおよび28nmプロセスよりも歩留まりが良いとされる。

 パフォーマンス 
Zenは、コアあたりの性能の向上のために、サイクルあたりの命令実行数（IPC）をExcavatorと比較して40%以上向上させるという目標があった。Excavatorのときは、Steamrollerと比較して、4～15%程度の改善しか見られなかったが、Zenは最終的にExcavatorと比較して52%ものIPCの改善がなされた。このような大きな改善を成し遂げることができた要因の一つに、SMTによるマルチスレッド処理が挙げられる。これにより、スループットが向上し、これまで以上のリソースが利用できるようになった。

Zenベースのプロセッサは、周波数や電圧の動的な制御のために、チップに内蔵されたセンサーを用いている。これにより、CPUの冷却能力に余裕がある場合、設定されたブースト周波数を超えた周波数での動作が可能となる。

AMDは、8コア16スレッドのZenベースのプロセッサが、Blenderのレンダリングや、HandBrakeのベンチマークにおいて、同クロックのIntel Broadwell-Eプロセッサよりも優れていることを実証した。

 メモリ 
Zenは最大で8チャネルのDDR4メモリをサポートする。

 電力消費と熱出力 
Zenベースのプロセッサは、AMD FXや旧世代のAPUよりも消費電力や熱出力が削減され、同じ電力消費と熱出力でより多くの演算が可能になった。

Zenは、消費電力の削減のために、クロック・ゲーティングを使用し、コアが使われていない時の周波数を下げている。これは「SenseMIテクノロジー」という機能によるもので、CPUに内蔵されたセンサーを使用し、周波数や電圧を動的に制御することにより実現している。

 強化されたセキュリティと仮想化支援 
ZenはSecure Memory Encryption（SME）とSecure Encrypted Virtualization（SEV）のサポートが追加されている。SMEは、システム起動時、オンボードにあるプロセッサ（ARM Cortex-A5）を用い、ページテーブル毎に実行されるメモリをリアルタイムに暗号化する機能で、DDR4の暗号化を可能にしている。これにより、メモリ内容のスヌーピングやを防ぐことができる。

 接続性 
Zenは、SATA、USB、PCI Express、NVMeなど、サウスブリッジの大半をSoCとして組み込んでいる。

AMDは、Radeon Instinctの発表において、今後リリースされる、コードネームNaplesのZenベースCPUが、ディープラーニングシステムの構築に最適化されることを発表した。Naples CPUは、PCI Expressを最大64レーン提供し、PCI Express x16 コネクタに接続するInstinctカードを最大4枚接続できるようになるとされる。これに対して、インテルのXeonは、提供するPCI Expressは最大でも40レーンとなっている。

 製品一覧 
Zenは、デスクトップやノートパソコン向けにはRyzenやAMD APUとして、サーバー向けにはEPYCという新たなブランドとして展開される。

 Zen 

 デスクトップ向け 
Whitehaven
 対応ソケット: Socket TR4

+ Whitehavenブランド型番CPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB) 定格 ターボ L2 L3RyzenThreadripper1950X 16 3.44.0 832180DDR4-26661920X 12 3.5 61900X 8 3.8 4 16

Summit Ridge
 対応ソケット: Socket AM4

+ Summit Ridgeブランド型番CPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB) 定格 ターボ L2 L3Ryzen 71800X8 3.6 4.041695DDR4-26661700X 3.4 3.81700 3.0 3.7 65Ryzen 51600X6 3.6 4.03 951600 3.2 3.6651500X4 3.5 3.721400 3.2 3.48Ryzen 31300X4 3.5 3.71200 3.1 3.4

Raven Ridge
 対応ソケット: Socket AM4

+ Raven Ridgeブランド型番CPUGPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB)ブランドSP数クロック(MHz) 定格 ターボ L2 L3Ryzen 52400G4 3.6 3.924RX Vega 117041250 65DDR4-29332400GE 3.2 3.8 35Ryzen 32200G4 3.5 3.7Vega 85121100 652200GE 3.2 3.635 AthlonSilver3050GE2 3.4 rowspan="7" 1Vega 3192DDR4-2666Athlon3000G3.5320GE300GE 3.4240GE 3.51000220GE 3.4200GE 3.2

 サーバー向け 
Naples
 対応ソケット: Socket SP3

+ Naplesブランド型番CPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB) 定格 ターボ L2 L3EPYC760132 2.2 3.21664 180DDR4-266675713.0 20075512.01807551P7501 155745124 2.3 3.212 18074012.03.01557401P737116 3.1 3.88 20073512.42.91557351P7301 2.22.77281 2.1 3272618 2.52.94 647251 2.1 32 120 DDR4-2400

 モバイル向け 
Raven Ridge
+ Raven Ridgeブランド型番CPUGPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB)ブランドSP数クロック(MHz) 定格 ターボ L2 L3Ryzen 72800H4 3.33.824 RX Vega 11 7041300 45 DDR4-32002700U2.2 RX Vega 10 640 15 DDR4-2400Ryzen 52600H3.6Vega 85121100 45 DDR4-32002500U2.015DDR4-2400Ryzen 32300U 4 3.4 Vega 6 3843200U2 2.6 3.51Vega 3192 12002200U 2.5 3.4 1100 Athlon300U 2.4 3.3 1000

Dali
+ Daliブランド型番CPUGPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB)ブランドSP数クロック(MHz) 定格 ターボ L2 L3 Ryzen 33250U2 2.6 3.514RadeonGraphics192 120015DDR4-2400 AthlonGold3150U 2.4 3.31000AthlonSilver3050e 1.4 2.8 63050U2 2.3 3.2 128 1100 15 AMD APU3020e 1.2 2.6 192 1000 6

Pollock
+ Pollockブランド型番CPUGPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB)ブランドSP数クロック(MHz) 定格 ターボ L2 L3 AMD APU3015e 2 1.2 2.3 1 4 RadeonGraphics 192 600 6 DDR4-1600

 組み込み向け 
Snowy Owl
+ Snowy Owlブランド型番CPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB) 定格 ターボ L2 L3EPYC3451 16 2.153.0832 100DDR4-26663401 16 1.85 853351 12 1.96 803301 12 2.0 6532558 2.53.14165532513201 8 1.5 30 DDR4-21333151 4 2.72.92 45DDR4-26663101 4 2.1 8 35

Great Horned Owl
+ Great Horned Owlブランド型番CPUGPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB)ブランドSP数クロック(MHz) 定格 ターボ L2 L3RyzenV1807B4 3.35 3.824 Vega 11 704 130045DDR4-3200V1780B3.6 colspan="3" V1756B 3.25Vega 85121100V1404I2.015DDR4-2400V1605BV1500B 2.2 colspan="3" V1202B 2 2.3 3.2 1 Vega 3 192 1000

Banded Kestrel
+ Banded Kestrelブランド型番CPUGPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB)ブランドSP数クロック(MHz) 定格 ターボ L2 L3RyzenR1606G2 2.6 3.514 Vega 3 192 120015DDR4-2400R1600 3.1 colspan="3" R1505G 2.4 3.3Vega 31921000R1305G 1.5 2.8 10R1102G 2 1.2 2.6 6

 Zen+ 

 デスクトップ向け 
Colfax
 対応ソケット: Socket TR4

+ Colfaxブランド型番CPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB) 定格 ターボ L2 L3RyzenThreadripper2990WX 32 3.04.2 1664250DDR4-29332970WX 24 122950X 16 3.5 4.4 8321802920X 12 4.3 6

Pinnacle Ridge
 対応ソケット: Socket AM4

+ Pinnacle Ridgeブランド型番CPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB) 定格 ターボ L2 L3Ryzen 72700X8 3.7 4.3416 105DDR4-29332700 3.2 4.1 652700E 2.8 4.0 45 DDR4-2666Ryzen 52600X6 3.6 4.23 95DDR4-29332600 3.4 3.9651600AF 3.2 3.6DDR4-26662600E 3.14.0 452500X 4 3.62865DDR4-2933Ryzen 32300X4 3.51200AF 3.1 3.4 DDR4-2666

Picasso
 対応ソケット: Socket AM4

+ Picassoブランド型番CPUGPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB)ブランドSP数クロック(MHz) 定格 ターボ L2 L3Ryzen 53400G4 3.7 4.224RX Vega 11704 1400 65DDR4-29333400GE 3.34.0 1300 35Ryzen 33200G4 3.6Vega 8512 1250 653200GE 3.3 3.8 1200 35AthlonGold3150G 3.5 3.9Vega 31921100 653150GE 3.3 3.8 35

 モバイル向け 
Picasso
+ Picassoブランド型番CPUGPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB)ブランドSP数クロック(MHz) 定格 ターボ L2 L3Ryzen 73780U4 2.34.024 RX Vega 11 7041400 15DDR4-24003750HRX Vega 10640 353700U15Ryzen 53580U2.13.7 Vega 9 576 13003550HVega 85121200 353500U153450U3.5Ryzen 33350U4 Vega 63843300U

 組み込み向け 
River Hawk
+ River Hawkブランド型番CPUGPUTDP(W)対応メモリコア数（スレッド数）クロック (GHz)キャッシュ (MB)ブランドSP数クロック(MHz) 定格 ターボ L2 L3RyzenR25444 3.353.724RadeonGraphics512 1300 45 DDR4-3200R25142.1120015DDR4-2666R2314 4 3.5 384R2312 2 2.7 1 192 DDR4-2400