Commit Graph
287 Commits
Author SHA1 Message Date
Kristaps Jurkans a9790f84d3 fix: pin cocotb to 1.8.0 for verilog mux testbench 2025-12-05 14:34:20 +00:00
Kristaps Jurkans 658bf19e38 fix: klayout version in precheck
- klayout to <0.30.0 but >=0.29.0
2025-12-05 13:47:22 +00:00
Kristaps Jurkans 57a81e4cea fix: pin pyyaml to 6.0.1 to match tt-multiplexer 2025-12-05 13:17:06 +00:00
Kristaps Jurkans 6fb24de24c fix: dependecies and add pyproject.toml
Packages were cross-referenced with the existing `requirements.txt` and any missing ones were adding to `pyproject.toml`. They are not pinned to any particular version in this commit.
2025-12-05 13:17:06 +00:00
Kristaps Jurkans f15e377a3a fix: use function call instead of attribute to determine analog project 2025-12-05 13:17:06 +00:00
Kristaps Jurkans 47505a0a9c fix(datasheet): make links inside callout boxes white 2025-12-05 13:17:06 +00:00
Kristaps Jurkans fa5f55e8cd feat(datasheet): automatically determine appropriate pinout table
This is determined by looking at the `pdk` key in the config. If `pdk` doesn't exist, `id` will be used (assuming that the structure of the shuttle ID follows ttX where X=[sky, ihp, gf]). If any part fails, it will fall back to `openframe_sky130`.

The pinout can also be manually controlled by setting the `datasheet_config.pinout` key in the shuttle config, and that will be used verbatim. Note that `datasheet_config.pinout` is not checked, so it *must* be exact, otherwise it will cause the datasheet build to fail.
2025-12-05 13:17:06 +00:00
Kristaps Jurkans 91c5b73688 docs(datasheet): add new pinouts
Add new pinouts for SKY130, IHP SG13G2 and GF180mcuD.

Valid keys for `show_pinouts` can now be easily seen in the `pinout_map` dictionary:
-  `caravel`
-  `openframe`
-  `openframe_sky130`
-  `customframe_ihp_sg13g2`
-  `customframe_gf180mcud`

The pinout chapter in the datasheet has also been reworked: the content now exists directly in the typst template instead of being an external file. This is to make use of the `pinout_map` and to allow for easier modification of the content.

This change also allows the page to make use of the `callout` function.
2025-12-05 13:17:06 +00:00
Kristaps Jurkans 84234da4a0 fix: missing TechName for config.py
This is not the entire file copied from another branch - this is just what is necessary to get the datasheet flow going.
2025-12-05 13:17:06 +00:00
Kristaps Jurkans 6994c804d7 feat(datasheet): add typst datasheet flow
This is a squash of 5 commits in order to add the new datasheet flow.

fix(datasheet): ensure datasheet can use images properly

fix(datasheet): 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(datasheet): missing analog pin tables

fix(datasheet): 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-12-05 13:16:59 +00:00
Sylvain Lefebvre 24de353b9d fix: specifying numpy version in requirements.txt for precheck 2025-02-03 21:29:21 +02:00
Uri Shaked 11b2d371b4 fix(documentation): exit with error code if PDF generation fails 2024-05-29 17:02:39 +03:00
Uri Shaked 17e08942b2 feat(rom): add Magic and CRC32 fields 2024-05-29 16:18:08 +03:00
Uri Shaked bcf20bea0b fix(datasheet): broken datasheet
it broke after the fix from 74796c81c7
2024-05-29 15:55:39 +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 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
Uri Shaked 8e2da84a18 feat: python 3.12 support #53
close #53
2024-05-20 10:36:19 +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
matt venn d8d3836cf8 Update project.py
fix 'how to use' error message
2024-05-14 15:15:53 +02: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
Uri Shaked d2d27ab36c fix(precheck): fails on projects in shuttle repository
It can't find info.yaml, since it's looking for it in the parent directory of the gds while info.yaml is in the same directory as the gds.
2024-05-07 09:01:09 +03:00
Uri Shaked 79f41ef2e1 fix(datasheet): shuttle id missing in hugo content index
We generate {shuttle_id} instead of actually putting the shuttle id there, causing the shuttle map not to appear.
2024-05-07 08:47:00 +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
Uri Shaked af1f250dba fix(datasheet): broken full gds render / chip map 2024-05-07 00:24:55 +03:00
matt venn 65034f9c5e docs(datasheet): update CREDITS.md 2024-05-02 15:34:35 +03:00
Uri Shaked 0c171af9b4 feat(fpga): read seed / target frequency from environment
Read the values from TT_FPGA_SEED / TT_FPGA_FREQ, and default to 12 MHz frequency.
2024-05-01 23:47:35 +03:00
Uri Shaked b6ec741349 feat(fpga): initial implementation
Adds a new `tt_tool.py --create-fpga-bitstream` flag that creates a TT Sim FPGA bitstream from the user's project.
2024-05-01 23:13:21 +03:00
htfab 64bf6626f9 fix(precheck): make errors more descriptive 2024-05-01 08:54:11 +03:00
Uri Shaked 81bffaf9d6 fix(datasheet): update website index header for TT07 2024-05-01 01:25:21 +03:00
Matt Venn 2beb1e67fc docs(credits): remove Aisler 2024-05-01 01:19:31 +03:00
Matt Venn fa59d328a5 docs: update pinout diagram (tt-qfn-64.svg) 2024-05-01 01:18:38 +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