1. INTRODUCTION ......................................................................................................................... 3 1.1. 1.2. 1.3. THE AIM OF THESIS ...................................................................................................................... 3 THE SCOPE OF THESIS ................................................................................................................... 3 RESEARCH HIERARCHICAL DIAGRAM ................................................................................................ 3 2. RELATED MATH BRANCHES OR SUB-DISCIPLES .......................................................................... 4 3. PRESENTATION STYLES .............................................................................................................. 4 4. STRUCTURE OF WRITING ........................................................................................................... 8 5. STYLES ..................................................................................................................................... 13 6. DEFINITIONS. TERMINOLOGY, SIGNS AND SYMBOLS ............................................................... 13 6.1. ALPHABETS AND SIGNS ............................................................................................................... 14 6.1.1. Latin .............................................................................................................................. 14 6.1.2. Greek ............................................................................................................................ 14 6.1.3. Hebrew ......................................................................................................................... 14 6.1.4. Russian ......................................................................................................................... 15 6.2. NOMENCLATURE........................................................................................................................ 15 6.3. NOTATION ................................................................................................................................ 16 6.4. DEFINITIONS ............................................................................................................................. 17 6.5. LIST OF THEOREMS, FORMULARS AND EQUATIONS ............................................................................ 17 6.6. LIST OF ABBREVIATIONS ............................................................................................................... 18 6.7. LIST OF PEOPLE MENTIONED IN THE BOOK ....................................................................................... 18 6.8. INDEX ...................................................................................................................................... 18 6.9. EXPLANATIONS .......................................................................................................................... 18 6.10. FONTS ..................................................................................................................................... 18 6.11. LIST OF SYMBOLS........................................................................................................................ 19 6.12. SUB AND SUPER SCRIPTS .............................................................................................................. 19 6.13. MARKS .................................................................................................................................... 19 6.14. 6.15. 6.16. 6.17. 词冠??? ................................................................................................................................. 20 UNITS .................................................................................................................................... 20 UNITS DESIGNATION ................................................................................................................... 20 CONSTANTS .............................................................................................................................. 20 7. PRESENTATION STYLES ............................................................................................................ 22 8. STRUCTURES, MODE OR SYSTEM OF THEOREMS ..................................................................... 24 9. DEFINITIONS. TERMINOLOGY, SIGNS AND SYMBOLS ............................................................... 30 9.1. ALPHABETS AND SIGNS ............................................................................................................... 30 9.1.1. Latin .............................................................................................................................. 31 9.1.2. Greek ............................................................................................................................ 31 9.1.3. Hebrew ......................................................................................................................... 31 9.1.4. Russian ......................................................................................................................... 31 9.2. NOMENCLATURE........................................................................................................................ 32 9.3. NOTATION ................................................................................................................................ 32 9.4. DEFINITIONS ............................................................................................................................. 33 9.5. LIST OF THEOREMS, FORMULARS AND EQUATIONS ............................................................................ 34 9.6. LIST OF ABBREVIATIONS ............................................................................................................... 34 9.7. LIST OF PEOPLE MENTIONED IN THE BOOK ....................................................................................... 34 9.8. INDEX ...................................................................................................................................... 34 9.9. 9.10. 9.11. 9.12. 9.13. EXPLANATIONS .......................................................................................................................... 35 FONTS ..................................................................................................................................... 35 LIST OF SYMBOLS........................................................................................................................ 35 SUB AND SUPER SCRIPTS .............................................................................................................. 36 MARKS .................................................................................................................................... 36 9.14. 9.15. 9.16. 9.17. 词冠??? ................................................................................................................................. 36 UNITS .................................................................................................................................... 37 UNITS DESIGNATION ................................................................................................................... 37 CONSTANTS .............................................................................................................................. 37 10. DETAILED ROUTING ............................................................................................................. 37 11. MAZE ROUTING ................................................................................................................... 42 12. LINE PROBE ROUTING .......................................................................................................... 44 13. LEFT-EDGE ROUTING ........................................................................................................... 45 14. GREEDY CHANNEL SCANNING ............................................................................................. 46 15. OVER-THE-BLOCK DETAILED ROUTER .................................................................................. 47 16. OVER-THE-CELL CHANNEL ROUTING .................................................................................... 48 16.1. THE EVOLUTIONARY ALGORITHM ......................................................................................... 48 1. Introduction 1.1. The Aim of Thesis 1.2. The Scope of Thesis 1.3. Research Hierarchical Diagram 2. Related Math Branches or Sub-Disciples 3. Presentation Styles 用各种 IT 技术 Interactive Short texts Electronically available only Electronic formats Strictly local yet Easy to read even for laymen and like lovestory Use as much as drawings, pictures.animations as possible to accompany or replace texts Pictures Drawings 图 三维图标 表 Graphs Charts Pies SLIDES PPT Flash SWF Slides OTHER FORMS OF SLIDES EBOOKS IN CHM, HLP, EXE OR OTHERS Movies and Animations 3D VRML FLASH MOVIES web audio and video streaming QUICKTIME REALMEDIA WINDOWSMEDIA WEB PORTAL web incl web2.0 html php java SOFTWARE DATABASE MOBILE AND HANDHELD DEVICES DVD/VCDS USB 网络多媒体 multimedia) 4. Structure of Writing Newton or Euclid styles Give every definiyion, axiom, proposition, theorem, corrolary etc a serial number and a name conventions or notations Common Notions Πρώτοι Αριθμοί Definitions Terms Terminology Etymology Encyclopedia Glossary Lexicon Nomenclature Abbreviations List of Symbols Index Axiom Principles Assertion Assumptions Hypothesis Conjecture Suggestion Common Notions Fact Proposition If we can prove a statement true, then that statement is called a proposition. a proposition is a less important or less fundamental assertion, Predicates Theory Laws Lemma If a theorem is not particularly interesting, but is useful in proving an interesting statement, then it’s often called a lemma. This one is found in Euclid’s Elements. Sometimes instead of proving a theorem or proposition all at once, we break the proof down into modules; that is, we prove several supporting propositions, which are called lemmas, and use the results of these propositions to prove the main result. a lemma is something that we will use later in this book to prove a proposition or theorem, Statement Rules Porism Theorem A proposition of major importance is called a theorem. a theorem is a deeper culmination of ideas, A theorem is a valid implication of sufficient interest to warrant special attention. If we can prove a proposition or a theorem, we will often, with very little effort, be able to derive other related propositions called corollaries. a corollary is an easy consequence of a proposition, theorem, or lemma. Collonary A corollary is a theorem that logically follows very simply from a theorem. A corollary is a theorem that logically follows very simply from a theorem. Sometimes it follows from part of the proof of a theorem rather than from the statement of the theorem. In any case, it should be easy to see why it’s true. Collonary A corollary is a theorem that logically follows very simply from a theorem. A corollary is a theorem that logically follows very simply from a theorem. Sometimes it follows from part of the proof of a theorem rather than from the statement of the theorem. In any case, it should be easy to see why it’s true. Postulations Scholium Conclusions Consequence Comment Remark Observation Claim Proof Equations Formulas Note Caveat Thesis Conics Literature Reference / Bibliography Books Databases Multimedia Websites Theses Proceedings Papers Presentations/Slides 5. Styles Use as much as drawings, pictures.animations as possible to accompany or replace texts Every definition shall be expressed in bold letters 6. Definitions. Terminology, Signs and Symbols 燃烧界和燃烧污染控制领域存在许多混乱的说法,应该避免 任何科学都从概念开始。 术语名辞定语 Nomenclature 或 List of symbols Definitions Assertion Hypothesis Terms Terminology 6.1. Alphabets and Signs 详细规划和说明下列字母的意义和用途:拉丁字母,希腊字母,俄文字母和希伯来字 母。 同时要符合国内外学术界的惯例和习惯,又要强调概念清晰,唯一,统一,易于理解 和明确。 花体字母 空心体字母 重体字母 斜体字母 6.1.1. Latin 6.1.2. Greek 6.1.3. Hebrew 6.1.4. Russian 6.2. Nomenclature Nomenclature is a term that applies to either a list of names or terms, or to the system of principles, procedures and terms related to naming—which is the assigning of a word or phrase to a particular object, event, or property. The principles of naming vary from the relatively informal conventions of everyday speech to the internationally-agreed principles, rules and recommendations that govern the formation and use of the specialist terms used in scientific and other disciplines. ... nomenclature concerns itself more with the rules and conventions that are used for the formation of names (wikipedia) 6.3. Notation We will use log 𝑛 to denote the base 2 logarithm instead of log 2 𝑛 or lgn. Base 10 logarithms and natural logarithms will be denoted as log10 𝑛 n and ln 𝑛 respectively. The notation ord r (a) represents the order of a modulo r, which is the smallest positive integer k, such that 𝑎𝑘 1(modr). The notation (r) will be used to represent Euler’s totient function, which is defined as the number of positive integers less than or equal to r that are relatively prime to r. The notation f(x) ≡g(x)mod(h(x),p) is used throughout to mean that f(x)=g(x) in the ring Zp[x]/(h(x)). In some cases, p will be prime and will have degree d and be irreducible in Zp(x), so that Zp[x]/(h(x)).will be a finite field of order 𝑝𝑑 . Notation: p(x) ≡ q(x) mod (h(x), n) means that h(x)|p(x) − q(x) all coefficients are taken modulo n Time complexity functions will be written in “big-O” notation. A function f(x) is considered to be O (g(x))(pronounced “big-oh of g”) if given some function g(x) there exists a constant c such that |f(x)|≤c|g (x)|⋅ for all values of x 0, where x is defined to be the binary input length of n. The function M(n) will be used to represent the time complexity function for multiplication. 6.4. Definitions Diophantine equation Euclidean Algorithm Extended Euclid Algorithm The greatest common divisor GCD (or greatest common factor GCF) 6.5. List of theorems, formulars and equations 6.6. List of abbreviations 6.7. List of people mentioned in the book 6.8. Index 6.9. Explanations 6.10. Fonts italic: for scalers; Bold italic: for vectors in D-dimensional vector space, D = 1, 2, 3; Boldface: for vectors in Rb ; Sans serif: for operators or second rank tensors (matrices); Bold sans serif: for matrices with vector/tensor elements; BLA C K B O A RD BO LD : for vector space. 6.11. List of symbols 6.12. Sub and super scripts 6.13. Marks @↑ ↓ ≈≠≡⌂∩ ∑∏ ≈∵∴⊥∥≌∽∈ 6.14. 词冠??? 10 12 Τ Τερα 核 10 9 Giga 京 10 -9 Nano 钎 10 -12 Pico 6.15. UNITS 6.16. Units designation Atm BYU bar etc 6.17. Constants 7. Presentation Styles 用各种 IT 技术 Interactive Short texts Electronically available only Electronic formats Strictly local yet Easy to read even for laymen and like lovestory Use as much as drawings, pictures.animations as possible to accompany or replace texts Pictures Drawings 图 三维图标 表 Graphs Charts Pies SLIDES PPT Flash SWF Slides OTHER FORMS OF SLIDES EBOOKS IN CHM, HLP, EXE OR OTHERS Movies and Animations 3D VRML FLASH MOVIES web audio and video streaming QUICKTIME REALMEDIA WINDOWSMEDIA WEB PORTAL web incl web2.0 html php java SOFTWARE DATABASE MOBILE AND HANDHELD DEVICES DVD/VCDS USB 网络多媒体 multimedia) 8. Structures, Mode or System of Theorems Newton or Euclid styles Give every definiyion, axiom, proposition, theorem, corrolary etc a serial number and a name conventions or notations Common Notions Definitions Определение Ορισμός Terms Terminology Etymology Encyclopedia Glossary Lexicon Nomenclature Abbreviations List of Symbols Index If we can prove a statement true, then that statement is called a proposition. a proposition is a less important or less fundamental assertion, A proposition of major importance is called a theorem. a theorem is a deeper culmination of ideas, Sometimes instead of proving a theorem or proposition all at once, we break the proof down into modules; that is, we prove several supporting propositions, which are called lemmas, and use the results of these propositions to prove the main result. a lemma is something that we will use later in this book to prove a proposition or theorem, If we can prove a proposition or a theorem, we will often, with very little effort, be able to derive other related propositions called corollaries. a corollary is an easy consequence of a proposition, theorem, or lemma. Axiom аксиома Principles Assertion Assumptions Hypothesis Hypothese Vermutung Annahme Conjecture Suggestion Theory Theorem Théorème Теорема ΘΕΩΡΗΜΑ Θεώρημα Rules Laws Satz Hauptsatz Grundsatz Gesetz Zusatz Statement Caveat Следствие Замечание Proposition Porism Lemma If a theorem is not particularly interesting, but is useful in proving an interesting statement, then it’s often called a lemma. This one is found in Euclid’s Elements. Hilfssatz Zusatz Lemme Замечание Παρατήρηση Лемма Scholium Thesis Claim Fact Conics Postulations ΠΟΡΙΣΜΑ Collonary A corollary is a theorem that logically follows very simply from a theorem. A corollary is a theorem that logically follows very simply from a theorem. Sometimes it follows from part of the proof of a theorem rather than from the statement of the theorem. In any case, it should be easy to see why it’s true. Korollar Corollaire Πρόταση Folgerung Conclusions Behauptung Consequence Утверждение Proof Beweis Comment Observation Note Remark Bemerkung Remarque Equations Formulas Literature Reference / Bibliography Books Databases Multimedia Websites Theses Proceedings Papers Presentations/Slides 9. Definitions. Terminology, Signs and Symbols 燃烧界和燃烧污染控制领域存在许多混乱的说法,应该避免 任何科学都从概念开始。 术语名辞定语 Nomenclature 或 List of symbols Definitions Assertion Hypothesis Terms Terminology 9.1. Alphabets and Signs 详细规划和说明下列字母的意义和用途:拉丁字母,希腊字母,俄文字母和希伯来字 母。 同时要符合国内外学术界的惯例和习惯,又要强调概念清晰,唯一,统一,易于理解 和明确。 花体字母 空心体字母 重体字母 斜体字母 9.1.1. Latin 9.1.2. Greek 9.1.3. Hebrew 9.1.4. Russian 9.2. Nomenclature Nomenclature is a term that applies to either a list of names or terms, or to the system of principles, procedures and terms related to naming—which is the assigning of a word or phrase to a particular object, event, or property. The principles of naming vary from the relatively informal conventions of everyday speech to the internationally-agreed principles, rules and recommendations that govern the formation and use of the specialist terms used in scientific and other disciplines. ... nomenclature concerns itself more with the rules and conventions that are used for the formation of names (wikipedia) 9.3. Notation We will use log 𝑛 to denote the base 2 logarithm instead of log 2 𝑛 or lgn. Base 10 logarithms and natural logarithms will be denoted as log10 𝑛 n and ln 𝑛 respectively. The notation ord r (a) represents the order of a modulo r, which is the smallest positive integer k, such that 𝑎𝑘 ≡ 1(modr). The notation (r) will be used to represent Euler’s totient function, which is defined as the number of positive integers less than or equal to r that are relatively prime to r. The notation f(x) ≡g(x)mod(h(x),p) is used throughout to mean that f(x)=g(x) in the ring Zp[x]/(h(x)). In some cases, p will be prime and will have degree d and be irreducible in Zp(x), so that Zp[x]/(h(x)).will be a finite field of order 𝑝𝑑 . Notation: p(x) ≡ q(x) mod (h(x), n) means that h(x)|p(x) − q(x) all coefficients are taken modulo n Time complexity functions will be written in “big-O” notation. A function f(x) is considered to be O (g(x))(pronounced “big-oh of g”) if given some function g(x) there exists a constant c such that |f(x)|≤c|g (x)|⋅ for all values of x≥0, where x is defined to be the binary input length of n. The function M(n) will be used to represent the time complexity function for multiplication. 9.4. Definitions Diophantine equation Euclidean Algorithm Extended Euclid Algorithm The greatest common divisor GCD (or greatest common factor GCF) 9.5. List of theorems, formulars and equations 9.6. List of abbreviations 9.7. List of people mentioned in the book 9.8. Index 9.9. Explanations 9.10. Fonts italic: for scalers; Bold italic: for vectors in D-dimensional vector space, D = 1, 2, 3; Boldface: for vectors in Rb ; Sans serif: for operators or second rank tensors (matrices); Bold sans serif: for matrices with vector/tensor elements; BLA C K B O A RD BO LD : for vector space. 9.11. List of symbols 9.12. Sub and super scripts 9.13. Marks @↑ ↓ ≈≠≡⌂∩ ∑∏ ≈∵∴⊥∥≌∽∈ 9.14. 词冠??? 10 12 Τ Τερα 核 10 9 Giga 京 10 -9 Nano 钎 10 -12 Pico 9.15. UNITS 9.16. Units designation Atm BYU bar etc 9.17. Constants 10. Detailed Routing detailed routing http://nptel.ac.in/courses/IITMADRAS/CAD_for_VLSI_Design_II/magma_tutorial/magma_tutorial3.html http://www.actionpacked.com/products/Routing http://forums.arcgis.com/threads/93646-Detailed-Routing-Information http://www.baanboard.com/baanboard/showthread.php?t=5492 http://www.computer.org/csdl/proceedings/vlsid/2012/4638/00/4638a233-abs.html http://www.edaboard.com/thread126141.html http://www10.edacafe.com/book/ASIC/CH17/CH17.php?interstitial_displayed=Yes http://www.scai.fraunhofer.de/en/business-research-areas/optimization/projectarchives/vlsi-routing.html http://adsabs.harvard.edu/abs/2011SPIE.7974E..20M http://www.mentor.com/products/ic-manufacturing/resources/overview/self-aligneddouble-patterning-sadp-friendly-detailed-routing-3b4256ab-aafb-42ca-9f9f015d9c499c6c http://wiki.mikrotik.com/wiki/Manual:Multicast_detailed_example http://www.moralfiber.org/eylon/berkeley/cs270/ http://www.necdsx.com/dsx_software_manual_out/features/direct_inward_dialing_fe ature/direct_inward_dialing_intercept_and_overflow.html http://opencircuitdesign.com/qrouter/ http://www.routerforums.com/project-plans-how/44637-homemade-router-tablefence.html http://iroi.seu.edu.cn/books/asics/Book2/CH17/CH17.2.htm http://www.ece.ubc.ca/~stevew/routing.html https://kfs.ucdavis.edu/kfshelp/default.htm?turl=WordDocuments%2Fviewingroutingdetails.htm http://vlsicad.ucsd.edu/Presentations/talk/supporting.html http://www.informatik.uni-osnabrueck.de/papers_html/galesia_95/node4.html http://vlsi.pro/physical-design-flow-iv-routing/ In the physical design process for very large scale integrated (VLSI) circuits the logical structure of a circuit is transformed into its physical layout. Detailed routing is one of the tasks in this process. A detailed router connects pins of signal nets in a rectangular region in accordance with a set of routing constraints, such as the number of layers, the minimal space between wires, minimum wire width, number of vias, crosstalk and the net length. The results of this detailed routing has a strong influence on the fabrication yield and production costs of the circuit. Detailed routing has generally evolved out of four basic approaches: maze routing, line probe routing, left-edge routing, and greedy channel scanning. The problem is formulated as a routing area containing connection points or pins on a rectilinear (usually rectangular) region or channel. Pins can be located on any of the four sides of the region or within the region. The connection points are generally constrained to reside in certain layers to make them easier to connect to. Even single-layer routing problems are NP-complete, which means that an optimal solution cannot be achieved in a reasonable time. For this reason, detailed routing solutions are heuristic in nature. The factors in determining a solution’s usability are the number of terminals, net width, via restrictions, boundary shape, number of layers, and net types such as power, ground, and clock wires. In the detailed routing problem our task is to interconnect certain given subsets (or nets) of the pins (or terminals) of these devices by wires. To sum it up from a graph-theoretical viewpoint, the detailed routing problem consists of finding vertex-disjoint Steiner-trees (trees with a given terminal vertex set) in a 3-dimensional rectangular grid. Three types of detailed routings: Channel Routing 2-D Switchbox Routing 3-D Switchbox Routing Sequential routing integer programming formulation called Integer Programming Based Approach parallel routing parallel multi-threaded collision-aware global router based on Maze Routing Algorithm using a heuristic collision-prevention approach. Parallel VLSI Detailed Routing Parallelization of VLSI routing algorithms prim’s algorithm Channel routing Full-chip routing Multilevel Full-Chip Routing switchbox routing in the Manhattan model single active layer routing problem maze routing VLSI Maze routing using GPGPU General-Purpose computing on Graphics Processing Units (GPGPU) line probe routing left-edge routing greedy channel scanning multilayer router called NEMO Hierarchical Routing Dogleg Channel Router Over-the-Cell Routing Maze searching Line searching Routing Grid Models Grid-based model: A grid is super-imposed on the routing region Wires follow paths along the grid lines Pitch: distance between two gridded lines Most commonly used Gridlessmodel: Any model that does not follow this “gridded” approach Routing Layer Models Unreserved layer model Any net segment is allowed to be placed in any layer Reserved layer model Certain type of segments are restricted to particular layer(s) 11. Maze routing Maze routers abstract the channel routing problem with a grid-based model. Wires are restricted to follow paths along the grid lines. Routing is accomplished by laying down wires on the grid one at a time. Obstacles are modeled as disallowed portions of the grid. Therefore, maze routing can handle arbitrary obstacles. Given: A planar rectangular grid graph. Two points S and T on the graph. Obstacles modeled as blocked vertices. Objective: Find the shortest path connecting S and T. This technique can be used in global or detailed routing (switchbox) problems. Lee’s Algorithm “An Algorithm for Path Connection and its Application”, C.Y. Lee, IRE Transactions on Electronic Computers, 1961. A Breadth-First Search (BFS) of the grid graph. Always find the shortest path possible. Consists of two phases: Wave Propagation Retrace 12. line probe routing Line probe routers scan in the x and y directions searching for line segments from either the source or the destination. Scan lines do not project beyond obstacles, so obstacles are avoided by a subsequent probe of the line segments orthogonal to the ones from the previous pass. 13. left-edge routing Left-edge routers sort wires by the boundary formed by the leftmost and rightmost pins. It orders wires one at a time using a greedy method that places segments into tracks. It fills tracks one at a time, packing segments to minimize unused space in a track. The route is complete when all wires have been assigned to a track. 14. greedy channel scanning Greedy channel routers divide the channel into horizontal tracks and vertical columns. This approach works on one vertical column at a time, scanning from left to right. The approach is termed “greedy” because each column is optimized individually, although the entire channel is not guaranteed to be optimal. The greedy router sweeps from column to column, trying to join segments of nets assigned to multiple tracks. The greedy channel scan is capable of providing fast solutions but cannot be easily extended to handle arbitrary obstacles. 15. over-the-block detailed router The over-the-block detailed router used in PA_Route uses a completely different approach based on a graph. The graph represents horizontal and vertical constraints of the wires. 16. over-the-cell channel routing Traditional channel routing algorithms have proved very successfull in reducing channel height. Any further reductions are only possible if some nets are routed “outside” the channel. Based on this observation, some researchers have proposed utilisation of over-the-cell area to obtain further reduction in the channel height. This style of routing is called over-the-cell channel routing. As more metal layers are becoming available for routing in the standard cell design style, routing over the cells becomes both practical and important. The inclusion of both over-the-cell and channel optimisation in a single channel routing domain will provide an effective framework for area/energy optimisation. However, this will increase the burden on the routing algorithm due to the significant increase in search space. To cope with this multiobjective search problem, evolutionary algorithms, such as Genetic Algorithms (GAs) have been employed. we study the effect of an evolutionary over-the cell router, developed by the authors, on energy loss and area reduction in all channel areas and compare this with a traditional over-the-cell router. We show that significant reductions in energy loss are achieved by the evolutionary over-the-cell router in all the channel areas. 16.1. THE EVOLUTIONARY ALGORITHM General properties: A traditional GA-based algorithm was used for this work. The developed algorithm is based on a model developed by Goldberg [17]. Our investigations revealed that with a population of 500 chromosomes, the following GA characteristics are necessary for a performance which provides a ‘good’ trade off in speed and quality of solutions: · Two point crossover and random mutation at rates of 0.6 and 0.001. · Chromosome selection procedure using Baker’s Stochastic Universal Sampling algorithm [18, 19]. · Employment of an elitist selection strategy [19]. The chromosome structure for a single net X is presented as [top,int,bot,id]. Where, top = top track on which net X is placed; int = internal track on which net X is placed; bot = bottom track on which net X is placed; id = the net number. Fitness function: A key component of the GA is the fitness evaluation stage, where the quality of the different routing solutions are assessed. Beginning with a given netlist (see Figure 1), and after initialisation, the fitness function starts by identifying all multi-terminal net circuit segments for over-the cell routing, and places them on tracks over-the-cell according to horizontal constraints. Further, it proceeds to route the remaining net circuits inside the channel subject to horizontal and vertical constraints. For a given structure Y, the fitness function F(Y) can be specified as: F(Y) = OTC(Y) + HV(Y) + VV(Y). Where OTC, HV and VV are routing procedures and are described as follows: Over-the-cell routing (OTC): Performs the routing of multiterminal net circuits in the over-the-cell areas, and returns their number. After this procedure only net circuits with single pin connections at both the top and bottom will remain inside the channel area. Horizontal violation elimination (HV): Carries out the elimination of horizontal violations [20], by returning the number of net circuits without such violations. It is applied to both the over-the-cell and channel areas. Vertical violation elimination (VV): Performs the elimination of vertical violations [20], by returning the number of two pin (terminal) net circuits connected to the top and bottom pins inside the channel area without such violations. As there are no vertical violations in the regions over-the-cell, this procedure is not applied. Two or more net circuits are placed on the same track if they are without horizontal and vertical violations in the channel area. For the over-the-cell areas only the elimination of horizontal violations need to be satisfied before net circuits are routed on the same track. This is illustrated using the Yoshimura-Kuh channel circuit in [2], the algorithm starts by first identifying top and bottom multi-terminal net circuits and routes them over-the-cell (nets 1,2,3,4,5,8,9 and 10) as shown in Figure 2. It then carries out routing for those net circuit segments that must remain fully or partially within the channel area, (nets 5,6,7 and 9). In the process it identifies those nets that can be placed on the same track (nets 5,6, and 9) resulting in track savings. It is evident that our algorithm requires only two rows (tracks) to route this channel circuit, compared to five in [2]. The four net circuits left in the channel are all two terminal nets. Vertical and horizontal segments of nets are placed on the first and second layers respectively in the channel area (VH model).