免费又黄又爽A片免费看,99国内精品久久久久久久,色视频WWW在线播放国产人成,午夜内射中出视频,国产人成视频在线观看

我們已經準備好了

深耕行業21年,國家高(gao)新企業/專精特新企業...

燒錄服務

從Nand特性談其燒錄關鍵點

 來源:電子產品世界

  為什么 ;Flash經常(chang)失(shi)敗(bai)?為什么成功了(le),一部分芯片貼(tie)板(ban)之后系統卻運(yun)行不起來?…,等等,問(wen)(wen)了(le)那(nei)么多為什么,那(nei)我反問(wen)(wen)一個問(wen)(wen)題:你了(le)解(jie) Flash的特(te)性及其關鍵點嗎?


圖片10.jpg

 一(yi)、Nand flash的特性(xing)

  1、位翻轉

  在 NAND 閃存(cun)(cun)是通(tong)過對(dui)(dui)(dui)存(cun)(cun)儲單元(Cell)進行充(chong)電(dian)來(lai)完成數(shu)據存(cun)(cun)儲的(de),存(cun)(cun)儲單元的(de)閾(yu)值(zhi)電(dian)壓就(jiu)(jiu)對(dui)(dui)(dui)應(ying)著數(shu)據值(zhi)。當讀(du)取(qu)的(de)時(shi)候,通(tong)過將它的(de)閾(yu)值(zhi)電(dian)壓與參考(kao)(kao)點(dian)(dian)對(dui)(dui)(dui)比來(lai)獲得其數(shu)據值(zhi)。對(dui)(dui)(dui)SLC 而(er)(er)言(yan),就(jiu)(jiu)只有兩種(zhong)狀態和(he)一個參考(kao)(kao)點(dian)(dian)。而(er)(er)對(dui)(dui)(dui)于2-Bits 的(de)MLC 而(er)(er)言(yan),它有4 種(zhong)狀態和(he)三個參考(kao)(kao)點(dian)(dian)。TLC就(jiu)(jiu)更多(duo)狀態和(he)參考(kao)(kao)點(dian)(dian)。當讀(du)出的(de)數(shu)據值(zhi)與編程時(shi)數(shu)據值(zhi)對(dui)(dui)(dui)應(ying)的(de)閾(yu)值(zhi)電(dian)壓不相匹(pi)配時(shi),表(biao)明數(shu)據發生了位(wei)翻(fan)轉(zhuan),就(jiu)(jiu)帶來(lai)了可靠性問題。導致位(wei)翻(fan)轉(zhuan)的(de)最常(chang)見原因是“編程干擾(rao)”導致的(de)閾(yu)值(zhi)電(dian)壓漂移(yi)。

  2、存儲結構

  Nand 閃存由(you)多(duo)個Block組成(cheng),每一個Block又由(you)多(duo)個Page組成(cheng),Page的(de)大小一般為512+16Bytes 、2K+64Bytes以及4096+128Bytes,Page是讀取和編程的(de)基(ji)本單位,而擦(ca)除的(de)基(ji)本單位是Block。

  NAND Flash的頁,包含(han)主(zhu)區(qu)(qu)(Main Area)和備用(yong)區(qu)(qu)(Spare Area)兩(liang)個域,“主(zhu)區(qu)(qu)”也(ye)常(chang)稱(cheng)作數(shu)據(ju)區(qu)(qu),備用(yong)區(qu)(qu)是保留區(qu)(qu)域,一(yi)般用(yong)來標記(ji)(ji)壞(huai)塊(bad block)和存放(fang)ECC的值,當然有些文(wen)件系統使(shi)用(yong)備用(yong)區(qu)(qu)記(ji)(ji)錄擦除次數(shu)、文(wen)件組織(zhi)數(shu)據(ju)等。

  

圖片11.jpg

  圖1.1 為(wei)頁(ye)大小為(wei)2048+64的閃存存儲(chu)結(jie)構

  3、壞(huai)塊及ECC

  位翻轉的(de)(de)發生是(shi)(shi)隨機的(de)(de),且比特(te)誤(wu)碼的(de)(de)數(shu)量(liang)會(hui)隨著擦寫(xie)次數(shu)的(de)(de)增加(jia)而增加(jia)。但是(shi)(shi)只(zhi)要比特(te)誤(wu)碼的(de)(de)數(shu)量(liang)在(zai)(zai)(zai)ECC 能夠糾正(zheng)的(de)(de)范圍內,數(shu)據(ju)的(de)(de)完整(zheng)性就始終(zhong)有保障(zhang)。在(zai)(zai)(zai)有些點,每頁(ye)的(de)(de)比特(te)誤(wu)碼有可(ke)(ke)能很接近(jin)ECC 所(suo)能糾正(zheng)的(de)(de)極限,NAND 的(de)(de)控制系統必(bi)須(xu)嚴防比特(te)誤(wu)碼超(chao)過可(ke)(ke)糾錯的(de)(de)范圍,否則,就可(ke)(ke)能造成(cheng)數(shu)據(ju)丟失或者系統無法正(zheng)常(chang)工作(zuo)。因此,這些塊(kuai)(kuai)必(bi)須(xu)要標(biao)記(ji)為(wei)(wei)壞塊(kuai)(kuai)。壞塊(kuai)(kuai)永(yong)遠不(bu)應該再用來(lai)存儲數(shu)據(ju)。由于壞塊(kuai)(kuai)的(de)(de)產生是(shi)(shi)不(bu)可(ke)(ke)避免的(de)(de),NAND 制造商在(zai)(zai)(zai)對裸(luo)片(pian)測試(shi)時會(hui)選擇對某(mou)些塊(kuai)(kuai)進(jin)行(xing)壞塊(kuai)(kuai)標(biao)記(ji),而不(bu)是(shi)(shi)放棄整(zheng)個(ge)裸(luo)片(pian),所(suo)以(yi)大多數(shu)NAND 在(zai)(zai)(zai)出廠時就已經存在(zai)(zai)(zai)標(biao)記(ji)為(wei)(wei)壞塊(kuai)(kuai)的(de)(de)塊(kuai)(kuai)。如果一個(ge)NAND 的(de)(de)塊(kuai)(kuai)被標(biao)記(ji)為(wei)(wei)壞塊(kuai)(kuai),那(nei)么NAND 的(de)(de)容量(liang)就永(yong)久性的(de)(de)減小了。

  二(er)、Nand系統(tong)裸片(pian)量(liang)產燒錄(lu)的關鍵點

  由(you)于Nand flash芯片(pian)的特(te)性(xing),以其作(zuo)為存儲介(jie)質時必(bi)須(xu)對這(zhe)些(xie)特(te)性(xing)進(jin)行(xing)恰(qia)當處理,這(zhe)樣系(xi)統(tong)(tong)才能正(zheng)常運行(xing)。系(xi)統(tong)(tong)設定各(ge)分區數據在(zai)Nand芯片(pian)的存儲布局,并且在(zai)存儲驅(qu)動層對Nand進(jin)行(xing)位糾錯、壞塊(kuai)管理等(deng)處理,這(zhe)些(xie)信息需(xu)要(yao)系(xi)統(tong)(tong)/驅(qu)動工程師明(ming)確。

  研發(fa)階段或(huo)小批量生產階段,常采用在(zai)板燒錄的(de)方式,原理是(shi)將boot通過(guo)串口下載到(dao)內存跑起來,由boot從SD卡或(huo)網絡將內核(he)鏡像、文件系統鏡像等數據(ju)燒錄到(dao)Nand flash芯(xin)片。

  為了提高生產效率或(huo)別的方(fang)面考慮,會使用燒(shao)(shao)(shao)錄(lu)(lu)(lu)器對(dui)Nand flash裸片(pian)進行(xing)量產燒(shao)(shao)(shao)錄(lu)(lu)(lu),由于燒(shao)(shao)(shao)錄(lu)(lu)(lu)器廠(chang)家并不(bu)(bu)知道存儲(chu)驅(qu)動層對(dui)Nand各種特(te)性的處理方(fang)式,所以不(bu)(bu)加(jia)正確配置就進行(xing)燒(shao)(shao)(shao)錄(lu)(lu)(lu)的話,往往出(chu)現(xian)(xian)以下情況:1. 燒(shao)(shao)(shao)錄(lu)(lu)(lu)失敗(bai),經常(chang)是(shi)校驗通(tong)不(bu)(bu)過(guo);2. 燒(shao)(shao)(shao)錄(lu)(lu)(lu)通(tong)過(guo),但是(shi)部分芯片(pian)貼板之(zhi)后系(xi)統運(yun)(yun)行(xing)不(bu)(bu)起來,或(huo)者(zhe)運(yun)(yun)行(xing)起來某些(xie)模(mo)塊出(chu)現(xian)(xian)一些(xie)錯誤與異常(chang)。這些(xie)大多不(bu)(bu)是(shi)燒(shao)(shao)(shao)錄(lu)(lu)(lu)器本身的問題,而是(shi)裸片(pian)燒(shao)(shao)(shao)錄(lu)(lu)(lu)Nand系(xi)統時幾個(ge)重要的關(guan)鍵(jian)點(dian)沒有處理好,或(huo)者(zhe)說沒有和目標(biao)系(xi)統相關(guan)處理一致。這些(xie)關(guan)鍵(jian)點(dian)包括:

  1) 壞塊處(chu)理策略

  2) 分區(Partition)

  3) 糾錯碼(ma)(Error Correction Codes,ECC)

  當然,影響燒錄的還有其他因素(su),比如備用(yong)區的使(shi)用(yong)情況、未用(yong)好快的格式化以及動態元數(shu)據(ju)等,但我們(men)這(zhe)里只討論上面幾個比較普(pu)遍(bian)的因素(su)。

  1、壞塊處理策略

  壞(huai)塊(kuai)(kuai)(kuai)(kuai)(kuai)一(yi)般是根據芯片的(de)(de)(de)壞(huai)塊(kuai)(kuai)(kuai)(kuai)(kuai)標記位置進行識別(bie)的(de)(de)(de),而壞(huai)塊(kuai)(kuai)(kuai)(kuai)(kuai)處理(li)策略定義了(le)在遇到(dao)壞(huai)塊(kuai)(kuai)(kuai)(kuai)(kuai)時算法應該如何處理(li)。策略算法負責(ze)將(jiang)本來(lai)應該寫到(dao)壞(huai)塊(kuai)(kuai)(kuai)(kuai)(kuai)的(de)(de)(de)內容寫到(dao)其(qi)它可選的(de)(de)(de)好塊(kuai)(kuai)(kuai)(kuai)(kuai)中。最常(chang)用的(de)(de)(de)壞(huai)塊(kuai)(kuai)(kuai)(kuai)(kuai)處理(li)策略是跳(tiao)過壞(huai)塊(kuai)(kuai)(kuai)(kuai)(kuai),其(qi)他典(dian)型的(de)(de)(de)還有帶BBT的(de)(de)(de)跳(tiao)過壞(huai)塊(kuai)(kuai)(kuai)(kuai)(kuai)及預(yu)留塊(kuai)(kuai)(kuai)(kuai)(kuai)區等。

  跳(tiao)過(guo)壞(huai)塊(kuai)(kuai)的(de)處理策略(lve)是最(zui)基本最(zui)常用(yong)的(de)壞(huai)塊(kuai)(kuai)替換策略(lve)。當(dang)燒錄中(zhong)遇到壞(huai)塊(kuai)(kuai)時,算法簡單(dan)地跳(tiao)過(guo)壞(huai)塊(kuai)(kuai),而將數據(ju)寫(xie)入(ru)下一個好(hao)塊(kuai)(kuai)。它會造成物理數據(ju)和(he)邏輯數據(ju)的(de)位置偏(pian)移,這(zhe)通常需要(yao)分區來解決(jue)這(zhe)個問(wen)題(ti)。

  2、分區(Partition)

  采用類(lei)跳(tiao)過壞塊的(de)(de)處理策(ce)略的(de)(de)Nand系統,常(chang)常(chang)會把存儲區(qu)(qu)分(fen)(fen)成(cheng)若干個不同的(de)(de)物理區(qu)(qu)域,這(zhe)就是我們說的(de)(de)分(fen)(fen)區(qu)(qu),概念上很像電腦硬盤的(de)(de)分(fen)(fen)區(qu)(qu)。使用分(fen)(fen)區(qu)(qu)使得你有能力確保你的(de)(de)數(shu)據可(ke)以存到預(yu)先指定的(de)(de)物理塊區(qu)(qu)內,即便(bian)在這(zhe)之(zhi)前(qian)發現了一些(xie)壞塊。這(zhe)對(dui)一些(xie)底(di)層軟件組(zu)件比如啟(qi)動引導程序(xu)和某些(xie)必須很容易定位的(de)(de)文(wen)件系統驅動程序(xu)來說,是非常(chang)有幫(bang)助的(de)(de)。

  當使用跳過壞塊(kuai)的替換(huan)策(ce)略時,壞塊(kuai)會(hui)導致數(shu)據順移到下一(yi)個好塊(kuai)。如果(guo)設置了分區,就可以指導燒錄器確(que)定數(shu)據的邊界,確(que)保數(shu)據文件不會(hui)侵占鄰近的分區。

  圖2.2.1就(jiu)是典型的嵌(qian)入式Linux系統(tong)的分區(qu)情況。

  

圖片12.jpg

 

  圖2.2.1 典型的嵌入(ru)式Linux系統分區情況

  3、糾錯(cuo)碼(ma)(Error Correction Codes,ECC)

  針對(dui)(dui)不同工藝(yi)、容量(liang)(liang)的(de)(de)(de)(de)NAND存儲(chu)系統采(cai)用(yong)適當(dang)的(de)(de)(de)(de)ECC算(suan)法是(shi)(shi)應(ying)該的(de)(de)(de)(de),要(yao)保證系統的(de)(de)(de)(de)可(ke)靠性(xing),甚至(zhi)是(shi)(shi)必(bi)須的(de)(de)(de)(de)。ECC糾錯碼一般存放在(zai)備用(yong)區中,對(dui)(dui)一整頁或將(jiang)頁分成若干節的(de)(de)(de)(de)數(shu)據(ju)(ju)進行(xing)計算(suan)而得(de)。數(shu)據(ju)(ju)燒(shao)錄之前需要(yao)準備好ECC(硬件ECC除(chu)外),如(ru)果是(shi)(shi)純數(shu)據(ju)(ju)則需要(yao)使用(yong)ECC算(suan)法來生(sheng)成。Nand裸片量(liang)(liang)產(chan)中,知(zhi)道ECC算(suan)法的(de)(de)(de)(de)糾錯能力(糾錯位數(shu))是(shi)(shi)很重要(yao)的(de)(de)(de)(de),因(yin)為要(yao)保證生(sheng)產(chan)效率,燒(shao)錄器(qi)如(ru)果采(cai)用(yong)ECC來進行(xing)校驗(yan)(yan)數(shu)據(ju)(ju)是(shi)(shi)不實際(ji)的(de)(de)(de)(de),而通(tong)過(guo)簡單數(shu)據(ju)(ju)比對(dui)(dui)就可(ke)以知(zhi)道數(shu)據(ju)(ju)的(de)(de)(de)(de)位翻轉個數(shu),如(ru)果翻轉個數(shu)范(fan)圍在(zai)ECC算(suan)法的(de)(de)(de)(de)糾錯范(fan)圍之內,則認為校驗(yan)(yan)應(ying)該是(shi)(shi)通(tong)過(guo)的(de)(de)(de)(de)。

  三、燒錄定制

  對于以上關鍵點或其它特殊部分,如果燒錄器軟件沒有支持的相應的方案,需要聯系原廠進行相關算(suan)法的定制,比如壞塊處理方案、ECC方案等(deng)。


應用場景 · 生態圈

適用于所有電子電路(lu)制(zhi)造行業、及半(ban)導體相關產業

服務熱(re)線(xian)

服務熱線

0755-2788 9099

微(wei)信咨詢
深圳市浦洛電子科技有限公司
返回頂(ding)部