固態硬碟怎麼儲存資料(固態硬碟怎麼儲存)
幾乎每天,我們都會用智慧手機或電腦來儲存圖片、視訊、文件等資料,很多人也知道資料能夠儲存是由於裝置中有一個叫做「硬碟」的元件存在,但也有很多人不知道硬碟是怎樣儲存這些資料的。本著「知其然,也要知其所以然」的精神,本期,閃德君就給大家講講其中的原理。
首先我們要明白的是,計算機中只有0和1,那麼我們存入硬碟的資料,實際上也就是一堆0和1,換句話說,我們如果有辦法記錄0和1就可以記錄資料了,比如我們有2個燈泡,一個不亮一個亮就可以表示01,即數字1,兩個都亮11,即表示數字2,越大的數可以用越多的燈泡來表示。
硬碟分為機械硬碟和固態硬碟,由於結構的不同它們儲存資料的原理也不同。先來看機械硬碟,其最重要的結構是兩面塗有磁性材料的磁碟,在工作時會以每分鐘7200轉的速度旋轉。
磁碟的作用就是記錄資料,在碟片上有序的排列了很多的小顆粒材料,它們都是磁性物質,可以被永久磁化和改變磁極,這兩個磁極就分別表示了計算機二進位制中的0和1。
寫入資料時,距離盤面3奈米的磁頭會利用電磁鐵,改變磁碟上磁性材料的極性來記錄資料,兩種極性分別對應0或1。而讀取資料時,旁邊的讀取器可以識別磁性材料的不同極性,再還原成0或1。
由於磁碟是轉動後讀寫資料的,所以,當初設計就是在類似磁碟同心圓上面切出一個一個的小區塊,這些小區塊整合成一個圓形,讓機器手臂上的磁頭去存取。這個小區塊就是磁碟的最小物理儲存單位,稱之為扇區 (sector),大小一般是512位元組,而同一個扇區組合成的圓就是所謂的磁軌(track)。
因此,磁頭要想讀取某個檔案,必須在電機驅動下,先找到對應的磁軌,再等磁碟轉到對應扇區才行,一般會有十幾毫秒的延遲,這就讓機械硬碟在讀取分散於磁碟各處的資料時,速度將大幅降低。
相較於機械硬碟裡面的複雜結構,固態硬碟就要簡單許多。它主要是靠FLASH晶片來作為儲存資料的介質,由主控晶片來承擔資料的中轉,並調配資料儲存在快閃記憶體晶片上面。
快閃記憶體的基本儲存單元是浮柵電晶體,其中的浮柵被二氧化矽包裹,和上下絕緣,在斷電時也能夠儲存電子,當電子數量高於一箇中間值就表示0,低於中間值就表示1。
電晶體每次寫入資料前都要先擦除,在P極上加一個電壓,浮柵中原有的電子會因為量子隧穿效應通過絕緣層被吸出來,讓浮柵中的電子數量低於中間值,還原成1;如果要寫入0,就在控制極加一個電壓,讓電子穿過絕緣層再注回浮柵,使電子數量高於中間值,表示0。
但在讀取時,快閃記憶體無法直接得知浮柵中有多少電子。因為往控制極加一定大小的電壓,會導通這兩個N極。控制極上的電壓越大,N極間的電流也越大。然而,儲存0的浮柵,相比儲存1的浮柵,有更多的電子,會抵消控制極上的電壓,所以控制極需要更大的電壓才能導通兩個N極。
因此,當不知道浮柵中有多少電子時,就可以往控制極加一箇中間值電壓,如果兩個N極導通,就能反推出浮柵中的電子較少,識別為1;如果沒有導通,就說明浮柵中的電子較多,識別為0。
傳統的單階儲存單元SLC ,電子數量只有兩種狀態,只能儲存一位元的資料。而多階儲存單元MLC、TLC和QLC ,它們的電子數量有4~16種狀態,一個單元可儲存2~4位元。
多階儲存單元大大降低了固態硬碟單位容量的成本,但也影響了硬碟壽命和效能。這是因為電晶體擦寫資料時,二氧化矽絕緣層會困住一部分電子,這些電子的累積會逐漸抵消控制極上的電壓,使得控制極為了導通兩個N極所需的電壓越來越大,當這個偏移超過中間值,那麼讀取時也就無法分辨0和1。
而多階儲存單元由於不同狀態之間分得非常細,也就更容易受這種偏移的影響,所以從SLC到QLC,它們總的擦寫次數呈幾何級數遞減。
總結來說,機械硬碟是磁頭通過磁碟旋轉來讀寫資料的,所以磁碟讀寫資料的速度跟磁碟的旋轉速度有很大的關係,磁碟轉得越快磁頭就能更快的訪問到更多區域,速度自然就越快了。但也正是轉速比較快,所以抗震抗摔以及抗塵能力比較差,試想每分鐘幾千轉的磁碟震了一下或者撞上了灰塵,磁頭即使只是發生了一點點小小的偏移,也會帶來不可逆轉的損壞。
而固態硬碟由於沒有了機械結構,完全不用擔心這些的問題。但是固態硬碟也有一個硬傷就是:它是靠在儲存單元裡面存放電子的方式來儲存資料。而電子大家知道是一個非常非常小的東西,這樣如果同一個位置存放電子再擦除,如此反覆長久以來就會出現不穩定的情況,比如電子會寫不上。尤其是將要到來的QLC儲存晶片,每個儲存單元裡面放了4個電子,由於電子之間也會互相影響,導致壽命大大減少。
不過,一塊消費級的MLC或TLC固態硬碟也足夠你至少使用5年,且使用體驗遠超機械硬碟,讀寫速度可達後者的十倍以上。此外,由於沒有複雜的機械結構,固態硬碟工作時也更安靜、更抗震。