QUAC 100 Installation Guide

QUAC100-IGD-002Rev 2.0 — February 2026

This guide covers all aspects of QUAC 100 deployment including site preparation, hardware installation, driver and SDK setup, firmware verification, and post-installation validation.

Prerequisites #

System Requirements

RequirementMinimumRecommended
PCIe SlotGen3 x16 (mechanical x16)Gen4 x16
Available Slot WidthDual-width (2 adjacent slots)Dual-width with airflow clearance
PSU Capacity190W available650W+ PSU total
Auxiliary PowerTwo 8-pin PCIe power connectors requiredTwo 8-pin PCIe power connectors
Chassis Airflow200 LFM across card300+ LFM (server-grade)
Operating SystemLinux kernel 5.10+ / Windows 10Linux 6.1+ / Windows Server 2022
System RAM8 GB32 GB+
Disk Space (SDK)500 MB2 GB (with samples and docs)

Supported Platforms

PlatformArchitectureStatus
Ubuntu 22.04 / 24.04 LTSx86_64✓ Fully supported
RHEL 8.x / 9.xx86_64✓ Fully supported
Rocky Linux 8.x / 9.xx86_64✓ Fully supported
SUSE Linux Enterprise 15 SP5+x86_64✓ Fully supported
Debian 11 / 12x86_64✓ Fully supported
Windows 10 / 11 (22H2+)x64✓ Fully supported
Windows Server 2019 / 2022x64✓ Fully supported
VMware ESXi 7.0 U3+x86_64âš¡ SR-IOV passthrough
KVM / QEMUx86_64âš¡ VFIO passthrough
ESD Warning: The QUAC 100 contains sensitive electronic components. Always use a grounded ESD wrist strap and work on an ESD-safe surface. ESD protection ratings: ±8 kV contact discharge, ±15 kV air discharge (IEC 61000-4-2 Level 4).

Hardware Installation #

Physical Specifications

267mm

Card Length (full-length PCIe)

111mm

Card Height (full-height)

~450g

Weight (with heatsink)

2-slot

Width (dual-width profile)

Installation Procedure

1. Power down the host system completely. Disconnect all power cables from the PSU. Wait 30 seconds for capacitors to discharge.

2. Open the chassis and locate a PCIe x16 slot with dual-width clearance. Verify the adjacent slot is unoccupied or compatible with the QUAC 100's heatsink profile (15mm above PCB).

3. Remove the blank bracket(s) from the rear of the chosen slot position. Two blanks must be removed for the dual-width card.

4. Align and insert the card into the PCIe x16 slot. The gold edge connector (38.1mm fingers, 164 pins) should align with the slot. Apply firm, even pressure until the retention clip at the end of the slot engages. Do not rock the card side to side.

5. Connect auxiliary power. The QUAC 100 requires two 8-pin auxiliary power connectors in addition to PCIe slot power (190W TDP). Connect both 8-pin cables from the PSU before proceeding.

QUAC 100 Power Budget
Power RailSourceVoltageTypical Power
VCC_12VPCIe Slot + 2× 8-pin Aux12V ±8%180W
VCC_3V3_AUXPCIe Slot (3.3V pins)3.3V ±9%10W
Total TDP190W

6. Secure the bracket with the chassis screw. Verify the card sits evenly in the slot and the bracket is flush with the chassis.

7. Reconnect power and boot the system. Observe the card's status LEDs through the bracket ventilation cutouts during POST.

LED Status Indicators

LEDColorStateMeaning
PWRGreenSolidPower good, all rails within tolerance
LINKGreenSolidPCIe link established at Gen4 x16
LINKAmberSolidPCIe link established but degraded (fewer lanes or Gen3)
ACTBlueBlinkingCryptographic operations in progress
TEMPGreenSolidTemperature within normal range (<70°C)
TEMPAmberSolidTemperature warning (70–85°C)
TEMPRedSolidTemperature critical (>85°C) — thermal throttling active
ERRRedSolidHardware error — check driver logs

Driver Installation #

Linux Driver

The QUAC 100 Linux driver is a kernel module that creates /dev/quac0 (and /dev/quac1, etc. for additional cards). It supports DKMS for automatic rebuilding on kernel updates.

# Install build dependencies (Ubuntu/Debian)
sudo apt-get install build-essential dkms linux-headers-$(uname -r)

# Install build dependencies (RHEL/Rocky)
sudo dnf install kernel-devel kernel-headers gcc make dkms

# Extract and install
tar xzf quac100-driver-1.0.0-linux.tar.gz
cd quac100-driver-1.0.0/
sudo make install        # Builds and installs the kernel module
sudo modprobe quac100    # Load the driver

# Enable automatic loading on boot
echo "quac100" | sudo tee /etc/modules-load.d/quac100.conf

# Set device permissions (for non-root access)
sudo cp 99-quac100.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger

Windows Driver

# Option 1: MSI Installer (recommended)
# Right-click quac100-driver-1.0.0-win64.msi → Install
# Requires Administrator privileges and may require reboot

# Option 2: Manual INF installation
# Open Device Manager → Processing accelerators → right-click → Update driver
# Browse to extracted driver folder → Select quac100.inf

# Verify installation
Get-PnpDevice -FriendlyName "*QUAC*" | Select-Object Status, FriendlyName
# Status       FriendlyName
# ------       ------------
# OK           Dyber QUAC 100 Cryptographic Accelerator

Firmware Verification #

After driver installation, verify the card's firmware version and run the built-in self-test (BIST):

# Check firmware version
quac-info --firmware
# Firmware Version: 1.2.0 (Build 12345, Security Rev 7)
# BMC Firmware:     1.1.0
# Boot Loader:      1.0.0 (factory)

# Run Built-In Self-Test
quac-selftest
# ═══════════════════════════════════════════
# QUAC 100 Built-In Self-Test (BIST)
# ═══════════════════════════════════════════
# HBM2e Memory Test:             PASS
# NTT Engine Verification:       PASS (16 engines @ 1 GHz)
# ML-KEM Known-Answer Test:      PASS
# ML-DSA Known-Answer Test:      PASS
# SLH-DSA Known-Answer Test:     PASS
# QRNG Health Test:              PASS (>800 Mbps conditioned output)
# Temperature Sensors:           PASS (42°C)
# Power Rails:                   PASS (all within tolerance)
# ═══════════════════════════════════════════
# Result: ALL TESTS PASSED
Note: If the firmware is outdated, see the Firmware Update Guide for upgrade procedures. Firmware updates use dual-partition failover with automatic rollback on failure.

SDK Installation #

The QuantaCore SDK provides native C/C++ libraries, language bindings, standard interface providers, development tools, and a hardware simulator.

SDK Components
ComponentDescriptionInstall Path (Linux)
libquac100.so / .dllNative C/C++ shared library/opt/dyber/quantacore/lib/
quac100.hC/C++ header file/opt/dyber/quantacore/include/
quantacore-osslOpenSSL 3.x provider module/opt/dyber/quantacore/lib/ossl-modules/
libquac-pkcs11.soPKCS#11 v2.40 module/opt/dyber/quantacore/lib/
quantacore (Python)Python 3.8+ bindingspip install quantacore
quantacore-rsRust cratecargo add quantacore
quac-simHardware simulator/opt/dyber/quantacore/bin/
quac-info, quac-benchDiagnostic and benchmark tools/opt/dyber/quantacore/bin/
# Linux full SDK installation
tar xzf quantacore-sdk-1.0.0-linux-x86_64.tar.gz
cd quantacore-sdk-1.0.0/
sudo ./install.sh

# Add to your shell environment
echo 'source /opt/dyber/quantacore/env.sh' >> ~/.bashrc
source ~/.bashrc

# Install Python bindings
pip install quantacore

# Install Rust crate (add to Cargo.toml)
# [dependencies]
# quantacore = "1.0"

# Verify SDK
quac-info
quac-bench --quick

Post-Installation Validation #

Run the full validation suite to confirm the installation is complete and the card is operating within specification:

$ quac-validate --full

═══════════════════════════════════════════════════
QUAC 100 Installation Validation Report
═══════════════════════════════════════════════════

Hardware:
  Platform:       AMD Versal HBM — PASS
  PCIe Link:      Gen4 x16 — PASS
  Power Input:    12.02V / 35W idle — PASS
  Temperature:    42°C (ambient 23°C) — PASS
  HBM2e Memory:   32 GB @ 819 GB/s — PASS

Firmware:
  Version:        1.2.0 (current) — PASS
  Self-Test:      All KAT vectors verified — PASS
  QRNG Health:    SP 800-90B compliant — PASS

Driver:
  Module:         quac100 v1.0.0 loaded — PASS
  Device Node:    /dev/quac0 accessible — PASS
  Permissions:    Group 'quac' configured — PASS

SDK:
  Library:        libquac100.so.1.0.0 — PASS
  OpenSSL:        Provider loaded — PASS
  PKCS#11:        Module functional — PASS

Performance (quick check):
  ML-KEM-512:     1.18M ops/sec — PASS (≥1M target)
  ML-KEM-768:     795K ops/sec — PASS (≥500K target)
  QRNG:           125 MB/sec — PASS (≥100 MB/sec target)

═══════════════════════════════════════════════════
Result: INSTALLATION VALIDATED — ALL 14 CHECKS PASSED

Environmental Specifications #

ParameterOperatingStorage
Temperature0°C to +50°C-40°C to +85°C
Humidity10% to 90% (non-condensing)5% to 95% (non-condensing)
Altitude0 to 3,048m (10,000 ft)0 to 12,192m (40,000 ft)
Vibration0.5G, 5–500 Hz1.0G, 5–500 Hz
Shock10G, 11ms half-sine30G, 11ms half-sine
Airflow Requirement≥200 LFM across cardN/A

Hardware Specifications Summary #

SpecificationDetails
FPGA PlatformAMD Versal HBM
Form FactorPCIe full-height, 3/4 length, dual-slot
Host InterfacePCIe Gen5 x8x8 (or Gen4 x16)
Memory32 GB HBM2e DRAM (2× 16GB stacks), 819 GB/s bandwidth
NTT Engines16 parallel Radix-32 units @ 1 GHz
QRNG Output>800 Mbps conditioned entropy
Power190W TDP (two 8-pin auxiliary power connectors required)
CoolingPassive heatsink (requires ≥200 LFM airflow)