Title: Fill Compression by Hierarchical Rectangle Covering
1Fill Compression by Hierarchical Rectangle
Covering
2Fill Compression by Hierarchical rectangle
Covering
AREF structure
(X1,Y1)
(X0,Y0)
(X2,Y2)
3Fill Compression by Hierarchical rectangle
Covering
- AREF description
- three coordinates
- number of rows
- number of columns
- degrees of rotation (optional)
- reflection (optional)
4Fill Compression by Hierarchical rectangle
Covering
- AREF (XY,COLROW,AREF(XY,COLROW(..)))
-
- hierarchical Fill definition
5Fill Compression by Hierarchical rectangle
Covering
- Objective
- to define a fill pattern in GDSII format
- to have maximum reduction of the size of the
GDSII file
6Fill Compression by Hierarchical Rectangle
Covering
- A mathematical formulation
- Given
- A 0-1 matrix with each element corresponding to a
filling site, where - 1 site filled with "dummy" features
- 0 unfilled sites
7Fill Compression by Hierarchical Rectangle
Covering
- Definitions
- Region in a matrix is a single element
(row-column intersection) of matrix - OR a collection of h- or v-adjacent
elements in it - Block in a matrix is a single element of the
matrix, surrounded by elements of different
values OR a region with gt1 elements of identical
values - Rectangle is a rectangular region
- WFR is a largest set of h- or vertically
equally-spaced rectangles of identical values, or
WFRs.
8Fill Compression by Hierarchical Rectangle
Covering
- To find -
- a sequence of "well-formed" rectangles, covering
all the - "fill" geometries, in a "hierarchical bottom-up
manner so - as to achieve maximum compression of the GDSII
file
9Fill Compression by Hierarchical Rectangle
Covering
Filled geometries
Rectangular block
10Fill Compression by Hierarchical Rectangle
Covering
Nested well-formed rectangle
Inner well-formed rectangle
11Fill Compression by Hierarchical Rectangle
Covering
- The Problem
- Given a binary (0,1) matrix B with size m x n
-
- find the minimum cover of all (possibly
overlapping) blocks in B - find all (possibly nested) well-formed
rectangles in B
12Fill Compression by Hierarchical Rectangle
Covering
- The Proposed Methodology
-
- find all the maximal rectangles of adjacent 1s
in B - Recursively find all maximal rectangular
patterns of blocks of 1s - until no more such rectangle is obtained
13Fill Compression by Hierarchical Rectangle
Covering
recursive detection of maximal rectangular
patterns
x1,y1
x0,y0
Describing a block or wfr l x1 x0 w y2 y0
x2,y2
14Fill Compression by Hierarchical Rectangle
Covering
A
B
C
D
E
F
L
G
H
I
J
K
Given fill matrix
15Fill Compression by Hierarchical Rectangle
Covering
IJK
A
B
C
D
WFR hierarchy
E
F
J
K
L
I
K
G
H
I
J
K
- Information contents of a node of WFR hierarchy
- origin of parent WFR
- no. of component WFRs of parent
- inter-WFR distance between components
- orientation (V/H) of parent
- pointer to structure of component WFR
Fill matrix
16Fill Compression by Hierarchical Rectangle
Covering
- input a set of maximal rectangles of adjacent
1s known origin of each maximal
rectangle (rowno,colno) number of rows
number of columns inter-row and
inter-column separation (design specs) for each
maximal rectangle of 1s form a node
containing the above 4 items assume a grid of
same dimension, row-columns as the input matrix
assume a mapping of each of the above nodes to a
cell of the grid at a position same as the
origin coordinates apply find_max_chain output
of find_max_chain a set of new nodes
with the same information as above
orientation of node a set of
pointers to the constituent nodes
Constructing WFRs
17Fill Compression by Hierarchical Rectangle
Covering
Portion of a WFR Graph
A
B
C
ABC
ADE
D
E
B
D
C
A
E
18Fill Compression by Hierarchical Rectangle
Covering
A chain formed from WFRs
B
A
C
D
E
WFR symbol
L-R scan
D
Scanned WFR
Insert in D
D
Comparison
Output
(A,B)
d(A,B)
2
Nil
B
(A,B)
(A,C)
d(A,C)gtd(A,B)2
(A,B)
d(A,B)
C
(A,D)
d(A,D)ltd(A,C)2
d(A,C)
D
(A,C,E)
d(A,E)d(A,C)2
d(A,E)
E
d(A,E)ltd(A,D)2
19Fill Compression by Hierarchical Rectangle
Covering
Rectangles with holes
- 1-rectangles with interior 0-rectangles
- Steps
- find all isolated 0-rectangles in a preprocess
- preserve locations and sizes of these
0-rectangles - fill all such 0-rectangles with 1s
- find which 0-rectangles contained in which
1-rectangles - one 0-rectangle may be contained gt 1
1-rectangles - Questions
- what if a polygonal hole?
- how to integrate?
20Fill Compression by Hierarchical Rectangle
Covering
Isomorphic WFRs
A
A
B
C
B
C
Find a function that can map both WFRs to a
unique value ?
21Fill Compression by Hierarchical Rectangle
Covering
Time Complexity m number of rows n number
of columns Phase I O(mn) Finding the longest
chain O(mn2.d), where d is the depth of the WFR
graph Updating data structure for WFRs
O(mn) Chain to-rectangle constant
time Insertion of a rectangle in WFR graph - ?