|
|
2017年,AMD Zen架构横空出世,Ryzen锐龙、EPYC霄龙处理器在各个领域都大杀四方、一举扭转乾坤。- b2 K& x3 T+ h0 z
2018年,Zen架构升级增强进化为Zen+,制造工艺也从14nm来到12nm,而到了2019年,我们迎来第三代锐龙3000系列处理器的同时,架构也升级为全新的Zen 2,同时制造工艺也是全新的7nm。/ u! i& U _3 J) X5 r% O
4 |3 I& z' z& {& O) E' Q1 C
Zen 2架构到底全新在哪里?7nm工艺到底有何加成?今天我们就来探究一番,当然CPU架构和制造工艺是极深的、极专业的,我们这里也只是浮光掠影地看一些毛皮,感受一下AMD激进的步伐。( x* y% G3 j" V) ]" F$ ^& _& j, m/ K

) T; o+ i+ d8 a" C1 H: F6 R首先介绍一下Mike Clark,AMD Corporate Fellow(企业院士)、Zen首席架构师。能有今天的处理器,这可是首要功臣,当然还有大神级的Jim Keller,以及无数工程师的心血付出。
& I/ \# l5 |8 O 1 K1 t3 w. [: q2 Z
6 n, W8 b0 I2 D3 y
Zen架构诞生之初,AMD就强调这是其未来多年发展的基石,同时也早早就准备好了长期路线图。14nm Zen打破坚冰、12nm Zen巩固江山之后,7nm Zen 2将在七月份正式出货,7nm+工艺的下一代全新Zen 3也正在按计划进行,如无意外将在2020年以锐龙四代的身份和我们见面。
8 C' |% b3 @) Y% O% y再往后,AMD还有Zen 4乃至是Zen 5,都正在设计之中。如果每年一代的话,至少到2022年,AMD都会以让人目眩的速度持续提升。牙膏,不存在的……
; c2 h& p( H! k 7 b# b9 [3 I( z ^
Zen 2的设计理念或者原则主要有四条,一是结合新工艺成为世界上首个7nm工艺的高性能x86 CPU,二是在核心执行能力方面全方位增强以提升IPC,三是增强硬件安全性,四是新一代Infinity Fabric互连总线实现配置和性能的模块化和灵活性。
8 L2 q* U( M. M* e! F5 bZen 2架构使用的7nm工艺当然是来自台积电,AMD也与之有着极为深入的合作,从CPU到GPU都在用它。" C# z3 f1 j5 C2 c: @

- ]: c! C _+ m& d4 J5 n( ]" X. x: m
9 L, }7 Y+ v& e$ z; a3 X/ S: D9 @: G作为一个重要工艺节点,台积电7nm从高性能到低功耗、从数据中心到桌面到移动都应付自如,实现了晶体管密度的翻番,同等性能下功耗可以降低一半,而同等功耗下性能可提升超过25%。$ G: g$ T7 S5 X0 [
# f0 w2 u+ V: Y5 H6 ~
初代的Zen架构相比于推土机架构实现了几乎恐怖的52%的IPC(每时钟周期指令数可粗糙理解为架构性能或者单线程性能)提升,Zen+在加强了个位数之后,Zen 2又一举提升了多达15%,远远超出了行业平均水平。
+ y+ C/ ~+ Q$ `% Q 而到了产品层面,Zen 2相比于Zen+的单线程性能提升了多达21%,其中六成来自IPC架构强化,另外四成来自7nm工艺和频率提升,锐龙处理器单线程、单核心性能稍弱的劣势从此彻底不复存在。
( I* x* J2 {% d
, W5 Y }1 Q; g再进一步,到了实际游戏中,以两代主流旗舰为例,同样是8核心16线程,锐龙7 3800X相比于锐龙7 2700X的游戏性能在主流大作中可以轻松提升少则超过10%,多则达到34%甚至更多,所以今后再说锐龙打游戏不行可就过时了。
- U% L+ O+ w, J2 H4 J, m. }+ {Zen 2架构和锐龙三代能取得如此长足的进步,来源于方方面面的强化,简单来说有架构大幅革新、分支预测改进、整数吞吐提升、浮点模块翻番、内存延迟降低、三级缓存容量翻番、频率大幅提高、系统和软件优化,等等等等。5 }9 H& g$ x7 ^$ }1 ]6 P
1 E, ?& G* M! p, `6 u
除了底层架构的大变,三代锐龙(以及新一代霄龙)还采用了chiplet多芯片设计。虽然很多人称之为“胶水”,但是在如今摩尔定律前进迟缓、半导体技术提升艰难的情况下,这其实是非常明智的选择。
' C5 s& q, {! X! G7 Y, Y7 B# [一方面,它可以减轻架构和工艺压力,不同IP模块可以选择最合适优化的工艺,从而大大降低研发、制造成本,并提高良品率。7 c* g0 Y/ W+ P: f; |* e7 @
另一方面,它可以灵活地配置产品规格和特性,针对不同市场提供最合适的产品,也能更好地提升峰值计算性能。
$ |5 t2 N6 X ?; P+ E6 x# u( m
; s; n& q" N5 Y" w8 |: | 4 B9 q3 t& j# Q/ Z
对于多芯片设计,最关键的因素就是提高不同模块之间的通信带宽和效率、降低延迟,AMD为此设计了Infinity Fabric总线,无论AMD CPU还是AMD GPU,互连互通都是基于这种新型总线。
" _& u. w- K# g% N三代锐龙上,Infinity Fabric总线已经进化到第二代,在扩展性、延迟、能效各个方面都有显著提升。) Q7 p0 S7 j" ` k9 f9 f2 A
扩展性上,特别针对消费级客户端应用做了优化调整(之前更多还是数据中心上),并且总线宽度从256-bit翻番到512-bit,以支持PCIe 4.0,能效上则将单位功耗降低了多达27%。1 o6 e+ u0 ^+ a& Q
延迟是多芯片互连的致命所在,一旦处理不好会导致整体效率的低下,包括核心、缓存、内存等各个模块都必须保持最高效率和最低延迟,比如新一代Infinity Fabric采用了总线频率、内存频率分离式设计,保证可以达到更高频率和尽可能低的延迟。: G/ ?8 m& ~" [3 {# W( p: i

" G0 C( n" B( p4 a6 E |三代锐龙的基础模块仍然是CCX(CPU Complex),每个CCX里有4个物理核心、16MB三级缓存(比二代翻番),同时两个CCX组成一个CCD(CPU Complex Die),也就是我们看到的每一颗CPU芯片。* @8 L; B+ x* z) z5 m: g8 g
单独的I/O Die则集成了输入输出控制中心、一体化内存控制器(直连内存),注意它的制造工艺是12nm。7 v7 N, ]+ C& u+ C/ w( g
每个CCD有各自的Infinity Fabric PHY物理层,通过它和I/O Die芯片内的数据总线(Data Fabric)进行高速互连通信——注意两颗CPU芯片之间没有直接通信,都要经过I/O Die,这样可以保证不同核心、缓存之间的延迟是一致的。
" R- Y* i& N7 D& g0 x1 f 5 K8 R5 m [" `: }/ E
得益于新架构和新工艺,三代锐龙的每个CCX模块面积仅为31.3平方毫米,相比二代的60平方毫米缩小了足足47%,这也是同样封装下核心数量可以翻番的主要原因。
" B: n' @8 H8 V& l3 a4 \( x同时AMD也避免了一核有难、多核围观的尴尬局面,从6核心12线程到8核心16线程再到12核心24线程,多线程提升几乎是线性的(每一个核心和线程都充分释放),达到了几乎完美的98%。$ a8 T$ ^" z) B5 y

, z6 z4 c; l: F, w6 v/ _比性能提升更让人激动的是能效,比如锐龙7 3700X相比锐龙7 2700X,绝对功耗从195W降低到135W,结果就是CineBench R20多核心跑分的能效(每瓦性能)提升了多达75%。0 L* ~* R+ p8 M4 N7 Y9 w* r2 }5 z

7 @. ?0 o% K9 L4 J0 X能效提升如此之多,新工艺新架构自然功不可没,也大大带动了频率,Zen、Zen+最高可以分别达到4.1GHz、4.35GHz,Zen 2则来到了4.7GHz(16核心的3950X),同时大大降低了达到最高频率所需的最大电压。
+ R. O( [* d. }1 P x2 j5 p# Y' A; l3 ~. l$ G0 R
Zen架构的内存延迟一直不是很好,但也一直在改进,Zen+就有了明显的变化,Zen 2更是进一步降低最多达33ns,而且支持更高的DDR4内存频率,从2667MHz到3600MHz游戏性能可提升5-10%甚至更多,而翻了一番的三级缓存更是让Zen 2有如神族,游戏性能可提升10-20%。" b% C; M2 v* g" R2 q
说了半天,Zen 2架构设计呢?鉴于这些内容过于深奥,我们刚才先讲了新架构的效果,接下来就分享新架构的内部设计,只说一些最关键的、最容易理解的地方,感兴趣的可以细细研究架构图,或者等待后续的技术白皮书。
( k6 h- @" \/ n0 k" @2 @ \6 I- @
& Y& Q0 v% I" {4 J
2 [- E' l5 X- R9 m( ~- hZen 2架构总览图和核心新特性,特别注意新的TAGE分支预测器。AMD这次采用了chiplet都芯片设计,而为了协调分散的不同模块,不但有加强版的Infinity Fabric总线,不但有翻番的三级缓存(提高命中率),还特别强化了分支预测,从而将预测错误率降低了大约30%,使得处理器可以花更少的时间完成前端分派工作,提高效率的同时也能节省功耗。
% K) U) O7 j! X- o; B缓存结构也有极大调整,支持各级缓存一致性,大大降低有效延迟,加入新的缓存指令。
9 E" l8 G) P; }' e; @ d4 F其中,一级指令缓存从4-way 64KB调整为8-way 32KB,和一级数据缓存保持一致,关联性更强,预取和利用率都得到改进。
' ~2 w0 C5 x8 ?( R O( I* n. h二级缓存保持每核心8-way 512KB不变,三级缓存则翻番到了每核心对应4MB,可以很好地提升游戏性能。0 D# v- k) B: f1 o( A
其他方面:翻番的4K微指令操作缓存、四个整数单元和三个AGU地址生成单元(之前是两个)、每时钟周期三个AGEN/两个载入/一个存储、浮点单元翻倍支持单操作AVX-256、更快的虚拟化安全、硬件增强安全防御,等等。
) H { `9 A6 _+ L- ] / O/ H1 J; h. I! H) n
9 t1 m! u9 V% x0 e- l
! R: s. {/ Q2 G; [* t, m- o1 B
. o; b9 {1 H( E8 l$ W
C9 Z2 ~% V1 ]5 r$ P

( ?2 G5 O! v& i, e% d 7 [) I, P F* _! R) m# @

0 w; h/ f6 ~- H8 V4 ^- }2 r
: [$ P3 U, N6 r g3 v 1 H& v: f$ v5 W D- \' y3 l7 X9 K% y

" k9 f/ v5 O& m以上是Zen 2前端、预取、解码、浮点单元、整数执行、载入存储、缓存、安全等几乎所有模块的改进,可以看到几乎每一处都得到了全面强化和革新。* b2 |+ c1 f# t7 f. X
: v: h! X0 E9 C2 q+ X
安全方面,Zen架构诞生后爆发了大量的安全漏洞威胁,幸运的是Zen对于Meltdown熔断等诸多漏洞以及部分Spectre幽灵漏洞天然免疫,补丁都不需要,同时可以通过固件更新、系统补丁等修复受影响的Spectre幽灵漏洞。
4 }, q/ ~: Z% s( T, W5 w1 iZen 2则在设计之中就从硬件层面防御了Spectre幽灵漏洞,不但绝对保证安全,也不会因为打补丁而导致性能损失。3 `. C) J+ N2 e+ q7 s: \3 f" s
以上就是AMD Zen 2架构在设计上的革新,以及结合7nm工艺带来的众多飞跃,至于实际产品表现,稍后分享官方性能数据,然后7月7日首发评测见!7 z4 N: u' Q9 I) d; u" B
8 o& |) N; o5 @来源:http://www.yidianzixun.com/article/0MFEMhfv2 Y- Y) @# f/ e! l9 T
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|