TW201702914A - 用於使用標準元件改善在電子設計上的效能與功率的方法及設備 - Google Patents
用於使用標準元件改善在電子設計上的效能與功率的方法及設備 Download PDFInfo
- Publication number
- TW201702914A TW201702914A TW105105124A TW105105124A TW201702914A TW 201702914 A TW201702914 A TW 201702914A TW 105105124 A TW105105124 A TW 105105124A TW 105105124 A TW105105124 A TW 105105124A TW 201702914 A TW201702914 A TW 201702914A
- Authority
- TW
- Taiwan
- Prior art keywords
- level
- component
- stage
- output
- logic
- Prior art date
Links
- 238000013461 design Methods 0.000 title claims abstract description 94
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000005457 optimization Methods 0.000 claims abstract description 19
- 238000003860 storage Methods 0.000 claims description 9
- 238000002955 isolation Methods 0.000 claims description 5
- 230000005669 field effect Effects 0.000 claims description 4
- 239000003990 capacitor Substances 0.000 claims description 3
- 230000000295 complement effect Effects 0.000 claims description 3
- 238000004519 manufacturing process Methods 0.000 claims 5
- 238000012545 processing Methods 0.000 description 39
- 230000008569 process Effects 0.000 description 28
- 230000006870 function Effects 0.000 description 7
- 230000015572 biosynthetic process Effects 0.000 description 5
- 230000001419 dependent effect Effects 0.000 description 5
- 238000003786 synthesis reaction Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000013138 pruning Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000010355 oscillation Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000004513 sizing Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/06—Power analysis or power optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/12—Timing analysis or timing optimisation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Architecture (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
說明一種用於在電子設計中改善效電和動態功率的方法及設備。在一實施例中,方法包含進行用於具有邏輯路徑之積體電路(IC)設計的佈局佈線運算;以及在IC設計上進行設計最佳化運算,包括藉由用具有至少1級弧的第一元件之2級元件變體取代沿著邏輯路徑的另一個2級元件來加大沿著邏輯路徑的驅動強度。
Description
本發明之實施例係關於電子設計自動化工具的領域;更特別地,本發明之實施例係關於以元件之2級變體取代高驅動1級標準元件來致能在電子設計中加大於邏輯路徑上元件的驅動功率。
目前的設計實務假設合成及佈局佈線(place-and-route)工具能正確地選定適當的元件且依賴作成可供工具利用的元件。目前實務並未基於使他們更輕易的用於合成及佈局佈線工具的屬性來分類附屬條目(collateral),用以「輕易地消耗」此附屬條目。
目前市售的(commercially-available)合成及佈局佈線工具依賴簡化的演算法來符合時序收斂(timing closure)。當元件在具有隨著功率、延遲或面積曲線的已知數列(progression)的家族中組織時,這類的演算法產
生可預測的結果。舉例而言,若任何人想要藉由增加輸出驅動器之功率加大用於下一級(stage)的驅動,則這不會影響輸入的尺寸是已知的。
然而,在FinFET(鰭式場效電晶體)或三閘設計中,有著在輸出驅動之尺寸和元件之輸入之間的連結。因此,加大輸出裝置引起了在輸入側上的問題。特別是,當具有不同的驅動強度的1級元件(下次說明)被導入到邏輯路徑中時,且當藉由選定具有較高驅動的另一個1級元件而隨著路徑加大時,其驅動強度(特別是在基於FinFET的標準元件中)由前級明顯地視為添加的接腳電容(pin capacitance)。這造成在前級的上增加的負載,因此使其變的緩慢。此二階效應(second-order effect)能引起最佳化引擎在到收斂的路徑中振盪,且達到不穩定的(erratic)結果。結果,當經歷關鍵路徑(critical path)之效能最佳化時,工具在時序收斂階段中振盪、產生長運行時間以及產生不穩定結果中結束。因此,使用FinFET技術相關的商業設計最佳化工具已不會產生最佳的基於FinFET的設計。
101‧‧‧處理方塊
102‧‧‧處理方塊
103‧‧‧處理方塊
104‧‧‧處理方塊
201‧‧‧處理方塊
202‧‧‧處理方塊
203‧‧‧處理方塊
400‧‧‧2級元件
401‧‧‧輸入級
402‧‧‧輸出級
600‧‧‧元件
601‧‧‧2級時序弧延遲
602‧‧‧1級時序弧延遲
603‧‧‧輸入
604‧‧‧及閘
605‧‧‧反相器
606‧‧‧反及閘
700‧‧‧中央處理單元
701‧‧‧記憶體
702‧‧‧使用者介面
703‧‧‧網路介面
711‧‧‧網表資料庫
712‧‧‧介面描述
713‧‧‧模組
714‧‧‧實體模型
715‧‧‧設計目標及參數
716‧‧‧時序及驅動強度分析模組
717‧‧‧修改模組
718‧‧‧作業系統
719‧‧‧應用程式
本發明從下面所給的詳細說明和從附隨的本發明之各種實施例的圖式將更完全地了解,然而其不應看成將本發明限定於特定實施例,而僅用於解釋或了解。
圖1為用於建立積體電路設計之過程之一實施例的流
程圖。
圖2為闡述用於從以1級形式的標準元件建立以2級形式的標準元件之變體之過程的一實施例的流程圖。
圖3闡述1級元件之典型佈局結構。
圖4闡述2級元件之典型佈局結構。
圖5闡述圖4之較高驅動輸出驅動器的建置。
圖6闡述從1級標準元件建立的2級標準元件之範例。
圖7闡述依據本發明一實施例用於建立積體電路之設計的系統。
圖8闡述依據本發明一實施例使用FinFET標準元件的積體電路設計。
圖9闡述用於建立電子設計(例如,FinFET設計)的過程之一實施例。
在下列說明中,提出眾多細節以提供本發明之更全面的解釋。然而,將顯而易見的是,對於本領域具有通常知識者而言,本發明可在不具有這些特定細節下來實行。在其它實例中,周知的結構及裝置以方塊圖形式(而非詳細地)繪示,以為了避免模糊本發明。
揭示了用於改善在電子裝置設計中的效能的方法和設備。在一實施例中,使用於此揭露的技術改善本設計之效能和動態功率。在一實施例中,設計為FinFET
設計。在一實施例中,使用分開的1級和2級標準元件附屬條目(庫(library))改善本設計的效能和動態功率。
藉由分離標準元件和使用於此說明的準則(criteria)選擇性擴充(augment)附屬條目,最佳化演算法能輕易的消耗附屬條目,從而使他們能快速地和有效率地到達設計最佳。在一實施例中,於此揭示的實施例提供附屬條目修剪和選擇的附屬條目擴充技術,用以確保平滑的最佳化成本函數(cost-function)來使合成及佈局佈線工具能更加快地且具有較佳結果之品質到達在功率和效能上最佳設計點。
在一實施例中,附屬條目修剪包含消除1級元件之較高的驅動版本,且僅對於設計最佳工具提出最小驅動1級元件。此達到隨著功率/效能曲線的彈性附屬條目,並且當試圖加速沿著路徑的特定元件時,幫助消除使關鍵時序路徑之前級緩慢的二階效應。
在一實施例中,附屬條目擴充程序包含從1級標準元件建立以2級形式的標準元件邏輯家族之眾多的變體(variation)且具有全範圍的驅動強度。在一實施例中,此達成確保所有時序弧(timing arc)與輸出分開了大於1級並且確保第一級為最小尺寸驅動器的。在一實施例中,附屬條目擴充程序亦對於1級元件建立具有僅最小驅動的邏輯元件之函數。這類元件對於本地工程變更命令(ECO;engineering change order)是有用的。
在一實施例中,附屬條目擴充程序對於每一
個1級元件更建立具有多個驅動強度之反相的和緩衝的版本,特別是將他們轉換成簡單2級元件。這些可在ECO之驅動媒體至長範圍導線中使用同時確保第一級為最小尺寸驅動器組成。
在一實施例中,選擇性的附屬條目擴充包含消除高驅動元件之1級弧。在此情形中,檢查各個非最小驅動元件之每一個時序弧,以為了識別在元件內的時序弧,該元件形成單一級裝置到該元件輸出。對於各個這類弧,添加最小尺寸輸出級反相器(較佳地)或緩衝器。由於邏輯功能係藉由添加反相器來修改,附屬條目亦藉由針對邏輯的完整性之元件的補充來擴充。更具體而言,在一實施例中,合成工具使用具有各種排列(permutation)的反相輸入或輸出的元件變體,用以允許其在設計中降低使用單獨的反相器。將這類反相器拉入元件將具有將1級元件弧轉換成2級弧的增添的益處,確保整個元件為2級元件。
使用於此揭示的附屬條目修剪及選擇性附屬條目擴充降低了不穩定行為,並且使商業工具能產生具有改善的效能及動態功率之設計建置(例如,FinFET設計建置)。
圖1為用於建立積體電路設計之過程的一實施例的流程圖。藉由處理可包含硬體(電路、專用邏輯等)、軟體(像是在一般目的電腦系統或專用機器上運行)或兩者之結合的處理邏輯來進行處理。
參照圖1,過程以處理邏輯藉由建立具有驅動強度之範圍以2級形式的標準元件之複數個變體來建立標準元件庫而開始,從具有與輸出分開了不超過(至多)一級的至少一時序弧以1級形式的標準元件產生該複數個版本,該複數個變體包括2級元件變體(處理方塊101)。在一實施例中,第一級的變體係由最小尺寸驅動器組成。在一實施例中,標準元件為FinFET標準元件。在一實施例中,標準元件為具有在FinFET電晶體中增加數目的鰭(fin)的高驅動元件(例如增加的電晶體擴散寬度)。在一實施例中,低驅動元件或裝置為2鰭或以下,同時高驅動元件或裝置為8或以上的鰭。注意,在其它實施例中,高驅動元件或裝置具有比8鰭更多或更少者,但多於2鰭。注意,在一實施例中,驅動元件或裝置是否被視為高,取決於用於給定的效能範圍(performance envelope)的裝置之功率預算(power budget)。典型的標準元件庫有著具有12鰭、20鰭、28鰭、35鰭、40鰭、45鰭、50鰭、55鰭以及60鰭之較高驅動元件的數列,其通常具有非常高的功率散逸(power dissipation)。在一實施例中,2級元件之輸入狀態的寬度與2級元件之輸出級的寬度和驅動強度無關。
圖2為闡述用於從以1級形式的標準元件建立以2級形式的標準元件之變體的過程的一實施例的流程圖。過程係由可包含硬體(電路、專用邏輯等)、軟體(像是在通用目的電腦系統或專用機器上運行)或兩者的
結合的處理邏輯來進行。參照至圖2,過程以處理邏輯檢查在元件庫中一或更多非最小驅動元件之時序弧來識別在形成單一級裝置到元件輸出的一或更多非最小驅動元件之各者內的時序弧作為開始,一或更多非最小驅動元件包括高驅動1級元件(處理方塊201)。在一實施例中,此識別具有至少一1級弧的高驅動1級元件。接著,處理邏輯將最小尺寸輸入級反相器或緩衝器加到在形成單一級裝置到元件輸出的各個非最小驅動元件中之元件內的時序弧之各者,用以建立新的元件(處理方塊202)。這些新的元件包括如上所述的2級元件變體。在一實施例中,此藉由建立具有比高驅動元件較低的驅動的反相和緩衝版本,來以2級形式建立高驅動1級元件之變體。也同樣的,處理方塊將至少一其它新的元件加到庫,其運算以輸出至少一其它新的元件之邏輯補數(logical complement)(處理方塊203)。此被進行來補償以輸出級反相器建立及添加的變體,用以確保添加了適當的補數。
參照回圖1,在庫已被建立之後,處理邏輯針對積體電路(IC;integrated circuit)晶片建立電子設計。IC晶片具有至少一邏輯路徑。在一實施例中,邏輯路徑為基於FinFET(FinFET-based)的標準元件。IC晶片可為處理器、系統上晶片(SOC;system-on-a-chip)、控制器、周邊、通訊處理器等。
在設計已被建立之後,處理邏輯進行設計評估階段,在此階段中進行用於IC設計的佈局佈線運算
(處理方塊102)。
在進行佈局佈線運算之後,處理邏輯進行分析電子設計(處理方塊103)。在一實施例中,分析包含判斷設計是否符合設計的時序需求(timing requirement)(例如,時序收斂(timing closure))。
基於時序分析的結果,處理邏輯在IC設計上進行設計最佳化運算,包括藉由用高驅動1級元件之2級元件變體取代沿著邏輯路徑的另一個2級元件來加大沿著邏輯路徑的驅動強度(處理方塊104)。
圖3~5提供使用於此說明之技術的範例。
圖3於下方繪示典型的1級元件之佈局結構。參照至圖3,輸出級之寬度與輸入級相同。換言之,輸出級之寬度係映射回至輸入級。輸出驅動器具有較高數目的鰭。此意味著輸出驅動器使用較寬的電晶體並且具有大的驅動。因為在輸出驅動器中有著較高數目的鰭,故在輸入有著較大的閘表面,其增加由前級所看到的電容性負載(例如,在圖3之元件之前的元件之輸出狀態)。增加的電容性負載使前級變得緩慢。
在最佳化運算期間,在當建立FinFET設計時想要加大1級元件之驅動的最佳化引擎不能夠識別高驅動1級元件之插入引起對設計的負面影響,因為輸出驅動強度不能孤立於在輸入級上出現作為增加的接腳電容。
相較之下,2級元件提供輸出級與輸入電容增加之間的隔離,使得當最佳化引擎選擇加大2級元件時,
輸出驅動器被加大了,引起向前網路(forward network)改善效能,同時前級仍看見小的電容以及結果前級不會慢下來。此消除了擺脫過分簡化的最佳化演算化的二階效應,其依賴單調性(monotonicity),引起他們進入振盪。
圖4闡述2級元件之典型的佈局結構。請參照圖4,2級元件400包括輸入(或邏輯)級401以及驅動級402。輸入級401之寬度無關於輸出級402之寬度和驅動強度。因此,輸出級402之輸出驅動孤立於與輸入級402關聯的輸入接腳電容。
注意,在圖4中的輸出級402係繪製以象徵性地繪示較寬的電晶體來描述驅動強度。在一實施例中,較高的驅動輸出驅動器係使用在圖5中的結構來建置,其繪示透過多個並聯(parallel)之較窄的電晶體來達成輸出驅動強度。此使用共同高度元件在較高驅動輸出級旁於第一級中致能建置狹窄的邏輯閘。
因此,在一實施例中,當建置及/或最佳化設計時,特別是FinFET設計,FinFET附屬條目(庫)不具有用於所有1級標準元件的高驅動強度。在高驅動1級標準元件包括在庫中的這類情形中,這類元件之2級變體反而已被包括及/或建立及使用於設計中。此致能建立不具有嵌入於其邏輯路徑中高驅動強度1級元件的FinFET設計(晶片)。到最終,在設計過程期間,包括了用於目前CAD工具的機制以用於致力於排除他們或在設計最佳化
期間以特別方法處理他們的方式上識別1級元件,使得不包括高驅動1級標準元件。
圖6闡述自1級標準元件建立2級標準元件的範例。請參照圖6,元件具有2級時序弧延遲601和1級時序弧延遲602。1級時序弧延遲602係由於元件之輸入603直接行進到在元件中上一閘(及閘(AND閘)604)之輸入。為了確保所有時序弧與元件之輸出分開了大於1級,1級元件之2級版本係藉由將反相器605加到輸入603與及閘604之間的路徑來建立。
於此說明系統以用於產生具有嵌入在至少一邏輯路徑中的元件的IC晶片之電子設計。在一實施例中,系統包含記憶體和處理器,其分別適於:儲存且執行指令,用以建立具有驅動強度之範圍以2級形式的標準元件(例如,FinFET標準元件)之複數個變體,其中複數個版本係從具有與輸出分開了至多1級的至少一時序弧之以1級形式的標準元件產生;進行用於電子設計的佈局佈線運算;以及進行在電子設計上的設計最佳化運算,包括藉由用高驅動1級元件之2級元件變體取代沿著至少一邏輯路徑的另一個2級元件來加大沿著至少一邏輯路徑的驅動強度。在一實施例中,處理器檢查在元件庫中的一或更多非最小驅動元件之時序弧,用以在形成單一級裝置到元件輸出的一或更多非最小驅動元件之各者內識別時序弧(其中一或更
多非最小驅動元件包括高驅動1級元件),並且將最小尺寸輸入級反相器或緩衝器加到形成單一級裝置到元件輸出的一或更多非最小驅動元件之各者中之元件內的該時序弧之各者,用以建立一或更多新的元件,該一或更多新的元件包括2級元件變體。
圖7闡述依據本發明之實施例用於建立積體電路之設計的系統。在一實施例中,電子設計包括FinFET設計。
在一實施例中,用於建立積體電路之設計的方法和系統可使用電腦系統建置。電腦系統可包括一或更多中央處理單元(CPU;central processing unit)700、記憶體701、用於顯示過程和結果之部分的使用者介面702、系統匯流排706以及用於將CPU、使用者介面、記憶體裝置以及系統匯流排連接在一起的一或更多匯流排介面。電腦系統亦包括用於與在電腦網路上的其它裝置通訊的至少一網路介面703。在替代的實施例中,用於建立積體電路之設計的方法和系統之功能性(functionality)可被建置在一或更多特定應用積體電路(ASIC;application-specific integrated circuits)或場可編程閘陣列(FPGA;field-programmable gate array)中。
記憶體裝置701可包括高速隨機存取記憶體且亦可包括非揮發性記憶體,像是一或更多磁碟儲存裝置。記憶體裝置亦可包括位在CPU遠端的大量儲存器(mass storage)。在一實施例中,記憶體裝置701儲
存:用於儲存電路之資訊的網表(netlist)資料庫711,其包括設計網表、介面描述712、包括模型(例如,時序模型、實體模型等)的模組713;設計目標及參數715;時序及驅動強度分析模組716,用以判斷設計是否符合時序約束(timing constraint)且進行時序最佳化,包括如於此說明的用2級元件取代1級元件;修改模組717,用以如上面討論的建立1級標準元件之2級變體;包括用於處理各種基本系統服務和用於進行從屬硬體的任務的作業系統718;以及用於進行其它使用者界定的應用及任務的應用程式719。
用於建立電子設計的資料庫、應用程式及程式可包括可執行程序、子模組(sub-module)、表以及其它資料結構。在其它實施例中,可使用額外的或不同的模組及資料結構,並且可以不使用上面列舉的一些模組及/或資料結構。
圖8闡述依據本發明一實施例使用FinFET標準元件的積體電路設計。請參照圖8,積體電路包括若干的邏輯或功能性方塊A、B、C等。在數目上可能有比在圖8中繪示的數目更多或更少。在一實施例中,這些邏輯方塊可進行處理器或SoC的傳統功能之一或更多者,像是CPU核心、圖形媒體處理器、輸入/輸出、記憶體控制等。這些邏輯之一或更多者包括於此說明的標準元件。在一實施例中,高驅動元件係由如上所述邏輯之2級所組成。在一實施例中,各個關鍵路徑(critical path)僅由如
於此所述具有邏輯之2級的元件所組成。圖9闡述用於建立電子設計(例如,FinFET設計)的過程之一實施例。請參照圖9,過程從過程建立在處理方塊901中的電子設計開始。在一實施例中,建立電子設計之過程包括選定及使用標準元件。在一實施例中,這些標準元件為FinFET標準元件。標準元件為一部分的庫。在一實施例中,庫包括一些1級標準元件和如上所述建立的1級標準元件之2級變體。也同樣地,在一實施例中,完成選定一些標準元件用以排除或避免1級標準元件被選定用於包括在如上所述的設計中。
在設計建立之後,過程轉移至處理方塊902,其中處理產生代表性的網表,其依次包含一或更多標準元件。產生代表性網表之過程可包括界定介面、建立時序模型以及建立實體模型。可在無使用者介入下由電腦程式自動地進行產生代表性網表。
在處理方塊903處,過程佈局佈線積體電路設計。在一實施例中,處理方塊903之功能可包括在設計上進行定尺寸運算用以判斷設計需要的半導體晶粒(semiconductor die)之尺寸、佈局設計之輸入/輸出埠以及元件(包括標準元件)。功能包括使用標準元件建立代表性實體建置。
在處理方塊904處,過程分析代表性實體建置。在一實施例中,處理方塊904之功能包括分析積體電路之代表性實體建置的時序,用以確保設計已符合其時序
目標(例如,判斷設計是否符合時序收斂)。在一實施例中,處理方塊904之功能包括分析代表性實體建置之佈線擁擠,用以確保符合佈線相關的設計目標。
在處理方塊905處,作成關於設計目標是否符合的判斷。若設計目標符合,則過程轉移到處理方塊907。在替代中,若設計目標未符合,則過程移動到最佳化方塊908,其中在進行設計最佳化。在一實施例中,如上所述最佳化方塊908代用標準元件之2級版本代替1級標準元件。接著過程轉移至處理903,其中過程重覆直到設計目標符合為止。接著過程在處理方塊907終止。
在第一範例實施例中,積體電路(IC;integrated circuit)晶片包含具有從鰭狀場效電晶體(FinFET;Fin-Shaped Field Effect Transistor)形成之複數個驅動器的複數個邏輯路徑,其中複數個邏輯路徑之至少一者有著具有2級時序弧的2級裝置,並且一個2級裝置藉由反相器或緩衝器使其輸入與2級裝置輸入分開,用以提供2級裝置之輸出級與輸入電容之間的隔離。
在另一範例實施例中,第一範例實施例之標的能可選擇地包括複數個驅動器係從具有邏輯級和輸出級的2級元件形成,並且邏輯級之寬度無關於輸出級之寬度。
在另一範例實施例中,第一範例實施例之標的能可選擇地包括複數個驅動器係從具有邏輯級和輸出級的2級元件形成,並且邏輯級之寬度無關於輸出級之驅動
強度。
在另一範例實施例中,第一範例實施例之標的能可選擇地包括複數個驅動器係從具有邏輯級和輸出級的2級元件形成,並且輸出級使用匹配邏輯級的並聯電晶體(parallel transistors)。
在另一範例實施例中,第一範例實施例之標的能可選擇地包括一邏輯路徑沒有高驅動強度1級元件。
在另一範例實施例中,第一範例實施例之標的能可選擇地包括至少一邏輯元件為關鍵路徑邏輯元件。
在另一範例實施例中,第一範例實施例之標的能可選擇地包括缺少反相器或緩衝器會引起一2級裝置對其輸出具有單一級驅動器。
在第二範例實施例中,方法包含:對於具有邏輯路徑的積體電路(IC)設計進行佈局佈線運算,且在IC設計上進行設計最佳化運算,其包括藉由用具有至少一1級弧的第一元件之2級元件變體代替沿著邏輯路徑的另一個2級元件來加大沿著邏輯路徑的驅動強度。
在另一範例實施例中,第二範例實施例之標的能可選擇地包括藉由識別具有至少一1級弧的第一元件及建立以2級形式的高驅動元件之變體來建立2級變體。
在另一範例實施例中,第二範例實施例之標的能可選擇地包括建立以2級形式的第一元件之變體的步驟包含建立具有比第一元件之驅動更低的驅動之第一元件的反相及緩衝版本。
在另一範例實施例中,第二範例實施例之標的能可選擇地包括,方法更包含:檢查在元件庫中一或更多非最小驅動元件之時序弧,用以識別在形成單一級裝置到元件輸出的一或更多非最小驅動元件之各者內的時序弧,該一或更多非最小驅動元件包括第一元件;以及將最小尺寸輸入級反相器或緩衝器加至在形成單一級裝置到元件輸出的一或更多非最小驅動元件之各者中的第一元件內的該時序弧之各者,用以建立一或更多新的元件,該一或更多新的元件包括2級元件變體。在另一範例實施例中,此範例實施例之標的能可選擇地包括,該方法更包含:將另一個新的元件加至對輸出運算第一新的元件之邏輯補數的庫。
在另一範例實施例中,第二範例實施例之標的能可選擇地包括,該方法更包含:建立具有驅動強度之範圍的複數個以2級形式的標準元件之變體,從具有與輸出分開了至多1級的至少一時序弧之以1級形式的標準元件產生複數個版本,該複數個變體包括2級元件變體。
在另一範例實施例中,範例實施例之標的能可選擇地包括變體之第一級由最小尺寸驅動器組成。在另一範例實施例中,此範例實施例之標的能可選擇地包括標準元件為高驅動元件。在另一範例實施例中,此範例實施例之標的能可選擇地包括標準元件為FinFET標準元件。在另一範例實施例中,此範例實施例之標的能可選擇地包括2級元件之輸入狀態的寬度無關於2級元件之輸出級的
寬度和驅動強度。
在另一範例實施例中,第二範例實施例之標的能可選擇地包括邏輯路徑係在基於FinFET的標準元件中。
在第三範例實施例中,積體電路係以第二範例實施例的方法來建立。
在另一範例實施例中,第三範例實施例之標的能可選擇地包括具有從FinFET電晶體形成的複數個驅動器的複數個邏輯路徑,複數個邏輯路徑其中至少一者有著具有2級時序弧的2級裝置,其中一個2級裝置藉由反相器或緩衝器使其輸入與2級裝置輸入分開,用以提供在2級裝置之輸出級與輸入電容之間的隔離。
在第四範例實施例中,製造之物件具有儲存指令之一或更多非暫態電腦可讀儲存媒體,當由系統執行儲存指令用以進行用於建置電子設計的方法時,方法包含:進行用於具有邏輯路徑之積體電路(IC)設計的佈局佈線運算,並且在IC設計上進行設計最佳化運算,其包括藉由用具有至少一1級弧的第一元件之2級元件變體取代沿著邏輯路徑之另一個2級元件來加大沿著邏輯路徑的驅動強度。
在另一範例實施例中,第四範例實施例之標的能可選擇地包括藉由識別具有至少一1級弧的第一元件以及建立以2級形式的高驅動元件之變體建立2級變體。
在另一範例實施例中,第四範例實施例之標
的能可選擇地包括建立以2級形式的第一元件之變體的步驟包含建立具有比第一元件之驅動更低的驅動之反相的或緩衝的版本。
在另一範例實施例中,第四範例實施例之標的能可選擇地包括,方法更包含:檢查在元件庫中一或更多非最小驅動元件之時序弧,用以識別在形成單一級裝置到元件輸出的一或更多非最小驅動元件之各者內的時序弧,一或更多非最小驅動元件包括第一元件;以及將最小尺寸輸入級反相器或緩衝器加在形成單一級裝置到元件輸出的一或更多非最小驅動元件之各者中第一元件內的該時序弧之各者,用以建立一或更多新的元件,一或更多新的元件包括2級元件變體。
在另一範例實施例中,第四範例實施例之標的能可選擇地包括,方法更包含:建立具有驅動強度之範圍的複數個以2級形式之標準元件的變體,從具有與輸出分開至多一級的至少一時序弧之以1級形式的標準元件產生複數個版本,複數個變體包括2級元件變體。在另一範例實施例中,範例實施例之標的能可選擇地包括標準元件為FinFET標準元件。
在第五範例實施例中,用於產生IC晶片之電子設計的系統具有嵌入在至少一邏輯路徑中的元件,系統包含:記憶體和處理器,其分別適於儲存和執行指令,用以建立具有驅動強度之範圍的複數個以2級形式的標準元件之變體,從具有與輸出分開了至多一級的至少一時序弧
的以1級形式的標準元件產生複數個版本;進行用於電子設計的佈局佈線運算;以及在電子設計上進行設計最佳化運算,其包括藉由用具有至少1級弧的第一元件之2級元件變體取代沿著至少一邏輯路徑的另一個2級元件來加大沿著該至少一邏輯路徑的驅動強度。
在另一範例實施例中,第五範例實施例之標的能可選擇地包括,處理器更用以:檢查在元件庫中一或更多非最小驅動元件之時序弧,用以識別在形成單一級裝置到元件輸出的一或更多非最小驅動元件之各者內的時序弧,一或更多非最小驅動元件包括第一元件;以及將最小尺寸輸入級反相器或緩衝器加在形成單一級裝置到元件輸出的一或更多非最小驅動元件之各者中第一元件內的該時序弧之各者,用以建立一或更多新的元件,一或更多新的元件包括2級元件變體。
在另一範例實施例中,第五範例實施例之標的能可選擇地包括標準元件為FinFET標準元件。
於此包括的詳細說明之一些部分係按照電腦記憶體內在資料位元上運算之演算法和符號表示來提出。這些演算法說明及表示係為由資料處理領域之通常知識者用以對本領域中其它通常知識者傳達他們工作的實質所使用的手段。這裡的演算法通常被理解為導致所欲結果的步驟之前後一致序列。步驟為需要實體量之實體操控的步驟。一般而言,雖然不必然是如此,但這些量採用能夠被儲存、轉換、結合、比較及其它操控之電或磁信號的形
式。主要為了共同用法的原因,已證明有時是便利的是,將這些信號稱之為位元(bit)、值(value)、元素(element)、符號(symbol)、字符(character)、項次(term)、數目(number)或類似者。
然而,應謹記在心的是,所有該些及類似的術語係用以與適當的物理量關聯,且僅為應用到這些量之方便的標示。除非具體地陳述,否則如自下列討論而明白的是,可了解貫穿本說明者,利用像是「處理(processing)」或「計算(computing)」或「估算(calculating)」或「判斷(determining)」或「顯示(displaying)」等的術語之討論參照至電腦系統或相似電子計算裝置之作用和處理,其將代表為在電腦系統的暫存器及記憶體內物理(電子)量的資料操控及轉換成相似地代表為在電腦系統記憶體或暫存器或其它這類資料儲存、傳輸或顯示裝置內物理量的資料。
本發明亦關於用於進行於此之運算的設備。此設備可特別地為了必需的目的建構,或其可包含一般目的電腦,其選擇性地由儲存在電腦中的電腦程式啟動或重配置。這類電腦程式可被儲存於電腦可讀儲存媒體中,像是(但不限於)包括軟碟、光碟、壓縮碟唯讀記憶體(CD-ROM)以及磁光碟(magnetic-optical disk)的任何類型的碟片、唯讀記憶體(ROM;read-only memory)、隨機存取記憶體(RAM;random access memory)、EPROM(可抹除可編程唯讀記憶體)、EEPROM(電可抹
除可編程唯讀記憶體)、磁或光卡或適合用於儲存電子指令之任何類型的媒體,且各者耦接至電腦系統匯流排。
於此提出的演算法及顯示並非固有地關於特定電腦或其它設備。各種一般目的系統可以依據於此的教示之程式來使用,或其可證明建構更專門的設備用以進行必需的方法步驟是方便的。用於各式各樣的該些系統之必需的結構將從下面說明顯現。此外,本發明並非參考任何特定程式語言來說明。將了解,各式各樣的程式語言可被使用來建置如於此說明本發明之教示。
機器可讀媒體包括用於儲存或傳輸以由機器(例如,電腦)可讀的形式的資訊的任何機制。舉例而言,機器可讀媒體包括唯讀記憶體(「ROM」);隨機存取記憶體(「RAM」);磁碟儲存媒體;光學儲存媒體;快閃記憶體裝置;等等。
鑒於在已讀取先前的說明之後本發明之許多變化和改良將無疑地變得對本領域具有通常知識者更明白,要理解的是,藉由闡述的方式繪示及說明的任何特定實施例係不打算被視為限制。因此,參考各種實施例之細節並不打算限制申請專利範圍的範疇,申請專利範圍在其本身中僅記載關於對本發明為必要的該些特徵。
201‧‧‧處理方塊
202‧‧‧處理方塊
203‧‧‧處理方塊
Claims (25)
- 一種積體電路晶片,包含複數個邏輯路徑,其具有從鰭狀場效電晶體(FinFET)的電晶體形成的複數個驅動器,該複數個邏輯路徑之至少一者具有帶有2級時序弧的2級裝置,其中一2級裝置藉由反相器或緩衝器使其輸入與2級裝置輸入分開,用以提供在該2級裝置之輸出級與輸入電容之間的隔離。
- 如申請專利範圍第1項的積體電路晶片,其中該複數個驅動器係從具有邏輯級和輸出級的2級元件所形成,並且該邏輯級之寬度無關於該輸出級的寬度。
- 如申請專利範圍第1項的積體電路晶片,其中該複數個驅動器係從具有邏輯級和輸出級的2級元件所形成,並且該邏輯級之寬度無關於該輸出級之驅動強度。
- 如申請專利範圍第1項的積體電路晶片,其中複數個驅動器係從具有邏輯級和輸出級的2級元件所形成,且該輸出級使用匹配該邏輯級的並聯電晶體。
- 如申請專利範圍第1項的積體電路晶片,其中該一邏輯路徑不具有高驅動強度1級元件。
- 如申請專利範圍第1項的積體電路晶片,其中該至少一邏輯元件為關鍵路徑邏輯元件。
- 如申請專利範圍第1項的積體電路晶片,其中缺少反相器或緩衝器會引起該一2級裝置具有對其輸出的單一級驅動器。
- 一種方法,包含: 進行用於具有邏輯路徑之積體電路(IC)設計的佈局佈線運算;以及在該IC設計上進行設計最佳化運算,包括藉由用具有至少一1級弧的第一元件之2級元件變體取代沿著該邏輯路徑的另一個2級元件來加大沿著該邏輯路徑的驅動強度。
- 如申請專利範圍第8項的方法,其中該2級變體係由下列步驟來建立:識別具有該至少一1級弧的該第一元件;以及建立以2級形式的該高驅動元件之變體。
- 如申請專利範圍第9項的方法,其中建立以2級形式的該第一元件之變體的步驟包含:建立具有比該第一元件之驅動更低的驅動的該第一元件之反相的和緩衝的版本。
- 如申請專利範圍第8項的方法,更包含:檢查在元件庫中一或更多非最小驅動元件之時序弧,用以識別在形成單一級裝置到該元件輸出的該一或更多非最小驅動元件之各者內的時序弧,該一或更多非最小驅動元件包括該第一元件;以及將最小尺寸輸入級反相器或緩衝器加至在形成單一級裝置到該元件輸出的該一或更多非最小驅動元件之各者中該第一元件內的該時序弧之各者,用以建立一或更多新的元件,該一或更多新的元件包括該2級元件變體。
- 如申請專利範圍第11項的方法,更包含: 將另一個新的元件加到運算以輸出該第一新的元件之邏輯補數的該庫。
- 如申請專利範圍第8項的方法,更包含:建立具有驅動強度之範圍之複數個以2級形式的標準元件之變體,該複數個版本係從具有與輸出分開了至多一級的至少一時序弧之以1級形式的標準元件來產生,該複數個變體包括該2級元件變體。
- 如申請專利範圍第13項的方法,其中該變體之第一級係由最小尺寸驅動器組成。
- 如申請專利範圍第13項的方法,其中該標準元件為FinFET標準元件。
- 如申請專利範圍第13項的方法,其中2級元件之輸入狀態之寬度係無關於該2級元件之輸出級的寬度和驅動強度。
- 如申請專利範圍第8項的方法,其中該邏輯路徑係在基於FinFET的標準元件中。
- 一種以申請專利範圍第8項之方法建立的積體電路。
- 如申請專利範圍第18項的積體電路,更包含複數個邏輯路徑,其具有從鰭狀場效電晶體(FinFET)的電晶體形成的複數個驅動器,該複數個邏輯路徑之至少一者具有帶有2級時序弧的2級裝置,其中一2級裝置藉由反相器或緩衝器使其輸入與2級裝置輸入分開,用以提供在該2級裝置之輸出級與輸入電容之間的隔離。
- 一種製造物件,具有儲存指令的一或更多非暫態電腦可讀儲存媒體,當由系統執行時,指令用以進行用於建置電子設計的方法,該方法包含:進行用於具有邏輯路徑之積體電路(IC)設計的佈局佈線運算;以及在該IC設計上進行設計最佳化運算,包括藉由用具有至少一1級弧的第一元件之2級元件變體取代沿著該邏輯路徑的另一個2級元件來加大沿著該邏輯路徑的驅動強度。
- 如申請專利範圍第20項的製造物件,其中該2級變體係由下列步驟所建立:識別具有至少一1級弧的該第一元件;以及建立以2級形式的該高驅動元件之變體。
- 如申請專利範圍第21項的製造物件,其中建立以2級形式的該第一元件之變體的步驟包含:建立具有比該第一元件之驅動更低的驅動之反相的或緩衝的版本。
- 如申請專利範圍第20項的製造物件,其中方法更包含:檢查在元件庫中一或更多非最小驅動元件之時序弧,用以識別在形成單一級裝置到該元件輸出的該一或更多非最小驅動元件之各者內的時序弧,該一或更多非最小驅動元件包括該第一元件;以及將最小尺寸輸入級反相器或緩衝器加至在形成單一級裝置到該元件輸出的該一或更多非最小驅動元件之各者中 該第一元件內該時序弧之各者,用以建立一或更多新的元件,該一或更多新的元件包括該2級元件變體。
- 如申請專利範圍第20項的製造物件,其中方法更包含:建立具有驅動強度之範圍的複數個以2級形式的標準元件之變體,該複數個版本係從具有與輸出分開了至多一級之至少一時序弧的以1級形式的標準元件來產生,該複數個版本包括該2級元件變體。
- 如申請專利範圍第20項的製造物件,其中該標準元件為FinFET標準元件。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/668,687 US20160283641A1 (en) | 2015-03-25 | 2015-03-25 | Method and apparatus for improving performance and power in an electronic design using standard cells |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201702914A true TW201702914A (zh) | 2017-01-16 |
TWI603218B TWI603218B (zh) | 2017-10-21 |
Family
ID=56975120
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105105124A TWI603218B (zh) | 2015-03-25 | 2016-02-22 | 用於使用標準元件改善在電子設計上的效能與功率的方法及設備 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20160283641A1 (zh) |
EP (1) | EP3274881B1 (zh) |
TW (1) | TWI603218B (zh) |
WO (1) | WO2016153611A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI663522B (zh) * | 2018-11-20 | 2019-06-21 | 易華電子股份有限公司 | 印刷電路板佈線校正系統 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10339250B2 (en) * | 2016-11-29 | 2019-07-02 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method of generating engineering change order (ECO) layout of base cell and computer-readable medium comprising executable instructions for carrying out said method |
US10741539B2 (en) * | 2017-08-30 | 2020-08-11 | Taiwan Semiconductor Manufacturing Co., Ltd. | Standard cells and variations thereof within a standard cell library |
DE102017127276A1 (de) | 2017-08-30 | 2019-02-28 | Taiwan Semiconductor Manufacturing Co., Ltd. | Standardzellen und abwandlungen davon innerhalb einer standardzellenbibliothek |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6269468B1 (en) * | 1999-03-02 | 2001-07-31 | International Business Machines Corporation | Split I/O circuit for performance optimization of digital circuits |
US8015517B1 (en) * | 2008-06-06 | 2011-09-06 | Nangate A/S | Library sizing |
US8881084B2 (en) * | 2010-05-14 | 2014-11-04 | Taiwan Semiconductor Manufacturing Company, Ltd. | FinFET boundary optimization |
US8689154B2 (en) * | 2012-04-13 | 2014-04-01 | Globalfoundries Inc. | Providing timing-closed FinFET designs from planar designs |
US8878303B2 (en) * | 2012-12-28 | 2014-11-04 | Broadcom Corporation | Geometric regularity in fin-based multi-gate transistors of a standard cell library |
US8995176B2 (en) * | 2013-03-07 | 2015-03-31 | Taiwan Semiconductor Manufacturing Company, Ltd. | Dual-port SRAM systems |
US8966423B2 (en) * | 2013-03-11 | 2015-02-24 | Globalfoundries Inc. | Integrating optimal planar and three-dimensional semiconductor design layouts |
US10242142B2 (en) * | 2013-03-14 | 2019-03-26 | Coventor, Inc. | Predictive 3-D virtual fabrication system and method |
-
2015
- 2015-03-25 US US14/668,687 patent/US20160283641A1/en not_active Abandoned
-
2016
- 2016-02-09 WO PCT/US2016/017180 patent/WO2016153611A1/en active Application Filing
- 2016-02-09 EP EP16769209.4A patent/EP3274881B1/en active Active
- 2016-02-22 TW TW105105124A patent/TWI603218B/zh active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI663522B (zh) * | 2018-11-20 | 2019-06-21 | 易華電子股份有限公司 | 印刷電路板佈線校正系統 |
Also Published As
Publication number | Publication date |
---|---|
EP3274881A4 (en) | 2018-12-05 |
US20160283641A1 (en) | 2016-09-29 |
EP3274881A1 (en) | 2018-01-31 |
TWI603218B (zh) | 2017-10-21 |
EP3274881B1 (en) | 2024-03-13 |
WO2016153611A1 (en) | 2016-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI603218B (zh) | 用於使用標準元件改善在電子設計上的效能與功率的方法及設備 | |
Zain | High Speed And Lowpower Gdi Based Full Adder | |
US7941776B2 (en) | Method of IC design optimization via creation of design-specific cells from post-layout patterns | |
Nikoubin | Hybrid logical effort for hybrid logic style full adders in multistage structures | |
Bryant | Extraction of gate-level models from transistor circuits by four-valued symbolic analysis | |
US9483597B1 (en) | Opportunistic candidate path selection during physical optimization of a circuit design for an IC | |
KR20140102274A (ko) | 상태 기계 격자에서의 불리언 로직 | |
Levi et al. | Logical effort for CMOS-based dual mode logic gates | |
US10394988B2 (en) | Majority logic synthesis | |
US11768988B2 (en) | Standard unit for system on chip design, and data processing unit, operation chip and computing apparatus using same | |
Fraisse et al. | Boolean satisfiability-based routing and its application to xilinx ultrascale clock network | |
US9342642B1 (en) | Statistical optimization in place-and-route | |
US10169526B2 (en) | Incremental parasitic extraction for coupled timing and power optimization | |
US20180075183A1 (en) | Accurate statistical timing for boundary gates of hierarchical timing models | |
US7865856B1 (en) | System and method for performing transistor-level static performance analysis using cell-level static analysis tools | |
Lemberski et al. | Asynchronous sum‐of‐products logic minimization and orthogonalization | |
Smith et al. | Concurrently optimizing FPGA architecture parameters and transistor sizing: Implications for FPGA design | |
JP3102408B2 (ja) | 信号遅延低減方法及び装置 | |
Raghav et al. | A comparative analysis of power and delay optimise digital logic families for high performance system design | |
Diwan et al. | Design and Characterization of a Novel FinFET based NCL Cell Library for High Performance Asynchronous Circuits | |
US10445456B1 (en) | Incremental routing for circuit designs using a SAT router | |
US20220366110A1 (en) | Power reduction in very large-scale integration (vlsi) systems | |
KR101991622B1 (ko) | 삼진 순차 회로 장치 | |
JP2006146595A (ja) | 遅延特性評価のための回路シミュレーション方法、回路シミュレーションプログラム及び回路シミュレーション装置 | |
JP6545406B2 (ja) | 高位合成装置、高位合成方法および高位合成プログラム |