Skip to content

Commit

Permalink
docs: update usage/custom_pdk_builds
Browse files Browse the repository at this point in the history
  • Loading branch information
donn committed Dec 22, 2024
1 parent 3876562 commit e73fb3c
Showing 1 changed file with 9 additions and 23 deletions.
32 changes: 9 additions & 23 deletions docs/source/usage/custom_pdk_builds.md
Original file line number Diff line number Diff line change
@@ -1,45 +1,31 @@
# Custom-Building PDKs
The pre-built version of the sky130 PDK variants included with OpenLane includes the following standard cell libraries:
# Custom PDK Installations

The sky130 PDK variants pulled using `make pdk` include the following standard cell libraries:

* sky130_fd_io
* sky130_fd_pr
* sky130_fd_sc_hd
* sky130_fd_sc_hvl
* sky130 sram modules

If you need other libraries, you will have to resort to manual builds using [Volare](https://github.com/efabless/volare) as shown below. You will need Git 2.35+ and Docker.

Note that this will take a while, from 20 minutes to an hour depending on your internet speed and compute power.
If you need other libraries (including the ReRAM library for `sky130B`), you will have to download them using [Volare](https://github.com/efabless/volare) as shown below.

Start a venv shell using `make start-build-env`. You should see a prompt looking kind of like this:

```bash
(venv) [user@host openlane]$
```

First of all, install volare:

```bash
pip3 install --upgrade --no-cache-dir volare
```

Then, build the PDK as follows: The `-l` options are the libraries you want to include. For example, to also include `sky130_fd_sc_hs`, you can add `-l sky130_fd_sc_hs` to the default set of libraries using the following command:
Then, download the libraries as follows: The `-l` options are the libraries you want to include. For example, to download `sky130_fd_sc_hs`, you can add `-l sky130_fd_sc_hs` to your current set of libraries using the following command:

```bash
volare build -j$(nproc) --pdk sky130 --clear-build-artifacts --sram -l sky130_fd_io -l sky130_fd_pr -l sky130_fd_sc_hvl -l sky130_fd_sc_hd -l sky130_fd_sc_hs
volare enable --pdk sky130 -l sky130_fd_sc_hs
```

You can also add `-l all` to just include all of them:

```bash
volare build -j$(nproc) --pdk sky130 --clear-build-artifacts --sram -l all
```

Either way, go grab a smoothie. This will take a while.

After it is done, you can then enable the resulting PDK as such:

```bash
volare enable
volare enable --pdk sky130 -l all
```

Et voila, your custom-built PDK is ready.
After it is done, your new SCLs are ready to use.

0 comments on commit e73fb3c

Please sign in to comment.