股票
板块
用户
资讯
首页
天眼
自选
发现
开户
首页
天眼
自选
发现
我的

内存条为什么越卖越贵?拆开DRAM看一遍,你就全明白了

转载来源:半导体知库 内存条为什么越卖越贵?拆开DRAM看一遍,你就全明白了 http://mp.weixin.qq.com/s?__biz=Mzg5NjUxNDA0Mg==&mid=2247494889&idx=3&sn=9f0724bc13365c61d5a9c800534fab0b&scene=45#wechat_redirect

内存条为什么越卖越贵?
拆开DRAM看一遍,你就全明白了
——36页课件图解:从刷新、Bank到Row Hammer
内存条的价格这几年像坐过山车,一根32GB的DDR5套条,行情好的时候能贵出一部千元机。骂完厂商,大部分人也就翻篇了。但内存(DRAM)到底难在哪、贵在哪,值得认真拆开讲一次。
这篇的底稿,是一份业内流传的课件《DRAM技术精解(第三版)》(2023年)。我从中挑出36页关键图,按自己的话重新讲一遍:从它为什么必须不停刷新,到Channel、Rank、Bank这些词的真面目,再到DDR5和LPDDR5新添的省电招数,以及连黑客都惦记的Row Hammer。文中所有插图均引自该课件,正文表述皆为改写。
  内存这东西,到底“动”在哪里
同一颗DRAM的不同形态:台式机内存条、焊在板上的颗粒、塞进封装的SiP——外壳千变万化,内核是同一套东西(图源:《DRAM技术精解(第三版)》)
你手里那根内存条,拆开看就是若干颗DRAM芯片焊在小板上。放进手机,它叫颗粒;和处理器封在一起,叫SiP。形态各异,内核是同一套逻辑。
用户视角 vs 硬件视角:软件看到的只是画面和文字,DRAM实际处理的却是一条条信号(图源:《DRAM技术精解(第三版)》)
软件眼里,内存只是“往地址a写个数”;落到硬件这一层,全是一条条实打实的信号。研究DRAM,研究的就是这些信号怎么被安排得明明白白。
什么是DRAM:DDR SDRAM三个关键词——双倍数据率、同步、动态(图源:《DRAM技术精解(第三版)》)
先把名字讲清楚。DRAM通常指DDR SDRAM:DDR是双倍数据率,时钟上升沿、下降沿各传一次;S是同步,一切听系统时钟号令;D是动态——每个比特都存在一颗小电容里,而电容,会漏电。
SDR、DDR、QDR的区别:采样点从一个变成两个、四个,锁存位置随之变化(图源:《DRAM技术精解(第三版)》)
从SDR到DDR,再到GDDR5X那种四个采样点的玩法,每提速一代,控制器要处理的时序判断就多一层。数据率翻倍,从来不是免费的。
动态(Dynamic)的来历:电容会漏电,DRAM必须靠持续刷新保住数据(图源:《DRAM技术精解(第三版)》)
电容两级不是绝对绝缘,会慢慢漏电,所以DRAM必须不停刷新,这就是“动态”的来历。你写C语言从没操心过刷新,是因为内存控制器把这件事全包了。
刷新周期的温度门槛:0~85℃用64ms一轮,85~95℃扩展温区改用32ms一轮(图源:《DRAM技术精解(第三版)》)
刷新周期还看温度脸色:0到85℃之间,64毫秒刷完一轮就够;到了85到95℃的扩展温区,漏电加快,得改成32毫秒一轮。越热越勤快,这是拿功耗换数据的稳妥做法。
核心阵列频率 vs IO速度:DDR5数据率超过10Gb/s,核心阵列仍停留在200M~500MHz(图源:《DRAM技术精解(第三版)》)
还有个反直觉的点:DDR5的数据率已经冲过10Gb/s,核心阵列的频率却一直趴在200M~500MHz。核心跑快了反而不稳,提速靠预取(Prefetch)——核心慢慢算,IO接口替它多跑几趟。
  一个大家族,各有各的活法
DRAM家族全景:Wide I/O、HBM、GDDR、HMC都是从DDR这棵树上分出去的枝(图源:《DRAM技术精解(第三版)》)
把DRAM家族摊开看,Wide I/O、HBM、GDDR、HMC都是从DDR这棵树上分出去的枝。GPU要带宽,手机要省电,服务器要容量——需求不同,路就不同。
GDDR的出身:早期跟随DDR规格,GDDR2栽过发热跟头,GDDR3起与DDR分道扬镳(图源:《DRAM技术精解(第三版)》)
GDDR和DDR早年真是一家人,GDDR2栽过发热的大跟头,之后从GDDR3起就和DDR分道扬镳。GPU不在乎延迟,在乎一口气能吞下多少数据。
HBM:三星、AMD、SK海力士制定的3D堆叠SDRAM,用TSV垂直互连,带宽怪兽(图源:《DRAM技术精解(第三版)》)
HBM则是三星、AMD和SK海力士一起定的3D堆叠方案,把DRAM一层层摞起来、用TSV垂直互连。如今AI加速卡上围着GPU的那几颗,就是它。
DDR4到DDR5的变化:Vref CA训练移到片内,配合Prefetch与子通道(图源:《DRAM技术精解(第三版)》)
LPDDR4到LPDDR5的变化:走进1a制程,降低VDD1功耗,引入单端信号(图源:《DRAM技术精解(第三版)》)
这两年两代新标准值得对看一眼:DDR5把Vref训练从板级挪进片内、加了子通道;LPDDR5走进1a制程、引入WCK时钟。同一个诉求——更快更省电,两条路线给出了不同答案。
  拆开看结构:Channel、Rank、Bank
多通道:每个通道配独立控制器,彼此独立工作,带宽靠并行传输堆出来(图源:《DRAM技术精解(第三版)》)
双通道的本质是两套独立控制器,两个人各干各的,带宽才上得去。话得说回来,双通道的性能真不是单通道的两倍——访问撞车的时候,谁也帮不了谁。
多Rank:增加Rank是为了提升单通道容量,但Rank太多负载重,通道速度反而上不去(图源:《DRAM技术精解(第三版)》)
Rank是JEDEC定义的术语,指一条通道上并联的一组芯片。加Rank是为了堆容量,但Rank挂太多,总线负载重,通道反而跑不快。
Bank的名字来源:bank本义就是银行——多个柜台并行接待(图源:《DRAM技术精解(第三版)》)
Bank直译就是银行。多个柜台同时接待不同客户,对应到内存,就是多个Bank并行处理不同请求。
传感放大器(行缓冲器):把电容里微弱的电荷差异放大成标准的0和1(图源:《DRAM技术精解(第三版)》)
真正干细活的是传感放大器,也叫行缓冲区。电容里那点电荷弱得可怜,必须靠它把位线上的微弱差异放大成标准的0和1。
行缓冲区的三种状态:命中、空行访问、冲突——顺序访问快、随机访问慢的根源(图源:《DRAM技术精解(第三版)》)
行缓冲区在DRAM里就当缓存用:命中了直接搬走;空着,得先读一整行;撞上了,还得先把旧行写回去再开新行。顺序访问快、随机访问慢,根源就在这。
Bank Group:DDR4从GDDR5借来的设计,把Bank再分组以支持交错访问(图源:《DRAM技术精解(第三版)》)
DDR4又从GDDR5手里借来了Bank Group,把Bank再分组:组内挨着访问要等tCCD_L,跨组可以背靠背,交错之下延迟被摊薄。
2n预取示意:一次列命令从核心阵列抓出多拍数据,交给高速IO慢慢传(图源:《DRAM技术精解(第三版)》)
预取,说的是一次列命令从核心阵列里抓多少拍数据。8n预取意味着核心走一拍、IO要传八拍——IO快、核心慢,中间全靠预取对齐节拍。
预充电:访问新行之前,传感放大器必须先把旧行写回阵列、位线充回基准电平(图源:《DRAM技术精解(第三版)》)
换行之前必须预充电:把传感放大器里的旧行写回阵列,位线重新充回基准电平。可以把它理解成收拾桌子——上一道菜的盘子不撤,下一道上不来。
tFAW:滚动时间窗内最多四次行激活,像银行不会把所有窗口同时敞开(图源:《DRAM技术精解(第三版)》)
tFAW则像银行不会把所有窗口同时敞开:一个滚动时间窗内最多允许四次行激活,给阵列的电流峰值踩刹车。
  信号的事:差分、DQS、ODT,一个都不能少
时钟同步 vs 源同步:DDR数据接口改为源同步设计,每个周期抓两次数据(图源:《DRAM技术精解(第三版)》)
SDR时代,数据跟着系统时钟走就完事。到了DDR,一个周期要抓两次数据,公共时钟靠不住,改成了源同步——数据自带节拍器。
为什么CK是差分的:用CK与CK#的交叉点锁存,比单边沿中点更抗抖动(图源:《DRAM技术精解(第三版)》)
差分时钟CK和CK#就是这么来的:两根线的交叉点做锁存点,抖动再大,也比单边沿的中点稳得多。
为什么有DQS:输出访问时间加上飘移时间逼近bit传输时间后,必须给数据配专属选通(图源:《DRAM技术精解(第三版)》)
DQS(数据选通)接过了这个活。课件里有句话挺妙:专业的事情交给专业的人——数据眼在哪,DQS就指哪。
假如没有DQS:飞行时间一来一回,读方向的时序余量根本凑不齐(图源:《DRAM技术精解(第三版)》)
要是没有DQS呢?飞行时间一来一回,读写方向的时序余量根本凑不齐,读操作直接乱套。这一个引脚,撑起了整个高速数据率。
差分信号的意义:驱动端发等值反相信号,接收端比较电压差判断0或1(图源:《DRAM技术精解(第三版)》)
差分的本质,是不信任单端信号。课件里的比喻糙但准:大哥不放心老二,让老三盯着他。
Fly-by拓扑:DDR3的命令地址时钟走飞线,信号质量改善,但各芯片到达时间有先后(图源:《DRAM技术精解(第三版)》)
DDR3起,命令地址时钟改成Fly-by飞线走法,信号质量上去了,代价是各芯片收到的时间有先有后,只能靠Write Leveling一点点校平。
DBI对信号完整性的改善:字节内0太多时整字节反转传输,眼图明显张开(图源:《DRAM技术精解(第三版)》)
DBI数据总线反转,把0太多的字节整个翻转来传,眼图明显张开,信号完整性和功耗两头都赚,代价是读写各添一点延迟。
ODT片上端接:匹配电阻做进芯片内部,谁收数据谁开端接(图源:《DRAM技术精解(第三版)》)
ODT片上端接,把匹配电阻直接做进芯片。谁在收数据谁开端接,反射被摁在源头,布板上就少了一排排贴不完的电阻。
  省电,才是移动内存的命
LPDDR5引入WCK:数据接口用独立时钟,思路类似GDDR5(图源:《DRAM技术精解(第三版)》)
LPDDR5引入WCK时钟,数据接口用自己的钟,和GDDR5一个思路——电源抖动(PSIJ)降下来,读有效窗口反而更宽。
DVFS动态电压频率缩放:移动DRAM日常很少跑满峰值,降频降压省功耗(图源:《DRAM技术精解(第三版)》)
DVFS按需给电。移动DRAM日常很少跑满3.2Gbps的峰值,频率降一档,电压跟着降,动态功耗是按平方省的。
深度睡眠模式DSM:刷新间隔拉长、突发排队执行,待机电流进一步下降(图源:《DRAM技术精解(第三版)》)
深度睡眠模式(DSM)把自刷新断电又升了一级:刷新间隔拉长,读写突发排队走,待机电流再往下压一截。
片上ECC:数据输出前在颗粒内部完成单比特纠错,减轻控制器负担(图源:《DRAM技术精解(第三版)》)
片上ECC把纠错搬进颗粒内部,数据出门之前先把单比特错误修掉,控制器肩上的担子轻了不少。
  Bit Flip与Row Hammer:内存也会出错
Bit Flip为何屡禁不止:DRAM就是一个巨大的二维数组,任何比特都可能悄悄翻转(图源:《DRAM技术精解(第三版)》)
DRAM说到底是一个巨大的二维数组,任何一个比特都可能悄悄从0翻成1。音频破个音、字幕错个字,你多半察觉不到;要是坏在指令上,就是当场死机。
Row Hammer与目标行刷新(TRR):反复激活同一行会干扰相邻行的电荷(图源:《DRAM技术精解(第三版)》)
Row Hammer更邪门:对同一行疯狂反复激活,隔壁行的电荷会被干扰,数据可能就这么没了。Target Row Refresh就是冲着它来的——盯着高危行,勤加刷新。
DRAM Spec为什么这么复杂:刷新、低功耗、高性能模式、纠错、测试,一层都不能少(图源:《DRAM技术精解(第三版)》)
看到这里,大概能明白DRAM的规格书为什么那么厚:刷新、低功耗、高速模式、纠错、测试……每一条,都是在跟物理规律讨价还价。
  写在最后
内存条贵,贵在它是一台拿电容、放大器和纠错电路硬扛物理规律的超精密机器——速度是账面数字,稳不稳、省不省电,才是真功夫。
回到你身上:装机时你愿意为DDR5多掏几百块,还是觉得32GB的DDR4更实在?顺便说说,你手上那台机器的内存时序,注意过吗?
本文数据均引自公开来源;文中插图引自《DRAM技术精解(第三版)》(2023年)并已逐张注明出处,其余图表为自制。文中观点为基于公开资料的个人分析,不构成投资建议。如个别表述涉及权利争议,请联系本人,核实后将第一时间修正或删除。

原文链接
多空观点 观点仅供交流,不构成投资建议
点赞
踩一踩
收藏
分享

评论 (0)

0/200
声明:社区内容仅代表用户个人观点,不构成任何投资建议。投资有风险,入市需谨慎。