Merge branch 'main' into switch_pdk
diff --git a/.github/workflows/user_project_ci.yml b/.github/workflows/user_project_ci.yml
index d3e9f0c..0cd7a16 100644
--- a/.github/workflows/user_project_ci.yml
+++ b/.github/workflows/user_project_ci.yml
@@ -8,46 +8,9 @@
workflow_dispatch:
jobs:
- pdk:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
-
- - name: Set up QEMU
- uses: docker/setup-qemu-action@v1
-
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v1
-
- - name: Export PDK ROOT
- run: echo "PDK_ROOT=/home/runner/work/pdk" >> $GITHUB_ENV
-
- - name: Export OPENLANE ROOT
- run: echo "OPENLANE_ROOT=/home/runner/work/caravel_user_project/openlane" >> $GITHUB_ENV
-
- - name: Install dependencies
- run: |
- sudo mkdir -p ${{ env.PDK_ROOT }}
- sudo chown -R $USER:$USER ${{ env.PDK_ROOT }}
- make install
- make openlane
- make pdk-with-volare
-
- - name: Tarball PDK
- run: |
- tar -cf /tmp/sky130A.tar -C $PDK_ROOT/sky130A .
-
- - name: Upload PDK Tarball
- uses: actions/upload-artifact@v2
- with:
- name: pdk-tarball
- path: /tmp/sky130A.tar
-
-
mpw_precheck:
timeout-minutes: 720
runs-on: ubuntu-latest
- needs: [pdk]
steps:
- uses: actions/checkout@v2
@@ -62,26 +25,20 @@
echo "PDK_ROOT=/home/runner/work/pdk" >> $GITHUB_ENV
- name: Export PDKPATH
- run: echo "PDKPATH=/home/runner/work/pdk/sky130A" >> $GITHUB_ENV
+ run: echo "PDKPATH=/home/runner/work/pdk/sky130B" >> $GITHUB_ENV
- - name: Download PDK Tarball
- uses: actions/download-artifact@v2
- with:
- name: pdk-tarball
- path: /tmp
-
- - name: Unpack PDK Tarball
+ - name: Dependancies pdk
run: |
- sudo mkdir -p ${{ env.PDK_ROOT }}/sky130A
- sudo chown -R $USER:$USER ${{ env.PDK_ROOT }}
- tar -xf /tmp/sky130A.tar -C $PDK_ROOT/sky130A .
+ make install
+ make pdk-with-volare
+
- name: Run MPW-Precheck
run: |
export INPUT_DIRECTORY=$(pwd)
export PRECHECK_ROOT=$INPUT_DIRECTORY/mpw_precheck
export OUTPUT_DIRECTORY=$INPUT_DIRECTORY/mpw_precheck_result
export OUTPUT=$OUTPUT_DIRECTORY/logs/precheck.log
- export PDKPATH=$PDK_ROOT/sky130A
+ export PDKPATH=$PDK_ROOT/sky130B
git clone --depth=1 -b mpw-5b https://github.com/efabless/mpw_precheck.git
@@ -102,7 +59,6 @@
user_project_flow:
timeout-minutes: 720
runs-on: ubuntu-latest
- needs: [pdk]
steps:
- uses: actions/checkout@v2
@@ -117,24 +73,17 @@
- name: Export OPENLANE ROOT
run: echo "OPENLANE_ROOT=/home/runner/work/caravel_user_project/openlane" >> $GITHUB_ENV
-
- - name: Download PDK Tarball
- uses: actions/download-artifact@v2
- with:
- name: pdk-tarball
- path: /tmp
-
- - name: Unpack PDK Tarball
- run: |
- sudo mkdir -p ${{ env.PDK_ROOT }}/sky130A
- sudo chown -R $USER:$USER ${{ env.PDK_ROOT }}
- tar -xf /tmp/sky130A.tar -C $PDK_ROOT/sky130A .
+
+ - name: Export PDKPATH
+ run: echo "PDKPATH=/home/runner/work/pdk/sky130B" >> $GITHUB_ENV
- name: Install dependencies
run: |
+ export CARAVEL_LITE=0
make install
make install_mcw
make openlane
+ make pdk-with-volare
make simenv
- name: Harden using Openlane
diff --git a/Makefile b/Makefile
index 6f8e5b8..2e99d6d 100644
--- a/Makefile
+++ b/Makefile
@@ -31,6 +31,9 @@
# Install lite version of caravel, (1): caravel-lite, (0): caravel
CARAVEL_LITE?=1
+# PDK switch varient
+export PDK?=sky130B
+
MPW_TAG ?= mpw-6c
ifeq ($(CARAVEL_LITE),1)
diff --git a/openlane/user_proj_example/config.tcl b/openlane/user_proj_example/config.tcl
index c9266ee..b216984 100755
--- a/openlane/user_proj_example/config.tcl
+++ b/openlane/user_proj_example/config.tcl
@@ -13,7 +13,7 @@
# limitations under the License.
# SPDX-License-Identifier: Apache-2.0
-set ::env(PDK) "sky130A"
+set ::env(PDK) $::env(PDK)
set ::env(STD_CELL_LIBRARY) "sky130_fd_sc_hd"
set script_dir [file dirname [file normalize [info script]]]
diff --git a/openlane/user_project_wrapper/config.tcl b/openlane/user_project_wrapper/config.tcl
index f720e39..f0d44fa 100755
--- a/openlane/user_project_wrapper/config.tcl
+++ b/openlane/user_project_wrapper/config.tcl
@@ -16,7 +16,7 @@
# Base Configurations. Don't Touch
# section begin
-set ::env(PDK) "sky130A"
+set ::env(PDK) $::env(PDK)
set ::env(STD_CELL_LIBRARY) "sky130_fd_sc_hd"
# YOU ARE NOT ALLOWED TO CHANGE ANY VARIABLES DEFINED IN THE FIXED WRAPPER CFGS