Skip to content

OpenClickNP v0.1 — first public release

Latest

Choose a tag to compare

@bojieli bojieli released this 06 May 07:55

OpenClickNP v0.1 — first public release

Clean-room reimplementation of the system described in the SIGCOMM
2016 ClickNP paper, derived only from the published paper and built
from scratch on the AMD/Xilinx 2025.2 toolchain targeting the Alveo
U50 die (xcu50-fsvh2104-2-e).

Highlights

  • Hand-written C++17 compiler (openclicknp-cc) with three IRs and
    six backends: Vitis HLS C++, SystemC, std::thread SW emulator,
    Verilator harness, v++ link config, and XRT host stubs.
  • 123 standard elements across 9 categories (core, lookups, parsers,
    actions, crypto, queues, traffic, networking, testing). Every
    element synthesizes through Vitis HLS with measured LUT/FF/DSP/BRAM
    numbers and has a behavioral unit test.
  • 47 end-to-end applications covering 100% of the element library.
    All 47 close timing positively at 322.265625 MHz on the U50 die,
    meet hold timing, and have zero CDC violations.
  • 5-level test pyramid (L1 unit, L2 SW emu, L3 HLS cosim, L4
    Verilator, L5 real Alveo). 135 automated tests, 100% passing.
  • U50 platform integration for both XDMA and QDMA streaming PCIe.
  • Reproducible evaluation suite (eval/) producing per-element resource
    CSVs and per-app place-and-route reports.

See FINAL_REPORT.md for the measured numbers and PLAN.md for the
full design.