From e6ff73dbc19f5028cb5695b1cc5be11f8f90b551 Mon Sep 17 00:00:00 2001 From: mrg Date: Thu, 17 Dec 2020 11:48:08 -0800 Subject: [PATCH] Move supply pins for wmask and array to edge to avoid channel route congestion --- compiler/modules/write_mask_and_array.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/compiler/modules/write_mask_and_array.py b/compiler/modules/write_mask_and_array.py index ae5d8550..83235613 100644 --- a/compiler/modules/write_mask_and_array.py +++ b/compiler/modules/write_mask_and_array.py @@ -138,12 +138,11 @@ class write_mask_and_array(design.design): self.add_via_stack_center(from_layer=en_pin.layer, to_layer="m3", offset=en_pos) - - for supply in ["gnd", "vdd"]: - supply_pin=self.and2_insts[i].get_pin(supply) - self.add_power_pin(supply, supply_pin.center(), start_layer=supply_pin.layer) - + for supply in ["gnd", "vdd"]: supply_pin_left = self.and2_insts[0].get_pin(supply) supply_pin_right = self.and2_insts[self.num_wmasks - 1].get_pin(supply) self.add_path(supply_pin_left.layer, [supply_pin_left.lc(), supply_pin_right.rc()]) + self.add_power_pin(supply, supply_pin_left.center(), start_layer=supply_pin_left.layer) + self.add_power_pin(supply, supply_pin_right.center(), start_layer=supply_pin_right.layer) +