武漢光電國家研究中心謝長生教授
【以下內(nèi)容根據(jù)速記整理,未經(jīng)本人審定】
謝長生教授 :因為今天時間比較緊,我就簡單講一下我們的研究工作,主要兩個思路性的東西。具體的工作應該是吳非老師領導的閃存團隊做的。
我們知道數(shù)據(jù)爆炸性的增長這個已經(jīng)是常識了,歷史上有很多數(shù)據(jù)的爆發(fā)點,從文本到圖像、多媒體、互聯(lián)網(wǎng)、移動互聯(lián)網(wǎng)、云計算、大數(shù)據(jù),下一個爆發(fā)點5G、AI、物聯(lián)網(wǎng)。
從物聯(lián)網(wǎng)產(chǎn)生數(shù)據(jù)它將比人產(chǎn)生的數(shù)據(jù)更大,所以它是一個質(zhì)的轉變,從人產(chǎn)生數(shù)據(jù)到物產(chǎn)生數(shù)據(jù),這樣會產(chǎn)生更多的數(shù)據(jù),因為物比人多,每個人用的物很多。這些巨量的數(shù)據(jù)如何保存呢?在古代刻在石頭上,寫在紙上,到現(xiàn)在我們是磁光電,未來可能有量子存儲那還比較遠。
我現(xiàn)在給一個定義,當一種信息存儲的介質(zhì)承載人類信息50%以上,我們就稱為主流存儲介質(zhì)。目前主流存儲介質(zhì)還是硬盤,超過50%的信息還是存在硬盤上。即將到來的主流存儲介質(zhì)就是閃存,將來超過50%的信息在閃存上。雖然現(xiàn)在出現(xiàn)了很多新型其他的介質(zhì),但是他們的量是絕對不會再看得見的,在這十年之內(nèi)不可能成為我們定義的主流,主流還應該是閃存。閃存價格非常便宜,容量越做越大,所以閃存的主要進展就是閃存顆粒的容量越來越大,價格也越來越便宜,進入主流是我們非常容易看得見的事情。
但是閃存芯片現(xiàn)在越做越大特點是什么呢?不可靠,因為越差就越差,越差就磨損,所以現(xiàn)在越來越差,容量大到一定程度只有1000次了,存放也差,電荷會慢慢漏掉。容量越大也越差,但我們用越來越差的顆粒做成一個系統(tǒng)的時候又要求是可靠的,我們用不可靠的顆?;蛘咝酒瑏碜龀煽煽康南到y(tǒng),這樣我們無數(shù)科學家、工程師做了很多的努力,今天就想把這些努力歸納在一個理論框架下。
沒有理論指導技術,今天發(fā)明這個,明年發(fā)明那個,大家覺得五花八門,如果把閃存采用的技術歸在一個理論框架下,我們就發(fā)現(xiàn)原來做的技術就是歸納為這個框架上的兩點,一下子思路就很清晰了,我今天想把這個思路講清楚。
我們從根本原理上定義數(shù)據(jù)存儲的可靠性,1948年香龍發(fā)表了一篇劃時代的論文,《通訊的數(shù)學理論》。他指出了可靠通訊的基礎任務是在接受端精確的復現(xiàn)發(fā)送端信息,這個就是他經(jīng)典的通訊先導模型,是在有噪聲的先導下要保證接受端精確復現(xiàn)發(fā)送端的信息。我們就要用編碼調(diào)制技術保證可靠性,這個是通訊。
存儲的數(shù)學在哪里呢?有沒有這樣的東西呢?搞存儲的人都發(fā)現(xiàn),存儲可以借鑒通訊的理論,比如說糾刪碼、壓縮等等,借用通訊的理論。為什么是這樣呢?我這里有一個理論的解釋,信息的傳遞,我認為它是分為跨空間的傳遞和跨時間的傳遞,通訊就是信息跨空間的傳遞。比如說我們打一個電話,信息就跨空間。存儲實際上跨越時間的傳遞,2500年前老子寫了《道德經(jīng)》通過存儲介質(zhì)傳到我們,跨越了時間的距離。
基于這個認識信息傳遞的規(guī)律是相同的,如果你是跨越空間的傳遞,它就是通訊。如果跨越時間的傳遞,那就是存儲。認識到這一點,我們就一個二維的空間,實際上這個理論是一個信息傳遞論,往空間傳遞就是通訊,往時間傳遞就是存儲。
我們可以把時空二維的理論寫完整,把這個理論工作往時間推一步,我們就可以用了。實際上很多東西光通訊信息是傳達不到的,比如說發(fā)微信、短信、郵件,既跨越了空間,實際上也跨越了時間。發(fā)一個信息給你存在手機上才能看得到,只是通信一下你沒看到就沒了,所以信息傳遞大部分時間是時空二維的。如果知道這一點,往下就好講了,我們有一個理論框架了。
可靠存儲還是那樣,但我們這個信道是一個時間信道??煽康拇鎯褪亲x出的信息是完全復現(xiàn)了寫入的信息,寫進去和讀出來的一樣,那就是可靠。和通訊一樣,信道是有噪聲的,比如說有缺陷、老化、磨損、干擾等等。
現(xiàn)在來看一下閃存,閃存就是把電荷封到絕緣柵里,把它拉進來就去零,把它擠出來就是一。幾十個一擠,它就形成了多閉合的技術。電荷能保持多久,信息就能保持多久,這個就是閃存的基本原理。
為什么現(xiàn)在閃存的技術在提高容量的同時,成本降低可靠性越來越差?從信息論的角度我們剛剛講的時間信道的噪聲是越來越大,來看看在相同框架下,存儲可靠性就是兩點:第一個降低時間信道的噪聲,第二個實在降低不了用有效的編碼保證可靠性。
在這邊做了很多的研究工作,我們從介質(zhì)、設備、系統(tǒng)方面在國際一流會議和雜志發(fā)了一些文章,現(xiàn)在討論一下怎么做。
方法一就是來降低存儲信道的噪聲。
閃存的噪聲大致分為五個,一個是工藝缺陷,生產(chǎn)過程中本身就有,這個是工藝來保證的。第二個電荷泄露。第三個有擦寫磨損,閃存的絕緣層差一點,最后擦到存進去就漏出來了、壞了,這個是我們最要注意的特性。第四個多BT的技術。第五個干擾,有毒干擾等等。
這個我把它歸為噪聲,想辦法減少噪聲。第一個是靠生產(chǎn)廠來保證的,想一些辦法減少的??纯撮W存容量的提升,我們有3D堆疊的方法,有單元多位的方法,還有減少尺寸的方法。比如說我們減少了線寬,肯定是干擾也增大了,電荷數(shù)也變少了,氧化層變薄了,帶來一系列的噪聲。
第二個,很多文章研究從具體的數(shù)量上到底減少的規(guī)律是多少,這個有詳細的數(shù)據(jù),不多講,還有減少以后挨的緊,互相之間的干擾也變大了,還有多值存儲以后閾值電壓變小了。3D堆疊引進了新的干擾,這樣還有不一致性,這些都是我們的噪聲。
我們也做了詳細的測試和研究,測試了很多廠家的芯片,得到了整個生命周期到底是怎么變的,還有空間上不同塊之間的差異,這樣在我們設計的時候就可以利用這些特點使可靠性增加。
剛才說的這些干擾都是影響噪聲,這樣就知道采取那么多措施都是為了減少噪聲,這是一類。
減少噪聲常用技術就是減少干擾,這里常用的技術,很多研究者建立了模型,我們也做了很多的工作,包括對誤碼率隨著時間怎么變化,做了很詳細的測試,也發(fā)表了很多分析的文章。
還有數(shù)據(jù)的組織,我們知道FTL層有垃圾回收這方面的技術,這些實際上也是歸納為產(chǎn)生噪聲,也就是說產(chǎn)生的主要是越寫越差,盡量減少寫放大。這里分析了來源,寫放大有垃圾回收產(chǎn)生的。我想大家都比較清楚,很快過一下,我們采取了優(yōu)化影射管理方面有一篇文章,優(yōu)化命中率用緩存來替換,最終減少寫入。還有優(yōu)化冷熱數(shù)據(jù)的組織,減少垃圾回收的遷移,這也是減少寫放大。
剛才說想盡了各種各樣的辦法減少了寫放大,但是還有噪聲,或者隨著時間、擦寫次數(shù)的增加,誤碼率我們不能接受,就必須要有更好的糾刪編碼。
方法二是采用更好的糾錯編碼。
目前LDBC碼已經(jīng)被廣泛的應用,比BCH碼有更高的糾錯能力。各大公司都采用LDBC,它的算法是成熟的,但是怎么樣進一步改進它呢?目前主要有什么問題呢?它要強糾錯的話用軟判決碼,讀延遲會增大,而且部分好預測,你保證了糾錯能力以后性能有時候得不到保證,我們在這方面做了很多的研究工作,就做一個大致的介紹。
有一個博士后發(fā)了四篇文章,一個是LDPC軟判決譯碼算法的優(yōu)化,另外一個是軟判決的采樣方法優(yōu)化,利用編程干擾的錯誤特性感知或者用保存的錯誤感知把這個特性利用起來,還有用CT型的閃存感知,利用這些特性最后降低了譯碼的迭代延遲,在采樣上怎么樣優(yōu)化它,這樣就保證了我們在糾錯能力保證情況下盡量提高譯碼速度。這個是我們做的一些工作,發(fā)表了幾篇文章。
我們對過長的糾刪碼采用放大,也采取了一些新的技術,這些不詳細介紹,大家如果對細節(jié)感興趣大家可以去讀讀文章。
我們在閃存的RAID上做了一些新的算法,使它能夠可靠性進一步增加,而且保證性能。
下面要講一個新的思路,現(xiàn)在取了一個名字叫耗散存儲系統(tǒng)。什么叫耗散存儲系統(tǒng)呢?有物質(zhì)進來有物質(zhì)出去,保持動態(tài)穩(wěn)定,這就是耗散結構。這個香龍框架下的特性是出了錯幫助糾過來以保證可靠性,我們磁盤陣列也是等它壞了以后通過把技術手段信息把恢復出來。
假如磁盤陣列壞了,靠算把這個數(shù)據(jù)恢復,這個性能就要降級,而且在恢復數(shù)據(jù)遷移、恢復的時候再壞一個,數(shù)據(jù)就丟了,所以很危險。還有一個,新的介質(zhì)和盤用的時候都是挺好的,新的時候糾錯能力都是很富裕的,但是用到生命周期后期的時候,都比較老化的時候,這時候出錯率其實是非常容易超過編碼能力的。
打一個比方,我們一個公司大家都是年輕人的時候,大家身體都很健康,這樣累倒的概率很少。假如說一個公司都是70幾歲的人,大家得病的概率就很大了。存儲系統(tǒng)也是一樣,新的時候相當于全部是年輕人的公司,過了五年以后可能都是七八十歲的人在工作,患病的概率太大了。即使很多大公司采用了3D備份的技術,但在用到5-6年的時候是非常有可能同時壞的,因為據(jù)統(tǒng)計大概30%、40%的盤會壞,這個時候我們要采取一種新的思路。
比如說心臟一輩子可以跳多少億次不壞,并不是說材料特別的好,而是經(jīng)常有新物質(zhì)進去舊物質(zhì)出來,它是一個新陳代謝,但總體還是保持心臟的形態(tài)。如果有新陳代謝在里頭了,這個就不一樣了,就像這個公司誰身體不好搞個健康人來,這樣總是保持公司健康狀況,就是七八十歲人在工作整個系統(tǒng)可靠性是完全不一樣的,采取這個思路借鑒生命系統(tǒng)的原理,我們叫耗散的存儲系統(tǒng)。
我們有不同的力度,可以在塊級進行,也可以在盤級進行,也可以在節(jié)點級進行。我們在這里做了很多研究,也拿了國家自然科學的基金在研究。這個問題有幾個關鍵點,我們要預警轉移,預警就是要體檢,健康狀況怎么樣。以前硬盤的時候不太容易搞準,在固態(tài)盤的時候比較容易搞準,健不健很多指數(shù)可以指出來?,F(xiàn)在用人工智能的方法把語言出來,所以第一步看它什么要壞,數(shù)據(jù)還沒丟,快差不多就告警,就把把這個數(shù)據(jù)遷移,這個里頭裝的都是新的單元,一旦轉移過去那個單元就可以替換掉了,就完成了新陳代謝。
這里來預測故障可以用人工智能的算法,現(xiàn)在準確率已經(jīng)90%多了,用這種技術就可以預測,預測的精度高于90%,實現(xiàn)了新陳代謝,這個技術實際上在盤這一級最好實現(xiàn)的。比如說這里有一個機械手在這里全可以插的盤,這個就不是磁盤陣列,也不是固態(tài)盤陣列,一旦數(shù)據(jù)轉移到另外的時候,報警把它拔出來就完了,這個都可以自動維護。估計一下這個系統(tǒng)的可靠性比磁盤陣列要高好幾個數(shù)量級。
這個就是我們的思路。
閃存顆粒隨著工藝制程、單元多bit、3D堆疊技術的進步,容量迅速提高,但可靠性越來越差。以不可靠的芯片來構建可靠的系統(tǒng),是每一個設計者必須面臨的問題。在香農(nóng)框架下就是兩點,第一點降低時間信道的噪聲,第二個用更強的糾刪碼,一般的技術都是這樣,剛才講的檢測健康度,預警轉移,實現(xiàn)新陳代謝這樣就在香農(nóng)框架之外了,有了這個技術就可以實現(xiàn)超高的可靠性。
像這種局部的技術有些公司已經(jīng)在用了,但是我們想把新的理論框架建立起來,最后把可靠性具體提高多少量化出來,建立一套耗散存儲系統(tǒng)的新理論,這樣更加進一步提高可靠性,這個是我們的思路?,F(xiàn)在有些工作也發(fā)了一些文章,還需要進一步的完善。
結束語
存顆粒隨著工藝制程、單元多bit、3D堆疊技術的進步,容量的迅速提高,但可靠性越來越差。如何用不可靠的芯片來構建可靠的系統(tǒng),是每一個系統(tǒng)設計者必須面對的問題。在香農(nóng)理論框架下,主要是通過降低時間通道的噪聲和采用更強的糾錯編碼進行,建立耗散存儲系統(tǒng)的超可靠體系架構,使存儲數(shù)據(jù)的介質(zhì)實現(xiàn)新陳代謝,可實現(xiàn)數(shù)據(jù)存儲系統(tǒng)的超高可靠性。
我的演講到這里結束,謝謝大家。