Skip to content

Interactive labs

Prereqs: none (index for demos)
Next: Phase to pulse lab · Pulse to logic state lab · Gate-level pipelining lab · JTL hop lab · Splitter & confluence lab · DFF lab · Clock-flow lab · Path-balancing lab · Bias → ERSFQ lab · Pulse → volt lab · AQFP lab · RCSJ washboard lab · DC bias delivery lab · Serial biasing lab · SFQ STA lab · I/O megaphone lab · Flux / SQUID loop lab · Overdamped / underdamped lab · Hybrid JTL-PTL lab · ERSFQ lab · VT-RAM lab · Hybrid memory lab · CMOS vs SFQ lab · RSFQ overview lab · Symbol card lab · Bridge hub

Self-contained HTML labs that let newcomers click, watch events, and read stats --- the same teaching pattern as a small in-browser simulator, not SPICE or netlists.

Convention

Rule Detail
Where docs/labs/<topic-id>.html (copied to the site as /labs/<topic-id>.html)
What Pedagogical interaction only: discrete events, timelines, match/miss, simple counters
Not here JoSIM / WRspice netlists, PDK decks, or "run this circuit for real" flows --- those stay in projects / tracks
Embed in chapter Required: <iframe> on the matching Markdown page so readers see the lab while reading
Fallback link Also link the standalone HTML (full tab / share URL)
Optional hub This README; do not invent a nav mega-menu until several labs exist
Style Standalone CSS inside the HTML file; no build step; works offline when opened as a file
Grounding Teach the same claim as the Markdown chapter; do not invent device numbers

How to embed

In the teaching page, add a short section after the core idea (MkDocs keeps raw HTML):

## Interactive lab

Short how-to (2 steps). Prefer full-screen? Open the [lab page](../labs/<topic-id>.html).

<iframe
  src="../../labs/<topic-id>.html"
  title="..."
  style="width:100%;height:720px;border:1px solid rgba(0,0,0,0.12);border-radius:0.35rem;background:#fff;"
  loading="lazy"
></iframe>

Path rule: MkDocs serves each page as /section/page/ (trailing slash). Markdown links like ../labs/... are rewritten correctly, but raw <iframe src> is not. From a bridge/concept/fundamental page, use ../../labs/<file>.html (two levels up). From a nested page (e.g. fundamentals/fields/...), use three levels (../../../labs/...). Wrong depth → iframe 404 under /bridge/labs/....

Colors: Match Material default light + indigo (#4051b5 primary, white page, #f5f5f5 code/panel surfaces) so the iframe blends with the chapter.

Use height ≥ 700px so controls, stats, and the table fit without clipping.

Current labs

Lab Pairs with Idea
phase-to-pulse.html Phase to pulse slip → ; area fixed while changes height
pulse-to-logic-state.html Pulse to logic state Presence/absence in a clock window; timing skew → errors
gate-level-pipelining.html Gate-level pipelining Two paths → merge; pad short path until epochs match
jtl-interconnects.html JTL interconnects Stage-by-stage Φ₀ regeneration vs passive-wire myth
splitter-and-confluence.html Splitter and confluence Fanout-2 copy + skew; confluence stagger vs hazard
rsfq-dff-and-retiming.html RSFQ DFF and retiming Capture → hold (loop Φ₀) → clocked destructive readout
concurrent-and-counter-flow-clocking.html Concurrent / counter-flow clocking Clock vs data direction; hold/setup pressure cartoon
path-balancing-overhead.html Path balancing overhead ; pad tax on JJ / clocks / latency
resistive-bias-to-ersfq.html Resistive bias to ERSFQ Static vs amperes vs dynamic; ERSFQ kills resistor drip
sfq-pulse-to-volt-level.html SFQ pulse to volt-level Height/time gaps; stretch fails; amp+latch leaves Φ₀ class
aqfp-logic.html AQFP logic Multiphase AC settle; majority; phase buffers ≠ RSFQ
josephson-junction-rcsj.html Josephson junction (RCSJ) Washboard particle; overdamped pulse vs underdamped latch
dc-bias-current-delivery.html DC bias current delivery parallel crisis; serial recycle + islands preview
serial-biasing-current-recycling.html Serial biasing / current recycling vs ; islands + isolation crossings
sfq-static-timing-analysis.html SFQ static timing analysis Setup/hold slack vs clock; pads; epoch mismatch vs window blame
squid-stack-and-four-jl-driver.html SQUID stack · 4JL latching Series vs latch+hold+reset megaphones
flux-quantization-squid-loop.html Flux quantization · Loop / SQUID only; write/read;
overdamped-vs-underdamped-jj.html Overdamped vs underdamped JJ β_C slider: pulse→V≈0 vs latch until reset
hybrid-jtl-ptl-routing.html Hybrid JTL-PTL routing All-JTL stage tax vs hybrid flight; span sweep
ersfq-logic.html ERSFQ logic Static I²R vs ERSFQ feed; activity still costs switching
vortex-transitional-ram.html Vortex transitional RAM Flux-state cells; write/hold/read; NDRO vs DRO
josephson-cmos-hybrid-memory.html Josephson-CMOS hybrid memory Pulse↔volt embassy; write/read across domains
cmos-vs-sfq.html CMOS vs SFQ Translate CMOS intuitions; catch false analogies
rsfq-logic.html RSFQ overview Plumbing cell map + 3-window pulse encoding
sfq-symbol-card.html SFQ symbol card · Reading SFQ notation Flash drill: Φ₀, I_c, φ, β_C, ∫V dt

Coverage. Core walk device path, all bridges, and concept cards that suit click-and-watch demos now have labs (25 HTML files). Orientation express-lane pages and optional fields/ guides stay prose-first by design.

Adding a lab

  1. Copy an existing *.html as a template.
  2. Keep controls → stats → table/timeline (learner can reset and compare modes).
  3. Embed via <iframe> on the Markdown chapter (plus a fallback link) and list the row in this README.
  4. Do not put lab logic into extra_javascript unless every page needs it.