找回密码
 注册
关于网站域名变更的通知
查看: 25496|回复: 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 5 o) ^9 o6 y2 `4 d& i' ~6 y+ S
呵呵,谢谢LZ的指点。
6 j4 q% K: O8 Y听说DDR3的Memory controller有内部寄存器,会自动根据发送测试数据来获得各组DQS线 ...
0 r( F3 K. w3 h2 ~, I3 J# U  j
是的,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( c" Q7 }3 w- Q6 F
    你说的这个情况是DDR3,由于DDR3的时钟与地址,控制线为菊花链结构,导致时钟到每一个颗粒的时钟没法保证 ...

    0 J/ f, N; H8 c! {& f1 X- c/ A读写平衡不是针对,,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 | 只看该作者
    个人观点:8 K# e9 \7 O2 v( D5 [$ S
    1、无论读写操作,DQS都是由驱动端发出的,Memory是不会发DQS信号的;
    1 _) s; D! H7 D* L+ ]+ e2、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 编辑
    ! \7 }% |. j' F
    dzkcool 发表于 2012-5-9 12:51
    8 D. l7 V: x# ]" Z; v. e( ]2 b个人观点:* l" h$ v; e' C% Z' ^2 B
    1、无论读写操作,DQS都是由驱动端发出的,Memory是不会发DQS信号的;/ z/ D1 l- v# [: Y+ o! {* V- c: [
    2、clock在发出读或写操 ...
    ) C( h; F, \2 o

    5 S: W9 `; ^* f+ ?% P! a9 J* P源同步和内共同时钟同步有一个很大的区别就是源同步时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 编辑
    + w% Y: ~' a2 |) u1 {  v; Z+ t* r- U" ?- X8 ^' a4 e3 }. i
    jedec上关于dqs与clock之间时序关系的定义有如下几个参数:/ U6 u1 Z' N$ X1 a) T, a

    % N  Y# e$ p, H% O- E( v5 d
    ( s# x2 \' Z! n: F9 I. K: c$ C6 a3 ?% E

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

    dqs_clk1.png

    该用户从未签到

    6#
     楼主| 发表于 2012-5-9 13:16 | 只看该作者
    yuxuan51 发表于 2012-5-9 13:03
    , S9 s/ `& W4 E5 h" G* U源同步和内共同时钟同步有一个很大的区别就是源同步时DQS与DQ的方向始终保持一致
      M$ N3 S+ q2 o" E3 H4 ]
    还请yuxuan51帮忙分析下dqs与clock的时序关系

    该用户从未签到

    7#
     楼主| 发表于 2012-5-9 13:17 | 只看该作者
    yejialu 发表于 2012-5-9 13:10 ' }1 ~" }, m* q5 R. t( c$ r# R
    对于DQS 与CLK的时序关系问题。以前DQS 与CLK的线长有比等长的关系。现在有的Memory controller 没了这个 ...

    / i( }) s1 M' R# T, t您说得memory controller是DDR3中的功能吧?

    该用户从未签到

    8#
    发表于 2012-5-9 13:20 | 只看该作者
    yejialu 发表于 2012-5-9 13:10
    * Z+ a* b, h  H0 l) Q; a- G对于DQS 与CLK的时序关系问题。以前DQS 与CLK的线长有比等长的关系。现在有的Memory controller 没了这个 ...
    # a) b! c# M. e) H  |
    你说的这个情况是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
      J: |# a- C  \( l你说的这个情况是DDR3,由于DDR3的时钟与地址,控制线为菊花链结构,导致时钟到每一个颗粒的时钟没法保证 ...
    8 p# I2 d4 o% Z0 [- _; w
    是的,是DDR3 。DDR2 还是有DQS与CLK的等长的。

    该用户从未签到

    11#
    发表于 2012-5-9 15:48 | 只看该作者
    本帖最后由 yuxuan51 于 2012-5-9 15:50 编辑
    9 |) t8 a% h5 i! S* [, ?. f) p
    : \' t# \( W, P; N' g! m没有人继续讨论了么。。。那我先说下我的看法吧
    % s) @0 Z' F" r8 s' B# Q$ u  t2 R# u
    1 {0 g% O0 B( ?" ^7 O8 U" q, {, G首先在DDR2的规范中在DDR2侧输出数据时(也就是我们常说的读数据),DQS和CLK还是有一些指标的,下图
    " M  F$ u: F$ m+ x6 E1 {* f
    - D1 {5 _% |( N7 g9 l1 j 8 C0 |2 O' V% O4 o' o. W, @# N3 ~5 ]

    + b1 d7 T* v3 J$ U! X  J! i+ y
    0 }# r; z. D" K8 B4 n# [( |( Q3 c0 R; j, X" E5 Q
    这里的tDQSCK即DDR2输出DQS时相对于CLK的偏移的大小,它是个范围值,下图,在CLK沿的左边应该为最小值,即负值,在CLK沿右边为最大值,即为正值8 o; t1 d, u0 ?+ b( D9 u& ~2 ~

    5 ?- c2 f. R: g5 W
    2 c+ G! I7 a& V5 E( C) P
    ) i5 |% H- f) j: B* [# r$ z1 X
    9 q' l# Y1 a7 k4 P& \# b- S  V
    还有两个参数为Read preamble和Read postamble,意思为读前准备状态和读后同步状态,两个都为低电平,将有效的DQS时段夹在中间,其中Read preamble大约持续一个周期左右,下图" |% Z! r0 b) T4 y  S+ W

    / R6 T8 ^6 K4 K, p % [* e3 q3 K6 N7 C" t& q6 C. n( s

    " T# s6 X4 {& M6 W/ `
    , \2 C7 ~- E( m6 ]. m7 R$ N
    / S& `( B* H2 N* y( ~$ V确实很少有资料提到DDR2输出数据时CLK与DQS的关系,从POWERPC系类的datasheet里也没有发现读DDR2时CLK与DQS的约束要求,个人觉得应该是控制器将接收到的DQS与CLK进行了相位调整,类似于调整DQ与DQS那样,当然仅限个人猜测,希望能看到大家更多的意见和看法

    该用户从未签到

    12#
     楼主| 发表于 2012-5-9 15:51 | 只看该作者
    发篇大牛写的论文,网上找的,大家共同学习下
    3 i) f7 [. U. s1 n7 g$ D* K) L3 R$ t" q8 J5 H
    Channel_timing_error_analysis_for_DDR2_memory_systems.pdf (1.89 MB, 下载次数: 1881)
    # i  A% C5 f: Q7 y# g+ p0 O3 r% |& f0 [, d
    里面有列出了ddr2种需计算的时序关系的公式
    6 ^: c6 y: S4 |; X
    6 y& r  D9 x& v4 W0 M2 R 9 V. f. X7 J* X, X! [
    2 v3 @5 G4 v, G% k) J0 S
    IEEE网站上卖13米呢,大家珍惜阿!

    评分

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

    查看全部评分

    该用户从未签到

    13#
     楼主| 发表于 2012-5-9 16:35 | 只看该作者
    yuxuan51 发表于 2012-5-9 15:48 0 O4 g8 o9 m* Z2 u- {
    没有人继续讨论了么。。。那我先说下我的看法吧
    & k9 f' J" Q# o/ |1 @: A! r$ B: S; R0 X$ {& p, Z
    首先在DDR2的规范中在DDR2侧输出数据时(也就是我们常说 ...
    + o0 I) q- D) `
    我一直在纠结着dqs与clock的时序关系是怎样产生的,因为按照源同步时序的理解,只要时钟触发strob并与data从driver端发出后,数据的采样就跟时钟没有关系的.如果根据下载的资料来计算话,只能说在芯片内部时钟跟dqs是必须有个时序的要求的,
    ! G& K2 n% F/ e5 k; _/ D; ^* z8 g" {6 z5 I) V9 g( }, O3 u

    1 O: R" ^, b) p7 Z+ g6 Z
    9 C! w5 v6 I4 S4 a7 g' Ihigh speed里翻出来的源同步总线的结构图.
    ' v. g- c1 p; ?- [/ Q" J0 l8 c/ V! c- @( W4 \" X8 N! O8 ^
    由图上,强烈怀疑是芯片内部触发器有一个数据的最小锁存时间要求,因此要dqs和clock有一定的时序关系.4 |# y5 y% N) N8 a8 ^% ~) U
    # v: [* N$ J$ I8 P  w# A' i, O
    不知理解是否正确,欢迎拍砖.

    该用户从未签到

    14#
    发表于 2012-5-9 17:02 | 只看该作者
    本帖最后由 yuxuan51 于 2012-5-9 17:36 编辑 3 |7 K0 B! i; y. Q- C8 ?" z9 F8 }
    icy88 发表于 2012-5-9 16:35 ' Q" l+ _. ^$ k/ B9 q
    我一直在纠结着dqs与clock的时序关系是怎样产生的,因为按照源同步时序的理解,只要时钟触发strob并与data从 ...
    3 i- r/ H3 a8 s1 T3 Z: r) A. M- |
    9 [+ S9 h( D7 @* ~4 l! Z7 [3 G
    ) j8 B, {4 f7 A, k
    两个观点:" ]7 `) O9 ], w( f
    4 G  Q+ N/ E3 x- y
    1.DQS虽然叫做DQ的时钟,但是它的表现形式和我们常见的时钟还是不一样的,常见的时钟形式是1010这样的重复码型,DQS不是,它只有在有进行DQ采样时才表现出1010这样的特性,所以它本质上来说还应该当做一个特殊的数据流来处理,需要时钟沿来触发采样,所以有了DQS和CLK这样的时序关系
    ) g( \% g/ M- g' k3 w$ C3 ]8 q! D( {
    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-6-4 09:26 , Processed in 0.093750 second(s), 29 queries , Gzip On.

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

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

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