Allion Labs / Blake Chu

近年来,不论是一般个人桌面计算机、笔记本电脑,甚至一些新世代的服务器中,都可以看到所谓的NVMe SSD的踪迹,这种NVMe SSD跟以往的SSD又有什么不同呢?

NVMe (Non-Volatile Memory) SSD,是基于PCIe接口下的SSD,存取数据透过PCIe总线附加的非挥发性内存媒介,为一种新型态的固态内存传输协议,与先前SSD最大的差异,便是传输接口的不同。也就是说,NVMe这个协定就是专为SSD量身打照,与先前SSD使用SATA协议相比,SATA协议是从HDD发展过来,对SSD这高速低延迟的储存装置来说,就显得绑手绑脚。受惠于传输接口的进步,NVMe SSD明显提升不少速度,一口气从原本SATA 6G (600MB/s)的速度,到目前最新Gen4 x4 Lane (7.88GB/s)的速度。

除了速度方面的提升,NVMe同时也有效降低延迟。如同前面所提到,NVMe主要应用于PCIe SSD,原生PCIe主控与CPU直接相连;而不是传统SATA连结方式,通过南桥控制器中转,再连接CPU。除了具备高速低延迟的特性以外,NVMe SSD从外观来看,最明显的差别便是支持M.2 slot这个链接接口,对比早期SATA接口2.5吋 SSD,体绩明显缩小许多,让笔记本电脑可以更加轻薄。

在NVMe SSD逐渐成为市场主流的情况,厂商如何在市场上得到青睐?一款NVMe SSD产品,除了内部层层测试,也少不了送出去进行各种认证测试。最直接的方式便是透过「Protocol Test(协议测试)」以及「Regression Test(回归测试)」来验证其产品是否能通过测试。我们与知名测试验证工具开发商Ulink合作,利用其开发的测试工具来对NVMe SSD进行验证。那Protocol test以及Regression test是什么测试内容?以下为两个测试相关介绍:

  1. NVMe Protocol Test:

为了验证NVMe SSD功能是否正常符合Spec规范(NVM Express 1.3d),利用Protocol Test针对controller进行functional check,确认回传值是否符合spec规范。Protocol Test测试项目如下:

  1. Abort
  2. Create/Delete IO Queue
  3. Async Event Request
  4. Device Self Test
  5. Sanitize
  6. Controller Capabilities
  7. Identify
  8. Get Log
  9. Get/Set Feature
  10. Compare
  11. Flush
  12. Read, Write, Write Uncorrectable, Write Zero
  13. Power States
  14. Data Set Management
  15. Firmware Download
  16. Format NVM
  17. NVM Resets
  1. NVMe Regression test:

在上面功能验证是否符合spec后,接着进行数据读写验证。除了在正常power cycle下的数据读写是否能正常以外,我们也会验证在非预期断电的情况下,SSD是否能正常起动断电保护机制,确保数据正确性。最后我们也会依照JEDEC定义的工作量(JEDEC 219A)进行长时间的压力测试,确保SSD能在长时间读写下依然能保证其数据正确性。Regression Test测试项目如下:

  1. Power Cycle with Random commands
  2. Power Cycle with Data compare
  3. MD5 with power cycle
  4. JEDEC Workload Client/Enterprise

除了提供NVMe SSD Protocol Test & Regression Test验证报告以外,我们可以针对产品无法通过验证的测项进行结果分析,协助厂商解决并通过验证。相信透过这两大项测试层层把关,通过严苛考验的产品能在市面上带给客户信任感。

对于现今SSD产品来说,不仅Protocol Test & Regression Test的验证,也需要可靠度(Reliability)验证来确保质量。拥有完整设备的百佳泰,亦能提供其他相关类型测试,例如利用高/低温与高/低电压环境条件,对SSD进行可靠度验证;效能方面除能依照客制化条件测试之外,也可提供SNIA client/enterprise test,针对SSD效能进行解析。在SSD领域耕耘多年的百佳泰,能提供兼具广度与深度的测试服务。