|
|
2017年,AMD Zen架构横空出世,Ryzen锐龙、EPYC霄龙处理器在各个领域都大杀四方、一举扭转乾坤。7 s9 z0 X! {7 \7 a8 q
2018年,Zen架构升级增强进化为Zen+,制造工艺也从14nm来到12nm,而到了2019年,我们迎来第三代锐龙3000系列处理器的同时,架构也升级为全新的Zen 2,同时制造工艺也是全新的7nm。
% |# p F! ~* e5 b# I6 X8 d9 X u" I' A: @4 q% @7 q; e, k, j
Zen 2架构到底全新在哪里?7nm工艺到底有何加成?今天我们就来探究一番,当然CPU架构和制造工艺是极深的、极专业的,我们这里也只是浮光掠影地看一些毛皮,感受一下AMD激进的步伐。- b+ p2 y( ?( _0 y8 x
9 @5 C; Q \* y8 d2 B
首先介绍一下Mike Clark,AMD Corporate Fellow(企业院士)、Zen首席架构师。能有今天的处理器,这可是首要功臣,当然还有大神级的Jim Keller,以及无数工程师的心血付出。
0 j" C T/ c2 _1 V; l$ p9 O' S; b 7 m7 J7 V8 ?: c i5 ?) A2 B

& b8 Q) D6 w: X6 `Zen架构诞生之初,AMD就强调这是其未来多年发展的基石,同时也早早就准备好了长期路线图。14nm Zen打破坚冰、12nm Zen巩固江山之后,7nm Zen 2将在七月份正式出货,7nm+工艺的下一代全新Zen 3也正在按计划进行,如无意外将在2020年以锐龙四代的身份和我们见面。& O/ U3 o; ]/ ]
再往后,AMD还有Zen 4乃至是Zen 5,都正在设计之中。如果每年一代的话,至少到2022年,AMD都会以让人目眩的速度持续提升。牙膏,不存在的……+ {; c9 u9 a3 o% D
" f. t W" J5 n2 M4 o" I
Zen 2的设计理念或者原则主要有四条,一是结合新工艺成为世界上首个7nm工艺的高性能x86 CPU,二是在核心执行能力方面全方位增强以提升IPC,三是增强硬件安全性,四是新一代Infinity Fabric互连总线实现配置和性能的模块化和灵活性。
' m3 D# S/ A* t5 S2 b2 @Zen 2架构使用的7nm工艺当然是来自台积电,AMD也与之有着极为深入的合作,从CPU到GPU都在用它。
, w: ~! U9 k$ [4 E. a. M. `0 G
9 P& C1 Q4 Z. R# u6 o( U - u9 d6 P: S h( ] H J
作为一个重要工艺节点,台积电7nm从高性能到低功耗、从数据中心到桌面到移动都应付自如,实现了晶体管密度的翻番,同等性能下功耗可以降低一半,而同等功耗下性能可提升超过25%。
5 c4 ^4 V1 j0 v' n0 B 3 p) |( w4 {4 j4 O! k, A8 K
初代的Zen架构相比于推土机架构实现了几乎恐怖的52%的IPC(每时钟周期指令数可粗糙理解为架构性能或者单线程性能)提升,Zen+在加强了个位数之后,Zen 2又一举提升了多达15%,远远超出了行业平均水平。$ X2 }2 U$ h. e8 g
而到了产品层面,Zen 2相比于Zen+的单线程性能提升了多达21%,其中六成来自IPC架构强化,另外四成来自7nm工艺和频率提升,锐龙处理器单线程、单核心性能稍弱的劣势从此彻底不复存在。
$ L) K; R: ]+ c; y
/ q5 {# h8 B1 u, J, J9 p( z再进一步,到了实际游戏中,以两代主流旗舰为例,同样是8核心16线程,锐龙7 3800X相比于锐龙7 2700X的游戏性能在主流大作中可以轻松提升少则超过10%,多则达到34%甚至更多,所以今后再说锐龙打游戏不行可就过时了。( [4 R5 e: @( [0 ~& G% ^, O. Y
Zen 2架构和锐龙三代能取得如此长足的进步,来源于方方面面的强化,简单来说有架构大幅革新、分支预测改进、整数吞吐提升、浮点模块翻番、内存延迟降低、三级缓存容量翻番、频率大幅提高、系统和软件优化,等等等等。
+ v C0 c, m7 {: o: U ) z c4 b: _$ b) ~6 P4 z
除了底层架构的大变,三代锐龙(以及新一代霄龙)还采用了chiplet多芯片设计。虽然很多人称之为“胶水”,但是在如今摩尔定律前进迟缓、半导体技术提升艰难的情况下,这其实是非常明智的选择。
4 W/ L; w) C5 N6 Q一方面,它可以减轻架构和工艺压力,不同IP模块可以选择最合适优化的工艺,从而大大降低研发、制造成本,并提高良品率。 [9 d9 |* M; ]9 J Q1 x
另一方面,它可以灵活地配置产品规格和特性,针对不同市场提供最合适的产品,也能更好地提升峰值计算性能。9 F# u$ R) H8 X- q5 r* D7 N b
2 g! G: x6 @5 F
9 l. k; O. J* T7 T
对于多芯片设计,最关键的因素就是提高不同模块之间的通信带宽和效率、降低延迟,AMD为此设计了Infinity Fabric总线,无论AMD CPU还是AMD GPU,互连互通都是基于这种新型总线。2 c( v( M! k$ q! S1 [& \
三代锐龙上,Infinity Fabric总线已经进化到第二代,在扩展性、延迟、能效各个方面都有显著提升。; a O4 l- O; Y$ T% X+ ^
扩展性上,特别针对消费级客户端应用做了优化调整(之前更多还是数据中心上),并且总线宽度从256-bit翻番到512-bit,以支持PCIe 4.0,能效上则将单位功耗降低了多达27%。% A" ^9 M( X+ `) B- U
延迟是多芯片互连的致命所在,一旦处理不好会导致整体效率的低下,包括核心、缓存、内存等各个模块都必须保持最高效率和最低延迟,比如新一代Infinity Fabric采用了总线频率、内存频率分离式设计,保证可以达到更高频率和尽可能低的延迟。7 O+ S8 P3 S, d8 `. Z8 q1 H2 j8 _

& k" L$ e, z" j/ f/ I9 u$ {. X2 X# ]! p三代锐龙的基础模块仍然是CCX(CPU Complex),每个CCX里有4个物理核心、16MB三级缓存(比二代翻番),同时两个CCX组成一个CCD(CPU Complex Die),也就是我们看到的每一颗CPU芯片。
' `% `/ A4 y% j, Y, @单独的I/O Die则集成了输入输出控制中心、一体化内存控制器(直连内存),注意它的制造工艺是12nm。
& r) A/ ~4 v) `每个CCD有各自的Infinity Fabric PHY物理层,通过它和I/O Die芯片内的数据总线(Data Fabric)进行高速互连通信——注意两颗CPU芯片之间没有直接通信,都要经过I/O Die,这样可以保证不同核心、缓存之间的延迟是一致的。
P8 ~- d1 H0 i* [" V
# s. O% ]3 m8 g6 ? D" P得益于新架构和新工艺,三代锐龙的每个CCX模块面积仅为31.3平方毫米,相比二代的60平方毫米缩小了足足47%,这也是同样封装下核心数量可以翻番的主要原因。! R, {$ g) j, U' z2 Z5 Q
同时AMD也避免了一核有难、多核围观的尴尬局面,从6核心12线程到8核心16线程再到12核心24线程,多线程提升几乎是线性的(每一个核心和线程都充分释放),达到了几乎完美的98%。" J! X; U6 l# K4 q8 ?' d
]. ~/ S: m7 U, e
比性能提升更让人激动的是能效,比如锐龙7 3700X相比锐龙7 2700X,绝对功耗从195W降低到135W,结果就是CineBench R20多核心跑分的能效(每瓦性能)提升了多达75%。6 \. i2 N3 x/ N$ t$ r3 f$ }
; |! X. f* m! [' K& L% t7 P
能效提升如此之多,新工艺新架构自然功不可没,也大大带动了频率,Zen、Zen+最高可以分别达到4.1GHz、4.35GHz,Zen 2则来到了4.7GHz(16核心的3950X),同时大大降低了达到最高频率所需的最大电压。; j+ f0 O3 U. T# v# W. G, E$ X' K
- b# x$ O* H- c, @# Z
Zen架构的内存延迟一直不是很好,但也一直在改进,Zen+就有了明显的变化,Zen 2更是进一步降低最多达33ns,而且支持更高的DDR4内存频率,从2667MHz到3600MHz游戏性能可提升5-10%甚至更多,而翻了一番的三级缓存更是让Zen 2有如神族,游戏性能可提升10-20%。
* V1 C; \2 c- p9 G- C8 P- [5 s( E' \说了半天,Zen 2架构设计呢?鉴于这些内容过于深奥,我们刚才先讲了新架构的效果,接下来就分享新架构的内部设计,只说一些最关键的、最容易理解的地方,感兴趣的可以细细研究架构图,或者等待后续的技术白皮书。9 J* i0 X- u2 C* j; c, J0 ]
* n/ S7 J. d( f6 `6 e; d4 R t

9 b& j8 V3 x# {3 x/ WZen 2架构总览图和核心新特性,特别注意新的TAGE分支预测器。AMD这次采用了chiplet都芯片设计,而为了协调分散的不同模块,不但有加强版的Infinity Fabric总线,不但有翻番的三级缓存(提高命中率),还特别强化了分支预测,从而将预测错误率降低了大约30%,使得处理器可以花更少的时间完成前端分派工作,提高效率的同时也能节省功耗。/ g6 J$ N0 F( X: g% a. \$ d1 w& ?
缓存结构也有极大调整,支持各级缓存一致性,大大降低有效延迟,加入新的缓存指令。/ W& N( B1 h1 J0 S, z
其中,一级指令缓存从4-way 64KB调整为8-way 32KB,和一级数据缓存保持一致,关联性更强,预取和利用率都得到改进。" k7 Q7 B6 t+ ~- C; w
二级缓存保持每核心8-way 512KB不变,三级缓存则翻番到了每核心对应4MB,可以很好地提升游戏性能。
3 _2 z8 f5 F. [- U其他方面:翻番的4K微指令操作缓存、四个整数单元和三个AGU地址生成单元(之前是两个)、每时钟周期三个AGEN/两个载入/一个存储、浮点单元翻倍支持单操作AVX-256、更快的虚拟化安全、硬件增强安全防御,等等。
4 W9 H7 W: |) D9 G; r' R 8 O% P! D: o5 @4 m" O) O

, q- E7 s# q S # t# f( e+ I2 m4 R. [- p

$ d2 U! V' O. u5 |; H
; P+ ` i; N0 Z- q& E7 O" H
) [& b$ S( u( o8 Z! j/ h6 `
5 }0 |, p$ u; r3 _9 Q 4 ~9 i% q1 C9 k. ?# q+ w

) g. S4 s- z/ x, Q5 s$ ]+ _
) O5 `/ c4 q0 U( e, l g) C % r+ w' C2 H1 e! |; D r
以上是Zen 2前端、预取、解码、浮点单元、整数执行、载入存储、缓存、安全等几乎所有模块的改进,可以看到几乎每一处都得到了全面强化和革新。
0 T2 W8 Z% {2 I$ L: a
5 N# W0 }, T8 c3 l7 |7 l% Q安全方面,Zen架构诞生后爆发了大量的安全漏洞威胁,幸运的是Zen对于Meltdown熔断等诸多漏洞以及部分Spectre幽灵漏洞天然免疫,补丁都不需要,同时可以通过固件更新、系统补丁等修复受影响的Spectre幽灵漏洞。
. O; Y% S$ c. l' |, WZen 2则在设计之中就从硬件层面防御了Spectre幽灵漏洞,不但绝对保证安全,也不会因为打补丁而导致性能损失。- m. }! v* g3 O: W
以上就是AMD Zen 2架构在设计上的革新,以及结合7nm工艺带来的众多飞跃,至于实际产品表现,稍后分享官方性能数据,然后7月7日首发评测见!: v: L; q/ |: \& s
4 u; r$ i. ]) J% Y: \9 n来源:http://www.yidianzixun.com/article/0MFEMhfv
* e5 W5 E& n4 ~& W& m免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|