高速PCB設(shè)計中的時序分析及仿真策略解析
式(2)中,第一個括號內(nèi)仍然是時鐘芯片CLOCK BUFFER輸出時鐘之間的最大相位差;第二個括號內(nèi)繼續(xù)可以理解為時鐘芯片輸出的兩個時鐘CLKA、CLKB分別到達(dá)RECEIVER和DRIVER的最大延時差;要滿足數(shù)據(jù)的保持時間,實際可調(diào)整的部分也只有兩項,即Tflt_CLKB_MIN-Tflt_CLKA_MAX和Tflt_DATA_SWITCH_DELAY_MIN。單從滿足保持時間的角度而言,Tflt_CLKB_MIN和Tflt_DATA_SWITCH_DELAY_MIN應(yīng)盡可能大,而Tflt_CLKA_MAX則要盡可能小。也就是說,若欲滿足保持時間,就要使接收時鐘早點來,而數(shù)據(jù)則要晚點無效(invalid)。
本文引用地址:http://m.butianyuan.cn/article/256428.htm為了正確無誤地接收數(shù)據(jù),必須綜合考慮數(shù)據(jù)的建立時間和保持時間,即同時滿足(1)式和(2)式。分析這兩個不等式可以看出,調(diào)整的途徑只有三個:發(fā)送時鐘延時、接收時鐘延時和數(shù)據(jù)的延時。調(diào)整方案可這樣進(jìn)行:首先假定發(fā)送時鐘延時嚴(yán)格等于接收時鐘延時,即Tflt_CLKA_MIN-Tflt_CLKB_MAX =0和Tflt_CLKB_MIN-Tflt_CLKA_MAX =0(后文將對這兩個等式的假設(shè)產(chǎn)生的時序偏差進(jìn)行考慮),然后通過仿真可以得出數(shù)據(jù)的延時范圍,如果數(shù)據(jù)延時無解則返回上述兩個等式,調(diào)整發(fā)送時鐘延時或接收時鐘延時。下面是寬帶網(wǎng)交換機(jī)中GLINK總線公共時鐘同步數(shù)據(jù)收發(fā)的例子:首先假定發(fā)送時鐘延時嚴(yán)格等于接收時鐘延時,然后確定數(shù)據(jù)的延時范圍,代入各參數(shù),(1)和(2)式分別變?yōu)椋?/p>
1.5-Tflt_DATA_SETTLE_DELAY_MAX-Tmargin>0
0.5+Tflt_DATA_SWITCH_DELAY_MIN-Tmargin>0
在不等式提示下,結(jié)合PCB布局實際,確定Tflt_DATA_SETTLE_DELAY_MAX<1.1;tflt_data_switch_delay_min>-0.1,剩下0.4ns的余量分配給了兩個時鐘的時差和Tmargin。在SPECCTRAQUEST中提取拓?fù)洳⑦M(jìn)行信號完整性仿真,進(jìn)而確定各段線長及拓?fù)浣Y(jié)構(gòu)。對此結(jié)構(gòu)(共12種組合)進(jìn)行全掃描仿真,得到Tflt_DATA_SETTLE_DELAY_MAX=1.0825 Tflt_DATA_SWITCH_DELAY_MIN =-0.0835004,符合確定的1.1和-0.1的范圍指標(biāo)。由此可以得出GLINK總線數(shù)據(jù)線的約束規(guī)則:①匹配電阻到發(fā)送端的延時不應(yīng)大于0.1ns;②數(shù)據(jù)線必須以0.1ns進(jìn)行匹配,即每個數(shù)據(jù)線都必須在0.65ns~0.75ns之間。有了上述的約束規(guī)則就可以指導(dǎo)布線了。
下面再考慮硬性規(guī)定 Tflt_CLKA_MIN-Tflt_CLKB_MAX=0和Tflt_CLKB_MIN-Tflt_CLKA_MAX=0帶來的影響。事先約束發(fā)送時鐘和接收時鐘完全等長(在實際操作中以0.02ns進(jìn)行匹配)在CADENCE環(huán)境下,進(jìn)行時鐘仿真,得到結(jié)果:|Tflt_CLKA_MIN-Tflt_CLKB_MAX|<0.2和|tflt_clkb_min-tflt_clka_max|<0.2??梢娏艚otmargin的余量為0.2ns。
最終的仿真結(jié)果是:① 匹配電阻到發(fā)送端的延時不應(yīng)大于0.1ns;②數(shù)據(jù)線以0.1ns進(jìn)行匹配,即每個數(shù)據(jù)線都必須在0.65ns~0.75ns之間;③發(fā)送時鐘和接收時鐘以0.02ns匹配等長;④Tmargin=0.2ns。有了上述拓?fù)浣Y(jié)構(gòu)樣板和約束規(guī)則就可以將SPECCTRAQUEST或ALLEGRO導(dǎo)入到CONSTRAINS MANAGER中。當(dāng)這些設(shè)計約束規(guī)則設(shè)置好后,就可以利用自動布線器進(jìn)行規(guī)則驅(qū)動自動布線或人工調(diào)線。
2 源同步時序關(guān)系及仿真實例
所謂源同步就是指時鐘選通信號CLK由驅(qū)動芯片伴隨發(fā)送數(shù)據(jù)一起發(fā)送,它并不象公共時鐘同步那樣采用獨立的時鐘源。在源同步數(shù)據(jù)收發(fā)中,數(shù)據(jù)首先發(fā)向接收端,經(jīng)稍短時間選通時鐘再發(fā)向接收端用于采樣鎖存這批數(shù)據(jù)。其示意圖如圖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為驅(qū)動端的建立時間,表示驅(qū)動端數(shù)據(jù)在時鐘有效前多少時間有效;Tva為發(fā)送端的保持時間,表示驅(qū)動端數(shù)據(jù)在時鐘有效后保持有效的時間;其他參量含義同前。下面以通信電路中很常見的TBI接口為例介紹源同步時序分析及仿真過程。TBI接口主要包括發(fā)送時鐘和10bit的發(fā)送數(shù)據(jù)、兩個接收時鐘和10bit接收數(shù)據(jù)。RBC0、RBC1為兩個接收時鐘,在千兆以太網(wǎng)中,這兩個時鐘頻率為62.5MHz,相差為180°,兩個時鐘的上升沿輪流用于鎖存數(shù)據(jù)。根據(jù)數(shù)據(jù)手冊的時序參數(shù),代入上式可得:
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
仿照前述分析方法:假設(shè)時鐘、數(shù)據(jù)信號線的飛行時間嚴(yán)格相等,即時鐘和數(shù)據(jù)完全匹配,然后分析它們不匹配帶來的影響。上式變?yōu)棣?/p>
1.5-Tmargin>0
1-Tmargin>0
可見,無論是建立時間還是保持時間都有很大的余量。經(jīng)過仿真,發(fā)現(xiàn)數(shù)據(jù)和時鐘完全匹配等長(以0.02ns匹配為例),仍有0.3ns的差別,即
?。烼flt_clk_min-Tflt_data_settle_delay_max<0.3
?。烼flt_data_switch_delay min-Tflt_clk_max<0.3
取Tmargin=0.5ns得到時鐘和數(shù)據(jù)的匹配為0.2ns,即數(shù)據(jù)和時鐘的長度匹配不應(yīng)超過0.2ns。
在實際仿真中首先就時鐘和數(shù)據(jù)的信號完整性進(jìn)行分析仿真,通過適當(dāng)?shù)亩私悠ヅ涞玫捷^好的接收波形。圖3是一組無源端匹配和有源端匹配時鐘線的不同仿真波形比較,從中可以看出首先進(jìn)行信號完整性仿真的必要性。
在公共時鐘同步中,數(shù)據(jù)的發(fā)送和接收必須在一個時鐘周期內(nèi)完成。同時器件的延時和PCB走線的延遲也限制了公共時鐘總線的最高理論工作頻率。故公共時鐘同步一般用于低于200MHz~300MHz的傳輸速率,高于這個速率的傳輸,一般應(yīng)引入源同步技術(shù)。源同步技術(shù)工作在相對的時鐘系統(tǒng)下,采用數(shù)據(jù)和時鐘并行傳輸,傳輸速率主要由數(shù)據(jù)和時鐘信號間的時差決定,這樣可以使系統(tǒng)達(dá)到更高的傳輸速率。筆者通過對寬帶以太網(wǎng)交換機(jī)主機(jī)和子卡板進(jìn)行信號完整性分析、時序分析及其仿真,大大縮短了產(chǎn)品的設(shè)計周期,通過分析仿真有效地解決了高速設(shè)計中出現(xiàn)的信號完整性、時序等方面的問題,充分保證了設(shè)計的質(zhì)量和設(shè)計速度,真正做到了PCB板的一次通過。主板和子卡板目前已經(jīng)通過調(diào)試,并順利轉(zhuǎn)產(chǎn)。
路由器相關(guān)文章:路由器工作原理
路由器相關(guān)文章:路由器工作原理
交換機(jī)相關(guān)文章:交換機(jī)工作原理
晶振相關(guān)文章:晶振原理
評論