Skip to content

dkruces/pcie

Repository files navigation

PCIe Speeds and Feeds Reference

Comprehensive PCIe bandwidth specifications and reference documentation based on official PCI-SIG 2025 standards.

Overview

This repository provides detailed PCIe (PCI Express) bandwidth specifications across all generations from PCIe 1.x through PCIe 8.x+, covering all lane configurations (x1, x2, x4, x8, x16).

Generated Reports

Data Source

All specifications are based on the official PCI-SIG 2025 Speeds/Feeds chart. The data is manually curated in scripts/pcie_data.json to ensure accuracy and compliance with the principle of never generating or synthesizing specification data.

Report Generation

Prerequisites

  • Python 3.x
  • No external dependencies required (uses stdlib only)

Generate Reports

# Validate data integrity
python3 scripts/validate_data.py

# Generate both markdown and HTML reports
python3 scripts/generate_report.py

Scripts

  • scripts/pcie_data.json - Source of truth for PCIe specifications (manually maintained)
  • scripts/generate_report.py - Report generator for markdown and HTML formats
  • scripts/validate_data.py - Data validation and consistency checker

Updating Specifications

When PCI-SIG releases new PCIe generations or updates:

  1. Update scripts/pcie_data.json with the new specifications
  2. Run validation: python3 scripts/validate_data.py
  3. Regenerate reports: python3 scripts/generate_report.py
  4. Commit changes with both the data file and generated reports

Data File Structure

{
  "metadata": {
    "source": "PCI-SIG Official Specifications 2025",
    "last_updated": "2025-10-01",
    "notes": [...]
  },
  "generations": [
    {
      "version": "1.x",
      "transfer_rate": "2.5 GT/s",
      "bandwidth": {...},
      "bandwidth_raw_mbps": {...}
    },
    ...
  ],
  "use_cases": {...},
  "key_insights": [...]
}

Validation

The validation script checks for:

  • Required fields and structure
  • Bandwidth linear scaling across lane configurations
  • Generation-over-generation progression
  • Data type consistency
  • Use cases and insights completeness

Design Principles

No Synthetic Data

Following kdevops standards, this project never generates, synthesizes, mocks, or fakes PCIe specifications. All data in pcie_data.json is manually curated from official PCI-SIG sources.

Automation

While report generation is automated, the source data remains manually maintained to ensure accuracy and traceability to official specifications.

Reference Materials

Related Projects

  • kdevops - DevOps framework for Linux kernel development (submodule)
  • plot-build - Build performance visualization (submodule)

License

Documentation and reports are based on publicly available PCI-SIG specifications. Generation scripts are provided as-is for reference documentation purposes.

About

PCIe speeds

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published