From 63a8f7c65362f191bc10e2046eda1681f4be13f9 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 16 Apr 2018 16:15:35 -0700 Subject: [PATCH] Remove m2 from write driver --- compiler/modules/write_driver_array.py | 16 ++++---- .../scn3me_subm/gds_lib/write_driver.gds | Bin 11876 -> 11868 bytes .../scn3me_subm/mag_lib/write_driver.mag | 36 ++++++++---------- 3 files changed, 25 insertions(+), 27 deletions(-) diff --git a/compiler/modules/write_driver_array.py b/compiler/modules/write_driver_array.py index a561b775..909badec 100644 --- a/compiler/modules/write_driver_array.py +++ b/compiler/modules/write_driver_array.py @@ -84,13 +84,15 @@ class write_driver_array(design.design): height=br_pin.height()) for n in ["vdd", "gnd"]: - pin_pos = self.driver_insts[i].get_pin(n).center() - # Add the M2->M3 stack - self.add_via_center(layers=("metal2", "via2", "metal3"), - offset=pin_pos) - self.add_layout_pin_rect_center(text=n, - layer="metal3", - offset=pin_pos) + pin_list = self.driver_insts[i].get_pins(n) + for pin in pin_list: + pin_pos = pin.center() + # Add the M2->M3 stack + self.add_via_center(layers=("metal2", "via2", "metal3"), + offset=pin_pos) + self.add_layout_pin_rect_center(text=n, + layer="metal3", + offset=pin_pos) diff --git a/technology/scn3me_subm/gds_lib/write_driver.gds b/technology/scn3me_subm/gds_lib/write_driver.gds index 495a484f54c5279b71ea55636dbdeffe46d7b373..59a5ac021dae5a1c08288b50d23e3e4f3edc0973 100644 GIT binary patch delta 681 zcmZvaJxD@P7=~YevJfjxD!usEO;2Waprxs?p}{tX5Qz{?Tckmxv7sp~h~pFu5#bOa z#T|mCMu&#R1_>0~!pWhbq5E+;TnD)vp3C#y@A97SoPM^GRpEdYHUunIRAGl(f2Of9 z^1gYcu6xJm=Ug+$Tz#OI1ZKBP_Rj$FlD(whp=;*-0csUsVcX=zJ3wBtRuO}s!ov4J zVF)b!nJlFM@{)z2;NgtAcnri&0e{=%$|peHpm+%9)Gh#b36T7L0wy|uWEX-*xRc7H zyU-3JcQ$p#4V>>7f0MlY1;`uJ645UU3+mx0*mB(D(Fs6avXl~o*uHY$Gd`1~Hs1}k zX-(F%F=yRODbvy<$xG^KTZx?0(*R!d5qTOyS>tT(ZG2er6xOHVyI4NX}=+!jqi4iREF z)Suwc=+GdE!BaQ9pJOj^_ z*joHYeyq0R(jNfE0A?!=KlT99nPVtBaV>-AK&uJNPaIyn0HiZpP4yLz$y5>8&jIqm z;lT|+I&(j#?3I$B>a`QomAU?Ex*Dqcm8uvGjKrLr0y9H^IT|QCX$NVWE+ av`X3{mhl32I|wZKjv6(<8`i_GhZn!W7nw-_ diff --git a/technology/scn3me_subm/mag_lib/write_driver.mag b/technology/scn3me_subm/mag_lib/write_driver.mag index 2a90ff9a..4395e8b0 100644 --- a/technology/scn3me_subm/mag_lib/write_driver.mag +++ b/technology/scn3me_subm/mag_lib/write_driver.mag @@ -1,6 +1,6 @@ magic tech scmos -timestamp 1523061656 +timestamp 1523920429 << nwell >> rect -3 101 37 138 rect -3 0 37 51 @@ -161,7 +161,8 @@ rect 23 75 27 79 rect 7 24 11 28 rect 16 10 20 14 << metal1 >> -rect 5 189 8 191 +rect 5 192 10 196 +rect 5 189 8 192 rect 32 181 33 185 rect 13 169 16 177 rect 13 165 15 169 @@ -174,7 +175,6 @@ rect 30 142 33 181 rect 20 138 33 142 rect 20 132 24 138 rect 12 122 16 125 -rect 16 118 17 122 rect 13 114 17 118 rect 5 104 9 107 rect 21 104 25 107 @@ -182,7 +182,7 @@ rect 5 101 25 104 rect 5 89 9 101 rect 21 100 25 101 rect 21 96 23 100 -rect 25 82 26 86 +rect 25 82 26 90 rect 4 64 7 71 rect 27 64 31 79 rect 3 51 7 57 @@ -191,30 +191,23 @@ rect 11 45 15 48 rect 27 45 31 60 rect 3 35 7 38 rect 19 35 23 38 -rect 7 31 8 35 -rect 12 31 23 35 +rect 7 31 19 35 rect 0 24 7 28 rect 11 24 36 28 << m2contact >> -rect 5 191 9 195 +rect 10 192 14 196 rect 20 189 24 193 rect 11 157 15 161 -rect 8 118 12 122 -rect 30 82 34 86 +rect 16 118 20 122 +rect 26 86 30 90 rect 19 64 23 68 -rect 8 31 12 35 +rect 19 31 23 35 rect 12 10 16 14 << metal2 >> -rect 10 195 14 202 -rect 9 191 14 195 +rect 10 196 14 202 +rect 9 192 10 195 rect 20 193 24 202 rect 20 177 24 189 -rect 15 157 36 161 -rect 8 35 12 118 -rect 32 86 36 157 -rect 34 82 36 86 -rect 32 72 36 82 -rect 19 68 36 72 rect 16 10 20 14 rect 15 0 19 10 << m3p >> @@ -224,6 +217,9 @@ rlabel metal2 15 1 15 1 1 din rlabel metal1 2 25 2 25 3 en rlabel metal2 12 200 12 200 5 bl rlabel metal2 22 200 22 200 5 br -rlabel metal2 10 94 10 94 1 vdd -rlabel metal2 35 141 35 141 7 gnd +rlabel m2contact 21 66 21 66 1 gnd +rlabel m2contact 28 88 28 88 1 gnd +rlabel m2contact 13 159 13 159 1 gnd +rlabel m2contact 21 33 21 33 1 vdd +rlabel m2contact 18 120 18 120 1 vdd << end >>