讨论DDR3的几种重要参数

讨论DDR3的几种重要参数

在自己手上的案子和周围同事的经历中,得到一些关于DDR3配置的经验。权且记录下来,以便后续可以回顾和参考。

Memory init的过程一般都比较复杂,属于芯片核心的东西,普通的OEM/ODM开发人员不适宜去修改或者调整其中的配置,除非有必要。我们经历的这些问题基本都是因为使用公版的code并不能解决问题,而且芯片厂商也不能提供很好的support的情况下发生的。

 

ODT参数

ODT(on-die termination,片内终端电阻)
以前使用DDRSDRAM的主板上面为了防止数据线终端反射信号需要大量的终端电阻。大大增加了主板的制造成本。实际上,不同的内存模组对终结电路的要求是不一样的,终结电阻的大小决定了数据线的信号比和反射率,终结电阻小则数据线信号反射低但是信噪比也较低;终结电阻高,则数据线的信噪比高,但是信号反射也会增加。因此主板上的终结电阻并不能非常好的匹配内存模组,还会在一定程度上影响信号品质。DDR2/DDR3可以根据自己的特点内建合适的终结电阻,这样可以保证最佳的信号波形。使用DDR2/DDR3不但可以降低主板成本,还得到了最佳的信号品质,这是DDR不能比拟的。

 

DDR2/DDR3内建了终端电阻,在DRAM颗粒工作时把终结电阻器关掉,而对于不工作的DRAM颗粒则打开终结电阻,减少信号的反射。ODT至少为 DDR2/3带来了两个好处,一个是去掉了主板上的终结电阻器使主板的成本降低,也使PCB板的设计更加容易。第二个好处是终结电阻器可以和内存颗粒的"特性"相符,使DRAM处于最佳状态。

当然这一个ODT的值在DDR3的controller中是可以调整的,有相对应的register来设定,

比如34ohm/40ohm等。在之前遇到过的情况是,memory intial过了之后,进入memory访问数据,读到的和写入的不一致。当时量测过DQS的信号,data数据比较紊乱,不是很正常。但是又不能排除是HW的问题,只能暂时通过SW的方式debug,调整参数之后,问题可以解决。但是这种解决方式的前提是:memory相关信号不能太差,如果太异常,通过sw的方式只会是饮鸩止渴。

另一个调整过的参数是DIC。

 

DIC参数

指输出的driver impedance control,一般是针对某个rank来设定的。具体的作用还在study,其对应的值也有34ohm或者40ohm等。详情还是看code比较直观。

 

 

Command rate

该参数也叫首命令延迟,也就是发生在memory 访问的第一步骤和第二步骤的间隔的延迟。在选择一个P-Bank(物理bank指能一次处理64bit数据的一组DRAM集,一般包括多个逻辑bank)芯片集之后多少时间可以发出具体的寻址的L-Bank(逻辑bank,也就是我们说的dram颗粒)/行激活命令。这段时间差对性能的影响在高速memory的情况下比较明显。低频率dram的影响不会很大。所以问题的出现一般都会在高频率memory上出现。

我们通过cpuz 可以看到相关参数

 

1T表示一个Dram 时钟周期。一般都是ns级别。

那么我们遇到的问题是如何呢?

在某块板子上onboard的memory颗粒在1600的频率下,OS中跑memtest会当机,而1333的频率下此问题不会出现。当然这个可以排除芯片组的支持问题。另外的比较是SO-DIMM的情况下,1600和1333的频率都不会有问题。如此说来,也许此问题的出现可能和onboard的memory的设计或者layout有关系。权且不管这些,在没有找到真正root cause之前,贸然修改hw可能会造成很大的成本浪费。谁叫SW就是给HW搽屁股的呢?那如果SW的方式能调整,就采用SW方式吧。将memory rate从1个clock周期调整到2个clock问题基本消除。

 

当然,除了以前这些参数之外,还有一些可以尝试。在bios中的setup中有DDR的timing参数可以调整,超频的时候往往可以利用一下。

有些是setup中没有提供出来的比如:RTT_NOM,DQX_CTL驱动能力,CK_CTL驱动能力。

 

 

参考链接:

http://www.baike.com/wiki/ODT

http://www.expreview.com/1911-all.html

 

  • 3
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值