Skip to content

Commit

Permalink
Update user_project_ci.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
marwaneltoukhy authored Nov 5, 2024
1 parent f534826 commit 18e15d7
Showing 1 changed file with 112 additions and 111 deletions.
223 changes: 112 additions & 111 deletions .github/workflows/user_project_ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

jobs:
download_caravel:
runs-on: ubuntu-latest
runs-on: cpu5
steps:
- uses: actions/checkout@v2

Expand Down Expand Up @@ -42,13 +42,13 @@ jobs:
tar -cf /tmp/caravel.tar -C $CARAVEL_ROOT .
- name: Upload Caravel Tarball
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: caravel-tarball
path: /tmp/caravel.tar

download_deps:
runs-on: ubuntu-latest
runs-on: cpu5
strategy:
matrix:
targets: ["pdk-with-volare", "install_mcw", "openlane", "setup-timing-scripts", "precheck"]
Expand Down Expand Up @@ -92,7 +92,7 @@ jobs:
fi
- name: Download caravel Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: caravel-tarball
path: /tmp
Expand All @@ -118,18 +118,18 @@ jobs:
tar -cf /tmp/${{ env.dep_name }}.tar -C ${{ env.dep_root }} .
- name: Upload Dependencies Tarball
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: ${{ env.dep_name }}-tarball
path: /tmp/${{ env.dep_name }}.tar

hardening:
timeout-minutes: 720
runs-on: ubuntu-latest
runs-on: cpu5
strategy:
matrix:
pdk: ["sky130A", "sky130B"]
needs: [download_deps]
pdk: ["sky130A"]
needs: [download_deps, RTL-verification]
steps:
- uses: actions/checkout@v2

Expand All @@ -152,7 +152,7 @@ jobs:
echo "MPW_TAG=main" >> $GITHUB_ENV
- name: Download PDK Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: pdk-tarball
path: /tmp
Expand All @@ -164,7 +164,7 @@ jobs:
tar -xf /tmp/pdk.tar -C $PDK_ROOT .
- name: Download openlane Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: openlane-tarball
path: /tmp
Expand All @@ -177,6 +177,7 @@ jobs:
- name: Harden using Openlane
run: |
make setup
python3 $GITHUB_WORKSPACE/.github/scripts/get_designs.py --design $GITHUB_WORKSPACE
for word in $(cat harden_sequence.txt); do
echo "CURRENT_DESIGN=${word}" >> $GITHUB_ENV
Expand All @@ -201,17 +202,17 @@ jobs:
tar -cf /tmp/design_${{ matrix.pdk }}.tar -C $GITHUB_WORKSPACE .
- name: Upload Design_${{ matrix.pdk }} Tarball
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: design_${{ matrix.pdk }}-tarball
path: /tmp/design_${{ matrix.pdk }}.tar

RTL-verification:
timeout-minutes: 720
runs-on: ubuntu-latest
runs-on: cpu5
strategy:
matrix:
pdk: ["sky130A", "sky130B"]
pdk: ["sky130A"]
needs: [download_deps]
steps:
- uses: actions/checkout@v2
Expand All @@ -235,7 +236,7 @@ jobs:
echo "MPW_TAG=main" >> $GITHUB_ENV
- name: Download PDK Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: pdk-tarball
path: /tmp
Expand All @@ -247,7 +248,7 @@ jobs:
tar -xf /tmp/pdk.tar -C $PDK_ROOT .
- name: Download caravel Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: caravel-tarball
path: /tmp
Expand All @@ -259,7 +260,7 @@ jobs:
tar -xf /tmp/caravel.tar -C $CARAVEL_ROOT .
- name: Download mgmt_core_wrapper Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: mgmt_core_wrapper-tarball
path: /tmp
Expand All @@ -284,10 +285,10 @@ jobs:
precheck:
timeout-minutes: 720
runs-on: ubuntu-latest
runs-on: cpu5
strategy:
matrix:
pdk: ["sky130A", "sky130B"]
pdk: ["sky130A"]
needs: [hardening]
steps:
- uses: actions/checkout@v2
Expand All @@ -310,7 +311,7 @@ jobs:
echo "MPW_TAG=main" >> $GITHUB_ENV
- name: Download PDK Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: pdk-tarball
path: /tmp
Expand All @@ -322,7 +323,7 @@ jobs:
tar -xf /tmp/pdk.tar -C $PDK_ROOT .
- name: Download precheck Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: precheck-tarball
path: /tmp
Expand All @@ -334,7 +335,7 @@ jobs:
tar -xf /tmp/precheck.tar -C $PRECHECK_ROOT .
- name: Download Design_${{ matrix.pdk }} Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: design_${{ matrix.pdk }}-tarball
path: /tmp
Expand Down Expand Up @@ -362,7 +363,7 @@ jobs:
STA:
timeout-minutes: 720
runs-on: ubuntu-latest
runs-on: cpu5
strategy:
matrix:
pdk: ["sky130A"]
Expand All @@ -388,7 +389,7 @@ jobs:
echo "MPW_TAG=main" >> $GITHUB_ENV
- name: Download PDK Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: pdk-tarball
path: /tmp
Expand All @@ -400,7 +401,7 @@ jobs:
tar -xf /tmp/pdk.tar -C $PDK_ROOT .
- name: Download timing-scripts Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: timing-scripts-tarball
path: /tmp
Expand All @@ -412,7 +413,7 @@ jobs:
tar -xf /tmp/timing-scripts.tar -C $TIMING_ROOT .
- name: Download Design_${{ matrix.pdk }} Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: design_${{ matrix.pdk }}-tarball
path: /tmp
Expand All @@ -424,7 +425,7 @@ jobs:
tar -xf /tmp/design_${{ matrix.pdk }}.tar -C $GITHUB_WORKSPACE .
- name: Download Caravel Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: caravel-tarball
path: /tmp
Expand All @@ -436,7 +437,7 @@ jobs:
tar -xf /tmp/caravel.tar -C ${{ env.CARAVEL_ROOT }} .
- name: Download mgmt_core_wrapper Tarball
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: mgmt_core_wrapper-tarball
path: /tmp
Expand Down Expand Up @@ -470,90 +471,90 @@ jobs:
exit 0
fi
# GL-verification:
# timeout-minutes: 720
# runs-on: ubuntu-latest
# strategy:
# matrix:
# pdk: ["sky130A", "sky130B"]
# needs: [download_deps]
# 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 ENVIRONMENT VARIABLES
# run: |
# echo "PDK=${{ matrix.pdk }}" >> $GITHUB_ENV
# echo "PDKPATH=$GITHUB_WORKSPACE/pdk/${{ matrix.pdk }}" >> $GITHUB_ENV
# echo "PDK_ROOT=$GITHUB_WORKSPACE/pdk" >> $GITHUB_ENV
# echo "OPENLANE_ROOT=$GITHUB_WORKSPACE/openlane_src" >> $GITHUB_ENV
# echo "CARAVEL_ROOT=$GITHUB_WORKSPACE/caravel" >> $GITHUB_ENV
# echo "MCW_ROOT=$GITHUB_WORKSPACE/mgmt_core_wrapper" >> $GITHUB_ENV
# echo "TIMING_ROOT=$GITHUB_WORKSPACE/timing-scripts" >> $GITHUB_ENV
# echo "PRECHECK_ROOT=$GITHUB_WORKSPACE/mpw_precheck" >> $GITHUB_ENV
# echo "MPW_TAG=main" >> $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 }}
# sudo chown -R $USER:$USER ${{ env.PDK_ROOT }}
# tar -xf /tmp/pdk.tar -C $PDK_ROOT .
GL-verification:
timeout-minutes: 720
runs-on: cpu5
strategy:
matrix:
pdk: ["sky130A"]
needs: [download_deps, hardening]
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 ENVIRONMENT VARIABLES
run: |
echo "PDK=${{ matrix.pdk }}" >> $GITHUB_ENV
echo "PDKPATH=$GITHUB_WORKSPACE/pdk/${{ matrix.pdk }}" >> $GITHUB_ENV
echo "PDK_ROOT=$GITHUB_WORKSPACE/pdk" >> $GITHUB_ENV
echo "OPENLANE_ROOT=$GITHUB_WORKSPACE/openlane_src" >> $GITHUB_ENV
echo "CARAVEL_ROOT=$GITHUB_WORKSPACE/caravel" >> $GITHUB_ENV
echo "MCW_ROOT=$GITHUB_WORKSPACE/mgmt_core_wrapper" >> $GITHUB_ENV
echo "TIMING_ROOT=$GITHUB_WORKSPACE/timing-scripts" >> $GITHUB_ENV
echo "PRECHECK_ROOT=$GITHUB_WORKSPACE/mpw_precheck" >> $GITHUB_ENV
echo "MPW_TAG=main" >> $GITHUB_ENV
- name: Download PDK Tarball
uses: actions/download-artifact@v3
with:
name: pdk-tarball
path: /tmp

- name: Unpack PDK Tarball
run: |
sudo mkdir -p ${{ env.PDK_ROOT }}
sudo chown -R $USER:$USER ${{ env.PDK_ROOT }}
tar -xf /tmp/pdk.tar -C $PDK_ROOT .
# - name: Download caravel Tarball
# uses: actions/download-artifact@v2
# with:
# name: caravel-tarball
# path: /tmp

# - name: Unpack caravel Tarball
# run: |
# sudo mkdir -p ${{ env.CARAVEL_ROOT }}
# sudo chown -R $USER:$USER ${{ env.CARAVEL_ROOT }}
# tar -xf /tmp/caravel.tar -C $CARAVEL_ROOT .
- name: Download caravel Tarball
uses: actions/download-artifact@v3
with:
name: caravel-tarball
path: /tmp

- name: Unpack caravel Tarball
run: |
sudo mkdir -p ${{ env.CARAVEL_ROOT }}
sudo chown -R $USER:$USER ${{ env.CARAVEL_ROOT }}
tar -xf /tmp/caravel.tar -C $CARAVEL_ROOT .
# - name: Download mgmt_core_wrapper Tarball
# uses: actions/download-artifact@v2
# with:
# name: mgmt_core_wrapper-tarball
# path: /tmp

# - name: Unpack mgmt_core_wrapper Tarball
# run: |
# sudo mkdir -p ${{ env.MCW_ROOT }}
# sudo chown -R $USER:$USER ${{ env.MCW_ROOT }}
# tar -xf /tmp/mgmt_core_wrapper.tar -C $MCW_ROOT .

# # - name: Download Design Tarball
# # uses: actions/download-artifact@v2
# # with:
# # name: design-tarball
# # path: /tmp

# # - name: Unpack Design Tarball
# # run: |
# # sudo mkdir -p $GITHUB_WORKSPACE
# # sudo chown -R $USER:$USER $GITHUB_WORKSPACE
# # tar -xf /tmp/design.tar -C $GITHUB_WORKSPACE .

# - name: install cocotb
# run: |
# make setup-cocotb
- name: Download mgmt_core_wrapper Tarball
uses: actions/download-artifact@v3
with:
name: mgmt_core_wrapper-tarball
path: /tmp

- name: Unpack mgmt_core_wrapper Tarball
run: |
sudo mkdir -p ${{ env.MCW_ROOT }}
sudo chown -R $USER:$USER ${{ env.MCW_ROOT }}
tar -xf /tmp/mgmt_core_wrapper.tar -C $MCW_ROOT .
- name: Download Design_${{ matrix.pdk }} Tarball
uses: actions/download-artifact@v3
with:
name: design_${{ matrix.pdk }}-tarball
path: /tmp
- name: Unpack Design_${{ matrix.pdk }} Tarball
run: |
sudo mkdir -p $GITHUB_WORKSPACE
sudo chown -R $USER:$USER $GITHUB_WORKSPACE
tar -xf /tmp/design_${{ matrix.pdk }}.tar -C $GITHUB_WORKSPACE .
- name: install cocotb
run: |
make setup-cocotb
# - name: run RTL verification
# run: |
# cd $GITHUB_WORKSPACE/verilog/dv/cocotb && $GITHUB_WORKSPACE/venv-cocotb/bin/caravel_cocotb -tl user_proj_tests/user_proj_tests_gl.yaml -verbosity debug --CI -tag gl_verification
# cnt=$(grep -c "failed" "$GITHUB_WORKSPACE/verilog/dv/cocotb/sim/gl_verification/runs.log")
# if ! [[ $cnt ]]; then cnt=0; fi
# if [[ $cnt -eq 1 ]]; then exit 0; fi
# exit 2
- name: run RTL verification
run: |
cd $GITHUB_WORKSPACE/verilog/dv/cocotb && $GITHUB_WORKSPACE/venv-cocotb/bin/caravel_cocotb -tl user_proj_tests/user_proj_tests_gl.yaml -verbosity debug --CI -tag gl_verification
cnt=$(grep -c "failed" "$GITHUB_WORKSPACE/verilog/dv/cocotb/sim/gl_verification/runs.log")
if ! [[ $cnt ]]; then cnt=0; fi
if [[ $cnt -eq 1 ]]; then exit 0; fi
exit 2

0 comments on commit 18e15d7

Please sign in to comment.