3 research outputs found

    Unified approach for simultaneous functional and timing ECO

    No full text

    Metal-Only Engineering Change Order Optimization for Integrated Circuit Design

    No full text
    隨著積體電路晶片設計複雜度的急劇增加,某些重要的規格變更或極難偵測 的設計缺陷幾乎是不可避免的在設計階段的晚期才被提出或發現。因此只需修訂 金屬層光罩之電路設計變更在工業界的設計流程中被廣泛的使用。這些設計變更 可以是修正設計缺陷或是更改產品規格的功能性設計變更或者是收斂時序與最 佳化的時序設計變更。另外,為了讓此作用於金屬層的設計變更可以實行,會在 擺置與繞線階段的前期便事先將備用元件事先散置在整個設計中。傳統上利用標 準元件作為備用元件。然而,這些標準備用元件會被它們事先決定好的數量、擺 放位置以及功能所限制。於是,一種名為可配置金屬層陣列之備用元件被發展出 來以克服標準備用元件先天的限制,並使得作用於金屬層的設計變更的實用性更 加增強。為了在很短的週轉時間內補救晚期所發現的設計缺陷並且減輕產品上市 時機的壓力,作用於金屬層的設計變更已經在當代電路晶片設計流程中變成一個 相當流行並普遍的步驟。 本篇論文中,我們針對作用於金屬層之設計變更提出了一個完整的解決方 法。首先,針對使用標準備用元件的設計變更:一、我們提出了一個以穩定配對 為基礎的功能性金屬層設計變更合成器。此合成器可在不犧牲時序與可繞度的狀 況下解決備用元件的資源競爭問題。二、在時序設計變更上,和前人使用元件延遲和負鬆弛為量測基礎不同,我們提出藉由考慮路徑平滑度來量測時序關鍵性, 並使用貝茲曲線當作量測的黃金曲線。我們進一步將違反時序路徑分割成各自獨 立的線段,並導出了傳播性質使得可以同時間修正多條違反時序路徑。三、我們 發現將功能性設計變更與時序設計變更分別處理可能會導致無法修正所有違反 的時序。因此,我們提出了文獻中第一個同時考慮功能性與時序的設計變更方 法。我們提出增廣的二分圖來作為兩種設計變更的模型。 另一方面,我們提出了一個新的設計變更問題—利用可配置金屬層陣列備用 元件之設計變更。首先,我們探討這個新問題的特性,並提出了一個新的量測此 陣列備用元件的功能彈性的度量—活躍度。接著我們發展了兩個新的設計變更最 佳化的演算法。一、在時序設計變更方面,為了完全利用此陣列備用元件的特性, 我們同時考慮活躍度、可繞度以及滿足時序要求。之後,我們利用反覆的混合型 整數線性規劃來解決此時序變更的問題。二、針對功能性設計變更,我們發現這 個新的功能性設計變更問題在選擇備用元件上有著在邏輯上與實體上動態變化 花費的天性。與現有的功能性設計變更的研究不同,我們從陣列備用元件往設計 變更補釘方向實行反向的技術映射。之後,我們設計了備用元件關係圖來記錄陣 列備用元件在幾何上的相鄰關係,並且在此關係圖與設計變更補釘所形成的邏輯 網路交互切換以控管動態花費並完成設計變更最佳化。As the design complexity grows dramatically, late design changes are nearly in- evitable to handle specification modifications and/or rectify design errors. Metal- only engineering change order (ECO), which revises only metal layers to realize incremental design changes, is widely used in the industrial design flow. These in- cremental changes can be functional ECO, dedicated for functional rectification or specification modification, or timing ECO, dedicated for timing closure and opti- mization. In addition, to facilitate metal-only ECO, (redundant) spare cells are inserted at the early placement and routing stage. Conventionally, standard cells are regarded as spare cells. Nevertheless, these pre-inserted standard spare cells are limited by their pre-determined quantity, functionality, and locations. To overcome the inflexibility of standard cells, metal-configurable gate-array spare cells are de- veloped, and thus further enhance the practicality of metal-only ECO. To sum up, metal-only ECO becomes prevalent in the modern IC design flow to remedy late- found failures in a short turn-around time and reduce the time-to-market pressure. In this dissertation, we propose a comprehensive solution for metal-only ECO. First, for metal-only ECO using standard spare cells: 1) We propose a stable match- ing based functional metal-only ECO synthesizer that can resolve spare cell com- petition and does not sacrifice timing and routability. 2) Different from negative slack and gate delay used in most prior work, we propose a new metric of timing criticality, fixability, by considering the smoothness of timing violating paths, and using the B ́ezier curve as the golden path to measure the smoothness of a path. Furthermore, in order to concurrently fix timing violations, we derive a propagation property to divide violating paths into independent segments. 3) We observe that separating functional and timing ECO may fail to fix all timing violations. Con- sequently, we present the first work to perform simultaneous functional and timing ECO. We use an augmented bipartite graph to model both types of ECO. Second, we address a new problem of ECO optimization using metal-configurable gate-array spare cells. We first study the properties of this new ECO problem, pro- pose a new cost metric, aliveness, to model the capability of a spare gate array, and then develop two ECO optimization algorithms—functional ECO and timing ECO using metal-configurable gate-array spare cells. 1) For the new timing ECO, we con- sider aliveness, routability, and timing satisfaction in our framework to fully utilize the capability of spare arrays. Then, we resort to iterative mixed integer linear pro- gramming (MILP) in our timing ECO framework, where a set of independent and small MILPs are computed. 2) For the new functional ECO, we observe that this functional ECO problem has the nature of dynamic logical and physical costs for selecting spare gate arrays. Unlike existing functional ECO works, which perform technology mapping based on ECO patches, we perform reverse mapping from spare gate arrays to handle these dynamic costs. Then, we devise a spare array relation graph to record geometrical adjacency among spare gate arrays and interleave with the AIG network of ECO patches.Table of Contents Acknowledgements vii Abstract (Chinese) ix Abstract xi List of Tables xvii List of Figures xix Chapter 1. Introduction 1 1.1 RecentResearchDevelopmentonMetal-OnlyECO . . . . . . . . . . . . 3 1.1.1 FunctionalECO ............................ 3 1.1.2 TimingECO.............................. 5 1.2 Metal-OnlyECOChallenges......................... 6 1.2.1 ResourceCompetition......................... 7 1.2.2 TimingCriticalityIdentification ................... 7 1.2.3 Spare Cell Flexibility: Metal-Configurable Gate Array Spare Cells 7 1.2.4 DynamicCost ............................. 8 1.3 OverviewoftheDissertation......................... 10 1.3.1 Stable Matching Based Functional ECO Optimization . . . . . . . 11 1.3.2 Timing ECO Optimization via B ́ezier Curve Smoothing and Fix- abilityIdentification.......................... 12 1.3.3 SimultaneousFunctionalandTimingECO . . . . . . . . . . . . . 12 1.3.4 Timing ECO Optimization Using Metal-Configurable Gate-Array SpareCells............................... 13 1.3.5 Functional ECO Using Metal-Configurable Gate-Array Spare Cells 14 1.4 OrganizationoftheDissertation....................... 14 Chapter 2. Stable Matching Based Functional ECO Optimization 17 2.1 Problem Formulation and Traditional ECO Synthesis Flow . . . . . . . . 18 2.1.1 ProblemFormulation ......................... 18 2.1.2 TraditionalECOSynthesisFlow ................... 20 2.1.3 Terminology .............................. 21 2.2 StableMatchingBasedFunctionalECOSynthesis . . . . . . . . . . . . . 24 2.2.1 TechnologyMapping:GuidedABC ................. 24 2.2.2 SpareCellSelection:StableMatching ................ 27 2.2.3 TheComplexityofSpareCellSelection . . . . . . . . . . . . . . . 31 2.3 ExtensiontoCongestion-DrivenFunctionalECO. . . . . . . . . . . . . . 32 2.3.1 CongestionEstimation......................... 32 2.3.2 Congestion-DrivenStableMatching ................. 34 2.4 ExperimentalResults............................. 36 2.4.1 ExperimentalSettings......................... 36 2.4.2 ComparisonBetweenECOSynthesisFlows . . . . . . . . . . . . . 37 2.4.3 Wirelength-Driven Functional ECO Results . . . . . . . . . . . . . 38 2.4.4 Congestion-Driven Functional ECO Results . . . . . . . . . . . . . 42 Chapter 3. Timing ECO Optimization via B ́ezier Curve Smoothing and Fixability Identification 45 3.1 PreliminariesandProblemFormulation................... 49 3.1.1 TimingLibraryandTimingModel.................. 49 3.1.2 ProblemFormulation ......................... 50 3.2 SlackProperties................................ 50 3.3 OurAlgorithm................................. 55 3.3.1 Overview................................ 55 3.3.2 FixabilityComputation ........................ 56 3.3.3 SpareCellSelection .......................... 59 3.3.4 ViolatingPathSegmentComposition ................ 62 3.3.5 ComplexityAnalysis.......................... 64 3.4 ExperimentalResults............................. 65 3.4.1 ExperimentalSettings......................... 65 3.4.2 Comparison with State-of-the-Art Timing ECO Approaches . . . . 66 3.4.3 Effectiveness of Resource-Aware Fixability and Multiple Gate Ex- traction................................. 68 Chapter 4. Simultaneous Functional and Timing ECO 71 4.1 Preliminaries.................................. 73 4.1.1 TimingModel ............................. 74 4.1.2 ProblemFormulation ......................... 74 4.2 Simultaneous Functional and Timing ECO Synthesis . . . . . . . . . . . 75 4.2.1 Overview................................ 75 4.2.2 ConstantInsertionandBridging ................... 75 4.2.3 ECORemappingandConversion................... 77 4.2.4 SpareCellselection .......................... 79 4.3 ExperimentalResults............................. 83 4.3.1 ExperimentalSettings......................... 83 4.3.2 TimingECOResults ......................... 84 4.3.3 FunctionalECOResults........................ 85 4.3.4 Simultaneous Functional and Timing ECO Results . . . . . . . . . 86 Chapter 5. Timing ECO Optimization Using Metal-Configurable Gate- Array Spare Cells 89 5.1 ProblemFormulationandCostMetrics ................... 92 5.1.1 SpareArrays.............................. 93 5.1.2 Aliveness ................................ 94 5.1.3 Routability............................... 95 5.1.4 ProblemFormulation ......................... 96 5.2 SingleMILPFormulationforTimingECO ................. 96 5.2.1 GenericSingleMILP ......................... 96 5.2.2 ReducedSingleMILP .........................100 5.3 OurTimingECOOptimizationFramework. . . . . . . . . . . . . . . . .101 5.3.1 Overview................................101 5.3.2 FixableandCriticalGateExtraction. . . . . . . . . . . . . . . . .103 5.3.3 SpareArrayAssignment........................103 5.3.4 SpareArrayPacking..........................106 5.3.5 Extension to Mixed Standard Spare Cells and Spare Arrays . . . . 108 5.4 ExperimentalResults.............................109 5.4.1 ExperimentalSettings.........................109 5.4.2 Complexity Comparison Between Different MILP Formulations . . 111 5.4.3 ResultsofOurFramework ......................111 Chapter 6. Functional ECO Using Metal-Configurable Gate-Array Spare Cells 115 6.1 ProblemFormulationandCostMetrics ...................118 6.1.1 ProblemFormulation .........................118 6.1.2 TheLogicalCost............................118 6.1.3 ThePhysicalCost ...........................119 6.2 OurFunctionalECOFramework.......................120 6.2.1 Overview................................120 6.2.2 BoundingBoxCalculation ......................121 6.2.3 RelationGraphGeneration ......................121 6.2.4 ResourceBudgeting ..........................123 6.2.5 LogicalandPhysicalMapping ....................124 6.2.6 AdjustmentandNegotiation .....................128 6.3 ExperimentalResults.............................128 6.3.1 ExperimentalSettings.........................128 6.3.2 ResultsofOurFramework ......................129 Chapter 7. Concluding Remarks and Future Work 133 7.1 ConcludingRemarks .............................133 7.1.1 Metal-onlyECObyUsingStandardSpareCells. . . . . . . . . . .133 7.1.2 Metal-onlyECObyUsingSpareArrays . . . . . . . . . . . . . . .134 7.2 FutureWork..................................135 Bibliography 137 Vita 143 Publication List 14
    corecore