Merge pull request 'fix-gf-drc-repo' (#14) from fix-gf-drc-repo into main
Some checks failed
release / build-base (push) Successful in 20m51s
release / build-digital-ator (push) Successful in 2h54m36s
release / build-analog-xk (push) Successful in 50m29s
release / build-heavy (push) Successful in 49m48s
release / build-chipathon-tools (push) Failing after 18s
release / build-digital-heavy (push) Successful in 19m47s
release / build-digital-icarus (push) Successful in 38m51s
release / build-analog-xm (push) Successful in 57m33s
release / build-analog-heavy (push) Successful in 51m3s

Reviewed-on: #14
This commit is contained in:
akiles 2023-10-05 15:20:59 +00:00
commit 67a9b89086
4 changed files with 62 additions and 19 deletions

View File

@ -312,4 +312,43 @@ jobs:
tags: git.1159.cl/mario1159/heavy-web
platforms: linux/amd64
context: .
file: ./stacks/heavy.Dockerfile
file: ./stacks/heavy.Dockerfile
build-chipathon-tools:
needs: build-heavy
runs-on: [ubuntu-latest, amd64]
container:
image: catthehacker/ubuntu:act-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up Docker BuildX
uses: docker/setup-buildx-action@v2
- name: Authentication
uses: docker/login-action@v2
with:
registry: git.1159.cl
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Build chipathon-tools desktop
uses: docker/build-push-action@v4
with:
push: true
build-args: BASE_IMG=git.1159.cl/mario1159/heavy-desktop
tags: git.1159.cl/mario1159/chipathon-tools-desktop
platforms: linux/amd64
context: .
file: ./stacks/chipathon-tools/Dockerfile
- name: Build chipathon-tools web
uses: docker/build-push-action@v4
with:
push: true
build-args: BASE_IMG=git.1159.cl/mario1159/heavy-web
tags: git.1159.cl/mario1159/chipathon-tools-web
platforms: linux/amd64
context: .
file: ./stacks/chipathon-tools/Dockerfile

View File

@ -12,9 +12,6 @@ RUN sudo aur-install \
klayout \
netgen-lvs-git
RUN pip install gdsfactory --break-system-packages
RUN pip install gf180 --upgrade --break-system-packages
# Clean cache
RUN sudo pacman -Scc

View File

@ -5,6 +5,8 @@ set -e
export OPEN_PDKS_VERSION="dd7771c384ed36b91a25e9f8b314355fc26561be"
export SCRIPT_DIR=$PWD
pip git+https://github.com/gdsfactory/skywater130.git install git+https://github.com/gdsfactory/gf180.git --upgrade --break-system-packages
######################
# INSTALL GF180MCU PDK
######################
@ -22,8 +24,6 @@ rm -rf $PDK_ROOT/gf180mcuD
# INSTALL SKY130 PDK
####################
pip install sky130 --upgrade --break-system-packages
volare enable "${OPEN_PDKS_VERSION}" --pdk sky130
# ADD PCELL SUPPORT

View File

@ -3,6 +3,7 @@ set -e
SCRIPT_DIR=$PWD
DROPDOWN_REPO="https://github.com/mabrains/globalfoundries-pdk-libs-gf180mcu_fd_pr"
GF_VERIFICATION_REPO=https://github.com/efabless/globalfoundries-pdk-libs-gf180mcu_fd_pv
# This files can be downloaded directly
# - sky130A_mr.drc
@ -37,8 +38,6 @@ function gf180_patch_xschemrc() {
}
function gf180_patch_klayout_pcells() {
KLAYOUT_HOME="$PDK_ROOT/gf180mcuC/libs.tech/klayout"
mv $KLAYOUT_HOME/pymacros $KLAYOUT_HOME/cells
mkdir $KLAYOUT_HOME/pymacros
mv $KLAYOUT_HOME/cells $KLAYOUT_HOME/pymacros
@ -49,30 +48,41 @@ function gf180_patch_klayout_pcells() {
function gf180_patch_klayout_dropdown() {
# 27:00 & 36:40
KLAYOUT_HOME="$PDK_ROOT/gf180mcuC/libs.tech/klayout"
DROPDOWN_DIRECTORY="globalfoundries"
DROPDOWN_DIRECTORY="gf_dropdown"
git clone $DROPDOWN_REPO $DROPDOWN_DIRECTORY
cp -r $DROPDOWN_DIRECTORY/rules/klayout/macros $KLAYOUT_HOME
# There's no directories
# cp -r $DROPDOWN_DIRECTORY/rules/klayout/drc/*.drc $KLAYOUT_HOME/drc
# cp -r $DROPDOWN_DIRECTORY/rules/klayout/lvs/*.lvs $KLAYOUT_HOME/lvs
rm -rf $DROPDOWN_DIRECTORY
}
function gf180_patch_klayout_gf_drc() {
# 27:00 & 36:40
VERIFICATION_DIR="gf_verification"
git clone $GF_VERIFICATION_REPO $VERIFICATION_DIR
# rm -rf $KLAYOUT_HOME/drc
# rm -rf $KLAYOUT_HOME/lvs
cp -r $VERIFICATION_DIR/rules/klayout/drc $KLAYOUT_HOME/drc
cp -r $VERIFICATION_DIR/rules/klayout/lvs $KLAYOUT_HOME/lvs
rm -rf $VERIFICATION_DIR
}
function gf180_patch_klayout_precheck_drc() {
KLAYOUT_HOME="$PDK_ROOT/gf180mcuC/libs.tech/klayout"
#curl -o $KLAYOUT_HOME/drc/rule_decks/$PRECHECK_GF_FILE $PRECHECK_REPO/$PRECHECK_GF_FILE
wget -O $KLAYOUT_HOME/drc/rule_decks/$PRECHECK_GF_FILE $PRECHECK_REPO/$PRECHECK_GF_FILE
}
function gf180_patch() {
export KLAYOUT_HOME="$PDK_ROOT/gf180mcuC/libs.tech/klayout"
gf180_patch_xschemrc
gf180_patch_klayout_pcells
gf180_patch_klayout_dropdown
gf180_patch_klayout_gf_drc
gf180_patch_klayout_precheck_drc
}
@ -91,7 +101,6 @@ function sky130_patch_reduced_models() {
}
function sky130_patch_klayout_lyt() {
KLAYOUT_HOME="$PDK_ROOT/sky130A/libs.tech/klayout"
FILEPATH="$KLAYOUT_HOME/tech/sky130A.lyt"
sed -i 's/>sky130</>sky130A</g' $FILEPATH
@ -101,7 +110,6 @@ function sky130_patch_klayout_lyt() {
}
function sky130_patch_klayout_lym () {
KLAYOUT_HOME="$PDK_ROOT/sky130A/libs.tech/klayout"
# ERROR: Reading /home/designer/.volare/sky130A/libs.tech/klayout/pymacros/sky130.lym: XML parser error: invalid name for processing instruction in line 17, column 6
# ERROR: Reading /home/designer/.volare/sky130A/libs.tech/klayout/pymacros/sky130.lym: XML parser error: invalid name for processing instruction in line 17, column 6
# ERROR: Reading /home/designer/.volare/sky130A/libs.tech/klayout/pymacros/sky130.lym: XML parser error: invalid name for processing instruction in line 17, column 6
@ -111,7 +119,6 @@ function sky130_patch_klayout_lym () {
}
function sky130_patch_klayout_pcells() {
KLAYOUT_HOME="$PDK_ROOT/sky130A/libs.tech/klayout"
# Fixing the above, the cells indicates the following:
# ERROR: /home/designer/.volare/sky130A/libs.tech/klayout/pymacros/cells/via_generator.py:23: ModuleNotFoundError: No module named 'gdsfactory.types'
# /home/designer/.volare/sky130A/libs.tech/klayout/pymacros/cells/via_generator.py:23
@ -122,11 +129,11 @@ function sky130_patch_klayout_pcells() {
}
function sky130_patch_klayout_precheck_drc() {
KLAYOUT_HOME="$PDK_ROOT/sky130A/libs.tech/klayout"
wget -O $KLAYOUT_HOME/drc/$PRECHECK_SKY_FILE $PRECHECK_REPO/$PRECHECK_SKY_FILE
}
function sky130_patch() {
export KLAYOUT_HOME="$PDK_ROOT/sky130A/libs.tech/klayout"
sky130_patch_reduced_models
sky130_patch_klayout_lyt
# sky130_patch_klayout_lym # TODO: The file disappears