Skip to content
Lukas edited this page Jul 20, 2026 · 5 revisions

spd-matchtable wiki

This wiki explains, in technical depth, what every value spd_matchtable.py reads or computes actually means physically — not just the abbreviation, but why the parameter exists in DDR4's protocol, what happens if you get it wrong, and why this tool handles it the way it does. The tool's own --selftest and source comments establish correctness; this wiki is where the why lives.

Written to be read start to finish by someone who's never tuned RAM timings before, but precise enough to be useful to someone who has.

Pages

Timings — what each one physically gates

The data model

Methodology

  • Worst Case Methodology — why "take the max per parameter" is almost right, and the one place it isn't
  • Voltage — what VDD actually trades off, physically
  • FAQ and Design Decisions — why not bash, why read-only, why offline files, why 80 columns, "why not just trust XMP"

Where the numbers come from

Every byte offset and formula referenced across these pages was independently verified against this project's own reference kit — a live 4-module mixed DDR4 set (2× Kingston KF3200C16D4/16GX dual-rank, plus KF432C16BB3/16 and KF432C16BB/8 single-rank) — cross-checked against decode-dimms output and, for the XMP region decode-dimms doesn't parse at all, against integralfx/DDR4XMPEditor. See the main repo's RELEASE_NOTES.md for the specific verification history, including one case where an external review's own claimed byte offset was wrong and had to be re-derived from the struct layout before being trusted.

Built with AI assistance

Stated plainly: this tool, this wiki, and the surrounding repo were built in collaboration with Claude (Anthropic). The correctness/safety fixes in v1.0.1 were prompted by an independent code review from Kimi (Moonshot AI) — which is also the "external review" referenced above, including the case where its own suggested byte offset was itself wrong. Every AI-suggested change, from either model, was checked against real reference hardware and a second independent source before being trusted — that verification discipline is the actual subject of this wiki, not a disclaimer bolted onto otherwise-unverified output.

Clone this wiki locally