1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. 嵌入式文件系統(tǒng)移植

        時(shí)間:2024-07-23 22:12:25 嵌入式培訓(xùn) 我要投稿
        • 相關(guān)推薦

        嵌入式文件系統(tǒng)移植

          嵌入式系統(tǒng)是一種“完全嵌入到受控器件內(nèi)部,為特定應(yīng)用而設(shè)計(jì)的專用計(jì)算機(jī)系統(tǒng)”。下面是小編整理的嵌入式文件系統(tǒng)移植,希望大家認(rèn)真閱讀!

          1.1. 計(jì)算機(jī)組成原理

          從馮.諾依曼的存儲(chǔ)程序工作原理及計(jì)算機(jī)的組成來說,計(jì)算機(jī)由運(yùn)算器、控制器、存儲(chǔ)器和輸入/輸出設(shè)備五大部件組成。其中運(yùn)算器和控制器統(tǒng)稱為中央處理器(CPU),而存儲(chǔ)系統(tǒng)分成內(nèi)部存儲(chǔ)器(內(nèi)存)和外部存儲(chǔ)器(外存)。輸入/輸出設(shè)備并非計(jì)算機(jī)所必需的,如果一個(gè)設(shè)備具有CPU,內(nèi)存和外存,我們就可以說它是一臺(tái)計(jì)算機(jī)。在很多嵌入式設(shè)備上,都沒有輸入/輸出設(shè)備,所以從廣義來講,我們的手機(jī),MP3,平板電腦都可以說是一臺(tái)計(jì)算機(jī)。

          大家可能都聽說過單片機(jī),那么什么是單片機(jī)呢?其實(shí)單片機(jī)就是把CPU,內(nèi)存和外存集成在一個(gè)芯片里面,當(dāng)然他還包括其他的一些功能模塊。那么我們聽說的ARM9,ARM11是不是單片機(jī)呢?從嚴(yán)格意義上來講,他們并不是單片機(jī),雖說在很多ARM處理器里面都集成得有一個(gè)小容量的SRAM,但是由于CPU內(nèi)部沒有能夠掉電保存數(shù)據(jù)的外存,所以它就不是單片機(jī)。

          1.1.1. CPU

          中央處理器(英文CentralProcessingUnit,CPU)是一臺(tái)計(jì)算機(jī)的運(yùn)算核心和控制核心,其功能主要是解釋計(jì)算機(jī)指令以及處理計(jì)算機(jī)軟件中的數(shù)據(jù)。CPU由運(yùn)算器、控制器和寄存器及實(shí)現(xiàn)它們之間聯(lián)系的數(shù)據(jù)、控制及狀態(tài)的總線構(gòu)成。差不多所有的CPU的運(yùn)作原理可分為四個(gè)階段:提取/取指(Fetch)、解碼(Decode)、執(zhí)行(Execute)和寫回(Writeback)。 由于CPU的速度很快,而外存的速度很慢,所以CPU不從外存中取出數(shù)據(jù),而是從內(nèi)存或高速緩沖存儲(chǔ)器(cache)中取出指令,放入指令寄存器,并對(duì)指令譯碼,并執(zhí)行指令。

          1.1.2. 存儲(chǔ)器

          存儲(chǔ)器是用來存儲(chǔ)程序和數(shù)據(jù)的部件,對(duì)于計(jì)算機(jī)來說,有了存儲(chǔ)器,才有記憶功能,才能保證正常工作。存儲(chǔ)器的種類很多,按其用途可分為主存儲(chǔ)器(簡(jiǎn)稱內(nèi)存或主存)和輔助存儲(chǔ)器(簡(jiǎn)稱外存)。內(nèi)存是電腦中的主要部件,它是相對(duì)于外存而言的,其存儲(chǔ)速度快,掉電后數(shù)據(jù)丟失,是CPU能直接尋址的存儲(chǔ)空間。內(nèi)存一般采用半導(dǎo)體存儲(chǔ)單元,包括隨機(jī)存儲(chǔ)器(RAM)以及高速緩存(CACHE),而RAM是其中最重要的存儲(chǔ)器。在系統(tǒng)上電前,所有的數(shù)據(jù)都是存放在外存中的,內(nèi)存中的數(shù)據(jù)不可使用。當(dāng)內(nèi)存中沒有CPU需要的數(shù)據(jù)時(shí),會(huì)使用DMA(相當(dāng)于一個(gè)協(xié)處理器)將數(shù)據(jù)從外存中調(diào)入到內(nèi)存后,再?gòu)膬?nèi)存取數(shù)據(jù)。

          l 隨機(jī)存儲(chǔ)器(RAM)

          RAM(random access memory)隨機(jī)存儲(chǔ)器。存儲(chǔ)單元的內(nèi)容可按需隨意取出或存入,且存取的速度與存儲(chǔ)單元的位置無關(guān)的存儲(chǔ)器。這種存儲(chǔ)器在斷電時(shí)將丟失其存儲(chǔ)內(nèi)容,故主要用于存儲(chǔ)短時(shí)間使用的程序。 按照存儲(chǔ)信息的不同,隨機(jī)存儲(chǔ)器又分為靜態(tài)隨機(jī)存儲(chǔ)器(Static RAM,SRAM)和動(dòng)態(tài)隨機(jī)存儲(chǔ)器(Dynamic RAM,DRAM)。

          SRAM不需要刷新電路即能保存它內(nèi)部存儲(chǔ)的數(shù)據(jù),而DRAM(Dynamic Random Access Memory)每隔一段時(shí)間,要刷新充電一次,否則內(nèi)部的數(shù)據(jù)即會(huì)消失,因此SRAM具有較快的速度和較高的性能,但是SRAM也有它的缺點(diǎn),即它的集成度較低,相同容量的DRAM內(nèi)存可以設(shè)計(jì)為較小的體積,但是SRAM卻需要很大的體積,且功耗較大。SRAM的速度快但昂貴,一般用小容量的SRAM作為更高速CPU和較低速DRAM 之間的緩存(cache).

          在嵌入式領(lǐng)域,我們常見的DRAM有SDRAM和DDR(DOUBLE DATA RATE)RAM。SDRAM將CPU與RAM通過一個(gè)相同的時(shí)鐘鎖在一起,使CPU和RAM能夠共享一個(gè)時(shí)鐘周期,以相同的速度同步工作,每一個(gè)時(shí)鐘脈沖的上升沿便開始傳遞數(shù)據(jù)。DDR RAM 是SDRAM的更新?lián)Q代產(chǎn)品,他允許在時(shí)鐘脈沖的上升沿和下降沿傳輸數(shù)據(jù),這樣不需要提高時(shí)鐘的頻率就能加倍提高SDRAM的速度,在PC上上很常見,另外,很多高端的ARM處理器也支持DDR RAM。

          l 高速緩沖存儲(chǔ)器(Cache)

          Cache也是我們經(jīng)常遇到的概念,也就是平常看到的一級(jí)緩存(L1 Cache)、二級(jí)緩存(L2 Cache)、三級(jí)緩存(L3 Cache)這些數(shù)據(jù),它位于CPU與內(nèi)存之間,是一個(gè)讀寫速度比內(nèi)存更快的存儲(chǔ)器。當(dāng)CPU向內(nèi)存中寫入或讀出數(shù)據(jù)時(shí),這個(gè)數(shù)據(jù)也被存儲(chǔ)進(jìn)高速緩沖存儲(chǔ)器中。當(dāng)CPU再次需要這些數(shù)據(jù)時(shí),CPU就從高速緩沖存儲(chǔ)器讀取數(shù)據(jù),而不是訪問較慢的內(nèi)存,當(dāng)然,如需要的數(shù)據(jù)在Cache中沒有,CPU會(huì)再去讀取內(nèi)存中的數(shù)據(jù)。

          l 只讀存儲(chǔ)器(ROM)

          只讀存儲(chǔ)器(Read-Only Memory)是一種只能讀取資料的存儲(chǔ)器。在制造過程中,將資料以一特制光罩(mask)燒錄于線路中,其資料內(nèi)容在寫入后就不能更改,所以有時(shí)又稱為“光罩式只讀內(nèi)存”(mask ROM)。此內(nèi)存的制造成本較低,常用于電腦中的開機(jī)啟動(dòng)如啟動(dòng)光盤,在系統(tǒng)裝好的電腦上時(shí),計(jì)算機(jī)將C盤目錄下的操作系統(tǒng)文件讀取至內(nèi)存,然后通過cpu調(diào)用各種配件進(jìn)行工作這時(shí)系統(tǒng)存放存儲(chǔ)器為RAM 。這種屬于COMPACT DISC激光唱片,光盤就是這種。

          l 可編程程序只讀內(nèi)存(PROM)

          可編程程序只讀內(nèi)存(Programmable ROM,PROM)之內(nèi)部有行列式的镕絲,是需要利用電流將其燒斷,寫入所需的資料,但僅能寫錄一次。 PROM在出廠時(shí),存儲(chǔ)的內(nèi)容全為1,用戶可以根據(jù)需要將其中的某些單元寫入數(shù)據(jù)0(部分的PROM在出廠時(shí)數(shù)據(jù)全為0,則用 戶可以將其中的部分單元寫入1), 以實(shí)現(xiàn)對(duì)其“編程”的目的。PROM的典型產(chǎn)品是“雙極性熔絲結(jié)構(gòu)”,如果我們想改寫某些單元,則可以給這些單元通以足夠大的電流,并維持一定的時(shí)間,原 先的熔絲即可熔斷,這樣就達(dá)到了改寫某些位的效果。另外一類經(jīng)典的PROM為使用“肖特基二極管”的PROM,出廠時(shí),其中的二極管處于反向截止?fàn)顟B(tài),還 是用大電流的方法將反相電壓加在“肖特基二極管”,造成其永久性擊穿即可。

          l EPROM

          可擦出可編程只讀內(nèi)存(Erasable Programmable Read Only Memory,EPROM)可利用高電壓將資料編程寫入,抹除時(shí)將線路曝光于紫外線下,則資料可被清空,并且可重復(fù)使用。通常在封裝外殼上會(huì)預(yù)留一個(gè)石英透明窗以方便曝光。

          l EEPROM

          電可擦出可編程只讀內(nèi)存(Electrically Erasable Programmable Read Only Memory,EEPROM)之運(yùn)作原理類似EPROM,但是抹除的方式是使用高電場(chǎng)來完成,因此不需要透明窗。

          l FLASH

          FLASH表示Flash Memory的意思,即平時(shí)所說的“閃存”,全名叫Flash EEPROM Memory。它結(jié)合了ROM和RAM的長(zhǎng)處,不僅具備電子可擦除可編程(EEPROM)的性能,還可以快速讀取數(shù)據(jù)(NVRAM的優(yōu)勢(shì)),使數(shù)據(jù)不會(huì)因?yàn)閿嚯姸鴣G失。U盤和MP3里用的就是這種存儲(chǔ)器。在過去的20年里,嵌入式系統(tǒng)一直使用ROM(EPROM)作為它們的存儲(chǔ)設(shè)備,然而近年來Flash全面代替了ROM(EPROM)在嵌入式系統(tǒng)中的地位,用作存儲(chǔ)Bootloader以及操作系統(tǒng)或者程序代碼,或者直接當(dāng)硬盤使用(U盤)。

          1.2. 嵌入式Flash存儲(chǔ)器

          嵌入式硬件系統(tǒng)一般都需要有軟件的支持才能夠正常工作,嵌入式系統(tǒng)需要為軟件提供相應(yīng)的存儲(chǔ)空間。在以往的單片機(jī)系統(tǒng)內(nèi),一般使用ROM(Read Only Memory)或EPROM(Erasable Programmable Read Only Memory)存儲(chǔ)程序。由于現(xiàn)有的嵌入式系統(tǒng)越來越復(fù)雜,原有的ROM由于容量、靈活性差等的限制,無法滿足日益復(fù)雜的應(yīng)用要求。

          閃存(Flash)是電可擦除只讀存儲(chǔ)器(EEPROM)的變種,但兼有RAM和ROM 的優(yōu)點(diǎn),是一種可在系統(tǒng)(In-System)進(jìn)行電擦寫,掉電后信息不丟失的存儲(chǔ)器,同時(shí)它的高集成度和低成本使它成為市場(chǎng)主流。隨著Flash技術(shù)的成熟和普及,一些單片機(jī)芯片(如Freescale的8位單片機(jī)MC68HC908)已經(jīng)開始采用片內(nèi)FLASH取代過去常用的片內(nèi)ROM或EPROM,使單片機(jī)具有了在線編程寫入或擦除的功能。

          FLASH在結(jié)構(gòu)和操作方式上與硬盤、EEROM等其他存儲(chǔ)介質(zhì)有較大區(qū)別,他都是只能將1寫為0,而不能將0寫成1。所以在Flash編程之前,必須以塊為單位(塊大小一般為256KB到20MB)將對(duì)應(yīng)的塊擦除,而擦除的過程就是將所有位都寫為1的過程,塊內(nèi)的所有字節(jié)變?yōu)?xFF。因此可以說,編程是將相應(yīng)位寫0的過程,而擦除是將相應(yīng)位寫1的過程,兩者的執(zhí)行過程完全相反。而EEPROM能在字節(jié)水平上進(jìn)行刪除和重寫而不是整個(gè)芯片擦寫,這樣閃存就比EEPROM的更新速度快。

          Flash 芯片是由內(nèi)部成千上萬個(gè)存儲(chǔ)單元組成的,每個(gè)單元存儲(chǔ)一個(gè)bit。具有低功耗、大容量、擦寫速度快、可整片或分扇區(qū)在系統(tǒng)編程(燒寫)、擦除等特點(diǎn),并且可由內(nèi)部嵌入的算法完成對(duì)芯片的操作,因而在各種嵌入式系統(tǒng)中得到了廣泛的應(yīng)用。作為一種非易失性存儲(chǔ)器,F(xiàn)lash在系統(tǒng)中通常用于存放程序代碼、常量表以及一些在系統(tǒng)掉電后需要保存的用戶數(shù)據(jù)等。常用的Flash為8位或16位的數(shù)據(jù)寬度,編程電壓為單3.3V。主要的生產(chǎn)廠商為INTEL、ATMEL、AMD、HYUNDAI等。Flash 技術(shù)根據(jù)不同的應(yīng)用場(chǎng)合也分為不同的發(fā)展方向,有擅長(zhǎng)存儲(chǔ)代碼的NOR Flash和擅長(zhǎng)存儲(chǔ)數(shù)據(jù)的NAND Flash。

          1.3. Norflash和Nandflash的對(duì)比

          1.3.1. NANDFlash和NORFlash芯片的共性

          首先表現(xiàn)在向芯片中寫數(shù)據(jù)必須先將芯片中對(duì)應(yīng)的內(nèi)容清空,然后再寫入,即先擦后寫。只不過NORFlash芯片只用擦寫一個(gè)字,而NAND需要擦寫整個(gè)塊.其次,閃存擦寫的次數(shù)都是有限的.當(dāng)閃存使用接近使用壽命時(shí),經(jīng)常會(huì)出現(xiàn)寫操作失敗;到達(dá)使用壽命時(shí),閃存內(nèi)部存放的數(shù)據(jù)雖然可以讀,但不能再進(jìn)行寫操作了.所以為了防止上面問題的發(fā)生,不能對(duì)某個(gè)特定的區(qū)域反復(fù)進(jìn)行寫操作.通常NANDFlash可擦寫次數(shù)高于NORFlash芯片,但是由于NANDFlash通常是整塊擦寫,塊內(nèi)的頁(yè)面中如果有一位失效整個(gè)塊就會(huì)失效,而且由于擦寫過程復(fù)雜,失敗的概率相對(duì)較高,所以從整體上來說NOR的壽命較長(zhǎng).

          另一個(gè)共性是閃存的讀寫操作不僅僅是一個(gè)物理操作,實(shí)際上在閃存上存放數(shù)據(jù)必須使用算法實(shí)現(xiàn),這個(gè)模塊一般在驅(qū)動(dòng)程序的MTD'(Memory Technology Drivers)模塊中或者在FTLZ (Flash Translation Layer)層內(nèi)實(shí)現(xiàn),具體算法和芯片的生產(chǎn)廠商以及芯片型號(hào)有關(guān)系.通過比較可以發(fā)現(xiàn),NAND更適用于復(fù)雜的文件應(yīng)用,但是由于NAND芯片的使用相對(duì)復(fù)雜,所以對(duì)文件系統(tǒng)有較高的要求.

          1.3.2. NANDFlash和NORFlash芯片的不同

          (1)閃存芯片讀寫的基本單位不同

          應(yīng)用程序?qū)orFlash芯片操作以“字”為基本單位.為了方便對(duì)大容量NorFlash閃存的管理,通常將NOR閃存分成大小為128KB或64KB的邏輯塊,有時(shí)塊內(nèi)還分扇區(qū).讀寫時(shí)需要同時(shí)指定邏輯塊號(hào)和塊內(nèi)偏移.應(yīng)用程序?qū)andFlash芯片操作是以“塊”為基本單位.NAND閃存的塊比較小,一般是8KB,然后每塊又分成頁(yè),頁(yè)大小一般是512字節(jié).要修改NandFlash芯片中一個(gè)字節(jié),必須重寫整個(gè)數(shù)據(jù)塊.

          (2)NorFlash閃存是隨機(jī)存儲(chǔ)介質(zhì),用于數(shù)據(jù)量較小的場(chǎng)合;NandFlash閃存是連續(xù)存儲(chǔ)介質(zhì),適合存放大的數(shù)據(jù).

          (3)由于NorFlash地址線和數(shù)據(jù)線分開,所以NorFlash芯片可以像SDRAM一樣連在數(shù)據(jù)線上.NOR芯片的使用類似于通常內(nèi)存芯片,傳輸效率高,可執(zhí)行程序可以在芯片內(nèi)執(zhí)行(XI P, eXecute In Place),這樣應(yīng)用程序可以直接在flash閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中.由于NorFlash的這個(gè)特點(diǎn),嵌入式系統(tǒng)中經(jīng)常將NOR芯片做啟動(dòng)芯片使用.NandFlash共用地址和數(shù)據(jù)總線,需要額外聯(lián)結(jié)一些控制的輸入輸出,所以直接將NAND芯片做啟動(dòng)芯片比較難.

          (4)NandFlash閃存芯片因?yàn)楣灿玫刂泛蛿?shù)據(jù)總線的原因,不允許對(duì)一個(gè)字節(jié)甚至一個(gè)塊進(jìn)行的數(shù)據(jù)清空,只能對(duì)一個(gè)固定大小的區(qū)域進(jìn)行清零操作;NorFlash芯片可以對(duì)字進(jìn)行操作.所以在處理小數(shù)據(jù)量的I/O操作的時(shí)候的速度要快與NorFlash的速度.比如一塊NorFlash芯片通常寫一個(gè)字需要10us,在32位總線上寫512字節(jié)需要1280us;NandFlash閃存寫512字節(jié)需要的時(shí)間包括:512×每字節(jié)50ns+10us的尋頁(yè)時(shí)間+200us的片擦寫時(shí)間=234us.

          (5)NandFlash閃存的容量比較大,最大容量己達(dá)到8G字節(jié).為了方便管理,NandFlash的存儲(chǔ)空間使用了塊和頁(yè)兩級(jí)存儲(chǔ)體系,也就是說它的存儲(chǔ)空間是二維的,比如K9F5608UOA閃存塊的大小為16K,每頁(yè)大小是512字節(jié),每頁(yè)還16字節(jié)空閑區(qū)用來存放錯(cuò)誤校驗(yàn)碼空間(也稱為out-of-band,OOB空間).在進(jìn)行寫操作時(shí),NandFlash閃存每次將一個(gè)字節(jié)的數(shù)據(jù)放入內(nèi)部的緩存區(qū),然后再發(fā)出“寫指令”進(jìn)行寫操作.由于對(duì)NandFlash閃存的操作都是以塊和頁(yè)為單位的,所以在向NandFlash閃存進(jìn)行大量數(shù)據(jù)的讀寫時(shí),NAND的速度要快于NOR閃存.

          (6)NorFlash閃存的可靠性要高于NandFlash閃存,是因?yàn)镹orFlash型閃存的接口簡(jiǎn)單,數(shù)據(jù)操作少,位交換操作少,因此可靠性高,極少出現(xiàn)壞區(qū)塊,一般用在對(duì)可靠性要求高的地方.NandFlash型閃存接口和操作均相對(duì)復(fù)雜,位交換操作也很多,關(guān)鍵性數(shù)據(jù)更是需安錯(cuò)誤探測(cè)/錯(cuò)誤更正(EDC/ECC)算法來確保數(shù)據(jù)的完整性,因此出現(xiàn)問題的幾率要大得多,壞區(qū)塊也是不可避免的,而且由于壞區(qū)塊是隨機(jī)分布的,連糾錯(cuò)也無法做到.

          (7)NANDFlash一般地址線和數(shù)據(jù)線共用,對(duì)讀寫速度有一定影響;NORFlash閃存數(shù)據(jù)線和地址線分開,相對(duì)而言讀寫速度快一些.

          (8)接口對(duì)比

          NorFlash帶有通用的SRAM接口,可以輕松地掛接在CPU的地址、數(shù)據(jù)總線上,對(duì)CPU的接口要求低。NorFlash的特點(diǎn)是芯片內(nèi)執(zhí)行(XIP,eXecute In Place),這樣應(yīng)用程序可以直接在flash閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中.如uboot中的ro段可以直接在NorFlash上運(yùn)行,只需要把rw和zi段拷貝到RAM中運(yùn)行即可.

          NandFlash器件使用復(fù)雜的I/O口來串行地存取數(shù)據(jù),8個(gè)引腳用來傳送控制、地址和數(shù)據(jù)信息。由于時(shí)序較為復(fù)雜,所以一般CPU最好集成NandFlash控制器.另外由于NandFlash沒有掛接在地址總線上,所以如果想用NandFlash作為系統(tǒng)的啟動(dòng)盤,就需要CPU具備特殊的功能,如s3c2440在被選擇為NandFlash啟動(dòng)方式時(shí)會(huì)在上電時(shí)自動(dòng)讀取NandFlash的4k數(shù)據(jù)到地址0的SRAM中.如果CPU不具備這種特殊功能,用戶不能直接運(yùn)行NandFlash上的代碼,那可以采取其他方式,比如好多使用NandFlash的開發(fā)板除了使用NandFlash以外,還用上了一塊小的NorFlash來運(yùn)行啟動(dòng)代碼.

          (9)容量和成本對(duì)比

          相比起NandFlash來說,NorFlash的容量要小,一般在1~16MByte左右,一些新工藝采用了芯片疊加技術(shù)可以把NorFlash的容量做得大一些.在價(jià)格方面,NorFlash相比NandFlash來說較高,如目前市場(chǎng)上一片4Mbyte的AM29lv320 NorFlash零售價(jià)在20元左右,而一片128MByte的k9f1g08 NandFlash零售價(jià)在30元左右. NandFlash生產(chǎn)過程更為簡(jiǎn)單,NAND結(jié)構(gòu)可以在給定的模具尺寸內(nèi)提供更高的容量,這樣也就相應(yīng)地降低了價(jià)格.

          (10)可靠性性對(duì)比

          NandFlash器件中的壞塊是隨機(jī)分布的,以前也曾有過消除壞塊的努力,但發(fā)現(xiàn)成品率太低,代價(jià)太高,根本不劃算.Nand器件需要對(duì)介質(zhì)進(jìn)行初始化掃描以發(fā)現(xiàn)壞塊,并將壞塊標(biāo)記為不可用.在已制成的器件中,如果通過可靠的方法不能進(jìn)行這項(xiàng)處理,將導(dǎo)致高故障率。而壞塊問題在NorFlash上是不存在的.

          在Flash的位翻轉(zhuǎn)(一個(gè)bit位發(fā)生翻轉(zhuǎn))現(xiàn)象上,NAND的出現(xiàn)幾率要比NorFlash大得多.這個(gè)問題在Flash存儲(chǔ)關(guān)鍵文件時(shí)是致命的,所以在使用NandFlash時(shí)建議同時(shí)使用EDC/ECC等校驗(yàn)算法.

          (11)升級(jí)對(duì)比

          NorFlash的升級(jí)較為麻煩,因?yàn)椴煌萘康腘orFlash的地址線需求不一樣,所以在更換不同容量的NorFlash芯片時(shí)不方便.通常我們會(huì)通過在電路板的地址線上做一些跳接電阻來解決這樣的問題,針對(duì)不同容量的NorFlash. 而不同容量的NandFlash的接口是固定的,所以升級(jí)簡(jiǎn)單.

          (12)讀寫性能對(duì)比

          寫操作:任何flash器件的寫入操作都只能在空或已擦除的單元內(nèi)進(jìn)行.NAND器件執(zhí)行擦除操作是十分簡(jiǎn)單的,而NOR則要求在進(jìn)行擦除前先要將目標(biāo)塊內(nèi)所有的位都寫為1.擦除NOR器件時(shí)是以64~128KB的塊進(jìn)行的,執(zhí)行一個(gè)擦除/寫入操作的時(shí)間約為5s.擦除NAND器件是以8~32KB的塊進(jìn)行的,執(zhí)行一個(gè)擦除/寫入操作最多只需要4ms. 讀操作:NOR的讀速度比NAND稍快一些.

          (13)文件系統(tǒng)比較

          Linux系統(tǒng)中采用MTD來管理不同類型的Flash芯片,包括NandFlash和NorFlash.支持在Flash上運(yùn)行的常用文件系統(tǒng)有cramfs、jffs、jffs2、yaffs、yaffs2等.cramfs文件系統(tǒng)是只讀文件系統(tǒng).如果想在Flash上實(shí)現(xiàn)讀寫操作,通常在NorFlash上我們會(huì)選取jffs及jffs2文件系統(tǒng),在NandFlash上選用yaffs或yaffs2文件系統(tǒng).Yaffs2文件系統(tǒng)支持大頁(yè)(大于512字節(jié)/頁(yè))的NandFlash存儲(chǔ)器.

        【嵌入式文件系統(tǒng)移植】相關(guān)文章:

        移植開源軟件到嵌入式Linux系統(tǒng)技術(shù)攻略05-27

        Linux文件系統(tǒng)簡(jiǎn)介06-01

        Linux btrfs文件系統(tǒng)及管理07-31

        Linux文件系統(tǒng)操作命令大全07-03

        linux文件系統(tǒng)基礎(chǔ)知識(shí)匯總06-29

        學(xué)習(xí)嵌入式08-24

        Linux用戶/文件系統(tǒng)管理詳解05-10

        嵌入式操作系統(tǒng)與嵌入式處理器08-15

        Linux操作系統(tǒng)文件系統(tǒng)基礎(chǔ)知識(shí)07-25

        IBM AIX 5.3 系統(tǒng)管理文件系統(tǒng)02-26

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>