Commit Graph
418 Commits
Author SHA1 Message Date
htfab ce6e5d19eb refactor(logo): move pdk specific code to tech.py 2025-11-06 13:33:10 +02:00
Uri Shaked eebefdd779 feat(logo): gf180mcuD support 2025-11-06 11:23:14 +02:00
Uri Shaked bee33c5d9d fix(rom): add "g" to 7-segment alphabet 2025-11-06 11:13:39 +02:00
htfab 690a4c8470 feat(tt_tool): scramble stdcell layers in png render for IHP & GF (#129)
* feat(tt_tool): scramble stdcell layers in png render for IHP & GF

* fix(tt_tool): resolve mypy errors

* refactor(tt_tool): separate svg & png rendering into render_utils.py
2025-11-04 20:00:42 +02:00
htfab f77b61f709 Datasheet bugfixes (#128)
* Fix white page when funding was not specified

This was caused by creating a page before first checking whether there was any content for that page beforehand, so it would result in a rogue white page with no content.

* Fix missing analog pin tables

* Tweak pandoc settings

Switching from `gfm` to `markdown` should enable more formatting options. The extensions have been configured to be similar to `gfm` but provide some additional things, like `line_blocks` and `lists_without_preceding_blankline`s.
2025-10-30 17:25:35 +01:00
Kristaps Jurkans 6f6b5042c2 Tweak pandoc settings
Switching from `gfm` to `markdown` should enable more formatting options. The extensions have been configured to be similar to `gfm` but provide some additional things, like `line_blocks` and `lists_without_preceding_blankline`s.
2025-10-30 15:27:41 +00:00
Kristaps Jurkans b8c4e91ab1 Fix missing analog pin tables 2025-10-30 13:34:20 +00:00
Kristaps Jurkans 7e4e1045a9 Fix white page when funding was not specified
This was caused by creating a page before first checking whether there was any content for that page beforehand, so it would result in a rogue white page with no content.
2025-10-30 13:10:21 +00: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
kris j 8132ad6ecc fix(docs): ensure datasheet can use images properly (#125) 2025-10-16 01:35:54 +02:00
kris j c36badfb60 feat(docs): add new datasheet generation method (#123) 2025-10-16 00:11:07 +02:00
htfab 13c23e047d fix: prevent exception in get_tt_tools_version() for detached HEAD 2025-10-07 01:30:47 +02:00
Uri Shaked 03ca42307f feat(tt_tools): --check-docs now prints all errors
Previously, it only printed the first error it encountered, causing more iterations when fixing info.yaml and info.md errors
2025-10-03 18:25:42 +03:00
Uri Shaked bdff4ca192 ci: include test results in action summary 2025-10-03 17:54:57 +03:00
Uri Shaked a9e829d0c1 test: info.yaml validation tests 2025-10-03 17:50:58 +03:00
Uri Shaked 29e6a05555 cleanup: remove .gds.br support
We now use .oas instead
2025-10-02 08:11:37 +03:00
Uri Shaked 131f64cecb feat(tt_tool): --open-in-openroad and --open-in-klayout flags #113
close #113
2025-10-01 22:53:37 +03:00
Mike Bell 83933f099c fix(tt_tool): cell name regexp should only match start of line 2025-10-01 21:44:06 +03:00
Mike Bell 4ebfef139b fix(tech/gf180mcuD): configure STA for 3v3 timing #120 2025-10-01 10:51:21 +03:00
Uri Shaked 7d5a6b229f fix(tt_tool): use correct timing data for gf180mcuD
We are targeting 3.3V, but until now we used 5V timing data.
2025-09-30 15:47:56 +03:00
Uri Shaked 65b404f80a Merge pull request #119 from TinyTapeout/gf180mcu
Initial support for the gf180mcuD PDK (with wafer.space)
2025-09-29 20:26:35 +03:00
Uri Shaked 1b336f4996 feat(tt_tool): cell/category definitions for gf180mcuD
Enables the --print-cell-summary and --print-cell-category commands for gf projects
2025-09-29 16:17:23 +03:00
Uri Shaked 0afaaef4d4 ci(test-harden): add gf180mcuD 2025-09-29 16:17:23 +03:00
Uri Shaked fcf7e8a37f fix(tt_tool): always specify the power pin names
Up to this point, we relied on the PDK's default power pin names. However, the defaults names for GF180, VDD and VSS, are not compatible with Tiny Tapeout, which expects VPWR (or VDPWR) and VGND. So instead, we set the VDD_PIN and GND_PIN config options explicitly.
2025-09-29 16:17:23 +03:00
Uri Shaked 1ab2abc8d5 feat: initial gf180mcuD support 2025-09-29 16:17:14 +03:00
Uri Shaked 44d164955d fix(precheck): read the PDK name from the PDK environment variable 2025-09-29 16:16:20 +03:00
Uri Shaked 8a36225bdb feat(tt_util): create a pdk.json file with pdk name / version info
This file replaces the old "FLOW_VERSION" and "PDK_SOURCES"
2025-09-29 16:14:55 +03:00
Uri Shaked d14142e412 fix(tt_tool): create merged config right after creating user config
This allows users to simply run `--create-user-config` and then manually harden with librelane using the generated config file.
2025-09-25 12:57:37 +03:00
Uri Shaked fcb93fde4a fix: remove ".mk" config format support
It was a temporary hack to support OpenROAD-flow-scripts (ORFS) for early IHP shuttles
2025-09-25 12:55:08 +03:00
Uri Shaked 9056f14ddc feat(tt_tool): set TT_PDK in user project OAS file
The TT_PDK property will be set to the PDK used to harden the project
2025-09-25 09:42:07 +03:00
Uri Shaked 7732914248 fix(tech/sky130A): remove ROW and TRACK lines from .def files
LibreLane runs happily without them, but they cause issue when using a different standard cell library (e.g. hs instead of the default hd).
2025-09-24 22:36:24 +03:00
Uri Shaked c4892189f9 chore: upgrade cocotb, pytest 2025-09-23 16:38:27 +03:00
Uri Shaked 305f3ecaf8 fix(tt_tool): vary RT_MAX_LAYER per tech
Each tech has a different metal stackup, so user projects get a different top routing metal layer. tt-support-tools now handles this instead of the user having to worry about this when switching PDKs.
2025-09-18 11:45:44 +03:00
Uri Shaked 84efb79dd7 feat(tt_tool): --create-tt-submission command 2025-09-18 11:36:03 +03:00
Uri Shaked ae0894906a Merge pull request #115 from TinyTapeout/tech-refactor
Refactor to separate PDK/tech-specific code
2025-09-14 14:51:28 +03:00
Uri Shaked 0529b699de fix(precheck): rename "sky130" to "sky130A"
Keep the tech naming consistent with the rest of tt-support-tools code
2025-09-13 20:28:54 +03:00
Uri Shaked 498e098f9a refactor(rom): unified librelane config with per-PDK overrides 2025-09-13 20:28:54 +03:00
Uri Shaked 28fd25f684 refactor: separate tech specific code
Make the codebase more PDK-agnostic by moving tech-specific code to `tech.py` and tech specific files (e.g. def files, tile_sizes.yaml) to `tech/<pdkname>` subdirectory.
2025-09-13 20:28:48 +03:00
Uri Shaked c67d54ee54 fix(tt_tool): routing stats broken for LibreLane 3.x 2025-09-09 16:14:57 +03:00
Uri Shaked dc0f9c87b4 ci(test-harden): GH action that tests GDS hardening 2025-09-09 16:14:27 +03:00
Uri Shaked 4347c961d0 refactor(tt_tool): openlane2 -> librelane 2025-09-08 17:51:13 +03:00
Uri Shaked 5e9fff900e cleanup: remove legacy code 2025-09-08 16:02:33 +03:00
htfab eae5d9d511 feat(def): 6x4 and 8x4 tile sizes 2025-09-08 15:44:33 +03:00
Uri Shaked 278718ca12 chore: update efabless -> chipfoundry 2025-09-08 15:44:33 +03:00
Uri Shaked 9788d3d545 fix(rom): use DECAP_CELL settings from PDK 2025-09-08 15:44:32 +03:00
Uri Shaked 9024d9ff0e fix(rom): extend 7-segment alphabet
Add "c", "a", "d" and "s", "k", "y" to the 7-segment encoding dictionary, make "H" and "I" uppercase (so IHP is rendered uppercase and not lowercase)
2025-09-08 15:44:27 +03:00
Uri Shaked ef2b0de84b fix(configure): fails due to missing args.pdk
slightly refactor project.py to make the code more extensible to future PDK support
2025-09-02 17:42:28 +03:00
Uri Shaked 9519fa87fd fix(tt_tool): project tile configuration always checked against SKY130 tile sizes 2025-09-02 17:20:02 +03:00