Skip to content

Commit 4d59f42

Browse files
committed
Use -corner for inner corner cell if -edge_corner not specified
added boundary_macros_separate2 test added to BUILD Signed-off-by: Jeff Ng <[email protected]>
1 parent 585b08f commit 4d59f42

File tree

5 files changed

+41
-4
lines changed

5 files changed

+41
-4
lines changed

src/tap/src/tapcell.tcl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -314,13 +314,13 @@ proc place_endcaps { args } {
314314
[tap::parse_endcap_key keys -right_bottom_corner -corner -corner]]
315315

316316
set left_top_edge [tap::find_master \
317-
[tap::parse_endcap_key keys -left_top_edge -edge_corner -edge_corner]]
317+
[tap::parse_endcap_key keys -left_top_edge -edge_corner -corner]]
318318
set right_top_edge [tap::find_master \
319-
[tap::parse_endcap_key keys -right_top_edge -edge_corner -edge_corner]]
319+
[tap::parse_endcap_key keys -right_top_edge -edge_corner -corner]]
320320
set left_bottom_edge [tap::find_master \
321-
[tap::parse_endcap_key keys -left_bottom_edge -edge_corner -edge_corner]]
321+
[tap::parse_endcap_key keys -left_bottom_edge -edge_corner -corner]]
322322
set right_bottom_edge [tap::find_master \
323-
[tap::parse_endcap_key keys -right_bottom_edge -edge_corner -edge_corner]]
323+
[tap::parse_endcap_key keys -right_bottom_edge -edge_corner -corner]]
324324

325325
set left_edge [tap::find_master \
326326
[tap::parse_endcap_key keys -left_edge -endcap_vertical -endcap]]

src/tap/test/BUILD

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ COMPULSORY_TESTS = [
1010
"boundary_macros",
1111
"boundary_macros_auto_select",
1212
"boundary_macros_separate",
13+
"boundary_macros_separate2",
1314
"boundary_macros_tapcell",
1415
"cut_rows",
1516
"cut_rows_min_width",

src/tap/test/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ or_integration_tests(
77
boundary_macros
88
boundary_macros_auto_select
99
boundary_macros_separate
10+
boundary_macros_separate2
1011
boundary_macros_tapcell
1112
cut_rows
1213
cut_rows_min_width
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
[INFO ODB-0227] LEF file: Nangate45/Nangate45_tech.lef, created 22 layers, 27 vias
2+
[INFO ODB-0227] LEF file: Nangate45/Nangate45_stdcell.lef, created 135 library cells
3+
[INFO ODB-0227] LEF file: Nangate45/fakeram45_64x7.lef, created 1 library cells
4+
[INFO ODB-0128] Design: gcd
5+
[INFO ODB-0130] Created 54 pins.
6+
[INFO ODB-0131] Created 5 components and 160 component-terminals.
7+
[INFO ODB-0303] The initial 57 rows (24054 sites) were cut with 5 shapes for a total of 13 rows (577 sites).
8+
[INFO TAP-0003] Inserted 8 endcap corners.
9+
[INFO TAP-0004] Inserted 196 endcaps.
10+
[INFO TAP-0005] Inserted 5 tapcells.
11+
No differences found.
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Same as boundary_macros_separate.tcl, except we don't pass -edge_corner
2+
# to place_endcaps to test that it uses the -corner master as the inner corner
3+
4+
source "helpers.tcl"
5+
read_lef Nangate45/Nangate45_tech.lef
6+
read_lef Nangate45/Nangate45_stdcell.lef
7+
read_lef Nangate45/fakeram45_64x7.lef
8+
read_def boundary_macros.def
9+
10+
set def_file [make_result_file boundary_macros_separate.def]
11+
12+
cut_rows -endcap_master TAPCELL_X1
13+
14+
place_endcaps \
15+
-corner TAPCELL_X1 \
16+
-endcap TAPCELL_X1
17+
18+
place_tapcells -master TAPCELL_X1 -distance "5"
19+
20+
check_placement -verbose
21+
22+
write_def $def_file
23+
24+
diff_file boundary_macros_separate.defok $def_file

0 commit comments

Comments
 (0)