1 滿(mǎn)足接收端芯片的建立,保持時(shí)間的必要性 在高速數字電路設計中,由于趨膚效應、臨近干擾、電流高速變化等因素,設計者不能單純地從數字電路的角度來(lái)審查自己的產(chǎn)品,而要把信號看作不穩定的模擬信號。采用頻譜分析儀對信號分析,可以發(fā)現,信號的高頻譜線(xiàn)主要來(lái)自于信號的變化沿而不是信號頻率。例如一個(gè)1MHz的信號,雖然時(shí)鐘周期為1微秒,但是如果其變化沿上升或下降時(shí)間為納秒級,則在頻譜儀上可以觀(guān)察到頻率高達數百兆赫茲的譜線(xiàn)。因此,電路設計者應該更加關(guān)注信號的邊沿,因為邊沿往往也就是信號頻譜最高、最容易受到干擾的地方。 在同步設計中,數據的讀取需要基于時(shí)鐘采樣,根據以上分析,為了得到穩定的數據,時(shí)鐘的采樣點(diǎn)應該遠離數據的變化沿。 圖1是利用時(shí)鐘CLK的上升沿采樣數據DATA的示例。DATA發(fā)生變化后,需要等待至少Setup時(shí)間(建立時(shí)間)才能被采樣,而采樣之后,至少Hold時(shí)間(保持時(shí)間)之內DATA不能發(fā)生變化。因此可以看出,器件的建立時(shí)間和保持時(shí)間的要求,正是為了保證時(shí)鐘的采樣點(diǎn)遠離數據的變化沿。如果在芯片的輸入端不能滿(mǎn)足這些要求,那么芯片內部的邏輯將處于非穩態(tài),功能出現異常。 2 時(shí)序分析中的關(guān)鍵參數 為了進(jìn)行時(shí)序分析,需要從datasheet(芯片手冊)中提取以下關(guān)鍵參數: ● Freq:時(shí)鐘頻率,該參數取決于對芯片工作速率的要求! ● Tcycle:時(shí)鐘周期,根據時(shí)鐘頻率Freq的倒數求得。Tcycle=1/Freq! ● Tco:時(shí)鐘到數據輸出的延時(shí)。上文提到,輸入數據需要采用時(shí)鐘采樣,而輸出數據同樣也需要參考時(shí)鐘,不過(guò)一般而言,相比時(shí)鐘,輸出的數據需要在芯片內延遲一段時(shí)間,這個(gè)時(shí)間就稱(chēng)為T(mén)co。該參數取決于芯片制造工藝! ● Tsetup(min):最小輸入建立時(shí)間要求! ● Thold(min):最小輸入保持時(shí)間要求。 除以上五個(gè)參數外,時(shí)序分析中還需要如下經(jīng)驗參數: ● Vsig:信號傳輸速度。信號在電路上傳輸,傳輸速度約為6英寸/納秒。 時(shí)序計算的目標是得到以下兩個(gè)參數之間的關(guān)系: ● Tflight-data:數據信號在電路板上的走線(xiàn)延時(shí)。 ● Tflight-clk:時(shí)鐘信號在電路板上的走線(xiàn)延時(shí)。 以上參數是進(jìn)行時(shí)序分析的關(guān)鍵參數,對于普通的時(shí)序分析已經(jīng)足夠。 3 源同步系統的時(shí)序計算 源同步系統指數據和時(shí)鐘是由同一個(gè)器件驅動(dòng)發(fā)出的情況,下圖是常見(jiàn)的源同步系統拓撲結構: 該系統的特點(diǎn)是,時(shí)鐘和數據均由發(fā)送端器件發(fā)出,在接收端,利用接收到的時(shí)鐘信號CLK采樣輸入數據信號DATA。 源同步系統的時(shí)序計算公式為: TCO(max) + (Tflight-data - Tflight-clk)MAX + Tsetup(min) CO(min) + (Tflight-data - Tflight-clk)MIN > Thold(min) (式2) 時(shí)序計算的最終目標是獲得Tflight-data - T flight-clk的允許區間,再基于該區間,通過(guò)Vsig參數,推算出時(shí)鐘信號和數據信號的走線(xiàn)長(cháng)度關(guān)系。 4 SPI4.2接口時(shí)序分析 SPI4.2(System Packet Interface Level4, Phase 2)接口是國際組織OIF制定的針對OC192(10Gbps)速率的接口。目前廣泛應用在高速芯片上,作為物理層芯片和鏈路層芯片之間的接口。SPI4.2的接口定義如下: SPI4.2接口信號按照收、發(fā)方向分為兩組,如圖3中,以T開(kāi)頭的發(fā)送信號組和以R開(kāi)頭的接收信號組。每組又分為兩類(lèi),以發(fā)送信號組為例,有數據類(lèi)和狀態(tài)類(lèi),其中數據類(lèi)包含TDCLK、TDAT[15:0],TCTL,狀態(tài)類(lèi)包含TSCLK,TSTAT[1:0]。 其中,狀態(tài)類(lèi)信號是單端LVTTL信號,接收端利用TSCLK的上升沿對TSTAT[1:0]采樣,方向為從物理層芯片發(fā)往鏈路層芯片;數據類(lèi)信號是差分LVDS信號,接收端利用TDCLK的上升沿與下降沿對TDAT[15:0]和TCTL采樣,即一個(gè)時(shí)鐘周期進(jìn)行兩次采樣,方向為從鏈路層芯片發(fā)往物理層芯片。 由于接收信號組與發(fā)送信號組的時(shí)序分析類(lèi)似,因此本文僅對發(fā)送信號組進(jìn)行時(shí)序分析。 在本設計中,采用Vitesee公司的VSC9128作為鏈路層芯片,VSC7323作為物理層芯片,以下參數分別從這兩個(gè)芯片的Datasheet中提取出來(lái)。 ● 狀態(tài)類(lèi)信號的時(shí)序分析 對狀態(tài)類(lèi)信號,信號的流向是從物理層芯片發(fā)送到鏈路層芯片。 第一步,確定信號工作頻率,對狀態(tài)類(lèi)信號,本設計設定其工作頻率和時(shí)鐘周期為: Freq=78.125MHz; Tcycle = 1/ Freq = 12.8ns; 第二步,從發(fā)送端,即物理層芯片手冊提取以下參數: -1ns < Tco < 2.5ns; 第三步,從接收端,即鏈路層芯片手冊提取建立時(shí)間和保持時(shí)間的要求: Tsetup(min) = 2ns; Thold(min) = 0.5ns; 將以上數據代入式1和式2: 2.5ns + (Tflight-data - Tflight-clk)MAX + 2ns < 12.8ns -1ns + (Tflight-data - Tflight-clk)MIN > 0.5ns 整理得到: 1.5ns < (Tflight-data - Tflight-clk) < 8.3ns 基于以上結論,同時(shí)考慮到Vsig = 6inch/ns,可以得到如下結論,當數據信號和時(shí)鐘信號走線(xiàn)長(cháng)度關(guān)系滿(mǎn)足以下關(guān)系時(shí),狀態(tài)類(lèi)信號的時(shí)序要求將得到滿(mǎn)足:TSTAT信號走線(xiàn)長(cháng)度比TSCLK長(cháng)9英寸,但最多不能超過(guò)49.8英寸。 ● 數據類(lèi)信號的時(shí)序分析 對數據類(lèi)信號,信號的流向是從鏈路層芯片發(fā)送到物理層芯片。 第一步,確定信號工作頻率,對數據類(lèi)信號,本設計設定其工作頻率為: Freq=414.72MHz; 與狀態(tài)類(lèi)信號不同的是,數據類(lèi)信號是雙邊沿采樣,即,一個(gè)時(shí)鐘周期對應兩次采樣,因此采樣周期為時(shí)鐘周期的一半。采樣周期計算方法為: Tsample = 1/2*Tcycle = 1.2ns; 第二步,從發(fā)送端,即鏈路層芯片手冊提取以下參數: -0.28ns < Tco < 0.28ns; 第三步,從接收端,即物理層芯片資料可以提取如下需求: Tsetup(min) = 0.17ns; Thold(min) = 0.21ns; 將以上數據代入式1和式2,需特別注意的是,對數據類(lèi)信號,由于是雙邊沿采樣,應采用Tsample代替式1中的Tcycle: 0.28ns + (Tflight-data- Tflight-clk)MAX + 0.17ns < 1.2ns -0.28ns + (Tflight-data- Tflight-clk)MIN> 0.21ns 整理得到: 0.49ns < (Tflight-data - Tflight-clk) < 0.75ns 基于以上結論,同時(shí)考慮到Vsig = 6inch/ns,可以得到如下結論,當數據信號和時(shí)鐘信號走線(xiàn)長(cháng)度關(guān)系滿(mǎn)足以下關(guān)系時(shí),數據類(lèi)信號的時(shí)序要求將得到滿(mǎn)足:TDAT、TCTL信號走線(xiàn)長(cháng)度比TDCLK長(cháng)2.94英寸,但最多不能超過(guò)4.5英寸。 5 結論 高速電路中的時(shí)序設計,雖然看似復雜,然而只要明晰其分析方法,問(wèn)題可以迎刃而解。 |