{
  "slug": "sas-phy",
  "term": "SAS physical PHY",
  "aliases": [
    "SAS PHY",
    "SAS physical phy"
  ],
  "definition": "The SAS physical-layer endpoint containing the transceiver that connects to another physical PHY over a link.",
  "note": "The physical link has a transmit differential pair and a receive differential pair, permitting simultaneous traffic in both directions. A PHY is an endpoint of that link, not the entire port or the external plug. [architecture]\n\nA SAS port contains one or more PHYs, while one connector may carry links belonging to different ports. [ports] Linux exposes PHY and port management separately, so a PHY identifier must be kept with its device and topology context when interpreting link events. [linux-sas]",
  "related": [
    "sas",
    "sas-wide-port",
    "sas-expander",
    "sas-phy-event-counters"
  ],
  "citations": [
    {
      "id": "architecture",
      "title": "IBM Power6 documentation: SAS architecture",
      "url": "https://www.ibm.com/docs/en/power6?topic=overview-sas-architecture",
      "accessed": "2026-10-17"
    },
    {
      "id": "ports",
      "title": "Oracle HBA guide: SAS phys, ports, addresses and connectors (2010), appendix G",
      "url": "https://docs.oracle.com/cd/E19269-01/820-1847-20/appendixg.html",
      "accessed": "2026-10-17"
    },
    {
      "id": "linux-sas",
      "title": "Linux kernel documentation: SAS Layer",
      "url": "https://docs.kernel.org/scsi/libsas.html",
      "accessed": "2026-10-17"
    },
    {
      "id": "sas-manual",
      "title": "Seagate SAS Interface Manual, Rev. C (2009), sections 2.1.2, 2.1.4 and 5.11.1-2",
      "url": "https://www.seagate.com/staticfiles/support/disc/manuals/Interface%20manuals/100293071c.pdf",
      "accessed": "2026-10-17"
    }
  ],
  "provenance": [
    "Scope is the physical PHY; the SAS architecture also uses logical and virtual PHY concepts. Seagate Rev. C sections 1.3.3 and 2.1.2 distinguish them. [sas-manual]"
  ],
  "status": "shipping",
  "advantages": [],
  "limitations": [],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-10-17"
}
