摘要
隨著嵌入式Linux系統(tǒng)在消費(fèi)電子、數(shù)據(jù)采集和工業(yè)控制等領(lǐng)域得到越來(lái)越廣泛的應(yīng)用,無(wú)論是在方案設(shè)計(jì),還是產(chǎn)能提升上,都提出了更高的要求。其中存儲(chǔ)方案,作為嵌入式Linux系統(tǒng)中最重要的組成部分,從選型、設(shè)計(jì),到燒錄都應(yīng)該引起我們的重視。 存儲(chǔ)芯片的選型,比較常用的有Nor Flash、Nand Flash以及eMMC等類(lèi)型,人們根據(jù)速度、容量、成本等因素來(lái)選擇它們。
Nor Flash比較簡(jiǎn)單、穩(wěn)定,讀取速度快,但單價(jià)便宜、容量較小。
eMMC采用了統(tǒng)一的MMC接口,集成了控制器、及大容量存儲(chǔ)陣列,操作上也比較簡(jiǎn)單,但目前單價(jià)較貴。
Nand Flash作為一種安全、快速的存儲(chǔ)器,具有體積小、容量大、成本低、以及更多的擦除次數(shù)等一系列優(yōu)點(diǎn),已成為嵌入式系統(tǒng)中數(shù)據(jù)和程序最主要的載體。由于Nand Flash在結(jié)構(gòu)和操作方式上與硬盤(pán)、E2PROM等其他存儲(chǔ)介質(zhì)有較大區(qū)別,使用Nand Flash時(shí)必須根據(jù)其自身特性,對(duì)文件系統(tǒng)進(jìn)行特殊設(shè)計(jì),以保證系統(tǒng)的性能達(dá)到最優(yōu)。同時(shí)由于工藝和使用環(huán)境的問(wèn)題,Nand Flash存儲(chǔ)器中不可避免的會(huì)出現(xiàn)位翻轉(zhuǎn)及壞塊,因此必須提出有效的ECC方案及壞塊處理策略,以實(shí)現(xiàn)存儲(chǔ)系統(tǒng)的高可靠性。
上面三種Flash的特性決定了各自燒錄方面的復(fù)雜度,Nor Flash和eMMC都比較簡(jiǎn)單,而Nand Flash是最復(fù)雜的。
嵌入式linux系統(tǒng)設(shè)計(jì)好之后,量產(chǎn)方式的選擇往往決定了生產(chǎn)流程及產(chǎn)能的高低。
1、在線燒錄。它沿用了研發(fā)階段的燒錄方式,先將boot程序加載到板子上的CPU上跑起來(lái),構(gòu)建好環(huán)境之后將系統(tǒng)燒錄進(jìn)Flash芯片中。這種方式簡(jiǎn)單,但燒錄效率較低下,而且要求產(chǎn)品生產(chǎn)過(guò)程是先貼板,如果芯片(尤其是Nand Flash)本身不良,必須再把Flash芯片吹下來(lái),換顆芯片再貼板。
2、SD卡燒錄。這種方式原理跟在線燒錄類(lèi)似,但不用聯(lián)PC機(jī),方便靈活,也是要先貼板。
3、裸片燒錄。這種方式是先將系統(tǒng)燒錄進(jìn)Flash芯片再貼板,速度快,并且產(chǎn)量巨大時(shí)方便外包給代燒廠商進(jìn)行燒錄。這種方式需要注意:如果是燒錄eMMC,對(duì)eMMC寄存器一定要配置正確;如果是燒錄Nand Flash,一定要明確系統(tǒng)采用的ECC算法及壞塊處理策略。
|