固態硬碟的高速讀寫性能和強大的多線程尋道能力,是用戶看重的優點。但其也存在著使用壽命的問題。固態硬碟的工作原理和U盤相似,當快閃記憶體的讀寫數據次數達到使用壽命值,U盤就無法正常使用,固態硬碟也如此。下文是其具體的工作流程淺析。
了解如何以及為什麼SSD不同於旋轉盤,我們需要談談硬碟一點點。硬碟存儲數據在一系列旋轉磁碟碟片,稱為:有讀/寫磁頭驅動臂,連接到它。這手臂位置的讀寫磁頭驅動器在讀取或寫入信息的正確區域。
因為驅動器的磁頭必須在磁碟區為讀或寫數據(和盤不斷旋轉),有一個非零的等待時間才可以訪問的數據。驅動可能需要從多個位置看,啟動一個程序或加載文件,這意味著它可能要等待旋轉到適當的位置多次才能完成命令的碟片。如果驅動器是睡著了還是在低功耗狀態,它可能需要幾秒鐘的磁碟旋轉至全功率開始操作。
從一開始,很明顯,硬碟不可能匹配的CPU運行速度。在硬碟驅動器的延遲以毫秒為單位,為典型的CPU時間相比。一毫秒是1000000納秒,它通常需要10-15毫秒到硬碟驅動器上的數據並開始閱讀它。硬碟行業推出了更小的碟片,磁碟高速緩存,更快的轉速來抵消這種趨勢,但只有這麼快,驅動器可以旋轉。西部數碼的10000 RPM的速龍家族最快的驅動器的消費市場之一,而一些企業帶動旋轉15000轉。問題是,即使最快的旋轉驅動,最大和最小的磁碟緩存仍然盡你的CPU而言慢極了。
如何固態硬碟是不同的
「如果我問人們他們想要什麼,他們會說更快的馬。」亨利福特
固態硬碟被稱為,是因為他們不依靠移動部件或旋轉磁碟。相反,數據保存到一個池的NAND快閃記憶體。NAND本身是由所謂的浮柵電晶體。不像電晶體設計中使用的DRAM,必須每秒多次刷新,NAND快閃記憶體設計保持充電狀態,即使沒有動力了。這使得NAND型非易失性存儲器。
下面的圖顯示了一個簡單的快閃記憶體單元的設計。電子存儲在浮柵,然後讀取電荷的「0」或不收取「1。」是的,在NAND Flash,0意味著數據存儲在一個細胞正相反我們通常認為一零或一。NAND快閃記憶體被組織在一個網格。整個網格的布局被稱為一個塊,而組成的網格的單個行稱為一個頁面。常見的頁面大小是2K,4K,8K,或16K,128至256頁/塊。塊的大小,因此一般變化256KB和4MB之間。
這個系統的優勢應該是顯而易見的。由於固態硬碟沒有移動部件,它們可以在遠高於典型的硬碟運行速度。下面的圖表顯示了典型的存儲介質在微秒的延遲。
NAND是遠不及快速內存,但它的多個數量級的速度比硬碟驅動器。而寫入延遲是NAND Flash的讀延遲明顯比慢,他們依然高於傳統的旋轉介質。
有兩件事要在上面的圖表中的通知。第一,注意增加每單元NAND更多比特對內存的性能有顯著的影響。更糟糕的是為寫而讀-典型的三級單元(TLC)延遲4差相比,單級單元(SLC)NAND讀取,但不寫6。清除潛伏期也顯著影響。的影響不成比例,要麼TLC NAND是近兩倍的MLC NAND一樣慢,儘管只持有50%的更多的數據(三位/細胞,而不是兩個)。
原因是比TLC NAND MLC或SLC與如何數據移入和移出NAND細胞慢。與SLC NAND,控制器只需要知道如果位是0或1。隨著MLC NAND,細胞可能有四個值,00,01,10,或11。用TLC NAND,細胞可以有八個值。閱讀的正確價值的細胞需要內存控制器使用一個非常精確的電壓以確定是否有任何特定的細胞是帶電的或不。
其中的一個功能的局限性固態硬碟是這樣的,他們可以閱讀並很快寫數據一個空的驅動,重寫數據慢得多。這是因為,雖然固態硬碟讀取數據在頁面級(NAND存儲器的網格中的單個行的意思),可以在頁面級寫,假設周圍的細胞都是空的,他們只能擦除數據塊級的。這是因為擦除NAND Flash的行為需要大量的電壓。雖然理論上你能擦除NAND在頁面級,電壓所需的強調個體細胞周圍的細胞被重新書寫。擦除數據塊級的有助於緩解這一問題。
一個SSD更新現有頁面的唯一方法是複製整個塊的內容到內存,擦除塊,然後把舊街區+更新頁面的內容。如果驅動器是完全沒有可用的空頁,SSD必須先掃描塊,標記為刪除,但沒有刪除,刪除它們,然後寫數據到現在刪除頁面。這就是為什麼固態硬碟可以成為他們年齡慢空曠的驅動全是塊,可立即寫入,最全驅動更可能被迫通過整個程序/擦除序列。
更多固態硬碟行業最新相關資訊,請查閱中國報告大廳發布的《2016-2021年固態硬碟行業市場競爭力調查及投資前景預測報告》。