From 46cc3a5c587c6abb9d4c828798c54dc1276a34f5 Mon Sep 17 00:00:00 2001 From: rohanku <32043201+rohanku@users.noreply.github.com> Date: Wed, 14 Feb 2024 13:39:31 -0800 Subject: [PATCH] feat(sky130): Fix SKY130 ATOLL routing DRC errors (#377) --- libs/atoll/src/abs.rs | 4 ++-- pdks/sky130pdk/src/atoll/mod.rs | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/libs/atoll/src/abs.rs b/libs/atoll/src/abs.rs index 79169a2f..fa5c1c7a 100644 --- a/libs/atoll/src/abs.rs +++ b/libs/atoll/src/abs.rs @@ -471,8 +471,8 @@ impl InstanceAbstract { let bot = bounds.bot() - new_bounds.bot() * lcm_ypitch / ypitch; - for i in left..=left + bounds.width() { - for j in bot..=bot + bounds.height() { + for i in left..left + bounds.width() { + for j in bot..bot + bounds.height() { state.layer_mut(layer)[(i as usize, j as usize)] = PointState::Routed { net, has_via: false, diff --git a/pdks/sky130pdk/src/atoll/mod.rs b/pdks/sky130pdk/src/atoll/mod.rs index 35ff6ab3..a6727716 100644 --- a/pdks/sky130pdk/src/atoll/mod.rs +++ b/pdks/sky130pdk/src/atoll/mod.rs @@ -126,13 +126,13 @@ impl ViaMaker for Sky130ViaMaker { cell.ctx.layers.mcon.drawing.id(), Rect::from_sides(0, 0, 170, 170), Rect::from_sides(0, 0, 170, 170), - Rect::from_sides(-60, -45, 230, 215), + Rect::from_sides(-60, -115, 230, 285), ), 2 => ( cell.ctx.layers.via.drawing.id(), - Rect::from_sides(-125, -55, 275, 205), + Rect::from_sides(-55, -125, 205, 275), Rect::from_sides(0, 0, 150, 150), - Rect::from_sides(-125, -55, 275, 205), + Rect::from_sides(-55, -125, 205, 275), ), _ => todo!(), };