Skip to content

3. Architecture

What are the major components, and where should I read next?

PRISM Switch Architecture Overview
Target PRISM microarchitecture. N is the number of physical ports and K the number of internal packet-injection sources.

Network switches combine routing, arbitration, buffering, switching, and flow control. PRISM extends that datapath with in-network collective reduction: ordinary frames follow the forwarding path, while locally addressed PRISM frames enter control, aggregation, result, or progress handling.

The figure is the architectural destination. The current RTL implements the collective path and its platform adapters, not the forwarding datapath, VOQs, or general crossbar shown in the upper half.

The current implementation is a parameterized collective node with two full-duplex 512-bit AXI4-Stream ports in its default build. It consumes locally addressed PRISM CONTROL and DATA frames, performs a configured reduction, and generates CONTROL responses and RES frames. Unsupported or non-local traffic is drained; the RTL does not provide transparent Layer-2 forwarding.

The ordered RTL inventory is repo/prism-hdl/rtl.f. The reusable root is prism_collective_core; prism_sim_top, prism_vivado_top, and prism_open_nic_250mhz adapt it to verification, standalone Vivado, and the OpenNIC plugin boundary respectively.

Next pages

  • Wire protocol

    Read 3.1 Protocol for packet layouts, registries, and configuration records shared by RTL and the CCL.

  • Implemented pipeline

    Follow 3.2 Pipeline from per-port ingress through control, reduction, result storage, and egress.

  • Configuration

    Use 3.3 Parameters to distinguish wire constants, elaboration parameters, runtime state, and derived values.

  • RTL modules

    Consult 3.4 RTL module inventory for every package, synthesizable module, top-level adapter, and verification harness.

Design and implementation status

The Protocol defines the wire ABI and target behavior; Pipeline separates that target from the current implementation. Parameters and the module inventory describe the RTL present in repo/prism-hdl. A present-tense description is not an implementation claim, PRISM is under active development.