背景
隨著NAND Flash技術(shù)發(fā)展,存儲廠商通過降低存儲單元的大小、采用多階存儲技術(shù)(比如MLC、TLC、QLC)或者使用三維堆疊技術(shù),來提高存儲密度的目的。但是此舉也會帶來可靠性問題,比如降低存儲單元的大小會導(dǎo)致存儲單元中存儲的電子數(shù)量的減少;多階存儲技術(shù)會導(dǎo)致存儲單元中代表不同信息的電壓區(qū)間縮小而影響NAND Flash的可靠性。
在NAND Flash的眾多特性里,其中讀干擾(Read Disturb)表現(xiàn)為如果對NAND閃存中某個位置進(jìn)行多次讀取,會對同一個塊中其它未操作的頁造成干擾(數(shù)據(jù)誤碼率會越來越高),這種特性的影響程度和讀取次數(shù)、NAND閃存的架構(gòu)、塊的擦除寫入次數(shù)、是否滿塊編程等密切相關(guān),如果不及時處理,會導(dǎo)致誤碼率超過糾錯引擎的范圍引發(fā)數(shù)據(jù)丟失。
圖1:NAND Flash閾值錯誤
01
固件處理策略
當(dāng)前業(yè)內(nèi)一般的做法是記錄塊的讀取次數(shù),當(dāng)達(dá)到閾值時就把對應(yīng)塊上面的數(shù)據(jù)進(jìn)行搬移,即讀回收(Read Reclaim)的操作。然而,在讀密集的應(yīng)用上,讀干擾可能會觸發(fā)大量的數(shù)據(jù)搬移,提高寫放大,且影響前端的響應(yīng)速度。
得一微電子基于對NAND Flash深入的研究和豐富的處理經(jīng)驗,形成了一套成熟的固件處理方案有效解決讀干擾問題,有效提升客戶的存儲產(chǎn)品體驗。
快速掃描干擾塊
由于NAND Flash每個block的讀耐受程度差異,如果使用單純記錄塊計數(shù)的辦法會不太準(zhǔn)確,取一個保守的值會導(dǎo)致無效的讀回收,取一個過大的值會導(dǎo)致讀回收不及時。
得一微固件團(tuán)隊深入分析NAND Flash的頁編碼規(guī)則,找到對應(yīng)讀干擾造成最大影響的頁,固件通過掃描塊中的這些頁來確認(rèn)讀干擾造成的影響程度,然后把受到干擾的page remap到其它block上,或者對整塊進(jìn)行讀回收。
智能選取讀參考電壓
同樣的,在NAND Flash導(dǎo)入時對其特性進(jìn)行全面分析:包括讀干擾對NAND Flash的影響情況,并且找出合理的Vread值。固件在讀取目標(biāo)頁的時候,會參考該塊受到讀干擾影響的情況去選擇對應(yīng)的Vread,從而降低讀取數(shù)據(jù)的出錯比特,減少甚至避免read retry,提高指令的響應(yīng)時間。
熱讀數(shù)據(jù)分離
在讀密集的應(yīng)用上,如果熱讀數(shù)據(jù)和冷讀數(shù)據(jù)編程在同一個NAND block上,讀回收會導(dǎo)致冷讀數(shù)據(jù)回收搬移,帶來無效的NAND寫入。可以使用得一微自研仿真平臺對被測樣品的操作序列進(jìn)行分析,使用有效的策略區(qū)分熱讀數(shù)據(jù)和冷讀數(shù)據(jù),把熱讀數(shù)據(jù)編程到SLC mode塊上,從而降低讀回收帶來寫放大。
02
方案效益分析
測試場景
抓取方式介紹:在平臺使用過程中,我們在eMMC中增加log輸出,輸出內(nèi)容包括讀、寫、擦除地址和長度、指令間空閑時間等。在模擬器測試的時候,可以重復(fù)注入同一個激勵:
觀看視頻:使用手機(jī)在app上觀看視頻,測試時長24小時。
日常使用:模擬日常高強(qiáng)度使用手機(jī),包括使用微信、拍照、瀏覽網(wǎng)頁等行為,使用時長10天。
休眠喚醒:使用工具,定期對手機(jī)進(jìn)行休眠喚醒。
讀干擾測例:我們內(nèi)部為專門驗證讀干擾特性所編寫的測試用例,可以快速觸發(fā)讀干擾問題。
實驗結(jié)果和分析
實驗對比兩個讀干擾策略,分別是應(yīng)用了常規(guī)讀回收方案的原始方案和應(yīng)用了固件處理策略的優(yōu)化方案,對比兩個方案的寫放大和讀干擾觸發(fā)回收的次數(shù)。
實驗以原始方案的寫放大和讀干擾回收次數(shù)為基準(zhǔn),比較優(yōu)化方案和原始方案的對應(yīng)參數(shù),從而畫出圖2。
圖2:不同讀干擾方案參數(shù)效益比對
由上述的實驗結(jié)果我們可以直觀的看到,應(yīng)用了新策略方案的結(jié)果較原始方案會更好。在觀看視頻和讀干擾的測例上,讀干擾方案優(yōu)化的效果非常明顯;在重啟測試上,由于重復(fù)讀取固定地址的占比不大,所以讀干擾方案優(yōu)化的效果不明顯。
總結(jié)
得一微自研的算法模擬器是一套完善、高效的固件仿真器,可以把平臺對eMMC的操作序列作為激勵注入。模擬器擁有完整的NAND Flash模型來模擬讀干擾特性,可以快速驗證固件處理策略的效果。正是基于此算法模擬器,讓得一微的固件團(tuán)隊能夠輕松構(gòu)建NAND Flash讀干擾的特征(讀耐受次數(shù)、影響鄰近頁的穩(wěn)定性、Wordline中容易出錯的頁等),使用不同場景的操作序列作為激勵,最后比較采用不同策略固件的關(guān)鍵參數(shù),從而判定策略的適配性。
-
閃存
+關(guān)注
關(guān)注
16文章
1771瀏覽量
114768 -
嵌入式
+關(guān)注
關(guān)注
5060文章
18975瀏覽量
302093 -
emmc
+關(guān)注
關(guān)注
7文章
198瀏覽量
52552
原文標(biāo)題:嵌入式eMMC存儲讀干擾應(yīng)對方案
文章出處:【微信號:SSDFans,微信公眾號:SSDFans】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論