本文说明目前常见的SSD写入保护(Write Protect)的方式,并逐一分析各种方式的优缺点和复杂度。
在工业应用中,产品的可靠度一直是最重要的环节之一;如何确保产品的质量及提高可靠度,也是所有厂商一直努力的目标。为确保数据的完整性,就需要采用SSD的「写入保护」技术。其主要的原理是通过硬件或软件的设定来开启此功能,当SSD固件侦测到写入保护的功能被开启时,虽然仍会接收主机的写入命令,但并不会将数据写入NAND Flash,也就是会将磁盘变成Read-only的模式,主机对于SSD的写入动作将会失效,如此便可保护SSD内数据的完整性。

如上图所示,第一种常见的方式是通过软件来设定写入保护功能,用户使用主机端软件的设定,发送vendor command给SSD,SSD固件在收到此指令后,首先会将写入保护的信息纪录下来,以确保断电后此设定仍然有效,并同时通知FTL (Flash Translation Layer)写入保护已开启。FTL收到后,对于之后所有写入相关的命令,包含TRIM、security erase等,均不会执行写入NAND的动作;但对于SSD本身background写入的功能,例如Data Scan、Refresh、Flush Log等,仍会继续执行。这种作法的优点是不用改变硬件,仅靠软件跟固件的修改就可以达到写保护的效果。

如上图所示,另一种写入保护的方式是通过硬件的设定来启动。首先在SSD的电路板上,设计一个开关,接着将此开关连接到SSD控制器上的GPIO pin。用户若要开启写入保护功能,便可打开此开关;这时SSD内部的固件侦测到此GPIO pin的讯号,就会通知FTL写入保护已开启,接下来的动作则跟第一种作法相同。此作法的优点是用户只要通过硬件开关即可开启写保护设定,不需要使用软件,较为简便;很多SD卡也是用此种方法达到写保护的效果。

如上图所示,第三种就是纯硬件的方式:同样也是在SSD上设计一个开关,但此开关是直接连接到NAND Flash的write protect pin,所以SSD固件不需要修改。此种作法的优点是设计电路板的厂商就能独立完成写入保护的功能,但由于NAND完全无法写入,因此SSD固件的一些功能,如Prevent Read Disturb、Data Retention、Flush Log等,也无法正常执行。
还有一种写入保护是由SSD固件自行启动:由于NAND Flash有一定的寿命,当SSD固件发现NAND Flash使用期限将至时,或是坏块超过设定的上限时,SSD固件就会自动开启写入保护,避免用户因为继续将重要数据写入此SSD,而导致数据毁损。这种写入保护是自己开启的,不需使用者做任何设定,且目前市售的SSD几乎都有此功能。
Our website keeps three levels of cookies. You can adjust your preferences at any time. If you want more information about what cookies are and which cookies we collect, please read our cookie policy.
are essential cookies that ensure that the website functions properly and that your preferences (e.g. language, region) are saved.
allow us to analyse website use and to improve the visitor's experience.
allow us to personalise your experience and to send you relevant content and offers, on this website and other websites.