?
身處市場領先地位的SoC(系統單芯片)設計團隊認為,“慣常的業務”已不復重現。強大的技術與商務力量(似乎獨立于EDA供應商的路線圖)都在將SoC設計方法重新塑造為新的形式,并與僅僅幾年前的最佳實踐有非常大的差異。對很多架構師、設計者和管理者來說,這種變化會很痛苦。然而,糾結于過去就意味著失敗。
這一變化有幾種促進力量。現實的財務與地理狀況已迫使對第三方IP(知識產權)的依賴性提高,并且削弱了從下游問題到RTL(寄存器傳輸級)糾錯的反饋回路。復雜性已迫使以前下游的工作進入到設計流的早期,尤其是激進電源管理的設計產生的電源與時鐘網絡的復雜性。另外,先進工藝的挑戰也同時影響到了前端和后端的工作。
推動力
IP可能是解決方案的一部分,而不是問題的一部分。從I/O控制器到CPU的一切IP重用,可能都對設計團隊起到了驅散和縮減作用。但IP的普遍使用改變了設計流的本質。以前的流程包括:建立性能需求、將它們縮減至RTL、網表綜合,以及在單元中實現。現在,設計流程變成了一組特定的復雜、日趨固定且不透明功能塊的裝配與強制封裝的過程。當設計者在整合或封裝中遇到問題時,通常只有原始IP的開發者才能提供幫助。
雖然IP重用有助于減少設計的規模,但無助于減少復雜性的其它方面。尤其是對電源管理來說,時鐘門控是降低動態功耗的一種強制性設計步驟,但它也將SoC的時鐘網絡搞得非常復雜,因此時鐘樹實際上成為了另外的信號網絡,需要作提取、時序、電源與信號完整性收斂。電壓島、電源門控,以及DVFS(動態電壓/頻率縮放)正在進入大多數設計團隊,它們的使用很可能使電源網格更加復雜化。
最后,工藝本身也在促進著變革。盡管工藝工程師與單元庫開發者都在竭盡全力,但到65nm節點時,先進工藝的復雜性已開始穿過定制/單元的障礙,將其呈現在芯片設計者面前。Virage Logic公司技術營銷總監Lisa Minwell認為:“我們存儲編譯器的設計者已不得不去處理工藝變動、單元驅動強度不足,以及日益復雜的DFM (可制造性設計)規則問題。”采用基于單元流程的芯片設計者現在要面臨所有這些問題。這些力量的結合,不僅使設計更為困難,而且還改變了設計所依從的方案。
艱難的開始
Open-Silicon公司剛做了一個1億門的無線網絡SoC。該公司的設計采用了TSMC(臺積電公司)的65 nm CMOS工藝。Open-Silicon公司工程副總裁Taher Madraswala稱:“設計的關鍵是先期的規劃。”Open-Silicon公司在芯片的物理設計方面與ASIC設計服務公司Brite Semiconductor公司合作,采用了來自一家無晶圓半導體供應商HiSilicon公司的需求與RTL。Madraswala說,“這差不多是一個自頂向下的設計”,并指出時鐘布局對先期工作有明顯的推動作用。
Open-Silicon的工作開始于了解設計,完成風險評估。他說:“這是一個非常巨大的內核,還有一些極長的走線。因此,我們花了三天時間開會以了解時鐘結構。”對塊的布放來說,了解各個時鐘來源、使用者以及門控結構是必需的預備工作。如果團隊犯了錯誤,那時鐘的時序就幾乎沒有收斂的機會了。
Open-Silicon公司必須使用多個IP內核實例,它們基本上確定了管腳的位置,給塊的布放帶來了另一種約束。Madraswala解釋說:“問題在于可重復性。如果你改變了內核的定位方向,則關鍵走線的長度就變了,得到的時序就不同了。”于是,該團隊對頂層信號、時鐘和I/O作了一次預先布線,然后將這個布線作為設計分區以及其后各塊布放的基礎。
Redpine Signals公司主席兼首席執行官Venkat Mattela說:“現在,很難在系統級對一個設計作劃分。”他指出工程師必須在早期作電源規劃。Redpine公司的設計中有一個用于嵌入系統應用的極低功耗802.11n收發器,RTL中,模塊定義為獨立于芯片電源策略的實體。其后的模塊分區工作不僅產生了功能邊界,同時還有電壓島與時鐘域之間的邊界。因此,設計團隊可以在設計的開始,將每個RTL塊中的電源意圖(Power intent)捕捉成為一個UPF(通用電源格式)文件。
在設計早期還要注意其它一些問題。例如,Vitesse半導體公司最近開發了一款24端口的交換So C,集成了銅線PHY(物理層)塊(圖1)。該公司的設計總監Mandeep Chadra稱,在評估設計者可以做到多大集成度時,主要的工作都是看PHY塊的功耗,因為這些塊的功耗占總功耗的大部分。他說:“在整個規劃過程中,電源一直是一個主要問題,尤其是當我們的目標是一個打線封裝時。”封裝問題決不能事后才定,而要進入芯片規劃的早期決策。當不采用倒裝芯片的信號再分配層時,片芯上I/O的布局就要反映出芯片的管腳布局。在這些頻率上,芯片必然影響到將使用的電路板布局。因此,Chadra補充說,一個交換機的物理布局會直接影響到公司的平面規劃。
?
圖1. Vitesse 7427包括一個24端口交換機和MIPS處理器,集成了PHY和MAC。
在芯片規劃的初期,會出現兩個問題:電源管理策略,以及頂層的信號、時鐘與電源走線問題,而EDA供應商已對這些變化作出了回應。現在,所有大公司都有電源感知流程,鼓勵設計者在早期用標準CPF(公共電源格式)或UPF文件捕捉電源意圖,然后通過綜合、布局布線和驗證來引導實現電源管理。
供應商正越來越多地注意到設計團隊的一個需求,那就是早在設計的分區和平面規劃階段,就要擁有初始的布線信息。Mentor Graphics公司布局布線部經理Pravin Madhani認為:“在設計的早期階段,最大的意外就是堵塞。因此人們會非常早地使用自己的布局布線工具,檢查潛在的堵塞問題。”這種趨勢轉而促使布局布線工具供應商擴展了自己的工具,使之可以用于設計的初期階段。
意外的堵塞問題會產生高昂的后果。Open-Silicon的Madraswala稱:“我們一系列塊都遭遇了堵塞問題。我們必須返回去,重寫RTL來解決這些問題。”這就要對那些塊再走一遍驗證、設置和綜合過程。而Open-Silicon則是從頭建立一個通向HiSilicon的RTL設計的快速反饋路徑,方法是在中國的HiSilicon公司派駐了一個六人設計團隊。
第三方IP的堵塞意外可能更糟。例如,IP供應商缺乏資源,不能按你的時間表修改RTL,或者堵塞是出現在一個硬IP塊的管腳處。在最差情況下,SoC團隊可能不得不更換IP供應商。于是,使設計分區和布局與功率策略保持一致,并且擁有一個頂級布線的早期視圖,就成為了任務關鍵的問題。
綜合與驗證
Open-Silicon、Vitesse和Redpine的設計團隊并不認為綜合是一個大問題。他們更關注如何避免重復地做綜合。Madraswala說:“我們把每個RTL塊看成像是一個獨立的片芯。然后我們在一個足夠高的結果品質上,關注每個塊在流程中的每個步驟。這樣的結果可能是,在時鐘插入后,我們只要做一次綜合。”Open-Silicon使用自己的綜合工具,自動地插入時鐘門控。另外,Madraswala稱,在架構級的配置用于處理芯片的電源管理。“存在著電源島,但是,由于電源管理已通過RTL成為顯式的,因此我們不需要像CPF一類的東西。”同樣,Vitesse的設計使用了大量的時鐘門控,但只有一個電源門控的塊,而Chadra報告稱普通綜合流程中沒有問題。
但是,Redpine采用了一種更積極的電源管理策略,使工具更加復雜。這種方案已影響到了設計流程(圖2)。Mattela稱,原則上,如果你正確地組織了RTL,并精確地捕捉了自己的電源意圖,就應該能將RTL、UPF和電源感知庫送入綜合步驟,并且獲得一個包含全部已就位絕緣體、電平轉換器以及控制的網表。但他傷心地說,現實中,“你按了按鍵,可什么事也沒發生。”結構上一切完美無誤,但如果用電壓感知工具做一次詳細的手工驗證,就會發現完全不同的情況。
?
圖2. Redpine公司的方法包括對電源意圖的早期捕獲,以及對實現的后期檢查。
驗證似乎采用了不同于綜合的新次序。隨著復雜性的增加,功能驗證開始得更早,在一個更抽象的層級。Vitesse的Chadra稱:“我們采用一種基于覆蓋的OVM(開放驗證方法)方案”。在24端口交換核心與MIPS CPU核心的性能模型中,設計早期啟動了該過程,以了解芯片在有流量情況下的動態性能。然后繼續對更多細節作驗證,直到時鐘門控電路和絕緣體就位,測試平臺驅動門級模型。Chadra說:“根據我們的需求文檔,我們的驗證計劃中有特定的目標。我們會隨著代碼覆蓋的程度而增加這些目標,指導驗證工作。”
Redpine的Mattela稱,該公司的DVFS設計需要特別小心。部分問題源于邏輯仿真器,因為它并不能說明,信號電平的一個失配是否會對電壓島之間的一根路徑造成毀滅性破壞。于是,Redpine的驗證工程師求助于手工技術,如強制某節點為三態,看下游會發生什么。Mattela警告說,一部分問題是你永遠不知道正在使用的模型的來源。他表示:“不要信任處于多電壓狀況下的那些模型。你不知道它們的編寫者是電子工程師還是軟件人員,后者認為一就是一,零就是零。”
后端流程
現在,你需要考慮物理設計階段了:布局、布線和設計收斂。在這個階段,IP重用的影響以及設計復雜性都開始減弱,但無論如何也不會消失。而先進工藝的挑戰為每個步驟都投下了更強的陰影。首先是好消息:設計經理似乎認為工具已經接管了很多不久前還要手工完成的新任務,實現了自動化。Madraswala稱Open-Silicon可以利用IC Compiler感知DFM的優點,幫助準備那些工藝強制要求的復雜設計規則。Mattela稱:“幾年前,一個電源管理設計在出帶前的一切工作都要手工完成。現在,我們已經有了很大改進,尤其是在布線后的驗證方面。”
然而,變化的力量仍會帶來問題。一個問題很簡單:新任務促生新工具,而新工具通常是有問題的。Chadra稱:“比方說,有些point工具就不成熟。”工具的能力是一個更普遍的問題。他解釋說:“我們必須對設計作分區,用工具運行每個部分。所幸,大多數芯片都可劃分為非常自然的分段。最大的挑戰是讓交換通過布局布線。”
Madraswala也提到了布局布線能力。他說:“當在IC Compiler中打開DFM感知能力時,設計規模就受到了很大限制。我們被限制在大約40萬個可放置實例,”這是要通過小針眼驅動一個1億門設計。
能力并非布局布線工具的唯一問題。現代布線器都能感知時序,即它們不僅嘗試為每根線尋找最可能的路徑,還能讀取設計的時序約束,嘗試使所有網表的布放都滿足時序要求。這個過程要求工具能夠評估一個建議走線的延遲,也就是評估走線的電容。因此,現代布線工具要么調用簽核提取工具,但這可能慢到無法使用,要么擁有內置“快速而粗略”的提取評估器。不幸的是,即使在65 nm工藝節點上,對于那些不知道快速近似法的情況,寄生提取都是一項復雜的工作。Madraswala說:“IC Compiler與現實之間有差異。”
Chadra的情況也好不了多少。他說:“布線器的電容評估并不十分精確,”但未聲明指的是哪款布局布線工具。“我們的工具拐了不少大彎,不得不返回,重新布線。”
時序估計問題也使EDA供應商進入困境。如果布線器的快速電容評估不良,則物理系統設計者就會遇到提取、時序和重新布線等循環工作。如果布線器調用簽核提取與時序工具,則運行時間和能力都是問題,因為這些工具必須應付所有精細尺度的效應,情況會變得更加復雜。
在這些芯片設計完成后,Cadence和Synopsys都宣布了第三種可能的方案:將初期布局與時序移入綜合工具,甚至是在設計流程的更早期。這樣,評估并不會改善,但工具設計者顯然是不希望綜合工具再去創建那些布線器會作出錯誤評估和錯誤布線的網表。
在布線器與設計規則中也存在著類似的問題。如果布線器在工作時沒有遵循設計規則,則最終文件中就會出現很多違反規則情況。因此,布線器會從LEF(布局交換格式)文件中提取出設計規則,并在布線時檢查走線。這一過程對65nm節點的數字電路有滿意的工作效果。不過,Mentor Graphics公司的Madhani警告說,LEF不能表述先進工藝中的某些規則,如收縮(pinch)規則。于是Mentor現在讓自己的Olympus布線器動態地調用Calibre用于DRC的簽核工具。同樣,這種方案也帶來了性能成本,但慢點總好于出錯。
還有意外情況,在經過了所有前端工作后,電源域和第三方IP也會給后端設計帶來一些問題。ASIC供應商Global Unichip公司營銷總監Keh-Ching Huang說:“多電源域會導致一種復雜的收斂。我們不得不使用大量的手工過程和腳本。”Huang稱甚至IP的選擇也會影響收斂流。“例如,如果某個客戶使用了一個低速DDR接口,則IP塊一般為軟形式,我們必須對其作綜合。塊內將有時序收斂問題。但如果客戶獲得的是一個高速DDR接口許可,則它的形式是硬IP,這樣整個收斂過程就完全不同了。如果有問題,一般都是在封裝內。”總之,如果一個設計包含主要來自外部的IP,則其對設計收斂的影響仍是一個有待探討的問題。
最后一點是新環境對模擬設計的影響。Vitesse為此項目重新設計了自己的銅PHY,修改了以前的設計以降低功耗。在過程中,模擬設計者遇到了一系列布局驅動的效應,它們在65 nm工藝中是新出現的。Chadra稱:“我們了解到,阱鄰近與耗盡布放都影響著器件的性能。器件模型對這些效應的建立工作還算不錯,但我們仍然要做重復的布局提取,才能讓電路像我們需要的那樣工作。”
那么,整體上如何呢?顯然,今天的SoC設計需要更多的前期規劃,尤其要處理長走線、時鐘和電源管理策略。預先的驗證規劃也很重要。設計團隊應懂得,很多東西都進入了綜合工具。這個步驟不再是標準單元Verilog語句的一個簡單替代。因此,設計團隊應做好計劃,盡量減少綜合工具的重復,尤其是當那些難處理的結構已到位時,如門控的時鐘樹和測試掃描鏈。同樣,設計團隊應知道,過分的電源管理會使驗證大大復雜化,這種考慮可能表明,選擇一種更漸進的電源管理策略優于一種復雜的策略。
最后,物理設計與收斂正在變得更困難。選擇前端工具或開發腳本,防止早期出現堵塞問題。對布線與簽核工具之間的迭代作出規劃,因為它們可能互不認同。對基礎結構,流程可能與以往相同。但重點正在轉移。Madraswala說:“本設計中大約60%的步驟都與過去一樣。約30%或40%是針對65 nm的,但正是這些步驟是大部分問題的根源。”
評論
查看更多