Merge pull request #182 from efabless/config_fix user_project_wrapper fix
diff --git a/.github/workflows/user_project_ci.yml b/.github/workflows/user_project_ci.yml index fd56dd9..0fb3ab6 100644 --- a/.github/workflows/user_project_ci.yml +++ b/.github/workflows/user_project_ci.yml
@@ -43,62 +43,6 @@ name: pdk-tarball path: /tmp/pdk.tar - - mpw_precheck: - timeout-minutes: 720 - runs-on: ubuntu-latest - needs: [pdk] - 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 PDKPATH - run: echo "PDKPATH=/home/runner/work/pdk/sky130A" >> $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 . - - 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 - - git clone --depth=1 -b mpw-7a https://github.com/efabless/mpw_precheck.git - - docker run -v "$PRECHECK_ROOT":"$PRECHECK_ROOT" -v "$INPUT_DIRECTORY":"$INPUT_DIRECTORY" -v "${{ env.PDK_ROOT }}":"${{ env.PDK_ROOT }}" -e INPUT_DIRECTORY="$INPUT_DIRECTORY" -e PDK_ROOT="${{ env.PDK_ROOT }}" -e PDKPATH="${{ env.PDKPATH }}" -u $(id -u "$USER"):$(id -g "$USER") efabless/mpw_precheck:latest bash -c "cd $PRECHECK_ROOT; python3 mpw_precheck.py --input_directory $INPUT_DIRECTORY --pdk_path ${{ env.PDKPATH }} --output_directory $OUTPUT_DIRECTORY license makefile consistency xor magic_drc klayout_beol klayout_feol klayout_met_min_ca_density klayout_offgrid klayout_pin_label_purposes_overlapping_drawing klayout_zeroarea" - - cnt=$(grep -c "All Checks Passed" "$OUTPUT") - if ! [[ $cnt ]]; then cnt=0; fi - if [[ $cnt -eq 1 ]]; then exit 0; fi - exit 2 - - name: upload failure logs - if: failure() - uses: actions/upload-artifact@v2 - with: - name: error - path: | - /home/runner/work/caravel_user_project/caravel_user_project/mpw_precheck_result/logs/* - user_project_flow_sky130A: timeout-minutes: 720 runs-on: ubuntu-latest @@ -115,6 +59,9 @@ - name: Export PDK ROOT run: echo "PDK_ROOT=/home/runner/work/pdk" >> $GITHUB_ENV + - name: Export PDK PATH + run: echo "PDKPATH=/home/runner/work/pdk/sky130A" >> $GITHUB_ENV + - name: Export PDK run: echo "PDK=sky130A" >> $GITHUB_ENV @@ -145,6 +92,31 @@ make user_proj_example make user_project_wrapper + - name: run 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 + + git clone --depth=1 -b mpw-7d https://github.com/efabless/mpw_precheck.git + + docker run -v "$PRECHECK_ROOT":"$PRECHECK_ROOT" -v "$INPUT_DIRECTORY":"$INPUT_DIRECTORY" -v "${{ env.PDK_ROOT }}":"${{ env.PDK_ROOT }}" -e INPUT_DIRECTORY="$INPUT_DIRECTORY" -e PDK_ROOT="${{ env.PDK_ROOT }}" -e PDKPATH="${{ env.PDKPATH }}" -u $(id -u "$USER"):$(id -g "$USER") efabless/mpw_precheck:latest bash -c "cd $PRECHECK_ROOT; python3 mpw_precheck.py --input_directory $INPUT_DIRECTORY --pdk_path ${{ env.PDKPATH }} --output_directory $OUTPUT_DIRECTORY license makefile consistency xor magic_drc klayout_beol klayout_feol klayout_met_min_ca_density klayout_offgrid klayout_pin_label_purposes_overlapping_drawing klayout_zeroarea" + + cnt=$(grep -c "All Checks Passed" "$OUTPUT") + if ! [[ $cnt ]]; then cnt=0; fi + if [[ $cnt -eq 1 ]]; then exit 0; fi + exit 2 + + - name: upload failure logs + if: failure() + uses: actions/upload-artifact@v2 + with: + name: error + path: | + /home/runner/work/caravel_user_project/caravel_user_project/mpw_precheck_result/logs/* + - name: Run DV RTL tests run: | make verify-io_ports-rtl @@ -177,6 +149,9 @@ - name: Export PDK ROOT run: echo "PDK_ROOT=/home/runner/work/pdk" >> $GITHUB_ENV + - name: Export PDK PATH + run: echo "PDKPATH=/home/runner/work/pdk/sky130B" >> $GITHUB_ENV + - name: Export PDK run: echo "PDK=sky130B" >> $GITHUB_ENV @@ -207,6 +182,30 @@ make user_proj_example make user_project_wrapper + - name: run 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 + + git clone --depth=1 -b mpw-7d https://github.com/efabless/mpw_precheck.git + + docker run -v "$PRECHECK_ROOT":"$PRECHECK_ROOT" -v "$INPUT_DIRECTORY":"$INPUT_DIRECTORY" -v "${{ env.PDK_ROOT }}":"${{ env.PDK_ROOT }}" -e INPUT_DIRECTORY="$INPUT_DIRECTORY" -e PDK_ROOT="${{ env.PDK_ROOT }}" -e PDKPATH="${{ env.PDKPATH }}" -u $(id -u "$USER"):$(id -g "$USER") efabless/mpw_precheck:latest bash -c "cd $PRECHECK_ROOT; python3 mpw_precheck.py --input_directory $INPUT_DIRECTORY --pdk_path ${{ env.PDKPATH }} --output_directory $OUTPUT_DIRECTORY license makefile consistency xor magic_drc klayout_beol klayout_feol klayout_met_min_ca_density klayout_offgrid klayout_pin_label_purposes_overlapping_drawing klayout_zeroarea" + + cnt=$(grep -c "All Checks Passed" "$OUTPUT") + if ! [[ $cnt ]]; then cnt=0; fi + if [[ $cnt -eq 1 ]]; then exit 0; fi + exit 2 + + - name: upload failure logs + if: failure() + uses: actions/upload-artifact@v2 + with: + name: error + path: | + /home/runner/work/caravel_user_project/caravel_user_project/mpw_precheck_result/logs/* + - name: Run DV RTL tests run: | make verify-io_ports-rtl
diff --git a/openlane/user_project_wrapper/config.json b/openlane/user_project_wrapper/config.json index c0ef36a..388070c 100644 --- a/openlane/user_project_wrapper/config.json +++ b/openlane/user_project_wrapper/config.json
@@ -39,8 +39,8 @@ "FP_PDN_CORE_RING_HWIDTH": 3.1, "FP_PDN_CORE_RING_VOFFSET": 12.45, "FP_PDN_CORE_RING_HOFFSET": 12.45, - "FP_PDN_CORE_RING_VSPACING": 12.45, - "FP_PDN_CORE_RING_HSPACING": 12.45, + "FP_PDN_CORE_RING_VSPACING": 1.7, + "FP_PDN_CORE_RING_HSPACING": 1.7, "FP_PDN_VWIDTH": 3.1, "FP_PDN_HWIDTH": 3.1, "FP_PDN_VSPACING": "expr::(5 * $FP_PDN_CORE_RING_VWIDTH)",