Commit Graph
80 Commits
Author SHA1 Message Date
htfab d869909e41 fix(precheck): rewrite the boundary check
The previous version of the boundary check was a quick heuristic where
we compared the bounding box of the design to that of the prBoundary layer.
Over time we came across some designs where this is insufficient.

The new check compares the bounding box to the correct project size
based on the .def template and verifies that there is a rectangle of
this exact size in the prBoundary layer at the top level.

The patch also abstracts parsing the .def template into a separate
function since we now use it in two different checks.
2026-07-28 21:21:12 +02:00
htfab 9be228c021 fix(precheck/gf180mcuD): set power strip min width to 0.8 um 2026-06-02 10:56:05 +02:00
htfab d4626aaed7 feat(precheck/gf180mcuD): add test for antenna check 2026-05-03 09:26:53 +02:00
htfab c904c49f53 feat(precheck/gf180mcuD): add antenna check 2026-05-03 09:26:53 +02:00
htfab 201d0273dc feat(precheck): add Verilog syntax check 2026-03-26 13:05:34 +01:00
htfab 34f7730b3a fix(precheck): force single-threaded mode in sky130A_mr.drc
avoids intermittent segfaults in klayout FEOL check
2026-03-12 22:48:48 +02:00
htfab 45fa89984f feat(precheck): add analog pin check for ihp-sg13g2 2026-02-21 07:16:36 +02:00
htfab cff6920d69 fix(precheck): add nofill & slit layers to IHP valid layer list 2026-02-18 14:27:22 +02:00
htfab d28b20433e feat(precheck): use new DRC deck for IHP
needs IHP PDK 34c00bdd15efd3406ab028896d2182236aad3aa7 (2025.11.25) or later
2026-02-17 20:50:41 +02:00
htfab 57cc5a39d6 feat(precheck): allow more customization for run_klayout() 2026-02-17 20:50:41 +02:00
htfab 26675866c7 fix(precheck): add "gds maskhints yes" to magic drc 2025-11-15 18:07:03 +02:00
htfab 6aa09fc2e9 fix(precheck): some sky130 layer names missing on older PDK versions 2025-11-07 23:14:45 +01:00
htfab ce6e5d19eb refactor(logo): move pdk specific code to tech.py 2025-11-06 13:33:10 +02:00
htfab 3e3285edb3 chore(precheck): bump magic & klayout nix packages 2025-10-30 02:39:21 +01:00
htfab 67541ef759 feat(precheck): add pin_check for gf180mcuD
and also enable magic drc
2025-10-29 19:14:45 +02:00
htfab 0954014041 feat(precheck): initial gf180mcuD support 2025-10-28 21:41:02 +02:00
htfab 13c23e047d fix: prevent exception in get_tt_tools_version() for detached HEAD 2025-10-07 01:30:47 +02:00
htfab eae5d9d511 feat(def): 6x4 and 8x4 tile sizes 2025-09-08 15:44:33 +03:00
htfab e96fa6fc6f fix(precheck): use non-greedy regex for stripping verilog comments
as suggested by @smunaut
2025-09-01 23:28:25 +02:00
htfab 1951ccfff9 chore: update requirements.txt
`pip-compile --upgrade`
2025-08-08 00:56:53 +02:00
htfab baf7eca21e feat: add support for hardening the chip rom on ihp/ol2 2025-03-12 13:36:25 +02:00
htfab 7d341a1195 feat: add support for IHP PDK with OpenLane2 (for user projects) 2025-03-06 08:10:24 +02:00
htfab 8f10bc8c74 chore(shuttle): also update pg paths for --copy-final-results 2025-02-24 07:55:50 +02:00
htfab 1d9dca0af4 chore(shuttle): follow pg & asw changes in tt-multiplexer 2025-02-24 07:55:50 +02:00
htfab 022164a023 refactor(precheck): use gdstk.offset() in connectivity checks
as suggested by @tatzelbrumm
2025-02-17 09:16:00 +02:00
htfab 055de1f9fe fix(precheck): improve error messages for connectivity checks 2025-02-17 09:00:55 +02:00
htfab 2241597d6b feat(precheck): add extra prechecks
- no shapes outside project area
- VPWR/VGND present, VAPWR present iff uses_3v3
- no invalid layers
- cell names don't have '#' or '/'
- urpm to nwell spacing satisfies DRC
- analog pins have adjacent metal iff marked as used
2025-01-31 17:53:57 +02:00
htfab 2036138b0e feat(shuttle): add logo & shuttle ID as chip art 2025-01-20 06:23:17 +02:00
htfab 9d3ca84b00 feat(shuttle): use .oas from user projects when available 2025-01-13 15:40:14 +02:00
htfab b9e2e9fc08 feat(docs): use github-flavored markdown at the shuttle level too 2025-01-06 06:59:58 +02:00
htfab d89635e143 feat!: drop openlane1 support 2024-12-18 09:02:55 +02:00
htfab a6945eab19 chore: update requirements.txt
`pip-compile --upgrade`
2024-12-14 07:57:50 +02:00
htfab 152a3ea3b4 fix: use 'is' for type comparison as suggested by new flake8 2024-12-05 08:47:49 +02:00
htfab 56278104af chore: update pre-commit hooks 2024-12-05 08:47:49 +02:00
htfab 6372419d1e fix!: remove deprecated config.tcl support
resolves #77
2024-12-05 08:46:44 +02:00
htfab 525e0a5e1a feat(docs): parse info.md as github-flavored markdown
resolves #78
2024-12-05 02:41:50 +01:00
htfab 0c16b17395 fix(orfs): link to the 1.2V version of the cell library pdf from the summary 2024-10-21 19:23:23 +03:00
htfab 6fbbea4bce fix(orfs): fail if violations remain after detailed routing 2024-10-21 14:20:32 +03:00
htfab 9844f3fe47 fix(orfs): use updated techmap for latches 2024-10-21 12:32:38 +03:00
htfab 30dbb0cd1b feat: merge VHDL support branch
os.makedirs() line contributed by @gfcwfzkm
2024-09-30 18:19:46 +03:00
htfab 54660649f9 fix(docs): include hyperref in docs templates
Needed for compatibility with ubuntu-24.04 CI image
2024-09-30 13:57:36 +03:00
htfab d862b7845c feat: change run tag from ihp to wokwi 2024-09-24 23:01:57 +03:00
htfab b306a9274b fix: use updated pdn script from @smunaut 2024-09-24 22:23:12 +03:00
htfab f8cc66a644 feat: add experimental IHP support 2024-09-24 22:23:12 +03:00
htfab dd77f85278 fix: handle PDK_ROOT being unset for volare 2024-09-23 06:40:11 +03:00
htfab d497541361 fix: handle PDK_ROOT being unset for the docker command line 2024-09-23 06:40:11 +03:00
htfab 90075702b2 fix: make klayout version compatible with recent openlane2 2024-09-20 15:30:05 +03:00
htfab 3627058a39 fix: adjust glob pattern for util percentage 2024-09-20 15:30:05 +03:00
htfab da472a9133 fix: add --docker-no-tty to openlane2 command line 2024-09-20 15:30:05 +03:00
htfab a926449665 fix: explicitly mark volare as a dependency 2024-09-10 18:46:25 +03:00
htfab 3079439e81 fix: make openlane2 install the PDK into $PDK_ROOT 2024-09-10 18:46:25 +03:00
htfab 8e41bfb1d9 feat(precheck): add support for 3v3 templates 2024-06-24 07:13:00 +03:00
htfab 58dc0db1c1 fix: resolve version conflicts gdstk<->numpy & openlane2<->klayout 2024-06-17 08:47:46 +03:00
htfab ed61fd7c1f refactor: clean up requirements.txt 2024-06-12 20:50:08 +03:00
htfab b36543e651 refactor!(tt_tool): use same dir for wokwi_test as for test 2024-06-06 07:33:49 +03:00
htfab f56fdf7cbe feat(test-precheck): support compound ports 2024-05-28 22:52:28 +03:00
htfab 12621b9a14 feat(precheck): combine rectangles within the same port 2024-05-28 22:52:28 +03:00
htfab 98e9482354 feat: update directory structure for analog switch 2024-05-23 11:52:25 +03:00
htfab 29e3bc4c3f fix: remove openlane from requirements.txt
So that we can set the right version from tt-gds-action.
2024-05-17 20:51:32 +03:00
htfab 2b48c36ecb fix: remove progress bar in github actions
It breaks the log as every refresh is shown as a new line.
2024-05-17 20:51:32 +03:00
htfab a791fde25c feat: allow hardening with openlane2 2024-05-16 23:34:05 +03:00
htfab 5e4d73d429 fix(datasheet): force minimum heading in info.md 2024-05-14 17:07:30 +03:00
htfab dd5f1685ed feat: skip .lef at shuttle top level 2024-05-11 08:58:43 +03:00
htfab 68e6da5b9f fix(precheck): typo 2024-05-08 20:08:10 +03:00
htfab 96bfcce676 feat(precheck): add testcase for overlapping pins 2024-05-08 20:08:10 +03:00
htfab 41b9907da4 feat(precheck): extend error message for overlapping pins 2024-05-08 20:08:10 +03:00
htfab 39162225ce feat(precheck): fail on overlapping pins 2024-05-08 20:08:10 +03:00
htfab 0bc5812f9d fix(datasheet): typo in template for bidirectional pins 2024-05-07 15:00:51 +03:00
htfab 0cf0891303 feat(datasheet): add analog pins to hugo 2024-05-07 08:47:00 +03:00
htfab 194859c624 feat(datasheet): add analog pins to shuttle pdf 2024-05-07 08:47:00 +03:00
htfab c36f3a3615 feat(datasheet): add analog pins to project pdf 2024-05-07 08:47:00 +03:00
htfab b3321a93c6 feat(datasheet): add analog pins to Project class 2024-05-07 08:47:00 +03:00
htfab a90680ff4f feat(datasheet): use mustache for shuttle_index 2024-05-07 08:47:00 +03:00
htfab 6ac178db11 feat(datasheet): use mustache for hugo_template 2024-05-07 08:47:00 +03:00
htfab ce9f174c87 feat(datasheet): use mustache for doc_template 2024-05-07 08:47:00 +03:00
htfab 8ddef688df feat(datasheet): use mustache for project_preview 2024-05-07 08:47:00 +03:00
htfab 83c129747b fix(datasheet): unescape braces in .md templates 2024-05-07 08:47:00 +03:00
htfab 64bf6626f9 fix(precheck): make errors more descriptive 2024-05-01 08:54:11 +03:00
htfab 97e65e74f6 feat(precheck): add pin checks
Checks for missing or invalid pins, wrong pin dimensions or layers.
2024-05-01 00:55:53 +03:00
htfab bc500a3a56 fix(docs): remove text labels from subcells in png 2024-04-17 14:29:49 +03:00