|
|
2017年,AMD Zen架构横空出世,Ryzen锐龙、EPYC霄龙处理器在各个领域都大杀四方、一举扭转乾坤。/ d3 O- \$ F' l
2018年,Zen架构升级增强进化为Zen+,制造工艺也从14nm来到12nm,而到了2019年,我们迎来第三代锐龙3000系列处理器的同时,架构也升级为全新的Zen 2,同时制造工艺也是全新的7nm。
0 @; v) b G. A m5 _7 F- X
c2 G D% y2 C, V& y1 W/ c$ dZen 2架构到底全新在哪里?7nm工艺到底有何加成?今天我们就来探究一番,当然CPU架构和制造工艺是极深的、极专业的,我们这里也只是浮光掠影地看一些毛皮,感受一下AMD激进的步伐。
. V! B! z4 N, q. ~
- d: r: q: l( R4 p0 e首先介绍一下Mike Clark,AMD Corporate Fellow(企业院士)、Zen首席架构师。能有今天的处理器,这可是首要功臣,当然还有大神级的Jim Keller,以及无数工程师的心血付出。; _# r& c, D. h ]
. {4 l" q* S! A: S$ ^

- |# [) h/ m/ G1 GZen架构诞生之初,AMD就强调这是其未来多年发展的基石,同时也早早就准备好了长期路线图。14nm Zen打破坚冰、12nm Zen巩固江山之后,7nm Zen 2将在七月份正式出货,7nm+工艺的下一代全新Zen 3也正在按计划进行,如无意外将在2020年以锐龙四代的身份和我们见面。
" V- _7 u! ~# S9 z: t g% p1 o/ A再往后,AMD还有Zen 4乃至是Zen 5,都正在设计之中。如果每年一代的话,至少到2022年,AMD都会以让人目眩的速度持续提升。牙膏,不存在的……
& k# [1 L/ _0 a0 J ' L( y! {6 m8 j+ R4 r
Zen 2的设计理念或者原则主要有四条,一是结合新工艺成为世界上首个7nm工艺的高性能x86 CPU,二是在核心执行能力方面全方位增强以提升IPC,三是增强硬件安全性,四是新一代Infinity Fabric互连总线实现配置和性能的模块化和灵活性。
8 x7 r" S2 U; _ [* hZen 2架构使用的7nm工艺当然是来自台积电,AMD也与之有着极为深入的合作,从CPU到GPU都在用它。
& W4 W, o7 [) o- [6 G) d- L
; Z0 m% a6 y N3 M& p! F" N' q" a
& U4 |" k: K/ A, `, }% v作为一个重要工艺节点,台积电7nm从高性能到低功耗、从数据中心到桌面到移动都应付自如,实现了晶体管密度的翻番,同等性能下功耗可以降低一半,而同等功耗下性能可提升超过25%。: F& u' C. r |( o5 c
* H& c" U( S6 I8 t: \
初代的Zen架构相比于推土机架构实现了几乎恐怖的52%的IPC(每时钟周期指令数可粗糙理解为架构性能或者单线程性能)提升,Zen+在加强了个位数之后,Zen 2又一举提升了多达15%,远远超出了行业平均水平。7 _4 m6 [% Q; D9 C! M4 ^4 _) l
而到了产品层面,Zen 2相比于Zen+的单线程性能提升了多达21%,其中六成来自IPC架构强化,另外四成来自7nm工艺和频率提升,锐龙处理器单线程、单核心性能稍弱的劣势从此彻底不复存在。
, r2 b+ w8 O7 ` h7 R) l9 \
6 [* C" ~9 K2 S6 X* D再进一步,到了实际游戏中,以两代主流旗舰为例,同样是8核心16线程,锐龙7 3800X相比于锐龙7 2700X的游戏性能在主流大作中可以轻松提升少则超过10%,多则达到34%甚至更多,所以今后再说锐龙打游戏不行可就过时了。
0 g" w& I1 E) rZen 2架构和锐龙三代能取得如此长足的进步,来源于方方面面的强化,简单来说有架构大幅革新、分支预测改进、整数吞吐提升、浮点模块翻番、内存延迟降低、三级缓存容量翻番、频率大幅提高、系统和软件优化,等等等等。, U: p4 ]9 z2 _- d; }7 U; W8 `
5 _' M3 c9 K( k) t
除了底层架构的大变,三代锐龙(以及新一代霄龙)还采用了chiplet多芯片设计。虽然很多人称之为“胶水”,但是在如今摩尔定律前进迟缓、半导体技术提升艰难的情况下,这其实是非常明智的选择。
9 ~" u) o0 u; q2 _8 O一方面,它可以减轻架构和工艺压力,不同IP模块可以选择最合适优化的工艺,从而大大降低研发、制造成本,并提高良品率。
4 D9 e) {" w: o2 w2 `2 Y) X另一方面,它可以灵活地配置产品规格和特性,针对不同市场提供最合适的产品,也能更好地提升峰值计算性能。4 `5 P# t# }2 \2 v9 \
% D7 M6 I/ [4 Y+ \" S( n

2 L. A( p6 o V* j C( `对于多芯片设计,最关键的因素就是提高不同模块之间的通信带宽和效率、降低延迟,AMD为此设计了Infinity Fabric总线,无论AMD CPU还是AMD GPU,互连互通都是基于这种新型总线。
' }6 O: J( e$ l) p9 @$ Y三代锐龙上,Infinity Fabric总线已经进化到第二代,在扩展性、延迟、能效各个方面都有显著提升。
- @4 n4 I4 A! s0 q3 x扩展性上,特别针对消费级客户端应用做了优化调整(之前更多还是数据中心上),并且总线宽度从256-bit翻番到512-bit,以支持PCIe 4.0,能效上则将单位功耗降低了多达27%。
5 I% d# `" R7 w! G- V" g. _延迟是多芯片互连的致命所在,一旦处理不好会导致整体效率的低下,包括核心、缓存、内存等各个模块都必须保持最高效率和最低延迟,比如新一代Infinity Fabric采用了总线频率、内存频率分离式设计,保证可以达到更高频率和尽可能低的延迟。
3 w+ K+ n! \. v5 ~: `# }! w ; f4 ?% t4 ]" A7 P! y
三代锐龙的基础模块仍然是CCX(CPU Complex),每个CCX里有4个物理核心、16MB三级缓存(比二代翻番),同时两个CCX组成一个CCD(CPU Complex Die),也就是我们看到的每一颗CPU芯片。8 u) l* V* q& e1 A9 J' }
单独的I/O Die则集成了输入输出控制中心、一体化内存控制器(直连内存),注意它的制造工艺是12nm。: _6 h9 N" P. N+ Y
每个CCD有各自的Infinity Fabric PHY物理层,通过它和I/O Die芯片内的数据总线(Data Fabric)进行高速互连通信——注意两颗CPU芯片之间没有直接通信,都要经过I/O Die,这样可以保证不同核心、缓存之间的延迟是一致的。2 e) G7 [' m# ]3 {* M
0 B$ L9 V3 p9 x% H2 p/ n4 P
得益于新架构和新工艺,三代锐龙的每个CCX模块面积仅为31.3平方毫米,相比二代的60平方毫米缩小了足足47%,这也是同样封装下核心数量可以翻番的主要原因。) m" V' m/ {5 i
同时AMD也避免了一核有难、多核围观的尴尬局面,从6核心12线程到8核心16线程再到12核心24线程,多线程提升几乎是线性的(每一个核心和线程都充分释放),达到了几乎完美的98%。- e2 t$ X0 B- m/ N4 h# _8 M% Y

! a1 {# a4 B% U# e# Y2 ~比性能提升更让人激动的是能效,比如锐龙7 3700X相比锐龙7 2700X,绝对功耗从195W降低到135W,结果就是CineBench R20多核心跑分的能效(每瓦性能)提升了多达75%。7 u; y# J5 R; T. A6 h6 B
I8 ]/ w5 A! c. U. X
能效提升如此之多,新工艺新架构自然功不可没,也大大带动了频率,Zen、Zen+最高可以分别达到4.1GHz、4.35GHz,Zen 2则来到了4.7GHz(16核心的3950X),同时大大降低了达到最高频率所需的最大电压。
! U& N% m1 Y: `* ?' K5 ~
- m; k/ Z2 l% s0 z* z+ Q- ~8 X7 c3 vZen架构的内存延迟一直不是很好,但也一直在改进,Zen+就有了明显的变化,Zen 2更是进一步降低最多达33ns,而且支持更高的DDR4内存频率,从2667MHz到3600MHz游戏性能可提升5-10%甚至更多,而翻了一番的三级缓存更是让Zen 2有如神族,游戏性能可提升10-20%。
* m1 l9 j$ ]7 ], X说了半天,Zen 2架构设计呢?鉴于这些内容过于深奥,我们刚才先讲了新架构的效果,接下来就分享新架构的内部设计,只说一些最关键的、最容易理解的地方,感兴趣的可以细细研究架构图,或者等待后续的技术白皮书。4 q" p$ X$ G7 |1 E2 O( U

+ s) r4 P0 _6 r6 d$ [7 R O& s+ Q+ ^
7 T& P8 [3 h, [: B; X. }Zen 2架构总览图和核心新特性,特别注意新的TAGE分支预测器。AMD这次采用了chiplet都芯片设计,而为了协调分散的不同模块,不但有加强版的Infinity Fabric总线,不但有翻番的三级缓存(提高命中率),还特别强化了分支预测,从而将预测错误率降低了大约30%,使得处理器可以花更少的时间完成前端分派工作,提高效率的同时也能节省功耗。
Y2 [& T" z( n5 H缓存结构也有极大调整,支持各级缓存一致性,大大降低有效延迟,加入新的缓存指令。* E6 B2 |6 s' |; x# i* r0 B' ^. F
其中,一级指令缓存从4-way 64KB调整为8-way 32KB,和一级数据缓存保持一致,关联性更强,预取和利用率都得到改进。, S' a9 q1 Y; [7 i$ \) ~ ]
二级缓存保持每核心8-way 512KB不变,三级缓存则翻番到了每核心对应4MB,可以很好地提升游戏性能。1 S/ j2 q) C* X3 \2 x
其他方面:翻番的4K微指令操作缓存、四个整数单元和三个AGU地址生成单元(之前是两个)、每时钟周期三个AGEN/两个载入/一个存储、浮点单元翻倍支持单操作AVX-256、更快的虚拟化安全、硬件增强安全防御,等等。. {* l0 |/ g! p+ ?
% C1 V+ A4 S( l# J" y, G3 ]2 I
* h5 V5 ^. X5 L Z2 w& y

& R; ^% ^+ o1 e . Z0 g+ V: x! ?- n- l( R' a
9 u* z% b* y8 a
% Z7 [1 J) \; G6 h) T

6 i7 n- R( W( [( l8 B
3 q& ]; V v$ E- e: K' {/ W# g & I$ t7 c) e/ f+ H

8 f% }4 W" j% v - t, [ ~- C* h3 p* S& k( G
以上是Zen 2前端、预取、解码、浮点单元、整数执行、载入存储、缓存、安全等几乎所有模块的改进,可以看到几乎每一处都得到了全面强化和革新。' _" C5 i4 n8 L% @0 P& a$ n( d* H9 z
9 W6 r, H; F3 ^
安全方面,Zen架构诞生后爆发了大量的安全漏洞威胁,幸运的是Zen对于Meltdown熔断等诸多漏洞以及部分Spectre幽灵漏洞天然免疫,补丁都不需要,同时可以通过固件更新、系统补丁等修复受影响的Spectre幽灵漏洞。
$ k2 `( @6 P4 t0 j ?Zen 2则在设计之中就从硬件层面防御了Spectre幽灵漏洞,不但绝对保证安全,也不会因为打补丁而导致性能损失。
3 T/ R% x, z7 N2 E- W$ o以上就是AMD Zen 2架构在设计上的革新,以及结合7nm工艺带来的众多飞跃,至于实际产品表现,稍后分享官方性能数据,然后7月7日首发评测见!
# m9 _! e" p; L9 L
$ j( \4 }2 t! f( s( I; T( a来源:http://www.yidianzixun.com/article/0MFEMhfv4 a( L7 Z0 S! f* K8 E6 h
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|