Skip to content

Commit a5258d6

Browse files
authored
Merge pull request The-OpenROAD-Project#6812 from eder-matheus/ppl_groups
ppl: support regex for pin groups
2 parents fb62c2c + e4be581 commit a5258d6

File tree

9 files changed

+864
-23
lines changed

9 files changed

+864
-23
lines changed

src/ppl/src/IOPlacer.tcl

Lines changed: 3 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -215,18 +215,7 @@ proc set_io_pin_constraint { args } {
215215
utl::error PPL 58 "The -pin_names argument is required when using -group flag."
216216
}
217217

218-
set pin_list {}
219-
set final_group ""
220-
foreach pin_name $group {
221-
set db_bterm [$dbBlock findBTerm $pin_name]
222-
if { $db_bterm != "NULL" } {
223-
lappend pin_list $db_bterm
224-
set final_group "$final_group $pin_name"
225-
} else {
226-
utl::warn PPL 47 "Group pin $pin_name not found in the design."
227-
}
228-
}
229-
218+
set pin_list [ppl::parse_pin_names "place_pins -group_pins" $group]
230219
if { [llength $pin_list] != 0 } {
231220
ppl::add_pin_group $pin_list [info exists flags(-order)]
232221
incr group_idx
@@ -636,16 +625,8 @@ proc place_pins { args } {
636625
if { [llength $pin_groups] != 0 } {
637626
set group_idx 0
638627
foreach group $pin_groups {
639-
set pin_list {}
640-
foreach pin_name $group {
641-
set db_bterm [$dbBlock findBTerm $pin_name]
642-
if { $db_bterm != "NULL" } {
643-
lappend pin_list $db_bterm
644-
} else {
645-
utl::warn PPL 43 "Pin $pin_name not found in group $group_idx."
646-
}
647-
}
648-
ppl::add_pin_group $pin_list 0
628+
set pins [ppl::parse_pin_names "place_pins -group_pins" $group]
629+
ppl::add_pin_group $pins 0
649630
incr group_idx
650631
}
651632
}

src/ppl/test/CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,8 @@ or_integration_tests(
6262
group_pins8
6363
group_pins9
6464
group_pins10
65+
group_pins11
66+
group_pins12
6567
group_pins_error1
6668
group_pins_warn1
6769
invalid_layer

0 commit comments

Comments
 (0)