Universal Silicon Studio

Digital design workbench
LOCAL WORKSPACE
Loading project…OFFLINE · NO ACCOUNT NEEDED

Your circuit, live.

Tap ports to wire · drag blocks to arrange · scroll to zoom

CYCLE 000000
SIMULATION · PAUSED
Tap trace to place A / B cursors

Cycle-based functional simulation · no propagation-delay or physical timing model

Take your work with you

Everything stays in this browser until you choose to download it. Project JSON includes the graph, pin map, settings, and custom HDL draft.

Validate & build

Graph checking and source generation run locally. Place-and-route results, resource utilization, and bitstreams only appear when a real toolchain adapter returns them.

Build commands

Hardware connection

WebUSB and Web Serial availability depends on your browser and context. A connection alone does not identify a compatible FPGA programmer.

No device selected.

No board driver registered. FTDI, CMSIS-DAP, and DFU programming require different board-specific sequences.

Toolchain and driver extension contract

From idea to digital logic

A self-contained workbench for designing and testing synchronous digital circuits. Start with a preset, change inputs in the I/O desk, step or run the simulator, then export your sources.

1. Build a circuit

Add blocks from the palette. Tap an output port, then an input. Use Properties to wire with the keyboard, slice buses, rename, or remove a block.

2. Test the behavior

Each step is one rising clock edge. Registers start at zero. Inputs update the combinational graph immediately. Trace samples record post-edge values.

3. Map physical ports

Input and Output nodes become top-level ports. Sequential designs also export clk and rst. Set your exact package and pad mapping from your board schematic.

4. Export or integrate

Download project JSON, Verilog, constraints, VCD, CSV, or build sources. A registered adapter can supply real synthesis and programming.

What is implemented?

Editable graph; bus slicing and zero extension; synchronous worker simulation; sequential feedback; cycle triggers; waveform cursors; pin constraints; Verilog generation; project save/import; undo/redo; structured agent API; USB selection and interface claiming; serial connection; toolchain/driver extension contracts.

Model and toolchain boundaries

This file does not contain Yosys, nextpnr, IceStorm, device databases, proprietary IP, or programmer drivers. Resource counts and Fmax are unknown until synthesis/route. The simulator is functional and cycle-based, not gate-delay, analog, metastability, or sub-nanosecond timing simulation. All sequential blocks share one implicit clock and active-high synchronous reset. The graph editor cannot parse arbitrary HDL.

RISC-V cores, full IEC PLC execution, SPRAM/MAC16 primitive bindings, PLL/LVDS, protocol decoding/mutation, full Pan–Tompkins, clinical stimulation, trained autoencoders, TMDS, WS2812 and chiptune cores need verified external IP. Included interlock, pulse and DSP examples are digital learning models, not medical devices or certified safety controls.

Data and agent access

Autosave uses this browser's localStorage when available. Download JSON for a durable backup. Imported files are validated before replacing a design. Up to 150 nodes, 600 wires, 16 bits per signal and 2,048 trace samples are supported. No remote messages, automatic network requests, account, or AI provider is built in.

The page exposes a machine-readable state element, an agent manifest, and the USS API. Successful actions dispatch a uss:statechange event. Requests are serialized and return explicit error codes and recovery text.

Keyboard & touch

Tab between controls. Arrow keys switch workspace tabs. Escape cancels a wire. Delete removes the selected node outside text fields. Ctrl/Cmd+Z undoes a design edit. Drag empty canvas to pan; zoom buttons and Fit work on touch. All wiring is also available through labelled selects in Properties.

Universal Silicon Studio digital-logic workbench

Offline-capable digital logic workbench for FPGA design. Simulate circuits, edit pin maps, and export Verilog, constraints, waveforms, and project files.

What it does

Builds unsigned digital circuits from connected logic blocks, simulates synchronous behavior cycle by cycle in a browser worker, displays signal traces, and exports Verilog, pin constraints, and project data. Sixteen starting presets include counters, interlocks, PWM, crossbars, adders, registers, LUTs, pulse and edge detectors, filters, and a memory scratchpad.

Who it is for and when to use it

For learners, educators, and hardware developers who want to sketch and test small synchronous logic designs locally before moving to a verified FPGA toolchain. It is suitable for digital-logic exploration and functional checks, not electrical or timing sign-off.

How to use it

  1. Load a preset or start a blank circuit, then add blocks and connect output ports to input ports.
  2. Set bus widths and virtual input values; use the properties panel to inspect or edit connections and slices.
  3. Step or run the cycle-based simulator, change inputs in the I/O desk, and inspect waveform captures or triggers.
  4. For an FPGA source package, choose a target and package, verify each physical pad against the board schematic, then export the Verilog, constraints, and project files.

Inputs

Block types, labels, widths from 1 to 16 bits, node positions, wire connections and bus slices, virtual input values, and parameters for counters, LUTs, pulse generators, filters, and other supported blocks. Project settings include an iCE40, ECP5, or custom target, package name, clock period, generated-versus-custom HDL mode, pin assignments and pull-ups, simulation cycles, waveform window and trigger. Optional hardware controls request a USB or serial device and its connection settings.

Outputs

Live simulation state and waveform traces; downloadable project JSON, graph-generated Verilog or the selected custom HDL draft, PCF or LPF pin constraints, VCD and CSV captures, trace JSON, build-source JSON, agent-schema JSON, and a schematic SVG. The build-source bundle contains source files, commands, and validation information; it does not contain synthesis results or a bitstream. Agent exports return structured content and can trigger a download only when requested.

Example use cases

Limitations and data

The simulator models unsigned, cycle-based logic only: it has no propagation-delay, analog, metastability, or physical-timing model; sequential blocks share one rising-edge clock and active-high synchronous reset. It does not parse custom HDL back into the graph or simulate a custom HDL draft. This file includes no synthesis/place-and-route binaries, device database, verified IP library, bitstream generator, or board-programming driver; real builds and flashing require trusted registered adapters. Resource use and maximum frequency remain unknown until an external toolchain runs. Verify package pin maps against the board documentation; package pads are not header labels. Safety/interlock examples are learning models, not certified controls. Projects autosave in this browser's localStorage when available; JSON imports are limited to 5 MiB, projects to 150 nodes and 600 wires, signals to 16 bits, and traces to 2,048 samples. The app has no remote project sync or embedded AI provider. The analytics tag may send page-view data to Google when online.

Agent interface

window.USS.describe() returns the manifest; getState() reads the project and simulator state; dispatch(action, input) supports validated project editing, imports, simulation, validation, exports, and history actions. generateVerilog() and generateConstraints() return source text. registerToolchain(adapter) and registerDriver(driver) accept trusted extension code; neither adapter is built in. Requests return structured success or recoverable errors, and successful updates publish the uss:statechange event. No AI service or API key is included.

Frequently asked questions

Does the app generate a ready-to-flash FPGA bitstream?
No. It exports build sources. A registered synthesis/route adapter and a compatible, verified programmer driver are required for bitstream generation and hardware programming.
Can it import and simulate arbitrary Verilog?
No. Custom HDL can be saved and exported as a draft, but the graph simulator does not parse or execute it.

Talk to SolvProb