用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心解决方案电子通信

高速PCB设计中的时序分析及仿真策略

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-01-10 23:49:33
1.2 数据保持时间的时序分析

为了成功地将数据锁存到器件内部,数据信号必须在接收芯片的输入端保持足够长时间有效以确保信号正确无误地被时钟采样锁存,这段时间称为保持时间。在公共时钟总线中,接收端缓冲器利用第二个时钟边沿锁存数据,同时在驱动端把下一个数据锁存到数据发送端。因此为了满足接收端保持时间,必须保证有效数据在下一个数据信号到达之前锁存到接收端触发器中,这就要求接收时钟CLKA的延时要小于接收数据信号的延时。由图1中的时序关系图中,可以得到时钟CLKA的延时:

TCLKA_DELAY=TCO_CLKA+Tflt_CLKA

而数据延时:

TDATA_DELAY=TCO_CLKB+Tflt_CLKB+TCO_DATA+Tflt_DATA_SWITCH_DELAY

若要满足数据的保持时间,则必须有:

TDATA_DELAY_MIN-TCLKA_DELAY_MAX-Thold-Tmargin>0

展开、整理并考虑时钟抖动Tjitter等因素,可得如下关系:

(TCO_CLKB_MIN-TCO_CLKA_MAX)+(Tflt_CLKB_MIN-Tflt_CLKA_MAX)+TCO_DATA_MIN+Tflt_DATA_SWITCH_DELAY_MIN-Thold-Tmargin-Tjitter>02

式(2)中,第一个括号内仍然是时钟芯片CLOCK BUFFER输出时钟之间的最大相位差;第二个括号内继续可以理解为时钟芯片输出的两个时钟CLKA、CLKB分别到达RECEIVER和DRIVER的最大延时差;要满足数据的保持时间,实际可调整的部分也只有两项,即Tflt_CLKB_MIN-Tflt_CLKA_MAX和Tflt_DATA_SWITCH_DELAY_MIN。单从满足保持时间的角度而言,Tflt_CLKB_MIN和Tflt_DATA_SWITCH_DELAY_MIN应尽可能大,而Tflt_CLKA_MAX则要尽可能小。也就是说,若欲满足保持时间,就要使接收时钟早点来,而数据则要晚点无效(invalid)。

为了正确无误地接收数据,必须综合考虑数据的建立时间和保持时间,即同时满足(1)式和(2)式。分析这两个不等式可以看出,调整的途径只有三个:发送时钟延时、接收时钟延时和数据的延时。调整方案可这样进行:首先假定发送时钟延时严格等于接收时钟延时,即Tflt_CLKA_MIN-Tflt_CLKB_MAX=0和Tflt_CLKB_MIN-Tflt_CLKA_MAX=0(后文将对这两个等式的假设产生的时序偏差进行考虑),然后通过仿真可以得出数据的延时范围,如果数据延时无解则返回上述两个等式,调整发送时钟延时或接收时钟延时。下面是宽带网交换机中GLINK总线公共时钟同步数据收发的例子:首先假定发送时钟延时严格等于接收时钟延时,然后确定数据的延时范围,代入各参数,(1)和(2)式分别变为:

1.5-Tflt_DATA_SETTLE_DELAY_MAX-Tmargin>0

0.5+Tflt_DATA_SWITCH_DELAY_MIN-Tmargin>0

在不等式提示下,结合PCB布局实际,确定Tflt_DATA_SETTLE_DELAY_MAX<1.1;Tflt_DATA_SWITCH_DELAY_MIN >-0.1,剩下0.4ns的余量分配给了两个时钟的时差和Tmargin。在SPECCTRAQUEST中提取拓扑并进行信号完整性仿真,进而确定各段线长及拓扑结构。对此结构(共12种组合)进行全扫描仿真,得到Tflt_DATA_SETTLE_DELAY_MAX=1.0825 Tflt_DATA_SWITCH_DELAY_MIN =-0.0835004,符合确定的1.1和

-0.1的范围指标。由此可以得出GLINK总线数据线的约束规则:①匹配电阻到发送端的延时不应大于0.1ns;

②数据线必须以0.1ns进行匹配,即每个数据线都必须在0.65ns~0.75ns之间。有了上述的约束规则就可以指导布线了。

下面再考虑硬性规定Tflt_CLKA_MIN-Tflt_CLKB_MAX=0和Tflt_CLKB_MIN-Tflt_CLKA_MAX=0带来的影响。事先约束发送时钟和接收时钟完全等长(在实际操作中以0.02ns进行匹配)在CADENCE环境下,进行时钟仿真,得到结果:|Tflt_CLKA_MIN-Tflt_CLKB_MAX|<0.2和|Tflt_CLKB_MIN-Tflt_CLKA_MAX|<0.2。可见留给Tmargin的余量为0.2ns。

最终的仿真结果是:① 匹配电阻到发送端的延时不应大于0.1ns;②数据线以0.1ns进行匹配,即每个数据线都必须在0.65ns~0.75ns之间;③发送时钟和接收时钟以0.02ns匹配等长;④Tmargin=0.2ns。有了上述拓扑结构样板和约束规则就可以将SPECCTRAQUEST或ALLEGRO导入到CONSTRAINS MANAGER中。当这些设计约束规则设置好后,就可以利用自动布线器进行规则驱动自动布线或人工调线。

图3 仿真波形

2 源同步时序关系及仿真实例

所谓源同步就是指时钟选通信号CLK由驱动芯片伴随发送数据一起发送,它并不象公共时钟同步那样采用独立的时钟源。在源同步数据收发中,数据首先发向接收端,经稍短时间选通时钟再发向接收端用于采样锁存这批数据。其示意图如图2所示。源同步的时序分析较公共时钟同步较为简单,分析方法很类似,下面直接给出分析公式:

建立时间:Tvb_min+(Tflt_clk_min-Tflt_data_settle_delay_max)-Tsetup-Tmargin>0

保持时间:Tva_min+(Tflt_data_switch_delay min-Tflt_clk _max)-Thold-Tmargin>0

其中,Tvb为驱动端的建立时间,表示驱动端数据在时钟有效前多少时间有效;Tva为发送端的保持时间,表示驱动端数据在时钟有效后保持有效的时间;其他参量含义同前。下面以通信电路中很常见的TBI接口为例介绍源同步时序分析及仿真过程。TBI接口主要包括发送时钟和10bit的发送数据、两个接收时钟和10bit接收数据。RBC0、RBC1为两个接收时钟,在千兆以太网中,这两个时钟频率为62.5MHz,相差为180°,两个时钟的上升沿轮流用于锁存数据。根据数据手册的时序参数,代入上式可得:

2.5+Tflt_clk _min-Tflt_data__settle_delay_max-1-Tmargin>0

1.5+Tflt_data__switch_delay min-Tflt_clk _max-0.5-Tmargin>0

仿照前述分析方法:假设时钟、数据信号线的飞行时间严格相等,即时钟和数据完全匹配,然后分析它们不匹配带来的影响。上式变为

1.5-Tmargin>0

1-Tmargin>0

可见,无论是建立时间还是保持时间都有很大的余量。经过仿真,发现数据和时钟完全匹配等长(以0.02ns匹配为例),仍有0.3ns的差别,即,

Tflt_clk_min-Tflt_data_settle_delay_max<0.3

Tflt_data_switch_delay min-Tflt_clk_max<0.3

取Tmargin=0.5ns得到时钟和数据的匹配为0.2ns,即数据和时钟的长度匹配不应超过0.2ns。

在实际仿真中首先就时钟和数据的信号完整性进行分析仿真,通过适当的端接匹配得到较好的接收波形。图3是一组无源端匹配和有源端匹配时钟线的不同仿真波形比较,从中可以看出首先进行信号完整性仿真的必要性。

在公共时钟同步中,数据的发送和接收必须在一个时钟周期内完成。同时器件的延时和PCB走线的延迟也限制了公共时钟总线的最高理论工作频率。故公共时钟同步一般用于低于200MHz~300MHz的传输速率,高于这个速率的传输,一般应引入源同步技术。源同步技术工作在相对的时钟系统下,采用数据和时钟并行传输,传输速率主要由数据和时钟信号间的时差决定,这样可以使系统达到更高的传输速率。笔者通过对宽带以太网交换机主机和子卡板进行信号完整性分析、时序分析及其仿真,大大缩短了产品的设计周期,通过分析仿真有效地解决了高速设计中出现的信号完整性、时序等方面的问题,充分保证了设计的质量和设计速度,真正做到了PCB板的一次通过。主板和子卡板目前已经通过调试,并顺利转产。




上一页  [1] [2] 

Tags:

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:6,265.62500 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号