QUAC 100 Installation Guide
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
| Requirement | Minimum | Recommended |
|---|---|---|
| PCIe Slot | Gen3 x16 (mechanical x16) | Gen4 x16 |
| Available Slot Width | Dual-width (2 adjacent slots) | Dual-width with airflow clearance |
| PSU Capacity | 190W available | 650W+ PSU total |
| Auxiliary Power | Two 8-pin PCIe power connectors required | Two 8-pin PCIe power connectors |
| Chassis Airflow | 200 LFM across card | 300+ LFM (server-grade) |
| Operating System | Linux kernel 5.10+ / Windows 10 | Linux 6.1+ / Windows Server 2022 |
| System RAM | 8 GB | 32 GB+ |
| Disk Space (SDK) | 500 MB | 2 GB (with samples and docs) |
Supported Platforms
| Platform | Architecture | Status |
|---|---|---|
| Ubuntu 22.04 / 24.04 LTS | x86_64 | ✓ Fully supported |
| RHEL 8.x / 9.x | x86_64 | ✓ Fully supported |
| Rocky Linux 8.x / 9.x | x86_64 | ✓ Fully supported |
| SUSE Linux Enterprise 15 SP5+ | x86_64 | ✓ Fully supported |
| Debian 11 / 12 | x86_64 | ✓ Fully supported |
| Windows 10 / 11 (22H2+) | x64 | ✓ Fully supported |
| Windows Server 2019 / 2022 | x64 | ✓ Fully supported |
| VMware ESXi 7.0 U3+ | x86_64 | âš¡ SR-IOV passthrough |
| KVM / QEMU | x86_64 | âš¡ VFIO passthrough |
Hardware Installation #
Physical Specifications
Card Length (full-length PCIe)
Card Height (full-height)
Weight (with heatsink)
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.
| Power Rail | Source | Voltage | Typical Power |
|---|---|---|---|
| VCC_12V | PCIe Slot + 2× 8-pin Aux | 12V ±8% | 180W |
| VCC_3V3_AUX | PCIe Slot (3.3V pins) | 3.3V ±9% | 10W |
| Total TDP | 190W | ||
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
| LED | Color | State | Meaning |
|---|---|---|---|
| PWR | Green | Solid | Power good, all rails within tolerance |
| LINK | Green | Solid | PCIe link established at Gen4 x16 |
| LINK | Amber | Solid | PCIe link established but degraded (fewer lanes or Gen3) |
| ACT | Blue | Blinking | Cryptographic operations in progress |
| TEMP | Green | Solid | Temperature within normal range (<70°C) |
| TEMP | Amber | Solid | Temperature warning (70–85°C) |
| TEMP | Red | Solid | Temperature critical (>85°C) — thermal throttling active |
| ERR | Red | Solid | Hardware 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
SDK Installation #
The QuantaCore SDK provides native C/C++ libraries, language bindings, standard interface providers, development tools, and a hardware simulator.
| Component | Description | Install Path (Linux) |
|---|---|---|
| libquac100.so / .dll | Native C/C++ shared library | /opt/dyber/quantacore/lib/ |
| quac100.h | C/C++ header file | /opt/dyber/quantacore/include/ |
| quantacore-ossl | OpenSSL 3.x provider module | /opt/dyber/quantacore/lib/ossl-modules/ |
| libquac-pkcs11.so | PKCS#11 v2.40 module | /opt/dyber/quantacore/lib/ |
| quantacore (Python) | Python 3.8+ bindings | pip install quantacore |
| quantacore-rs | Rust crate | cargo add quantacore |
| quac-sim | Hardware simulator | /opt/dyber/quantacore/bin/ |
| quac-info, quac-bench | Diagnostic 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 #
| Parameter | Operating | Storage |
|---|---|---|
| Temperature | 0°C to +50°C | -40°C to +85°C |
| Humidity | 10% to 90% (non-condensing) | 5% to 95% (non-condensing) |
| Altitude | 0 to 3,048m (10,000 ft) | 0 to 12,192m (40,000 ft) |
| Vibration | 0.5G, 5–500 Hz | 1.0G, 5–500 Hz |
| Shock | 10G, 11ms half-sine | 30G, 11ms half-sine |
| Airflow Requirement | ≥200 LFM across card | N/A |
Hardware Specifications Summary #
| Specification | Details |
|---|---|
| FPGA Platform | AMD Versal HBM |
| Form Factor | PCIe full-height, 3/4 length, dual-slot |
| Host Interface | PCIe Gen5 x8x8 (or Gen4 x16) |
| Memory | 32 GB HBM2e DRAM (2× 16GB stacks), 819 GB/s bandwidth |
| NTT Engines | 16 parallel Radix-32 units @ 1 GHz |
| QRNG Output | >800 Mbps conditioned entropy |
| Power | 190W TDP (two 8-pin auxiliary power connectors required) |
| Cooling | Passive heatsink (requires ≥200 LFM airflow) |