A Topology-based ECO Routing Methodology for Mask Cost Minimization Po-Hsun Wu, Shang-Ya Bai, and Tsung-Yi Ho Department of Computer Science and Information Engineering, National Cheng Kung University, Tainan, Taiwan , ASPDAC,2014 OUTLINE I. INTRODUCTION II. TILE-BASED ROUTING GRAPH CONSTRUCTION III. ECO ROUTING WITH MASK COST MINIMIZATION IV. NETWORK FLOW-BASED ECO ROUTING REFINEMENT V. EXPERIMENTAL RESULT VI. CONCLUSION INTRODUCTION With the rapid evolution of process technology over the last decade, more complicated design complexity becomes inevitable. As the design complexity becomes more complicated, more circuit failure and constraint violations may occur during later design stage due to increasing design rules. INTRODUCTION Engineering Change Order (ECO) technique is proposed to keep transistorlayer masks intact and only re-spin the less expensive metallayer masks to perform incremental design changes. INTRODUCTION [8] presented a tile-based ECO router to improve total wirelength and used vias. [9] proposed a topology-aware buffer insertion and GPU-based massively parallel rerouting methodology to maintain circuit performance. [5] developed a redundant-wires-aware ECO approach to improve circuit timing and reduce the number of changed masks. Since no ECO router can globally optimize different ECO nets to minimize the number of changed masks, we propose a new ECO routing flow that is capable to finish ECO routing while reducing total number of changed masks. I. TILE-BASED ROUTING GRAPH CONSTRUCTION II. ECO ROUTING WITH MASK COST MINIMIZATION III. NETWORK FLOW-BASED ECO ROUTING REFINEMENT TILE-BASED ROUTING GRAPH CONSTRUCTION The tile-based routing graph can be constructed by extending lines through the boundaries of all obstacles until they intersect with other obstacles or the boundaries of other routing regions, where each tile is represented by a respective node and an edge between two nodes indicates two tiles are adjacent. TILE-BASED ROUTING GRAPH CONSTRUCTION All adjacent tiles with vertical (horizontal) routing direction are horizontally (vertically) merged, then the maximum horizontally/vertically stripped (MHS/MVS) tiles are applied for the layers with vertical/horizontal routing direction. I. TILE-BASED ROUTING GRAPH CONSTRUCTION II. ECO ROUTING WITH MASK COST MINIMIZATION III. NETWORK FLOW-BASED ECO ROUTING REFINEMENT ECO ROUTING WITH MASK COST MINIMIZATION The proposed ECO routing algorithm contains three major steps. Initially, all possible routing topologies of each ECO net are derived based on Obstacle-Avoiding Rectilinear Steiner Minimum Tree (OARSMT). Second, the proposed ILP model is used to optimally select the routing topology of each ECO net. Finally, the multi-source-multi-sink maze routing model is facilitated to connect all ECO nets. Obstacle-Avoiding Rectilinear Steiner Minimum Tree (OARSMT) Given a set T of n points, called terminals, and a set O of m rectilinear obstacles in the plane, find a set S of additional points, called Steiner points, such that the length of a rectilinear minimum spanning tree of T∪S, which avoids all obstacles in O, is minimized. Assign a corresponding parameter, ti, with initial value 0 for each tile i. If the obtained OARSMT pass through tile i, then increase ti by 1. Finally, the tile with the maximum parameter value is transformed into an pseudo-obstacle in later OARSMT generation procedure. Routing Topology Selection Since the routing space have been occupied by a great number of pre-routed nets and pre-placed macros, only limited routing space can be facilitated to perform ECO routing. Besides, different routing orders and different selected routing topologies which significantly affect the routing quality should also be considered. The ILP model is adopted Used to restrict only one routing topology of each ECO net is chosen. 𝑥𝑖𝑗 is a Boolean variable which equals to 1 if the 𝑖 𝑗𝑡ℎ jth routing topology of ECO net 𝑁𝐸𝐶𝑂 is chosen. Used to make sure all capacity constraints are satisfied. 𝑘 𝑎𝑖𝑗 is a Boolean constant which equals to 1 if the 𝑖 𝑗𝑡ℎ routing topology of ECO net 𝑁𝐸𝐶𝑂 passes through the tile boundary T𝐵𝑘 and 𝑐𝑘 is its corresponding capacity. Used to compute the number of changed masks for the current routing solution. 𝑙𝑖𝑗 denotes the number of changed masks by 𝑖 choosing the 𝑗𝑡ℎ routing topology of ECO net 𝑁𝐸𝐶𝑂 . I. TILE-BASED ROUTING GRAPH CONSTRUCTION II. ECO ROUTING WITH MASK COST MINIMIZATION III. NETWORK FLOW-BASED ECO ROUTING REFINEMENT NETWORK FLOW-BASED ECO ROUTING REFINEMENT In this section, an ECO routing refinement approach is proposed to further reduce the number of changed masks. The key idea of ECO routing refinement is to move each routing segment at the layer 𝐿𝑢𝑠𝑒𝑑 (i.e., the source layer) to the routing tracks at the layer 𝐿𝑢𝑠𝑒𝑑 - 2 (i.e., the target layer). To effectively reduce the number of changed masks, an MCMF model is developed to simultaneously distribute all target segments and all rerouted segments to all available routing tracks at the target layer. EXPERIMENTAL RESULT EXPERIMENTAL RESULT EXPERIMENTAL RESULT CONCLUSION It is the first work to simultaneously optimize all ECO nets to reduce the number of changed masks.