36 Commits
Author SHA1 Message Date
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 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
Uri Shaked a48b1c7446 feat(configure): support for brotli-compressed GDS files
Recently, we started compressing GDS files larger than 25 MB due to GitHub REST API blob size limitations.
2024-11-05 14:56:53 +02:00
Uri Shaked 05f4c62dc1 feat(configure): add no_power_gating configuration
When set, it configures all user projects with `pg_vdd: false`. This is for ihp0p2 shuttle, which doesn't have power gating yet (tt-multiplexer defaults to enable the pg when `pg_vdd` is not explicitly specified).
2024-10-22 11:50:26 +03:00
Uri Shaked d1e8e31569 feat(configure): add --create-ihp-submission command
similar to create-efabless-submission, but uses the ihp directory and skips copying user_defines.v
2024-10-21 21:53:54 +03:00
Uri Shaked f3e3861176 fix(shuttle): missing powered GL netlists for IHP
Hardening requires powered netlists, GL required unpowered netlists. So now we keep both.
2024-10-21 16:53:14 +03:00
Uri Shaked 4eb37893cb fix(configure): fails on ihp user submissions
IHP submissions do not have powered netlists, so add a flag to specify that in the shuttles config.yaml file.
2024-10-21 16:01:33 +03:00
Uri Shaked 9dc2af14c8 feat(configure): make top_level_macro configurable
For IHP shuttles, we need "tt_ihp_wrapper" instead of "openframe_project_wrapper"
2024-10-21 13:31:51 +03:00
Uri Shaked 63eb3d550f feat(configure): copy tt_pg_1v8_4 macro 2024-07-04 22:17:53 +03:00
Uri Shaked 054e41b839 feat(configure): set "pg_vaa" in modules.yaml for 3v3 projects
This property tells the mux to include 3v3 power gate (in addition to the standard 1v8 power gate)
2024-07-04 21:38:40 +03:00
Uri Shaked a4a87edf2a feat(configure): copy new tt08 power gate macros
tt_pg_1v8_1, tt_pg_1v8_2, and tt_pg_3v3_2
2024-06-09 16:11:30 +03:00
Uri Shaked 74796c81c7 fix: analog designs always get 6 pins connected
instead, we should read the `analog_pins` setting from the project's info.yaml
2024-05-29 13:19:29 +03:00
htfab 98e9482354 feat: update directory structure for analog switch 2024-05-23 11:52:25 +03:00
htfab dd5f1685ed feat: skip .lef at shuttle top level 2024-05-11 08:58:43 +03:00
htfab b3321a93c6 feat(datasheet): add analog pins to Project class 2024-05-07 08:47:00 +03:00
Uri Shaked e3fac0ab40 feat: "layout" section in shuttle_index
contains information about the type each each mux (analog / digital)
2024-03-21 23:36:50 +02:00
Uri Shaked a97e6b03b6 feat(configure): copy analog switch (asw) macro 2024-03-21 18:09:32 +02:00
Uri Shaked ef5539b7a0 feat: new format for shuttle_index
1. Bump "version" to 3
2. Rename "shuttle" to "name"
2. Rename "mux" to "projects", and turn it from a dict into a list
3. Project entries: add "address" (which was previously the key of the "mux" dict), remove "features" and add optional "analog_pins" with a list of analog pin assignment.
2024-03-18 01:16:22 +02:00
Uri Shaked b1a2a3bb98 feat(configure): initial support for analog module placement 2024-03-16 23:26:56 +02:00
Uri Shaked 51bb1d0bf5 fix: don't generate pg_vdd property in tt-multiplexer's modules.yaml
All user macros are now power gated by default
2024-03-13 23:03:07 +02:00
Uri Shaked c2c0d8ffbd refactor: add more types
include types for the new info.yaml
2023-12-23 21:27:22 +02:00
Uri Shaked 0ea5cec65d feat(docs): rename generated markdown index to shuttle_index.md 2023-12-23 13:04:18 +02:00
Uri Shaked cbda91be2b feat: preliminary openframe support 2023-11-20 14:57:41 +02:00
Uri Shaked 89cd2e77e5 fix: "power_switch" is null in shuttle_index.json 2023-10-27 19:54:54 +03:00
Uri Shaked 765ae2df56 feat: support for "power_gated" property in commit_id.json 2023-10-27 19:44:47 +03:00
Uri Shaked 7ffd198c55 feat: power gating + split spline mux support
1. Read mux indices from modules_placed.yaml instead of manually calculating them
2. Add "power_switch" and "analog" fields to shuttle_index.json
3. Copy the power gate macros (tt_pg_vdd_1, tt_pg_vdd_2) into to tt_top directory
2023-10-21 16:04:52 +03:00
Uri Shaked e807454c33 fix: copy powered netlist when building tt_top
the new power gated tt-multiplexer requires powered netlist for the included macros.
2023-10-12 19:08:48 +03:00
Uri Shaked 462004f9e0 feat: generate gl includes for user projects
This enables running GL tests on the final GL netlist of the actual chip
2023-10-01 23:27:36 +03:00
Uri Shaked aa8f760375 style: fix lint errors + reformat source with black 2023-09-21 22:30:52 +03:00
Uri Shaked e981222768 feat: add commit_date field to shuttle_index.json
The commit date provides an easy method to compare two shuttle_index.json files and detect which of the files relates to a newer commit. This enables us to prevent a situation where an earlier shuttle_index overrides a later one.
2023-09-14 15:13:59 +03:00
Uri Shaked 23da39ba14 feat: include chip ROM when running in verification mode (--test) 2023-09-11 15:35:24 +03:00
Uri Shaked cadbfbcd25 feat: Chip ROM auto generation with OpenLane 2
So we can generate the ROM while building the shuttle's GDS
2023-09-10 20:17:58 +03:00
Uri Shaked 5e863fc333 fix: final GDS file name no longer includes ".magic"
The final GDS file name has changed in recent OpenLane2 and is now {module}.gds instead of {module}.magic.gds.
2023-09-10 12:56:17 +03:00
Uri Shaked acb6b6b4c3 refactor: caravel.py -> shuttle.py 2023-09-09 21:45:01 +03:00