tft每日頭條

 > 科技

 > 固态硬盤的作用和工作原理

固态硬盤的作用和工作原理

科技 更新时间:2024-10-05 13:18:18

很多朋友隻知道固态硬盤比機械硬盤快,但是卻不知道固态硬盤為什麼快?以及到底快在哪?

這裡需要先了解一下機械硬盤的結構,機械硬盤采用磁性碟片來存儲數據,這是機械硬盤的結構圖。

固态硬盤的作用和工作原理(固态硬盤原理大揭秘)1

固态硬盤的作用和工作原理(固态硬盤原理大揭秘)2

儲存數據的地方啊就是這個磁盤磁片,把數據寫到磁盤磁片的結構啊就是這個磁頭。寫入以及讀取數據的時候呢,這個電機啊就讓這個磁盤磁片轉起來,然後磁頭就會到達要寫數據的扇區,把數據寫進去。工作原理就有點像那種留聲機工作原理。

固态硬盤的作用和工作原理(固态硬盤原理大揭秘)3

機械硬盤是上下盤面同時進數據讀取的。而且機械硬盤的旋轉速度要遠高于唱片(目前機械硬盤的常見轉速是 7200 r/min),所以機械硬盤在讀取或寫入數據時,非常害怕晃動和磕碰。另外,因為機械硬盤的超高轉速,如果内部有灰塵,則會造成磁頭或盤片的損壞,所以機械硬盤内部是封閉的,如果不是在無塵環境下,則禁止拆開機械硬盤。

但是到底機械硬盤到底慢在哪裡?其實慢就慢在它的這種工作方式。雖然看似 7200 轉每分鐘非常快了。但是這依舊比不上采用電子方式的固态硬盤。這就有點像一輛馬車與火車在比賽一樣,完全沒法比的。

但是機械硬盤的優點也是非常明顯的,首先機械硬盤的儲存的空間非常大而且它的壽命非常的長,關鍵一點就是突然斷電也不會導緻數據的丢失。所以比較适合長時間保存一些數據。

另外還有一個區别就是機械硬盤與固态硬盤所使用的數據接口不一樣,這就像是火車的路隻能火車跑,而馬車的路不一樣什麼都能跑。這就導緻火車的路不會堵車,而馬車的路就不一樣。

固态硬盤

固态硬盤 (Solid State Drive),簡稱 SSD(固盤),是用固态電子存儲芯片陣列而制成的硬盤,由控制單元和存儲單元(FLASH 芯片、DRAM 芯片) 以及緩存單元組成。區别于機械硬盤由磁盤、磁頭等機械部件構成,整個固态硬盤結構無機械裝置,全部是由電子芯片及電路闆組成。

根據固态硬盤的定義,我們可以知道固态硬盤的内部結構,其實就是由三大塊主控芯片、閃存顆粒、緩存單元構成,那麼接下來,我們逐一來看。

固态硬盤大腦:主控芯片

正如同 CPU 之于 PC 一樣,主控芯片其實也和 CPU 一樣,是整個固态硬盤的核心器件,其作用一是合理調配數據在各個閃存芯片上的負荷,二則是承擔了整個數據中轉,連接閃存芯片和外部 SATA 接口。

不同的主控之間能力相差非常大,在數據處理能力、算法上,對閃存芯片的讀取寫入控制上會有非常大的不同,直接會導緻固态硬盤産品在性能上産生很大的差距。

當前主流的主控芯片廠商有 marvell 邁威(俗稱 "馬牌")、SandForce、siliconmotion 慧榮、phison 群聯、jmicron 智微等。而這幾大主控廠商,又都有着自己的相應特點,應用于不同層級的固态産品。

以台系廠商 siliconmotion 慧榮為例,此款主控芯片主要特點在于能夠為固态硬盤廠商提供包括軟件和硬件在内的一體化主控方案,包括主控芯片、電路闆以及存儲單元,能夠極大的提升産品的更新速度和使用壽命,并且不存在兼容等問題。

核心器件:閃存顆粒單元

作為硬盤,存儲單元絕對是核心器件。在固态硬盤裡面,閃存顆粒則替代了機械磁盤成為了存儲單元。

閃存 (Flash Memory) 本質上是一種長壽命的非易失性 (在斷電情況下仍能保持所存儲的數據信息) 的存儲器,數據删除不是以單個的字節為單位而是以固定的區塊為單位。

固态硬盤的作用和工作原理(固态硬盤原理大揭秘)4

固态硬盤的作用和工作原理(固态硬盤原理大揭秘)5

在固态硬盤中,NAND 閃存因其具有非易失性存儲的特性,即斷電後仍能保存數據,被大範圍運用。

根據 NAND 閃存中電子單元密度的差異,又可以分為 SLC(單層次存儲單元)、MLC(雙層存儲單元)以及 TLC(三層存儲單元),此三種存儲單元在壽命以及造價上有着明顯的區别。

固态硬盤的作用和工作原理(固态硬盤原理大揭秘)6

固态硬盤的作用和工作原理(固态硬盤原理大揭秘)7

SLC(單層式存儲),單層電子結構,寫入數據時電壓變化區間小,壽命長,讀寫次數在 10 萬次以上,造價高,多用于企業級高端産品。

MLC(多層式存儲),使用高低電壓的而不同構建的雙層電子結構,壽命長,造價可接受,多用民用高端産品,讀寫次數在 5000 左右。

TLC(三層式存儲),是 MLC 閃存延伸,TLC 達到 3bit/cell。存儲密度最高,容量是 MLC 的 1.5 倍。 造價成本最低, 使命壽命低,讀寫次數在 1000~2000 左右,是當下主流廠商首選閃存顆粒。

當前,固态硬盤市場中,主流的閃存顆粒廠商主要有 toshiba 東芝、samsung 三星、Intel 英特爾、micron 美光、skhynix 海力士、sandisk 閃迪等。

由于閃存顆粒是固态硬盤中的核心器件,也是主要的存儲單元,因而它的制造成本占據了整個産品的 70% 以上的比重,極端一點說,選擇固态硬盤實際上就是在選擇閃存顆粒。

固态硬盤的作用和工作原理(固态硬盤原理大揭秘)8

固件算法:

SSD 的固件是确保 SSD 性能的最重要組件,用于驅動控制器。主控将使用 SSD 中固件算法中的控制程序,去執行自動信号處理,耗損平衡,錯誤校正碼 (ECC),壞塊管理、垃圾回收算法、與主機設備(如電腦) 通信,以及執行數據加密等任務。由于固件冗餘存儲至 NAND 閃存中,因此當 SSD 制造商發布一個更新時,需要手動更新固件來改進和擴大 SSD 的功能。

開發高品質的固件不僅需要精密的工程技術,而且需要在 NAND 閃存、控制器和其他 SSD 組件間實現完美整合。此外,還必須掌握 NADN 特征、半導體工藝和控制器特征等領域的最先進的技術。固件的品質越好,整個 SSD 就越精确,越高效,目前具備獨立固件研發的 SSD 廠商并不多,僅有 Intel / 英睿達 / 浦科特 / OCZ / 三星等廠商,希望我國能早日解決。

錦上添花:緩存芯片

緩存芯片,是固态硬盤三大件中,最容易被人忽視的一塊,也是廠商最不願意投入的一塊。和主控芯片、閃存顆粒相比,緩存芯片的作用确實沒有那麼明顯,在用戶群體的認知度也沒有那麼深入,相應的就無法以此為噱頭進行鼓吹。

實際上,緩存芯片的存在意義還是有的,特别是在進行常用文件的随機性讀寫上,以及碎片文件的快速讀寫上。

由于固态硬盤内部的磨損機制,就導緻固态硬盤在讀寫小文件和常用文件時,會不斷進行數據的整塊的寫入緩存,然而導出到閃存顆粒,這個過程需要大量緩存維系。特别是在進行大數量級的碎片文件的讀寫進程,高緩存的作用更是明顯。

這也解釋了為什麼沒有緩存芯片的固态硬盤在用了一段時間後,開始掉速。

固态硬盤的顆粒 (重中之重)

閃存顆粒是固态硬盤用來存儲數據的東西,分為 SLC、MLC、TLC 三種,是挑選固态最重要的參數。

SLC:S 是 single,單一的意思,如 single dog - 單身狗。所以,SLC 的每個存儲單元隻存儲 1bit 的數據,這種存儲方式穩定性強,讀寫速度很快,而且不會出錯,并且壽命長,因此價格也是最貴的。

MLC:M 是 multi,多個的意思,一般我們說的 MLC 就是指兩個,所以,MLC 的每個存儲單元要放 2bit 的數據。

TLC:T 是 triple,沒錯,就是 "三殺" 的那個 triple kill!

所以,TLC 顆粒的每個存儲單元要擠 3bit 的數據。(由于 MLC 是多個 bit 的意思,多個包含 3 個,所以,有些廠商,如三星,會把自家使用 TLC 顆粒的 EVO 系列固态硬盤稱為 "3bit MLC")

舉個很形象的例子:

我們把存儲空間想象成一個超大的停車場,每一個存儲單元就是一個停車位,1bit 的數據就是一輛汽車。

SLC 顆粒:1bit 獨占一個車位,這輛車來去自如,不會出現錯誤,而且速度很快,由于車位使用頻率不高,所以壽命也很長,但是成本很高。

MLC 顆粒:2bit 占一個車位,1 車 2 車進出需要管理員調度,效率稍低,所以速度會慢一些,車位使用頻率高了一倍,所以壽命也會變短一些。

TLC 顆粒:3bit 擠一個車位,進出調度更複雜,效率較低,所以速度慢,還容易出錯,壽命短一些。

現在世界上能自主生産顆粒的廠家有:intel、三星、閃迪、東芝、鎂光(英睿達)、海力士。所有正規的固态硬盤使用的都是這幾家的檢驗合格的原廠顆粒。如使用自家顆粒的 inter、三星、閃迪、鎂光(英睿達)、東芝等;還有雖然自己不會生産顆粒,但是使用從原廠購買顆粒的浦科特、海盜船、建興等,所以購買時可以優選選擇這些品牌。

市面上還有一些使用 "白片"、"黑片" 顆粒的固态硬盤的廠家,"白片"是指原廠檢驗不合格的瑕疵品,被偷偷賣給下遊工廠來制作固态硬盤。"黑片"是連白片都比不上的廢片,這類硬盤價格通常會遠低于原廠顆粒的硬盤,給人一種 "高性價比" 的錯覺。

主控

如果說存儲空間是一個超大的停車場,那麼主控就是這個超大停車場的 "管理員" 啦,他負責指揮每一輛車準确、合理的進出自己的停車位。

對于這麼大的一個停車場,特别是三輛車擠一個車位的 TLC 顆粒的停車場來說,管理員是操碎了心,每天都累成狗一樣。所以這個主控 "管理員" 必須要有過硬的身體素質(硬件要好)和紮實的管理方法(固件要好)。

好的主控 優秀的固件就相當于讓受過專業訓練的交警來管理停車場,而渣的主控 渣的固件就相當于讓一個骨瘦如柴,沒有受過教育和訓練的人來管理,所以啊,即使你的停車場修的很牢固,但是沒用多久,管理員先累死了,整個停車場也就不能用了。

接口、總線、協議

由于近些年固态硬盤發展的很快,新老産品技術交替,所以市面上固态硬盤的接口、協議等有些亂七八糟的,他們之間有着剪不斷,理還亂的關系。

接口:

接口就是把幾條導電的銅線做成不同形狀的插頭。市面上主流的固态硬盤接口有 SATA、mSATA、m.2、PCI-E 插槽這 4 種。

他們之間除了在外觀上有不同外,性能上也有較大的區别。

總線:

總線是我們看不到的東西,可以理解為數據傳輸的 "公路",有 sata 總線和 PCI-e 總線兩種。

假如我們要從 P 城開車到 Y 城,走 PCI-E 總線就相當于走兩地直達的高速公路,而走 SATA 總線的就相當于走了比較繞的城鄉公路。

PCI-E 總線又有幾個等級,PCIE×1、PCIE×2、PCIE×4、PCIE×8、PCIE×16,數字越大,速度就越快。目前的固态硬盤都是用的 ×2、×4 這個等級的,其中 ×4 的最大速度已經可以達到 3000 MB/s 以上了。說到這,有機靈的小夥伴可能已經想到了我們用的顯卡早就已經是 ×16 的級别了。

最後是協議

前面已經說了,PCI-E ×4 是一條平坦的高速公路,但是我們都知道,現實中的高速公路上每輛車的車速也是不同的,跑車總是會比轎車快。而擁有 NVMe 協議的固态硬盤就相當于專門針對這條平坦的高速公路而設計的超級跑車。同樣是走的 PCI-E ×4 的車道,不支持 NVMe 協議的硬盤最大隻能跑 1500MB/s,而支持 NVMe 協議的硬盤就可以跑到 3000MB/s 甚至以上。

4KB 随機讀寫

固态硬盤雖然順序讀寫速度超快,但是那是隻有在讀寫一整個大文件(如一部電影)時才能體會到它的優勢,而影響我們日常使用的是硬盤的 4K 随機讀寫速度(這裡的 4K 是 4KB)。

舉個例子:

小明去一個大商場買東西,售貨員問小明:"你要買什麼呢?"

小明說:"阿姨,我要買一台大電視!""好的!" 雖然電視很大很重,但是售貨員隻要跑一趟花點力氣就能把大電視給小明拿過來。這就是大文件的持續讀寫速度。

小明又說:"阿姨,我要一顆小白兔奶糖、一包辣條、一瓶可樂、一隻鉛筆、一個小豬佩奇、一卷衛生紙……" 售貨員:"#¥@%……&*" 這些東西雖然又輕又小,但是量多,售貨員阿姨就要跑很多地方才能完成小明的請求,速度自然就慢了下來,這就是 4kb 随機讀寫。

很遺憾的是我們日常使用電腦時大多都是這種小文件的随機讀寫。所以,我們在挑選固态的時候要重點關注一下硬盤的 4k 随機讀寫性能。

NVMe

NVMe 是為 SSD 所生的。NVMe 出現之前,SSD 絕大多數走的是 AHCI 和 SATA 的協議,後者其實是為傳統 HDD 服務的。與 HDD 相比,SSD 具有更低的延時和更高的性能,AHCI 已經不能跟上 SSD 性能發展的步伐了,已經成為制約 SSD 性能的瓶頸。

跟 ATA spec 中定義的命令相比,NVMe 的命令個數少了很多,完全是為 SSD 量身定制的。

NVMe 有三寶:Submission Queue (SQ),Completion Queue(CQ)和 Doorbell Register (DB)。 SQ 和 CQ 位于 Host 的内存中,DB 則位于 SSD 的控制器内部。上圖:

SQ 和 CQ 在 Host 的 memory 中以及 DB 在 SSD 端,上圖中的 NVMe Subsystem 一般就是 SSD。

SQ 位于 Host 内存中,Host 要發送命令時,先把準備好的命令放在 SQ 中,然後通知 SSD 來取;CQ 也是位于 Host 内存中,一個命令執行完成,成功或失敗,SSD 總會往 CQ 中寫入命令完成狀态。

DB 又是幹什麼用的呢?Host 發送命令時,不是直接往 SSD 中發送命令的,而是把命令準備好放在自己的内存中,那怎麼通知 SSD 來獲取命令執行呢?Host 就是通過寫 SSD 端的 DB 寄存器來告知 SSD 的。這樣的速度就非常快了。

所以總結一下如何挑選固态硬盤?

1:先看儲存顆粒,再看顆粒類型。

2:查看硬盤主控。

3:緩存大小,及所使用的傳輸協議。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved