面壁UNH IOL NVMe一致性测试之20 – Controller Architecture

原创内容,转载请注明:  [http://www.ssdfans.com]  谢谢!

Group 6 测试 Controller Architecture

Test 6.1 – Controller Level Reset – Conventional Reset

测试步骤

  1. Host对SSD执行Conventional Reset
    1. PCIe warm reset (如果可行);
    2. PCIe Cold reset
  2. Reset完成以后,Host发送1个write command和1个read command给SSD;

期望结果

  1. Reset以后,SSD可以正常完成write/read command;
  2. 当Host启动reset以后, SSD应该:
    1. 停止所有当前Admin、IO Command;
    2. 删除所有的IO SQ;
    3. 删除所有的IO CQ;
    4. SSD进入Idle state,reset完成后RDY=0h;
    5. NVMe spec section3里定义的所有register,以及NVMe 部分内部状态都被reset;

 

Test 6.2 – Controller Level Reset – Function Reset

测试步骤

  1. Host读取FLRC;
  2. Host读取PXDC PCIe寄存器的Initiate Function Level Reset字段;
  3. Host对该字段写1,启动FLR;
  4. Reset完成以后,Host发送1个write command给SSD;

期望结果

  1. FLRC=1,代表支持FLR;
  2. PXDC PCIe寄存器的Initiate Function Level Reset字段初始值为0;
  3. Reset以后,SSD可以正常完成write command;
  4. 当Host启动FLR以后, SSD应该:
    1. 停止所有当前Admin、IO Command;
    2. 删除所有的IO SQ;
    3. 删除所有的IO CQ;
    4. SSD进入Idle state,reset完成后RDY=0h;
    5. NVMe spec section3里定义的所有register,以及NVMe 部分内部状态都被reset;

 

Test 6.3 – Controller Level Reset – Controller Reset

测试步骤

  1. Host对SSD的EN写0;
  2. Reset完成以后,Host发送1个write command和1个read command给SSD;

期望结果

  1. Reset以后,SSD可以正常完成write/read command;
  2. 当Host启动Controller Reset以后, SSD应该:
    1. 停止所有当前Admin、IO Command;
    2. 删除所有的IO SQ;
    3. 删除所有的IO CQ;
    4. SSD进入Idle state,reset完成后RDY=0h;
    5. 除Admin Queue Registers (AQA,ASQ,ACQ)以外,NVMe spec section3里定义的所有register,以及NVMe 部分内部状态都被reset;

 

Test 6.4 – Controller Level Reset – NVMe Subsystem Reset

测试步骤

  1. Host读取NSSRS确定SSD是否支持写入CAP.NSSRC字段。如果NSSRS=0,本测试无效,如果NSSRS=1,继续步骤3;
  2. Host读取并记录NSSRO, 如果该值非0,对SSD执行一次重新上电然后重新开始本测试;
  3. Host对NSSRC写入“4E564D65h”(NVMe);
  4. Reset完成以后,PCIe链路重新建立,SSD被使能,Host发送Identify Command;

期望结果

  1. Reset以后,SSD可以正常回复Identify command;
  2. 读取NSSRO,确保值为1;
  3. 当Host启动NVM Subsystem Reset以后, SSD应该:
    1. 停止所有当前Admin、IO Command;
    2. 删除所有的IO SQ;
    3. 删除所有的IO CQ;
    4. SSD进入Idle state,reset完成后RDY=0h;

NVMe spec section3里定义的所有register,以及NVMe 部分内部状态都被reset;

分类目录 SSD, 技术文章.
扫一扫二维码或者微信搜索公众号ssdfans关注(添加朋友->点最下面的公众号->搜索ssdfans),可以经常看到SSD技术和产业的文章(SSD Fans只推送干货)。
ssdfans微信群介绍
技术讨论群 覆盖2000多位中国和世界华人圈SSD以及存储技术精英
固件、软件、测试群 固件、软件和测试技术讨论
异构计算群 讨论人工智能和GPU、FPGA、CPU异构计算
ASIC-FPGA群 芯片和FPGA硬件技术讨论群
闪存器件群 NAND、3D XPoint等固态存储介质技术讨论
企业级 企业级SSD、企业级存储
销售群 全国SSD供应商都在这里,砍砍价,会比某东便宜20%
工作求职群 存储行业换工作,发招聘,要关注各大公司招聘信息,赶快来
高管群 各大SSD相关存储公司高管和创始人、投资人

想加入这些群,请微信扫描下面二维码,或搜索nanoarchplus,加阿呆为微信好友,介绍你的昵称-单位-职务,注明群名,拉你进群。SSD业界需要什么帮助,也可以找阿呆聊。