根据GDDR5X的JEDEC(即固态技术协,是微电子产业的领导标准机构)协议规范:
GDDR5X接口协议最大支持16Gb(2GB)的单颗显存芯片,而NVIDIA使用的是美光提供的8Gb GDDR5X,总共有8颗,总容量达到64Gb(8GB)。
GTX1080的显卡位宽是256bit,其单根引脚就具有10Gb/s的超高传输速度,据此计算总带宽达到了惊人的320GB/s,也就是说500G的硬盘进行全盘传输只需要不到2s!
相比于上一代的GTX980单根引脚7Gb/s的GDDR5,总带宽224GB/s的显存性能,新一代显存性能提高了43%左右,而这仅仅是从GDDR5变成了GDDR5X,多了一个“X”而已!
今天我们就来讲讲GDDR5X显存技术,要想搞明白为什么多了一个“X”就能提高这么多,我们需要了解GDDR接口的原理。
而要了解GDDR接口,就不得不提到DDR接口,也就是内存接口技术,因为GDDR接口正是由DDR内存接口演进而来!
1、内存接口的演进
DRAM(Dynamic Random Access Memory,即动态随机存取存储器,最为常见的系统内存)技术从1970年,Intel推出第一款1KB的内存开始,发展至今已经46年了。其前23年一直按部就班的提高容量与速度,直至1989年,DRAM的最大容量只有4MB。
由于采用异步控制,内存控制器的频率被限制在50M以下,在当时这个速度是够用的,因为1989年Intel的486 DX处理器主频也只有33M。但是紧接着,没几年Intel就推出了奔腾CPU,然后与AMD展开了长达十几年的频率大战。
CPU频率一路飙升,从133M Hz上升到2GHz乃至以上。此时内存的速度就跟不上了,因此从1993年开始,推出了SDRAM的技术,简称同步DRAM,给内存引入了时钟,并与CPU时钟锁定在一个频率上,即是“同步”DRAM接口技术。
很快,2000年开始出现更强劲的DDR技术,紧接着DDR2、DDR3乃至如今最新的DDR4技术。
DDR技术的演进
我们今天要讲的GDDR5X就是内存DDR3技术的演进分支。
GDDR技术的演进,HMC将是下一代技术
自从DDR技术推出以后,DRAM的频率就开始一路飙升,下图就给出了DRAM频率的提升路线。从2005年DDR2的533M,到2013年,DDR4的2400M,短短8年,内存的频率翻了4倍以上。
下表给出了各代DRAM技术参数的差别。可以看到随着DRAM接口由SDRAM演化到DDR4,其工作电压从3.3V一路下降到了1.2V,数据传输的速率,由SDRAM的100Mb/s提升到了DDR4的3200Mb/s。
但是注意看,DRAM的核心频率没有丝毫提高,一直都是133~200MHz。关于什么是核心频率,以及为什么会这样,我们一会儿会讲。
2、DDR接口的原理
需要指出的是,现代化的内存技术,更像是一门接口技术,而不像是存储技术。得益于摩尔定律,随着工艺尺寸的不断缩进,DRAM的容量越做越大,这个并不难,但是如果没有几代DDR技术中不断出现的倍频高速接口,DRAM的速度基本没有办法提高。
其原因在于,DRAM作为一个大的存储体,尤其是靠电容作为存储的手段,其内部操作速度很难做到很高。电容的容量做得太小,内存读写的确可以变快,后果是漏电也会很快,需要不停的刷新防止数据丢失,内存的性能会受到影响。电容的容量做得太大,数据确实可以保存的很久,但是写入和读取的延时就会大大增加,DRAM的性能又会大大降低。
基于此,DRAM的内部存储操作速度难以大幅度改进。即使DRAM接口pin做到了1066M,DRAM的存储单元其实并没有工作在1066M这么高的时钟下面,相反只有133M,快的只是接口而已。
这就好像一个很粗的水管,里面的水流速其实并不快,但是只要我们把出口收窄,出口的水速就会大幅提高,远远高于水管内的水速。
在下图给出的示例中,SDRAM的接口速度是100M,DDR1接口的速度是200M,DDR2接口的速度是400M。每提高一代,接口性能都提高了一倍,但是注意看,这几代接口的核心频率都是100M,也就是说,DRAM存储单元的读写速度没有丝毫提高。
这是怎么做到的?
核心技术点就在于:双沿传输和预取。
SDRAM是单沿传输的,核心频率100M,没有预取,所以接口频率也是100M,接口速度还是100M。DDR1在核心频率不变的情况下,采用2bit预取,并采用双沿传输,使得接口频率仍然只有100M情况下,接口速度达到了200M。DDR2和DDR3则进一步将预取增加到4bit和8bit,使得接口速度再次连续翻倍。
最新的DDR4相比于DDR3,并没有增加预取宽度,但是DDR4引入了bank group(块分组)技术,该技术本质上还是变相增加了预取,提高DRAM内部并行度,使得DDR4的速度再次实现翻倍!
3、GDDR5X的秘密
GDDR5技术是内存接口DDR3技术的衍生品,其预取为8bit,实现性能达到6Gb/s,超频后可以达到7Gb/s。而GDDR5X则是在GDDR5基础之上做了两个变化:
- 将预取由8bit提高到16bit
- 引入QDR高速接口
我们之前讲过,简单粗暴的继续增加预取,性能就可以大大提高。GDDR5X的第一个改变正是如此。通过将预取从8bit提高到16bit,GDDR5X获得了极大的性能提高!
GDDR5X的另一个改进叫QDR(Quad Data Rate,是4倍数据倍率的意思)接口的引入,也就是说接口的每个时钟可以传输4bit数据!我们知道SDRAM使用的是SDR接口,接口只有上升沿才传输数据。而DDR接口对此做了大幅提高,通过上升沿和下降沿同时传输速度,性能相比于SDR得以翻倍!而QDR则是每个时钟传输4bit数据,性能相比于DDR再次翻倍!
当然了,GDDR5其实已经实现了等效的QDR接口,虽然并不是真正的QDR技术。以往GDDR1/2/3/4和DDR1/2/3的数据总线都是DDR技术(通过差分时钟在上升沿和下降沿各传输一次数据),接口频率x2就是数据传输率,也就是通常我们所说的等效频率。
GDDR5则不同,它有两条数据总线,带宽上相当于QDR技术,所以接口频率x4才是数据传输率,因而GDDR5实现了超高频率。
QDR技术这么厉害,大家可能首先想到的是需不需要一个比WCLK更快的时钟来传输数据?答案是不需要。
GDDR5X接口在实现的时候,利用WCLK加相位偏移,生成了4个同频时钟,WCLK_0,WCLK_1,WCLK_2,WCLK_3,每个时钟有1/4周期的偏移。使用这4个时钟的上升沿传输数据,这样,就实现了相比于SDRAM x4的传输能力。
当然,为了生成这种高精度带延时的时钟,需要使用DLL(锁相环)来锁定时钟的相位。下图给出了使用DLL生成这4种各带1/4相位偏移的时钟:
除了之前提高的16bit预取以及QDR技术之外,GDDR5X跟GDDR5相比还有一些小的不一样的地方。GDDR5的核心电压是1.35V,管脚电压是1.5V。GDDR5X的电压是统一的1.35V。
封装也有些不一样,这使得针对新的显卡需要设计新的电路板,不过由于改动并不大,设计同时支持GDDR5和GDDR5X显存的电路板应该并不难。
4、总结
根据之前的介绍我们知道,GDDR5X技术依然来源于DDR3内存接口技术,通过将预取由8bit提高到16bit,并且采用最新的QDR接口,每个时钟传输4bit数据,从而使得GDDR5X的性能高出上一代GDDR5显存43%的性能。意味着对于高清游戏可以支持更高的帧率,或者相同帧率下更高的清晰度。
比如对于1080P的高清游戏,如果采用GDDR5显存可以达到100帧的帧率,采用GDDR5X的显存则理论上可以达到140帧左右!
最近针对GTX1080的实测也显示,该显卡在1080P分辨率极限画质下,几乎所有游戏都能拥有平均100帧以上的表现,而4K分辨率下也能保证在30帧以上,这是以前的GTX980Ti根本达不到的性能。
而最新的测评,也证实了GTX1080超高的性能:
从测评结果来看,无论是4K综合表现还是1080P的综合表现,GTX1080的性能都高出GTX980 45%以上。当然了,除了显存接口的升级,其余的比如CUDA单元的增加,16nm Finfet工艺带来的能耗比的提高,核心频率的提高,以及最新的图像压缩技术,都大大提高了GTX1080的性能。