96SEO 2026-02-19 10:32 0
Memory#xff0c;是当代处理器必不可少的存储器件之一。

本文关于DDR介绍的核心点如下图片清晰度和排版会更好些文章优先更新至博客站。
Memory是当代处理器必不可少的存储器件之一。
本文关于DDR介绍的核心点如下
Memory的核心词Dynamic是指这种存储器件需要动态刷新以保证存储的数据不丢失与之相对的是SRAMStatic
Memory。
这里的‘刷新’在DRAM中具体指什么呢这就需要从DRAM的基本存储原理说起。
现代数字存储最基本的单位是bit以下是DDR存储一个bit的基础电路
这里有三个关键器件MOSFET电容和放大器。
MOSFET可以理解成一个电子开关当G端为1时S和D端将会导通否者处于断开状态当然这个描述并不准确MOSFET的导通关闭需要满足特定条件这并非本文重点因此不赘述电容是储能元件被用来存储bit信息当其充满电时可被认作为逻辑1否则被看作逻辑0放大器是一种可以将微弱电流电压信号放大到易于观测的量级的器件。
对于此电路具体如何读取和写入bit呢对于读取过程先对column
line经行预充电电位置为Vcc/2Vcc为系统供电电压然后将row
line置为1使SD端连通。
如果电容中有电荷且电位高于Vcc/2那AMPS将会检测到一个微小的电压抬升δu1此时可以认为读到了逻辑1该逻辑值将会被存储到锁存器中如果电容中没有电荷或者电位小于Vcc/2那这次导通将会对电容进行充电进而导致column
line上电压出现微小的电压下降δu2AMPS会检测到该电压变化并认为读到了逻辑0同样该值也会被存入锁存器。
对于写入1只需要将column
line置为1使SD导通对电容充电使其电位高于Vcc/2如果要写入0则只需要执行读取操作不充电即可因为无论先前电容电位是否高于Vcc/2由于读取过程中的电荷泄露读取完成后该值都将低于Vcc/2。
从另一个角度说对电容读取是个破坏存储的过程无论之前存储的信息是多少读取后都将归为0。
如何维持信息bit
1不被读出操作破坏呢只需在读取后立刻向电容写入存储在锁存器中的值即可。
事实上由于MOSFET、电容漏电的原因如果长时间不进行写入1操作原本处于Vcc/2以上电位的电容会因为漏电而导致电位掉到Vcc/2以下这将导致bit1的信息被反转成bit0。
因此需要对该电路进行定期的读写操作以保证信息的不丢失这里的定期读写就是上文提到的刷新即D字的来源。
显然只能存储一个bit的系统是没有实用价值的这节介绍如何将这些bit组织成大规模内存单元。
现在将上一节中介绍bit存储单元组织成如下图的矩阵形式
上图中4x4的方块矩阵中每个小方块对应于一个bit存储电路深色为1浅色为0。
同一行的存储电路共用row
line其实等效确定的去操作特定的bit。
因此只要给这个bit矩阵的行和列添加一行译码器根据输入地址选择特定行和列译码器即可指定操作任意的bit例如上图中使用行地址0x02列地址0x01既可选中编号为[2,1]的bit进行读写操作。
这样的布局理论上已可以进行大规模数据存储只要这个排列足够大即可。
但读写操作对column
line充电这一操作是比较耗时的每次充电只能读取1bit效率比较低如何实现一次充电操作读取多个bit呢
事实上如上图将多个内存矩阵堆叠排列所有的行列都接到同一组地址线上即可实现多bit读写当然每列的数据锁存是独立的只是共享列地址。
此时一组行列地址对应多个bit。
堆叠的整体被称为bank一般由4、8或16个内存矩阵进行堆叠对应的这些bank会有4bit8bit或16bit的数据线通常以x4、x8和x16进行命名区分。
所有memory
现代处理器的数据总线一般是64bit或者更高但上一节中提到的bank从设计角度一般被配置成x4、x8和x16数据总线和处理器的数据总线位宽并不对齐此时可以将多个bank的数据总线并联以获取足够的位宽。
以x8的bank为例只需要8个bank并联每次读取64bit时选取这些bank的相同行不同列便可以实现一次读取64bit数据。
这样一个能够提供独立内存访问的bank组可以被称为是一个rank。
多bank的排列除了能对齐数据总线位宽外其还能极大拓展rank的内存的大小。
将一个或多个rank组织到PCB上并用不用的片选线予以区分便是常说的内存条也就是DIMMDual
array、bank以及rank的介绍基本上可以理解对DRAM原理。
但这些介绍还只停留在逻辑层面现实中的DDR远比上面描述的要复杂的多。
下一章将从高性能DDR实现的角度来进一步深入介绍DDR的基础知识。
在对DDR进行选型时有许多参数需要参考例如功耗、内存大小、带宽、时延等本章将针对带宽性能相关的内容进行探讨。
有了上一章的基础认值从性能角度再回顾一下DRAM的存储原理会有不一样的发现。
一个bit的在读写过程中比较耗时的是column预充电的过程。
column
line上的器件复杂。
bit需要定时刷新不刷新或超时刷新可能导致数据失效这意味着对于共享一套刷新系统的bit而言刷新率和内存大小上限应该是正相关的。
array的行列数是个值得讨论的参数。
根据总结的bit存储的几个特点可以推测
array的行数应多于列数。
由于列上的功能更加复杂相应的需要的器件也会更多相同数量的bit的情况下以相对更多的行和更少的列进行排布将更节省晶圆的物理面积占用。
从读写性能考虑列数应尽量多。
如果一味的减少列数提高空间利用率将会有读写性能下降的问题。
假设memory
array只有一列每读取一个bit都需要对column进行一次充电充电时间为t则读取n
array如果需要读取的bit恰好是在相同的row不同的col上那可以同时n列进行充电读取读取n
cell包含的bit数越高读写带宽越高。
一个cell中包含的bit数越多那么一次读取操作获取的bit数越多带宽效率自然越高。
多bank情况下交叉读写不同bank可以有效提高读写带宽。
一个bank完成对一行的数据读写后如果需要再次读取同一bank的另外一行上的数据那必须耗费较长的时间重新打开一行如果只有一个bank那此时总线必须处于等待状态。
假设需要读取的地址处于两个不同的bank中那么在向其中一个bank发完第一个读指令后此时不再需要等待第一笔数据返回便可以向另一个bank发送读指令读数据这样对总线的利用率是最高的。
当bank多到一定量时这种轮流读的方式将形成循环从外部看相当于不存在刷新等待。
例如下图若只有一个bank读取三次等长数据需要3个周期若多bank交替读取则只需要2个周期提高了读取效率。
上述这种交替读取的方式被称为交织interleaving本质上是将读写操作均衡到不同bank具体如何实现这种对bank均衡可以通过地址编码实现。
例如考虑4bit地址对4个2x2的bank进行均衡则可以按下图编码实现交织该编码保证对同一bank的连续地址访问都是在同一行上的。
同用提高bank数来提高带宽效率一样多个rank也可以在一定程度上形成交叉读写的时序以提高DRAM的带宽性能。
除此之外因为rank间的数据总线及其他硬件资源都是独立的如果控制器支持同时读写多个rank也就是多通道那对于不同通道上的rank完全可以实现并行读写理论带宽翻倍。
DDR和SDRAM的实际框图从图中的bank数目bank的行列数不难验证上一节中关于DRAM的一些分析。
值得注意的是行列地址线是共用的12根地址线加上额外的两根bank地址线一共14根这远不能表示我们常用的4G、8G内存中所有的地址事时上行列地址线是分时复用的配合CAS、RAS这些控制信号理论上可实现26bit的寻址空间远高于14bit。
地址线分时复用一方面减小了走线所占的空间成本另一方面也比较好的契合DRAM需要先打开行再选中列的特性。
这张图不仅画出了DRAM的存储结构还体现出了DDR和SDRAM的区别。
DDR和SDRAM的主要区别是在它的IO/interface部分SDRAM和DDR的数据总线DQ的位宽都是4bit但和SDRAM
4bit数据直接输入输出不同DDR有读写缓冲出区其位宽为8bit是数据总线的2倍同时注意到DDR的每个cell中存储的bit数也是数据总线的两倍这就意味着在上图中DDR的一次访问可以操作8bit而SDRAM是4bit在黄**域CLK同频的情况下DDR是SDRAM带宽的2倍这也是Double
Rate的含义。
这种一次读写为数据总线位宽两倍的操作被称为2n预取(prefetch)对于DDR3\DDR4预取数被提高到8n也就是一次读写操作可以处理的数据是数据总线位宽的8倍。
不同于存储在bank中的数据被预取在缓冲区的数据以极高的速度被使用DDR的master操作可以说预取操作极高的提升了DDR带宽性能。
下图比较清楚的体现了prefetch对DDR带宽性能的影响
Length突发访问长度简称BL。
这个概念的含义是master对DDR一次访问的数据量大小例如BL2意味着一次访问将会向DDR颗粒连续传输2x数据总线位宽个bit这有益于大批量的数据传输提高数据总线的带宽利用率。
BL应当大于等于预取数当BL大于预取数时其带宽上的收益来源于节省行打开的开销一行打开后将批量读取该行上的列数据。
这个BnakGroup主要也是提升在不同bank间切换读写的速度主要优化效果时访问不同bank
prefetch等于内部数据总线和数据总线的位宽倍数关系。
burst
DDR作为当前设备的主流大容量主存设备影响着产品的成本、功耗、性能等诸多方面了解DDR基本原理和性能参数对做好应用十分重要本文对DDR的介绍还是相对基础和不全面的后续将会继续充实和完善。
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback