220 likes | 350 Views
LEMAR: A Novel Length Matching Routing Algorithm for Analog and Mixed Signal Circuits. H. Yao, Y. Cai and Q. Gao EDA Lab, Department of CS, Tsinghua University, Beijing, China. ASPDAC 2012. Outline. Introduction Problem Formulation and Overall Flow Tile-based Detouring
E N D
LEMAR: A Novel Length Matching Routing Algorithm for Analog and Mixed Signal Circuits H. Yao, Y. Cai and Q. Gao EDA Lab, Department of CS, Tsinghua University, Beijing, China ASPDAC 2012
Outline • Introduction • Problem Formulation and Overall Flow • Tile-based Detouring • Tile Path Searching and Detouring • Experimental Results • Conclusions
Introduction • The design automation for analog and mixed signal circuit components in SOCs is attracting increasing interests. • Mismatches in electrical characteristics (e.g., parasitic capacitance and resistance) between two matching nets will cause circuit malfunctions. • It is very important to enforce the matching constraint on certain analog signals.
Problem Formulation • This paper focused on the single-layer length matching routing problem for two nets. • Given: • A single-layer routing area R with a set of routing obstacles O and two nets n1 and n2. • Find: • Routing paths p1 and p2 for nets n1 and n2 to minimize the total wirelength. • Subject to: • The routing obstacles in O are avoided. • There are no design rule violations. • p1 and p2 are of the same length.
Tile-Based Detouring • Partitioning of the routing area • Expand obstacles by WSmin/2 called obstacle tiles. • Represent the source and target pins as rectangular tiles called pin tiles. • The routing area is partitioned by the boundaries of all the pin tiles and obstacle tiles.
Tile-Based Detouring • There is a special type of space tiles called tiny tiles, whose width or height is smaller than a pitch. • pitch = WSmin + WWmin. • During the partitioning of the routing area, merge the tiny tiles into the adjacent tiles.
Tile-Based Detouring • Estimation of the detouring length • Nets can make detours in the free tiles. • The detouring length Ld can be calculated as follows: Sa: the area of the original tile S: the area of the wasted region
Tile-Based Detouring • Transformation of Different Tiles • According to the entrance and exit points within the tile, free tiles can be classified into two categories: • Entrance and exit are on the diagonal corners. • Entrance and exit are on the same edge. • The two different cases can be transformed into single type of tile by some operations. • All the free tiles are transformed into a single case, where entrance and exit are on the bottom left and top right corners of tile.
Tile-Based Detouring • Transformation of Different Tiles
Tile-Based Detouring • Detouring Pattern • To obtain maximum detouring length, adopt two detouring patterns according to the geometric shape of a free tile: • Narrow pattern: width or height of a tile < 4 X pitch • Standard pattern: width and height of a tile > 4 X pitch Narrow pattern Standard pattern
Tile Path Searching and Detouring • A*-Search Algorithm for tile path Terminate condition costF = costG + costH costG: cost from ts to tcur costH: Manhattan distance from tnew to tt. Backtrack strategy
Tile Path Searching and Detouring • The backtrack strategy is used in the tile searching process. • If tcur is tt, but the max length from ts to tt of the current tile path is smaller then Lobj, the algorithm would set tcur free. • tcur would be equal to a neighbor tile of tt, and expand to tt again. • This would force tile path to detour around the tt to increase the detouring length.
Tile Path Searching and Detouring • Minimum Length and Maximum Length • If there is not a turn at tcur, the relative position of source point in tnew is the same as tcur.
Tile Path Searching and Detouring • Minimum Length and Maximum Length • If the first turn of tile path is at tcur, the width or height of tcur is pitch.
Tile Path Searching and Detouring • Detouring after Searching • The routing path is detoured in the tiles one by one from tt to ts. • The desired wirelength in each tile can be calculated as follows: • The maximum detour length of each tile: Lmaxt • The detouring length Ld of each tile:
Tile Path Searching and Detouring • Adjust the height of some detouring parts
Conclusions • This paper presents a novel detailed routing algorithm for length matching problem. • Future work includes extending the algorithm for matching more than two nets simultaneously and evenly distributed detouring wires to avoid local congestion.