<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 如何基于FLASH介質(zhì)嵌入式存儲方案的設計與實(shí)現?

如何基于FLASH介質(zhì)嵌入式存儲方案的設計與實(shí)現?

作者: 時(shí)間:2018-08-07 來(lái)源:網(wǎng)絡(luò ) 收藏

本文引用地址:http://dyxdggzs.com/article/201808/385633.htm

整個(gè)邏輯分區中,INDEX,FAT,FRT表中的內容非常重要。

一旦因為異常產(chǎn)生錯誤,可能會(huì )影響到所有文件;所以,這三個(gè)文件都做了備份處理,備份存放于不同的Block中。同時(shí),在對他們處理時(shí),改寫(xiě)表中的更新?tīng)顟B(tài)。0xff表示開(kāi)始更新,0x00表示更新結束。在文件系統初始化時(shí),讀取它們的更新?tīng)顟B(tài),如果表中的更新?tīng)顟B(tài)為0xff,說(shuō)明該表存在操作異常,可用備份表更正。

層次接口

整個(gè)存儲系統分成三層,如圖2所示。

(1)操作系統層

在整個(gè)存儲系統中,操作系統扮演的是使用者的角色。當需要數據時(shí),它通過(guò)調用文件系統層提供的接口函數獲取數據,它不關(guān)心數據的來(lái)源和正確性。

(2)文件系統層

文件系統層的任務(wù)是實(shí)現它和操作系統層的函數接口。在實(shí)現方式上,線(xiàn)性文件系統和鏈式文件系統有較大區別。比如文件讀取mfread,線(xiàn)性文件系統直接讀取所要的字節,而鏈式文件系統是每次先把對應的整個(gè)頁(yè)讀到文件緩沖區,然后再把所需數據拷貝到讀到指定內存。文件刪除mfdelete,線(xiàn)性文件系統需要重新整理,不然就會(huì )因為大量的數據空洞(由于空間太小,無(wú)法放入新文件的小塊區域)使得系統很快沒(méi)有可用空間。鏈式文件系統只需修改文件系統的FAT和 FRT,而不用做其他任何處理,當下次寫(xiě)入操作用到該塊時(shí),自動(dòng)完成擦除。


(3)驅動(dòng)層

驅動(dòng)層的任務(wù)是完成與FLASH之間的通訊協(xié)議,實(shí)現它和文件系統層的函數接口。接口函數包括頁(yè)面讀mPageRead,頁(yè)面寫(xiě)mPageWrite,塊擦除mBlockErase,隨機讀取mRnRead,隨機寫(xiě)入mRnWrite。mPageRead,mPageWrite,mBlockErase 對整頁(yè)或塊進(jìn)行操作,在鏈式文件系統中調用;mRnRead,mRnWrite對字節單位進(jìn)行操作,在線(xiàn)性文件系統中調用。其中mRnWrite比較麻煩,以寫(xiě)一個(gè)Byte為例,它的操作分三步,首先將目標塊中的所有數據讀到內存Buffer中,然后將要寫(xiě)入的數據更新到Buffer,擦除目標塊,最后將已更新的Buffer寫(xiě)回到目標塊,這里的Buffer大小是一個(gè)Block。由于系統的內存資源比較緊張,系統采用了塊交換技術(shù)以降低成本,方法是在FLASH中搜索一個(gè)空閑塊,用它充當Buffer的角色。

結論

通過(guò)上面的設計,所實(shí)現的存儲系統具有以下的特點(diǎn):

(1)使用通用模式設計,增強了系統對FLASH設備的兼容性;

(2)使用雙模式文件結構設計,使不同類(lèi)型的數據處理效率同時(shí)達到最優(yōu);

(3)使用地址映射表,屏蔽了壞塊帶來(lái)的隱患,增強了系統的健壯性;

(4)對重要數據采用備份保護,保證不會(huì )因為斷電等異常導致系統的崩潰,增強了系統穩定性;

(5)采用塊交換技術(shù),節約系統成本;

(6)進(jìn)行分級差錯校驗,提高了系統的執行效率;

因此,本文所設計的FLASH存儲系統,非常適合于系統的應用。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>