After much research on SW130 I can see it is suite...
# sky130
d
After much research on SW130 I can see it is suited to my application needs and am about to go ahead with the pdk install. Simple question - should I use volare (https://github.com/efabless/volare) or should I use open_pdk directly (http://opencircuitdesign.com/open_pdks/)? Stefan has posted an excellent video of the installation using open_pdk which makes me a little more comfortable with that flow (https://xschem.sourceforge.io/stefan/xschem_man/video_tutorials/install_xschem_and_open_pdks.mp4) so I am inclined to favor that approach as I am very novice with this sort of thing. But would like to know what people recommend or are doing mostly for this task? My chip will be taped out on the openframe chipignite option and will be analog heavy, but will contain some digital also and so I will be using the openlane flow. Does this make one approach more preferred over the other or does it even matter? Basically just looking for the most reliable and trouble free approach here. Thanks
a
You can use volare to build the latest pdk commit Having
volare
installed and
PDK_ROOT
set is a requirement for this script.
Copy code
# <https://github.com/RTimothyEdwards/open_pdks/commits/master/>
COMMIT=42cd15c469adc1d303ffca4a7d32c29a4564a737

volare build --pdk=sky130 $COMMIT
volare enable --pdk=sky130 $COMMIT

# I only use the A flavor
rm -rf $PDK_ROOT/sky130B
rm -rf $PDK_ROOT/volare/sky130/versions/$COMMIT/sky130B

rm -rf $PDK_ROOT/volare/sky130/build
a
Volare is definitely your best choice
Those videos are old
s
This installation video is of gf180 pdk using volare but works the same for sky130

https://youtu.be/USCmZuREMTE?feature=shared

d
Cool. Thanks guys. Will go that route so.
Hi guys. At 2min30s in this video, he exports a 2nd variable called "PDK" which "chooses the flavour of the pdk we want to use". He sets it as the "C" option for his gf pdk. What do I set this variable to for SW130? Thanks
Also, below are some of the available pdks I see for SW130. Which should I install?
image.png
Anyone have any ideas here? Any help much appreciated.
a
I recommend follow the script that build the latest commit of the efabless open_pdks repo (first comment), the video has a lot of steps related to gf180 as the inclusion of a dropdown menu and modification of internal files in ways not valid for sky130. You should define two environment variables •
PDK_ROOT
as the directory that has a lot of references to pdks (sometimes is
$USER/.volare
) • and
PDK
to select which flavor use. In general, we use
sky130A
but that could depend on each specific case. This script fix errors on older commits of the pdk. Apply each command individually and evaluate if it's good idea to run it given that some of the problems are already solved https://github.com/akiles-esta-usado/ic-makefile/blob/main/installers/patch_volare.sh
d
Thanks Acquiles. I had just installed it when I realised the correct setting for $PDK, which I set to sky130A. Out of curiosity, what is the difference between sky130A and sky130B?
s
As far as I know, the difference is that the sky130B contains an additional device called ReRAM. I don't know if there are more differences.