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

[仿真讨论] 系统级时序仿真

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本帖最后由 0aijiuaile 于 2014-1-9 20:39 编辑 3 F) b, ^  T! h$ A0 R, g
. {8 |! C& ~: q, D
说仿真,其实也不真实算。对于时序的仿真暂时来看没有哪个工具做得很好,往往一些参数就把我们搞晕,更不用说时序参数的代入了,这次有机会对系统级的各方面影响大概了解了下。与大家一块学习讨论。
  i$ o( S$ C$ `* g2 m
$ X$ L) U/ j6 v4 D' `1.芯片级的影响因素:8 G% |7 I3 Y7 \2 z; G
tco:主要是时钟没有,而其他信号又不一定一致。这个值与芯片逻辑门电路结构有关,STA仿真后可得出具体值。) v% v+ F" Z& ~$ n+ @7 `
tacc:又称为delay element,dll的step长度;对信号最长最短时延有影响。
8 V+ w' x: C( g. X, K* v1 sclk(skew):时钟树结构有影响,一般芯片端会做等长。& {, j5 g; Z4 u0 Z( t* e
" u' f( c- G) Q9 K1 S
2.I/O的影响因素:9 |  x0 m& k0 O: B0 {
delay:I/O delay,就是各位大大们之前讲的buffer delay,大家先对应下。不同的buffer由于内部结构不一致也会不太一样,也会由于外部条件不一致会不太一样,这个变量芯片手册称为tcom,芯片端一般叫OCV。
- ~- {2 f3 Q9 S+ L4 i' m8 n' f( A) Y6 @: `4 f9 i8 N" N, `
3.package影响因素:# K% H7 {1 F- _, y9 p
RLCG,当然用S参数来表征会更精确,因为crosstalk对skew的影响。- f( c, Q/ l; v
1 e0 X4 k5 w& y2 Y- T' r2 r
4.PCB板走线:
2 J( d' J+ c3 S大家最熟悉的,一般会按照spec要求进行等长处理。
- M) \/ A5 g" a" I% y9 e- Z; J  ~- x1 V2 T$ o- z
5.软件调节:
1 v; z5 I: B# v4 u9 Y$ n5 B0 \dq-dqs:tdelay延时,以满足建立时间裕量;
% v$ [1 r- g; b3 v* u' [$ K" Idq readQS偏移1/4tCK;...
( R: j* d/ ~, Y
: N+ ]' I0 i* R4 ~) _$ X; }希望可以让大家对影响时序的各阶段有个了解,能对PCB设计等长策略有更好的理解,可以做到大致估算各时序裕量情况。3 A; V3 {. j% `; v; Q

8 C( ^) X6 y6 ?* U) O: x此次讨论希望大家热烈参加,仅讨论静态时序,不讨论操作时序。今天就写到这。

该用户从未签到

2#
 楼主| 发表于 2014-1-10 14:30 | 只看该作者
本帖最后由 0aijiuaile 于 2014-1-10 14:40 编辑 # x4 {/ g5 l3 R
7 `4 X* m* D+ q. ~" c. m& E
在芯片级提出如下问题,可以让我们对时序调整的原理进行理解,并知道实际上我们板级考虑不了的内容:' S$ v( G0 d+ m) L) F* j9 E3 K
DQ与DQS写操作比较时:setup时dqs一般偏移半个时钟周期,(由于加上setup,计算时为一个时钟周期)而holdup时由于减去tds因此为半个时钟周期;
% @1 W0 W; P: J4 t# W, v" ]1 @  j( L. h( o
DQ与DQS读操作比较时:没有时钟偏移,因此DQS偏移90度,作时序对齐。(初始为0.25时钟周期偏移)
6 i$ _5 O- M: k! q3 I5 \9 m, ~/ ^* Q9 D) h+ z2 X; ?+ W
DQS与CLK信号写数据时:比较时对tDQSS参数值进行多偏移一个时钟周期,裕量的确会变大,但实际多出的时钟周期的裕量是否会存在,但用0.25tCK进行表格公式时,时序关系不满足要求;tDSS,tDSH参数比较时,有一个DQS_HIGH时序关系(大约半周期),其原因是什么?; B0 D7 Q5 b/ ~2 d3 c. p

) h8 h1 d* @# FDV值与delay element为何有5倍的关系,为何有2*tphase+4 * tPhaseClk_err的关系?数字dll或模拟dll的delay line值是否变化?) d5 }0 s+ a) n% p; F

$ W! ?" \- Q: _, Z" u; u: |- ]! g芯片级pulse width的各信号如何获取?
* J/ }. a8 K. s; V4 ^7 {$ h: ^- _# ]% t  p
ECHO gating9 p) M0 N% ]5 L4 W) ?5 c

+ F6 s+ o0 k  ?; J; P) T" q( S, l; I: h1 u/ h1 V8 e; F( ^. L' P

0 d8 L- `' `+ n- ?" n& U这张图片最左边为控制器->PHY(IP)->I/O(仿真时的buffer特性)->package&board(图中没有画出)->负载DDR颗粒。
  q9 _* a" o6 Q! N" v
. [7 V8 S0 k. f从图中大家可以清楚看出影响时序的各个环节,下面先芯片端的影响因素和大家道来。

databahn_ddrphy.gif (54.46 KB, 下载次数: 0)

databahn_ddrphy.gif

该用户从未签到

3#
发表于 2014-1-11 08:46 | 只看该作者
好贴,啊,继续啊楼主,学习啊

该用户从未签到

4#
 楼主| 发表于 2014-1-13 22:22 | 只看该作者
本帖最后由 0aijiuaile 于 2014-1-13 22:41 编辑
. C- a* h/ c' u4 C) ?' z
9 o- C( D2 G* z# p) t( O从芯片内部出发,我们可以看到一些参数的由来,如为何存在tsu,thold;tco到底是哪部分的长度,它由哪些因素影响;tcom;时钟tree对板级的影响;dll步长及Rj。! F7 r5 D; v# @( a6 k5 P  @
图中,寄存器1处的延迟为TCO,寄存器2处的延迟为tsu,而TCOM为芯片上的buffer delay长度(上面定义为i/o delay),现在看来,芯片手册上对于I/O处的buffer delay有可能没有考虑。: j/ T+ T; r6 C1 A7 i
此处:
: r# ^3 h' H# n! ?- ]TCO:由寄存器本身参数特性决定;
! S8 H, X' |1 Z9 j) O, S) KTCOM:主要由芯片layout时走线决定;% A  U/ n3 {+ M1 D# @
TSU:其实是读信号时的建立时间,如果写数据时需要的SDRM端寄存器的建立,保持时间。' A. |0 A! b& s# s2 T3 H5 U
而这张图基本是所有建立时序关系的基理,其它的关系无非是从中演变,但对于DDR部分的电路,add&clk,dq&dqs可以从此处得出建立时间关系。& U8 A# _) Q( i% T. \+ }' Y- O
对于地址网络,需要满足:
) Z2 Q: c1 Z/ x" I9 j  ~/ y' {$ pmax delay (tco&tcom) + tIS <0.5tCK;
* L( y9 r! o# S8 l0 ^
- H% b/ a, O, M4 |! ], y对于数据网络,需要满足:+ U4 n! {$ M( f, I
max delay + tDS <0.25tCK;由于门电路结构的改变,max delay与add网络的不太一样。
# N1 v3 o: U4 p, R" P/ E; V/ d8 y
: c) ~- m6 o2 j6 X: a3 e- D上面时序关系为简单关系,实际过程中要考虑I/O(可以通过hspice住址获得,而IBIS模型由于不能提供内部的I/C pin脚并由于其原理不能获得此值),package delay , board delay ,skew-clk/dqs,以及最长信号时延引起的dll步进长度等变量。0 a: O7 {1 M5 v
/ b6 T2 `2 ~9 P5 F' q! U
而DQS&clk的时钟关系,由于芯片内部结构不一致而不一样。下回主要介绍DQS&CLK,DQ读信号时的时序关系。

1.JPG (25.85 KB, 下载次数: 0)

1.JPG
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-28 21:21 , Processed in 0.109375 second(s), 26 queries , Gzip On.

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

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

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