Skip to content

Commit

Permalink
added helper scripts for view generation, and added ECO section in th…
Browse files Browse the repository at this point in the history
…e README
  • Loading branch information
marwaneltoukhy committed Oct 28, 2022
1 parent 28b57b0 commit 69ec83d
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 1 deletion.
14 changes: 13 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,16 @@ To simulate
```
cd sim
make clean sim
```
```

## ECO done in DFFRAMS to get antenna clean

The ECOs were done on both DFFRAMs to clean antenna violations, these ECOs were only on metal layers and were done using the jumper method for antenna avoidance

The non-eco'd views coming out of OpenLane is postfixed by `-openlane`, for example: `gds/RAM128-openlane.gds.gz`

The eco'd views are the views that doesn't have postfix

After the eco `scripts/update_views.sh` was ran to produce mag, lef and def views for the eco'd gds

`scripts/build_mgmt_core_wrapper.sh` was ran to produce the final gds for mgmt_core_wrapper
24 changes: 24 additions & 0 deletions scripts/build_mgmt_core_wrapper.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@

#!/bin/bash

# run this script from caravel root

echo ${PDK_ROOT:=/usr/share/pdk} > /dev/null
echo ${PDK:=sky130A} > /dev/null
echo ${MCW_ROOT:=$(pwd)} > /dev/null

echo "Run this script from mgmt_core_wrapper root"
echo "generating gds for mgmt_core_wrapper from mag"
magic -dnull -noconsole -rcfile $PDK_ROOT/$PDK/libs.tech/magic/$PDK.magicrc << EOF
cd $MCW_ROOT/mag
drc off;
crashbackups stop;
addpath hexdigits;
addpath $MCW_ROOT/mag;
load mgmt_core_wrapper -dereference;
select top cell;
expand;
cif *hier write disable;
cif *array write disable;
gds write $MCW_ROOT/gds/mgmt_core_wrapper.gds;
quit -noprompt;
24 changes: 24 additions & 0 deletions scripts/update_views.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@

#!/bin/bash

# run this script from caravel root

echo ${PDK_ROOT:=/usr/share/pdk} > /dev/null
echo ${PDK:=sky130A} > /dev/null

echo "Run this script from mgmt_core_wrapper root"
echo "Writing $1 lef, def and mag view from gds"
magic -dnull -noconsole -rcfile $PDK_ROOT/$PDK/libs.tech/magic/$PDK.magicrc << EOF
drc off
gds read gds/$1.gds
load $1
lef write lef/$1.lef
save mag/$1.mag
select top cell
extract no all
extract do local
extract all
def write def/$1.def
EOF
rm *.ext
exit 0

0 comments on commit 69ec83d

Please sign in to comment.