![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
OCP
文章平均质量分 85
古猫先生
长期混迹存储领域,先后供职于知名半导体外企和互联网存储研发,欢迎留言or私信交流~
展开
-
OCP NVME SSD规范解读-15.DSSD set feature功能要求-2
在进行这些特性设置时,规范要求设备遵循一系列严格的规定,如在Set Feature命令中正确设置参数,并在设备不支持特定特性时返回适当的错误代码(如无效字段错误),确保设备和主机间的交互正确且可预测。此外,设备必须确保在进行这些特性设置时不会影响到设备的正常运行,尤其是在设置与设备运行状态紧密相关的特性时,例如功率状态或延迟监控时,设备需要确保过渡平滑且不影响数据完整性。每个DSSD特有的Set Feature操作都具有特定的适用范围,要么作用于命名空间(Namespace),即仅影响特定存储区域的特性;原创 2024-03-27 23:37:28 · 1302 阅读 · 0 评论 -
OCP NVME SSD规范解读-15.DSSD set feature功能要求-1
需要注意的是,根据规范要求,设备在接收到此Set Feature命令后,应确保正确地清零所有与PCIe接口相关的可纠正错误计数器,并在完成清零操作后返回相应的状态信息,确保主机系统能够确认命令执行成功与否。通过此特性设置,当PLP功能失效时,设备可以被配置成进入某种安全模式,比如停止接受新的写入操作,或者将当前缓存中的数据尽快写回闪存,尽量减少数据丢失的风险。命令作用范围:错误注入功能属于NVM子系统层级的特性,这意味着错误注入命令会影响整个固态硬盘的非易失性存储子系统,而不仅仅局限于特定的命名空间。原创 2024-03-27 23:36:54 · 1157 阅读 · 0 评论 -
OCP NVME SSD规范解读-14.Firmware固件升级要求
设备当前状态保持不变:在固件激活过程中,不论设备目前处于何种状态,如Opal锁定状态(一种加密锁定机制),每个特性(Features)的当前值,时间戳,I/O提交/完成队列设置等核心运行状态都应该得到保留,不受固件升级过程的影响。已配置的各项特性参数应保持不变;综上所述,4.11节着重规定了固件更新的各个环节,从固件下载、激活、错误处理、安全性保障,到与其它功能如延迟监控的协同配合,以及与主机通信的事件通知机制等方面,均制定了详细而严谨的要求,确保数据中心NVMe SSD固件更新过程的安全、高效和可控。原创 2024-03-22 22:24:32 · 1151 阅读 · 0 评论 -
OCP NVME SSD规范解读-13.Self-test自检要求
在数据中心NVMe SSD的语境下,鲁棒性表现为即便在复杂的、高负载的服务器环境中(如存在大量并发的I/O活动),设备的自检功能也能够在各种不利条件下坚持执行,并不会因为未能在规定的完成时间内完成全部测试就失效或崩溃。例如,在连续两次执行自我测试时,如果第二次测试发生在第一次成功完成后不久,则第二次的Media Check Extended应当检查不同的逻辑块地址(LBAs),并在必要时进行循环扫描,以覆盖尽可能多的存储区域,避免每次测试重复同一部分而导致某些潜在问题遗漏。原创 2024-03-19 22:24:18 · 1099 阅读 · 0 评论 -
OCP NVME SSD规范解读-12.Telemetry日志要求
规定,在Telemetry控制器触发和主机触发的日志页面中,原因标识符字段应当始终记录最新的故障标识符,即便设备经历电源循环或复位,也不应清除这些标识符,以保持故障历史记录的一致性和连续性。Media Debug Class (08h):介质相关的事件,例如NAND闪存芯片的操作错误,如编程失败、擦除失败、读取错误等,有助于评估和改善闪存介质的可靠性和耐久性。主机和控制器触发的Telemetry日志页面中,无论数据来自何处,数据区域1和2所报告的信息应始终保持一致,以确保跨不同触发源的数据统一和易于比较。原创 2024-03-15 22:38:53 · 1408 阅读 · 0 评论 -
OCP NVME SSD规范解读-11. 电源状态管理要求
例如,DSSD Power State Set Feature命令需要正确填充相关字段,包括用来指示是否要在所有电源循环和复位后持续保存DSSD功率状态的“Save”位(`SDSSDPS-10`中的第31位),以及指定要设置的DSSD功率状态数值的字段(`SDSSDPS-14`中的6:0位)。通常,DSSD功率状态的数量会大于NVMe功率状态,因此当选择的DSSD功率状态编号对应的瓦特值无法精确匹配任何一个NVMe功率状态的最大功率时,设备会选择最接近但不超过该瓦特值的NVMe功率状态。原创 2024-03-13 22:47:13 · 1369 阅读 · 0 评论 -
OCP NVME SSD规范解读-8.SMART日志要求-4
这个数值应当等同于Endurance Group Log(标识符为09h)中的“Endurance Estimate ”字段值,这个基于闪存芯片的固有特性以及其可承受的擦写次数来计算的,它反映了设备能够安全存储数据的最大总字节数量,同时也是评估设备寿命和剩余可用空间的一个关键指标。值得注意的是,这个计数器并不包含对PLP健康检查操作的统计。值得注意的是,当设备经历复位操作或者电源循环导致的初始化过程中的链路训练阶段,并不会增加此计数器的值,因为这是正常启动流程的一部分,而不是运行时发生的突发状况。原创 2024-01-31 22:27:09 · 1339 阅读 · 0 评论 -
OCP NVME SSD规范解读-8.SMART日志要求-3
然而,当该字段值为0%时,并不绝对意味着设备肯定无法正确关机,但这是一个警示信号,表明电容器的健康状态已非常低,可能对系统的断电保护造成威胁。因此,在产品生命周期初期,通常设备会在这个字段中报告超过100%的数值,因为实际运行中的电容器性能可能优于出厂设定的标准阈值。换句话说,空闲区块百分比(% Free Blocks)计算公式是 A / (A + B),其中A代表当前已被擦除准备写入新数据的NAND块的数量,而B则是正等待被擦除处理以备后续写入操作的NAND块数量。已经被擦除并可以立即用来写入用户数据。原创 2024-01-31 22:26:26 · 954 阅读 · 0 评论 -
OCP NVME SSD规范解读-8.SMART日志要求-2
为确保已存储数据的安全性和完整性,SSD控制器会将受影响的数据从有故障或不稳定的块迁移到新的、可靠的备用块上,这个过程称为“重新分配”。如果是全零向量,则说明接收到的信息是正确的;这些常规操作虽然也会导致数据块在物理层面的位置发生变化,但它们的目的并不是直接出于修复数据完整性的考虑,因此不在这个特定计数器的统计范围内。SMART-8:端到端修正计数可能是指在DRAM、SRAM或其他存储元件中检测并纠正的数据完整性错误总数,这包括整个I/O路径中的所有层次保护机制,而不局限于NAND闪存本身的ECC。原创 2024-01-29 23:30:26 · 1097 阅读 · 0 评论 -
OCP NVME SSD规范解读-8.SMART日志要求-1
需要注意的是,用于记录归一化值的空间是2个字节(对应16位),而RAW计数占用的空间则是6个字节(对应48位)。当执行获取SMART / Health Information(标识符02h)或SMART / Health Information Extended(标识符C0h)日志页面命令时,除了温度值外,不应导致除温度以外的SMART值更新。写放大WAF是NAND-based SSD寿命消耗的关键参数,WAF越大,寿命消耗越快,越接近1,则寿命消耗越慢,也是最理想的情况。原创 2024-01-29 23:29:45 · 1158 阅读 · 0 评论 -
OCP NVME SSD规范解读-7.TCG安全日志要求
TCGHST-PE-4:除非为了在持久事件日志中腾出空间记录额外的TCG活动事件,否则不得因TCG特定原因(如TCG Revert/RevertSP或TCG Manufactured-Inactive)删除TCG活动事件条目。TCGHST-PE-1:规定NVME设备必须支持在持久事件日志中至少记录100个TCG活动事件,并且不允许为了记录新的事件而删除旧的TCG活动事件。TCG活动事件采用特定的格式进行编码,包括事件类型、时间戳、相关对象标识符及描述事件详细信息的数据字段,以便于日志解析和分析。原创 2024-01-22 20:44:34 · 1136 阅读 · 0 评论 -
Windows系统Copilot使用方案
在Windows环境中启用和使用Copilot的一般步骤和方案概述:Win + C。原创 2024-01-10 21:48:08 · 1170 阅读 · 0 评论 -
OCP NVME SSD规范解读-6.标准日志要求-2
不包含用户数据或不能用于推导用户数据的信息(如Telemetry Host-Initiated和Controller-Initiated日志页、持久事件日志页、错误信息日志页、供应商特定日志页、SMART/Health Information日志页以及SMART/Health Information Extended日志页等)应在电源损失、所有重置、格式化NVM命令、清除操作后保留下来,即使设备进入任何保护模式(例如只读或恐慌模式),亦应如此。,其标识符为0x19h,以便评估设备接收端信号完整性。原创 2024-01-10 21:18:23 · 1120 阅读 · 0 评论 -
OCP NVME SSD规范解读-6.标准日志要求-1
STD-LOG-1 至 STD-LOG-9:nvme设备需要支持SMART/Health Information Log Page (02h)、Error Information Log Page (01h)、Namespace and Format Information Log Page (08h) 等,这部分没有什么特别的,就是一些NVME协议的基本要求。但是跟NVME协议相比,有些NVME Optional的项也是在OCP里面要支持的,比如0C、0D、DE页面等。针对,STD-LOG-11定义的“原创 2024-01-10 21:17:36 · 1353 阅读 · 0 评论 -
OCP NVME SSD规范解读-5.命令超时限制-2
CTO-9:设备应在Sanitize Status日志页面的Estimated Time for Crypto Erase字段中报告Sanitize Crypto Erase、Format NVM Cryptographic Erase、TCG Opal Revert、TCG Opal RevertSP或TCG Opal GenKey中的较大时间。RPMB是Replay Protected Memory Block的缩写,他的存在目的是用来给系统存放一些特殊的、需要进行访问授权的数据。原创 2024-01-08 20:13:25 · 1294 阅读 · 0 评论 -
OCP NVME SSD规范解读-5.命令超时限制
在CTO-1的要求中,规定在没有其他未完成命令的情况下,命令的执行时间不应超过10秒。这意味着在评估命令执行时间时,只考虑单个命令的情况,而不考虑队列中可能存在的其他命令。这个要求的主要目的是为了确保NVMe设备在达到特定条件后能够及时、有效地处理I/O命令,防止由于个别命令执行时间过长而导致的系统性能下降和用户体验不佳。通过限定在QD1的情况下评估命令执行时间,可以更准确地衡量单个I/O命令的处理能力,而不受其他并发命令的影响。CTO-1不适用于由设备自测和净化命令启动的后台操作的时间。原创 2024-01-08 20:12:42 · 959 阅读 · 0 评论 -
OCP NVME SSD规范解读-4.NVMe IO命令-2
如果Write Zeroes命令的DEAC位设置为1b,且FUA位清除为0b,设备应释放指定的块,并在随后对指定块的任何读取操作中返回零值,直到被其他命令(如Write, Copy等)修改,无论Dataset Management命令的行为如何。设备应支持Compare and Write fused command pair,这是一种将比较和写入操作组合在一起的优化命令,可以提高效率。设备应支持Compare命令,该命令用于比较设备上的数据和主机提供的数据。但是,在OCP规范中,原创 2023-12-29 22:18:32 · 1718 阅读 · 0 评论 -
OCP NVME SSD规范解读-4.NVMe IO命令-1
而且,根据TRIM-2的要求,一旦设备释放了一个逻辑块,对该逻辑块的读操作应当返回所有字节清零为0h,直到该逻辑块被其他命令(如Write,Copy等)修改。因此,Dataset Management的Deallocate操作与Trim命令在功能上是相似的,都是为了通知SSD哪些逻辑块可以被重新使用。Trim命令则是操作系统向SSD发出的一种指示,告知某些已删除的文件所在的逻辑块现在是空闲的,可以被SSD内部的垃圾回收机制重新使用。SSD可能会在后台处理接收到的TRIM命令,而不是立即执行。原创 2023-12-29 22:15:50 · 1078 阅读 · 0 评论 -
OCP NVME SSD规范解读-3.NVMe管理命令-part2
这表示在某些特定情况下,如果设备无法在sanitize操作成功完成后返回零(即无法确保已擦除的数据区域被填充为零),即使Sanitize命令设置了No-Deallocate After Sanitize位为1b(表示请求在sanitize操作后不进行deallocations),设备也应该执行deallocations。当使用这个特定的UUID或者一个零UUID Index,以及规范中使用的供应商特定的Log Page Identifier时,这个命令将访问到规范中定义的供应商特定的日志页。原创 2023-12-28 20:35:09 · 1704 阅读 · 0 评论 -
OCP NVME SSD规范解读-3.NVMe管理命令-part1
NVMe-AD-7:设备应支持Sanitize命令,并支持Block Erase(010b)、Overwrite(011b)和Crypto Erase(100b)sanitize操作。NVMe-AD-3和NVMe-AD-4:在一个NVMe设备中,可以创建多个命名空间,每个命名空间都有自己的LBA(逻辑块地址)范围、容量和其他特性,也就是nvme协议规定的multi-namespace。NVMe-AD-5和NVMe-AD-6:设备应支持格式NVM命令,并支持安全擦除设置值000b、001b和010b。原创 2023-12-28 20:34:54 · 1022 阅读 · 0 评论 -
OCP NVME SSD规范解读-2.复位与控制器配置要求-part2
Non-Zero NGUID per Namespace: 设备应支持每个命名空间的非零NGUID,并且这个值永远不会被重用(即Identify Namespace数据结构的Common Namespace Features字段中的UIDREUSE位应设置为'1')。Doorbell Stride and Location: Doorbell Stride字段应清零,所有Doorbells应放置在单一连续的4096字节MMIO空间中,并且对齐到4096字节边界。这有助于提高数据传输的效率和性能。原创 2023-12-27 23:40:05 · 1233 阅读 · 0 评论 -
OCP NVME SSD规范解读-2.复位与控制器配置要求-part1
详细列出了设备在控制器配置和行为方面应满足的一系列要求,包括默认仲裁策略、最大数据传输大小、CSTS.CFS报告、最小队列深度、I/O队列对的数量、命名空间的EUI64字段设置、非零NGUID的使用、Doorbell Stride和Controller Power Scope字段的设置、对NVM命令集的支持、最大Submission和Completion Queue Entry Size,以及Memory Page Size Minimum的设定等。:这是一种较低级别的重置操作,只针对NVMe控制器本身。原创 2023-12-27 23:39:37 · 1301 阅读 · 0 评论 -
OCP NVME SSD规范解读-1
在OCP中,各成员公司(包括Facebook、Microsoft、HPE、Dell EMC等)共同协作,贡献他们的设计和规格,以创建更高效、可扩展和可持续的数据中心解决方案。此外,文档还涉及到设备配置、性能要求、标签要求、合规性、冲击和振动、可持续性要求、NVMe Linux CLI插件要求、修订历史、特定供应商项目(如META和Microsoft的特定项目)以及延迟监控功能集的操作理论等内容。安全性:涵盖了基本安全要求、安全启动、DMTF安全协议和数据模型、数据加密和消除、TCG实施要求等。原创 2023-12-25 22:04:37 · 1934 阅读 · 0 评论