Put Reconfiguration Inside The Spatial Model
Cartilage gives each region a boundary and a local configuration port. A parent streams new body roles into its child while parent pointers keep the ownership relationship visible throughout the change.
Ownership, transport, and installed logic therefore occupy the same computational surface. The fabric displays who controls a region, where configuration enters, and which roles the stream creates.
Run Nested Instantiation In WebGL
The standalone WebGL page carries the 2021 mechanism directly in the browser. A left-edge port streams SPI-like configuration bits that instantiate nested series of MUX tile blocks.
Cartilage Core advances the child-owned-port architecture through a single-file WebGL1 model, hardware paper, local-clocked SystemVerilog RTL, and Verilator testbench. Its public source repository installs an exact 252-bit 6x6 AND region; the standalone Cartilage 3 page carries the original 2021 browser implementation.
Give Every Cell Logic, Direction, State, And Ownership
The code implements MUX VLSI Boolean-logic cellular automata. Each cell stores its orientation, mode, parent pointer, current value, and configuration shift register.
- Mode 1 carries a signal as a wire.
- Modes 2 through 7 implement the six MUX behaviors.
- Special orientation 0 opens a local reconfiguration port.
- Special orientation 1 crosses two routes.
- Special orientation 2 supplies GND.
- Special orientation 3 supplies PWR.
Read Role, Runtime Value, And Annotation As Three Layers
Every render combines an installed body role, a runtime signal value, and human-readable callouts. Each layer answers a different question about the same cell.
Two orientation bits and three mode bits form the installed body-role code: orientation + 4 * mode. The resulting alphabet contains 32 renderable roles.
Mode 0 assigns orientation 0 to the port, 1 to the cross, 2 to constant zero, and 3 to constant one. Mode 1 supplies four wire orientations. Modes 2 through 7 supply six MUX behaviors in four orientations each.
A configuration stream entering a local port replaces the child region’s installed roles—ports, crosses, constants, wires, and MUXes—so the picture changes because the machine itself changes.
Decode The Marks As Machine Structure
- The purple port admits configuration into a bounded child region.
- The cross carries two intersection routes through one tile.
- Const 0 and Const 1 supply fixed low and high values locally.
- A wire passes one input through the cell in one of four orientations.
- A MUX selects between neighboring data sides; its mode chooses the pair, and its orientation rotates the role. MUX Algebra derives the conditional and truth-table form behind the selector.
- Black and white discs or stubs show runtime values over the installed role.
- Text and colored callouts name structures for the reader.
The left-edge reconfiguration area places configuration ingress directly on a region side. After the stream fills the child, that region contains ordinary wires, crosses, constants, MUXes, and any additional local ports needed for another nested level.
Carry One Role Alphabet Across Three Scales
The 2021 WebGL fabric runs the nested mechanism, while the newer stills enlarge child-owned ports, installed roles, and configured routes for direct reading.
The port-root render separates the square ownership block from its port role: parent pointers define the child region, and the port admits its configuration stream. The ripple-adder render applies the same alphabet to lanes, MUX islands, constants, crosses, and edge outputs.
Shift Eight Configuration Bits Into Each Tile
An 8-bit core configuration block stores the installed role, while an 8-bit shift register collects the next configuration. After the stream fills the subtree, the tile applies the new role bits.
A clock drives the serial stream through the subtree’s root port, and a completion flip-flop marks the collection of the full configuration word.
Compose Regions Through Local Ports
Local ingress keeps each configuration transaction attached to a bounded region and an explicit parent–daughter relationship. The resulting routing discipline makes spatial ownership part of the circuit architecture.
Parent pointers form the ownership tree, and port roles live inside the same tile alphabet as logic and routing. That combination turns the cellular fabric into a composable reconfigurable substrate.
Build Universal Logic From Local Roles
Wires, constants, MUXes, feedback, configuration, and tiling form a universal Boolean substrate. Cartilage assigns those roles spatially and replaces them locally inside a visible browser/GPU machine.
Edit The Fabric Directly
ASDW draws wires while the mouse stays pressed; ZQERTYU places multiplexers; backtick places ground; 1 places power; X places an intersection; L places a reconfiguration port; and numpad 4-8-6-2 changes the parent pointer.
These controls let the reader alter the fabric itself and then watch local nested instantiation operate on the edited structure.
Read The Complete Cartilage Visual Language
Thirty-two body-role codes cover the reconfiguration port, cross, constants, four wire orientations, and six MUX modes in four orientations. The Cartilage Visual Language supplies the full rendered decoder.
Start The Cartilage Lineage With Live Nested Instantiation
The 2021 browser fabric establishes the original nested-instantiation mechanism. Later pages add QFG drivers, exact-frame captures, generated circuits, and the current compact Core while retaining the same local-port architecture.
Follow child-owned port roots
Trace configured circuit roles