基于ARM9內(nèi)核Processor外部NANDFLASH的控制實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
1 NAND FLASH
NAND寫(xiě)回速度快、芯片面積小,特別是大容量使其優(yōu)勢(shì)明顯。頁(yè)是NAND中的基本存貯單元,一頁(yè)一般為512 B(也有2 kB每頁(yè)的large page NAND FLASH),多個(gè)頁(yè)面組成塊。不同存儲(chǔ)器內(nèi)的塊內(nèi)頁(yè)面數(shù)不盡相同,通常以16頁(yè)或32頁(yè)比較常見(jiàn)。塊容量計(jì)算公式比較簡(jiǎn)單,就是頁(yè)面容量與塊內(nèi)頁(yè)面數(shù)的乘積。根據(jù)FLASH Memory容量大小,不同存儲(chǔ)器中的塊、頁(yè)大小可能不同,塊內(nèi)頁(yè)面數(shù)也不同。例如:8 MB存儲(chǔ)器,頁(yè)大小常為512 B、塊大小為8 kB,塊內(nèi)頁(yè)面數(shù)為16。而2 MB的存儲(chǔ)器的頁(yè)大小為256 B、塊大小為4 kB,塊內(nèi)頁(yè)面數(shù)也是16。NAND存儲(chǔ)器由多個(gè)塊串行排列組成。實(shí)際上,NAND型的FLASHMemory可認(rèn)為是順序讀取的設(shè)備,他僅用8 b的I/O端口就可以存取按頁(yè)為單位的數(shù)據(jù)。NAND在讀和擦寫(xiě)文件、特別是連續(xù)的大文件時(shí),速度相當(dāng)快。
2 NAND FLASH與NOR FLASH比較
NOR的特點(diǎn)是可在芯片內(nèi)執(zhí)行,這樣程序應(yīng)該可以直接在FLASH內(nèi)存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中。NOR的傳輸效率很高,但寫(xiě)入和讀出速度較低。而NAND結(jié)構(gòu)能提供極高的單元密度,并且寫(xiě)入和擦除的速度也很快,是高數(shù)據(jù)存儲(chǔ)密度的最佳選擇。
這兩種結(jié)構(gòu)性能上的異同主要為:NOR的讀速度比NAND快;NAND的寫(xiě)入速度比NOR快很多;NAND的擦除速度遠(yuǎn)比NOR快;NAND的擦除單元更小,相應(yīng)的擦除電路也更加簡(jiǎn)單;NAND的實(shí)際應(yīng)用方式要比NOR復(fù)雜得多;NOR可以直接使用,并在上面直接運(yùn)行代碼,而NAND需要I/O接口,因此使用時(shí)需要驅(qū)動(dòng)程序。
3 NAND FLASH在系統(tǒng)中的控制
在沒(méi)有NAND FLASH硬件接口的環(huán)境中,通過(guò)軟體控制CPU時(shí)序和硬件特殊接線方式實(shí)現(xiàn)仿真NANDFLASH接口,進(jìn)而實(shí)現(xiàn)在嵌入式系統(tǒng)中脫離NANDFLASH專(zhuān)用硬件接口進(jìn)行對(duì)NAND FLASH讀、寫(xiě)、擦除等操作的實(shí)現(xiàn)方法。
本方法主要工作在以下兩個(gè)方面:
軟件方面:針對(duì)特殊硬件線路的軟體設(shè)計(jì)和嚴(yán)格的CPU時(shí)序控制;
硬件方面:硬件的線路設(shè)計(jì),利用NOR FLASH專(zhuān)用硬件接口控制NAND FLASH。
首先建立的開(kāi)發(fā)平臺(tái)如圖1所示。