|
1 | | -# Custom-Building PDKs |
2 | | -The pre-built version of the sky130 PDK variants included with OpenLane includes the following standard cell libraries: |
| 1 | +# Custom PDK Installations |
| 2 | + |
| 3 | +The sky130 PDK variants pulled using `make pdk` include the following standard cell libraries: |
| 4 | + |
3 | 5 | * sky130_fd_io |
4 | 6 | * sky130_fd_pr |
5 | 7 | * sky130_fd_sc_hd |
6 | 8 | * sky130_fd_sc_hvl |
7 | 9 | * sky130 sram modules |
8 | 10 |
|
9 | | -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. |
10 | | - |
11 | | -Note that this will take a while, from 20 minutes to an hour depending on your internet speed and compute power. |
| 11 | +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. |
12 | 12 |
|
13 | 13 | Start a venv shell using `make start-build-env`. You should see a prompt looking kind of like this: |
14 | 14 |
|
15 | 15 | ```bash |
16 | 16 | (venv) [user@host openlane]$ |
17 | 17 | ``` |
18 | 18 |
|
19 | | -First of all, install volare: |
20 | | - |
21 | | -```bash |
22 | | -pip3 install --upgrade --no-cache-dir volare |
23 | | -``` |
24 | | - |
25 | | -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: |
| 19 | +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: |
26 | 20 |
|
27 | 21 | ```bash |
28 | | -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 |
| 22 | +volare enable --pdk sky130 -l sky130_fd_sc_hs |
29 | 23 | ``` |
30 | 24 |
|
31 | 25 | You can also add `-l all` to just include all of them: |
32 | 26 |
|
33 | 27 | ```bash |
34 | | -volare build -j$(nproc) --pdk sky130 --clear-build-artifacts --sram -l all |
35 | | -``` |
36 | | - |
37 | | -Either way, go grab a smoothie. This will take a while. |
38 | | - |
39 | | -After it is done, you can then enable the resulting PDK as such: |
40 | | - |
41 | | -```bash |
42 | | -volare enable |
| 28 | +volare enable --pdk sky130 -l all |
43 | 29 | ``` |
44 | 30 |
|
45 | | -Et voila, your custom-built PDK is ready. |
| 31 | +After it is done, your new SCLs are ready to use. |
0 commit comments