2010-06-22 21 views
2

我已經在板上安裝了DSP tms320vc5509a和NOR flash AT26DF321,並且我將把命名數據存儲在閃存上。我不需要目錄層次結構,損耗均衡(我希望系統會很少寫入閃存),但是強烈需要CRC。 謝謝您可以爲嵌入式系統建議什麼免費的最小的閃存文件系統?

+0

對於像這樣的應用程序,FAT12實際上並不是那麼糟糕。但據我所知,沒有內置的CRC。你可以添加一個。 – Artelius 2010-06-22 11:28:41

+2

爲什麼你需要一個文件系統? – Robert 2010-06-22 14:13:39

+0

請注意,由於FAT必須在每次重大文件更改時更新FAT,因此它具有一定的防磨損性。也就是說,這通常是一個簡單的選擇,對於基本上只讀的活動,這不是一個不好的選擇。 – RBerteig 2010-06-23 01:35:02

回答

2

在NOR閃存中,尤其是那些也包含我的啓動代碼和應用程​​序的NOR閃存,我通常會避免正式文件系統的開銷。相反,我存儲每個從擦除塊邊界開始的「有趣」對象,並以一個頭結構開始,該頭結構至少包含對象大小和校驗和。將名稱或資源ID添加到標頭是一個自然的擴展。

引導加載程序在使用該塊之前驗證校驗和來查找有效的應用程序。同樣,其他資源可在使用前確認爲有效。

它還使固件更新實用程序可以輕鬆驗證擦除前的對象並將其編程到FLASH。

小型資源池可能最好通過將其包裝在容器中進行處理以便閃爍。如果運行時資源支持它,我會試圖使用ZIP來包裝文件,將ZIP壓縮文件的圖像封裝在一個大小和校驗和標題中,並將其存儲在擦除塊邊界處。如果您無法負擔解壓縮運行時,仍可以使用未壓縮文件的ZIP,或使用更簡單的格式(如tar)。

當然,NAND閃存的情況非常不同。在那裏,我強烈建議選擇一個爲NAND閃存的怪癖設計的已建立的(商業或開源)文件系統。