138 Commits
Author SHA1 Message Date
htfab 8bca34afbe fix(tt_tool): allow hardening in git repos without a remote 2026-08-06 17:09:13 +02:00
Uri Shaked ed26854793 refactor: rename uses_3v3 to uses_vapwr
The flag enables a second power supply (VAPWR), not necessarily 3.3V (gf180's core is already 3v3), so "uses_3v3" no longer accurately describes its purpose.
Rename it across project_info, precheck, project and shuttle, and update the validation message accordingly.

The legacy "uses_3v3" key is still accepted when reading info.yaml, so existing project configs keep working.
2026-05-31 16:18:24 +03:00
Gonsolo 7e3f0f87a3 fix(project): handle errors in print_stats() (#173) 2026-05-20 10:18:15 +02:00
Kristaps Jurkans 1caab70038 fix(docs): make project doc flow compatible with updated template (#158)
The shuttle datasheet flow was updated to santise strings properly, and within the changes were some updates to the template that was used. This template is shared between the shuttle and individual projects, but the standalone version wasn't updated to be compatible. This commit rectifies that issue.
2026-03-08 04:32:54 +01:00
Pat Deegan 89ad9bfa93 feat(fpga): add support for the new FabricFox devkit
* TT FPGA tool, prelim import
* config.ini manager, prelim
* bitstream uploads and FPGA config.ini management

Contributed by @psychogenic, with minor edits by @htfab
2026-02-12 06:27:29 +01:00
Gonsolo d052447fa3 feat(project): add --no-docker option (#150)
Contributed by @gonsolo
2026-01-30 12:54:50 +01: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
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 131f64cecb feat(tt_tool): --open-in-openroad and --open-in-klayout flags #113
close #113
2025-10-01 22:53:37 +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 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 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 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 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 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 4347c961d0 refactor(tt_tool): openlane2 -> librelane 2025-09-08 17:51:13 +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
Uri Shaked 9a59843db0 style(fpga): python code formatting issues 2025-09-02 17:11:26 +03:00
Pat Deegan 41d52a230e TT06+ asic sim support, prelim 2025-08-25 16:24:29 -04:00
htfab 7d341a1195 feat: add support for IHP PDK with OpenLane2 (for user projects) 2025-03-06 08:10:24 +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 525e0a5e1a feat(docs): parse info.md as github-flavored markdown
resolves #78
2024-12-05 02:41:50 +01:00
Uri Shaked b176ed7ced feat(orfs): allow overriding PDN config 2024-10-25 10:02:14 +03: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
htfabandhtfab 74edb57680 fix(orfs): use our fork of the IHP PDK (#73)
* fix(orfs): remove special handling of DRC error Pin.f.M5

* fix(orfs): remove patch for IHP PDK

We use our own fork now with the patch integrated.

* fix(orfs): allow updating ORFS platform files from IHP PDK

---------

Co-authored-by: htfab <mpw@htamas.net>
2024-10-20 08:11:56 +03:00
htfabandhtfab dcab9fc353 feat: add DRC & LVS for ORFS (#72)
Co-authored-by: htfab <mpw@htamas.net>
2024-10-14 15:04:43 +03:00
htfab 30dbb0cd1b feat: merge VHDL support branch
os.makedirs() line contributed by @gfcwfzkm
2024-09-30 18:19:46 +03:00
htfab d862b7845c feat: change run tag from ihp to wokwi 2024-09-24 23:01:57 +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 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 3079439e81 fix: make openlane2 install the PDK into $PDK_ROOT 2024-09-10 18:46:25 +03:00
Uri Shaked 587b6cb0d0 fix: type error 2024-08-30 11:44:13 +03:00
Uri Shaked d3ed62bc00 fix(configure): support declaring power ports as inout
OpenLane 2.1.1 produces a verilog netlist with the power ports declared as "inout", where as 2.0.8 and earlier declared the power ports as "input". Change our scripts to accept "inout" as a valid direction for the power ports.
2024-08-30 11:39:52 +03:00
Zachary Catlin 12b407dea9 Fixed PDK cell doc URLs
Currently, the links produced by tt_tool.py --print-cell-category
lead to 404s; this commit uses the correct URLs.

Signed-off-by: Zachary Catlin <zec@box255.org>
2024-08-09 07:48:05 -04:00
Uri Shaked 3c88e6eb04 cleanup(website): remove hugo related functionality
Project pages are now dynamically generated based on the shuttle index.
2024-07-16 15:15:09 +03:00
htfab 8e41bfb1d9 feat(precheck): add support for 3v3 templates 2024-06-24 07:13:00 +03:00
htfab b36543e651 refactor!(tt_tool): use same dir for wokwi_test as for test 2024-06-06 07:33:49 +03:00