資料介紹
隨著嵌入式技術(shù)的不斷發(fā)展,嵌入式系統(tǒng)的應(yīng)用越來(lái)越廣泛,人們對(duì)于嵌入式系統(tǒng)功能的要求也越來(lái)越高,相應(yīng)地其大容量數(shù)據(jù)存儲(chǔ)和管理變得越來(lái)越重要。相對(duì)硬盤而言,F(xiàn)LASH等非易失性存儲(chǔ)器具有體積小、功耗低、成本低、抗震強(qiáng)等優(yōu)點(diǎn),已在嵌入式系統(tǒng)中被大量作為存儲(chǔ)設(shè)備使用,而大容量非易失數(shù)據(jù)存儲(chǔ)方案的應(yīng)用還存在成本和軟件支持方面的問題需要克服。大頁(yè)NAND FLASH具有寫入速度快、容量大、成本低等優(yōu)點(diǎn),適合于需要進(jìn)行數(shù)據(jù)存儲(chǔ)的場(chǎng)合。YAFFS2作為專門支持大頁(yè)NAND FLASH的文件系統(tǒng)在U-Boot和嵌入式Linux上一直沒有得到正式支持。本文結(jié)合部隊(duì)?wèi)?yīng)用實(shí)際,在嵌入式Linux系統(tǒng)中實(shí)現(xiàn)了大頁(yè)NAND FLASH和YAFFS2文件系統(tǒng)的結(jié)合,為裝備的數(shù)據(jù)存儲(chǔ)處理搭建起了小型的智能化平臺(tái)。本文內(nèi)容安排如下,首先介紹系統(tǒng)存儲(chǔ)方案特點(diǎn)和YAFFS2數(shù)據(jù)在大頁(yè)NAND FLASH上的儲(chǔ)存方式,然后詳細(xì)敘述系統(tǒng)移植和文件系統(tǒng)制作過程,最后對(duì)移植結(jié)果進(jìn)行測(cè)試。
l 系統(tǒng)存儲(chǔ)方案設(shè)計(jì)
某國(guó)產(chǎn)化設(shè)備用于取代隨裝多臺(tái)套設(shè)備,除完成原設(shè)備的數(shù)據(jù)記錄功能外,還需進(jìn)行數(shù)據(jù)翻譯、判讀,數(shù)據(jù)分析處理,二維顯示和三維動(dòng)態(tài)復(fù)現(xiàn)等功能;同時(shí),需存儲(chǔ)裝備長(zhǎng)時(shí)間工作輸出的所有原始數(shù)據(jù)信息,類似黑匣子功能,以供事后分析使用。具有程序量大,數(shù)據(jù)需實(shí)時(shí)存儲(chǔ),且數(shù)據(jù)存儲(chǔ)量大的特點(diǎn)。板上存儲(chǔ)設(shè)備包括SDRAM和FLASH,SDRAM為易失性存儲(chǔ)器,作為程序的運(yùn)行空間和記錄數(shù)據(jù)的緩存空間;FLASH為非易失性存儲(chǔ)器,用于存儲(chǔ)系統(tǒng)軟件程序和記錄數(shù)據(jù)。
嵌入式系統(tǒng)中應(yīng)用的FLASH主要有NORFLASH和NAND FLASH兩種。NOR FLASH的塊大小范圍為64~128 KB,其容量一般為l~32 MB,可作為嵌入式設(shè)備的啟動(dòng)設(shè)備,適合于代碼存儲(chǔ)。NAND FLASH的塊大小范圍為8~64 KB,容量一般為8~512 MB,適合于數(shù)據(jù)存儲(chǔ)。它們之間的主要差別有以下幾點(diǎn)。
?。?)速度。在寫數(shù)據(jù)和擦除數(shù)據(jù)時(shí),NANDFLASH支持整塊擦寫操作,其速度比NOR FLASH要快得多,兩者相差近千倍;讀取時(shí),NAND FLASH要先向芯片發(fā)送地址信息進(jìn)行尋址才能開始讀寫數(shù)據(jù),而NOR FLASH的操作則是以字或字節(jié)為單位進(jìn)行的,直接讀取,所以讀取數(shù)據(jù)時(shí),NOR FLASH效率更高。
?。?)容量和成本。NOR FLASH的每個(gè)存儲(chǔ)單元與位線相連,增加了芯片內(nèi)位線的數(shù)量,不利于存儲(chǔ)密度的提高。在面積和工藝相同的情況下,NANDFLASH的容量比NOR FLASH要大得多,生產(chǎn)成本更低。
(3)易用性。NAND FLASH的I/O端口采用復(fù)用的數(shù)據(jù)線和地址線,必須先通過寄存器串行地進(jìn)行數(shù)據(jù)存取,各個(gè)產(chǎn)品或廠商對(duì)信號(hào)的定義不同,增加了應(yīng)用的難度;NOR FLASH有專用的地址引腳來(lái)尋址,較容易與其他芯片進(jìn)行連接,另外還支持片上執(zhí)行XIP(eXecute In Place),應(yīng)用程序可以直接在FLASH內(nèi)部運(yùn)行,簡(jiǎn)化了產(chǎn)品設(shè)計(jì)。
?。?)可靠性。由于FLASH的電器特性,在讀/寫數(shù)據(jù)過程中,會(huì)產(chǎn)生比特位反轉(zhuǎn),造成一位或幾位數(shù)據(jù)錯(cuò)誤。NAND FLASH位反轉(zhuǎn)的幾率比NOR FLASH高,在使用時(shí)需要使用EDC/ECC算法。NANDFLASH還可能會(huì)隨機(jī)分布?jí)膲K。
(5)耐久性。FLASH由于寫入和擦除數(shù)據(jù)時(shí)會(huì)導(dǎo)致介質(zhì)的氧化降解,導(dǎo)致芯片老化,所以并不適合頻繁地擦寫,NAND FLASH的擦寫次數(shù)是100萬(wàn)次,而NOR FLASH只有10萬(wàn)次。
基于以上分析,為了滿足經(jīng)常性的進(jìn)行實(shí)時(shí)快速大容量數(shù)據(jù)存儲(chǔ)和較長(zhǎng)使用壽命的要求,采用NANDFLASH來(lái)存儲(chǔ)操作系統(tǒng)和數(shù)據(jù),其復(fù)雜操作、比特位反轉(zhuǎn)和壞塊等問題可以通過文件系統(tǒng)解決。NORFLASH因?yàn)槌霈F(xiàn)位反轉(zhuǎn)和壞塊的幾率小,并且讀取速度快,用來(lái)存儲(chǔ)啟動(dòng)程序,能保證正常啟動(dòng)系統(tǒng)的前提下提高設(shè)備反應(yīng)時(shí)間。整個(gè)系統(tǒng)的存儲(chǔ)空間分配如圖1所示。
整個(gè)系統(tǒng)存儲(chǔ)空間由SDRAM,NOR FLASH,NAND FLASH組成。其中,sDRAM分成程序空間(Prog Space)和數(shù)據(jù)空間(Data Space)。NORFLASH存儲(chǔ)系統(tǒng)啟動(dòng)程序U-Boot;NAND FLAsH分成程序空間(Prog Space)和數(shù)據(jù)空間(Data Space),程序空間中固化存儲(chǔ)Linux操作系統(tǒng)和YAFFS2文件系統(tǒng)及相應(yīng)的應(yīng)用程序,在U-Boot的控制下,通過頁(yè)傳輸方式讀入SDRAM程序空間中;數(shù)據(jù)空間中存儲(chǔ)來(lái)自前端的原始數(shù)據(jù),該數(shù)據(jù)在SDR-AM中打包,以頁(yè)方式將數(shù)據(jù)寫入NAND FLASH中,提高數(shù)據(jù)寫入速度。
對(duì)小頁(yè)NAND FLASH的文件系統(tǒng)支持已有比較多的編程實(shí)例可借鑒,而對(duì)本文使用的大頁(yè)NANDFLASH的編程支持還沒有完整的說明。因此,移植嵌入式操作系統(tǒng),以建立對(duì)大頁(yè)NAND FLASH支持的文件系統(tǒng)是該存儲(chǔ)方案需解決的關(guān)鍵問題。
l 系統(tǒng)存儲(chǔ)方案設(shè)計(jì)
某國(guó)產(chǎn)化設(shè)備用于取代隨裝多臺(tái)套設(shè)備,除完成原設(shè)備的數(shù)據(jù)記錄功能外,還需進(jìn)行數(shù)據(jù)翻譯、判讀,數(shù)據(jù)分析處理,二維顯示和三維動(dòng)態(tài)復(fù)現(xiàn)等功能;同時(shí),需存儲(chǔ)裝備長(zhǎng)時(shí)間工作輸出的所有原始數(shù)據(jù)信息,類似黑匣子功能,以供事后分析使用。具有程序量大,數(shù)據(jù)需實(shí)時(shí)存儲(chǔ),且數(shù)據(jù)存儲(chǔ)量大的特點(diǎn)。板上存儲(chǔ)設(shè)備包括SDRAM和FLASH,SDRAM為易失性存儲(chǔ)器,作為程序的運(yùn)行空間和記錄數(shù)據(jù)的緩存空間;FLASH為非易失性存儲(chǔ)器,用于存儲(chǔ)系統(tǒng)軟件程序和記錄數(shù)據(jù)。
嵌入式系統(tǒng)中應(yīng)用的FLASH主要有NORFLASH和NAND FLASH兩種。NOR FLASH的塊大小范圍為64~128 KB,其容量一般為l~32 MB,可作為嵌入式設(shè)備的啟動(dòng)設(shè)備,適合于代碼存儲(chǔ)。NAND FLASH的塊大小范圍為8~64 KB,容量一般為8~512 MB,適合于數(shù)據(jù)存儲(chǔ)。它們之間的主要差別有以下幾點(diǎn)。
?。?)速度。在寫數(shù)據(jù)和擦除數(shù)據(jù)時(shí),NANDFLASH支持整塊擦寫操作,其速度比NOR FLASH要快得多,兩者相差近千倍;讀取時(shí),NAND FLASH要先向芯片發(fā)送地址信息進(jìn)行尋址才能開始讀寫數(shù)據(jù),而NOR FLASH的操作則是以字或字節(jié)為單位進(jìn)行的,直接讀取,所以讀取數(shù)據(jù)時(shí),NOR FLASH效率更高。
?。?)容量和成本。NOR FLASH的每個(gè)存儲(chǔ)單元與位線相連,增加了芯片內(nèi)位線的數(shù)量,不利于存儲(chǔ)密度的提高。在面積和工藝相同的情況下,NANDFLASH的容量比NOR FLASH要大得多,生產(chǎn)成本更低。
(3)易用性。NAND FLASH的I/O端口采用復(fù)用的數(shù)據(jù)線和地址線,必須先通過寄存器串行地進(jìn)行數(shù)據(jù)存取,各個(gè)產(chǎn)品或廠商對(duì)信號(hào)的定義不同,增加了應(yīng)用的難度;NOR FLASH有專用的地址引腳來(lái)尋址,較容易與其他芯片進(jìn)行連接,另外還支持片上執(zhí)行XIP(eXecute In Place),應(yīng)用程序可以直接在FLASH內(nèi)部運(yùn)行,簡(jiǎn)化了產(chǎn)品設(shè)計(jì)。
?。?)可靠性。由于FLASH的電器特性,在讀/寫數(shù)據(jù)過程中,會(huì)產(chǎn)生比特位反轉(zhuǎn),造成一位或幾位數(shù)據(jù)錯(cuò)誤。NAND FLASH位反轉(zhuǎn)的幾率比NOR FLASH高,在使用時(shí)需要使用EDC/ECC算法。NANDFLASH還可能會(huì)隨機(jī)分布?jí)膲K。
(5)耐久性。FLASH由于寫入和擦除數(shù)據(jù)時(shí)會(huì)導(dǎo)致介質(zhì)的氧化降解,導(dǎo)致芯片老化,所以并不適合頻繁地擦寫,NAND FLASH的擦寫次數(shù)是100萬(wàn)次,而NOR FLASH只有10萬(wàn)次。
基于以上分析,為了滿足經(jīng)常性的進(jìn)行實(shí)時(shí)快速大容量數(shù)據(jù)存儲(chǔ)和較長(zhǎng)使用壽命的要求,采用NANDFLASH來(lái)存儲(chǔ)操作系統(tǒng)和數(shù)據(jù),其復(fù)雜操作、比特位反轉(zhuǎn)和壞塊等問題可以通過文件系統(tǒng)解決。NORFLASH因?yàn)槌霈F(xiàn)位反轉(zhuǎn)和壞塊的幾率小,并且讀取速度快,用來(lái)存儲(chǔ)啟動(dòng)程序,能保證正常啟動(dòng)系統(tǒng)的前提下提高設(shè)備反應(yīng)時(shí)間。整個(gè)系統(tǒng)的存儲(chǔ)空間分配如圖1所示。
整個(gè)系統(tǒng)存儲(chǔ)空間由SDRAM,NOR FLASH,NAND FLASH組成。其中,sDRAM分成程序空間(Prog Space)和數(shù)據(jù)空間(Data Space)。NORFLASH存儲(chǔ)系統(tǒng)啟動(dòng)程序U-Boot;NAND FLAsH分成程序空間(Prog Space)和數(shù)據(jù)空間(Data Space),程序空間中固化存儲(chǔ)Linux操作系統(tǒng)和YAFFS2文件系統(tǒng)及相應(yīng)的應(yīng)用程序,在U-Boot的控制下,通過頁(yè)傳輸方式讀入SDRAM程序空間中;數(shù)據(jù)空間中存儲(chǔ)來(lái)自前端的原始數(shù)據(jù),該數(shù)據(jù)在SDR-AM中打包,以頁(yè)方式將數(shù)據(jù)寫入NAND FLASH中,提高數(shù)據(jù)寫入速度。
對(duì)小頁(yè)NAND FLASH的文件系統(tǒng)支持已有比較多的編程實(shí)例可借鑒,而對(duì)本文使用的大頁(yè)NANDFLASH的編程支持還沒有完整的說明。因此,移植嵌入式操作系統(tǒng),以建立對(duì)大頁(yè)NAND FLASH支持的文件系統(tǒng)是該存儲(chǔ)方案需解決的關(guān)鍵問題。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 嵌入式系統(tǒng)系列叢書-時(shí)間觸發(fā)嵌入式系統(tǒng)設(shè)計(jì)模式 0次下載
- 嵌入式linux系統(tǒng)中常用的文件系統(tǒng)
- 嵌入式系統(tǒng)
- 嵌入式的固件燒錄方式
- 嵌入式linux和桌面linux的區(qū)別
- 嵌入式系統(tǒng)定義
- DSP與MCU在嵌入式系統(tǒng)中的應(yīng)用
- 如何實(shí)現(xiàn)Linux內(nèi)核移植和yaffs2根文件系統(tǒng)制作 9次下載
- 嵌入式硬件系統(tǒng)教程之嵌入式存儲(chǔ)技術(shù)的詳細(xì)資料說明 14次下載
- 超大容量NANDFlash文件系統(tǒng)-YAFFS2在Linux下的實(shí)現(xiàn) 11次下載
- 分析YAFFS文件系統(tǒng)在Linux系統(tǒng)中的構(gòu)建 0次下載
- 基于ARM和DSP的嵌入式導(dǎo)航計(jì)算機(jī)方案設(shè)計(jì)
- 基于J2ME的金融POS應(yīng)用安全方案設(shè)計(jì)
- YAFFS嵌入式文件系統(tǒng)應(yīng)用研究
- 一種嵌入式系統(tǒng)本地?cái)?shù)據(jù)存儲(chǔ)方案的設(shè)計(jì)與研究
- 嵌入式fpga是什么意思 992次閱讀
- 什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)的具體應(yīng)用 2096次閱讀
- 分享一種嵌入式系統(tǒng)自動(dòng)化測(cè)試的詳細(xì)方案 2522次閱讀
- 嵌入式系統(tǒng)的全面解析 3146次閱讀
- 如何實(shí)現(xiàn)嵌入式系統(tǒng)遠(yuǎn)程調(diào)試 5077次閱讀
- 嵌入式Linux啟動(dòng)時(shí)間優(yōu)化的秘密之二文件系統(tǒng) 4987次閱讀
- 具備M2M功能的嵌入式網(wǎng)絡(luò)解決方案將成為未來(lái)的走向 944次閱讀
- 基于μC/OS嵌入式操作系統(tǒng)的嵌入式數(shù)據(jù)管理設(shè)計(jì) 1178次閱讀
- 基于嵌入式實(shí)時(shí)系統(tǒng)的提高構(gòu)件化嵌入式操作系統(tǒng)性能的方案設(shè)計(jì) 780次閱讀
- 關(guān)于嵌入式系統(tǒng)以及其在印刷設(shè)備中的解決方案及應(yīng)用淺析 629次閱讀
- 嵌入式環(huán)境下的輕量級(jí)GUI系統(tǒng)解決方案設(shè)計(jì)詳解 7480次閱讀
- 關(guān)于嵌入式軟件系統(tǒng)測(cè)試策略和方案設(shè)計(jì)詳解 9081次閱讀
- 隨機(jī)存儲(chǔ)器在嵌入式操作系統(tǒng)中的應(yīng)用設(shè)計(jì)詳解 1315次閱讀
- 基于Nand Flash 存儲(chǔ)技術(shù)的嵌入式linux 系統(tǒng)設(shè)計(jì) 1520次閱讀
- 典型的嵌入式系統(tǒng)設(shè)計(jì) 2650次閱讀
下載排行
本周
- 1TPS54202H降壓轉(zhuǎn)換器評(píng)估模塊用戶指南
- 1.02MB | 7次下載 | 免費(fèi)
- 2華瑞昇CR215芯片數(shù)字萬(wàn)用表原理圖
- 0.21 MB | 1次下載 | 3 積分
- 3SMD LED選型目錄 燈珠手冊(cè)
- 5.36 MB | 1次下載 | 免費(fèi)
- 4Tiva C系列DK-TM4C129X入門指南
- 1.69MB | 1次下載 | 免費(fèi)
- 5電涌保護(hù)器(SPD)的選擇、安裝以及裝配
- 4.57 MB | 1次下載 | 免費(fèi)
- 6時(shí)源芯微EMC前車燈案例
- 458.59 KB | 1次下載 | 免費(fèi)
- 7bq25890、bq25892雙級(jí)聯(lián)充電器EVM(PWR692)用戶指南
- 2.02MB | 1次下載 | 免費(fèi)
- 8TPS54426降壓轉(zhuǎn)換器評(píng)估模塊用戶指南
- 847.7KB | 次下載 | 免費(fèi)
本月
- 1ADI高性能電源管理解決方案
- 2.43 MB | 156次下載 | 免費(fèi)
- 22024PMIC市場(chǎng)洞察
- 2.23 MB | 63次下載 | 免費(fèi)
- 3開關(guān)電源設(shè)計(jì)原理手冊(cè)
- 1.83 MB | 30次下載 | 免費(fèi)
- 4智能門鎖原理圖
- 0.39 MB | 28次下載 | 免費(fèi)
- 5OAH0428最新規(guī)格書(中文)
- 2.52 MB | 15次下載 | 7 積分
- 6ST7789V2單芯片控制器/驅(qū)動(dòng)器英文手冊(cè)
- 3.07 MB | 9次下載 | 1 積分
- 7LTH7充電電路和鋰電池升壓5V輸出電路原理圖
- 0.04 MB | 7次下載 | 免費(fèi)
- 8TPS54202H降壓轉(zhuǎn)換器評(píng)估模塊用戶指南
- 1.02MB | 7次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935119次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420061次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191367次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183334次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73807次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65987次下載 | 10 積分
評(píng)論
查看更多