All about SSD
Blog นี้จะเป็นการรวบรมทุกอย่างเกี่ยวกับ SSD มารวบรวมไว้ รวมถึงการเลือก SSD มาใช้งาน การดูประสิทธิภาพของ SSD เทคโนโลยีต่าง ๆ ใน SSD
SSD Interface
การเชื่อมต่อ SSD กับเครื่องคอมพิวเตอร์นั้น โดยหลัก ๆ จะแบ่งการเชื่อมต่อตาม Interface หลัก ๆ ก็คือ SATA/SAS กับ NVMe
SATA & mSATA
เป็น Interface ที่ใช้กันแพร่หลาย ซึ่ง interface จะเหมือน Harddisk ที่ใช้งานกันอยู่ ซึ่งสามารถนำ SSD มาใช้แทน HDD ได้เลย โดย interface แบบ SATA ก็จะเป็น interface แบบเดียวกับ HDD ทั่วไป ส่วน mSATA จะเป็นการลดขนาด connector SATA ให้เล็กลง ปัจจุบันไม่ค่อยมีใครใช้ interface นี้
SAS มีความคล้าย port SATA ส่วนใหญ่จะใช้ใน Enterprise Server มักจะเชื่อมต่อผ่าน SAS Controller Card
M.2 SATA Interface
M.2 จะเชื่อมต่อได้ 2 รูปแบบ จะเป็น SATA (B key) หรือ NVMe (M key)ซึ่งจะต้องตรวจสอบกับคู่มือของท่านว่าบอร์ดรองรับแบบใหน บางบอร์ดอาจจะรองรับทั้งสอบแบบ แต่ที่ตัวการ์ด ถ้าพบว่ามีรอยบาก 2 จุด ทั้ง M key และ B key จะต้องเช็คเสป็คการ์ดดูว่าเชื่อมต่อแบบใหน สามารถต่อกับบอร์ดได้หรือไม่
ขนาดของ M.2 card มีหลายขนาด โดยความกว้างจะอยู่ที่ 22 mm ตามความกว้างของ Connector แต่ความยาวจะมีหลากหลายขนาด ซึ่งต้องเช็คที่ตัวบอร์ดว่า support ความยาวของการ์ดขนาดเท่าใหร่ แต่โดยทั่วไปจะอยู่ที่ 22mm x 80 mm หรือ 2280 นั่นเอง
NVMe
M.2 NVMe
M.2 NVMe เป็น Interface M.2 ที่มีร่องบาก M Key คือร่องบากทางซ้าย การ์ด M.2 NVMe ส่วนใหญ่ในปัจจุบันจะบากแค่ M key เท่านั้น
สำหรับ Slot M.2 ที่ Socket แบบ M Key บางบอร์ดอาจเป็น Socket แบบ Combo สามารถใส่ M.2 SATA ได้
U.2 / SFF-8639
U.2 จะพบได้ใน NVMe SSD ที่ทำมาในรูปแบบ SSD 2.5” โดยจะมีพอร์ตเชื่อมต่อคล้าย ๆ SATA และ SAS พบใน Enterprise Server โดยส่วนใหญ่
โดยสรุป M.2 และ U.2 ก็คือ PCI-e Slot ที่เปลี่ยนรูปลดขนาดเพื่อการเชื่อมต่อที่ง่ายขึ้น โดย M.2 ก็เชื่อมต่อโดย form factor ที่เล็กลง U.2 เชื่อมต่อในรูปแบบคล้าย ๆ SAS SSD แบบเดิม นั่นเอง
AIC Card / M.2 Converter
เป็นการ์ด SSD ที่เสียบบน slot PCIe โดยตรง หรือเป็นการ์ดที่เป็น Converter สำหรับใส่การ์ด M.2 NVMe อีกทีหนึ่ง
ในการเลือก SSD แบบ NVMe ควรตรวจสอบสเป็คของ Port M.2/U.2 ก่อนว่ารองรับ PCIe Version ใหน และรองรับกี่ lanes ปัจจุบันส่วนใหญ่จะเป็น PCIe3 x 4 แต่บางรุ่นอาจจะเป็น PCIe3x2 ได้ ต้องตรวจสอบดู
่การเลือก NVMe ที่เร็วกว่าที่ Port รองรับ สามารถใช้งานได้ แต่ความเร็วจะเป็นคอขวด ไม่สามารถวิ่งเต็มตามสเป็คได้ เช่น บอร์ดรองรับ PCIe3x2 แต่ใช้การ์ด M.2 PCIe3x4 ในการใช้งาน การ์ดจะลดลงมาทำงานที่ PCIe3x2 โดยความเร็วในการ transfer ผ่าน PCIe จะเป็นดังตารางด้านล่างนี้
ข้อควรระวังในการซื้อ หากซื้อ SSD NVMe ที่ออกใหม่กว่าเครื่อง มีโอกาสที่ Bios ของเครื่องจะไม่รู้จัก หรือวิ่งไม่เต็มความเร็วได้ เช่น spec วิ่งที่ PCI-e gen3 x 4 อาจลดความเร็วลงมาวิ่งที่ PCI-e gen1 x 4 ได้
เช่น เครื่อง HP-15-db1002db ใส่การ์ด NVMe WD SN550 500GB เจอว่าวิ่งที่ PCI-e gen1 x 2 ซึ่งทดลอง benchmark วิ่งได้แค่ 400 MB กว่า ๆ จาก spec ที่วิ่งได้ 2400 MB ก็เป็นข้อควรระวังไว้
NAND Technology
ชิป NAND Flash ปัจจุบันแบ่งได้เป็น 4 รูปแบบ คือ SLC / MLC / TLC / QLC
ซึ่ง SLC นั้นจะมีความคงทนสูงสุด สามารถอ่านเขียนทับได้นับแสนครั้ง แต่จะเก็บข้อมูลได้น้อย และมีราคาแพง จึงพัฒนาต่อมาเป็น MLC/TLC/QLC ที่ต่อเซลล์สามารถเก็บค่าได้มากขึ้น แลกกับการที่อ่านเขียนทับ (P/E Cycles) ลดลง แต่ก็มีการพัฒนา ssd controller และ Firmware ให้มีการจัดการอ่านเขียนในแต่ละเซลล์อย่างมีประสิทธิภาพสูงสุดก็ช่วยยืดอายุในการใช้งานได้มาก ทำให้ภาพรวมของอายุการใช้งานที่ออกมาดีมาก
นอกจากการเพิ่มจำนวนความจุต่อเซลล์แล้ว อีกหนึ่งเทคโนโลยี คือการเพิ่ม Layer ของเซลล์เก็บข้อมูลของชิป ทำให้เพิ่มความจุได้มหาศาล
ปัจจุบันในตลาดส่วนใหญ่ (2020) จะเป็น TLC Chip และเริ่มมี QLC Chip ออกมาในตลาดมากขึ้น
SSD Chip Controller
SSD Chip Controller เป็นปัจจัยสำคัญส่วนหนึ่งในการเลือก เนื่องจาก Controller จะส่งผลต่อการเชื่อมต่อ PCIe การ cache โดย DRAM หรือ HMB หรือ Function อื่น ๆ เช่น LDPC ECC โดย Controller สำหรับ Entry level นั้นจะไม่มี DRAM มาเป็น cache โดยจะใช้ Host Memory Bus (HMB) หรือหน่วยความจำในเครื่องมาช่วยเป็น Cache ให้ NVMe SSD นั่นเอง
ลิงก์นี้จะมี SSD ในตลาด พร้อมข้อมูลอื่น ๆ ช่วยในการตัดสินใจได้พอสมควร
TBW/DWPD
2 ค่านี้เป็นค่าความคงทนในการเขียนก่อนที่ SSD จะไม่น่าเชื่อถือ ซึ่งในแต่ละยี่ห้ออาจจะบอกหรือไม่บอกค่านี้
TBW = TeraByte Write เป็นค่าที่ SSD สามารถเขียนได้ทั้งหมด
DWPD = Drive Write Per Day ค่าเฉลี่ยที่วันหนึ่ง SSD สามารถเขียนได้
หากเรารู้ค่าใดค่าหนึ่งเราสามารถคำนวณหาอีกค่าได้โดยใช้สูตร
TBW = 366 days x Warranty year x DWPD
DWPD = TBW / (366 Days x Warranty years)
OverProvisioning (OP)
ความจุของ SSD
ความจุของ SSD นั้นมีผลต่อประสิทธิภาพ/ความเร็วของ SSD ด้วย โดยเฉพาะในการเขียน เนื่องจากจำนวนชิป NAND ของรุ่นความจุสูง จะมีชิปมากกว่าซึ่งทำให้การทำงานในแบบขนานออกมาได้ประสิทธิภาพสูงกว่า และอีกส่วนหนึ่งคือค่า TBW/DWPD จะเพิ่มขึ้นจากจำนวนชิปที่เพิ่มด้วย
Over-provisioning
เป็นการสำรองพื้นที่ไว้บางส่วน (ตั้งแต่ 0%-28%) เพื่อใช้งานหลายอย่างที่จำเป็นสำหรับการทำงานของ SSD เช่น cache, swap file หรือ Garbage collection หรือเป็นบล็อคสำรองในกรณีที่เกิด Bad block (เหมือนกับฮาร์ดดิสก์ที่มีเซกเตอร์สำรอง) หากเห็น SSD ความจุแปลก ๆ ที่ไม่เต็ม เช่น 480GB หรือ 900 GB ก็มาจากการทำ Over-provisiong นี้แหละ ซึ่งความจุที่โฆษณาก็จะแล้วแต่ละแบรด์เลยว่าจะเอาค่าใหนมาโปรโมท
https://www.kingston.com/en/ssd/overprovisioning
ซึ่งทางฝั่ง Enterpise SSD หรือฝั่ง Server SSD แต่ละรุ่นนั้นจะมีระบุ Workload ไว้ว่าเหมาะกับแบบได โดยแบ่งเป็น Read Intensive/Mixed Used/Write Intensive
สรุปหลักสำคัญในการเลือก SSD
- หาข้อมูลค่า TBW หรือ DWPD ของ SSD (เพื่อความอึดของ SSD) โดยดูค่า TBW/ปี หรือ DWPD*366 ดูว่า SSD ตัวใหนเขียนได้มากกว่ากัน (ประกันน้อยกว่าแต่ TBW รวมอาจจะมากกว่าก็ได้)
- ดู Controller บน SSD ที่เลือกว่า การเชื่อมต่อเข้ากับ บอร์ดหรือไม่ PCIe g3x4 (ความเร็วของ SSD ก็ขึ้นอยู่กับตรงนี้)
- หากเป็นไปได้ดูตัวที่มี DRAM บนการ์ด จะได้ประสิทธิภาพมากกว่า