基于ARM9內(nèi)核Processor外部NANDFLASH的控制實(shí)現(xiàn)
NAND寫回速度快、芯片面積小,特別是大容量使其優(yōu)勢(shì)明顯。頁(yè)是NAND中的基本存貯單元,一頁(yè)一般為512B(也有2kB每頁(yè)的largepageNANDFLASH),多個(gè)頁(yè)面組成塊。不同存儲(chǔ)器內(nèi)的塊內(nèi)頁(yè)面數(shù)不盡相同,通常以16頁(yè)或32頁(yè)比較常見。塊容量計(jì)算公式比較簡(jiǎn)單,就是頁(yè)面容量與塊內(nèi)頁(yè)面數(shù)的乘積。根據(jù)FLASHMemory容量大小,不同存儲(chǔ)器中的塊、頁(yè)大小可能不同,塊內(nèi)頁(yè)面數(shù)也不同。例如:8MB存儲(chǔ)器,頁(yè)大小常為512B、塊大小為8kB,塊內(nèi)頁(yè)面數(shù)為16。而2MB的存儲(chǔ)器的頁(yè)大小為256B、塊大小為4kB,塊內(nèi)頁(yè)面數(shù)也是16。NAND存儲(chǔ)器由多個(gè)塊串行排列組成。實(shí)際上,NAND型的FLASHMemory可認(rèn)為是順序讀取的設(shè)備,他僅用8b的I/O端口就可以存取按頁(yè)為單位的數(shù)據(jù)。NAND在讀和擦寫文件、特別是連續(xù)的大文件時(shí),速度相當(dāng)快。
2 NANDFLASH與NORFLASH比較
NOR的特點(diǎn)是可在芯片內(nèi)執(zhí)行,這樣程序應(yīng)該可以直接在FLASH內(nèi)存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中。NOR的傳輸效率很高,但寫入和讀出速度較低。而NAND結(jié)構(gòu)能提供極高的單元密度,并且寫入和擦除的速度也很快,是高數(shù)據(jù)存儲(chǔ)密度的最佳選擇。
這兩種結(jié)構(gòu)性能上的異同主要為:NOR的讀速度比NAND快;NAND的寫入速度比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 NANDFLASH在系統(tǒng)中的控制
在沒有NANDFLASH硬件接口的環(huán)境中,通過軟體控制CPU時(shí)序和硬件特殊接線方式實(shí)現(xiàn)仿真NANDFLASH接口,進(jìn)而實(shí)現(xiàn)在嵌入式系統(tǒng)中脫離NANDFLASH專用硬件接口進(jìn)行對(duì)NANDFLASH讀、寫、擦除等操作的實(shí)現(xiàn)方法。
本方法主要工作在以下兩個(gè)方面:
軟件方面:針對(duì)特殊硬件線路的軟體設(shè)計(jì)和嚴(yán)格的CPU時(shí)序控制;
硬件方面:硬件的線路設(shè)計(jì),利用NORFLASH專用硬件接口控制NANDFLASH。
首先建立的開發(fā)平臺(tái)如圖1所示。
本平臺(tái)使用Intel的PXA270Processor,無(wú)內(nèi)建NANDFLASHCONtroller,使用NORFLASHController控制NANDFLASH,具體的線路連接方式如圖2所示。
NANDFLASH的I/O0~I(xiàn)/07引腳用于對(duì)FLASH發(fā)送操作命令和收發(fā)數(shù)據(jù),ALE用于指示FLASH當(dāng)前數(shù)據(jù)為地址信息,CLE用于指示當(dāng)前數(shù)據(jù)為操作命令信息,當(dāng)兩者都無(wú)效時(shí),為數(shù)據(jù)信息。CE引腳用于FLASH片選。RE和WE分別為FLASH讀、寫控制,R/B指示FLASH命令是否已經(jīng)完成。逭里選用的是CEdon'tcare的NANDFLASH。
電機(jī)保護(hù)器相關(guān)文章:電機(jī)保護(hù)器原理
評(píng)論