{
  "slug": "nvme-placement-identifier",
  "term": "NVMe placement identifier",
  "aliases": [
    "FDP placement identifier",
    "PID (FDP)"
  ],
  "definition": "An FDP value combining a reclaim group identifier with a namespace-scoped placement handle that maps to a reclaim unit handle.",
  "note": "The placement identifier supplements the logical block address; it does not replace it or directly name a NAND page. [base] Namespace mappings mean that a placement handle number must not be assumed equal to the controller's RUH identifier. [nvm] Use reported status descriptors rather than assuming every namespace exposes the same identifiers. [xnvme]",
  "related": [
    "nvme-fdp",
    "nvme-reclaim-unit",
    "nvme-reclaim-unit-handle",
    "namespace-nvme"
  ],
  "advantages": [],
  "limitations": [
    {
      "text": "Available identifiers and mappings are configuration-dependent, not universal constants.",
      "citationIds": [
        "nvm",
        "xnvme"
      ]
    }
  ],
  "citations": [
    {
      "id": "base",
      "title": "NVM Express Base Specification 2.1 (5 August 2024), sections 1.5.73-74 and 1.5.82-84: FDP terminology.",
      "url": "https://nvmexpress.org/wp-content/uploads/NVM-Express-Base-Specification-Revision-2.1-2024.08.05-Ratified.pdf",
      "accessed": "2026-10-12"
    },
    {
      "id": "nvm",
      "title": "NVM Express NVM Command Set Specification 1.1 (5 August 2024), section 3.2.1.1 Figure 20 and section 4.1.6 Figure 125.",
      "url": "https://nvmexpress.org/wp-content/uploads/NVM-Express-NVM-Command-Set-Specification-Revision-1.1-2024.08.05-Ratified.pdf",
      "accessed": "2026-10-12"
    },
    {
      "id": "xnvme",
      "title": "xNVMe v0.7.5 tutorial: Flexible Data Placement, log pages and feature controls.",
      "url": "https://xnvme.io/tutorial/fdp/index.html",
      "accessed": "2026-10-12"
    }
  ],
  "status": "limited",
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-10-12"
}
