|
01 Feb 2007 )
9 e4 S3 X7 ^" k: A* l, m1 ~作者:Mohit Arora, 飛思卡爾半導體印度分公司運輸與標準產品事業群, 資深設計工程師
; _7 d0 ~& \8 z8 J, [/ x$ S5 y8 ?
" Q. X7 K; r8 L5 H% _
1 a1 e, V9 [8 w/ ?在單系統晶片(SoC)設計中實現高速I/O匯流排時,如SATA II、PCI-Express(2.5至80Gb/s),滿足時序約束越來越困難。如果結合不同供應商開發的IP智慧產權功能區塊,而每個功能區塊都有不同的局部時脈和系統時脈規格,結果就是一個結構龐大的時脈樹。這樣的結果顯示,時脈扭曲與時脈週期不分軒輊,意味著時脈扭曲的影響不容忽視。另一方面,對第三方IP功能塊的系統級驗證也會帶來其他整合問題。5 ]/ D$ p- W. w- R' V. J% h
: q. W( u$ @! Y. T4 h6 W9 N
本文提出一種新的IP整合方法,即採用全局非同步、本地同步(GALS)時脈電路,用較小的時脈樹結構顯著降低SoC的功耗。用GALS還可以簡化滿足時序要求的工作,並減少對第三方IP區塊作系統級驗證的工作量。
- {5 k" q8 ~3 K! e' u& z% ]* W0 d+ R; b. b& p: Q4 G& v
7 S4 B5 K" @ K3 g
3 O0 G+ d# o) j; D& U
SoC設計中的時序問題1 V1 t! G. T& L& ~3 q( T( o
傳統SoC設計中都含有連接匯流排,有多重耦合時序域的多個IP塊。由於晶片尺寸和速度的不斷增加(按照摩爾定律),要滿足數百個IP元件組成的系統時序要求就成為重大挑戰。傳統設計方法會產生龐大的時脈樹結構,大幅增加SoC的平均功耗。
% H+ L! Q( K" {1 g% i$ V" Y$ L7 y# J0 z9 `. `$ D5 `
當時脈要求成為肇事者時,看似簡單的方案就可以完全消除時脈問題。但不幸的是,使SoC設計完全非同步化(沒有系統時脈)對今天的實際應用非常困難,原因之一是缺乏成熟的CAD工具。5 E. [8 `. \9 }
0 T: K: z9 Y3 ~5 j) q5 K此外,產品儘快推向市場的壓力也意味著SoC業必須保證能在第一時間提供矽晶片,因此設計者不得不花費最小的設計整合工作量,重用現有的IP塊。因此,自從第一個SoC設計以來,IP 整合方法實際上沒有任何變化。由於SoC的複雜度呈指數式增長,全功能驗證正在成為一個巨大的挑戰。SoC 整合商為了滿足項目時間的約束,一般不可能花時間來徹底瞭解從第三方供應商處購買的IP塊,而只對塊的整合感興趣。
. H0 p* q3 Z0 [; J9 p/ u( }0 x( n; n& L) z- T. K. c1 s
IP 塊整合的傳統方法 SoC* ^6 T6 t ^4 f) W5 A" X. B
設計者最初的設計方法是選擇能滿足應用需求的IP塊,將它們放在矽晶片上,並用一個標準的片上匯流排將它們連接起來。對於包含多個連接IP塊的數百萬閘 ASIC,今天的SoC無法圍繞單一匯流排而建立,而是要採用複雜的匯流排層次結構,使用複雜的協定和塊間的多個橋(圖1) 任何兩個IP塊之間的通訊都要透過多條匯流排,這樣為滿足時序要求而增加了大量負擔。基於匯流排的連接實際上已經擴張到了一個無法進一步縮放的極限點。
+ \4 Z2 e1 y7 {$ a0 x |3 R& p0 B9 U/ |1 C, a
在今天的環境中,SoC 設計者面臨著一個基本的悖論:使用購買的IP塊不會獲得節省時間的優點,反而要花更多時間瞭解塊的功能,來為這些塊建立邏輯和測試向量。除了處理器核心的向量以外,IP 供應商很少為設計者提供詳細的文檔。因此,設計者發現自己必須具備某種水準的應用知識,或者利用顧問資源才能理解有關 IP,從而完成這些工作。這些額外的設計與驗證負擔使現在的SoC設計專案增加了數個月時間。除了帶來更大負擔,以及專案受到資源約束以外,較多的邏輯也不可避免地降低性能,增加晶片面積,而更高的測試要求也使最終測試階段更加複雜化。
0 b) o- n6 g. Z6 d- k- J& V1 H& d
, e, N5 F) Z! u4 _# G/ A3 xCMOS 製程尺寸正在下降,按照摩爾定律,到 2016 年將達到 22 nm 等級,時脈頻率可達約 28.7 GHz。顯然,連接速度沒有跟上電晶體速度的增長。這意味著,未來電路中的線路延遲將無法忽略,並且將在確定電路最大工作頻率時扮演重要的角色。與時脈的趨勢相一致,總時脈扭曲在時脈週期中的佔有率也日益增加。
3 ~* X+ q. K6 D4 v7 q
" |& z: e/ X/ }; k4 ?所有這些問題都清楚地表明,需要有一種新的連接策略來控制設計風險:最終,高速積體電路的設計必須沒有全局時脈。這種要求可以透過下面討論的 GALS(全局非同步本地同步)電路得到滿足。
$ S$ F+ N* l; v" R! b) A4 S. A+ v
* @7 ?% b+ T& c6 s0 u$ }
+ O( d' { J; B
完全消滅時脈看來不是近期的事情,但一種新的全局非同步、本地同步方法(GALS)已經被開發出來,其中兩個同步塊之間的通訊可以非同步進行,而無需一個主時脈。
: f9 L/ \( o6 x
- }" \" ]8 i" W$ H. |# l3 u
- @$ v; v# \- m- ?8 }, {參見《國際半導體技術路線圖》(ITRS, ex. SIA),1999版,"由於時脈速度可能超過5 GHz,而晶片間的通訊要佔用5至20個以上的時脈週期,因此需要建立時脈速度等級的架構,採用本地同步和全局非同步的連接。還需要能夠處理非同步、多週期連接,以及本地同步、高效能近鄰通訊的工具。"; c7 `8 y# c+ F% ]" y" {7 [
2 l. J L4 Y4 j
: j$ W9 p7 E; W; h9 ?2 N
* `: a6 y4 U1 {+ O% H9 d4 \' S* ~8 A. U6 b7 X
圖2顯示了兩種情況,第一種是有主時脈的普通同步系統,第二種是GALS系統,GALS系統的兩個區塊透過一個交握介面相互交流。雖然每個塊有自己的局部時脈,但整個系統沒有全局時脈。
# f+ Y3 ?1 N( a$ i# v$ W2 k) v
1 P; A* t+ A' [5 K' X" l在SoC設計中,將多個時脈域整合到單只晶片中越來越困難,GALS結構有助於解決這個問題。現在的同步方案包含了低效能的設計技巧,如在雙埠SRAM上使用格雷碼(Grey code),SRAM作為不同時脈頻率邏輯塊之間的介面。透過使用非同步SoC連接(如在片上的交叉點),各個同步塊就可以在每個交叉埠上,用簡單的時脈域轉換器互相連接。時脈轉換域的運行就像同步FIFO,每個都能以所連接同步塊的速率獨立運行。2 J8 g+ ?7 q; {
/ |2 O' _: s. e2 ~* J' {7 w, W) Q
圖3顯示如何用GALS電路將IP連接到連接匯流排。圖中的IP塊完全與連接匯流排隔離。8 _! |8 s; W4 C. g
# P4 y" y& o$ N4 b" B& b
採用這種方法,同步層使用系統時脈與連接匯流排互動,並對非同步層傳輸位址、資料和其他資訊。然後非同步層採用對延遲不敏感的解碼方法(例如雙軌/m-on-n 編碼),將相同內容傳送到IP端的非同步層。由於非同步橋有效地消除了系統時脈所需龐大的時脈樹緩衝,因而就在系統時脈和IP時脈之間形成了邊界,主要效果是降低了功耗。
+ v0 _, N2 H8 d8 ], T' k. M
7 c- b4 b4 x B* g& f- o/ `! O7 @同步層可作為連接匯流排的目標,並作為非同步層的發起者,使非同步通訊看上去為透明狀態。特定的同步層實現將特別針對連接匯流排以及目標應用(例如高、低性能週邊)的功能。非同步層將同步協定訊號(位址、資料等)轉換為延遲不敏感的編碼,如m-on-n或雙軌碼,並上傳訊號。
% Y X- N5 b- }+ E% i8 p2 p+ x' v/ V
GAL的優勢7 R" |4 q' ~2 E# g0 x
使用GAL方法後,IP就完全與連接匯流排隔離開來,這樣就能實現非同步通訊與現有同步系統的整合。由於採用延遲不敏感的編碼,物理層支援通訊的線路就不必作平衡處理。與傳統的IP整合技術不同,GAL不需要龐大的時脈樹緩衝,因為IP與連接匯流排隔離。於是就節省了可觀的功耗,而這對依靠電池工作的可攜式設備是及為重要的因素。
9 v0 e# r+ E9 B& r, }9 d( Z, P9 |
, w: w( R" a- o5 H( a! S0 S: xGAL方案還意味著連接匯流排可以運行在高得多的頻率,因此增加了整個系統的性能。
$ _' L5 r% L* G( C; [9 Y+ |5 S* ~9 m$ T: F; x- [) ]% P. C# ~
最後(但並非不重要的)一點,GAL方案可以簡化IP塊的系統級驗證工作。由於IP塊完全與連接匯流排隔離,驗證可以在非同步分隔點處進行。如果是第三方預驗證過的IP,則可以完全省掉IP級驗證工作。
, K4 ?' e- K% L- K7 a( d
1 O! @# z4 V% @9 o9 C( JGAL方案的問題與不足 非同步電路通常採用鎖存式寄存器,而不用觸發器。當缺乏全局時脈時,難以將寄存器連接到掃描路徑上。這種分散式自動定時控制(缺少全局時脈)的結果,造成難以透過定義好的狀態單步追蹤電路,如此,就很難控制IDDQ測試所需的電路靜止狀態測試。IDDQ技術目前用於測試CMOS製程中常見的短路和開路故障。 U c6 J9 r& \9 ~" A
4 t" ]( ^8 d. o8 I& ]狀態保持元件的大量使用(如Muller C元件,這是非同步域中的基本元件,就像同步設計中的觸發器一樣),再加上自動定時的功能,也很難測試保持功能的回饋電路,延遲故障測試則是另一個挑戰。2 Q; Q2 L' { w, ?! E& _) }2 y
$ q. O4 o5 L2 G
GALS設計的另一個不足是,額外的非同步通訊層增加了延遲。使用GALS的成本大約是每個IP區塊增加8000至10000個閘,具體數量取決於匯流排寬度和採用的編碼方案。 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?申請會員
x
|