Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Restructure the repository #25

Merged
merged 2 commits into from
Oct 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
24 changes: 19 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,21 @@ This package contains the Skywater 130nm PDK for KLayout.

### Installation

You have two options for using this package:
You have two options for installing this package:

1. Clone this repository
2. Install the complete sky130 PDK from [open_pdks](https://github.com/RTimothyEdwards/open_pdks) either manually or with [volare](https://github.com/efabless/volare). The PDK also includes this package.
- Clone this repository
- Install the complete sky130 PDK via [open_pdks](https://github.com/RTimothyEdwards/open_pdks) or [volare](https://github.com/efabless/volare). The PDK also contains this package.

When you start KLayout, you must load this package. This can be done by setting the environment variable `KLAYOUT_PATH`. For example, inside this repository:
For this package to be available in KLayout, you need to set the environment variable `KLAYOUT_PATH` to point to the root directory of this repository. For example, within this repository:

```console
KLAYOUT_PATH=./sky130_tech klayout -e
KLAYOUT_PATH=. klayout -e
```

Or at another directory:

```console
KLAYOUT_PATH=/path/to/sky130_klayout_pdk klayout -e
```

### PCells
Expand All @@ -41,3 +47,11 @@ pip install --upgrade gdsfactory

> [!IMPORTANT]
> If you are using a Linux distribution that discourages the installation of system-wide Python packages through pip, you need to pass `--break-system-packages`.

## Acknowledgement

The XSection and D25 setup are gratefully borrowed from: [sky130A_el](https://github.com/klayoutmatthias/sky130A_el).

## License

If not otherwise noted [The Apache License, version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt).
Binary file added efabless-logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
21 changes: 21 additions & 0 deletions grain.xml

Large diffs are not rendered by default.

3 changes: 0 additions & 3 deletions sky130_tech/tech/sky130/drc/README.md

This file was deleted.

48 changes: 48 additions & 0 deletions tech/sky130/d25/sky130.lyd25
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
<?xml version="1.0" encoding="utf-8"?>
<klayout-macro>
<description>D25 View</description>
<version/>
<category>d25</category>
<prolog/>
<epilog/>
<doc/>
<autorun>false</autorun>
<autorun-early>false</autorun-early>
<priority>0</priority>
<shortcut/>
<show-in-menu>true</show-in-menu>
<group-name>efabless_sky130</group-name>
<menu-path>efabless_sky130>end("Efabless sky130").end</menu-path>
<interpreter>dsl</interpreter>
<dsl-interpreter-name>d25-dsl-xml</dsl-interpreter-name>
<text>poly = input(66, 20)
licon = input(66, 44)
li = input(67, 20)
mcon = input(67, 44)
met1 = input(68, 20)
via1 = input(68, 44)
met2 = input(69, 20)
via2 = input(69, 44)
met3 = input(70, 20)
via3 = input(70, 44)
met4 = input(71, 20)
via4 = input(71, 44)
met5 = input(72, 20)


z(poly, height: 250.nm)
z(licon, height: 400.nm)
z(li, height: 200.nm)
z(mcon, height: 350.nm)
z(met1, height: 300.nm)
z(via1, height: 350.nm)
z(met2, height: 300.nm)
z(via2, height: 350.nm)
z(met3, height: 300.nm)
z(via3, height: 350.nm)
z(met4, height: 500.nm)
z(via4, height: 400.nm)
z(met5, height: 500.nm)

</text>
</klayout-macro>
8 changes: 8 additions & 0 deletions tech/sky130/drc/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Sky130 manufacturing rules deck

The MR DRC deck was copied from [mpw_precheck](https://github.com/efabless/mpw_precheck/blob/main/checks/tech-files/sky130A_mr.drc). This is the DRC deck that is currently actively maintained.

> [!INFO]
> Make sure to keep this file updated.

`sky130B_mr.drc` is the same as `sky130A_mr.drc`.
Loading
Loading