一種面向NandFLASH的多相機多圖像並行處理的圖像文件系統的製作方法
2023-11-09 02:18:02 2
本發明涉及航天電子技術領域,具體涉及一種面向nandflash的多相機多圖像並行處理的圖像文件系統。
背景技術:
在太空飛行器設計中,如深空探測器或火星車或月球車等著陸巡視器中,均帶有多個多種類的相機,這些相機採集的圖像數據需要先存儲,再傳輸到地面。而為了支持多個相機、多類圖像數據、多個時間標籤圖像的隨機訪問,就需要一種能夠支持多種類圖像,多分區存儲獨立相機數據、並且支持並行讀寫的文件系統。
然而,jffs、yaffs快閃記憶體文件系統等地面計算機系統中使用的文件系統,數據結構設計複雜,並且由於數據結構複雜度高,需要大量的cpu計算資源開銷,佔用大量的內存來建立文件系統節點樹;此外,在星載計算機系統中,由於cpu內存及io接口速度的很低,無法達到nandflash的最大讀寫速率。
技術實現要素:
有鑑於此,本發明提供了一種面向nandflash的多相機多圖像並行處理的圖像文件系統,能夠實現多個相機的多幅圖像文件的並行處理。
一種面向nandflash的多相機多圖像並行處理的圖像文件系統,包括:包括dsp圖像訪問模塊、mram控制器、flash訪問控制模塊、mram晶片、圖像節點信息初始化模塊、n個圖像接收創建寫入模塊和n個flash晶片;n個圖像接收創建寫入模塊分別與n個相機連接;n的個數根據設計需求確定;
所述圖像節點信息初始化模塊,用於在圖像接收創建寫入模塊接收由相機發送的創建圖像指令和圖像數據之前,發送讀取壞塊指令至mram控制器,進而實現分區初始化;還用於在接收到壞塊信息後,建立圖像存儲節點的首地址信息表,並連同圖像清零指令一同發送至mram控制器;
所述每個圖像接收創建寫入模塊,在分區初始化完成之後,用於在接收各自所連的相機發送的創建圖像指令和圖像數據後,發送查看首地址指令至mram控制器;還用於接收由mram控制器發來的存儲首地址信息,並根據接收到的圖像數據,創建圖像文件,創建的圖像文件每達到1頁,則將圖像文件與當前頁地址信息一併傳輸給flash訪問控制模塊一次,同時,頁地址信息加1;其中,當初次創建圖像文件時,其頁地址信息為所述的存儲首地址信息;
所述mram控制器,用於在接收到圖像節點信息初始化模塊發送的讀取壞塊指令後,讀取mram晶片中預存的壞塊信息,並將結果發送給圖像節點信息初始化模塊;還用於在接收到圖像節點信息初始化模塊發送的圖像清零指令和首地址信息表後,控制mram晶片中所存儲的圖像清零並將首地址信息表存儲至mram晶片中;還用於根據接收到的查看首地址指令的先後順序,依次查詢mram晶片中已存儲的圖像個數m,並根據圖像個數m,確定圖像的存儲首地址信息,並發送至對應的圖像接收創建寫入模塊;還用於在接收到dsp圖像訪問模塊發送的讀取指令後,根據查詢圖像的圖像信息,讀取mram晶片中所要查詢圖像的首地址信息,並將該首地址信息反饋至dsp圖像訪問模塊;
所述mram晶片,用於預存儲壞塊信息,並當mram控制器進行讀取時,將壞塊信息發送給mram控制器;還用於在mram控制器的控制下,清除當前存儲圖像個數m,並存儲由mram控制器發送的首地址信息表;還用於當mram控制器每讀取一次圖像個數m時,m個數自加1;還用於mram控制器讀取查詢圖像的首地址信息時,將首地址信息反饋mram控制器;
所述flash訪問控制模塊,用於在接收到圖像接收創建寫入模塊發送的圖像文件和頁地址信息後,根據頁地址信息,將圖像文件發送並寫入對應的flash晶片;還用於根據dsp圖像訪問模塊發送的首地址信息,讀取flash晶片中存儲的圖像文件,並發送至dsp圖像訪問模塊;還用於在接收到dsp圖像訪問模塊發送的擦除指令後,通過mram控制器,將flash晶片中除壞塊信息以外的所有信息擦除;
所述flash晶片,用於將來自flash訪問控制模塊發送的圖像文件寫入flash晶片;
所述dsp圖像訪問模塊,用於根據需要查詢的圖像信息,向mram控制器發送查詢首地址信息的讀取指令;用於在接收到mram控制器發送的首地址信息後,通過flash訪問控制模塊讀取flash晶片中存儲的圖像文件;還用於控制flash訪問控制模塊對flash晶片中存儲的數據進行擦除。
較佳的,所述mram控制的存儲方式採用循環存儲方式,具體為:
將32位數據在寫入mram控制器時,共存儲3次;第一次將32位數據正常存儲,第二次將32位數據向右循環移動8位後存儲;第三次在第二次的基礎上,再將這32位數據向右循環8位後存儲。
較佳的,n=6。
較佳的,所述每個圖像接收創建寫入模塊,包括緩存模塊、處理模塊、請求創建寫入模塊和自維護地址模塊;
其中,所述處理模塊,用於接收各自所連的相機發送的創建圖像指令和圖像數據,並將創建圖像指令發送至請求創建寫入模塊;將圖像數據發送至緩存模塊;
所述請求創建寫入模塊在接收到創建圖像指令後,發送查看首地址指令至mram控制器;還用於接收由mram控制器發來的存儲首地址信息,並發送至自維護塊地址模塊;
所述緩存模塊,用於接收圖像數據,並將圖像數據發送至自維護塊地址模塊;
所述自維護地址模塊,用於接收來自請求創建寫入模塊發來的首地址信息和由緩存模塊發送的圖像數據,並進行圖像文件的創建以及生成頁地址信息,將生成的頁地址信息以及創建的圖像文件發送給flash訪問控制模塊。
較佳的,flash訪問控制模塊,包括flash寫入模塊、flash讀取模塊和flash擦除模塊;
其中,所述flash寫入模塊,用於接收到圖像接收創建寫入模塊發送的圖像文件和頁地址信息後,根據該頁地址信息,將圖像文件發送並寫入對應的flash晶片;
所述flash讀取模塊,用於根據dsp圖像訪問模塊發送的首地址信息,讀取flash晶片中存儲的圖像文件,並發送至dsp圖像訪問模塊;
所述flash擦除模塊,用於在接收到dsp圖像訪問模塊發送的擦除指令後,通過mram控制器,讀取mram晶片中預存的壞塊信息,並將flash晶片中除壞塊信息以外的所有信息擦除。
較佳的,所述dsp圖像訪問模塊,包括dsp讀取模塊和dsp擦除模塊;
所述dsp讀取模塊,用於向mram控制器發送讀取指令;並接收來自mram控制器發送的首地址信息;還用於在接收到mram控制器發送的首地址信息後,讀取flash晶片中存儲的圖像文件;
所述dsp擦除模塊,用於控制flash訪問控制模塊對flash晶片中存儲的數據進行擦除。
有益效果:
本發明克服現有文件系統中,數據組織結構過於複雜,掉電需要重新建立文件系統節點信息、文件信息處理導致寫入速度慢的不足,利用圖像文件大小固定的特點,建立了以大尺寸節點與時間戳組合列表的文件系統,解決在太空飛行器圖像存儲系統設計中多分區並行存儲訪問的難題。
附圖說明
圖1為本發明的系統框圖。
具體實施方式
下面結合附圖並舉實施例,對本發明進行詳細描述。
本發明提供了一種面向nandflash的多相機多圖像並行處理的圖像文件系統,包括dsp圖像訪問模塊、mram控制器、flash訪問控制模塊、mram晶片、圖像節點信息初始化模塊、n個圖像接收創建寫入模塊和n個flash晶片;n個圖像接收創建寫入模塊分別與n個相機連接;n的個數根據設計需求確定。一般的,n=6。
其中,
所述圖像節點信息初始化模塊,用於在接收由相機傳送的創建圖像指令和圖像數據之前,對圖像文件系統進行分區初始化,即:發送讀取壞塊指令至mram控制器,以讀取mram晶片中的壞塊信息;還用於在接收到壞塊信息後,建立圖像存儲節點的首地址信息表,並將該表通過mram控制器,寫入mram晶片;同時,圖像節點信息初始化模塊發送圖像個數清零指令至mram控制器,以通過mram控制器,控制mram晶片中分區初始化以前所存儲的圖像個數m清零。
所述每個圖像接收創建寫入模塊,在分區初始化完成之後,用於在接收各自所連的相機的lvds口發送的創建圖像指令和圖像數據後,發送查看首地址指令至mram控制器;還用於接收由mram控制器發來的圖像文件存儲於flash晶片中的首地址信息;還用於根據接收到的圖像數據,創建圖像文件,創建的圖像文件每達到1頁,則攜帶當前頁地址信息傳輸給flash訪問控制模塊一次,同時,頁地址信息加1;其中,所述初次創建圖像文件,其頁地址信息為圖像文件存儲於flash晶片中的首地址信息;
所述每個圖像接收創建寫入模塊,包括緩存模塊、處理模塊、請求創建寫入模塊和自維護塊地址模塊;
其中,所述處理模塊,用於接收各自所連的相機的lvds口發送的創建圖像指令和圖像數據,並將創建圖像指令發送至請求創建寫入模塊;將圖像數據發送至緩存模塊;
所述請求創建寫入模塊在接收到創建圖像指令後,發送查看首地址指令至mram控制器;還用於接收由mram控制器發來的圖像文件存儲於flash晶片中的首地址信息,並發送至自維護塊地址模塊;
所述緩存模塊,用於接收圖像數據,並將圖像數據發送至自維護塊地址模塊;
所述自維護塊地址模塊,用於接收來自請求創建寫入模塊發來的首地址信息和由緩存模塊發送的圖像數據,並進行圖像文件的創建;初次創建的圖像文件達到1頁後,將圖像文件及圖像文件所存儲的首地址信息一併發送至flash訪問控制模塊;之後所創建的圖像文件每達到1頁後,則將圖像文件及頁地址信息一併發送至flash訪問控制模塊;還用於在每創建1頁的圖像文件後,維護頁地址信息,將頁地址加1;
所述mram控制器,用於在接收到圖像節點信息初始化模塊發送的讀取壞塊指令後,讀取mram晶片中預存的壞塊信息,並返回給圖像節點信息初始化模塊;還用於在接收到圖像節點信息初始化模塊發送的首地址信息表後,將首地址信息表存儲至mram晶片中,並控制mram晶片中初始化以前所存儲的圖像個數m清零;還用於根據接收到的查看首地址指令的先後順序,依次查詢mram晶片中已存儲的圖像個數m,並根據圖像個數m,在首地址信息表中相應的查詢圖像文件存儲於flash晶片中的首地址信息,發送至對應的圖像接收創建寫入模塊;還用於在接收到dsp圖像訪問模塊發送的讀取指令後,根據讀取指令中的圖像信息,讀取mram晶片中首地址信息,並將該首地址信息返回至dsp圖像訪問模塊;
所述mram晶片,用於存儲壞塊信息,並當mram控制器進行讀取時,發送給mram控制器;還用於存儲由mram控制器發送的首地址信息表,並在mram控制器的控制下,清除當前存儲圖像個數m;用於當mram控制器每讀取一次圖像個數m時,m個數自加1;
所述flash訪問控制模塊,用於在接收到圖像接收創建寫入模塊發送的圖像文件和圖像文件所存儲的首地址信息或頁地址信息後,根據該首地址信息,將圖像文件發送並寫入對應的flash晶片;還用於根據dsp圖像訪問模塊發送的首地址信息,讀取flash晶片中存儲的圖像文件,並返還至dsp圖像訪問模塊;還用於在接收到dsp圖像訪問模塊發送的擦除指令後,通過mram控制器,讀取mram晶片中預存的壞塊信息,並將flash晶片中除壞塊信息以外的所有信息擦除。
其中,所述flash訪問控制模塊,具體包括flash寫入模塊、flash讀取模塊和flash擦除模塊;
其中,所述flash寫入模塊,用於接收到圖像接收創建寫入模塊發送的圖像文件和圖像文件所存儲的首地址信息後,根據該首地址信息,將圖像文件發送並寫入對應的flash晶片;
所述flash讀取模塊,用於根據dsp圖像訪問模塊發送的首地址信息,讀取flash晶片中存儲的圖像文件,並返還至dsp圖像訪問模塊;
所述flash擦除模塊,用於在接收到dsp圖像訪問模塊發送的擦除指令後,通過mram控制器,讀取mram晶片中預存的壞塊信息,並將flash晶片中除壞塊信息以外的所有信息擦除。
所述flash晶片,用於將來自flash訪問控制模塊發送的圖像文件寫入flash晶片;
所述dsp圖像訪問模塊,用於讀取由mram控制器發送的首地址信息;還用於控制flash訪問控制模塊對flash晶片中存儲的數據進行擦除。
其中,所述dsp圖像訪問模塊,包括dsp讀取模塊和dsp擦除模塊;
所述dsp讀取模塊,用於根據查詢圖像的信息,向mram控制器發送讀取指令;並接收來自mram控制器發送的首地址信息;例如:dsp向mram控制器發送信息,說明所需要訪問第幾幅圖像,比如訪問第52幅圖像,那麼mram控制器就會去52*8+3這個mram地址中取出存儲的首地址值,假設地址是0x1200,那麼dsp就去讀取nandflash中從0x1200開始,往後的圖像數據,直到讀取完一副圖像數據。
所述dsp擦除模塊,用於控制flash訪問控制模塊對flash晶片中存儲的數據進行擦除。
本發明還對mram控制的存儲方式進行了改進,具體為:
mram控制器對內的訪問界面為邏輯地址,其容量為物理地址的1/3。該模塊在收到發送的32位數據後,採用循環移動方法,按優先級從高到低的方法對每個埠進行處理,即:將32位數據在寫入mram控制器時,共存儲3次;第一次將32位數據正常存儲,第二次將32位數據向右循環移動8位後存儲;第三次在第二次的基礎上,再將這32位數據向右循環8位後存儲。
綜上所述,以上僅為本發明的較佳實施例而已,並非用於限定本發明的保護範圍。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。