fullcustom update, semicustom tweaks
This commit is contained in:
parent
1616cef7d3
commit
299f0a21ee
4 changed files with 283 additions and 181 deletions
|
@ -6,172 +6,259 @@ channels:
|
|||
dependencies:
|
||||
- _libgcc_mutex=0.1=conda_forge
|
||||
- _openmp_mutex=4.5=2_gnu
|
||||
- anyio=3.6.2=pyhd8ed1ab_0
|
||||
- argon2-cffi=21.3.0=pyhd8ed1ab_0
|
||||
- argon2-cffi-bindings=21.2.0=py37h540881e_2
|
||||
- attrs=22.2.0=pyh71513ae_0
|
||||
- backcall=0.2.0=pyh9f0ad1d_0
|
||||
- backports=1.0=pyhd8ed1ab_3
|
||||
- backports.functools_lru_cache=1.6.4=pyhd8ed1ab_0
|
||||
- beautifulsoup4=4.12.2=pyha770c72_0
|
||||
- bleach=6.0.0=pyhd8ed1ab_0
|
||||
- brotli=1.0.9=h166bdaf_8
|
||||
- brotli-bin=1.0.9=h166bdaf_8
|
||||
- bzip2=1.0.8=h7f98852_4
|
||||
- ca-certificates=2022.12.7=ha878542_0
|
||||
- cairo=1.16.0=h35add3b_1015
|
||||
- certifi=2022.12.7=pyhd8ed1ab_0
|
||||
- cffi=1.15.1=py37h43b0acd_1
|
||||
- cycler=0.11.0=pyhd8ed1ab_0
|
||||
- debugpy=1.5.1=py37h295c915_0
|
||||
- decorator=5.1.1=pyhd8ed1ab_0
|
||||
- alsa-lib=1.2.13=hb9d3cd8_0
|
||||
- anyio=4.7.0=pyhd8ed1ab_0
|
||||
- argon2-cffi=23.1.0=pyhd8ed1ab_1
|
||||
- argon2-cffi-bindings=21.2.0=py310ha75aee5_5
|
||||
- arrow=1.3.0=pyhd8ed1ab_1
|
||||
- asttokens=3.0.0=pyhd8ed1ab_1
|
||||
- async-lru=2.0.4=pyhd8ed1ab_1
|
||||
- attrs=24.3.0=pyh71513ae_0
|
||||
- babel=2.16.0=pyhd8ed1ab_1
|
||||
- beautifulsoup4=4.12.3=pyha770c72_1
|
||||
- bleach=6.2.0=pyhd8ed1ab_1
|
||||
- brotli=1.1.0=hb9d3cd8_2
|
||||
- brotli-bin=1.1.0=hb9d3cd8_2
|
||||
- brotli-python=1.1.0=py310hf71b8c6_2
|
||||
- bzip2=1.0.8=h4bc722e_7
|
||||
- ca-certificates=2024.12.14=hbcca054_0
|
||||
- cached-property=1.5.2=hd8ed1ab_1
|
||||
- cached_property=1.5.2=pyha770c72_1
|
||||
- cairo=1.18.2=h3394656_1
|
||||
- certifi=2024.12.14=pyhd8ed1ab_0
|
||||
- cffi=1.17.1=py310h8deb56e_0
|
||||
- charset-normalizer=3.4.0=pyhd8ed1ab_1
|
||||
- comm=0.2.2=pyhd8ed1ab_1
|
||||
- contourpy=1.3.1=py310h3788b33_0
|
||||
- cycler=0.12.1=pyhd8ed1ab_1
|
||||
- cyrus-sasl=2.1.27=h54b06d7_7
|
||||
- dbus=1.13.6=h5008d03_3
|
||||
- debugpy=1.8.11=py310hf71b8c6_0
|
||||
- decorator=5.1.1=pyhd8ed1ab_1
|
||||
- defusedxml=0.7.1=pyhd8ed1ab_0
|
||||
- entrypoints=0.4=pyhd8ed1ab_0
|
||||
- expat=2.5.0=hcb278e6_1
|
||||
- flit-core=3.8.0=pyhd8ed1ab_0
|
||||
- double-conversion=3.3.0=h59595ed_0
|
||||
- entrypoints=0.4=pyhd8ed1ab_1
|
||||
- exceptiongroup=1.2.2=pyhd8ed1ab_1
|
||||
- executing=2.1.0=pyhd8ed1ab_1
|
||||
- expat=2.6.4=h5888daf_0
|
||||
- font-ttf-dejavu-sans-mono=2.37=hab24e00_0
|
||||
- font-ttf-inconsolata=3.000=h77eed37_0
|
||||
- font-ttf-source-code-pro=2.038=h77eed37_0
|
||||
- font-ttf-ubuntu=0.83=hab24e00_0
|
||||
- fontconfig=2.14.2=h14ed4e7_0
|
||||
- font-ttf-ubuntu=0.83=h77eed37_3
|
||||
- fontconfig=2.15.0=h7e30c49_1
|
||||
- fonts-conda-ecosystem=1=0
|
||||
- fonts-conda-forge=1=0
|
||||
- fonttools=4.25.0=pyhd3eb1b0_0
|
||||
- freetype=2.12.1=hca18f0e_1
|
||||
- gettext=0.21.1=h27087fc_0
|
||||
- icu=72.1=hcb278e6_0
|
||||
- idna=3.4=pyhd8ed1ab_0
|
||||
- importlib-metadata=4.11.4=py37h89c1867_0
|
||||
- importlib_resources=5.12.0=pyhd8ed1ab_0
|
||||
- ipykernel=6.15.0=pyh210e3f2_0
|
||||
- ipython=7.33.0=py37h89c1867_0
|
||||
- ipython_genutils=0.2.0=py_1
|
||||
- jedi=0.18.2=pyhd8ed1ab_0
|
||||
- jinja2=3.1.2=pyhd8ed1ab_1
|
||||
- jpeg=9e=h0b41bf4_3
|
||||
- jsonschema=4.17.3=pyhd8ed1ab_0
|
||||
- jupyter_client=7.0.6=pyhd8ed1ab_0
|
||||
- jupyter_core=4.11.2=py37h06a4308_0
|
||||
- jupyter_server=1.23.4=py37h06a4308_0
|
||||
- jupyterlab_pygments=0.2.2=pyhd8ed1ab_0
|
||||
- kiwisolver=1.4.4=py37h7cecad7_0
|
||||
- ld_impl_linux-64=2.40=h41732ed_0
|
||||
- libblas=3.9.0=16_linux64_openblas
|
||||
- libbrotlicommon=1.0.9=h166bdaf_8
|
||||
- libbrotlidec=1.0.9=h166bdaf_8
|
||||
- libbrotlienc=1.0.9=h166bdaf_8
|
||||
- libcblas=3.9.0=16_linux64_openblas
|
||||
- libexpat=2.5.0=hcb278e6_1
|
||||
- fonttools=4.55.3=py310h89163eb_0
|
||||
- fqdn=1.5.1=pyhd8ed1ab_1
|
||||
- freetype=2.12.1=h267a509_2
|
||||
- gdstk=0.9.58=py310h6b9049c_0
|
||||
- graphite2=1.3.13=h59595ed_1003
|
||||
- h11=0.14.0=pyhd8ed1ab_1
|
||||
- h2=4.1.0=pyhd8ed1ab_1
|
||||
- harfbuzz=9.0.0=hda332d3_1
|
||||
- hpack=4.0.0=pyhd8ed1ab_1
|
||||
- httpcore=1.0.7=pyh29332c3_1
|
||||
- httpx=0.28.1=pyhd8ed1ab_0
|
||||
- hyperframe=6.0.1=pyhd8ed1ab_1
|
||||
- icu=75.1=he02047a_0
|
||||
- idna=3.10=pyhd8ed1ab_1
|
||||
- importlib-metadata=8.5.0=pyha770c72_1
|
||||
- importlib_resources=6.4.5=pyhd8ed1ab_1
|
||||
- ipykernel=6.29.5=pyh3099207_0
|
||||
- ipython=8.30.0=pyh707e725_0
|
||||
- ipywidgets=8.1.5=pyhd8ed1ab_1
|
||||
- isoduration=20.11.0=pyhd8ed1ab_1
|
||||
- jedi=0.19.2=pyhd8ed1ab_1
|
||||
- jinja2=3.1.4=pyhd8ed1ab_1
|
||||
- json5=0.10.0=pyhd8ed1ab_1
|
||||
- jsonpointer=3.0.0=py310hff52083_1
|
||||
- jsonschema=4.23.0=pyhd8ed1ab_1
|
||||
- jsonschema-specifications=2024.10.1=pyhd8ed1ab_1
|
||||
- jsonschema-with-format-nongpl=4.23.0=hd8ed1ab_1
|
||||
- jupyter=1.1.1=pyhd8ed1ab_1
|
||||
- jupyter-lsp=2.2.5=pyhd8ed1ab_1
|
||||
- jupyter_client=8.6.3=pyhd8ed1ab_1
|
||||
- jupyter_console=6.6.3=pyhd8ed1ab_1
|
||||
- jupyter_core=5.7.2=pyh31011fe_1
|
||||
- jupyter_events=0.11.0=pyhd8ed1ab_0
|
||||
- jupyter_server=2.15.0=pyhd8ed1ab_0
|
||||
- jupyter_server_terminals=0.5.3=pyhd8ed1ab_1
|
||||
- jupyterlab=4.3.4=pyhd8ed1ab_0
|
||||
- jupyterlab_pygments=0.3.0=pyhd8ed1ab_2
|
||||
- jupyterlab_server=2.27.3=pyhd8ed1ab_1
|
||||
- jupyterlab_widgets=3.0.13=pyhd8ed1ab_1
|
||||
- keyutils=1.6.1=h166bdaf_0
|
||||
- kiwisolver=1.4.7=py310h3788b33_0
|
||||
- krb5=1.21.3=h659f571_0
|
||||
- lcms2=2.16=hb7c19ff_0
|
||||
- ld_impl_linux-64=2.43=h712a8e2_2
|
||||
- lerc=4.0.0=h27087fc_0
|
||||
- libblas=3.9.0=26_linux64_openblas
|
||||
- libbrotlicommon=1.1.0=hb9d3cd8_2
|
||||
- libbrotlidec=1.1.0=hb9d3cd8_2
|
||||
- libbrotlienc=1.1.0=hb9d3cd8_2
|
||||
- libcblas=3.9.0=26_linux64_openblas
|
||||
- libclang-cpp19.1=19.1.6=default_hb5137d0_0
|
||||
- libclang13=19.1.6=default_h9c6a7e4_0
|
||||
- libcups=2.3.3=h4637d8d_4
|
||||
- libdeflate=1.23=h4ddbbb0_0
|
||||
- libdrm=2.4.124=hb9d3cd8_0
|
||||
- libedit=3.1.20191231=he28a2e2_2
|
||||
- libegl=1.7.0=ha4b6fd6_2
|
||||
- libexpat=2.6.4=h5888daf_0
|
||||
- libffi=3.4.2=h7f98852_5
|
||||
- libgcc-ng=12.2.0=h65d4601_19
|
||||
- libgfortran-ng=12.2.0=h69a702a_19
|
||||
- libgfortran5=12.2.0=h337968e_19
|
||||
- libglib=2.74.1=h606061b_1
|
||||
- libgomp=12.2.0=h65d4601_19
|
||||
- libiconv=1.17=h166bdaf_0
|
||||
- liblapack=3.9.0=16_linux64_openblas
|
||||
- libnsl=2.0.0=h7f98852_0
|
||||
- libopenblas=0.3.21=pthreads_h78a6416_3
|
||||
- libpng=1.6.39=h753d276_0
|
||||
- libsodium=1.0.18=h36c2ea0_1
|
||||
- libsqlite=3.40.0=h753d276_0
|
||||
- libstdcxx-ng=12.2.0=h46fd767_19
|
||||
- libtiff=4.0.10=hc3755c2_1005
|
||||
- libgcc=14.2.0=h77fa898_1
|
||||
- libgcc-ng=14.2.0=h69a702a_1
|
||||
- libgfortran=14.2.0=h69a702a_1
|
||||
- libgfortran5=14.2.0=hd5240d6_1
|
||||
- libgl=1.7.0=ha4b6fd6_2
|
||||
- libglib=2.82.2=h2ff4ddf_0
|
||||
- libglvnd=1.7.0=ha4b6fd6_2
|
||||
- libglx=1.7.0=ha4b6fd6_2
|
||||
- libgomp=14.2.0=h77fa898_1
|
||||
- libiconv=1.17=hd590300_2
|
||||
- libjpeg-turbo=3.0.0=hd590300_1
|
||||
- liblapack=3.9.0=26_linux64_openblas
|
||||
- libllvm19=19.1.6=ha7bfdaf_0
|
||||
- liblzma=5.6.3=hb9d3cd8_1
|
||||
- libnsl=2.0.1=hd590300_0
|
||||
- libntlm=1.8=hb9d3cd8_0
|
||||
- libopenblas=0.3.28=pthreads_h94d23a6_1
|
||||
- libopengl=1.7.0=ha4b6fd6_2
|
||||
- libpciaccess=0.18=hd590300_0
|
||||
- libpng=1.6.44=hadc24fc_0
|
||||
- libpq=17.2=h3b95a9b_1
|
||||
- libsodium=1.0.20=h4ab18f5_0
|
||||
- libsqlite=3.47.2=hee588c1_0
|
||||
- libstdcxx=14.2.0=hc0a3c3a_1
|
||||
- libstdcxx-ng=14.2.0=h4852527_1
|
||||
- libtiff=4.7.0=hd9ff511_3
|
||||
- libuuid=2.38.1=h0b41bf4_0
|
||||
- libxcb=1.13=h7f98852_1004
|
||||
- libzlib=1.2.13=h166bdaf_4
|
||||
- lz4-c=1.9.3=h9c3ff4c_1
|
||||
- magic=8.3.389_0_g1d8fcca=20230412_103222
|
||||
- markupsafe=2.1.1=py37h7f8727e_0
|
||||
- matplotlib-base=3.5.3=py37hf395dca_2
|
||||
- matplotlib-inline=0.1.6=pyhd8ed1ab_0
|
||||
- mistune=2.0.5=pyhd8ed1ab_0
|
||||
- libwebp-base=1.4.0=hd590300_0
|
||||
- libxcb=1.17.0=h8a09558_0
|
||||
- libxcrypt=4.4.36=hd590300_1
|
||||
- libxkbcommon=1.7.0=h2c5496b_1
|
||||
- libxml2=2.13.5=h8d12d68_1
|
||||
- libxslt=1.1.39=h76b75d6_0
|
||||
- libzlib=1.3.1=hb9d3cd8_2
|
||||
- magic=8.3.464_0_gcb73ebf=20240223_100318
|
||||
- markupsafe=3.0.2=py310h89163eb_1
|
||||
- matplotlib=3.10.0=py310hff52083_0
|
||||
- matplotlib-base=3.10.0=py310h68603db_0
|
||||
- matplotlib-inline=0.1.7=pyhd8ed1ab_1
|
||||
- mistune=3.0.2=pyhd8ed1ab_1
|
||||
- munkres=1.1.4=pyh9f0ad1d_0
|
||||
- nbclassic=0.5.5=pyhb4ecaf3_1
|
||||
- nbclient=0.5.13=pyhd8ed1ab_0
|
||||
- nbconvert=7.3.1=pyhd8ed1ab_0
|
||||
- nbconvert-core=7.3.1=pyhd8ed1ab_0
|
||||
- nbconvert-pandoc=7.3.1=pyhd8ed1ab_0
|
||||
- nbformat=5.8.0=pyhd8ed1ab_0
|
||||
- ncurses=6.3=h27087fc_1
|
||||
- nest-asyncio=1.5.6=pyhd8ed1ab_0
|
||||
- netgen=1.5.251_0_gd111fa0=20230412_103222
|
||||
- ngspice-lib=38=h7017330_0
|
||||
- notebook=6.5.4=pyha770c72_0
|
||||
- notebook-shim=0.2.2=pyhd8ed1ab_0
|
||||
- numpy=1.21.6=py37h976b520_0
|
||||
- olefile=0.46=pyh9f0ad1d_1
|
||||
- open_pdks.sky130a=1.0.404_0_gbb4b48f=20230408_010602
|
||||
- openssl=3.1.0=h0b41bf4_0
|
||||
- packaging=23.1=pyhd8ed1ab_0
|
||||
- pandoc=2.19.2=h32600fe_2
|
||||
- mysql-common=9.0.1=h266115a_3
|
||||
- mysql-libs=9.0.1=he0572af_3
|
||||
- nbclient=0.10.2=pyhd8ed1ab_0
|
||||
- nbconvert-core=7.16.4=pyhff2d567_2
|
||||
- nbformat=5.10.4=pyhd8ed1ab_1
|
||||
- ncurses=6.5=he02047a_1
|
||||
- nest-asyncio=1.6.0=pyhd8ed1ab_1
|
||||
- netgen=1.5.272_0_g178af5f=20240223_100318
|
||||
- ngspice-lib=41=hb224a76_0
|
||||
- notebook=7.3.1=pyhd8ed1ab_0
|
||||
- notebook-shim=0.2.4=pyhd8ed1ab_1
|
||||
- numpy=2.2.0=py310h5851e9f_0
|
||||
- open_pdks.sky130a=1.0.471_0_g97d0844=20240223_100318
|
||||
- openjpeg=2.5.3=h5fbd93e_0
|
||||
- openldap=2.6.9=he970967_0
|
||||
- openssl=3.4.0=hb9d3cd8_0
|
||||
- overrides=7.7.0=pyhd8ed1ab_1
|
||||
- packaging=24.2=pyhd8ed1ab_2
|
||||
- pandocfilters=1.5.0=pyhd8ed1ab_0
|
||||
- parso=0.8.3=pyhd8ed1ab_0
|
||||
- pcre2=10.40=hc3806b6_0
|
||||
- pexpect=4.8.0=pyh1a96a4e_2
|
||||
- pickleshare=0.7.5=py_1003
|
||||
- pillow=6.2.1=py37h6b7be26_0
|
||||
- pip=23.0.1=pyhd8ed1ab_0
|
||||
- pixman=0.40.0=h36c2ea0_0
|
||||
- pkgutil-resolve-name=1.3.10=pyhd8ed1ab_0
|
||||
- ply=3.11=py_1
|
||||
- prometheus_client=0.16.0=pyhd8ed1ab_0
|
||||
- prompt-toolkit=3.0.38=pyha770c72_0
|
||||
- psutil=5.9.0=py37h5eee18b_0
|
||||
- pthread-stubs=0.4=h36c2ea0_1001
|
||||
- ptyprocess=0.7.0=pyhd3deb0d_0
|
||||
- pycparser=2.21=pyhd8ed1ab_0
|
||||
- pygments=2.15.0=pyhd8ed1ab_0
|
||||
- pyparsing=3.0.9=pyhd8ed1ab_0
|
||||
- pyrsistent=0.18.0=py37heee7806_0
|
||||
- pyspice=1.5=py37h89c1867_1
|
||||
- python=3.7.12=hf930737_100_cpython
|
||||
- python-dateutil=2.8.2=pyhd8ed1ab_0
|
||||
- python-fastjsonschema=2.16.3=pyhd8ed1ab_0
|
||||
- python_abi=3.7=3_cp37m
|
||||
- pyyaml=6.0=py37h540881e_4
|
||||
- pyzmq=19.0.2=py37hac76be4_2
|
||||
- parso=0.8.4=pyhd8ed1ab_1
|
||||
- pcre2=10.44=hba22ea6_2
|
||||
- pexpect=4.9.0=pyhd8ed1ab_1
|
||||
- pickleshare=0.7.5=pyhd8ed1ab_1004
|
||||
- pillow=11.0.0=py310hfeaa1f3_0
|
||||
- pip=24.3.1=pyh8b19718_2
|
||||
- pixman=0.44.2=h29eaf8c_0
|
||||
- pkgutil-resolve-name=1.3.10=pyhd8ed1ab_2
|
||||
- platformdirs=4.3.6=pyhd8ed1ab_1
|
||||
- ply=3.11=pyhd8ed1ab_3
|
||||
- prometheus_client=0.21.1=pyhd8ed1ab_0
|
||||
- prompt-toolkit=3.0.48=pyha770c72_1
|
||||
- prompt_toolkit=3.0.48=hd8ed1ab_1
|
||||
- psutil=6.1.0=py310ha75aee5_0
|
||||
- pthread-stubs=0.4=hb9d3cd8_1002
|
||||
- ptyprocess=0.7.0=pyhd8ed1ab_1
|
||||
- pure_eval=0.2.3=pyhd8ed1ab_1
|
||||
- pycparser=2.22=pyh29332c3_1
|
||||
- pygments=2.18.0=pyhd8ed1ab_1
|
||||
- pyparsing=3.2.0=pyhd8ed1ab_2
|
||||
- pyside6=6.8.1=py310hfd10a26_0
|
||||
- pysocks=1.7.1=pyha55dd90_7
|
||||
- pyspice=1.5=py310hff52083_1
|
||||
- python=3.10.16=he725a3c_1_cpython
|
||||
- python-dateutil=2.9.0.post0=pyhff2d567_1
|
||||
- python-fastjsonschema=2.21.1=pyhd8ed1ab_0
|
||||
- python-json-logger=2.0.7=pyhd8ed1ab_0
|
||||
- python_abi=3.10=5_cp310
|
||||
- pytz=2024.2=pyhd8ed1ab_1
|
||||
- pyyaml=6.0.2=py310ha75aee5_1
|
||||
- pyzmq=26.2.0=py310h71f11fc_3
|
||||
- qhull=2020.2=h434a139_5
|
||||
- qt6-main=6.8.1=h9d28a51_0
|
||||
- readline=8.2=h8228510_1
|
||||
- scipy=1.7.3=py37hf2a6cf1_0
|
||||
- send2trash=1.8.0=pyhd8ed1ab_0
|
||||
- setuptools=67.6.1=pyhd8ed1ab_0
|
||||
- six=1.16.0=pyh6c4a22f_0
|
||||
- sniffio=1.3.0=pyhd8ed1ab_0
|
||||
- soupsieve=2.3.2.post1=pyhd8ed1ab_0
|
||||
- sqlite=3.40.0=h4ff8645_0
|
||||
- terminado=0.17.1=pyh41d4057_0
|
||||
- tinycss2=1.2.1=pyhd8ed1ab_0
|
||||
- tk=8.6.12=h27826a3_0
|
||||
- tornado=6.2=py37h540881e_0
|
||||
- traitlets=5.9.0=pyhd8ed1ab_0
|
||||
- typing-extensions=4.5.0=hd8ed1ab_0
|
||||
- typing_extensions=4.5.0=pyha770c72_0
|
||||
- wcwidth=0.2.6=pyhd8ed1ab_0
|
||||
- webencodings=0.5.1=py_1
|
||||
- websocket-client=1.5.1=pyhd8ed1ab_0
|
||||
- wheel=0.40.0=pyhd8ed1ab_0
|
||||
- xorg-kbproto=1.0.7=h7f98852_1002
|
||||
- xorg-libice=1.0.10=h7f98852_0
|
||||
- xorg-libsm=1.2.3=hd9c2040_1000
|
||||
- xorg-libx11=1.8.4=h0b41bf4_0
|
||||
- xorg-libxau=1.0.9=h7f98852_0
|
||||
- xorg-libxdmcp=1.1.3=h7f98852_0
|
||||
- xorg-libxext=1.3.4=h0b41bf4_2
|
||||
- xorg-libxrender=0.9.10=h7f98852_1003
|
||||
- xorg-renderproto=0.11.1=h7f98852_1002
|
||||
- xorg-xextproto=7.3.0=h0b41bf4_1003
|
||||
- xorg-xproto=7.0.31=h7f98852_1007
|
||||
- xschem=3.1.0_525_gc71c15e9=20230412_103222
|
||||
- xz=5.2.6=h166bdaf_0
|
||||
- referencing=0.35.1=pyhd8ed1ab_1
|
||||
- requests=2.32.3=pyhd8ed1ab_1
|
||||
- rfc3339-validator=0.1.4=pyhd8ed1ab_1
|
||||
- rfc3986-validator=0.1.1=pyh9f0ad1d_0
|
||||
- rpds-py=0.22.3=py310h505e2c1_0
|
||||
- scipy=1.14.1=py310hfcf56fc_2
|
||||
- send2trash=1.8.3=pyh0d859eb_1
|
||||
- setuptools=75.6.0=pyhff2d567_1
|
||||
- six=1.17.0=pyhd8ed1ab_0
|
||||
- sniffio=1.3.1=pyhd8ed1ab_1
|
||||
- soupsieve=2.5=pyhd8ed1ab_1
|
||||
- stack_data=0.6.3=pyhd8ed1ab_1
|
||||
- terminado=0.18.1=pyh0d859eb_0
|
||||
- tinycss2=1.4.0=pyhd8ed1ab_0
|
||||
- tk=8.6.13=noxft_h4845f30_101
|
||||
- tomli=2.2.1=pyhd8ed1ab_1
|
||||
- tornado=6.4.2=py310ha75aee5_0
|
||||
- traitlets=5.14.3=pyhd8ed1ab_1
|
||||
- types-python-dateutil=2.9.0.20241206=pyhd8ed1ab_0
|
||||
- typing-extensions=4.12.2=hd8ed1ab_1
|
||||
- typing_extensions=4.12.2=pyha770c72_1
|
||||
- typing_utils=0.1.0=pyhd8ed1ab_1
|
||||
- tzdata=2024b=hc8b5060_0
|
||||
- unicodedata2=15.1.0=py310ha75aee5_1
|
||||
- uri-template=1.3.0=pyhd8ed1ab_1
|
||||
- urllib3=2.2.3=pyhd8ed1ab_1
|
||||
- wayland=1.23.1=h3e06ad9_0
|
||||
- wcwidth=0.2.13=pyhd8ed1ab_1
|
||||
- webcolors=24.11.1=pyhd8ed1ab_0
|
||||
- webencodings=0.5.1=pyhd8ed1ab_3
|
||||
- websocket-client=1.8.0=pyhd8ed1ab_1
|
||||
- wheel=0.45.1=pyhd8ed1ab_1
|
||||
- widgetsnbextension=4.0.13=pyhd8ed1ab_1
|
||||
- xcb-util=0.4.1=hb711507_2
|
||||
- xcb-util-cursor=0.1.5=hb9d3cd8_0
|
||||
- xcb-util-image=0.4.0=hb711507_2
|
||||
- xcb-util-keysyms=0.4.1=hb711507_0
|
||||
- xcb-util-renderutil=0.3.10=hb711507_0
|
||||
- xcb-util-wm=0.4.2=hb711507_0
|
||||
- xkeyboard-config=2.43=hb9d3cd8_0
|
||||
- xorg-libice=1.1.2=hb9d3cd8_0
|
||||
- xorg-libsm=1.2.5=he73a12e_0
|
||||
- xorg-libx11=1.8.10=h4f16b4b_1
|
||||
- xorg-libxau=1.0.12=hb9d3cd8_0
|
||||
- xorg-libxcomposite=0.4.6=hb9d3cd8_2
|
||||
- xorg-libxcursor=1.2.3=hb9d3cd8_0
|
||||
- xorg-libxdamage=1.1.6=hb9d3cd8_0
|
||||
- xorg-libxdmcp=1.1.5=hb9d3cd8_0
|
||||
- xorg-libxext=1.3.6=hb9d3cd8_0
|
||||
- xorg-libxfixes=6.0.1=hb9d3cd8_0
|
||||
- xorg-libxi=1.8.2=hb9d3cd8_0
|
||||
- xorg-libxrandr=1.5.4=hb9d3cd8_0
|
||||
- xorg-libxrender=0.9.12=hb9d3cd8_0
|
||||
- xorg-libxtst=1.2.5=hb9d3cd8_3
|
||||
- xorg-libxxf86vm=1.1.6=hb9d3cd8_0
|
||||
- xschem=3.4.4_558_g6405ac4c=20240223_100318
|
||||
- yaml=0.2.5=h7f98852_2
|
||||
- zeromq=4.3.4=h9c3ff4c_1
|
||||
- zipp=3.15.0=pyhd8ed1ab_0
|
||||
- zlib=1.2.13=h166bdaf_4
|
||||
- zstd=1.4.9=ha95c52a_0
|
||||
- pip:
|
||||
- dataclasses-json==0.5.6
|
||||
- gdstk==0.9.37
|
||||
- marshmallow==3.19.0
|
||||
- marshmallow-enum==1.5.1
|
||||
- mypy-extensions==1.0.0
|
||||
- typing-inspect==0.8.0
|
||||
- zeromq=4.3.5=h3b0a872_7
|
||||
- zipp=3.21.0=pyhd8ed1ab_1
|
||||
- zstandard=0.23.0=py310ha39cb0e_1
|
||||
- zstd=1.5.6=ha6fb4c9_0
|
||||
|
|
17
fullcustom/environment.yml.tpl
Normal file
17
fullcustom/environment.yml.tpl
Normal file
|
@ -0,0 +1,17 @@
|
|||
name: fullcustom
|
||||
channels:
|
||||
- litex-hub
|
||||
- conda-forge
|
||||
- defaults
|
||||
dependencies:
|
||||
- jupyter
|
||||
- magic
|
||||
- matplotlib
|
||||
- netgen
|
||||
- numpy
|
||||
- open_pdks.sky130a
|
||||
- pyspice
|
||||
- python
|
||||
- scipy
|
||||
- xschem
|
||||
- gdstk
|
|
@ -40,9 +40,9 @@
|
|||
"\n",
|
||||
"### Using the _Magic_ VLSI layout tool\n",
|
||||
"\n",
|
||||
"[_Magic_](http://opencircuitdesign.com/magic/) cells (`.mag`) are used to store and manage the layouts. They can be edited using _Magic_ commands or using _Magic_'s GUI.\n",
|
||||
"[_Magic_](http://opencircuitdesign.com/magic/) cells (`.mag`) are used to store and manage layouts. They can be edited using _Magic_ commands or using _Magic_'s GUI.\n",
|
||||
"\n",
|
||||
"An existing _inverter_ design as well as its dependencies is imported and converted to _Graphic Design System_ (`.gds`) file for viewing and manufacturing and a _SPICE_ (`.spice`) file for simulation:"
|
||||
"An existing _inverter_ design is imported and converted into a _Graphic Design System_ (`.gds`) file for viewing and manufacturing and a _SPICE_ (`.spice`) file for simulation:"
|
||||
]
|
||||
},
|
||||
{
|
||||
|
@ -78,7 +78,7 @@
|
|||
"source": [
|
||||
"### Display the inverter layout\n",
|
||||
"\n",
|
||||
"The `.gds` file can be converted to vector graphics for displaying:"
|
||||
"The `.gds` file can be converted into a `.svg` file for displaying:"
|
||||
]
|
||||
},
|
||||
{
|
||||
|
@ -167,9 +167,7 @@
|
|||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {
|
||||
"scrolled": false
|
||||
},
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import matplotlib.pyplot as plt\n",
|
||||
|
@ -226,7 +224,7 @@
|
|||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"!export PDK_ROOT={CONDA_DIR}/share/pdk/; \\\n",
|
||||
"!export PDK_ROOT={CONDA_DIR}/share/pdk/;\\\n",
|
||||
"xschem --rcfile {CONDA_DIR}/share/pdk/sky130A/libs.tech/xschem/xschemrc"
|
||||
]
|
||||
},
|
||||
|
@ -242,8 +240,8 @@
|
|||
"\n",
|
||||
"Open it with _xschem_ and generate the netlist by:\n",
|
||||
"\n",
|
||||
" * Selecting _Spice netlist_ in the _Options_ toolbar menu. (This will produce a netlist in a format accepted by the _LVS_ tool.)\n",
|
||||
" * Selecting _LVS netlist: Top level is a .subckt_ in the _Simulation_ toolbar menu. (This will encapsulate the circuit in a subcircuit. The _LVS_ tool fails otherwose.)\n",
|
||||
" * Selecting \"Spice netlist\" in the _Options_ toolbar menu. (This will produce a netlist in a format accepted by the _LVS_ tool.)\n",
|
||||
" * Selecting \"LVS netlist: Top level is a .subckt\" in the _Simulation_ toolbar menu. (This will encapsulate the circuit in a subcircuit. The _LVS_ tool fails otherwise.)\n",
|
||||
" \n",
|
||||
"Click on _Netlist_ (top right) to generate the netlist. It is generated by default under the user repository:\n",
|
||||
"\n",
|
||||
|
@ -340,9 +338,9 @@
|
|||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.7.12"
|
||||
"version": "3.10.16"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 1
|
||||
"nbformat_minor": 4
|
||||
}
|
||||
|
|
|
@ -140,7 +140,7 @@
|
|||
"{\n",
|
||||
" \"DESIGN_NAME\": \"xor3\",\n",
|
||||
" \"VERILOG_FILES\": \"dir::../v/xor3.v\",\n",
|
||||
" \"CLOCK_TREE_SYNTH\": false,\n",
|
||||
" \"RUN_CTS\": false,\n",
|
||||
" \"CLOCK_PORT\": null,\n",
|
||||
" \"FP_SIZING\": \"absolute\",\n",
|
||||
" \"DIE_AREA\": \"0 0 35 45\",\n",
|
||||
|
@ -156,7 +156,7 @@
|
|||
"metadata": {},
|
||||
"source": [
|
||||
"## Workflow\n",
|
||||
"The provided `flow.tcl` is a script describing the OpenROAD workflow. A _GDS_ file will be generated using the RTL circuit description, the PDK and the configuration file."
|
||||
"The provided `flow.tcl` is a script describing the OpenROAD workflow. A `.gds` file will be generated using the RTL circuit description, the PDK and the configuration file."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
@ -220,7 +220,7 @@
|
|||
"source": [
|
||||
"### Reporting\n",
|
||||
"\n",
|
||||
"Many reports are available under:\n",
|
||||
"Extensive reports are available under:\n",
|
||||
"\n",
|
||||
"```\n",
|
||||
"freeechips/semicustom/runs/RUN_YYYY.MM.DD_HH.MM.SS/reports/.\n",
|
||||
|
@ -258,7 +258,7 @@
|
|||
"\n",
|
||||
"## Sequential circuits in Verilog\n",
|
||||
"\n",
|
||||
"The tutorial above focuses on combinational circuits. Sequential circuits can obviously be described in Verilog as well. Sequential blocks feature an `always` block. Refer to the vendor's reference to get the sensitivity list's syntax (e.g. to determine if reset is synchronous or asynchronous).\n",
|
||||
"We focused on combinational circuits. Sequential circuits can obviously be described in Verilog as well. Sequential blocks feature an `always` block. Refer to the vendor's reference to get the sensitivity list's syntax (e.g. to determine if reset is synchronous or asynchronous).\n",
|
||||
"\n",
|
||||
"<blockquote><details>\n",
|
||||
"\n",
|
||||
|
@ -393,7 +393,7 @@
|
|||
"{\n",
|
||||
" \"DESIGN_NAME\": \"cnt\",\n",
|
||||
" \"VERILOG_FILES\": \"dir::../v/cnt.v\",\n",
|
||||
" \"CLOCK_TREE_SYNTH\": true,\n",
|
||||
" \"RUN_CTS\": true,\n",
|
||||
" \"CLOCK_PORT\": \"clk\",\n",
|
||||
" \"FP_SIZING\": \"absolute\",\n",
|
||||
" \"DIE_AREA\": \"0 0 40 50\",\n",
|
||||
|
@ -470,18 +470,18 @@
|
|||
" \n",
|
||||
"#[test]\n",
|
||||
"fn find_max_impl_test() {\n",
|
||||
" let _= assert_eq(find_max_impl(u32[4]:[45,3,15,6]), u32:45);\n",
|
||||
" let _= assert_eq(find_max_impl(u32[4]:[3,45,15,6]), u32:45);\n",
|
||||
" let _= assert_eq(find_max_impl(u32[4]:[15,3,45,6]), u32:45);\n",
|
||||
" let _= assert_eq(find_max_impl(u32[4]:[6,3,15,45]), u32:45);\n",
|
||||
" assert_eq(find_max_impl(u32[4]:[45,3,15,6]), u32:45);\n",
|
||||
" assert_eq(find_max_impl(u32[4]:[3,45,15,6]), u32:45);\n",
|
||||
" assert_eq(find_max_impl(u32[4]:[15,3,45,6]), u32:45);\n",
|
||||
" assert_eq(find_max_impl(u32[4]:[6,3,15,45]), u32:45);\n",
|
||||
"}\n",
|
||||
"\n",
|
||||
"#[test]\n",
|
||||
"fn find_max_test() {\n",
|
||||
" let _= assert_eq(find_max<u32:1>(u32[1]:[39]), u32:39);\n",
|
||||
" let _= assert_eq(find_max<u32:2>(u32[2]:[4,90]), u32:90);\n",
|
||||
" let _= assert_eq(find_max<u32:3>(u32[3]:[7,21,15]), u32:21);\n",
|
||||
" let _= assert_eq(find_max<u32:8>(u32[8]:[1,3,45,1,5,56,0,34]), u32:56);\n",
|
||||
" assert_eq(find_max<u32:1>(u32[1]:[39]), u32:39);\n",
|
||||
" assert_eq(find_max<u32:2>(u32[2]:[4,90]), u32:90);\n",
|
||||
" assert_eq(find_max<u32:3>(u32[3]:[7,21,15]), u32:21);\n",
|
||||
" assert_eq(find_max<u32:8>(u32[8]:[1,3,45,1,5,56,0,34]), u32:56);\n",
|
||||
"}"
|
||||
]
|
||||
},
|
||||
|
|
Loading…
Reference in a new issue