本發明屬于閃存,更具體地,涉及一種控制器內閃存讀取性能的優化方法、裝置和存儲介質。
背景技術:
1、閃存作為一種非易失性存儲介質,在當今的電子設備中得到了廣泛應用,從智能手機、平板電腦到固態硬盤等。隨著科技的不斷發展,對閃存讀取性能的要求也越來越高。智能手機和平板電腦等移動設備需要快速的閃存讀取性能,以實現快速啟動應用程序、加載照片和視頻等多媒體內容。固態硬盤在計算機系統中的應用越來越廣泛,閃存讀取性能直接影響系統的啟動速度、文件傳輸速度和應用程序的響應時間。
2、閃存芯片的制造工藝不斷改進,使得存儲密度不斷提高,同時也提高了讀取性能。閃存控制器的設計也在不斷優化,提高了數據傳輸的效率和可靠性。控制器可以采用更先進的算法來管理閃存芯片,提高讀取速度和壽命。閃存在讀取時,往往采用讀取重試和糾錯碼協同的方式。在實際操作中,隨著反復擦寫和長時間數據保持,最佳讀取電壓會發生偏移從而造成讀取錯誤。此時,控制器會采用調整讀參考電壓重復讀取,直到錯誤率恢復到糾錯碼的糾錯能力范圍內。這種方法有效保證了閃存讀取結果的可靠性。
3、然而,閃存默認的初始讀取電壓偏移往往是0,重復讀取的次數較多,這樣大大增加了閃存的讀取時長,降低閃存的讀取性能。綜上,需要一種新的讀取優化方法在保證讀取可靠性的同時提升讀取速率。
技術實現思路
1、針對現有技術的以上缺陷或改進需求,本發明提供了一種控制器內閃存讀取性能的優化方法、裝置和存儲介質,旨在解決現有技術中的閃存讀取電壓偏移導致讀重試步驟過于繁瑣從而造成讀寫性能下降的技術問題。
2、為實現上述目的,按照本發明的一個方面,提供了一種控制器內閃存讀取性能的優化方法,包括:
3、s1:當接收到當前讀取操作時,提取閃存芯片的預設特征量、擦寫讀次數和數據保持時間;
4、s2:將所述預設特征量、所述擦寫讀次數和所述數據保持時間輸入當前預測模型中,預測得到閾值電壓分布;從所述閾值電壓分布確定讀取電壓偏移區間;
5、s3:在所述讀取電壓偏移區間的基礎上,進行讀重試操作直至找到目標區間,在所述目標區間進行讀取得到錯誤數及其對應的頁編號;
6、其中,在所述讀重試操作時每個頁面僅調整一個讀電壓的偏移值變化,相同頁面下的其他電壓偏移值跟隨所述讀電壓的偏移值變化而變化;
7、s4:利用所述錯誤數及其對應的頁編號計算得出閾值電壓分布數據;
8、s5:利用所述閾值電壓分布數據更新所述當前預測模型并保存,用于下一次讀取操作時預測對應的閾值電壓分布。
9、進一步地,所述預設特征量包括:閃存芯片的存儲單元編號和存儲頁號。
10、進一步地,所述預設特征量還包括:閃存芯片的編程時間、讀取時間、擦除時間、電流中的一個或多個。
11、進一步地,在所述s2之前還包括:以預設閃存芯片對應的樣本集中預設特征量、擦寫讀次數以及數據保持時間作為輸入,以所述預設閃存芯片對應的閾值電壓分布作為輸出,訓練初始預測模型得到首次執行讀取操作中的所述當前預測模型。
12、進一步地,所述樣本集的獲取過程包括:
13、步驟1.對被測閃存芯片進行擦除操作;
14、步驟2.向所述被測閃存芯片寫入測試數據;
15、步驟3.等待時間t0,對所述被測閃存芯片執行讀取操作,將讀出數據與步驟3中寫入的數據進行比對,統計產生的錯誤數,并存入所述樣本集中;
16、步驟4.判斷所述被測閃存芯片經歷的擦寫讀次數是否小于第一閾值c1,若小于則重復步驟1到步驟3;否則進入步驟5;
17、步驟5.斷電等待時間t1;
18、步驟6.進行一次讀取操作,保存讀取數據并收集芯片參數并存入所述樣本集中;
19、步驟7.等待時間t2;
20、步驟8.對所述被測閃存芯片進行讀取數據操作,將讀出數據與步驟6中保存的數據進行比對,統計數據保持期間產生的錯誤數,并收集芯片參數并存入所述樣本集中;
21、步驟9.判斷總數據保持時間是否超過時間t3,若小于則重復步驟7和步驟8,否則進行步驟10且將總數據保持時間計數清零;
22、步驟10.判斷執行的累計擦寫讀次數是否超過第二閾值c2,若小于則重復步驟1到步驟9,否則完成測試。
23、進一步地,同一個頁面第i個讀參考電壓讀重試步長li和第j個讀參考電壓讀重試步長lj的關系符合公式:li=a×lj;其中a為比例系數,可由公式a=△ri/△rj計算得出,△ri=(ri-ri'),△rj=?(rj-rj'),ri是同一個頁面第i個讀參考電壓中心值,rj是第j個讀參考電壓中心值,ri'和rj'是閃存芯片出廠時設置的初始讀參考電壓中心值,由此,根據讀參考電壓中心值和讀重試步長可確定讀重試區間。
24、按照本發明的另一方面,提供了一種閃存讀取性能的優化裝置,包括:
25、提取模塊,用于當接收到當前讀取操作時,提取閃存芯片的預設特征量、擦寫讀次數和數據保持時間;
26、預測模塊,用于將所述預設特征量、所述擦寫讀次數和所述數據保持時間輸入當前預測模型中預測得到閾值電壓分布;從所述閾值電壓分布確定讀取電壓偏移區間;
27、讀重試模塊,用于在所述讀取電壓偏移區間的基礎上,進行讀重試操作直至找到目標區間,在所述目標區間進行讀取得到錯誤數及其對應的頁編號;其中,在所述讀重試操作時每個頁面僅調整一個讀電壓的偏移值變化,相同頁面下的其他電壓偏移值跟隨所述讀電壓的偏移值變化而變化;
28、計算模塊,用于利用所述錯誤數及其對應的頁編號計算得出閾值電壓分布數據;
29、更新模塊,用于利用所述閾值電壓分布數據更新所述當前預測模型并保存,用于下一次讀取操作時預測對應的閾值電壓分布。
30、按照本發明的另一方面,提供了一種閃存系統,包括:閃存芯片和控制器;
31、所述控制器,存儲有計算機程序,用于執行所述計算機程序時實現所述的控制器內閃存讀取性能的優化方法的步驟。
32、按照本發明的另一方面,提供了一種計算機可讀存儲介質,其上存儲有計算機程序,所述計算機程序被處理器執行時實現所述的控制器內閃存讀取性能的優化方法的步驟。
33、總體而言,通過本發明所構思的以上技術方案與現有技術相比,能夠取得下列有益效果:
34、(1)本發明將所述預設特征量、所述擦寫讀次數和所述數據保持時間輸入當前預測模型中,以獲取讀取電壓偏移區間;根據閃存的使用情況去預測閃存的閾值電壓分布,比起一般讀重試操作時的初始閾值電壓作為參考,更加具有實時性;在所述讀取電壓偏移區間的基礎上,進行讀重試操作直至找到目標區間并獲取錯誤數及其對應的頁編號;在所述讀重試操作時每個頁面僅調整一個讀電壓的偏移值變化,相同頁面下的其他電壓偏移值跟隨所述讀電壓的偏移值變化而變化;相同頁面不同讀取電壓偏移值的相關性,大大減少了read-retry次數,降低重讀時間,提升讀取性能,進一步地利用所述閾值電壓分布數據更新所述當前預測模型并保存,用于下一次讀取操作時預測對應的閾值電壓分布,將更新后的預測模型用于下一次讀取操作,與固定的預測模型相比,更加貼合的實際情況中每顆閃存芯片的實際情況,增加了預測的準確性。
35、(2)本方案中所述預設特征量包括:閃存芯片的存儲單元編號和存儲頁號。這樣設計考慮了閃存芯片具體存儲單元和存儲頁面的差異性對預測模型的影響,保持了模型的性能穩定。
36、(3)本方案中所述預設特征量還包括:閃存芯片的編程時間、讀取時間、擦除時間、電流中的一個或多個。這樣設計考慮了實際使用過程中閃存芯片老化在多種特征量上的體現,增強了預測模型的魯棒性。
37、(4)本方案中以預設閃存芯片對應的樣本集中預設特征量、擦寫讀次數以及數據保持時間作為輸入,以預設閃存芯片對應的閾值電壓分布作為輸出,訓練初始預測模型;初始預測模型的訓練考慮了閃存的磨損和老化特征,實現了閾值電壓變化與閃存磨損老化關系的預測。
38、(5)本方案在樣本集的獲取過程模擬了實際應用中的閃存使用情況,收集使用過程中的參數作為樣本集,使所述模型更貼合應用情況,實現預測準確率的提升。
39、(6)本方案設置同一個頁面第i個讀參考電壓讀重試步長li和第j個讀參考電壓讀重試步長lj的關系符合公式:li=a×lj;該設計考慮同一頁面不同讀參考電壓變化的相關性,減少了讀重試次數,實現了讀取效率的提高。