google / globalfoundries-pdk-libs-gf180mcu_fd_pr

Primitives for GF180MCU provided by GlobalFoundries.
https://gf180mcu-pdk.rtfd.io
Apache License 2.0
47 stars 25 forks source link

Issue with GF180 PDK and symbols import into Xschem and incompatibility with definitions in sm141064.spice #96

Closed spnadig closed 1 year ago

spnadig commented 1 year ago

Expected Behavior

ngspice needs to run with no errors

Actual Behavior

error: image

NETLIST

sch_path: /usr/local/google/home/nigelcoburn/MixedSignal/Designs/TopLevel_oscillator.sch .subckt TopLevel_oscillator X1 VDD GND Vout Vin Buffer Vdd VDD GND 1.8 .save i(vdd) Vin Vin GND pulse(0 1.8 1ns 1ns 1ns 4ns 10ns) .save i(vin) **** begin user architecture code

blabla

.tran 0.01n 1u .saveall

name=TT_MODELS1 only_toplevel=false .include /usr/local/google/home/nigelcoburn/MixedSignal/silicon-env/share/pdk/gf180mcuC/libs.tech/ngspice/design.ngspice .lib /usr/local/google/home/nigelcoburn/MixedSignal/silicon-env/share/pdk/gf180mcuC/libs.tech/ngspice/sm141064.ngspice typical

** end user architecture code .ends

.GLOBAL GND .GLOBAL VDD .end

Steps to Reproduce the Problem

image

Specifications

proppy commented 1 year ago

@msaligane did you have it for OpenFASoC?

spnadig commented 1 year ago

edit - to be clear, the error persists after deleting line blala from netlist. the issue is we cannot find symbols for devices example - pmos3p3 in our components-> /devices which is consistent with sm141064.spice

mithro commented 1 year ago

Could this be related to https://github.com/google/globalfoundries-pdk-libs-gf180mcu_fd_pr/pull/6 ?

msaligane commented 1 year ago

@proppy We do not use a schematic editor in the normal openfasoc flow.

If it is regarding "blabla", yes, my student encountered this error before, but it was resolved. If there is a syntax error while specifying the ngspice model path this happens.

spnadig commented 1 year ago

@proppy - this is the path we use

image

@msaligane - we cannot find pfet03v3 nfet03v3 under components ->/devices like you do in your designs. Did you do something specific in your PDK imports to xschem? Our 0_top.sch has test_pfetxxx and these symbols have no terminals and I cannot use them in my schematicsimageimage

msaligane commented 1 year ago

Are you using an old version of the PDK? The naming rule is different, in that repo, check pmos_3p3 and nmos_3p3.

We are using the latest version installed by volare. This is the version of gf180pdk: b8c6129fb60851c452a3136c2b8c603bb92cb180

@madhulikal @StanleyAlwaysLoveYou - can you please help? Thanks!

proppy commented 1 year ago

@spnadig can you print the result of:

conda list | grep open_pdks
find $CONDA_PREFIX/share/pdk
spnadig commented 1 year ago

@proppy - dump.txt

madhulikal commented 1 year ago

@spnadig - This syntax should help resolve the issue without manually deleting 'blabla' everytime. format="tcleval(@value )" value=".lib and .include model filepaths".

Also, can you check if the path of device models in xschemrc file is referencing to the correct pdk? In older version too, if the xschemrc file is correct, this error should be resolved.

proppy commented 1 year ago

I think the path to the model in xschemrc needs to be fixed with:

sed -i -e 's/ngspice\/models/gf180mcuC\/libs.tech\/ngspice/'   ~/silicon-env/share/pdk/gf180mcuC/libs.tech/xschem/xschemrc 
proppy commented 1 year ago

Fixed with https://github.com/google/globalfoundries-pdk-libs-gf180mcu_fd_pr/pull/91