固件更新系統(tǒng)及方法
【專利摘要】一種固件更新系統(tǒng),包括有一移動終端及一連接所述移動終端的電子裝置,所述移動終端存儲有一文件系統(tǒng),所述文件系統(tǒng)包括有一存儲有待更新固件的特殊文件,所述電子裝置包括有一存儲卡,所述存儲卡包括有一控制器及一閃存單元,所述移動終端包括有通信模塊,用于將文件系統(tǒng)發(fā)送至所述控制器;所述控制器包括有:解析模塊,用于解析所述文件系統(tǒng);執(zhí)行模塊,用于在所述解析模塊解析到文件系統(tǒng)中有特殊文件時,將所述特殊文件中的待更新固件存入至所述閃存單元中,以更新所述存儲卡的固件。本發(fā)明還進一步揭示了一種固件更新方法。
【專利說明】
固件更新系統(tǒng)及方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明設(shè)及一種電子裝置中的存儲卡的固件更新系統(tǒng)及方法。
【背景技術(shù)】
[0002] 在我們現(xiàn)代化的高科技社會中,各式各樣的計算機及電子裝置種類是很豐富的。 很多運些裝置的核屯、部分都是一個微控制器,其可被視為運些裝置的"大腦"。一般而言, 微控制器是根據(jù)機器碼(machinecode)或稱為固件代碼(firmware code) W執(zhí)行所需的運 作。固件是為一設(shè)置在微控制器中的電子指令集(electronic instruction set),用來使 微控制器執(zhí)行所需功能并達(dá)到其設(shè)計目標(biāo)。舉例來說,基本的電子表中的固件較簡單,主要 是用來追蹤時間并處理使用者所需的鬧鐘及鈴聲等功能。移動電話的固件則較為復(fù)雜,能 提供使用者界面、移動電話傳送/接收協(xié)議、音頻處理算法及其它功能等等。
[0003] 對于更為復(fù)雜的電子裝置而言,往往需要定期地更新固件。運類固件不僅包含 正常運作所需的指令集,也包含使用者設(shè)定及內(nèi)建的較次要數(shù)據(jù)。因此經(jīng)由更新固件便 可W更新某些特性或前述的各種數(shù)據(jù),改變裝置的設(shè)置,同時也可W修復(fù)機器碼中所存 在的錯誤(或稱為"臭蟲化Ug)")。一般來說,固件是儲存在電子裝置的非易失性內(nèi)存 (non-volatile memoir)中,如一 eMMC (Embedded Multi Media Card),并可從非易失性內(nèi) 存中被讀取。使用非易失性內(nèi)存的主要原因是非易失性內(nèi)存可W保證當(dāng)裝置重新啟動后, 儲存在內(nèi)部的固件及相關(guān)設(shè)置仍能保存完好而不致因斷電而消失。
[0004] 一般而言,電子裝置可能因為已知的問題度ug)、未知的問題或需提高效能而需要 提出相對應(yīng)的解決方案,而現(xiàn)有廠商提出的解決方案大多通過更新固件來對所述eMMC升 級?,F(xiàn)有的固件更新方法是將電子裝置拆機后,將所述eMMC由所述電子裝置上拆卸下來, 再在一特定的固件升級環(huán)境中對所述eMMC進行升級。運樣的更新固件的方式非常不便,亦 不方便操作。
【發(fā)明內(nèi)容】
陽〇化]鑒于W上內(nèi)容,有必要提供一種方便更新存儲卡的固件更新系統(tǒng)及更新方法。
[0006] 一種固件更新系統(tǒng),包括有一移動終端及一連接所述移動終端的電子裝置,所述 移動終端存儲有一文件系統(tǒng),所述文件系統(tǒng)包括有一存儲有待更新固件的特殊文件,所述 電子裝置包括有一存儲卡,所述存儲卡包括有一控制器及一閃存單元,所述移動終端包括 有通信模塊,用于將文件系統(tǒng)發(fā)送至所述控制器;所述控制器包括有:解析模塊,用于解析 所述文件系統(tǒng);執(zhí)行模塊,用于在所述解析模塊解析到文件系統(tǒng)中有特殊文件時,將所述特 殊文件中的待更新固件存入至所述閃存單元中,W更新所述存儲卡的固件。
[0007] 進一步地,所述控制器還包括有偵測模塊:用于在所述解析模塊解析所述文件系 統(tǒng)后偵測所述文件系統(tǒng)是否有特殊文件,并在有特殊文件時將所述特殊文件傳送至所述執(zhí) 行模塊。
[0008] 進一步地,所述文件系統(tǒng)還包括有一存儲普通數(shù)據(jù)的的普通文件,所述閃存單元 包括有一數(shù)據(jù)存儲區(qū),所述執(zhí)行模塊用于在所述解析模塊解析到普通文件時將普通文件存 儲至數(shù)據(jù)存儲區(qū)。
[0009] 進一步地,所述閃存單元還包括有一固件存儲區(qū),所述執(zhí)行模塊用于將所述待更 新固件存入所述固件存儲區(qū),W替換所述固件存儲區(qū)的原固件。
[0010] 進一步地,所述控制器還包括有一緩存模塊,所述緩存模塊用于緩存所述通信模 塊發(fā)送的文件系統(tǒng)而發(fā)送至所述解析模塊。
[0011] 進一步地,所述電子裝置為一手機,所述移動終端為一電腦、一平板、或一 U盤。
[0012] 一種固件更新方法,用于將一移動終端的待更新固件存儲至一電子裝置的存儲卡 中,W更新所述存儲卡的固件,所述固件更新方法包括有: 通信步驟:所述移動終端的通信模塊發(fā)送移動終端內(nèi)的一文件系統(tǒng)至所述存儲卡; 解析步驟:所述存儲卡的解析模塊解析所述文件系統(tǒng);及 執(zhí)行步驟:所述存儲卡的執(zhí)行模塊在所述解析模塊解析到文件系統(tǒng)中的存儲有待更新 固件的特殊文件時,將所述特殊文件中的待更新固件存入至所述閃存單元中,W更新所述 存儲卡的固件。
[0013] 進一步地,所述固件更新方法還包括有偵測步驟:所述控制器的偵測模塊偵測所 述解析模塊解析后的文件系統(tǒng),并判斷解析后的文件系統(tǒng)是否有特殊文件。
[0014] 進一步地,所述固件更新方法還包括步驟:所述控制器中的執(zhí)行模塊在所述偵測 模塊判斷到有特殊文件時將特殊文件中的待更新固件存入所述閃存單元的一固件存儲區(qū) 中,并在所述偵測模塊判斷到存儲有普通數(shù)據(jù)的普通文件時,將普通數(shù)據(jù)存入至所述閃存 單元的一數(shù)據(jù)存儲區(qū)中。
[0015] 進一步地,所述電子裝置為一手機,所述移動終端為一電腦、一平板、或一 U盤。
[0016] 相較于現(xiàn)有技術(shù),在上述固件更新系統(tǒng)及更新方法中,將電子裝置連接上所述移 動終端,所述移動終端將文件系統(tǒng)發(fā)送至所述電子裝置,所述存儲卡中的解析模塊即可解 析所述文件系統(tǒng)是否有特殊文件。當(dāng)所述文件系統(tǒng)中有特殊文件時,所述執(zhí)行模塊就可將 所述待更新固件存入所述閃存單元中,W替換掉所述閃存單元的原固件,從而實現(xiàn)對所述 存儲卡的固件更新。運樣,無需將所述存儲卡由所述電子裝置上拆下即可對所述存儲卡進 行固件更新,非常方便。
【附圖說明】
[0017] 圖1是本發(fā)明固件更新系統(tǒng)的一較佳實施方式的一結(jié)構(gòu)框架圖。
[0018] 圖2是本發(fā)明固件更新系統(tǒng)的一較佳實施方式的一結(jié)構(gòu)示意圖。
[0019] 圖3是圖2中的更新系統(tǒng)的一較佳實施方式的一結(jié)構(gòu)示意圖。
[0020] 圖4是利用圖1-3中的更新系統(tǒng)實施的一固件更新方法的一流程圖。
[0021] 主要元件符號說明
如下【具體實施方式】將結(jié)曾上還附圏巧一步化巧本巧巧。
【具體實施方式】
[0022] 請參閱圖1,在本發(fā)明的一較佳實施方式中,一固件更新系統(tǒng)100包括有一移動終 端10、及一需要更新固件的電子裝置30。所述移動終端10與所述電子裝置30可通過有線 或者無線連接。在一實施方式中,所述移動終端10可為一臺式計算機、筆記本計算機、一 U 盤、一讀卡器、一平板等。所述電子裝置30可為一手機、一數(shù)碼相機、一 mp3、一路由器、一電 子書、一打印機、一顯卡等。
[0023] 請參閱圖2及圖3,所述移動終端10存儲有一文件系統(tǒng),所述文件系統(tǒng)包括有普通 文件及特殊文件。所述普通文件內(nèi)存儲由普通數(shù)據(jù)流,例如照片、歌曲等。所述特殊文件內(nèi) 存儲有可更新電子裝置30中的固件的待更新固件,所述待更新固件內(nèi)包括有執(zhí)行命令及 固件數(shù)據(jù)等具有特定編碼格式的數(shù)據(jù)。所述移動終端10包括有一通信模塊12。所述通信 模塊12用于在所述移動終端10連接所述電子裝置30時將所述文件系統(tǒng)傳送至所述電子 裝置30。
[0024] 所述電子裝置30包括有一主機31及一連接于所述主機31的存儲卡33。在一實 施方式中,所述存儲卡為一 eMMC(Embedded Multi Media Card)。所述主機31用于接收所 述通信模塊12發(fā)送的文件系統(tǒng)并將該文件系統(tǒng)傳送至所述存儲卡33。 W25] 所述存儲卡33包括有一控制器34、及一連接于所述控制器34的閃存單 元35。所述控制器34包括有一接口控制模塊340、一閃存控制單元341、一微處理器 (Microprogrammed Control Unit,MCU) ;343、一只讀存儲器(Read Only Memoir,ROM)345。 在本實施例中,所述只讀存儲器345用于存儲一程序代碼,而所述微處理器343則用于執(zhí)行 所述程序代碼W讓所述閃存控制單元341控制對所述閃存單元35的讀寫。
[00%] 所述存儲卡33可通過所述接口控制模塊340連接所述主機31,W讓所述主機31 傳送的文件系統(tǒng)能夠傳送至所述存儲卡33中。
[0027] 所述閃存控制單元341包括有一接收模塊3411、一緩存模塊3413、一解析模塊 3415、一偵測模塊3417、一分解模塊3418、及一執(zhí)行模塊3419。
[0028] 所述接收模塊3411用于接收所述主機31傳送的文件系統(tǒng),包括普通文件及特殊 文件。
[0029] 所述緩存模塊3413用于緩存所述接收模塊3411接收的文件系統(tǒng),并將該文件系 統(tǒng)傳送至所述解析模塊3415。
[0030] 所述解析模塊3415用于解析所述緩存模塊3413發(fā)送的文件系統(tǒng)。
[0031] 所述偵測模塊3417用于偵測所述解析模塊3415解析后的文件系統(tǒng)是否有特殊文 件,若有,則將所述特殊文件傳送至所述分解模塊3418。若偵測模塊3417偵測到所述解析 模塊3415解析后的文件系統(tǒng)包含有普通文件時,所述偵測模塊3417將所述普通文件發(fā)送 至所述執(zhí)行模塊3419,而讓所述執(zhí)行模塊3419將所述普通文件的普通數(shù)據(jù)流存入所述閃 存單元35中。當(dāng)然,若所述偵測模塊3417偵測到所述所述解析模塊3415解析后的文件系 統(tǒng)僅包含有普通文件而無特殊文件時,所述偵測模塊3415亦可發(fā)送一停止信號至所述執(zhí) 行模塊3419, W讓所述執(zhí)行模塊3419停止執(zhí)行。
[0032] 所述分解模塊3418用于分解所述特殊文件中的待更新固件內(nèi)的執(zhí)行命令及固件 數(shù)據(jù)。
[0033] 所述執(zhí)行模塊3419用于根據(jù)所述分解模塊3417分解后的執(zhí)行命令及固件數(shù)據(jù)將 所述待更新固件存入至所述閃存單元35中,W替換所述閃存單元35中原有的固件。當(dāng)然, 所述執(zhí)行模塊3419還可用于在所述偵測模塊3417偵測到分解后的文件系統(tǒng)包含有普通文 件時,將普通文件的普通數(shù)據(jù)流存入所述閃存單元35中;所述執(zhí)行模塊3419還可用于在所 述偵測模塊3417偵測到分解后的文件系統(tǒng)僅包含普通文件而沒有特殊文件時,停止執(zhí)行 而讓所述電子裝置30退出固件更新系統(tǒng)。
[0034] 所述閃存單元35包括有一數(shù)據(jù)存儲區(qū)351及一固件存儲區(qū)353。所述數(shù)據(jù)存儲區(qū) 351用于存儲普通文件的普通數(shù)據(jù)流,所述固件存儲區(qū)353用于固件。也就是說,所述存儲 卡33在更新固件時,也就是更新所述固件存儲區(qū)353的固件。
[0035] 所屬領(lǐng)域的技術(shù)人員可W清楚地了解到,為描述的方便和簡潔,僅W上述各功能 單元、模塊的劃分進行舉例說明,實際應(yīng)用中,可W根據(jù)需要而將上述功能分配由不同的功 能單元或模塊完成,即將存儲裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能單元或模塊,W完成W上 描述的全部或者部分功能。實施方式中的各功能單元、模塊可W集成在一個處理單元中,也 可W是各個單元單獨物理存在,也可W兩個或兩個W上單元集成在一個單元中,上述集成 的單元既可W采用硬件的形式實現(xiàn),也可W采用軟件功能單元的形式實現(xiàn)。另外,各功能單 元、模塊的具體名稱也只是為了便于相互區(qū)分,并不用于限制本申請的保護范圍。
[0036] 請參閱圖4,圖4為本發(fā)明一實施方式中通過所述固件更新系統(tǒng)100實現(xiàn)一種固件 更新方法400的一流程圖,所述固件更新方法400方法包括W下步驟: 步驟401 :連接所述移動終端10與所述電子裝置30。在一實施方式中,所述電子裝置 30與所述移動終端10通過無線或有線連接。所述移動終端10存儲有文件系統(tǒng)。所述文件 系統(tǒng)包括有普通文件及特殊文件。所述普通文件內(nèi)存儲由普通數(shù)據(jù)流,例如照片、歌曲等。 所述特殊文件內(nèi)存儲有可更新電子裝置30中的固件的待更新固件,所述待更新固件內(nèi)包 括有執(zhí)行命令及固件數(shù)據(jù)等。
[0037] 步驟402 :所述移動終端10中的通信模塊12將所述文件系統(tǒng)發(fā)送至所述電子裝 置30的主機31。當(dāng)所述通信模塊12發(fā)送文件系統(tǒng)時,可同時發(fā)送包含有普通文件和特殊 文件至所述主機31,亦可僅發(fā)送所述特殊文件或普通文件至所述主機31。
[0038] 步驟403 :所述主機31接收所述通信模塊31發(fā)送的文件系統(tǒng),并將所述文件系統(tǒng) 發(fā)送至所述存儲卡34的控制器341的接收模塊3411。
[0039] 步驟404 :所述接收模塊3411接收所述主機31傳送的文件系統(tǒng),并將所述文件系 統(tǒng)發(fā)送至所述控制器341的緩存模塊3413。
[0040] 步驟405 :所述緩存模塊3413緩存所述接收模塊3411接收的文件系統(tǒng),并將該文 件系統(tǒng)傳送至所述控制器341的解析模塊3415。
[0041] 步驟406 :所述解析模塊3415解析所述緩存模塊3413發(fā)送的文件系統(tǒng),并將解析 后的文件系統(tǒng)發(fā)送至所述控制器341的偵測模塊3417。
[0042] 步驟407 :所述偵測模塊3417偵測所述解析模塊3415解析后的文件系統(tǒng)是否是 特殊文件,若是,則進行步驟408,若不是,則進行步驟410。
[0043] 步驟408 :所述控制器341的分解模塊3418分解所述特殊文件中的待更新固件內(nèi) 的執(zhí)行命令及固件數(shù)據(jù),并將分解后的待更新固件內(nèi)的執(zhí)行命令及固件數(shù)據(jù)發(fā)送至所述控 制器341的執(zhí)行模塊3419。
[0044] 步驟409 :所述執(zhí)行模塊3419根據(jù)所述分解模塊3417分解后的執(zhí)行命令及固件 數(shù)據(jù)將所述待更新固件存入至所述閃存單元35的固件存儲區(qū)353中,W替換所述固件存儲 區(qū)353原有的固件,從而完成對所述存儲卡30的固件更新。
[0045] 步驟410 :當(dāng)所述偵測模塊3417偵測的所述解析模塊3415解析后的文件系統(tǒng)非 特殊文件時,所述偵測模塊3417可發(fā)送一停止信號至所述執(zhí)行模塊3419, W讓所述執(zhí)行模 塊3419停止執(zhí)行W退出更新固件流程。當(dāng)然,當(dāng)所述偵測模塊3417偵測的所述解析模塊 3415解析后的文件系統(tǒng)非特殊文件而為普通文件時,所述執(zhí)行模塊3419將普通文件的普 通數(shù)據(jù)流存入所述閃存單元35的數(shù)據(jù)存儲去351中。
[0046] 綜上所述,在需要更新所述存儲卡33中的固件時,無需將所述存儲卡30由所述電 子裝置30上取下來進行更新。只需要將所述電子裝置30連接上所述移動終端10,移動終 端10將存有待更新固件之特殊文件的文件系統(tǒng)發(fā)送至所述電子裝置30的主機31,所述主 機31再將所述文件系統(tǒng)發(fā)送至所述存儲卡33的控制器34中。所述控制器34的解析模塊 3415即可解析所述文件系統(tǒng)是否有特殊文件。當(dāng)所述文件系統(tǒng)中有特殊文件時,所述分解 模塊3418即可分解所述特殊文件中的待更新固件的執(zhí)行命令及固件數(shù)據(jù),W讓所述執(zhí)行 模塊3419能夠根據(jù)所述執(zhí)行命令及固件數(shù)據(jù)將所述待更新固件存入所述閃存單元35的固 件存儲區(qū)353中,W替換掉所述固件存儲區(qū)353的原固件,從而實現(xiàn)對所述存儲卡33的固 件更新。
[0047] 本領(lǐng)域技術(shù)人員可W理解,圖2及圖3中示出的組成結(jié)構(gòu)并不構(gòu)成對固件更新系 統(tǒng)100的限定,可W包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布 置,而圖4中的固件更新方法400亦采用圖1及圖2中所示的更多或更少的部件,或者組合 某些部件,或者不同的部件布置來實現(xiàn)。
[0048] 本領(lǐng)域的技術(shù)人員可W清楚地了解到本發(fā)明實施例中的技術(shù)可借助軟件加必需 的通用硬件平臺的方式來實現(xiàn)?;谶\樣的理解,本發(fā)明實施例中的技術(shù)方案本質(zhì)上或者 說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可W存 儲在存儲介質(zhì)中,如R0M/RAM、磁碟、光盤等,包括若干指令用W使得一臺計算機設(shè)備(可W 是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例或者實施例的某些部分 所述的方法。
[0049] W上內(nèi)容是結(jié)合具體的優(yōu)選實施方式對本發(fā)明所作的進一步詳細(xì)說明,不能認(rèn)定 本發(fā)明的具體實施只局限于運些說明。對于本發(fā)明所屬技術(shù)領(lǐng)域的普通技術(shù)人員來說,在 不脫離本發(fā)明構(gòu)思的前提下做出若干等同替代或明顯變型,而且性能或用途相同,都應(yīng)當(dāng) 視為屬于本發(fā)明由所提交的權(quán)利要求書確定的專利保護范圍。
【主權(quán)項】
1. 一種固件更新系統(tǒng),包括有一移動終端及一連接所述移動終端的電子裝置,所述移 動終端存儲有一文件系統(tǒng),所述文件系統(tǒng)包括有一存儲有待更新固件的特殊文件,所述電 子裝置包括有一存儲卡,所述存儲卡包括有一控制器及一閃存單元,其特征在于:所述移動 終端包括有: 通信模塊,用于將文件系統(tǒng)發(fā)送至所述控制器; 所述控制器包括有: 解析模塊,用于解析所述文件系統(tǒng); 執(zhí)行模塊,用于在所述解析模塊解析到文件系統(tǒng)中有特殊文件時,將所述特殊文件中 的待更新固件存入至所述閃存單元中,以更新所述存儲卡的固件。2. 如權(quán)利要求1所述的固件更新系統(tǒng),其特征在于:所述控制器還包括有偵測模塊:用 于在所述解析模塊解析所述文件系統(tǒng)后偵測所述文件系統(tǒng)是否有特殊文件,并在有特殊文 件時將所述特殊文件傳送至所述執(zhí)行模塊。3. 如權(quán)利要求1所述的固件更新系統(tǒng),其特征在于:所述文件系統(tǒng)還包括有一存儲普 通數(shù)據(jù)的的普通文件,所述閃存單元包括有一數(shù)據(jù)存儲區(qū),所述執(zhí)行模塊用于在所述解析 模塊解析到普通文件時將普通文件存儲至數(shù)據(jù)存儲區(qū)。4. 如權(quán)利要求1所述的固件更新系統(tǒng),其特征在于:所述閃存單元還包括有一固件存 儲區(qū),所述執(zhí)行模塊用于將所述待更新固件存入所述固件存儲區(qū),以替換所述固件存儲區(qū) 的原固件。5. 如權(quán)利要求1所述的固件更新系統(tǒng),其特征在于:所述控制器還包括有一緩存模塊, 所述緩存模塊用于緩存所述通信模塊發(fā)送的文件系統(tǒng)而發(fā)送至所述解析模塊。6. 如權(quán)利要求1所述的固件更新系統(tǒng),其特征在于:所述電子裝置為一手機,所述移動 終端為一電腦、一平板、或一 U盤。7. -種固件更新方法,用于將一移動終端的待更新固件存儲至一電子裝置的存儲卡 中,以更新所述存儲卡的固件,其特征在于:所述固件更新方法包括有: 通信步驟:所述移動終端的通信模塊發(fā)送移動終端內(nèi)的一文件系統(tǒng)至所述存儲卡; 解析步驟:所述存儲卡的解析模塊解析所述文件系統(tǒng);及 執(zhí)行步驟:所述存儲卡的執(zhí)行模塊在所述解析模塊解析到文件系統(tǒng)中的存儲有待更新 固件的特殊文件時,將所述特殊文件中的待更新固件存入至所述閃存單元中,以更新所述 存儲卡的固件。8. 如權(quán)利要求7所述的固件更新方法,其特征在于:所述固件更新方法還包括有偵測 步驟:所述控制器的偵測模塊偵測所述解析模塊解析后的文件系統(tǒng),并判斷解析后的文件 系統(tǒng)是否有特殊文件。9. 如權(quán)利要求8所述的固件更新方法,其特征在于:所述固件更新方法還包括步驟:所 述控制器中的執(zhí)行模塊在所述偵測模塊判斷到有特殊文件時將特殊文件中的待更新固件 存入所述閃存單元的一固件存儲區(qū)中,并在所述偵測模塊判斷到存儲有普通數(shù)據(jù)的普通文 件時,將普通數(shù)據(jù)存入至所述閃存單元的一數(shù)據(jù)存儲區(qū)中。10. 如權(quán)利要求7所述的固件更新方法,其特征在于:所述電子裝置為一手機,所述移 動終端為一電腦、一平板、或一 U盤。
【文檔編號】G06F9/445GK105988828SQ201510048889
【公開日】2016年10月5日
【申請日】2015年1月30日
【發(fā)明人】陳寄福, 吳大畏, 李曉強
【申請人】深圳市硅格半導(dǎo)體有限公司