An Algorithm for the Place-and-Route Problem in the Layout of Analog Circuits
|
|
- Albert Flowers
- 6 years ago
- Views:
Transcription
1 An Algorithm for the Place-and-Route Problem in the Layout of Analog Circuits Juan A. Prieto, José M. Quintana, A. Rueda and José L. uertas Instituto de Microelectrónica de Sevilla - Centro Nacional de Microelectrónica Avda. Reina Mercedes s/n, (Edif. CICA) E-41012, Sevilla, Spain Published at the IEEE Int. Symp. on Circuits and Systems, (ISCAS 94), pp , IEEE. Personal use of this material is permitted. owever, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE. This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author s copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder. 1
2 An Algorithm for the Place-and-Route Problem in the Layout of Analog Circuits Juan A. Prieto, José M. Quintana, A. Rueda and José L. uertas Departamento de Diseño Analógico Centro Nacional de Microelectrónica Edif. CICA Avda. Reina Mercedes s/n Sevilla SPAIN Name and address of author responsible for correspondence: José M. Quintana Departamento de Diseño Analógico Centro Nacional de Microelectrónica Edif. CICA Avda. Reina Mercedes s/n Tel.: (34) FAX: (34) Sevilla SPAIN Abstract: This paper presents an optimization algorithm which simultaneously deals with the problems of placement and global routing in an analog macrocell layout style. The optimization process is based on a simulated annealing algorithm. We evaluate the physical placement of the cells and estimate the global routing for each intermediate solution generated. The basic idea, that together with an appropriate heuristic make the algorithm extremely efficient, consist of maintaining the same basic representative structure (slicing structures) for both problems. This method enables us to impose symmetry conditions and to penalize the existence of sensitive and noisy nets in the same channel. 2
3 Introduction Automation of analog design is considered as indispensable for the progress and competitivity of mixed analog-digital VLSI circuits. One of the main problems is the automatic generation of the layout, since this design phase is very time consuming and prone to errors when performed manually. Circuit layout generally consists of two phases. The relative placement in the plane of a group of cells (circuit elements), and the routing of the nets. Automation of any of these processes is usually treated as an optimization problem with a series of objectives: normally, minimize the total area and estimated routing length for the placement problem, and minimize the number of tracks or channel width for routing problem. There are different approximations which are efficient for digital cases, but this is not so in the case of analog circuits due to the need to consider other specific objectives. The complexity of analog layout derives not only from the diversity of the cells and the disparity between them depending on the concrete application, but also on the layout s influence on the global performance of the circuit. Thus, considerations of symmetry at a cell or wire level, on sensitive and noisy nets, on orientation, etc., are more important that those of area and connection length. The solution of the problem of analog macrocell placement cannot be separated from the problem of their routing. This strong dependence obliges us to consider both problems together in the optimization process. The integration of placement and routing problems in a quasi-exhaustive heuristic optimization algorithm presents serious problems. Among these, the most complex is the calculation of routing related of the solutions generated in the placement phase. An optimum solution to this problem requires solving an NP-complete problem for each optimization algorithm iteration. A feasible solution, applied frequently in digital and adopted in the initial phases of placement in analog [1,2], is to make only one approximate estimation of the routing length using a linear complexity algorithm, and leave refining of the optimum sizing of the routing channels for a later phase. The linear complexity methods traditionally used rely on a measurement of the rectangular environment which encompasses all the pins in one net, the bounding box. This measurement gives only an estimate of the area and routing length, without defining the exact path taken by each net through the different routing channels. Consequently, it is not adequate to contemplate analog constraints, such as the penalization of crosses and/or the co-existence of specific nets in the same channel. This paper presents an algorithm for the simultaneous optimization of placement and global routing capable of contemplating analog restrictions, which has been implemented in the pro- 3
4 gram GELSA. The basic idea, which together with an appropriate heuristic make the algorithm very efficient, is to maintain the same basic representation structure for both problems. In particular, slicing structures [3,4] have been chosen. These structures efficiently represent the placement problem and are used in many solutions for both digital and analog automatic layout [1,2]. We will use the slicing tree as an elemental graph for each intermediate placement solution. This elemental graph contains hierarchical information of the channels and the connections between them. We will perform an estimation of the routing on the same tree by using a heuristic algorithm of linear complexity that we have developed, and have integrated in the optimization process without excessively increasing the total cost. The potential of the algorithm is shown by the results obtained from different examples of analog cells. Simulated annealing [5] is the optimization technique used. This is a general and robust method that minimizes the probability of being trapped in local minima and allows obtaining solutions close to the global optimum. In spite of the fact that it generally requires large CPU time, it is considered a very adequate technique to deal with analog requirements, due to the flexibility that it offers in determining complex cost functions, without affecting the complexity of the optimization algorithm [2]. This summary is distributed as follows. First, we will present the optimization algorithm implemented in GELSA, explaining the mechanism we use to integrate the macrocell placement, the routing, and the evaluation of the symmetry requirements processes. Next, we will consider some examples of application to specific problems and finally, some conclusions will be outlined. Description of the Proposed Algorithm We have used slicing structures to represent the problem, we designate the operators of the horizontal and vertical cuts as and V, respectively. The slicing structures including the N cells (operands) are represented as binary slicing trees, or in Polish notation on the alphabet = {1, 2,, N;, V} [4]. All these structures are made up of N operands (macrocell) and (N-1) operators (channels). Each cell is also related to a group of routing pins bonded to electric nets in the circuit. Each point of the solution space is represented by a binary slicing tree that bonds the N cells of the problem and by a parameter that selects one of the four possible orientations. Figure 1 shows a Pidgin_C description of the optimization algorithm implemented in GELSA. At a given temperature T, the function Gen_mov() explores the search space modifying the slicing tree, or the orientation of one or a group of cells. Once a new configuration is generated on the slic- 4
5 ing tree, the function Place&Route() determines the physical position of each cell, the pins, and routing channels (defined by the and V operators), and makes an estimate of the area and routing length. Finally, the function Eval_cost() evaluates the different terms of the cost function. All configurations which reduce the solution cost are accepted, and those which increase it are accepted with a certain probability. The temperature T is reduced after each iteration until a specific temperature is reached, or specific stop criteria are met. Figure 1: General optimization loop. The proposed approximation is relatively similar to that implemented in [2], both in the general optimization method employed as in the type of representation on which it is based. owever, there are important differences in the manner of dealing with symmetries, in the global routing estimation, and in the cost function considered. A detailed description follows of the main parts of GELSA. Set of moves We enlarged the group of basic moves defined by Wong and Liu [4] in such a way that we can deal with moves of groups of cells, which is of great assistance to verify symmetry restricmain() { i = Read_initial_configuration(); P i = Place&Route(i); C i = Eval_cost(i, P i ); T = Det_T o (i, P i ); while (stop_criterium not satisfied) { while (inner-loop_criterium not satisfied) { j = Gen_mov(i); P j = Place&Route(j); C j = Eval_cost(j, P j ); if ( accept(t, C i, C j ) ) { i = j; C i = C j ; } } /* inner_loop */ T = Update(T); } The function Gen_mov() gives a valid solution directly altering the slicing tree by making a set of moves which affect its reverse Polish notation or the orientation of the cells or groups of cells (through the operator that relates them). The slicing tree is made up of 2N-1 elements which may be cells (user-defined macrocells) or operators (horizontal and vertical cuts). 5
6 tions. The additional movements group acts on cells (rotation) and subtrees (swapping, rotation, and insertion) [7]. The Place&Route function Figure 2 is a Pidgin_C description of the Place&Route function, the central module of the algorithm developed. It uses as input the codification of the problem obtained after applying a move to the slicing tree; as a result it determines the exact placement of the cells and channels, as well as a realistic estimation of the global routing. Place&Route(j) { Det_pos(j); /* determines cells and channels positions */ G = VE(j); /* extend the slicing tree to an VE graph*/ for (net=1; net NETS; net++) { R = Def_branch(G, net); /* defines the initial group of branches to propagate */ while (R not connected) { R = Prop_branch(G, R, net); } L net = Simplify(G, R, net); /* gives the list of routed channels for each net */ S net = Det_routing(L net ); /* gives the location of the net in each occuped channel */ } for (net=1; net NETS; net++) for (channel=1; channel N+3; channel++) D channel = Det_channel_max_density(channel, S net ); for (channel=1; channel N+3; channel++) Det_channel_width(channel, D channel ); Update_place(j); } Figure 2: Integrated algorithm of Place&Route. The Det_pos() function simultaneously determines the physical positions of the N macrocells, of the N-1 internal routing channels (with zero width waiting to process the global routing), of the four external channels (the circuit peripherals), and of the pins. It also designates specific pins that affect each channel. This process is carried out in two steps: a) The size of each subtree and the relative placement of each cell that makes it up are evaluated and routing pins associated with each of the channels are extracted. For this, the expression of reverse Polish notation of the slicing tree is directly explored. 6
7 b) Once the real size of the problem is known, the slicing tree is explored in reverse direction, fixing the cell s position. Next, the VE() function extends the tree incorporating the four external channels, forming the extended graph of partitioning (VE graph) as indicated in Figure 3. In this figure, CORE refers to the slicing tree of the 2N-1 elements, and the external channels are represented by N, E, S, and W (North, East, South, and West faces). V (W) (S) V (E) (CORE)(N) Figure 3: VE graph. On the VE graph and for each net, the Def_branch() function defines the initial group of branches (one for each group of pins in a specific channel) that function Prop_branch() will propagate directly rising in the hierarchy of the VE graph, avoiding parallel channels, until one unique effective branch results. If the considered branches belong to a supply, ground and pad-connected net, their access is guaranteed to one of the four external channels. At this point, those channels susceptible for use in the routing of each net are marked. The solution thus generated may lead to inefficient routing. To avoid this, the Simplify() function applies a series of simplification rules to the VE graph with the marked channels and as a result, supplies the channels used to perform the minimized routing of each electric net. These rules (and their symmetrical ones) allow shortcuts to rise in the hierarchy of the graph, as shown in Figure 4. The rule to use depends on the tree structure; if one arrives to a level already marked, then the minimized way given by the rule is used; on the contrary, this branch is propagated to the next higher level. The next step is to apply the function Det_routing() in order to determine the routing at the level of segments occupied in each channel, the maximum occupation density of each channel (Det_channel_max_density() function), and its width (Det_channel_width() function). This information is used later for the routing length estimation as well as to avoid the coexistence of noisy and sensitive nets in the same channel. Finally, the Update_place() function physically relocates the macrocells. 7
8 V V V V V(//) V(//) (//) (//) V V(//) V(//) (//) RULE 1 RULE 2 RULE 3 // indicates a paralell channel set Figure 4: Simplification rules. The cost function The function Eval_cost() performs a quantitative evaluation of the area occupied by the design, of the routing length, and of symmetry restrictions; and reduces these terms to one unique scalar value which reflects the quality of the generated solution. This cost is expressed as: COST = C_AREA AREA + C_AREL AREL + C_BOUND BOUND+C_NETS SS_NETS + C_SUPPLY SUPPLY + C_RESTS RESTS + C_SIM SIMCOST + C_FF FFCOST where C_AREA, C_AREL, C_BOUND, C_NETS, C_SUPPLY, C_RESTS, C_SIM, and C_FF are the weights relating to each term, that can vary during the cooling process. AREA is the area occupied by the physical solution considered. AREL is the relative area of the minimum occupied area. SS_NETS expresses the routing length. SUPPLY refers to the number of channels occupied by the supply lines. RESTS serves to avoid the existence of sensitive and noisy nets in the same channel. SIMCOST controls the symmetry limitations at a cell level. FFCOST controls the form factor of the solution, and BOUND expresses the semiperimeter of the rectangle that encompasses the solution considered, including the desired form factor, expressed as BOUND = 0.5 (FACFORM X + Y). All the terms in the cost function (except AREA) are normalized with the purpose of making the cost evaluation independent of the specific problem and the set of weights. Considerations regarding symmetry A previously reported approach [8] for the application of the symmetry constraints works on the real space once the cells are positioned. In our proposed approach, the slicing tree itself is 8
9 used to group the cells affected by the symmetry in one unique subtree, and thus treat them as a single cell. The direct method that we propose, allows us to treat centroid, matching, and array (matching of more than two cells) groups of symmetries. The cost associated to a symmetry group (Cost group ) depends on the degree of orientation of the N GS cells of the group (f orientation ), and the separation between the subtree associated to the symmetry group and the subtree defined as reference of this group (f form_subtree). The cost is obtained as a weighted sum of both terms: 2.0 f Cost form_subtree + f orientation group = (1) Let us illustrate how the array symmetry group is processed. In this case one wishes to have N GS cells forming an array with same orientation (for instance, a set of matching transistors with their Drain pins facing the same channel). First, we define the term f orientation as a normalized value in the interval [0.0, 1.0]. The procedure is the following: a) We evaluate the number of cells in each of the four orientations. b) As reference orientation, we assume the orientation of the majority of the cells in the symmetry group. Let this number be n maximum. Consequently, there are n disoriented = N GS - n maximum cells with an orientation other than the reference. c) We define the normalization value n max_disoriented from the minimum number of cells with the reference orientation: n max_disoriented = N GS n minimum (2) where n minimum = N GS 1 int (3) d) The normalized cost associated with the disorientation of the N GS cells is given by: f orientation n disoriented N GS n maximum N GS n = = = maximum n max_disoriented N GS n minimum N GS 1 N GS int (4) Next, we define the term f form_subtree, with a normalized value in the interval [0.0, 1.0]: a) We select 2N GS -1 elements from the first element of the symmetry group appearing in 9
10 the slicing tree, and count the number of operators of each type (N oper, N operv ), the total of operators (N oper ), and the cells belonging to the symmetry group (N cells_gs ). b) We verify that the group of 2N GS -1 elements truly forms part of a subtree. The separation between both situations is reflected in n non-verified_restrictions. The largest value of nonverified restrictions is obtained when the first element is a cell and the rest are cut operators; in other words, 2N GS -2. Finally, we evaluate the following functions, f 1 = Weight 1 N cells_gs N GS + N oper ( N GS 1) (5) f 2 = n non-verified_restrictions (6) f 3 = max( N oper, N operv ) ( N GS 1) (7) and define the normalized value f form_subtree as a weighted sum of f 1, f 2, and f 3 normalized at their maximum values: (Weight 1 +1)(N GS -1), 2N GS -2, and N GS -1, respectively. f 1 1 f form_subtree = ( Weight 1 + 1) ( N GS 1) N GS N GS 1 f 2 f 3 (8) Example of Application We have demonstrated GELSA operation by applying it to the realization of the layouts of different analog cells. The following results were obtained for a 17 cells (transistors) transconductor, with five symmetry restrictions; a centroid placement for transistors 3 to 6; matching symmetry between the transistors 1 and 2, 11 and 13, and 12 and 14; and array symmetry restriction between the transistors 8 to 10. Figure 5 presents the results obtained with the following parameters: C_AREL=4.5, C_NETS=6.0, C_FF=1.5, C_BOUND=1.0, C_SIM=50.0. It shows how the symmetries are met and how the channels are properly sized. Figure 6 shows the layout obtained for the same problem but with a free form factor (C_FF=0.0). For both cases, the CPU time was 15 minutes on a Sparc IPX, 50% of which was spent in the routing estimation phase. owever, this is not significant since our efforts aimed to check the efficiency of the proposed place-and-route approach. We believe that an implementation of the algorithm more efficient in CPU time is feasible. 10
11 V cc V c V B V V ss 3 5 I 1 V 1 I Figure 5: Example of application. 15 I 2 I 1 V 1 V 2 V c V ss V B 11 Figure 6: Example of application. 12 V cc 11
12 Conclusions We have developed a tool for the automatic layout of analog cells, in which we have integrated the problems of placement and global routing under the same optimization algorithm. The routing problem is treated with a heuristic algorithm of linear complexity that enables us to obtain a good estimation of the routing for each net and to penalize the existence of noisy and sensitive nets in the same channel. The obtained results show the feasibility of the proposed algorithm. References [1] C. Sechen y A. Sangiovanni-Vicentelli, "The TimberWolf Placement and Routing Package", IEEE J. Solid-State Circuits, Vol. 20, No.2, April [2] J. Rijmenants, J. Litsios, T. Schwarz, y M. Degrauwe, "ILAC: An Automated Layout Tool for Analog CMOS Circuits", IEEE J. Solid-State Circuits, Vol. 24, No. 2, pp , April [3] D. F. Wong, y C. L. Liu, "A new algorithm for floorplan design", Proc. 23rd. Design Automation Conf., pp , June [4] D. F. Wong,. W. Leong, y C. L. Liu, "Simulated Annealing for VLSI design", Boston: Kluwer Academic, [5] R. A. Rutenbar, "Simulated Annealing Algorithms: An Overview", IEEE Circuits and Devices Magazine [6] J. Cohn, D. Garrod, R. Rutenbar, L. R. Carley, "KOAN/ANAGRAM II: New Tools for Device-Level Analog Placement and Routing", en IEEE J. Solid-State Circuits, Vol. 26, No. 3, March [7] J.A. Prieto, A. Rueda, J.M. Quintana, y J.L. uertas, "Una aproximación al problema de Layout automático de celdas analógicas", VII Congreso de Diseño de Circuitos Integrados, Toledo, [8] E. Malavasi, E. Charbon, G. Jusuf, R. Totaro and A. Sangiovanni-Vicentelli, "Virtual Symmetry Axes for the Layout of Analog IC s", in6 Proc. 2 nd ICVC, Seoul, Korea, pp , Oct
XFUZZY 3.0: A DEVELOPMENT ENVIRONMENT FOR FUZZY SYSTEMS
XFUZZY 3.0: A DEVELOPMENT ENVIRONMENT FOR FUZZY SYSTEMS F. J. Moreno Velo I. Baturone S. Sánchez Solano A. Barriga Instituto de Microelectrónica de Sevilla - Centro Nacional de Microelectrónica Avda. Reina
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 informationTerm Paper for EE 680 Computer Aided Design of Digital Systems I Timber Wolf Algorithm for Placement. Imran M. Rizvi John Antony K.
Term Paper for EE 680 Computer Aided Design of Digital Systems I Timber Wolf Algorithm for Placement By Imran M. Rizvi John Antony K. Manavalan TimberWolf Algorithm for Placement Abstract: Our goal was
More informationAn Algorithm for Face-Constrained Encoding of Symbols Using Minimum Code Length
An Algorithm for Face-Constrained Encoding of Symbols Using Minimum Code Length Manuel Martínez, María J. Avedillo, José M. Quintana and José L. Huertas Instituto de Microelectrónica de Sevilla - Centro
More informationPlacement Algorithm for FPGA Circuits
Placement Algorithm for FPGA Circuits ZOLTAN BARUCH, OCTAVIAN CREŢ, KALMAN PUSZTAI Computer Science Department, Technical University of Cluj-Napoca, 26, Bariţiu St., 3400 Cluj-Napoca, Romania {Zoltan.Baruch,
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 informationIntroduction VLSI PHYSICAL DESIGN AUTOMATION
VLSI PHYSICAL DESIGN AUTOMATION PROF. INDRANIL SENGUPTA DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Introduction Main steps in VLSI physical design 1. Partitioning and Floorplanning l 2. Placement 3.
More informationSymmetry Within the Sequence-Pair Representation in the Context of Placement for Analog Design
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 19, NO. 7, JULY 2000 721 Symmetry Within the Sequence-Pair Representation in the Context of Placement for Analog Design
More informationA Transistor-level Symmetrical Layout Generation for Analog Device
R2-21 SASIMI 2012 Proceedings A Transistor-level Symmetrical Layout Generation for Analog Device Bo Yang, Qing Dong, Jing Li, Shigetoshi Nakatake Department of Information and Media Engineering, The University
More informationTHE PARAMETRIC DEFINITION OF MEMBERSHIP FUNCTIONS IN XFL3
THE PARAMETRIC DEFINITION OF MEMBERSHIP FUNCTIONS IN XFL3 F. J. Moreno-Velo, I. Baturone, S. Sánchez-Solano, A. Barriga Instituto de Microelectrónica de Sevilla - Centro Nacional de Microelectrónica Avda.
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 informationVery Large Scale Integration (VLSI)
Very Large Scale Integration (VLSI) Lecture 6 Dr. Ahmed H. Madian Ah_madian@hotmail.com Dr. Ahmed H. Madian-VLSI 1 Contents FPGA Technology Programmable logic Cell (PLC) Mux-based cells Look up table PLA
More informationConstructive floorplanning with a yield objective
Constructive floorplanning with a yield objective Rajnish Prasad and Israel Koren Department of Electrical and Computer Engineering University of Massachusetts, Amherst, MA 13 E-mail: rprasad,koren@ecs.umass.edu
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 informationAn Introduction to FPGA Placement. Yonghong Xu Supervisor: Dr. Khalid
RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS UNIVERSITY OF WINDSOR An Introduction to FPGA Placement Yonghong Xu Supervisor: Dr. Khalid RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS UNIVERSITY OF WINDSOR
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 informationA Novel Analog Module Generator Environment
A Novel Analog Module Generator Environment M. Wolf *, U. Kleine * and B. J. Hosticka ** * Otto-von-Guericke-Universität Magdeburg IPE, PO Box 412, D-3916 Magdeburg, Germany email: mwolf@ipe.et.uni-magdeburg.de
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 informationASIC Physical Design Top-Level Chip Layout
ASIC Physical Design Top-Level Chip Layout References: M. Smith, Application Specific Integrated Circuits, Chap. 16 Cadence Virtuoso User Manual Top-level IC design process Typically done before individual
More informationA Transistor-Level Placement Tool for Asynchronous Circuits
A Transistor-Level Placement Tool for Asynchronous Circuits M Salehi, H Pedram, M Saheb Zamani, M Naderi, N Araghi Department of Computer Engineering, Amirkabir University of Technology 424, Hafez Ave,
More informationMultilayer Routing on Multichip Modules
Multilayer Routing on Multichip Modules ECE 1387F CAD for Digital Circuit Synthesis and Layout Professor Rose Friday, December 24, 1999. David Tam (2332 words, not counting title page and reference section)
More informationIntroduction. Performance Evaluation of IN based Mobility Management. Marcos Bafutto Telecommunicações Brasileiras S.A. - Telebrás
Copyright Notice c 996 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works
More informationThe Related Effects of Increased PN Junction Area on ESD Protection Capability
Southern Illinois University Carbondale OpenSIUC Conference Proceedings Department of Electrical and Computer Engineering 12-1995 The Related Effects of Increased PN Junction Area on ESD Protection Capability
More informationUnit #13 : Integration to Find Areas and Volumes, Volumes of Revolution
Unit #13 : Integration to Find Areas and Volumes, Volumes of Revolution Goals: Beabletoapplyaslicingapproachtoconstructintegralsforareasandvolumes. Be able to visualize surfaces generated by rotating functions
More informationGlobal Stacking for Analog Circuits
Global Stacking for Analog Circuits Bogdan G. Arsintescu Delft University of Technology Mekelweg 4, 2628CD Delft, The Netherlands Bogdan@CaS.ET.TUDelft.nl Sorin A. Spânoche POLITEHNICA University of Bucharest
More informationHow Much Logic Should Go in an FPGA Logic Block?
How Much Logic Should Go in an FPGA Logic Block? Vaughn Betz and Jonathan Rose Department of Electrical and Computer Engineering, University of Toronto Toronto, Ontario, Canada M5S 3G4 {vaughn, jayar}@eecgutorontoca
More informationA Simple Placement and Routing Algorithm for a Two-Dimensional Computational Origami Architecture
A Simple Placement and Routing Algorithm for a Two-Dimensional Computational Origami Architecture Robert S. French April 5, 1989 Abstract Computational origami is a parallel-processing concept in which
More informationAnimation of VLSI CAD Algorithms A Case Study
Session 2220 Animation of VLSI CAD Algorithms A Case Study John A. Nestor Department of Electrical and Computer Engineering Lafayette College Abstract The design of modern VLSI chips requires the extensive
More informationA NEW MILP APPROACH FOR THE FACILITY LAYOUT DESIGN PROBLEM WITH RECTANGULAR AND L/T SHAPED DEPARTMENTS
A NEW MILP APPROACH FOR THE FACILITY LAYOUT DESIGN PROBLEM WITH RECTANGULAR AND L/T SHAPED DEPARTMENTS Yossi Bukchin Michal Tzur Dept. of Industrial Engineering, Tel Aviv University, ISRAEL Abstract In
More informationSlicing Floorplan With Clustering Constraint
652 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 22, NO. 5, MAY 2003 the cluster(v) if the area of cluster(v) [ group(u; w) does not exceed the area constraint M.
More informationParallel Implementation of VLSI Gate Placement in CUDA
ME 759: Project Report Parallel Implementation of VLSI Gate Placement in CUDA Movers and Placers Kai Zhao Snehal Mhatre December 21, 2015 1 Table of Contents 1. Introduction...... 3 2. Problem Formulation...
More informationHeuristic Optimization Introduction and Simple Heuristics
Heuristic Optimization Introduction and Simple Heuristics José M PEÑA (jmpena@fi.upm.es) (Universidad Politécnica de Madrid) 1 Outline 1. What are optimization problems? 2. Exhaustive vs. Heuristic approaches
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 informationAbstraction and Optimization of Consistent Floorplanning with Pillar Block Constraints
Abstraction and Optimization of Consistent Floorplanning with Pillar Block Constraints Ning FU, Shigetoshi NAKATAKE, Yasuhiro TAKASHIMA, Yoji KAJITANI School of Environmental Engineering, University of
More informationCOMPARATIVE STUDY OF CIRCUIT PARTITIONING ALGORITHMS
COMPARATIVE STUDY OF CIRCUIT PARTITIONING ALGORITHMS Zoltan Baruch 1, Octavian Creţ 2, Kalman Pusztai 3 1 PhD, Lecturer, Technical University of Cluj-Napoca, Romania 2 Assistant, Technical University of
More informationICS 252 Introduction to Computer Design
ICS 252 Introduction to Computer Design Lecture 16 Eli Bozorgzadeh Computer Science Department-UCI References and Copyright Textbooks referred (none required) [Mic94] G. De Micheli Synthesis and Optimization
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 informationLayout DA (Physical Design)
Layout DA (Physical Design) n Floor Planning n Placement and Partitioning n Global Routing n Routing n Layout Compaction 1 Routing n Types of Local Routing Problems n Area Routing u Lee s Algorithm n Channel
More informationLab. Course Goals. Topics. What is VLSI design? What is an integrated circuit? VLSI Design Cycle. VLSI Design Automation
Course Goals Lab Understand key components in VLSI designs Become familiar with design tools (Cadence) Understand design flows Understand behavioral, structural, and physical specifications Be able to
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 informationAbstract A SCALABLE, PARALLEL, AND RECONFIGURABLE DATAPATH ARCHITECTURE
A SCALABLE, PARALLEL, AND RECONFIGURABLE DATAPATH ARCHITECTURE Reiner W. Hartenstein, Rainer Kress, Helmut Reinig University of Kaiserslautern Erwin-Schrödinger-Straße, D-67663 Kaiserslautern, Germany
More informationGenetic Algorithm for Circuit Partitioning
Genetic Algorithm for Circuit Partitioning ZOLTAN BARUCH, OCTAVIAN CREŢ, KALMAN PUSZTAI Computer Science Department, Technical University of Cluj-Napoca, 26, Bariţiu St., 3400 Cluj-Napoca, Romania {Zoltan.Baruch,
More informationEdge Equalized Treemaps
Edge Equalized Treemaps Aimi Kobayashi Department of Computer Science University of Tsukuba Ibaraki, Japan kobayashi@iplab.cs.tsukuba.ac.jp Kazuo Misue Faculty of Engineering, Information and Systems University
More information16 Bit Low Power High Speed RCA Using Various Adder Configurations
16 Bit Low Power High Speed RCA Using Various Adder Configurations Jasbir Kaur #1, Dr.Neelam RupPrakash *2 Electronics & Comminucation Enfineering, P.E.C University of Technology 1 jasbirkaur70@yahoo.co.in
More informationA 256-Radix Crossbar Switch Using Mux-Matrix-Mux Folded-Clos Topology
http://dx.doi.org/10.5573/jsts.014.14.6.760 JOURNAL OF SEMICONDUCTOR TECHNOLOGY AND SCIENCE, VOL.14, NO.6, DECEMBER, 014 A 56-Radix Crossbar Switch Using Mux-Matrix-Mux Folded-Clos Topology Sung-Joon Lee
More informationL14 - Placement and Routing
L14 - Placement and Routing Ajay Joshi Massachusetts Institute of Technology RTL design flow HDL RTL Synthesis manual design Library/ module generators netlist Logic optimization a b 0 1 s d clk q netlist
More informationDESIGN AND SIMULATION OF 1 BIT ARITHMETIC LOGIC UNIT DESIGN USING PASS-TRANSISTOR LOGIC FAMILIES
Volume 120 No. 6 2018, 4453-4466 ISSN: 1314-3395 (on-line version) url: http://www.acadpubl.eu/hub/ http://www.acadpubl.eu/hub/ DESIGN AND SIMULATION OF 1 BIT ARITHMETIC LOGIC UNIT DESIGN USING PASS-TRANSISTOR
More informationThree-Dimensional Cylindrical Model for Single-Row Dynamic Routing
MATEMATIKA, 2014, Volume 30, Number 1a, 30-43 Department of Mathematics, UTM. Three-Dimensional Cylindrical Model for Single-Row Dynamic Routing 1 Noraziah Adzhar and 1,2 Shaharuddin Salleh 1 Department
More information1.2 Graph Drawing Techniques
1.2 Graph Drawing Techniques Graph drawing is the automated layout of graphs We shall overview a number of graph drawing techniques For general graphs: Force Directed Spring Embedder Barycentre based Multicriteria
More informationFILTER SYNTHESIS USING FINE-GRAIN DATA-FLOW GRAPHS. Waqas Akram, Cirrus Logic Inc., Austin, Texas
FILTER SYNTHESIS USING FINE-GRAIN DATA-FLOW GRAPHS Waqas Akram, Cirrus Logic Inc., Austin, Texas Abstract: This project is concerned with finding ways to synthesize hardware-efficient digital filters given
More informationToward Low Cost Workload Distribution for Integrated Green Data Centers
Toward Low Cost Workload Distribution for Integrated Green Data Centers 215 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or
More informationFloorplan considering interconnection between different clock domains
Proceedings of the 11th WSEAS International Conference on CIRCUITS, Agios Nikolaos, Crete Island, Greece, July 23-25, 2007 115 Floorplan considering interconnection between different clock domains Linkai
More informationMichel Heydemann Alain Plaignaud Daniel Dure. EUROPEAN SILICON STRUCTURES Grande Rue SEVRES - FRANCE tel : (33-1)
THE ARCHITECTURE OF A HIGHLY INTEGRATED SIMULATION SYSTEM Michel Heydemann Alain Plaignaud Daniel Dure EUROPEAN SILICON STRUCTURES 72-78 Grande Rue - 92310 SEVRES - FRANCE tel : (33-1) 4626-4495 Abstract
More informationLattice Semiconductor Design Floorplanning
September 2012 Introduction Technical Note TN1010 Lattice Semiconductor s isplever software, together with Lattice Semiconductor s catalog of programmable devices, provides options to help meet design
More informationINTERCONNECT TESTING WITH BOUNDARY SCAN
INTERCONNECT TESTING WITH BOUNDARY SCAN Paul Wagner Honeywell, Inc. Solid State Electronics Division 12001 State Highway 55 Plymouth, Minnesota 55441 Abstract Boundary scan is a structured design technique
More informationPROTOTYPING OF FUZZY LOGIC BASED CONTROLLERS USING STANDARD FPGA DEVELOPMENT BOARDS
PROTOTYPING OF FUZZY LOGIC BASED CONTROLLERS USING STANDARD FPGA DEVELOPMENT BOARDS S. Sánchez-Solano 1, R. Senhadji 1, A. Cabrera 2, I. Baturone 1, C. J. Jiménez 1, A. Barriga 1 1 Instituto de Microelectrónica
More informationTHE GROWING market for wireless technologies has
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 18, NO. 4, APRIL 1999 375 Device-Level Early Floorplanning Algorithms for RF Circuits Mehmet Aktuna, Rob A. Rutenbar,
More informationHardware-Software Codesign
Hardware-Software Codesign 4. System Partitioning Lothar Thiele 4-1 System Design specification system synthesis estimation SW-compilation intellectual prop. code instruction set HW-synthesis intellectual
More information(Lec 14) Placement & Partitioning: Part III
Page (Lec ) Placement & Partitioning: Part III What you know That there are big placement styles: iterative, recursive, direct Placement via iterative improvement using simulated annealing Recursive-style
More informationVLSI Physical Design: From Graph Partitioning to Timing Closure
Chapter 3 Chip Planning VLSI Physical Design: From Graph Partitioning to Timing Closure Original Authors: Andrew B. Kahng, Jens, Igor L. Markov, Jin Hu VLSI Physical Design: From Graph Partitioning to
More informationDESIGN OF AN FFT PROCESSOR
1 DESIGN OF AN FFT PROCESSOR Erik Nordhamn, Björn Sikström and Lars Wanhammar Department of Electrical Engineering Linköping University S-581 83 Linköping, Sweden Abstract In this paper we present a structured
More informationA Path Based Algorithm for Timing Driven. Logic Replication in FPGA
A Path Based Algorithm for Timing Driven Logic Replication in FPGA By Giancarlo Beraudo B.S., Politecnico di Torino, Torino, 2001 THESIS Submitted as partial fulfillment of the requirements for the degree
More informationEE878 Special Topics in VLSI. Computer Arithmetic for Digital Signal Processing
EE878 Special Topics in VLSI Computer Arithmetic for Digital Signal Processing Part 6c High-Speed Multiplication - III Spring 2017 Koren Part.6c.1 Array Multipliers The two basic operations - generation
More informationA Linear Programming-Based Algorithm for Floorplanning in VLSI Design
584 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 22, NO. 5, MAY 2003 A Linear Programming-Based Algorithm for Floorplanning in VLSI Design Jae-Gon Kim and Yeong-Dae
More informationDesign of Low-Power and Low-Latency 256-Radix Crossbar Switch Using Hyper-X Network Topology
JOURNAL OF SEMICONDUCTOR TECHNOLOGY AND SCIENCE, VOL.15, NO.1, FEBRUARY, 2015 http://dx.doi.org/10.5573/jsts.2015.15.1.077 Design of Low-Power and Low-Latency 256-Radix Crossbar Switch Using Hyper-X Network
More informationCopyright Protection of Designs Based on Multi Source IPs
Copyright Protection of Designs Based on Multi Source IPs Edoardo Charbon and Ilhami Torunoglu Cadence Design Systems, San Jose, CA 95134 Abstract This paper addresses the copyright protection problem
More informationTUNING COMPLEX FUZZY SYSTEMS BY SUPERVISED LEARNING ALGORITHMS
TUIG COPLEX FUZZY SYSTES BY SUPERVISED LEARIG ALGORITHS F. J. oreno-velo, I. Baturone, R. Senhadji, S. Sánchez-Solano Instituto de icroelectrónica de Sevilla - Centro acional de icroelectrónica Avda. Reina
More informationTopics. ! PLAs.! Memories: ! Datapaths.! Floor Planning ! ROM;! SRAM;! DRAM. Modern VLSI Design 2e: Chapter 6. Copyright 1994, 1998 Prentice Hall
Topics! PLAs.! Memories:! ROM;! SRAM;! DRAM.! Datapaths.! Floor Planning Programmable logic array (PLA)! Used to implement specialized logic functions.! A PLA decodes only some addresses (input values);
More informationA stratum is a pair of surfaces. When defining a stratum, you are prompted to select Surface1 and Surface2.
That CAD Girl J ennifer dib ona Website: www.thatcadgirl.com Email: thatcadgirl@aol.com Phone: (919) 417-8351 Fax: (919) 573-0351 Volume Calculations Initial Setup You must be attached to the correct Land
More informationA Versatile Instrument for Analyzing and Testing the Interfaces of Peripheral Devices
Reprint A Versatile Instrument for Analyzing and Testing the Interfaces of Peripheral Devices P. Savvopoulos, M. Varsamou and Th. Antonakopoulos The 3rd International Conference on Systems, Signals & Devices
More informationMultiple Specifications Radio-Frequency Integrated Circuit Design with Automatic Template-Driven Layout Retargeting
Multiple Specifications Radio-Frequency Integrated Circuit Design with Automatic Template-Driven Retargeting Nuttorn Jangkrajarng, Sambuddha Bhattacharya, Roy Hartono, and C-J. Richard Shi Department of
More informationLaker Custom Layout Automation System
The Laker Custom Layout offers powerful solutions for analog, mixed-signal, memory, and custom digital IC design that address key pain points in the layout process. The Laker layout system provides an
More informationGenetic Algorithm for FPGA Placement
Genetic Algorithm for FPGA Placement Zoltan Baruch, Octavian Creţ, and Horia Giurgiu Computer Science Department, Technical University of Cluj-Napoca, 26, Bariţiu St., 3400 Cluj-Napoca, Romania {Zoltan.Baruch,
More informationIterative-Constructive Standard Cell Placer for High Speed and Low Power
Iterative-Constructive Standard Cell Placer for High Speed and Low Power Sungjae Kim and Eugene Shragowitz Department of Computer Science and Engineering University of Minnesota, Minneapolis, MN 55455
More informationUnit 5A: Circuit Partitioning
Course contents: Unit 5A: Circuit Partitioning Kernighang-Lin partitioning heuristic Fiduccia-Mattheyses heuristic Simulated annealing based partitioning algorithm Readings Chapter 7.5 Unit 5A 1 Course
More informationThree DIMENSIONAL-CHIPS
IOSR Journal of Electronics and Communication Engineering (IOSR-JECE) ISSN: 2278-2834, ISBN: 2278-8735. Volume 3, Issue 4 (Sep-Oct. 2012), PP 22-27 Three DIMENSIONAL-CHIPS 1 Kumar.Keshamoni, 2 Mr. M. Harikrishna
More informationAn Analytical Approach to Floorplan Design and Optimization. Suphachai Sutanthavibul, Eugene Shragowitz, J. Ben Rosen
An Analytical Approach to Floorplan Design and Optimization. Suphachai Sutanthavibul, Eugene Shragowitz, J. Ben Rosen Computer Science Department University of Minnesota Minneapolis, Minnesota 55454 Abstract
More informationXFSL: A TOOL FOR SUPERVISED LEARNING OF FUZZY SYSTEMS
XFSL: A TOOL FOR SUPERVISED LEARNING OF FUZZY SYSTEMS F. J. Moreno Velo I. Baturone S. Sánchez Solano A. Barriga Instituto de Microelectrónica de Sevilla - Centro Nacional de Microelectrónica Avda. Reina
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 informationOptimization of Process Plant Layout Using a Quadratic Assignment Problem Model
Optimization of Process Plant Layout Using a Quadratic Assignment Problem Model Sérgio. Franceira, Sheila S. de Almeida, Reginaldo Guirardello 1 UICAMP, School of Chemical Engineering, 1 guira@feq.unicamp.br
More informationA Transformation-Based Model of Evolutionary Architecting for Embedded System Product Lines
A Transformation-Based Model of Evolutionary Architecting for Embedded System Product Lines Jakob Axelsson School of Innovation, Design and Engineering, Mälardalen University, SE-721 23 Västerås, Sweden
More informationChapter 5: ASICs Vs. PLDs
Chapter 5: ASICs Vs. PLDs 5.1 Introduction A general definition of the term Application Specific Integrated Circuit (ASIC) is virtually every type of chip that is designed to perform a dedicated task.
More informationIN VLSI CIRCUITS. MUL'I'-PADs, SINGLE LAYER POWER NETT ROUTING
MUL''-PADs, SNGLE LAYER POWER NETT ROUTNG N VLS CRCUTS H. Cai Delft University of Techndogy Departmen$ of Electrical hgineering Delft. The Neth.m?ands ABSTRACT An algorithm is presented for obtaining a
More informationConstraint-Driven Floorplanning based on Genetic Algorithm
Proceedings of the 2007 WSEAS International Conference on Computer Engineering and Applications, Gold Coast, Australia, January 17-19, 2007 147 Constraint-Driven Floorplanning based on Genetic Algorithm
More informationCAD Algorithms. Circuit Partitioning
CAD Algorithms Partitioning Mohammad Tehranipoor ECE Department 13 October 2008 1 Circuit Partitioning Partitioning: The process of decomposing a circuit/system into smaller subcircuits/subsystems, which
More informationA Method to Implement Layout Versus Schematic Check in Integrated Circuits Design Programs
A Method to Implement Layout Versus Schematic Check in Integrated Circuits Design Programs Radu Gabriel Bozomitu, Daniela Ionescu Telecommunications Department Faculty of Electronics and Telecommunications,
More informationBumptrees for Efficient Function, Constraint, and Classification Learning
umptrees for Efficient Function, Constraint, and Classification Learning Stephen M. Omohundro International Computer Science Institute 1947 Center Street, Suite 600 erkeley, California 94704 Abstract A
More informationEvolutionary Computation Algorithms for Cryptanalysis: A Study
Evolutionary Computation Algorithms for Cryptanalysis: A Study Poonam Garg Information Technology and Management Dept. Institute of Management Technology Ghaziabad, India pgarg@imt.edu Abstract The cryptanalysis
More informationSilicon Virtual Prototyping: The New Cockpit for Nanometer Chip Design
Silicon Virtual Prototyping: The New Cockpit for Nanometer Chip Design Wei-Jin Dai, Dennis Huang, Chin-Chih Chang, Michel Courtoy Cadence Design Systems, Inc. Abstract A design methodology for the implementation
More informationMURDOCH RESEARCH REPOSITORY
MURDOCH RESEARCH REPOSITORY This is the author s final version of the work, as accepted for publication following peer review but without the publisher s layout or pagination. The definitive version is
More informationAn Integrated Design Algorithm for Detailed Layouts Based on the Contour Distance
An Integrated Design Algorithm for Detailed Layouts Based on the Contour Distance Jae-Gon Kim and Marc Goetschalckx School of Industrial and Systems Engineering Georgia Institute of Technology Atlanta,
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 informationAKORD: Transistor Level and Mixed Transistor/Gate Level Placement Tool for Digital Data Paths
AKORD: Transistor Level and Mixed Transistor/Gate Level Placement Tool for Digital Data Paths Tatjana Serdar and Carl Sechen University of Washington Electrical Engineering Department, PO Box 352500 Seattle,
More informationIntroduction to laboratory exercises in Digital IC Design.
Introduction to laboratory exercises in Digital IC Design. A digital ASIC typically consists of four parts: Controller, datapath, memory, and I/O. The digital ASIC below, which is an FFT/IFFT co-processor,
More informationEE680 Project Report Final 05/05/2010 Zhou Zhao USC ID:
Group Formation Group member: Zhou Zhao, Raj Shah EE680 Project Report Final 05/05/2010 Zhou Zhao USC ID: 8710-5983-10 Job Assignment My job is to design a intelligent FPGA intra router, which has following
More informationDARWIN 7.0 Release Notes
DARWIN 7.0 Release Notes March 2010 Southwest Research Institute Summary of New Capabilities DARWIN 7.0 includes the following new features: Automatic Generation of Optimum Fracture Mechanics Models New
More informationThe Partitioning Problem
The Partitioning Problem 1. Iterative Improvement The partitioning problem is the problem of breaking a circuit into two subcircuits. Like many problems in VLSI design automation, we will solve this problem
More informationD-Cut Master MANUAL NO. OPS639-UM-153 USER'S MANUAL
D-Cut Master MANUAL NO. OPS639-UM-153 USER'S MANUAL Software License Agreement Graphtec Corporation ( Graphtec ) grants the user permission to use the software (the software ) provided in accordance with
More informationIntegrated Floorplanning with Buffer/Channel Insertion for Bus-Based Microprocessor Designs 1
Integrated Floorplanning with Buffer/ for Bus-Based Microprocessor Designs 1 Faran Rafiq Intel Microlectronics Services, 20325 NW Von Neumann Dr. AG3-318, Beaverton, OR 97006 faran.rafiq@intel.com Malgorzata
More informationUNIT-II. Part-2: CENTRAL PROCESSING UNIT
Page1 UNIT-II Part-2: CENTRAL PROCESSING UNIT Stack Organization Instruction Formats Addressing Modes Data Transfer And Manipulation Program Control Reduced Instruction Set Computer (RISC) Introduction:
More information