Vertical M1 Routing-Aware Detailed Placement for Congestion and Wirelength Reduction in Sub-10nm Nodes
|
|
- Catherine Webster
- 6 years ago
- Views:
Transcription
1 Vertical M1 Routing-Aware Detailed Placement for Congestion and Wirelength Reduction in Sub-10nm Nodes Peter Debacker +, Kwangsoo Han, Andrew B. Kahng, Hyein Lee, Praveen Raghavan + and Lutong Wang ECE and CSE Departments, UC San Diego, La Jolla, CA 92093, USA + imec, Leuven 3001, Belgium {peter.debacker, praveen.raghavan}@imec.be, {kwhan, abk, hyeinlee, luw002}@ucsd.edu ABSTRACT Aggressive pitch scaling in sub-10nm nodes has introduced complex design rules which make routing extremely challenging. Cell architectures have also been changed to meet the design rules. For example, metal layers below M1 are used to gain additional routing resources. New cell architectures wherein inter-row M1 routing is allowed force consideration of vertical alignment of cells. In this work, we propose a mixedinteger linear programming (MILP)-based, detailed placement optimization to maximize direct vertical M1 routing utilization for congestion and wirelength reduction. 1. INTRODUCTION In tandem with aggressive pitch scaling in sub-10nm technology nodes, the detailed routing problem has become extremely challenging. Routing today must deal with large numbers of complex design rules that are driven by patterning technologies notably, self-aligned multiple patterning and line-end cut on minimum-pitch metal layers, as well as contact- and via-layer patterning. The quest to scale PPAC (power, performance, area, cost) has led to a very delicate balancing act among power delivery, routing resource, and resistivity in middle-ofline (MOL) and local metal layers. To address these challenges, the industry has seen rapid innovation in standard-cell architecture starting at the foundry 10nm ( N10 ) node, and accelerating into the N7/N5 enablement. As examples of cell architecture evolution, metal layers below M1 are used for internal routing within a standard cell, or horizontal M1 power/ground pins are removed to gain additional routing resources for inter-cell routing. These new cell architectures, wherein inter-row M1 routing is allowed, force new consideration of vertical alignment of cells. 1.1 New Cell Architectures in Sub-10nm Figure 1 illustrates inverter (INV) layout in three types of cell architectures: (a) conventional 12-track, (b) ClosedM track, and (c) OpenM1 7.5-track. The conventional 12-track INV has power/ground (/) in M1, which prevents use of vertical M1 routing for pin access. In other words, with the conventional cell architecture, pin access is available only with M2 routing. However, in sub-10nm nodes, where metal layers below M1 are used for internal cell routing, the M1 layer can be used for pin access as well as for routing with both the ClosedM1 and OpenM1 cell architectures. ClosedM1 standard cell architecture. A ClosedM1 standard cell has 1D vertical M1 pins, including / pins, as shown in Figure 1(b). The M1 / pins at the left and right boundaries of the cell are connected to M2 / pins at the top and bottom boundaries by using via V12. In this way, / pins do not block interrow M1 routing. Also, due to the design rules for self-aligned multiple patterning (SAMP), the M1 pins in ClosedM1 have 1D shapes and are regularly placed with a fixed pitch. In particular, the ClosedM1 cell library that we use in this work Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Permissions@acm.org. DAC 17, June 18-22, 2017, Austin, TX, USA Copyright 2017 ACM /17/06...$15.00 DOI: A M1 M2 A (a) (b) (c) Figure 1: New cell architectures to gain additional routing resources. (a) Conventional 12-track INV; (b) ClosedM track INV; (c) OpenM1 7.5-track INV. V01 M0 I Cell boundary has M1 pitch equal to the width of a placement site. Therefore, if we vertically align pins of given net, these pins can be connected by a small M1 segment with negligible routing cost or overheads. Figure 2(a) illustrates an example of direct vertical M1 routing (dm1) between two INVs. Here we define a direct vertical M1 routing as a (sub)net routing using only one M1 routing segment. Importantly, even though the ClosedM1 cell architecture enables inter-row M1 routing, the realized power/performance/area (PPA) benefit from M1 routing may not be significant unless a router can effectively exploit the availability of direct vertical M1 routing. This is because M1 routing tracks are blocked by M1 pins, and the inter-row M1 routing can be used only when two pins are sufficiently aligned. Thus, both the detailed placer and the router must comprehend vertical alignment in order to maximally exploit direct vertical M1 routing for ClosedM1-based designs. OpenM1 standard cell architecture. At sub-10nm nodes, the OpenM1 standard cell architecture is introduced to enable more M1 routing resource than with the ClosedM1 architecture. For OpenM1 cells, M1 routing is open since most of the pins are on the M0 layer, which is a complementary layer below the M1 layer. As shown in Figure 1(c), the I,,, pins have horizontal M0 segments, and an M1 segment connects two M0 segments for the pin. We note that there is no connection between M0 and M2 segments for / pins. Thus, M1 routing for / pins must be accomplished with a special structure for the power distribution network. 1 In terms of signal routing, if two pins are overlapped horizontally (i.e., their projections onto the x-axis intersect), direct vertical M1 routing can be used to connect them. Figure 2(b) shows a direct vertical M1 routing between the pin of the upper INV and the I pin of the lower INV. As long as the and I pins are overlapped horizontally, the two pins can be connected using a single vertical M1 segment along with two V01 vias. Compared to both the conventional and the ClosedM1 cell architectures, OpenM1 effectively enables an additional metal layer for routing, which can have considerable routability benefits. Furthermore, unlike with the sub-10nm ClosedM1 architecture, conventional P&R tools can easily find benefits from OpenM1 without any special optimization to maximize M1 routing. This being said, below we explore the question of whether there might still be room (beyond the current state of the art in commercial P&R tooling) to optimize for better pin accessibility in OpenM1-based designs, given that pins are horizontal. For instance, by maximizing overlap between pins in a net, we might induce a router to use more direct vertical M1 routing between pins, which would reduce usage (blockage) and detouring on upper layers (M2, M3, etc.). In Subsection 5.2, we report experimental results with and 1 For example, vertical M1 segments must be inserted with a fixed pitch to staple M2 and M0 / pins.
2 without a detailed placement optimization that maximizes pin overlaps for OpenM1. A A I pin overlap I (a) (b) Figure 2: Direct vertical M1 routing examples: (a) ClosedM1, (b) OpenM1. M0 V01 M1 routing M1 M2 Cell boundary 1.2 This Work In this work, we propose a vertical M1 routing-aware detailed placement optimization based on mixed-integer linear programing (MILP) for two new sub-10nm cell architectures, i.e., OpenM1 and ClosedM1. We note that the vertical M1 routingaware detailed placement is a completely different problem from traditional wirelength-driven detailed placement, in the sense that the routing cost is non-monotonic due to vertical M1 routing, which is almost free. Our MILP formulation enables exploration of the tradeoff between minimization of the traditional half-perimeter wirelength (HPWL) objective and maximization of the number of vertical pin alignments (= potential direct pin-pin routings using vertical M1) via a weighting factor (α). Below, we specifically study the impact of α on routed wirelength. The main contributions of our work are summarized as follows. 2 We propose an MILP-based detailed placement optimization for two cell architectures that are relevant in sub-10nm process nodes, to consider and exploit (direct vertical) inter-row M1 routing. We propose a distributable window-based optimization to overcome the runtime limitation of the MILP-based approach. We implement our proposed approach in C++ with OpenAccess [19] and incorporate it into a commercial tool-based placement and routing (P&R) flow. The results from our approach are evaluated using a commercial tool flow. We explore various metaheuristic configurations (optimization degrees of freedom, window size, iteration strategy, etc.) and study impacts on runtime and solution quality. The remainder of this paper is organized as follows. Section 2 reviews related previous works. In Section 3, we describe our MILP formulations for detailed placement optimization considering direct vertical M1 routing. In Section 4, we explain our overall optimization metaheuristic, centered around a distributable window-based optimization. Section 5 provides experimental results and analysis. We give conclusions and future research directions in Section PREVIOUS WORK We classify relevant previous works on detailed placement and placement legalization into three categories: (i) dynamic programming-based approaches, (ii) graph model-based approaches, and (iii) MILP-based approaches. Our present work is most closely related to the third category. Dynamic programming-based approaches. Dynamic programming (DP) has been a popular framework, particularly for row-based detailed placement, for many years. Kahng et al. [5] propose a HPWL-driven ordered single-row detailed placement with free sites. Gupta et al. [2] propose a DP-based singlerow placement optimization to enable sub-resolution assist 2 The MILP formulation will differ according to the standard cell template and layer directionality. However, our distributable optimization and exploration of metaheuristic configurations can apply with any technology. feature insertion for improved manufacturability. Subsequent work addresses a 2D formulation [3], using DP in which vertical and horizontal costs are calculated with restricted perturbations. Hur and Lillis [8] propose a DP-based optimal interleaving for intra-row optimization in detailed placement. For double-patterning-aware detailed placement, Gupta et al. [1] propose a DP-based algorithm that solves coloring conflicts while minimizing the displacement of timing-critical cells. Graph-based approaches. A literature of graph modelbased approaches typically formulates placement optimization as a shortest-path computation in an appropriate directed graph. Kahng et al. [6] legalize placement of a single row with various minimization objectives, by calculating a shortest path in a directed acyclic graph constructed from the input ordering of cells. The work of [13] proposes a triple-patterningaware detailed placement using a graph model. The authors formulate a graph to determine cell locations as well as coloring solutions for a single row placement. Du and Wong [7] address the abutment of source and drain in FinFET-based cell placement. The authors propose a graph model that captures cell flipping and adjacent-cell swapping as underlying operations for detailed placement perturbation. A shortestpath algorithm then minimizes the cost induced from the source-drain abutment. Lin et al. [12] propose a graph-based detailed placement to resolve inter-row middle-of-line conflicts. Similar to [7], a graph is constructed to handle cell flipping, swapping and shifting operation for local reordered single row refinement. MILP-based approaches. While DP-based and graph model-based approaches are efficient for single-row placement, it is not easy to handle multiple-row placement optimizations (specifically, in the context of this work, vertical M1 routingaware placement) with these approaches due to interaction between vertically adjacent cells. However, several mixed integer-linear programming (MILP)-based approaches have been proposed which handle both single-row and multiple-row placement. Lin and Chu [11] formulate a MILP for triplepatterning-aware detailed placement. The MILP is used to assign a coloring solution for each standard cell and determine the location of each cell in a single row, while minimizing placement perturbation and coloring conflicts. Li and Koh [9] propose MILP-based detailed placement approaches using single-cellplacement (SCP) variables. The SCP variables correspond to locations, orientations as well as placement sites of each cell. The MILP determines the best SCP variable for each cell. The same authors extension [10] supports mixed-size circuits and improves runtime by bounding solution spaces. Han et al. [4] adopt the MILP model of [9] [10] and extend it to support N10- relevant design rules. Further, a distributable optimization is proposed based on partitioning of the layout into windows that can be independently legalized. In our present work, we use a similar strategy as the work of [4], extending it to handle vertical M1 routing for new cell architectures in sub-10nm. Overall, our work is distinguished from previous (MILP-based) approaches in that (i) we formulate inter-row cell alignment to maximize direct vertical M1 routing, which has not been addressed in previous works, and (ii) we improve the distributable optimization of [4] by a smart selection of target windows along with a metaheuristic strategy. 3. MILP-BASED OPTIMIZATION In this section, we give our problem statement, followed by MILP formulations for vertical M1 routing-aware detailed placement optimization with two sub-10nm cell architectures, OpenM1 and ClosedM1. Vertical M1 Detailed Placement Given: a post-routed placement, and per-cell placement perturbation range. Perform: Perturb the input placement to optimize a weighted sum of (minimized) HPWL and (maximized) inter-row pin alignments, while satisfying cell location perturbation bounds and placement legality constraints. 3.1 MILP Formulation for ClosedM1 We formulate an MILP for our detailed placement problem for the ClosedM1 cell architecture. In the following, we use notation as described in Table 1.
3 Table 1: Notations. Notation Meaning d pq a binary indicator of whether pins p and q are aligned (ClosedM1) or overlapped (OpenM1) w n half-perimeter wirelength (HPWL) of net n α a weighting factor for direct vertical M1 routing β n a weighting factor for HPWL of net n C, R, Q sets of cells, rows, columns (placement sites) N set of nets x(y) min,n minimum x (y) and maximum x (y) coordinates of x(y) max,n net n P n set of pins in net n G a large positive constant number H placement row height x c(y c) x (y) coordinate of the center of cell c x p(y p) relative x (y) coordinate of pin p to its owner cell s x (y) coordinate x min,p minimum (maximum) x coordinate of pin p (x max,p) relative to its owner cell s x coordinate f c a binary indicator of whether cell c is flipped s crq a binary indicator of whether cell c occupies site (r, q) K c a set of candidates of cell c λ k c a binary indicator of whether candidate k for cell c is selected x k c (yc k ) x (y) coordinate corresponding to λ k c fc k f c corresponding to λ k c s k crq s crq corresponding to λ k c γ maximum allowed length for a direct vertical M1 routing (unit: number of placement rows) v pq a binary indicator of whether pins p and q are within a given range (γ) in y direction o pq length of overlap between pins p and q δ minimum required overlap length for direct vertical M1 routing ɛ a weighting factor for the sum of overlap lengths (o pq) Minimize: α X d pq + X n N β n w n (1) Subject to: w n = x max,n x min,n + y max,n y min,n, n N (2) x max,n x c + x p, x min,n x c + x p y max,n y c + y p, y min,n y c + x p p P n, where c is the owner cell of pin p (3) (x c + x p) (x c + x q) G(1 d pq) (x c + x p) (x c + x q) G(1 d pq) (y c + y p) (y c + y q) G(1 d pq) + H (y c + y p) (y c + y q) G(1 d pq) H (p, q) in n, where c, c are owners of pins p, q (4) X λ k c = 1, c C (5) k K c f c = X fc k λ k c, c C (6) k K c x c = X X x k c λ k c, y c = yc k λ k c, c C (7) k K c k K c s crq = X s k crqλ k c, c C (8) k K c X s crq 1, q Q, r R (9) c C For a given input layout, our objective is to minimize the weighted sum of HPWL of all nets subtracted by the total number of pin alignments for direct vertical M1 routing, while achieving a legal placement (no overlap of cells). HPWL calculation. Constraint (2) calculates the HPWL for each net n, where HPWL as usual corresponds to the halfperimeter of the minimum bounding box that contains all pins of n. The maximum and minimum x, y coordinates of pins of the net n are obtained by Constraint (3). The absolute coordinates of pin p is determined by adding the coordinates (x c, y c) of p s owner cell c to (x p, y p). Checking pin alignment. Constraint (4) checks whether pins p, q are aligned, by comparing their absolute coordinates. If the (absolute) x coordinate of p, q are not the same, d pq = 0. Otherwise, the left side of the first and second constraints in Constraint (4) becomes zero, which makes d pq = 1 allowed. In our implementation, we always ensure d pq = d qp. Placement of each cell. Similar to [4], we assume that a perturbation range is given for each cell c, and that a cell cannot move beyond its given perturbation range. As in [4], we adopt the single-cell-placement (SCP) model of [10] to represent each candidate location and orientation for a cell. The binary variable λ k c represents a candidate k for a cell c, including the coordinates (x k c, yc k ), the orientation (fc k ), and whether placement site (r, q) is occupied (s k crq). These relations are handled by Constraints (6), (7) and (8). Constraint (5) ensures that exactly one candidate is chosen for cell c among all λ k c, k K c. Constraint (9) ensures a legal placement. 3.2 MILP Formulation for OpenM1 To maximize direct vertical M1 routing for the OpenM1 cell architecture, we must maximize overlap between target pins, which is different from the objective for ClosedM1. In addition to maximizing the number of overlapping pin pairs, we also maximize the sum of overlap lengths of each pin-to-pin (sub)net so as to increase the probability that the router completes the direct vertical M1 routing. The OpenM1 objective is: Minimize: α X d pq ɛ X o pq + X n N β n w n (10) To support OpenM1, we slightly modify the previous MILP formulation for ClosedM1 by introducing extra variables. In this case, d pq becomes a binary indicator of whether pins p and q are overlapped, and Constraint (4) is replaced with Constraints (11) (13). Our notation is again as described in Table 1. a x c + x min,p, b x c + x max,p, a x c + x min,q b x c + x max,q p, q, where c, c are the owner cells of pins p, q (11) (y c + y p) (y c + y q) G v pq + γ H (y c + y p) (y c + y q) G v pq γ H p, q, where c, c are the owner cells of pins p, q (12) o pq b a δ + G(1 d pq), o pq G(1 d pq) o pq G d pq (p, q) pin pairs in net n, n (13) d pq + v pq 1, p, q (14) Checking pin overlaps. Constraint (11) calculates the length of overlap in x direction between pins p and q. It first identifies the left side (a) and the right side (b) of the overlap between pins p and q. The overlap length o pq is determined by a and b in Constraint (14). Constraint (12) checks whether the absolute difference of y coordinates of pins p and q is larger than γh and, if so, forces v pq = 1. γ is a user-defined value for the maximum allowed vertical span of a direct vertical M1 routing. 3 We use γ = 3, which means that a direct vertical M1 routing can cross three placement rows. For the case v pq = 1, we do not need to make overlaps in the x direction since pins are multiple rows apart vertically; in such cases, it is difficult (i.e., highly improbable) to make a direct vertical M1 routing across multiple rows. Thus, Constraint (14) forces d pq = 0 if v pq = 1 so that the optimization does not make unnecessary overlaps. Constraint (13) forces d pq = 1 if b a is larger than a predefined δ, which is the minimum required overlap length. Then, the o pq is bounded by b a δ. Otherwise, o pq is bounded by zero. 3 For example, γ = 1 means that direct vertical M1 routing can traverse between two adjacent cell rows, and γ = 2 (resp. 3) means that direct vertical M1 routing can go through one (resp. two) intervening cell row(s).
4 4. OVERALL FLOW We now describe the overall flow of our optimization. 4.1 Distributable Optimization In practice, the most critical limitation of the MILP-based approach is runtime. To overcome the runtime limitation, we adopt the distributable optimization proposed in [4]. We partition the layout into small windows (with width b w, height b h and optimize these windows in several iterations. In each iteration, we select a subset of windows that are independently optimizable, and optimize them in parallel. More specifically, we select windows that do not have any horizontal or vertical overlap (i.e., have disjoint projections onto the x-axis and onto the y-axis). For example, as shown in Figure 3, windows that are diagonally adjacent can be selected and optimized in parallel. This is because a given window s optimization is unaware of cell displacements concurrently being made outside of the window; if windows share projections onto the x- or y-axis, the impact of solutions on HPWL from each window cannot be accurately captured. Figure 4 illustrates two example cases of (a) target windows with intersecting projections (on the y-axis) and (b) target windows with disjoint projections. Since the target windows are optimized in parallel, the optimizer calculates HP W L1 for the displacement of p in w1 without knowing pin q s displacement, and vice versa ( HP W L2 for q in w2). However, according to the final locations of p and q, the pins that determine the bounding box corresponding to HPWL can change, as shown in the figure. In the (a) case, this results in a discrepancy between the total HP W L and the sum of HP W L from each window. In the (b) case, since p and q always determine the top-left point and the bottom-right point of the bounding box, the sum of HP W L from each window is equal to the total HP W L. Target window for the current optimization Untouched window Optimized window in previous iterations Figure 3: Illustration of distributable optimization. ΔHPWL1 w1 w3 Untouched window p w2 w4 ΔHPWL2 Total ΔHPWL ΔHPWL1 + ΔHPWL2 (a) q Target window for the current optimization ΔHPWL1 w1 w3 p w2 ΔHPWL2 w4 Total ΔHPWL=ΔHPWL1 + ΔHPWL2 (b) Figure 4: HPWL calculation for two cases. (a) Target windows with intersecting projections on the y-axis. (b) Windows with disjoint projections. In the case of (a), the total HP W L is not equal to the sum of HP W L values that are calculated from each window. 4.2 Overall Flow Algorithm 1 (V M1Opt()) gives the metaheuristic outer loop of our detailed placement optimization considering direct vertical M1 routing. The inputs include a routed layout T, a weighting factor α and a sequence(queue) of input parameter sets U. Each parameter set in U includes window width (b w), window height (b h ), maximum x displacement for cells (l x), and maximum y displacement of cells (l y). The sequence U is determined empirically based on experimental results (see Subsection 5.2). The output is an optimized layout T opt with a heuristically minimized objective value Obj. q In Line 2, we obtain the first input parameter set u in the current U. In Lines 3 11, we iteratively run DistOpt() with u until the normalized improvement ( Obj) of the objective with respect to Obj of the previous iteration is less than a threshold θ. We use θ = 1% as the threshold. In Line 4, we first store the previous Obj value as preobj. In Lines 6 7, we then perform DistOpt() with window size and perturbation range defined in u (i.e., u.b w, u.b h, u.l x, u.l y) but without allowing the flip operation (f = 0). After that, DistOpt() is performed again in Lines 8 9, with allowing of the flip operation (f = 1) but without allowing perturbation. Empirically, we observe that a sequential optimization that performs perturbation and flipping serially is faster than an optimization that performs perturbation and flipping simultaneously, while both optimizations give similar solution quality. In Line 10, we update the x and y shift values for windows (t x, t y). Although we avoid interference between windows by selecting diagonally-adjacent windows (recall Figure 3) for parallel optimization, cells at the boundary (i.e., cells that overlap two windows simultaneously) cannot be optimized. Thus, similar to the method of [4], we shift the windows to handle the unoptimized boundary region of the previous iteration. If Obj is less than θ (Line 3), we change u to the next input parameter set in U (Line 2). We iterate the optimization until we reach the last input parameter set in U. Algorithm 2 describes details of DistOpt(). According to the given input parameters, we partition the layout into small windows (Line 1). We then select target windows that are independently optimizable and store them in D (Line 3) as explained in Section 4.1. Since we select target windows such that windows do not have any vertical or horizontal overlaps, the parallel optimization has k = p W iterations, where W is the total number of windows. In Lines 5 6, all windows d D are optimized in parallel. For each window, we list candidates for each cell according to a given perturbation range (i.e., l x and l y, the maximum displacement of x and y, respectively). Along with input parameters α, β n, γ and δ, we formulate the MILP instance for the window and use CPLEX to solve the MILP instance. The solution is updated for each window, and is then used as a boundary condition for the target windows in the next iteration. Algorithm 1 Overall flow of V M1Opt Procedure V M1Opt(T, α, U) Input : Layout T, weighting factor α, queue of parameter sets U Output : Layout T opt 1: while U do 2: u U.pop(); Obj ; 3: while Obj θ do 4: preopj Obj; 5: l x u.l x; l y u.l y; f 0; 6: (T, Obj) DistOpt(T, t x, t y, u.b w, u.b h, l x, l y, f, α); 7: l x 0; l y 0; f 1; 8: (T, Obj) DistOpt(T, t x, t y, u.b w, u.b h, l x, l y, f, α); 9: Update t x, t y 10: Obj (preobj Obj)/preObj; 11: end while 12: end while 13: T opt T ; 14: return T opt; Algorithm 2 Procedure DistOpt Procedure DistOpt(T, t x, t y, b w, b h, l x, l y, f, α) Input : Horizontal (vertical) offset t x (t y), width (height) of window b w (b h ), perturbation range in x (y) l x (l y), binary indicator of whether flip operation is allowed f, weighting factor α Output : Updated layout T opt, objective value Obj 1: A set of windows W P artition(t, t x, t y, b w, b h ); 2: for i = 1 to p W do 3: D set of current target windows; 4: // parallel optimization 5: MILP F ormulation(d, l x, l y, f, α) for d D; 6: Solve MILP and update MILP solutions to T ; 7: // parallel optimization ends 8: end for 9: T opt T 10: Obj CalculateObj(T opt); 11: return T opt;
5 5. EXPERIMENTAL SETUP AND RESULTS 5.1 Experimental Setup We implement our flow in C++ with OpenAccess [19] to support LEF/DEF [17], and with CPLEX [16] as our MILP solver. We apply our detailed placement optimization flow to ARM Cortex M0 core and three designs (aes, jpeg, vga) from OpenCores [20]. The design information is summarized in Table 2. The four designs are implemented with 7nm OpenM1 and ClosedM1 triple-v t libraries from a leading technology consortium. We synthesize the testcases using Synopsys Design Compiler K SP4 [21], and then perform placement and routing using Cadence Innovus v16.1 [15]. The experiments are performed with 8 threads on a 2.6GHz Intel Xeon dual-cpu server. We note that with flexible computing resources, the number of usable threads could be as large as the number of layout windows that are independently optimizable ( p W ) to reduce runtime for larger designs. 5.2 Experimental Results We have conducted two basic types of experiments. ExptA experiments seek to optimize our overall flow by finding input parameters and optimization sequences that give dominating runtime vs. solution quality tradeoffs. The aes design with ClosedM1 is used for ExptA experiments. ExptB experiments apply our flow to both ClosedM1-based and OpenM1- based designs. For all experiments, we use β = 1 so that our MILP formulation minimizes pure HPWL. Figure 5: Scalability test with various window sizes and perturbation ranges. Figure 6: Sensitivity of total routed wirelength (RWL) and the number of direct vertical M1 routings (#dm1) to α. Figure 7: Results of various optimization sequences. ExptA-1: Scalability study on window size and perturbation range. We sweep the window size and the perturbation range to study the tradeoff between solution quality and runtime. We assume square windows and vary b w = b h from 5µm to 80µm. For the perturbation range, we try l x {2, 3, 4, 5}, l y {0, 1}. In this experiment, we only run one iteration in Algorithm 1 (i.e., one pair of DistOpt()). Figure 5 shows the normalized routed wirelength (RWL) and runtime versus the window size. As the window size increases, the routed wirelength decreases, as expected. However, we observe huge runtime increases, e.g., 5 runtime increase with b w = b h = 40µm. To compromise the runtime overhead and the solution quality, we select the option with shortest runtime that gives 1% total routed wirelength increase compared to the minimum routed wirelength; this is b w = b h = 20µm, l x = 4, and l y = 1. ExptA-2: Sensitivity study for α. We sweep α values and study the impact of α on the number of direct vertical M1 routings (#dm1) and the routed wirelength (RWL). We vary α from 0 to 6000 e.g., for ClosedM1-based design, the objective with α = 10 prefers one more aligned pin pair at the cost of at most 10 units increase in HPWL. Figure 6 shows total routed wirelength (RWL) and the number of direct vertical M1 routings (#dm1) versus α. As α increases, the number of direct vertical M1 routings increases. However, maximizing the number of direct vertical M1 routings does not always reduce routed wirelength, Based on our studies, we select α = 1200 for ClosedM1. Similarly, we experiment on OpenM1-based designs and select α = ExptA-3: Sequence of optimization. We explore various sequences of input parameter sets (b w = b h, l x, l y) to optimize our overall flow. We illustrate this with five example optimization sequences: (1) (20, 4, 1); (2) (10, 3, 1) (10, 4, 0) (20, 4, 0) ; (3) (10, 3, 1) (20, 3, 1) (20, 3, 0); (4) (10, 3, 1) (20, 3, 0) ; and (5) (10, 3, 1) (10, 3, 0) (20, 3, 1) (20, 3, 0). Figure 7 shows RWL and runtime for these optimization sequences. We observe that optimization sequences 1 and 2 with l x = 4 give better solution quality (in terms of RWL). However, optimization sequence 2 consumes twice the runtime of optimization sequence 1. Therefore, (20, 4, 1) would be a preferred choice of sequence. ExptB-1: Detailed placement optimization for ClosedM1-based designs. Table 2 shows overall results for our detailed placement optimization. Our optimizer increases the number of direct vertical M1 routings by more than 4 compared to the initial post-routing solution, while decreasing overall M1 wirelength. This means that we remove long vertical M1 routings that are not used for direct vertical routing, while generating many short, direct vertical M1 routes; this results in smaller M1 wirelength and a larger number of M1 routing segments. Along with the increase in the number of direct vertical M1 routings, we achieve up to 6.4% routed wirelength (RWL) reduction and up to 14.4% #via12 reduction without design rule violations (DRVs). 5 Total power also decreases by up to 0.9%. For half of the designs, HPWL increases in favor of more dm1 to further reduce routed wirelength. To study the impact of direct M1 routing on congestion reduction, we increase the initial utilization on the aes design so as to induce congestion hotspots, which lead to design rule violations. In Figure 8, we show that our optimizer has the added benefit of avoiding a substantial fraction of DRVs (#DRVs orig vs. opt in the figure). We note that even though our optimization consistently decreases DRVs, routing QOR is ultimately determined by the initial placement quality. Notably, placement QOR with utilization 83% from the commercial tool is worse than placement with utilization 84% in terms of DRVs. The cause of this phenomenon is beyond our present scope. ExptB-2: Detailed placement optimization for OpenM1-based designs. Our optimizer increases the number of direct vertical M1 routings by around 60% compared to the initial post-routing solution. We observe that the increase of the number of direct vertical M1 routings for OpenM1-based designs is much smaller than that for ClosedM1-based designs. This small increase of the number of direct vertical M1 routings results in only up to 2.2% routed wirelength reduction, and up to 4.1% #via12 reduction, without design rule violations. 4 We do not show data for OpenM1 due to the page limit. 5 Here we refer to routing DRVs. In this paper, we do not consider advanced node placement rules (e.g., drain-drain abutment, minimum implant area, etc.). However, our framework is fully compatible, and can be easily integrated, with the work of [4] and complex sub-14nm rules.
6 Table 2: Experimental results of ExptB. Design #Inst Util #dm1 M1 WL (µm) #via12 HPWL (µm) RWL (µm) WNS (ns) Power (mw ) Runtime α (%) Init Final ( %) Init Final ( %) Init Final ( %) Init Final ( %) Init Final ( %) Init Final Init Final ( %) (sec) ClosedM1-based designs M % (442.2) ( -7.0) (-10.7) ( 4.0) (-2.9) (-0.5) 344 aes % (403.5) (-26.8) (-14.4) (-5.0) (-6.4) (-0.9) 711 jpeg % (460.0) ( -7.7) (- 5.7) (-2.3) (-6.2) (-0.7) 1216 vga % (407.0) ( -9.1) (-10.7) ( 0.4) (-1.1) (-0.1) 561 OpenM1-based designs M % (63.2) ( 3.0) (-1.7) (-0.9) (-1.0) (-0.3) 298 aes % (47.3) (-0.5) (-4.1) (-2.2) (-2.2) (-0.3) 325 jpeg % (64.0) ( 2.8) (-3.8) (-1.1) (-1.7) (-0.2) 1026 vga % (70.2) (-0.3) (-2.2) (-0.8) (-0.8) (-0.1) 515 congestion, and routing design rules; (iii) (meta)heuristic innovation to improve QOR and scalability; and (iv) theoretical understanding of OpenM1-based layout design to inform an improved optimization strategy. Figure 8: The number of DRVs after optimization for aes design with various utilizations. Also shown: the number of direct vertical M1 routings. There can be several reasons for the lesser improvement seen for OpenM1-based designs. Our current hypothesis is that P&R for OpenM1 is very similar to traditional P&R in terms of pin access. In traditional P&R flows with conventional libraries, where most pins are on M1, the M2 layer is used to access the pins. Similarly, OpenM1 cells also have pins (on or) below M1, and M1 can be used for pin access. Thus, P&R for OpenM1 can be seen as a variant of the conventional P&R flow, where the bottom routing layer is shifted down to M1. Indeed, in OpenM1-based designs, direct vertical M1 routing can block access to other pins, which limits the wirelength reduction. On the other hand, in ClosedM1-based designs, direct vertical M1 routing does not block any pin access, and is thus free in terms of routing resource. Compared to ClosedM1, where routed wirelength can be reduced even at the cost of HPWL increase, OpenM1-based designs prefer smaller α to reduce HPWL. However, given our use of a black-box commercial router, it is difficult to identify root causes of the improvement difference between OpenM1 and ClosedM1. This is the subject of one of our ongoing studies. 6. CONCLUSIONS In this work, we propose a vertical M1 routing-aware detailed placement optimization based on mixed-integer linear programing (MILP) for two new cell architectures in sub-10nm nodes, i.e., ClosedM1 and OpenM1. With our optimization, up to 6.4% (resp. 2.2%) total routed wirelength reductions and 14.4% (resp. 4.1%) #via12 reductions are achieved for ClosedM1-based (resp. OpenM1-based) designs, with no adverse timing impact. We note that the library characterization model for ClosedM1 library cells might need to change since the vertical M1 routings might affect cells library model (change in gate capacitance, etc.). However, according to our study with an INV cell in ASAP ASU 7nm PDK [14], the timing impact is negligible ( 0.1ps). 6 Our future works include (i) a comprehensive study of timing library characterization for ClosedM1, to accurately capture the timing impact of direct vertical M1 routing; (ii) extension of our placement objective function to consider other design criteria, including timing criticality, pin density, routing 6 We modify pin shapes (increase the pin length by 32nm) in a cell layout, run parasitic extraction with Calibre xrc v [18], and measure cell delay and slew with HSPICE I [22]. We observe that the delay and slew impacts of the pin modifications are negligible ( 0.1ps). Further, there are only a small number of possible uses of vertical M1 incident to a cell (this number is a function of the number of pins, and of upward versus downward alignments). In a regime where these delay and slew changes must be modeled, each of these contexts could be characterized. 7. REFERENCES [1] M. Gupta, K. Jeong and A. B. Kahng, Timing Yield-Aware Color Reassignment and Detailed Placement Perturbation for Bimodal CD Distribution in Double Patterning Lithography, IEEE TCAD 29(8) (2010), pp [2] P. Gupta, A. B. Kahng and C.-H. Park, Detailed Placement for Improved Depth of Focus and CD Control, Proc. ASPDAC, 2005, pp [3] P. Gupta, A. B. Kahng and C.-H. Park, Manufacturing-Aware Design Methodology for Assist Feature Correctness, Proc. SPIE 5756 (DPIMM III), 2005, pp [4] K. Han, A. B. Kahng and H. Lee, Scalable Detailed Placement Legalization for Complex Sub-14nm Constraints, Proc. ICCAD, 2015, pp [5] A. B. Kahng, P. Tucker and A. Zelikovsky, Optimization of Linear Placements for Wirelength Minimization with Free Sites, Proc. ASPDAC, 1999, pp [6] A. B. Kahng, I. L. Markov and S. Reda, On Legalization of Row-Based Placements, Proc. GLSVLSI, 2004, pp [7] Y. Du and M. D. F. Wong, Optimization of Standard Cell Based Detailed Placement for 16nm FinFET Process, Proc. DATE, 2014, pp [8] S.-W. Hur and J. Lillis, Mongrel: Hybrid Techniques for Standard Cell Placement, Proc. ICCAD, 2000, pp [9] S. Li and C.-K. Koh, Mixed Integer Programming Models for Detailed Placement, Proc. ISPD, 2012, pp [10] S. Li and C.-K. Koh, MIP-based Detailed Placer for Mixed-size Circuits, Proc. ISPD, 2014, pp [11] T. Lin and C. Chu, TPL-Aware Displacement-driven Detailed Placement Refinement with Coloring Constraints, Proc. ISPD, 2015, pp [12] Y. Lin, B. Yu, B. Xu and D. Z. Pan. Triple Patterning Aware Detailed Placement Toward Zero Cross-Row Middle-of-Line Conflict, Proc. ICCAD, 2015, pp [13] B. Yu, X. Xu, J.-R. Gao and D. Z. Pan, Methodology for Standard Cell Compliance and Detailed Placement for Triple Patterning Lithography, Proc. ICCAD, 2013, pp [14] ASAP ASU 7nm PDK, [15] Cadence Innovus User Guide, [16] IBM ILOG CPLEX. [17] LEF/DEF reference 5.7. http: // [18] Mentor Graphics Calibre, [19] Si2 OpenAccess. [20] OpenCores: Open Source IP-Cores, [21] Synopsys Design Compiler User Guide, [22] Synopsys HSPICE User Guide,
Double Patterning-Aware Detailed Routing with Mask Usage Balancing
Double Patterning-Aware Detailed Routing with Mask Usage Balancing Seong-I Lei Department of Computer Science National Tsing Hua University HsinChu, Taiwan Email: d9762804@oz.nthu.edu.tw Chris Chu Department
More informationILP-Based Co-Optimization of Cut Mask Layout, Dummy Fill and Timing for Sub-14nm BEOL Technology
ILP-Based Co-Optimization of Cut Mask Layout, Dummy Fill and Timing for Sub-14nm BEOL Technology ABSTRACT Kwangsoo Han, Andrew B. Kahng, Hyein Lee and, Lutong Wang ECE and CSE Depts., University of California
More informationEnhanced Optimal Multi-Row Detailed Placement for Neighbor Diffusion Effect Mitigation in Sub-10nm VLSI
1 Enhanced Optimal Multi-Row Detailed Placement for Neighbor Diffusion Effect Mitigation in Sub-10nm VLSI Changho Han, Member, IEEE, Andrew B. Kahng, Fellow, IEEE, Lutong Wang, Student Member, IEEE, and
More informationFastPlace 2.0: An Efficient Analytical Placer for Mixed- Mode Designs
FastPlace.0: An Efficient Analytical Placer for Mixed- Mode Designs Natarajan Viswanathan Min Pan Chris Chu Iowa State University ASP-DAC 006 Work supported by SRC under Task ID: 106.001 Mixed-Mode Placement
More informationScalable Detailed Placement Legalization for Complex Sub-14nm Constraints
Scalable etailed Placement Legalization for Complex Sub-14nm Constraints Kwangsoo an, Andrew B. Kahng and yein Lee CSE and ECE epartments, UC San iego, La Jolla, CA 92093 {kwhan, abk, hyeinlee}@ucsd.edu
More informationMixed Cell-Height Implementation for Improved Design Quality in Advanced Nodes
Mixed Cell-Height Implementation for Improved Design Quality in Advanced Nodes Sorin Dobre, Andrew B. Kahng + and Jiajia Li UC San Diego, ECE and + CSE Depts., La Jolla, CA 92093, {abk, jil150}@ucsd.edu
More informationMinimum Implant Area-Aware Placement and Threshold Voltage Refinement
Minimum Implant Area-Aware Placement and Threshold Voltage Refinement Seong-I Lei Wai-Kei Ma Chris Chu Department of Computer Science Department of Computer Science Department of Electrical and Computer
More informationDouble Patterning Layout Decomposition for Simultaneous Conflict and Stitch Minimization
Double Patterning Layout Decomposition for Simultaneous Conflict and Stitch Minimization Kun Yuan, Jae-Seo Yang, David Z. Pan Dept. of Electrical and Computer Engineering The University of Texas at Austin
More informationPlanning for Local Net Congestion in Global Routing
Planning for Local Net Congestion in Global Routing Hamid Shojaei, Azadeh Davoodi, and Jeffrey Linderoth* Department of Electrical and Computer Engineering *Department of Industrial and Systems Engineering
More informationCan Recursive Bisection Alone Produce Routable Placements?
Supported by Cadence Can Recursive Bisection Alone Produce Routable Placements? Andrew E. Caldwell Andrew B. Kahng Igor L. Markov http://vlsicad.cs.ucla.edu Outline l Routability and the placement context
More informationRoutability-Driven Bump Assignment for Chip-Package Co-Design
1 Routability-Driven Bump Assignment for Chip-Package Co-Design Presenter: Hung-Ming Chen Outline 2 Introduction Motivation Previous works Our contributions Preliminary Problem formulation Bump assignment
More informationStitch Aware Detailed Placement for Multiple E-Beam Lithography
Stitch Aware Detailed Placement for Multiple E-Beam Lithography Yibo Lin 1, Bei Yu 2, Yi Zou 1,3, Zhuo Li 4, Charles J. Alpert 4, and David Z. Pan 1 1 ECE Department, University of Texas at Austin 2 CSE
More informationECO-system: Embracing the Change in Placement
Motivation ECO-system: Embracing the Change in Placement Jarrod A. Roy and Igor L. Markov University of Michigan at Ann Arbor Cong and Sarrafzadeh: state-of-the-art incremental placement techniques unfocused
More informationA Hierarchical Bin-Based Legalizer for Standard-Cell Designs with Minimal Disturbance
A Hierarchical Bin-Based Legalizer for Standard- Designs with Minimal Disturbance Yu-Min Lee, Tsung-You Wu, and Po-Yi Chiang Department of Electrical Engineering National Chiao Tung University ASPDAC,
More informationCell Density-driven Detailed Placement with Displacement Constraint
Cell Density-driven Detailed Placement with Displacement Constraint Wing-Kai Chow, Jian Kuang, Xu He, Wenzan Cai, Evangeline F. Y. Young Department of Computer Science and Engineering The Chinese University
More informationA General Sign Bit Error Correction Scheme for Approximate Adders
A General Sign Bit Error Correction Scheme for Approximate Adders Rui Zhou and Weikang Qian University of Michigan-Shanghai Jiao Tong University Joint Institute Shanghai Jiao Tong University, Shanghai,
More informationMAPLE: Multilevel Adaptive PLacEment for Mixed Size Designs
MAPLE: Multilevel Adaptive PLacEment for Mixed Size Designs Myung Chul Kim, Natarajan Viswanathan, Charles J. Alpert, Igor L. Markov, Shyam Ramji Dept. of EECS, University of Michigan IBM Corporation 1
More informationIntroduction of ISPD18 Contest Problem
Introduction of ISPD18 Contest Problem Detailed routing can be divided into two steps. First, an initial detailed routing step is used to generate a detailed routing solution while handling the major design
More informationA Framework for Systematic Evaluation and Exploration of Design Rules
A Framework for Systematic Evaluation and Exploration of Design Rules Rani S. Ghaida* and Prof. Puneet Gupta EE Dept., University of California, Los Angeles (rani@ee.ucla.edu), (puneet@ee.ucla.edu) Work
More informationUnit 7: Maze (Area) and Global Routing
Unit 7: Maze (Area) and Global Routing Course contents Routing basics Maze (area) routing Global routing Readings Chapters 9.1, 9.2, 9.5 Filling Unit 7 1 Routing Unit 7 2 Routing Constraints 100% routing
More informationOn GPU Bus Power Reduction with 3D IC Technologies
On GPU Bus Power Reduction with 3D Technologies Young-Joon Lee and Sung Kyu Lim School of ECE, Georgia Institute of Technology, Atlanta, Georgia, USA yjlee@gatech.edu, limsk@ece.gatech.edu Abstract The
More informationCAD Algorithms. Placement and Floorplanning
CAD Algorithms Placement Mohammad Tehranipoor ECE Department 4 November 2008 1 Placement and Floorplanning Layout maps the structural representation of circuit into a physical representation Physical representation:
More informationA Trade-off Oriented Placement Tool 1
A Trade-off Oriented Placement Tool Huaiyu Xu Maogang Wang Bo-Kyung Choi Majid Sarrafzadeh Computer Science Department University of California, Los Angeles, CA, 90095 huaiyu@cs.ucla.edu, mgwang@cadence.com,
More informationImproved Performance of 3DIC Implementations Through Inherent Awareness of Mix-and-Match Die Stacking
Improved Performance of 3DIC Implementations Through Inherent Awareness of Mix-and-Match Die Stacking Kwangsoo Han, Andrew B. Kahng + and Jiajia Li UC San Diego, ECE and + CSE Depts., La Jolla, CA 92093,
More informationAn Automated System for Checking Lithography Friendliness of Standard Cells
An Automated System for Checking Lithography Friendliness of Standard Cells I-Lun Tseng, Senior Member, IEEE, Yongfu Li, Senior Member, IEEE, Valerio Perez, Vikas Tripathi, Zhao Chuan Lee, and Jonathan
More informationarxiv: v1 [cs.oh] 2 Aug 2014
Triple Patterning Lithography (TPL) Layout Decomposition using End-Cutting Bei Yu a 1, Subhendu Roy a, Jhih-Rong Gao b, David Z. Pan a a ECE Department, University of Texas at Austin, Austin, Texas, United
More informationUnification of Partitioning, Placement and Floorplanning. Saurabh N. Adya, Shubhyant Chaturvedi, Jarrod A. Roy, David A. Papa, and Igor L.
Unification of Partitioning, Placement and Floorplanning Saurabh N. Adya, Shubhyant Chaturvedi, Jarrod A. Roy, David A. Papa, and Igor L. Markov Outline Introduction Comparisons of classical techniques
More informationDetailed Placement Algorithm for VLSI Design with Double-Row Height Standard Cells
Detailed Placement Algorithm for VLSI Design with Double-Row Height Standard Cells Gang Wu and Chris Chu Department of Electrical and Computer Engineering, Iowa State University, IA Email: {gangwu, cnchu}@iastate.edu
More informationCONTINUED scaling of feature sizes in integrated circuits
1070 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 29, NO. 7, JULY 2010 Dose Map and Placement Co-Optimization for Improved Timing Yield and Leakage Power Kwangok
More informationAn integrated placement and routing approach
Retrospective Theses and Dissertations 2006 An integrated placement and routing approach Min Pan Iowa State University Follow this and additional works at: http://lib.dr.iastate.edu/rtd Part of the Electrical
More informationOn Refining Standard Cell Placement for Self-aligned Double Patterning *
On Refining Standard Cell Placement for Self-aligned Double Patterning * Ye-Hong Chen, Sheng-He Wang and Ting-Chi Wang Department of Computer Science, National Tsing Hua University, Hsinchu City 30013,
More informationOptimal Generalized H-Tree Topology and Buffering for High-Performance and Low-Power Clock Distribution
1 Optimal Generalized H-Tree Topology and Buffering for High-Performance and Low-Power Clock Distribution Kwangsoo Han Andrew B. Kahng Jiajia Li Abstract Clock power, skew and maximum latency are three
More informationSimultaneous OPC- and CMP-Aware Routing Based on Accurate Closed-Form Modeling
Simultaneous OPC- and CMP-Aware Routing Based on Accurate Closed-Form Modeling Shao-Yun Fang, Chung-Wei Lin, Guang-Wan Liao, and Yao-Wen Chang March 26, 2013 Graduate Institute of Electronics Engineering
More informationTRIPLE patterning lithography (TPL) is regarded as
IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 24, NO. 4, APRIL 2016 1319 Triple Patterning Lithography Aware Optimization and Detailed Placement Algorithms for Standard Cell-Based
More informationDetailed Routing for Spacer-Is-Metal Type Self-Aligned Double/Quadruple Patterning Lithography
Detailed Routing for Spacer-Is-Metal Type Self-Aligned Double/Quadruple Patterning Lithography Yixiao Ding Department of Electrical and Computer Engineering Iowa State University Ames, IA 50010, USA yxding@iastate.edu
More informationGraph Models for Global Routing: Grid Graph
Graph Models for Global Routing: Grid Graph Each cell is represented by a vertex. Two vertices are joined by an edge if the corresponding cells are adjacent to each other. The occupied cells are represented
More informationBasic Idea. The routing problem is typically solved using a twostep
Global Routing Basic Idea The routing problem is typically solved using a twostep approach: Global Routing Define the routing regions. Generate a tentative route for each net. Each net is assigned to a
More information726 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 34, NO. 5, MAY 2015
726 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 34, NO. 5, MAY 2015 Methodology for Standard Cell Compliance and Detailed Placement for Triple Patterning Lithography
More informationAn Enhanced Perturbing Algorithm for Floorplan Design Using the O-tree Representation*
An Enhanced Perturbing Algorithm for Floorplan Design Using the O-tree Representation* Yingxin Pang Dept.ofCSE Univ. of California, San Diego La Jolla, CA 92093 ypang@cs.ucsd.edu Chung-Kuan Cheng Dept.ofCSE
More informationEstimation of Wirelength
Placement The process of arranging the circuit components on a layout surface. Inputs: A set of fixed modules, a netlist. Goal: Find the best position for each module on the chip according to appropriate
More informationComprehensive Place-and-Route Platform Olympus-SoC
Comprehensive Place-and-Route Platform Olympus-SoC Digital IC Design D A T A S H E E T BENEFITS: Olympus-SoC is a comprehensive netlist-to-gdsii physical design implementation platform. Solving Advanced
More informationFloorplan and Power/Ground Network Co-Synthesis for Fast Design Convergence
Floorplan and Power/Ground Network Co-Synthesis for Fast Design Convergence Chen-Wei Liu 12 and Yao-Wen Chang 2 1 Synopsys Taiwan Limited 2 Department of Electrical Engineering National Taiwan University,
More informationMinimum Implant Area-Aware Gate Sizing and Placement
Minimum Implant Area-Aware Gate Sizing and Placement Andrew B. Kahng and Hyein Lee ECE and CSE Departments, University of California at San Diego abk@ucsd.edu, hyeinlee@ucsd.edu ABSTRACT With reduction
More informationHow Much Cost Reduction Justifies the Adoption of Monolithic 3D ICs at 7nm Node?
How Much Cost Reduction Justifies the Adoption of Monolithic 3D ICs at 7nm Node? Bon Woong Ku, Peter Debacker, Dragomir Milojevic, Praveen Raghavan, and Sung Kyu Lim School of ECE, Georgia Institute of
More informationA Novel Methodology for Triple/Multiple-Patterning Layout Decomposition
A Novel Methodology for Triple/Multiple-Patterning Layout Decomposition Rani S. Ghaida 1, Kanak B. Agarwal 2, Lars W. Liebmann 3, Sani R. Nassif 2, Puneet Gupta 1 1 UCLA, Electrical Engineering Dept. 2
More informationWojciech P. Maly Department of Electrical and Computer Engineering Carnegie Mellon University 5000 Forbes Ave. Pittsburgh, PA
Interconnect Characteristics of 2.5-D System Integration Scheme Yangdong Deng Department of Electrical and Computer Engineering Carnegie Mellon University 5000 Forbes Ave. Pittsburgh, PA 15213 412-268-5234
More informationOn Legalization of Row-Based Placements
On Legalization of Row-Based Placements Abstract Cell overlaps and pin blockages by power stripes in the results of global placement are guaranteed to prevent successful routing. However, common techniques
More informationImproving Detailed Routability and Pin Access with 3D Monolithic Standard Cells
Improving Detailed Routability and Pin Access with 3D Monolithic Standard Cells Daohang Shi, and Azadeh Davoodi University of Wisconsin - Madison {dshi7,adavoodi}@wisc.edu ABSTRACT We study the impact
More informationPin Accessibility-Driven Detailed Placement Refinement
Pin ccessibility-driven Detailed Placement Refinement Yixiao Ding Department of Electrical and Computer Engineering Iowa State University mes, I, 50011, US yxding@cadence.com Chris Chu Department of Electrical
More informationICS 252 Introduction to Computer Design
ICS 252 Introduction to Computer Design Placement Fall 2007 Eli Bozorgzadeh Computer Science Department-UCI References and Copyright Textbooks referred (none required) [Mic94] G. De Micheli Synthesis and
More informationRePlAce: Advancing Solution Quality and Routability Validation in Global Placement
1 RePlAce: Advancing Solution Quality and Routability Validation in Global Placement Chung-Kuan Cheng, Fellow, IEEE, Andrew B. Kahng, Fellow, IEEE, Ilgweon Kang, Member, IEEE, and Lutong Wang, Student
More informationCircuit Placement: 2000-Caldwell,Kahng,Markov; 2002-Kennings,Markov; 2006-Kennings,Vorwerk
Circuit Placement: 2000-Caldwell,Kahng,Markov; 2002-Kennings,Markov; 2006-Kennings,Vorwerk Andrew A. Kennings, Univ. of Waterloo, Canada, http://gibbon.uwaterloo.ca/ akenning/ Igor L. Markov, Univ. of
More informationWorst-Case Performance Prediction Under Supply Voltage and Temperature Noise
Worst-Case Performance Prediction Under Supply Voltage and Temperature Noise Chung-Kuan Cheng, Andrew B. Kahng, Kambiz Samadi and Amirali Shayan June 13, 2010 CSE and ECE Departments University of California,
More informationVLSI Physical Design: From Graph Partitioning to Timing Closure
Chapter 5 Global Routing Original uthors: ndrew. Kahng, Jens, Igor L. Markov, Jin Hu Chapter 5 Global Routing 5. Introduction 5.2 Terminology and Definitions 5.3 Optimization Goals 5. Representations of
More informationLinking Layout to Logic Synthesis: A Unification-Based Approach
Linking Layout to Logic Synthesis: A Unification-Based Approach Massoud Pedram Department of EE-Systems University of Southern California Los Angeles, CA February 1998 Outline Introduction Technology and
More informationMetal-Density Driven Placement for CMP Variation and Routability
Metal-Density Driven Placement for CMP Variation and Routability ISPD-2008 Tung-Chieh Chen 1, Minsik Cho 2, David Z. Pan 2, and Yao-Wen Chang 1 1 Dept. of EE, National Taiwan University 2 Dept. of ECE,
More informationSymmetrical Buffered Clock-Tree Synthesis with Supply-Voltage Alignment
Symmetrical Buffered Clock-Tree Synthesis with Supply-Voltage Alignment Xin-Wei Shih, Tzu-Hsuan Hsu, Hsu-Chieh Lee, Yao-Wen Chang, Kai-Yuan Chao 2013.01.24 1 Outline 2 Clock Network Synthesis Clock network
More informationStandard Cell Design and Optimization Methodology for ASAP7 PDK
ICCAD 2017 Tutorial Standard Cell Design and Optimization Methodology for ASAP7 PDK Xiaoqing Xu, Nishi Shah, Andrew Evans, Saurabh Sinha, Brian Cline and Greg Yeric Arm Inc xiaoqing.xu@arm.com 10/15/2017
More informationIntroduction. A very important step in physical design cycle. It is the process of arranging a set of modules on the layout surface.
Placement Introduction A very important step in physical design cycle. A poor placement requires larger area. Also results in performance degradation. It is the process of arranging a set of modules on
More informationPhysical Design of Digital Integrated Circuits (EN0291 S40) Sherief Reda Division of Engineering, Brown University Fall 2006
Physical Design of Digital Integrated Circuits (EN029 S40) Sherief Reda Division of Engineering, Brown University Fall 2006 Lecture 09: Routing Introduction to Routing Global Routing Detailed Routing 2
More informationTCG-Based Multi-Bend Bus Driven Floorplanning
TCG-Based Multi-Bend Bus Driven Floorplanning Tilen Ma Department of CSE The Chinese University of Hong Kong Shatin, N.T. Hong Kong Evangeline F.Y. Young Department of CSE The Chinese University of Hong
More informationIntrusive Routing for Improved Standard Cell Pin Access
Intrusive Routing for Improved Standard Cell Pin Access Vishesh Dokania Prof. Puneet Gupta NanoCAD Lab Department of Electrical Engineering, UCLA MS Project Presentation March 10, 2017 Motivation Standard-cell
More informationLithography Simulation-Based Full-Chip Design Analyses
Lithography Simulation-Based Full-Chip Design Analyses Puneet Gupta a, Andrew B. Kahng a, Sam Nakagawa a,saumilshah b and Puneet Sharma c a Blaze DFM, Inc., Sunnyvale, CA; b University of Michigan, Ann
More informationAdvanced multi-patterning and hybrid lithography techniques. Fedor G Pikus, J. Andres Torres
Advanced multi-patterning and hybrid lithography techniques Fedor G Pikus, J. Andres Torres Outline Need for advanced patterning technologies Multipatterning (MP) technologies What is multipatterning?
More informationSelf-aligned Double Patterning Layout Decomposition with Complementary E-Beam Lithography
Self-aligned Double Patterning Layout Decomposition with Complementary E-Beam Lithography Jhih-Rong Gao, Bei Yu and David Z. Pan Dept. of Electrical and Computer Engineering The University of Texas at
More informationCAD Flow for FPGAs Introduction
CAD Flow for FPGAs Introduction What is EDA? o EDA Electronic Design Automation or (CAD) o Methodologies, algorithms and tools, which assist and automatethe design, verification, and testing of electronic
More information2. TOPOLOGICAL PATTERN ANALYSIS
Methodology for analyzing and quantifying design style changes and complexity using topological patterns Jason P. Cain a, Ya-Chieh Lai b, Frank Gennari b, Jason Sweis b a Advanced Micro Devices, 7171 Southwest
More informationEliminating Routing Congestion Issues with Logic Synthesis
Eliminating Routing Congestion Issues with Logic Synthesis By Mike Clarke, Diego Hammerschlag, Matt Rardon, and Ankush Sood Routing congestion, which results when too many routes need to go through an
More informationA Provably Good Approximation Algorithm for Rectangle Escape Problem with Application to PCB Routing
A Provably Good Approximation Algorithm for Rectangle Escape Problem with Application to PCB Routing Qiang Ma Hui Kong Martin D. F. Wong Evangeline F. Y. Young Department of Electrical and Computer Engineering,
More informationCall for Participation
ACM International Symposium on Physical Design 2015 Blockage-Aware Detailed-Routing-Driven Placement Contest Call for Participation Start date: November 10, 2014 Registration deadline: December 30, 2014
More informationVLSI Physical Design: From Graph Partitioning to Timing Closure
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5 Global Routing Original uthors: ndrew. Kahng, Jens, Igor L. Markov, Jin Hu VLSI Physical Design: From Graph Partitioning to Timing
More informationA Study of Through-Silicon-Via Impact on the 3D Stacked IC Layout
A Study of Through-Silicon-Via Impact on the Stacked IC Layout Dae Hyun Kim, Krit Athikulwongse, and Sung Kyu Lim School of Electrical and Computer Engineering Georgia Institute of Technology, Atlanta,
More informationFull Custom Layout Optimization Using Minimum distance rule, Jogs and Depletion sharing
Full Custom Layout Optimization Using Minimum distance rule, Jogs and Depletion sharing Umadevi.S #1, Vigneswaran.T #2 # Assistant Professor [Sr], School of Electronics Engineering, VIT University, Vandalur-
More informationThermal-Aware 3D IC Physical Design and Architecture Exploration
Thermal-Aware 3D IC Physical Design and Architecture Exploration Jason Cong & Guojie Luo UCLA Computer Science Department cong@cs.ucla.edu http://cadlab.cs.ucla.edu/~cong Supported by DARPA Outline Thermal-Aware
More informationAPlace: A High Quality, Large-Scale Analytical Placer
7 APlace: A High Quality, Large-Scale Analytical Placer Andrew B. Kahng 1, Sherief Reda 2 and Qinke Wang 1 1 Univeristy of California, San Diego 2 Brown University, Division of Engineering abk, qinke @cs.ucsd.edu,
More informationFast, Accurate A Priori Routing Delay Estimation
Fast, Accurate A Priori Routing Delay Estimation Jinhai Qiu Implementation Group Synopsys Inc. Mountain View, CA Jinhai.Qiu@synopsys.com Sherief Reda Division of Engineering Brown University Providence,
More informationRecent Research and Emerging Challenges in Physical Design for Manufacturability/Reliability
Recent Research and Emerging Challenges in Physical Design for Manufacturability/Reliability Chung-Wei Lin 1, Ming-Chao Tsai 2, Kuang-Yao Lee 2, Tai-Chen Chen 1, Ting-Chi Wang 2, and Yao-Wen Chang 1 1
More informationAuxiliary Pattern for Cell-Based OPC
Auxiliary Pattern for Cell-Based OPC Andrew B. Kahng a,b,c and Chul-Hong Park a a UCSD ECE Department, La Jolla, CA b UCSD CSE Department, La Jolla, CA c Blaze DFM, Inc., Sunnyvale, California ABSTRACT
More informationRouting. Robust Channel Router. Figures taken from S. Gerez, Algorithms for VLSI Design Automation, Wiley, 1998
Routing Robust Channel Router Figures taken from S. Gerez, Algorithms for VLSI Design Automation, Wiley, 1998 Channel Routing Algorithms Previous algorithms we considered only work when one of the types
More informationTier Partitioning Strategy to Mitigate BEOL Degradation and Cost Issues in Monolithic 3D ICs
Tier Partitioning Strategy to Mitigate BEOL Degradation and Cost Issues in Monolithic 3D ICs Sandeep Kumar Samal, Deepak Nayak, Motoi Ichihashi, Srinivasa Banna, and Sung Kyu Lim School of ECE, Georgia
More informationA Global-Local Optimization Framework for Simultaneous Multi-Mode Multi-Corner Clock Skew Variation Reduction
A Global-Local Optimization Framework for Simultaneous Multi-Mode Multi-Corner Clock Skew Variation Reduction Kwangsoo Han, Andrew B. Kahng, Jongpil Lee, Jiajia Li and Siddhartha Nath CSE and ECE Departments,
More informationPlace and Route for FPGAs
Place and Route for FPGAs 1 FPGA CAD Flow Circuit description (VHDL, schematic,...) Synthesize to logic blocks Place logic blocks in FPGA Physical design Route connections between logic blocks FPGA programming
More informationPre-Layout Estimation of Individual Wire Lengths
Pre-Layout Estimation of Individual Wire Lengths Srinivas Bodapati and Farid N. Najm ECE Dept. and Coordinated Science Lab. University of Illinois at Urbana-Champaign ECE Department University of Toronto
More informationChapter 5 Global Routing
Chapter 5 Global Routing 5. Introduction 5.2 Terminology and Definitions 5.3 Optimization Goals 5. Representations of Routing Regions 5.5 The Global Routing Flow 5.6 Single-Net Routing 5.6. Rectilinear
More informationClock Tree Resynthesis for Multi-corner Multi-mode Timing Closure
Clock Tree Resynthesis for Multi-corner Multi-mode Timing Closure Subhendu Roy 1, Pavlos M. Mattheakis 2, Laurent Masse-Navette 2 and David Z. Pan 1 1 ECE Department, The University of Texas at Austin
More informationAn Effective Floorplan-Guided Placement Algorithm for Large-Scale Mixed-Size Designs
An Effective Floorplan-Guided Placement Algorithm for Large-Scale Mixed-Size Designs JACKEY Z. YAN, Cadence Design Systems NATARAJAN VISWANATHAN, IBM CHRIS CHU, Iowa State University In this article we
More informationStitch Aware Detailed Placement for Multiple E-Beam Lithography
Stitch Aware Detailed Placement for Multiple E-Beam Lithography Yibo Lin 1, Bei Yu 2,YiZou 1,3, Zhuo Li 4, Charles J. Alpert 4, and David Z. Pan 1 1 ECE Department, University of Texas at Austin, Austin,
More informationOn Improving Recursive Bipartitioning-Based Placement
Purdue University Purdue e-pubs ECE Technical Reports Electrical and Computer Engineering 12-1-2003 On Improving Recursive Bipartitioning-Based Placement Chen Li Cheng-Kok Koh Follow this and additional
More informationAbacus: Fast Legalization of Standard Cell Circuits with Minimal Movement
EDA Institute for Electronic Design Automation Prof. Ulf Schlichtmann Abacus: Fast Legalization of Standard Cell Circuits with Minimal Movement Peter Spindler, Ulf Schlichtmann and Frank M. Johannes Technische
More informationA Study of IR-drop Noise Issues in 3D ICs with Through-Silicon-Vias
A Study of IR-drop Noise Issues in 3D ICs with Through-Silicon-Vias Moongon Jung and Sung Kyu Lim School of Electrical and Computer Engineering Georgia Institute of Technology, Atlanta, Georgia, USA Email:
More informationECE 5745 Complex Digital ASIC Design Topic 13: Physical Design Automation Algorithms
ECE 7 Complex Digital ASIC Design Topic : Physical Design Automation Algorithms Christopher atten School of Electrical and Computer Engineering Cornell University http://www.csl.cornell.edu/courses/ece7
More informationSatisfiability Modulo Theory based Methodology for Floorplanning in VLSI Circuits
Satisfiability Modulo Theory based Methodology for Floorplanning in VLSI Circuits Suchandra Banerjee Anand Ratna Suchismita Roy mailnmeetsuchandra@gmail.com pacific.anand17@hotmail.com suchismita27@yahoo.com
More informationDigital VLSI Design. Lecture 7: Placement
Digital VLSI Design Lecture 7: Placement Semester A, 2016-17 Lecturer: Dr. Adam Teman 29 December 2016 Disclaimer: This course was prepared, in its entirety, by Adam Teman. Many materials were copied from
More informationPushing 193i lithography by Joint optimization of Layout and Lithography
Pushing 193i lithography by Joint optimization of Layout and Lithography Peter De Bisschop Imec, Leuven, Belgium Semicon Europe Messe Dresden, Germany Lithography session October 12, 2011 Semiconductor-Industry
More informationFloorplan and Placement Methodology for Improved Energy Reduction in Stacked Power-Domain Design
Floorplan and Placement Methodology for Improved Energy Reduction in Stacked Power-Domain Design Kristof Blutman, Hamed Fatemi, Andrew B. Kahng +, Ajay Kapoor, Jiajia Li and José Pineda de Gyvez + CSE
More informationQuest for High-Performance Bufferless NoCs with Single-Cycle Express Paths and Self-Learning Throttling
Quest for High-Performance Bufferless NoCs with Single-Cycle Express Paths and Self-Learning Throttling Bhavya K. Daya, Li-Shiuan Peh, Anantha P. Chandrakasan Dept. of Electrical Engineering and Computer
More informationIncremental Layer Assignment for Critical Path Timing
Incremental Layer Assignment for Critical Path Timing Derong Liu 1, Bei Yu 2, Salim Chowdhury 3, and David Z. Pan 1 1 ECE Department, University of Texas at Austin, Austin, TX, USA 2 CSE Department, Chinese
More informationSelf-Aligned Double Patterning Lithography Aware Detailed Routing with Color Pre-Assignment
IEEE TRANSACTION ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS 1 Self-Aligned Double Patterning Lithography Aware Detailed Routing with Color Pre-Assignment Yixiao Ding, Student Member, IEEE,
More informationOn the Rectangle Escape Problem
CCCG 2013, Waterloo, Ontario, August 8 10, 2013 On the Rectangle Escape Problem Sepehr Assadi Ehsan Emamjomeh-Zadeh Sadra Yazdanbod Hamid Zarrabi-Zadeh Abstract Motivated by a PCB routing application,
More informationDose Map and Placement Co-Optimization for Timing Yield Enhancement and Leakage Power Reduction
28.3 Dose Map and Placement Co-Optimization for Timing Yield Enhancement and Leakage Power Reduction Kwangok Jeong, Andrew B. Kahng, Chul-Hong Park and Hailong Yao ECE and CSE Departments, Univ. of California
More information