找回密码
 注册
关于网站域名变更的通知
查看: 25921|回复: 42
打印 上一主题 下一主题

[仿真讨论] DDR2中clock与dqs之间的时序关系

    [复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-5-9 11:44 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
我们都知道,DDR2为源同步时钟的时序关系,其中dq/dm与dqs, address/command与clock,这两组的时序关系比较明朗,即前者为数据,后者为数据的触发信号,DDR2还有一组即dqs与clock的时序关系,这两者似乎只有在驱动端有联系,而在接收端没太大的联系,对于这一组的信号时序一直存在疑惑,望高手解疑,另欢迎大家讨论,重赏!

该用户从未签到

推荐
 楼主| 发表于 2012-5-11 11:51 | 只看该作者
dzkcool 发表于 2012-5-11 09:52
$ E: F" ]. N3 z! z呵呵,谢谢LZ的指点。
0 |' M$ H% H2 g$ \听说DDR3的Memory controller有内部寄存器,会自动根据发送测试数据来获得各组DQS线 ...

: S! {* N5 e8 k) O! l  o' {- t3 r$ V是的,DDR3中新增write Leveling的模式,可以调节dqs的延时,相关资料参考jedec 的 DDR3 SDRAM Specification.
  • TA的每日心情
    奋斗
    2024-3-18 15:56
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    推荐
    发表于 2015-2-2 19:21 | 只看该作者
    yuxuan51 发表于 2012-5-9 13:20, Q6 C4 H9 s! ?( m$ y) t$ Q
    你说的这个情况是DDR3,由于DDR3的时钟与地址,控制线为菊花链结构,导致时钟到每一个颗粒的时钟没法保证 ...
    " g+ ?5 F3 M) q
    读写平衡不是针对,,ddr3 fly by拓扑里面的读写命令控制信号,读写平衡保证每个颗粒的读写命令的到达时间一致,保证同一个字节的数据同时写入或者读出,其实应该不是调节dqs跟时钟的之间的关系对不?

    该用户从未签到

    推荐
    发表于 2018-8-27 14:17 | 只看该作者
    起码在DDR2里面DQS和CLK 是有要求的 。
  • TA的每日心情
    开心
    2024-2-21 15:59
  • 签到天数: 313 天

    [LV.8]以坛为家I

    2#
    发表于 2012-5-9 12:51 | 只看该作者
    个人观点:
    * S; N! M- f- v2 c1、无论读写操作,DQS都是由驱动端发出的,Memory是不会发DQS信号的;, y/ N; V7 o/ ~( J& N
    2、clock在发出读或写操作后过一定时间后,才会触发DQS信号,因此clock与DQS没有很严格的时序关系;

    点评

    非常感谢您的支持, 另dqs信号也双向的  发表于 2012-5-9 13:15

    评分

    参与人数 1贡献 +7 收起 理由
    icy88 + 7 感谢支持

    查看全部评分

    该用户从未签到

    3#
    发表于 2012-5-9 13:03 | 只看该作者
    本帖最后由 yuxuan51 于 2012-5-9 13:04 编辑 ; M( a* \  L: L, g7 |
    dzkcool 发表于 2012-5-9 12:51 1 W, A! j( q: q/ D* c: @; |
    个人观点:0 l+ D& S; K# j
    1、无论读写操作,DQS都是由驱动端发出的,Memory是不会发DQS信号的;
    4 u1 ~- w- t. z0 G* m0 r2、clock在发出读或写操 ...

    / P# |" t' _" `' m- c# J1 _! T' ]6 k
    源同步和内共同时钟同步有一个很大的区别就是源同步时DQS与DQ的方向始终保持一致

    评分

    参与人数 1贡献 +4 收起 理由
    icy88 + 4

    查看全部评分

    该用户从未签到

    4#
    发表于 2012-5-9 13:10 | 只看该作者
    对于DQS 与CLK的时序关系问题。以前DQS 与CLK的线长有比等长的关系。现在有的Memory controller 没了这个关系。是因为Memory controller可以调整DQS 与CLK的时序关系,所以只要布线不是很夸张,这个时序就不会出问题。

    评分

    参与人数 1贡献 +4 收起 理由
    icy88 + 4 感谢支持

    查看全部评分

    该用户从未签到

    5#
     楼主| 发表于 2012-5-9 13:13 | 只看该作者
    本帖最后由 icy88 于 2012-5-9 13:18 编辑   m  R( ?, R3 X6 j& X

    1 n, x7 a2 M& k. u! B' l! Pjedec上关于dqs与clock之间时序关系的定义有如下几个参数:
    1 t. v% R% @# e# [7 o8 x! `- }7 [, {- h* Z$ N( p& s

    ( t' g7 }1 n) ~1 j; g3 M2 \
    ( @) _0 R4 U, R- \, C- z

    dqs_clk1.png (307.44 KB, 下载次数: 47)

    dqs_clk1.png

    该用户从未签到

    6#
     楼主| 发表于 2012-5-9 13:16 | 只看该作者
    yuxuan51 发表于 2012-5-9 13:03
    # l" T* {$ o$ g9 y/ z源同步和内共同时钟同步有一个很大的区别就是源同步时DQS与DQ的方向始终保持一致
    3 e9 b- I$ K  Y5 ~1 ?, c/ o" H
    还请yuxuan51帮忙分析下dqs与clock的时序关系

    该用户从未签到

    7#
     楼主| 发表于 2012-5-9 13:17 | 只看该作者
    yejialu 发表于 2012-5-9 13:10
    ; x  G6 z* N# J0 \  K5 i对于DQS 与CLK的时序关系问题。以前DQS 与CLK的线长有比等长的关系。现在有的Memory controller 没了这个 ...

    $ Z3 E1 N# p3 Y0 b您说得memory controller是DDR3中的功能吧?

    该用户从未签到

    8#
    发表于 2012-5-9 13:20 | 只看该作者
    yejialu 发表于 2012-5-9 13:10 ' t% E  b% b8 k& W7 d8 e
    对于DQS 与CLK的时序关系问题。以前DQS 与CLK的线长有比等长的关系。现在有的Memory controller 没了这个 ...
    1 H9 K+ E  s- `3 t
    你说的这个情况是DDR3,由于DDR3的时钟与地址,控制线为菊花链结构,导致时钟到每一个颗粒的时钟没法保证一样,所以有了个“write leveling”这个功能来保证时钟与DQS的时序,但是DDR1与DDR2貌似还没有这个功能,所以还是需要考虑DQS与CLK的关系

    点评

    读写平衡不是针对,,ddr3 fly by拓扑里面的读写命令控制信号,读写平衡保证每个颗粒的读写命令的到达时间一致,保证同一个字节的数据同时写入或者读出,其实应该不是调节dqs跟时钟的之间的关系对不?  详情 回复 发表于 2015-2-2 19:21

    该用户从未签到

    9#
    发表于 2012-5-9 13:21 | 只看该作者
    icy88大神啊,我还想听听你的高见呢

    该用户从未签到

    10#
    发表于 2012-5-9 13:53 | 只看该作者
    yuxuan51 发表于 2012-5-9 13:20 4 B( M" O3 `: e0 k. @3 a) V
    你说的这个情况是DDR3,由于DDR3的时钟与地址,控制线为菊花链结构,导致时钟到每一个颗粒的时钟没法保证 ...
    ) ~: L$ s# i3 F7 P
    是的,是DDR3 。DDR2 还是有DQS与CLK的等长的。

    该用户从未签到

    11#
    发表于 2012-5-9 15:48 | 只看该作者
    本帖最后由 yuxuan51 于 2012-5-9 15:50 编辑
    9 J1 D+ }! G* j! A  j. W: H6 j, |/ t& r( M9 y: a; d" p  Y
    没有人继续讨论了么。。。那我先说下我的看法吧
    + r* d5 c2 d- w5 {# f! \7 D# B" C* x
    $ Q. v3 y  [! l/ {$ x首先在DDR2的规范中在DDR2侧输出数据时(也就是我们常说的读数据),DQS和CLK还是有一些指标的,下图
    8 `+ ~) l' A( e- Z6 G. E: Q$ x+ g2 U. _' J& T0 K& H

    5 s+ l, ~! O, r; `" {- D( M% \" }  p) G

    : _% V/ ~. N: W. X+ W( D+ T  U9 a% R9 G- a( g: \5 ^
    这里的tDQSCK即DDR2输出DQS时相对于CLK的偏移的大小,它是个范围值,下图,在CLK沿的左边应该为最小值,即负值,在CLK沿右边为最大值,即为正值
    $ U/ m# q; z$ O# M) [- V$ g0 |) l4 F
    - k6 f4 P$ F$ U( t6 f  @+ ]

    2 H6 I4 f% J1 \% k
    7 P: E' A, [3 |# x+ p
    ) P7 G% V) h& ^  f" w还有两个参数为Read preamble和Read postamble,意思为读前准备状态和读后同步状态,两个都为低电平,将有效的DQS时段夹在中间,其中Read preamble大约持续一个周期左右,下图
    ( I  d9 d& q$ T2 T0 X3 R
    & Q# ^( K+ z1 ?! X  C. i ' b0 D# q' {/ ~7 x

    - C9 {  A/ K, k& K+ g* d# j  `9 O$ w% M+ I' O$ P
    3 h" t5 Q2 `+ {9 S9 _4 z  o6 d
    确实很少有资料提到DDR2输出数据时CLK与DQS的关系,从POWERPC系类的datasheet里也没有发现读DDR2时CLK与DQS的约束要求,个人觉得应该是控制器将接收到的DQS与CLK进行了相位调整,类似于调整DQ与DQS那样,当然仅限个人猜测,希望能看到大家更多的意见和看法

    该用户从未签到

    12#
     楼主| 发表于 2012-5-9 15:51 | 只看该作者
    发篇大牛写的论文,网上找的,大家共同学习下
    # |: C9 L- k* v3 e& [8 C/ g! j5 m  z
    Channel_timing_error_analysis_for_DDR2_memory_systems.pdf (1.89 MB, 下载次数: 1882) # }0 W6 G1 g# D" d/ a' }& u/ Q6 [

    3 }- r/ Y$ G* V& ?里面有列出了ddr2种需计算的时序关系的公式
    9 e6 B, v( b, S; k9 c% j
    , N  x; T+ A# O+ h, K5 B9 @
    ! N$ T9 f: D4 i# P. a  _- _& N- b4 q  ?0 _. M! f
    IEEE网站上卖13米呢,大家珍惜阿!

    评分

    参与人数 1贡献 +25 收起 理由
    shark4685 + 25 专研精神,鼓励下!

    查看全部评分

    该用户从未签到

    13#
     楼主| 发表于 2012-5-9 16:35 | 只看该作者
    yuxuan51 发表于 2012-5-9 15:48 ; x3 D2 U; ~' l7 H5 [+ j, ~
    没有人继续讨论了么。。。那我先说下我的看法吧
    9 t/ E2 Y% p( Q' R# z8 e- S9 {( c0 X( n1 S# X2 ~6 h( r9 F7 q
    首先在DDR2的规范中在DDR2侧输出数据时(也就是我们常说 ...
    6 |- V9 a' O6 c3 Z3 ^( E6 @% y7 q2 B
    我一直在纠结着dqs与clock的时序关系是怎样产生的,因为按照源同步时序的理解,只要时钟触发strob并与data从driver端发出后,数据的采样就跟时钟没有关系的.如果根据下载的资料来计算话,只能说在芯片内部时钟跟dqs是必须有个时序的要求的,' D) O& M0 q% E& A2 {( M% L

    ' ^( Y$ B  ?) f2 w' s% ^2 @ * e- p: {/ h- m5 _. e

    * \" R4 h4 U& s7 r' yhigh speed里翻出来的源同步总线的结构图.6 r" J' ^! D. ?  n$ g1 n

    ' @8 ~& w; V, x7 |& c由图上,强烈怀疑是芯片内部触发器有一个数据的最小锁存时间要求,因此要dqs和clock有一定的时序关系.4 O) a1 K7 q7 \8 L  T
    3 q1 ?" A2 N& Z7 n( V. i
    不知理解是否正确,欢迎拍砖.

    该用户从未签到

    14#
    发表于 2012-5-9 17:02 | 只看该作者
    本帖最后由 yuxuan51 于 2012-5-9 17:36 编辑
    ! B3 Q$ f" B" i  R
    icy88 发表于 2012-5-9 16:35
      d, I( k! Z( i  h: E4 I我一直在纠结着dqs与clock的时序关系是怎样产生的,因为按照源同步时序的理解,只要时钟触发strob并与data从 ...

    ' F- F, |4 q. k7 Q
    4 M3 C1 d! @8 J& Z
    : {, R8 t- j! K2 t两个观点:
    ; b/ x2 w$ |+ _, s# {% `" D& {# B. s' @: H$ k
    1.DQS虽然叫做DQ的时钟,但是它的表现形式和我们常见的时钟还是不一样的,常见的时钟形式是1010这样的重复码型,DQS不是,它只有在有进行DQ采样时才表现出1010这样的特性,所以它本质上来说还应该当做一个特殊的数据流来处理,需要时钟沿来触发采样,所以有了DQS和CLK这样的时序关系+ k6 Z) e# J& I2 Q

      y- A+ b* _3 c* |8 `2.DQS相对于CLOCK的延迟太长的话,则数据总线占用时间过长,如果紧接着有读/写操作的话,会出现总线冲突,所以需要时序关系来约束

    该用户从未签到

    15#
    发表于 2012-5-9 17:55 | 只看该作者
    如果DQS与CLK的时序不对,那么DQ信号和ADD之类的信号怎么匹配呢。 DDR怎么工作呢。 所以DQS与CLK的时序是必须的。
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-10-3 10:11 , Processed in 0.156250 second(s), 36 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表