專利名稱:針對門輸出負載的快速且準確的估計的制作方法
技術領域:
本發明的實施例涉及電路仿真器和電路分析。更具體而言,本發明的實施例涉及
一種用于估計邏輯門上的輸出負載的技術。
背景技術:
在電路仿真或者時序分析中,邏輯門的一個或者更多個電特性可以是它的輸出負 載的函數。例如,包括驅動器和接收器的分級的延遲是接收器門的輸入電容的函數,該輸入 電容又是在接收器門的輸出處的有效電容(Ceff)的函數。因而,如果準確地確定Ceff,則 可以對邏輯門的延遲準確地進行建模。 然而,準確地確定Ceff通常涉及到使用迭代計算技術以與互連寄生分量關聯的 極點和零點為基礎的費時的具體計算。 在一種解決這一問題的嘗試中,現有電路仿真軟件包括針對Ceff的近似。例如, 用于輸出負載的零電容和總電容(Ctotal)用來在電路仿真中限定Ceff的最小值和最大 值。然而,這些極值常常造成分別過于保守或者過于樂觀(即過大或者過小)的仿真延遲。
因此,需要一種對Ceff進行近似而無上述問題的仿真技術。
發明內容
本發明的一個實施例提供一種用于分析在分級中電耦合到輸出網絡的邏輯門的 電特性的計算機系統。在分析期間,計算機系統計算用于輸出網絡的有效電容,其中有效電 容對應于輸出網絡的總電阻、輸出網絡的總電容和輸出網絡的幾何參數。然后,計算機系 統至少部分地基于有效電容和向邏輯門施加的電信號的轉換速率來確定邏輯門的電特性。
注意,電特性可以包括邏輯門的輸入電容、串擾信號的對準、分級直至邏輯門的 延遲和/或與分級直至邏輯門關聯的轉換。 另外,總電阻可以是輸出網絡中的電阻之和;總電容可以是輸出網絡中的電容之 和;而幾何參數可以包括輸出網絡的扇出計數。 一般而言,幾何參數可以包括輸出網絡的拓 撲信息,比如輸出網絡中的支路數目。因此,在一些實施例中,計算有效電容包括對輸出網 絡中的不同支路的有效電容進行計算和合并,其中給定支路的有效電容對應于給定支路的 總電阻、給定支路的總電容和給定支路的幾何參數 另外,有效電容可以對應于總電阻和總電容的乘積除以幾何參數的比值。在一些 實施例中,使用作為比值的函數的有效電容的極值之間的分段線性關系計算有效電容。
此外,確定電特性可以包括根據有效電容和其它參數(例如在邏輯門的輸入處的 轉換速率)在電特性值的預定表中進行查找。 在一些實施例中,計算機系統對一組串聯耦合的分級進行計算和確定操作以計算 該組分級的路徑延遲。 另一實施例提供一種可以由計算機系統實現的用于分析邏輯門的電特性的方法。 這一方法可以包括至少一些先前操作。
另一實施例提供一種用于與計算機系統結合使用的計算機程序產品。這一計算機 程序產品可以包括與至少一些先前操作對應的指令。 另一實施例提供一種用于分析邏輯門的電特性的集成電路。這一電路可以被配置 成進行至少一些先前操作。
圖1是根據本發明一個實施例示出了在設計和制作集成電路時的各種操作的流 程圖。 圖2A是根據本發明一個實施例示出了在分級中電耦合到輸出網絡的邏輯門的框 圖。 圖2B是根據本發明一個實施例示出了針對輸出網絡有近似的圖2A分級的框圖。 圖3是根據本發明一個實施例示出了用于分析邏輯門的電特性的方法的流程圖。 圖4是根據本發明一個實施例示出了邏輯門的有效電容的曲線圖,該有效電容是
輸出網絡的總電阻與輸出網絡的總電容的乘積除以輸出網絡的扇出計數的函數。 圖5是根據本發明一個實施例示出了分析邏輯門的電特性的計算機系統的框圖。 圖6是圖示了根據本發明一個實施例的數據結構的框圖。 圖7是圖示了根據本發明一個實施例的數據結構的框圖。 注意相似標號在附圖中通篇指代對應部分。
具體實施例方式
呈現以下描述以使本領域技術人員能夠實現和利用本發明,并且在特定應用及其 要求的背景下提供該描述。本領域技術人員將容易清楚對公開的實施例的各種修改,并且 這里限定的一般原理可以適用于其它實施例和應用而不脫離本發明的精神實質和范圍。因 此,本發明不限于所示實施例而是將被賦予以與這里公開的原理和特征一致的最廣范圍。
描述一種計算機系統、方法、集成電路和用于與該計算機系統一起使用的計算機 程序產品(即軟件)的實施例。這些設備和技術可以用來分析在分級中電耦合到輸出網絡 的邏輯門的電特性。具體而言,在分析期間,將耦合到邏輯門的輸出網絡的有效電容(Ceff) 近似為輸出網絡的總電阻、輸出網絡的總電容和輸出網絡的幾何參數的函數。例如,可以將 Ceff近似為總電阻與總電容的乘積與輸出網絡的扇出計數的比值的函數。使用Ceff和其 它參數(比如向邏輯門的輸入施加的電信號的轉換速率(slew rate))來確定邏輯門的電 特性,比如輸入電容。 另外,使用這一分析技術來確定針對Ceff的準確近似可以比現有分析技術耗費 更少時間。此外,這一分析技術將Ceff建模為容易獲得的互連參數的函數。以這一方式, 這一分析技術可以提供針對邏輯門的更快且更準確的電特性仿真和時序分析。
現在描述設計和制作集成電路或者芯片的實施例。圖1示出了在設計和制作集成 電路時的各種操作的流程圖。這一過程開始于產品想法(110)的生成,其在使用電子設計 自動化(EDA)軟件(112)的設計過程中實現。當設計定稿時,可以對它進行流片(134)。在 流片之后,制作(136)半導體管芯且進行封裝和組裝工藝(138),最終產生成品芯片(140)。
注意,使用EDA軟件(112)的設計過程包括下文描述的操作114-132。這一設計流程描述僅用于示例目的。特別是,這一描述并非為了限制本發明。例如,實際集成電路設計 可以要求設計者在與這里描述的序列不同的序列中進行設計操作。 在系統設計(114)期間,設計者描述將要實施的功能。他們也可以進行假設分析 (what-if)規劃以細化功能并且檢驗成本。注意硬件-軟件架構劃分可以出現在這一階段。 可以在這一階段使用的來自加利福尼亞州芒廷維尤市Synopsys公司的示例EDA軟件產品
包括Modei Architect 、 Saber 、 System Studio⑧禾口' Designware⑧產品 然后,在邏輯設計和功能驗證(116)期間,編寫用于電路中的模塊的VHDL或 者Verilog代碼,并且檢驗該設計的功能準確性。更具體而言,檢驗該設計以保證它產 生正確輸出。可以在這一階段使用的來自加利福尼亞州芒廷維尤(Mountain View)市
Synopsys公司的示例EDA軟件產品包括VCS 、 Vera 、 Designware 、 Magellan 、 Formality 、 ESP⑧和Leda⑧產品。 接著,在合成和可測性設計(118)期間,將VHDL/Verilog轉譯成網表。可以 針對目標技術優化網表。此外,可以設計和實施測試以檢驗成品芯片。可以在這一 階段使用的來自加利福尼亞州芒廷維尤市Synopsys公司的示例EDA軟件產品包括
Design Compiler 、 Physical Complier 、 Test Compiler 、 Power Compiler 、 fpga Compiler 、 Tetramax⑧和Designware⑧產品。 另外,在網表驗證(120)期間,檢驗網表與時序約束的相符性和與VHDL/Verilog 源代碼的對應性。可以在這一階段使用的來自加利福尼亞州芒廷維尤市Synopsys公司的
示例eda軟件產品包括Formality 、 PrimeTime⑧和VCS⑧產品。 另外,在設計規劃(122)期間,構造并分析用于芯片的整個布圖規劃以便進行定 時和頂層布線。可以在這一階段使用的來自加利福尼亞州芒廷維尤市Synopsys公司的示
例eda軟件產品包括Astro⑧和icCompiler⑧產品。 此外,在物理實現(124)期間,進行布置(對電路元件的定位)和布線(對電路元 件的連接)。可以在這一階段使用的來自加利福尼亞州芒廷維尤市Synopsys公司的示例
eda軟件產品包括Astro⑧和ic Compiler⑧產品。 然后,在分析和提取(126)期間,在晶體管級驗證電路功能,這允許細化。可以在 這一階段使用的來自加利福尼亞州芒廷維尤市Synopsys公司的示例EDA軟件產品包括
Astrorail 、 Primerail 、Primetime⑧和star RC/XT⑧產品。 接著,在物理驗證(128)期間,檢驗設計以保證制造、電問題、光刻問題和電路的 正確性。可以在這一階段使用的來自加利福尼亞州芒廷維尤市Synopsys公司的示例EDA
軟件產品包括Hercules⑧產品。 另外,在分辨率增強(130)期間,進行對布局的幾何形狀操控以提高設計的可制 造性。可以在這一階段使用的來自加利福尼亞州芒廷維尤市Synopsys公司的示例EDA軟
件產品包括Proteus⑧、Proteus⑧AF和PSMGED⑧產品。 此外,在掩膜數據預備(132)期間,提供用于產生掩膜以產生成品芯片的"流片" 數據。可以在這一階段使用的來自加利福尼亞州芒廷維尤市Synopsys公司的示例EDA軟 件產品包括CATS⑧系列產品。 可以在一個或者更多個上述階段期間利用本發明的實施例。具體而言,在一些實施例中,可以在系統設計(114)和/或邏輯設計和功能驗證(116)期間利用本發明。
現在描述一種用于分析或者計算邏輯門的電特性的技術的實施例。圖2A呈現了 圖示分級200的框圖,該分級包括驅動器210,電耦合到網絡212,該網絡又電耦合到邏輯 門214(該邏輯門常稱為接收器門)。例如,邏輯門214可以是模擬電路、數字電路或者混合 信號電路中的NAND或者NOR門。 一般而言,邏輯門214可以包括具有一個或者更多個晶體 管的門。 邏輯門214電耦合到輸出網絡218。如先前所言,邏輯門214的電特性如輸入電容 (Cin) 216是輸出網絡218的函數并且具體為Ceff的函數。圖2B中示出了這一點,圖2B示 出了 了具有使用Ceff250來近似的輸出網絡218 (圖2A)的分級200。注意Cin 216也是在 邏輯門214的輸入處的轉換速率的函數。 在以下討論中描述對Ceff250的近似。這一近似代表在計算速度與時序和信號完 整性的準確性之間的有效折衷,這有助于對邏輯門214的一個或者更多個電特性的準確確 定。 圖3呈現出示出了可以由計算機系統實現的用于分析或者計算圖2A和2B中的分 級200中的邏輯門214的電特性的方法300的流程圖。在分析期間,計算機系統計算用于輸 出網絡218的Ceff250(310),其中Ceff250對應于輸出網絡218的總電阻、輸出網絡218 的總電容和輸出網絡218的幾何參數。然后,計算機系統至少部分地基于Ceff250和向邏 輯門214的輸入施加的電信號的轉換速率來確定邏輯門214的電特性(312)。
在一些實施例中,計算機系統對一組串聯耦合的分級進行計算和確定操作以計算 該組分級的路徑延遲(314)。 注意,在方法300的一些實施例中可以有附加的或者更少的操作。另外,可以改變 操作的順序和/或可以將兩個或者更多操作合并成單個操作。 在一個示例實施例中,電特性包括邏輯門214的Cin216,而Ceff250可以對應于總 電阻與總電容的乘積除以幾何參數的比值(例如Ceff250可以是該比值的函數)。具體而 言,總電阻可以是輸出網絡218中的電阻之和(例如&+1 2+1 3+1 4);總電容可以是輸出網絡 218中的電容之和(例如Q+C^Q+Q+Cs+Ce);而幾何參數可以包括輸出網絡218的扇出計 數(或者輸出網絡218中的管腳計數的數目)。注意,總電阻可以對輸出網絡218中的一級 (first-order)電阻屏蔽效果進行建模,而扇出計數可以對并聯線段的效果進行建模。也應 注意,比值中的各參數可以在電路仿真期間獲得而無需遍歷整個輸出網絡218或者復雜的 迭代計算,這使得對Ceff250的這一近似在計算上效率高。 在其它實施例中,可以推廣該比值。例如,幾何參數可以包括輸出網絡218的拓撲 信息。因此,在一些實施例中,計算Ceff250涉及到對輸出網絡218中的不同支路的有效電 容進行計算和合并,其中給定支路的有效電容對應于給定支路的總電阻、給定支路的總電 容和給定支路的幾何參數。 在一些實施例中,將Ceff250表達為這些參數的閉合形式的函數。備選地或者除 此之外地,可以使用作為比值的函數的Ceff250的極值之間的分段線性關系計算Ceff250。 在呈現了曲線圖400的圖4中示出了這一點,該曲線示為作為比值412(SP,總電阻與 總電容的乘積與扇出計數的比值)的函數的Ceff410。可以通過曲線擬合圖400來獲得曲 線參數tpt2和a。例如對于65nm工藝,a可以在0. 1與0. 4之間,^可以在0與15ps
7之間(比如10ps),而t2可以在50與200ps之間(比如120ps)。注意,曲線圖400可以是 使用對多個分級如分級200進行的測量和/或仿真來確定的平均曲線。
使用針對Ceff250的近似可以確定邏輯門214的電特性。例如,可以通過根據 Ceff250和轉換速率在電特性值的預定表中進行查找來確定Cin 216。再者,使用Cin 216 可以準確且快速地確定附加電特性,比如分級200的延遲。在使用這一分析技術以10-15% 的準確度估計Ceff250的同時,對應延遲估計的90%可以具有0. 5%的準確度(即在使用 Ceff250的值(這些值使用更全面的計算技術來確定)來進行的延遲估計的0.5%內)。注 意,使用等于Ctotal的Ceff410可能在分級200中造成最小延遲,而使用等于a Ctotal 的Ceff410可能造成最大延遲。 現在描述對邏輯門的電特性進行分析的計算機系統的實施例。圖5呈現了圖示計 算機系統500的框圖。計算機系統500包括一個或者更多個處理器510、通信接口 512、用 戶接口 514以及將這些部件耦合在一起的一個或者更多個信號線522。注意,一個或者更多 個處理單元510可以支持并行處理和/或多線程操作,通信接口 512可以具有持久通信連 接,而一個或者更多個信號線522可以構成通信總線。另外,用戶接口 514可以包括顯示 器516、鍵盤518和/或指示器520如鼠標。 計算機系統500中的存儲器524可以包括易失性存儲器和/或非易失性存儲器。 更具體而言,存儲器524可以包括ROM、RAM、EPROM、EEPROM、閃存、一個或者更多個智能卡、 一個或者更多個磁盤存儲設備和/或一個或者更多個光學存儲設備。存儲器524可以存儲 操作系統526,該操作系統包括用于對執行依賴于硬件的任務的各種基本系統服務進行處 理的進程(或者指令集)。存儲器524也可以存儲通信模塊528中的進程(或者指令集)。 這些通信進程可以用于與一個或者更多個計算機和/或服務器通信,這些計算機和/或服 務器包括參照計算機系統500遠程定位的計算機和/或服務器。 存儲器524也可以包括多個程序模塊(或者指令集),這些程序模塊(或者指令 集)包括電路仿真模塊530(或者指令集)。另外,電路仿真模塊530可以包括估計模塊 532 (或者指令集)和/或仿真模塊534 (或者指令集)。 估計模塊532可以估計用于一個或者更多個電路536(或者這些電路的部分)如 分級A 538-1和分級B 538-2的電特性542 (比如圖2B中的Cin 216和/或Ceff250)。例 如,可以使用電路參數540來估計Ceff250 (圖2B)。此外或者單獨地,可以使用Ceff250 (圖 2B)的可選預定值544和電信號的轉換速率來估計Cin 216(圖2B)。使用估計的電特性 542,仿真模塊534可以進行對一個或者更多個電路536(或者這些電路的部分)的分析或 者仿真。 可以用高級程序語言、面向對象的編程語言和/或用匯編或者機器語言實現存儲 器524中的各種模塊中的指令。注意,編程語言可以被編譯或者解釋(例如可配置或者被 配置)成由一個或者更多個處理單元510執行。 計算機系統500可以包括各種設備,比如個人計算機、膝上型計算機、服務器、工 作站、主機計算機和/或能夠操控計算機可讀數據的其它設備。 雖然將計算機系統500圖示為具有多個分立項,但是圖5旨在于作為對可以存在 于計算機系統500中的各種特征的功能描述而不是這里描述的實施例的結構示意圖。在實 踐中并且如本領域普通技術人員認識到的那樣,計算機系統500的功能可以分布于大量服務器或者計算機,其中各組服務器或者計算機實現功能的特定子集。因而,計算機系統500 可以在一個位置或者可以分布于多個位置,比如經由網絡(比如因特網或者內聯網)來通 信的計算系統。 在一些實施例中,計算機系統500的一些或者所有功能可以實現于一個或者更多 個專用集成電路(ASIC)、現場可編程門陣列(FPGA)和/或一個或者更多個數字信號處理器 (DSP)中。因此,可以使用FPGA來進行電路分析或者仿真。 計算機系統500可以包括更少部件或者附加部件。另外,可以將兩個或者更多部 件合并成單個部件和/或可以改變一個或者更多個部件的位置。在一些實施例中,如本領 域中已知的那樣,可以更多地用硬件而更少地用軟件或者更少地用硬件而更多地用軟件實 現計算機系統500的功能。 現在討論可以在計算機系統500中使用的數據結構的實施例。圖6呈現了圖示數 據結構600的框圖。這一數據結構可以包括Ceff610表。例如,Ceff610-1表可以包括多 對比值612和用于Ceff的值614。 圖7呈現了圖示數據結構700的框圖。這一數據結構可以包括Cin 710表。例如, Cin 710-1表可以包括多組Ceff712、轉換速率714和用于Cin的值716。
在一些實施例中,分級200 (圖2A和2B)、計算機系統500 (圖5)、數據結構600 (圖 6)和/或700包括更少或者附加部件。另外,可以將兩個或者更多部件合并成單個部件和 /或可以改變一個或者更多個部件的位置。 盡管使用邏輯門214 (圖2A)的Cin 216 (圖2A)作為電特性的一個示例性例子,但 是在其它實施例中電特性可以包括串擾信號的對準、分級200 (圖2A)直至邏輯門214 (圖 2A)的延遲、布線信息和/或與分級200 (圖2A)直至邏輯門214 (圖2A)的轉換。
僅出于示例的和描述的目的呈現了對本發明實施例的前文描述。本意并非讓它們 窮舉本發明或者使本發明限于公開的形式。因而,本領域技術人員將清楚許多修改和變化。 此外,本意并非讓上述公開內容限制本發明。本發明的范圍由所附權利要求限定。
權利要求
一種用于分析在分級中電耦合到輸出網絡的邏輯門的電特性的方法,其包括計算用于所述輸出網絡的有效電容,其中所述有效電容對應于所述輸出網絡的總電阻、所述輸出網絡的總電容和所述輸出網絡的幾何參數;以及至少部分地基于所述有效電容和向所述邏輯門施加的電信號的轉換速率來確定所述邏輯門的所述電特性。
2. 根據權利要求1所述的方法,其中所述電特性包括所述邏輯門的輸入電容。
3. 根據權利要求1所述的方法,其中所述總電阻是所述輸出網絡中的電阻之和。
4. 根據權利要求1所述的方法,其中所述總電容是所述輸出網絡中的電容之和。
5. 根據權利要求1所述的方法,其中所述幾何參數包括所述輸出網絡的扇出計數。
6. 根據權利要求1所述的方法,其中所述幾何參數包括所述輸出網絡的拓撲信息。
7. 根據權利要求1所述的方法,其中計算所述有效電容包括對所述輸出網絡中的不同 支路的有效電容進行計算和合并;以及其中給定支路的有效電容對應于所述給定支路的總電阻、所述給定支路的總電容和所 述給定支路的幾何參數。
8. 根據權利要求1所述的方法,其中所述有效電容對應于所述總電阻和所述總電容的 乘積除以所述幾何參數的比值。
9. 根據權利要求8所述的方法,其中使用作為所述比值的函數的所述有效電容的極值 之間的分段線性關系計算所述有效電容。
10. 根據權利要求1所述的方法,其中所述電特性包括串擾信號的對準。
11. 根據權利要求1所述的方法,其中所述電特性包括所述分級直至所述邏輯門的延遲。
12. 根據權利要求1所述的方法,其中所述電特性包括與所述分級直至所述邏輯門關 聯的轉換。
13. 根據權利要求1所述的方法,還包括對一組串聯耦合的分級進行所述計算和確定 操作以計算所述一組分級的路徑延遲。
14. 根據權利要求1所述的方法,其中確定所述電特性包括根據所述有效電容和所述 轉換速率在所述電特性的值的預定表中進行查找。
15. —種用于分析在分級中電耦合到輸出網絡的邏輯門的電特性的設備,所述設備包括用于計算用于所述輸出網絡的有效電容的裝置,其中所述有效電容對應于所述輸出網 絡的總電阻、所述輸出網絡的總電容和所述輸出網絡的幾何參數;以及用于至少部分地基于所述有效電容和向所述邏輯門施加的電信號的轉換速率來確定 所述邏輯門的所述電特性的裝置。
16. 根據權利要求15所述的設備,其中所述電特性包括所述邏輯門的輸入電容。
17. 根據權利要求15所述的設備,其中所述總電阻是所述輸出網絡中的電阻之和。
18. 根據權利要求15所述的設備,其中所述總電容是所述輸出網絡中的電容之和。
19. 根據權利要求15所述的設備,其中所述幾何參數包括所述輸出網絡的扇出計數。
20. 根據權利要求15所述的設備,其中所述幾何參數包括所述輸出網絡的拓撲信息。
21. 根據權利要求15所述的設備,其中用于計算所述有效電容的裝置包括用于對所述輸出網絡中的不同支路的有效電容進行計算和合并的裝置;以及其中給定支路的有效電容對應于所述給定支路的總電阻、所述給定支路的總電容和所述給定支路的幾何參數。
22. 根據權利要求15所述的設備,其中所述有效電容對應于所述總電阻和所述總電容的乘積除以所述幾何參數的比值。
23. 根據權利要求22所述的設備,其中使用作為所述比值的函數的所述有效電容的極值之間的分段線性關系計算所述有效電容。
24. —種計算機系統,包括處理器;存儲器;程序模塊,其中所述程序模塊存儲于所述存儲器中并且被配置成由所述處理器執行以分析在分級中電耦合到輸出網絡的邏輯門的電特性,所述程序模塊包括用于計算用于所述輸出網絡的有效電容的指令,其中所述有效電容對應于所述輸出網絡的總電阻、所述輸出網絡的總電容和所述輸出網絡的幾何參數;以及用于至少部分地基于所述有效電容和向所述邏輯門施加的電信號的轉換速率來確定所述邏輯門的所述電特性的指令。
全文摘要
本發明涉及針對門輸出負載的快速且準確的估計。描述了一種計算機系統、方法、集成電路和用于與該計算機系統一同使用的計算機程序產品(即軟件)的實施例。這些設備和技術可以用來分析在分級中電耦合到輸出網絡的邏輯門的電特性。具體而言,在分析期間,將耦合到邏輯門的輸出網絡的有效電容近似為輸出網絡的總電阻、輸出網絡的總電容和輸出網絡的幾何參數的函數。例如,可以將有效電容近似為總電阻與總電容的乘積與輸出網絡的扇出計數的比值的函數。使用有效電容和其它參數(比如向邏輯門的輸入施加的電信號的轉換速率)來確定邏輯門的電特性,比如輸入電容。
文檔編號G06F17/50GK101794328SQ20091021130
公開日2010年8月4日 申請日期2009年10月30日 優先權日2009年1月30日
發明者A·卡斯納維, 丁力, 李紅 申請人:新思科技有限公司