Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 26 additions & 30 deletions flow/util/cell-veneer/lefdef.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -312,9 +312,8 @@ proc write { design } {
out " ORIGIN 0.0 0.0 ;"
}
out " FOREIGN [dict get $design foreign ref] [dict get $design foreign origin] ;"
out [concat \
" SIZE [expr 1.0 * [lindex [dict get $design die_area] 2] / $def_units]" \
" BY [expr 1.0 * [lindex [dict get $design die_area] 3] / $def_units] ;"]
out " SIZE [expr 1.0 * [lindex [dict get $design die_area] 2] / $def_units]\
BY [expr 1.0 * [lindex [dict get $design die_area] 3] / $def_units] ;"
out " SYMMETRY [dict get $design symmetry] ;"
if { [dict exists $design site] } {
out " SITE [dict get $design site] ;"
Expand Down Expand Up @@ -344,10 +343,10 @@ proc write { design } {
set rect [absolute_rectangle [dict get $shape rect] $offset]

if { [dict exists $shape mask] } {
out [concat \
" RECT MASK [dict get $shape mask]" \
" [lmap x $rect { expr { 1.0 * $x / $def_units } }]" \
" ;"]
out \
" RECT MASK [dict get $shape mask]\
[lmap x $rect { expr { 1.0 * $x / $def_units } }] \
;"
} else {
out " RECT [lmap x $rect { expr 1.0 * $x / $def_units }] ;"
}
Expand Down Expand Up @@ -383,10 +382,9 @@ proc write { design } {
out " LAYER $layer_name ;"
foreach obs $obstructions {
if { [dict exists $obs mask] } {
out [concat \
" RECT MASK [dict get $obs mask]" \
" [lmap x [dict get $obs rect] { expr { 1.0 * $x / $def_units } }]" \
" ;"]
out " RECT MASK [dict get $obs mask]\
[lmap x [dict get $obs rect] { expr { 1.0 * $x / $def_units } }]
;"
} else {
out " RECT [lmap x [dict get $obs rect] { expr 1.0 * $x / $def_units }] ;"
}
Expand Down Expand Up @@ -740,9 +738,8 @@ proc write { design } {
}

out ""
out [concat \
"DIEAREA ( [lrange [dict get $design die_area] 0 1] )" \
" ( [lrange [dict get $design die_area] 2 3] ) ;"]
out "DIEAREA ( [lrange [dict get $design die_area] 0 1] )\
( [lrange [dict get $design die_area] 2 3] ) ;"

if { [dict exists $design tracks] } {

Expand All @@ -756,19 +753,18 @@ proc write { design } {
[dict get $design rows $idx start] \
[dict get $design rows $idx height] \
[dict get $design rows $idx orientation]]
out [concat \
" DO [dict get $design rows $idx num_sites] BY 1 STEP " \
"[dict get $design rows $idx site_width] 0 ;"]
out " DO [dict get $design rows $idx num_sites] BY 1 STEP\
[dict get $design rows $idx site_width] 0 ;"
}
}

if { [dict exists $design pins] } {
out ""
out "PINS [dict size [dict get $design pins]] ;"
dict for {pin_name pin} [dict get $design pins] {
out -nonewline [concat \
"- $pin_name + NET [dict get $pin net_name]" \
"+ DIRECTION [dict get $pin direction]"]
out -nonewline \
"- $pin_name + NET [dict get $pin net_name]\
+ DIRECTION [dict get $pin direction]"
if { [dict exists $pin use] } {
out -nonewline " + USE [dict get $pin use]"
}
Expand Down Expand Up @@ -866,9 +862,9 @@ proc write { design } {
set mask ""
}
if { [llength $point] == 2 } {
out -nonewline [concat \
" + $type [dict get $route layer] " \
"[get_line_width [dict get $route layer] [list $first_point $point]] "]
out -nonewline \
" + $type [dict get $route layer]\
[get_line_width [dict get $route layer] [list $first_point $point]] "
out -nonewline $shape
out -nonewline $points
out -nonewline $mask
Expand Down Expand Up @@ -899,19 +895,19 @@ proc write { design } {
}
if { [dict exists $net routes] } {
set route [lindex [dict get $net routes] 0]
out -nonewline [concat \
" + ROUTED [dict get $route layer] " \
"[expr round([dict get $route width])] " \
"+ SHAPE [dict get $route shape] "]
out -nonewline \
" + ROUTED [dict get $route layer]\
[expr round([dict get $route width])]\
+ SHAPE [dict get $route shape] "
foreach point [dict get $route points] {
out -nonewline " $point"
}
out ""

foreach route [lrange [dict get $net routes] 1 end] {
out [concat \
" NEW [dict get $route layer] [expr round([dict get $route width])]" \
"+ SHAPE [dict get $route shape] "]
out \
" NEW [dict get $route layer] [expr round([dict get $route width])]\
+ SHAPE [dict get $route shape] "
foreach point [dict get $route points] {
out -nonewline " $point"
}
Expand Down