Try   HackMD

SSD, SATA, PCIe, NVMe 跟 AHCI

tags: IT

在思考這些名詞時要先想一下幾個問題

  1. 怎麼儲存資料
  2. 怎麼傳輸資料
  3. 怎麼讓軟體跟硬碟溝通

怎麼儲存資料

儲存資料的硬體目前有分
SSD 跟 一般的 HDD
HDD: https://en.wikipedia.org/wiki/Hard_disk_drive
SDD: https://en.wikipedia.org/wiki/Solid-state_drive

怎麼傳輸資料

PCIe 跟 SATA 則是負責解決如何傳遞資料問題
PCIe 是一個標準,透過 PCIe 做出來的插槽會被叫做 PCIe bus
SATA 也是一個標準,透過 SATA 標準做出來的插槽則叫做 SATA bus
那可不可以同時支援 PCIe 跟 SATA ? 答案是有的

叫做 SATAe, 可以同時支援 SATA 跟 PCIe
https://en.wikipedia.org/wiki/SATA_Express

怎麼讓軟體跟硬碟溝通

軟體跟硬體溝通需要靠介面或者驅動程式
NVMe 跟 AHCI 則提供了一個介面讓軟體可以去存取硬碟
由於 NVMe 是特別針對 PCIe,所以只支援 PCIe
AHCI 則是 PCIe 跟 SATA 都有支援,但是效能上就會比 NVMe 還要慢

總結

SSD, HDD -> 儲存裝置
PCIe, SATA -> 傳輸介面(怎麼傳)
NVMe, AHCI -> 控制硬碟的控制介面(怎麼跟硬碟溝通)

Reference

https://kknews.cc/digital/bj6byrj.html
https://blog.xuite.net/a06315/twblog/454025311-NGFF、M.2、PCIe、NVMe是什麼%3F%3F%3F