Skip to content

web: show the tiny-tpu array cycle by cycle (L2 view) - #9

Merged
deaneeth merged 1 commit into
mainfrom
feat/phase-9-tpu-view
Oct 26, 2026
Merged

deaneeth merged 1 commit into
mainfrom
feat/phase-9-tpu-view

Conversation

@deaneeth

Copy link
Copy Markdown
Member

Adds the L2 view from the Phase 7 plan: the tiny-tpu tab plays the RTL's own per-cycle state for each chip pass on the systolic-array grid.

  • runtime/ttpu-exec.mjs already returns every cycle's state when asked; the browser now asks for it (web/src/lib/tpu.ts).
  • PEGrid and its state schema are copied from targets/tiny-tpu/web (the grid's @/ import is now relative, and its colour tokens are defined in global.css in all three theme blocks).
  • TpuSchedule adds a pass selector, a cycle slider and play/pause.
  • The e2e smoke test checks the grid appears after a compile and that switching passes resets to cycle 0.

Checks run locally: lint, typecheck, 4 unit tests, all 6 Playwright tests.

The tiny-tpu tab now plays the RTL's own per-cycle state for each chip pass on
the systolic-array grid, reusing tiny-tpu's PEGrid component. The executor
already returns the state of every cycle when asked; the browser now asks for
it. Each pass has a cycle slider and play/pause.

The e2e smoke test checks that the grid appears after a compile and that
switching passes resets it to cycle 0.
@deaneeth
deaneeth merged commit 5d82364 into main Oct 26, 2026
2 checks passed
@deaneeth
deaneeth deleted the feat/phase-9-tpu-view branch October 27, 2026 01:16
@deaneeth
deaneeth restored the feat/phase-9-tpu-view branch October 27, 2026 01:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant