編者按:隨著芯片整合度和規模的不斷提高,在設計各個層次上所需執行的驗證也相應增多,DRC和版圖與電路圖(LVS)的對比檢查變得越來越重要,它對於消除錯誤、降低設計成本和減少設計失敗的風險具有重要作用,本文介紹了基於Calibre工具的DRC和LVS驗證方法。 一般地說,SoC芯片中包含了幾個乃至幾十個IP核。在本文提到的系統單芯片(SoC)中,除了采用了三個廠家的IP硬核外,還自行設計開發了十余個IP硬核。在SoC芯片開發的實際商業應用中,O計方購買的是IP硬核在一個產品中的使用權。IP硬核供貨商為了保護自己的版權,通常不會將其IP硬核的實體版圖用GDSII格式交給用戶。他們所提供的只是IP硬核的幾個框圖和引出端的位置和屬性。這就帶來一個問題,在進行SoC芯片的版圖設計驗證時,最重要的問題是驗證工具必須能讓用戶進行'層次化'驗證。即用戶可以把他們完成版圖設計後的SoC分成若干模塊或者區域,對他們進行多層次的驗證。 在集成電路從ASIC進入到SoC階段(當然在SoC階段中ASIC還是會存在下去的)的時候,這種可以進行'層次化'版圖驗證的工具就顯得十分必要。甚至可以說,不具備'層次化'驗證功能的工具,是無法用於SoC芯片的版圖設計驗證的。本文首先介紹Calibre軟件所具備的'層次化'驗證功能,然後說明其在對SoC芯片進行版圖設計驗證時就所發揮的作用。
Calibre DRC簡介 目前,Calibre工具已經被眾多設計公司、單元庫和IP開發商、晶圓代工廠采用為深次微米集成電路的實體驗證工具。Calibre具有先進的分層次處理功能,是唯一能在提高驗證速率的同時,可最佳化重復設計層次化的實體驗證工具。 Calibre DRC用於版圖的設計規則檢查,具有高效能、高容量和高精密度,還具有足夠的彈性,即便是系統芯片包含有設計方法差異極大的模擬與數字電路,也可以方便地進行驗證。具體表現在以下幾個方面: (1) 檢查內容豐富准確:既包括簡單的DRC規則檢查,如寬度、間距、包含關系等的檢查,又包括一些復雜的DRC檢查,如天線規則、電流流向規則和導線密度規則等。本公司所設計SoC為數字模擬混合電路,采用Calibre DRC除進行了寬度、間距、包含關系等簡單的DRC檢查外,也進行了一些復雜的DRC檢查。其結果得到了台積電等晶圓廠的認可。 (2) 檔執行方式可選:執行DRC檔時,可以采用命令行的方式,也可以采用圖形接口方式,Calibre Interactive-DRC是Mentor Graphics公司推出的Calibre實體驗證的新版本(Calibre Interactive),它已作為Cadence Design Systems公司全定制設計環境Virtuoso的插件。現在,Virtuoso的用戶能夠直接從Virtuoso中調用Calibre Interactive進行工作。對於規模較小的版圖應用Interactive非常方便而且直觀的圖形化接口便於初學者使用。在我們的計劃開發過程中,同時用到了這兩種方式。對於全定制版圖,經常要選用圖形接口工具Calibre Interactive-DRC,對於自動布局布線出來的SoC版圖,我們采用了命令行的形式,可以快速地得到DRC檢查報告。 (3) 結果浏覽快捷方便:透過Calibre RVE(Results Viewing Environment,驗證結果視圖環境)和版圖編輯器分析DRC的結果進行查錯,准確快捷,一目了然。RVE可以指出錯誤類型和數目,使用Highlight命令可以直接標明版圖中的出錯地方(圖2),可以很方便地修正版圖中的錯誤。無論是規模不大的模擬電路,還是大規模的SoC電路,其DRC檢查都可以透過啟動RVE,對照版圖和分析DRC結果檔,可以快速修改錯誤或進行最佳化。 RVE能夠同常見的版圖環境實現自動整合,這些版圖環境包括:Mentor Graphics的Calibre DESIGNrev和IC Station以及Cadence的Virtuoso和Seiko,Avant!的Apollo和Enterprise等工具。在我們的設計中使用的是Virtuoso。 (4) 多執行緒能力:Calibre的多執行緒技術(CalibreMT)提供多CPU環境下的傑出性能。Calibre幾何劃分版圖層次化使之成為上千個獨立的'執行緒'支持多處理器工作站或者服務器應用,每一個執行緒可以在獨立的處理器上執行,這樣的結構對性能的提高是巨大的。簡單的'turbo'命令行選項就可以實現高性能的CalibreMT的調用,而不需要任何輔助文件或者設置約束信息的支撐。CalibreMT支持多CPU高度靈活的結構並且不會導致RAM的大量增加。
Calibre LVS簡介 Calibre LVS是一個出色的版圖與線路圖對比檢查工具,具有高效率、高准確度和大容量等優點。Calibre LVS不僅可以對所有的'組件'進行驗證,而且還能在不影響性能的條件下,處理無效數據。主要表現在以下幾個方面: (1) 執行模式快捷方便:Calibre LVS有兩種執行模式,即命令行模式和接口模式(Calibre Interactive-LVS)。采用命令行模式可以快速輸入控制命令,快速執行,其結果精確穩定。Calibre Interactive-LVS能夠自動選擇驗證正被編輯的單元,並且能夠選擇所有的Calibre執行時間選項以及標准文件的規格。該驗證技術,允許用戶選擇特定標准文件以及獨立規則和規則組的任何子集。GUI可控制普通使用的LVS選項,並記錄執行設置過程。當采用修改控制或凍結標准檔時,它可將執行配置數據傳給Calibre。其接口友好,使用方便。我們在做LVS過程中,對於規模較小的模擬電路和數字模擬混合電路,一般采用方便的圖形接口模式(Calibre Interactive-LVS)進行對比檢查,這樣可以在啟動RVE後,對照LVS結果文件和版圖,將電路(或者網表)和版圖直接對應起來檢查,非常方便;對於大規模的SoC電路,由於命令行方式輸入簡單直接,執行速度更快,執行結果穩定精確,這次就采用了命令行方式來執行LVS,獲得了極大的成功。 (2) 多種比較方式可選:Calibre LVS可以進行版圖與電路圖(layout vs shematic)和網表與網表(netlist vs netlist)的方式對比檢查,還可以單獨從版圖撷取網表。而且,透過v2lvs命令,可以將自動布局布線所產生的verilog網表轉換成spice網表,然後與自動布局布線的版圖進行對比,作業簡單方便,結果精確。由此可見,可以根據不同需要,在LVS驗證過程的不同階段,靈活地選擇比較方式,以獲得最有效的執行和最佳的結果。 (3) 偵錯方便快捷:當執行完LVS後,Calibre LVS會產生一個結果報告,明確指出出錯類型和數目,並且可以對層次化中的每個模塊都有一個完整的LVS報告,簡單明了。這個報告還能明確指出短路(特別是電源和地短路的情況)、開路、浮空或孤立的nets、pin swapping以及軟連接等問題。Calibre LVS還能產生一個詳細的結果數據庫,其中包括原理圖網表、從版圖抽取的網表、結果報告、版圖中的組件及連接關系等。這樣透過RVE來讀取這些數據,就可以在版圖和網表中准確地Highlight有錯誤的地方(圖1)。 由此可見,Calibre LVS所產生的結果文件結構清晰,又可以透過RVE來准確定位,能有效地幫助用戶快速地消除錯誤以降低設計風險,這在我們計劃的開發過程中得到了完全的體現。由於時間緊迫,致使後端設計時間相當緊張,正是Calibre LVS能准確無誤、快速地查出短路、開路、浮空或孤立的網絡、接腳、軟連接等問題,還能很好地識別晶體管、閘級電路和模塊級電路,才使得我們按時地完成了百萬閘級的信息安全SoC的設計。 在反復使用Calibre LVS的圖形接口的執行方式和命令行方式過程中,發現Calibre LVS圖形接口的執行方式方便快捷,但是其穩定性不如命令行方式好,若能加以改進,則能進一步提高驗證精准度。 相關連接 高速系統訊號完整性設計工具的選擇策略 http://www.eettaiwan.com/ART_8800326563_617717,681522.HTM.f56505fa 可測試性設計與EDA技術 http://www.eettaiwan.com/ART_8800326568_617717,681522.HTM.aed4690d 利用FPGA的多頻率設計策略 http://www.eettaiwan.com/ART_8800326567_617717,681522.HTM.a5c664a9
本文小結 Calibre工具作為ASIC特別是SoC的實體驗證工具,正成為設計公司的設計與半導體制造公司交接的標准框架。Calibre DRC和Calibre LVS使用方式靈活快捷,驗證准確精密度高,結果浏覽一目了然;加上Mentor Graphics公司能及時提供高水平的技術支持,因而可以快速地消除錯誤,降低設計成本,減少設計失敗的風險。