I am lost in the PDK. Where do I find the layout o...
# analog-design
f
I am lost in the PDK. Where do I find the layout of the bipolar devices e.g. pnp and npn ?
t
$PDK_ROOT/sky130A/libs.ref/sky130_fd_pr/gds/sky130_fd_pr.gds
. The layouts are all bundled together in the one library file. The defined device layouts are:
Copy code
sky130_fd_pr__pnp_05v5_W3p40L3p40
sky130_fd_pr__rf_pnp_05v5_W0p68L0p68
sky130_fd_pr__rf_pnp_05v5_W3p40L3p40
sky130_fd_pr__npn_11v0_W1p00L1p00
sky130_fd_pr__rf_npn_05v5_W1p00L1p00
sky130_fd_pr__rf_npn_05v5_W2p00L8p00
sky130_fd_pr__rf_npn_05v5_W2p00L4p00
sky130_fd_pr__rf_npn_05v5_W2p00L2p00
sky130_fd_pr__rf_npn_05v5_W1p00L8p00
sky130_fd_pr__rf_npn_05v5_W1p00L4p00
sky130_fd_pr__rf_npn_05v5_W1p00L2p00
sky130_fd_pr__rf_npn_11v0_W1p00L1p00
sky130_fd_pr__rf_npn_05v5_W5p00L5p00
Note that there are more layouts than there are models. There is no difference between those labeled
rf
and those that are not, other than the name.
f
👍
@User mmm, libs.ref/sky130_fd_pr/gds/ is empty on my installation; I am using version 1.0.301 Do I have to enable some configure option when building open_pdk ?
t
Shouldn't be necessary. What configuration options are you giving?
f
Copy code
% ./scripts/config.status --config
'--enable-sky130-pdk' '--prefix=/home/verhaegs/eda/Chips4Makers/CIIC/sky130_1.0.301' '--enable-sram-sky130' '--enable-osu-t12-sky130' '--enable-osu-t15-sky130' '--enable-osu-t18-sky130'
t
The important thing would be that if you are pointing to an installation of skywater-pdk outside of open_pdks, then the sky130_fd_pr submodule would need to be initialized; but since the GDS files are just copied from source to destination (and compiled into a single file along the way), you can also find these layouts in the original skywater-pdk source at, e.g.,
libraries/sky130_fd_pr/latest/cells/rf_npn_05v5/sky130_fd_pr__rf_npn_05v5_W1p00L1p00.gds
. Some of the PNP devices are not present as GDS in the skywater-pdk source, and I have put those layouts in the open_pdks source under
sky130/custom/sky130_fd_pr/gds/
.
If you use
--enable-sky130-pdk
without specifying a path, then the PDK will be cloned into open_pdks
sources/sky130-pdk
. Is it possible that something happened to the skywater-pdk repository that is preventing submodule initialization?
f
I do get errors when building sky130. I do
make
in top directory and then it seems to call
make -j all
in sky130. This is on a 40-core server which seems to overload the memory in the server. I do seem to have the file
libs.ref/sky130_fd_pr/gds/sky130_fd_pr.gds
now.