一種機頂盒flash存儲器各區域塊分布配置的方法
2023-05-31 02:49:06 2
專利名稱:一種機頂盒flash存儲器各區域塊分布配置的方法
一種機頂盒flash存儲器各區域塊分布配置的方法
技術領域:
本發明涉及一種嵌入式技術領域,尤其涉及一種機頂盒flash存儲器各區域塊分 布配置的方法。
背景技術:
隨著國家數位電視的大規模普及,作為數位電視終端產品的數位電視機頂盒的功 能也越來越強大,由於用戶大量的新的應用的需要,有線電視機頂盒的增值業務不斷地增 加,因此有了廣播電視運營商升級的要求,同時作為機頂盒的供應商提供的機頂盒的版本 也不盡相同。數位電視機頂盒的flash存儲器上包括loader引導程序,OTA升級程序,main code主程序,開機logo,無信號logo等logo數據區,資料庫區,默認數據區,系統配置區 等區域。由於每個版本針對上述區域都不盡相同,在程式設計師編程時,如何有效的管理這些區 域,對編程的效率有很大影響。傳統機頂盒對上述區域的管理一般採用直接尋址的方式進 行,即在編程前先確認好各區域的大小以及在flash存儲器上的地址,軟體工程師根據這 些地址和大小對這些區域塊進行燒寫其塊所需的程序或資源數據,這樣每次都要在機頂盒 中直接去尋找各區域塊的地址,由於機頂盒各個版本對這些區域的配置都不盡相同,就會 造成針對每個版本都要在程序進行相應的修改,這樣影響工作效率。
發明內容本發明要解決的技術問題,在於提供一種機頂盒flash存儲器各區域塊分布配置 的方法,通過管理鏈頭部中的id能有效地獲得各區域塊的地址和大小,從而提升高了編程 人員的工作效率。本發明是這樣實現的一種機頂盒flash存儲器各區域塊分布配置的方法,包括 如下步驟步驟10、設計一管理鏈頭部結構包括區域塊的識別id、區域塊佔機頂盒存儲器 的大小、區域塊能存儲實際數據的大小、區域塊的校驗數據、區域塊的名稱、區域塊的版本 信息以及區域塊生成時間;步驟20、使用pc工具將機頂盒各區域塊所需的程序和資源數據中添加所述管理 鏈頭部,並將其合成一 bin文件燒錄到flash存儲器上來完成各管理鏈頭部和flash存儲 器對應的區域塊進行綁定;步驟30、對機頂盒各區域塊分配一唯一的id,並將其id寫入到各對應的管理鏈頭 部的id位置上,並對各管理鏈頭部結構的剩餘的參數進行賦值;步驟40、在機頂盒運行中,機頂盒主程序要使用一區域塊的程序和資源數據時,根 據機頂盒flash存儲器各區域塊綁定的管理鏈頭部中的id進行逐一檢索,判斷檢索到的區 域塊綁定的管理鏈頭部中的id是不是所述主程序需要的區域塊的id,否,則獲得檢索到的 區域塊的長度,跳轉到下一區域塊繼續檢索;是則取出該區域塊對應的程序和資源數據供主程序使用。本發明具有如下優點本發明使用管理鏈頭部結構來描述機頂盒各個區域塊的信 息,在編程中對管理鏈頭部進行有效操作,針對不同的機頂盒版本不用編程人員來確認各 區域的大小以及在flash存儲器上的地址,從而提升編程人員的工作效率。
圖1為本發明方法流程示意圖。圖2為本發明管理鏈頭部結構示意圖。圖3為本發明管理鏈頭部和flash存儲器對應的區域塊綁定的結構示意圖。
具體實施方式下面參照附圖結合實施例對本發明作進一步的說明。一種機頂盒flash存儲器各區域塊分布配置的方法,如圖1所示包括如下步驟步驟10、設計一管理鏈頭部結構包括區域塊的識別id、區域塊佔機頂盒存儲器 的大小、區域塊能存儲實際數據的大小、區域塊的校驗數據、區域塊的名稱、區域塊的版本 信息以及區域塊生成時間(如圖2所示);步驟20、使用pc工具將機頂盒各區域塊所需的程序和資源數據中添加所述管理 鏈頭部,並將其合成一 bin文件燒錄到flash存儲器上來完成各管理鏈頭部和flash存儲 器對應的區域塊進行綁定;步驟30、對機頂盒各區域塊分配一唯一的id,並將其id寫入到各對應的管理鏈頭 部的id位置上,並對機頂盒各區域塊的程序和資源數據進行校驗運算得出校驗數據,將各 區域塊的校驗數據寫入對應的管理鏈頭部的校驗數據位置上,並對各管理鏈頭部結構的剩 餘的參數進行賦值;步驟40、在機頂盒運行中,機頂盒主程序要使用一區域塊的程序和資源數據時,根 據機頂盒flash存儲器各區域塊綁定的管理鏈頭部中的id進行逐一檢索,判斷檢索到的區 域塊綁定的管理鏈頭部中的id是不是所述主程序需要的區域塊的id,否,則獲得檢索到的 區域塊的長度,跳轉到下一區域塊繼續檢索;是則取出該區域塊對應的程序和資源數據供 主程序使用。其中當機頂盒開機時,機頂盒引導程序對各個區域塊的程序和資源數據進行校驗 運算,將得到的值與對應的管理鏈的頭部中校驗數據進行對比,如果一樣則該區域塊的程 序和資源數據有效進入機頂盒主程序運行,如果不一樣則數據無效並提示用戶程序破壞。結合一具體實施例對本發明作進一步說明假設機頂盒中Loader引導程序區域塊的id為0x10101010,佔機頂盒存儲器的 大小IoaderJen字節,能存儲實際數據的大小為Ioaderjize字節,其對應的管理鏈頭部 大小為Ien字節;Main code主程序區域塊的id為0x10101111,佔機頂盒存儲器的大小 maincode_len字節,能存儲實際數據的大小為maincode^ize字節,其對應的管理鏈頭部 大小為Ienl字節;開機logo區域塊的id為0x10101011,佔機頂盒存儲器的大小logo_ Ien字節,能存儲實際數據的大小為logo_SiZe字節,其對應的管理鏈頭部大小為len2字 節。機頂盒的flash存儲器的順序為loader,maincode, logo時,按照上面的方法loader的起始位置為0,maincode的起始位置為loaderjen+len,logo的起始位置為loader_ len+len+maincodejen+lenl,其他的區域依次進行計算,並將這些參數寫入到對應的管理 鏈頭部結構中。機頂盒的存儲結構如圖3所示,機頂盒需要使用開機logo數據,開機logo區域塊 的id為0x10101011,機頂盒主程序中直接通過這個id查找開機logo數據存儲在flash 存儲器上的位置,先查找Loader引導程序區域塊的管理鏈頭部,比對id發現不是,則跳轉 到loader_len+len位置,比對Main code主程序區域塊的id,發現不是,跳轉到loader_ len+len+maincode_len+lenl對比開機logo區域塊的id,發現相同,則把這個區域塊的數 據取出來供機頂盒主程序使用,當主程序要執行區域塊的數據時,可以通過開機logo區域 塊的管理鏈頭部的校驗數據對開機logo區域塊的數據進行完整性校驗,如果數據完整再 讀取其數據,不完整則提示用戶程序破壞。這裡需要說明的是由於機頂盒的程序都是從flash存儲器的0地址開始運行, loader引導程序區域塊都是固定在0地址中,因此對於loader引導程序區域塊不添加管理 鏈頭部結構,默認loader引導程序區域塊大小為641cbyte。以上所述僅為本發明的較佳實施例,凡依本發明申請專利範圍所做的均等變化與 修飾,皆應屬本發明的涵蓋範圍。
權利要求
1.一種機頂盒flash存儲器各區域塊分布配置的方法,其特徵在於包括如下步驟 步驟10、設計一管理鏈頭部結構包括區域塊的識別id、區域塊佔機頂盒存儲器的大小、區域塊能存儲實際數據的大小、區域塊的校驗數據、區域塊的名稱、區域塊的版本信息 以及區域塊生成時間;步驟20、使用PC工具將機頂盒各區域塊所需的程序和資源數據中添加所述管理鏈頭 部,並將其合成一 bin文件燒錄到flash存儲器上來完成各管理鏈頭部和flash存儲器對 應的區域塊進行綁定;步驟30、對機頂盒各區域塊分配一唯一的id,並將其id寫入到各對應的管理鏈頭部的 id位置上,並對各管理鏈頭部結構的剩餘的參數進行賦值;步驟40、在機頂盒運行中,機頂盒主程序要使用一區域塊的程序和資源數據時,根據機 頂盒flash存儲器各區域塊綁定的管理鏈頭部中的id進行逐一檢索,判斷檢索到的區域塊 綁定的管理鏈頭部中的id是不是所述主程序需要的區域塊的id,否,則獲得檢索到的區域 塊的長度,跳轉到下一區域塊繼續檢索;是則取出該區域塊對應的程序和資源數據供主程 序使用。
2.根據權利要求1所述的一種一種機頂盒flash存儲器各區域塊分布配置的方法,其 特徵在於所述管理鏈頭部的區域塊的校驗數據是機頂盒對區域塊的程序和資源數據進行 校驗運算得出校驗數據進行寫入的。
3.根據權利要求2所述的一種機頂盒flash存儲器各區域塊分布配置的方法,其特徵 在於機頂盒開機時,機頂盒引導程序對各個區域塊的程序和資源數據進行校驗運算,將得 到的值與對應的管理鏈的頭部中校驗數據進行對比,如果一樣則該區域塊的程序和資源數 據有效進入機頂盒主程序運行,如果不一樣則數據無效並提示用戶程序破壞。
全文摘要
本發明提供一種機頂盒flash存儲器各區域塊分布配置的方法,該方法通過設計一管理鏈頭部結構,並對各管理鏈頭部和flash存儲器對應的區域塊進行綁定,對機頂盒各區域塊分配一唯一的id,並將其id寫入到各對應的管理鏈頭部的id位置上,通過管理鏈頭部中的id能有效地獲得各區域塊的地址和大小,編程人員可以根據區域塊的地址和大小進行有效地編程,從而提升高了編程人員的工作效率。
文檔編號H04N21/433GK102098561SQ20101058679
公開日2011年6月15日 申請日期2010年12月14日 優先權日2010年12月14日
發明者方立 申請人:福建新大陸通信科技股份有限公司