一種終端熱啟動(dòng)方法和裝置的制造方法
【專利摘要】本發(fā)明提供了一種終端熱啟動(dòng)方法和裝置,所述方法包括以下步驟:首先第二存儲(chǔ)單元存儲(chǔ)熱啟動(dòng)代碼,啟動(dòng)代碼存儲(chǔ)模塊存儲(chǔ)啟動(dòng)代碼;而后執(zhí)行模塊接收第一指令,執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,并從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,并將其存儲(chǔ)于高速緩存模塊;而后執(zhí)行模塊執(zhí)行所述高速緩存模塊中的熱啟動(dòng)代碼,并讓第一存儲(chǔ)單元退出自刷新模式。由于熱啟動(dòng)代碼預(yù)先存儲(chǔ)于第二存儲(chǔ)單元,當(dāng)移動(dòng)設(shè)備進(jìn)入休眠模式時(shí),無需對(duì)高速緩存模塊進(jìn)行供電,從而大大降低了休眠模式下移動(dòng)設(shè)備的功耗,同時(shí)也降低了硬件成本。
【專利說明】
一種終端熱啟動(dòng)方法和裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別涉及一種終端熱啟動(dòng)方法和裝置。
【背景技術(shù)】
[0002]移動(dòng)設(shè)備的啟動(dòng)通常分為冷啟動(dòng)和熱啟動(dòng)。冷啟動(dòng)是指在移動(dòng)設(shè)備在完全關(guān)閉電源情況下,系統(tǒng)重新上電后的啟動(dòng)過程。熱啟動(dòng)是指移動(dòng)設(shè)備從低功耗模式(休眠模式)恢復(fù)到正常運(yùn)行模式的過程。由于熱啟動(dòng)代碼存儲(chǔ)于SRAM中,而SRAM又位于移動(dòng)設(shè)備的處理器內(nèi),因而當(dāng)移動(dòng)設(shè)備進(jìn)入休眠模式時(shí),就需要對(duì)SRAM持續(xù)供電,以保證當(dāng)移動(dòng)設(shè)備退出休眠模式時(shí),移動(dòng)設(shè)備可以恢復(fù)到正常的運(yùn)行模式。
[0003]這樣,不僅會(huì)導(dǎo)致移動(dòng)設(shè)備在休眠模式下的功耗增加(SRAM容量越大,休眠模式下功耗也越高),同時(shí),由于SRAM通常設(shè)計(jì)在移動(dòng)設(shè)備的處理器內(nèi)部,也會(huì)增加相應(yīng)的處理器成本,降低處理器的使用壽命。
【發(fā)明內(nèi)容】
[0004]為此,需要提供一種終端熱啟動(dòng)方法和裝置,用于解決現(xiàn)有移動(dòng)設(shè)備在熱啟動(dòng)過程中功耗大、成本高等問題。
[0005]為實(shí)現(xiàn)上述目的,發(fā)明人提供了一種終端熱啟動(dòng)裝置,所述裝置包括處理單元、第一存儲(chǔ)單元和第二存儲(chǔ)單元,所述處理單元包括執(zhí)行模塊、啟動(dòng)代碼存儲(chǔ)模塊和高速緩存模塊,所述執(zhí)行模塊與第一存儲(chǔ)單元連接,所述執(zhí)行模塊與第二存儲(chǔ)單元連接,所述啟動(dòng)代碼存儲(chǔ)模塊與執(zhí)行模塊連接,所述執(zhí)行模塊還與高速緩存模塊連接;
[0006]所述第二存儲(chǔ)單元用于存儲(chǔ)熱啟動(dòng)代碼;
[0007]所述啟動(dòng)代碼存儲(chǔ)模塊用于存儲(chǔ)啟動(dòng)代碼;
[0008]所述執(zhí)行模塊用于接收第一指令,執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,并從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,并將其存儲(chǔ)于高速緩存模塊;
[0009]所述執(zhí)行模塊還用于執(zhí)行所述高速緩存模塊中的熱啟動(dòng)代碼,并讓第一存儲(chǔ)單元退出自刷新模式。
[0010]進(jìn)一步地,所述執(zhí)行模塊還包括寄存器模塊,所述寄存器模塊用于存儲(chǔ)熱啟動(dòng)標(biāo)識(shí)信息,所述標(biāo)識(shí)信息包括開啟狀態(tài)和關(guān)閉狀態(tài),所述執(zhí)行模塊用于在終端進(jìn)入休眠模式時(shí),將所述寄存器模塊所存儲(chǔ)的熱啟動(dòng)標(biāo)識(shí)信息設(shè)置為開啟狀態(tài),并在終端退出所述休眠模式時(shí),將所述寄存器模塊所存儲(chǔ)的熱啟動(dòng)標(biāo)識(shí)信息設(shè)置為關(guān)閉狀態(tài)。
[0011]進(jìn)一步地,所述執(zhí)行模塊執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼具體包括:執(zhí)行模塊用于判斷寄存器模塊中的熱啟動(dòng)標(biāo)識(shí)信息是否為開啟狀態(tài),若是則所述執(zhí)行模塊用于從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,將其存儲(chǔ)于高速緩存模塊并執(zhí)行;否則所述執(zhí)行模塊執(zhí)行冷啟動(dòng)。
[0012]進(jìn)一步地,所述裝置還包括電源模塊,所述電源模塊用于在終端進(jìn)入休眠模式后,停止對(duì)處理單元供電。
[0013]進(jìn)一步地,所述高速緩存模塊為SRAM。
[0014]以及發(fā)明人還提供了一種終端熱啟動(dòng)方法,所述方法應(yīng)用于終端熱啟動(dòng)裝置,所述裝置包括處理單元、第一存儲(chǔ)單元和第二存儲(chǔ)單元,所述處理單元包括執(zhí)行模塊、啟動(dòng)代碼存儲(chǔ)模塊和高速緩存模塊,所述執(zhí)行模塊與第一存儲(chǔ)單元連接,所述執(zhí)行模塊與第二存儲(chǔ)單元連接,所述啟動(dòng)代碼存儲(chǔ)模塊與執(zhí)行模塊連接,所述執(zhí)行模塊還與高速緩存模塊連接;所述方法包括以下步驟:
[0015]第二存儲(chǔ)單元存儲(chǔ)熱啟動(dòng)代碼,啟動(dòng)代碼存儲(chǔ)模塊存儲(chǔ)啟動(dòng)代碼;
[0016]執(zhí)行模塊接收第一指令,執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,并從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,并將其存儲(chǔ)于高速緩存模塊;
[0017]執(zhí)行模塊執(zhí)行所述高速緩存模塊中的熱啟動(dòng)代碼,并讓第一存儲(chǔ)單元退出自刷新模式。
[0018]進(jìn)一步地,所述執(zhí)行模塊還包括寄存器模塊,所述寄存器模塊用于存儲(chǔ)熱啟動(dòng)標(biāo)識(shí)信息,所述標(biāo)識(shí)信息包括開啟狀態(tài)和關(guān)閉狀態(tài);則所述方法包括步驟:
[0019]執(zhí)行模塊在終端進(jìn)入休眠模式時(shí),將所述寄存器模塊所存儲(chǔ)的熱啟動(dòng)標(biāo)識(shí)信息設(shè)置為開啟狀態(tài),并在終端退出所述休眠模式時(shí),將所述寄存器模塊所存儲(chǔ)的熱啟動(dòng)標(biāo)識(shí)信息設(shè)置為關(guān)閉狀態(tài)。
[0020]進(jìn)一步地,所述步驟“執(zhí)行模塊執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼”具體包括:
[0021]執(zhí)行模塊判斷寄存器模塊中的熱啟動(dòng)標(biāo)識(shí)信息是否為開啟狀態(tài),若是則執(zhí)行模塊從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,將其存儲(chǔ)于高速緩存模塊并執(zhí)行;否則所述執(zhí)行模塊執(zhí)行冷啟動(dòng)。
[0022]進(jìn)一步地,所述裝置還包括電源模塊,所述電源模塊用于在終端進(jìn)入休眠模式后,停止對(duì)處理單元供電。
[0023]進(jìn)一步地,所述高速緩存模塊為SRAM。
[0024]上述技術(shù)方案所述的終端熱啟動(dòng)方法和裝置,所述方法應(yīng)用于終端熱啟動(dòng)裝置,所述裝置包括處理單元、第一存儲(chǔ)單元和第二存儲(chǔ)單元,所述處理單元包括執(zhí)行模塊、啟動(dòng)代碼存儲(chǔ)模塊和高速緩存模塊,所述執(zhí)行模塊與第一存儲(chǔ)單元連接,所述執(zhí)行模塊與第二存儲(chǔ)單元連接,所述啟動(dòng)代碼存儲(chǔ)模塊與執(zhí)行模塊連接,所述執(zhí)行模塊還與高速緩存模塊連接;所述方法包括以下步驟:首先第二存儲(chǔ)單元存儲(chǔ)熱啟動(dòng)代碼,啟動(dòng)代碼存儲(chǔ)模塊存儲(chǔ)啟動(dòng)代碼;而后執(zhí)行模塊接收第一指令,執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,并從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,并將其存儲(chǔ)于高速緩存模塊;而后執(zhí)行模塊執(zhí)行所述高速緩存模塊中的熱啟動(dòng)代碼,并讓第一存儲(chǔ)單元退出自刷新模式。由于熱啟動(dòng)代碼預(yù)先存儲(chǔ)于第二存儲(chǔ)單元,當(dāng)移動(dòng)設(shè)備進(jìn)入休眠模式時(shí),無需對(duì)高速緩存模塊進(jìn)行供電,從而大大降低了休眠模式下移動(dòng)設(shè)備的功耗。而當(dāng)移動(dòng)設(shè)備退出休眠模式時(shí),執(zhí)行模塊會(huì)將熱啟動(dòng)代碼存儲(chǔ)于高速緩存模塊并執(zhí)行,接著讓第一存儲(chǔ)單元退出自刷新模式,使得移動(dòng)設(shè)備恢復(fù)到正常工作模式下。由于熱啟動(dòng)代碼往往較小,相對(duì)于休眠模式下需要長時(shí)間給處理器供電而言,也大大降低了對(duì)處理器的損耗,延長了處理器的使用壽命,降低了硬件成本,因而在計(jì)算機(jī)領(lǐng)域具有廣闊的市場(chǎng)前景。
【附圖說明】
[0025]圖1為本發(fā)明一實(shí)施方式涉及的終端熱啟動(dòng)裝置的示意圖;
[0026]圖2為本發(fā)明一實(shí)施方式涉及的終端熱啟動(dòng)方法的流程圖;
[0027]圖3為本發(fā)明一實(shí)施方式涉及的終端熱啟動(dòng)方法的流程圖。
[0028]附圖標(biāo)記說明:
[0029]101、處理單元;
[0030]111、啟動(dòng)代碼存儲(chǔ)模塊;
[0031]112、執(zhí)行模塊;122、寄存器模塊;
[0032]113、高速緩存模塊;
[0033]102、第一存儲(chǔ)單元;
[0034]103、第二存儲(chǔ)單元。
【具體實(shí)施方式】
[0035]為詳細(xì)說明技術(shù)方案的技術(shù)內(nèi)容、構(gòu)造特征、所實(shí)現(xiàn)目的及效果,以下結(jié)合具體實(shí)施例并配合附圖詳予說明。
[0036]請(qǐng)參閱圖1,為本發(fā)明一實(shí)施方式涉及的終端熱啟動(dòng)裝置的示意圖。所述終端可以是手機(jī)、計(jì)算機(jī)、平板電腦等,所述裝置包括處理單元101、第一存儲(chǔ)單元102和第二存儲(chǔ)單元103,所述處理單元101包括執(zhí)行模塊112、啟動(dòng)代碼存儲(chǔ)模塊111和高速緩存模塊113,所述執(zhí)行模塊112與第一存儲(chǔ)單元102連接,所述執(zhí)行模塊112與第二存儲(chǔ)單元103連接,所述啟動(dòng)代碼存儲(chǔ)模塊111與執(zhí)行模塊112連接,所述執(zhí)行模塊112還與高速緩存模塊113連接;
[0037]所述第二存儲(chǔ)單元103用于存儲(chǔ)熱啟動(dòng)代碼;
[0038]所述啟動(dòng)代碼存儲(chǔ)模塊111用于存儲(chǔ)啟動(dòng)代碼;
[0039]所述執(zhí)行模塊112用于接收第一指令,執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊111中啟動(dòng)代碼,并從第二存儲(chǔ)單元103中讀取所述熱啟動(dòng)代碼,并將其存儲(chǔ)于高速緩存模塊113;
[0040]所述執(zhí)行模塊112還用于執(zhí)行所述高速緩存模塊中的熱啟動(dòng)代碼,并讓第一存儲(chǔ)單元102退出自刷新模式。
[0041]在使用終端熱啟動(dòng)裝置時(shí),首先第二存儲(chǔ)單元存儲(chǔ)熱啟動(dòng)代碼,啟動(dòng)代碼存儲(chǔ)模塊存儲(chǔ)啟動(dòng)代碼。在本實(shí)施方式中,第二存儲(chǔ)單元具有數(shù)據(jù)存儲(chǔ)功能且非易失性的電子元件。優(yōu)選的,第二存儲(chǔ)單元為EMMC或Nand。由于第二存儲(chǔ)單元是非易失性的,其所存儲(chǔ)的數(shù)據(jù)即使在未供電的情況下,也不會(huì)丟失,因而可以將熱啟動(dòng)代碼預(yù)先存儲(chǔ)于第二存儲(chǔ)單元。在本實(shí)施方式中,啟動(dòng)代碼存儲(chǔ)模塊為B00TR0M A00TR0M中存儲(chǔ)移動(dòng)設(shè)備執(zhí)行冷啟動(dòng)或熱啟動(dòng)的第一個(gè)代碼,該存儲(chǔ)模塊的特點(diǎn)是只讀且非易失性的,B00TR0M—般集成在移動(dòng)設(shè)備應(yīng)用處理器中,處理器可以直接執(zhí)行B00TR0M中的代碼。
[0042]而后執(zhí)行模塊接收第一指令,執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,并從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,并將其存儲(chǔ)于高速緩存模塊。在本實(shí)施方式中,所述高速緩存模塊為SRAMt3SRAM通常用于存儲(chǔ)移動(dòng)設(shè)備應(yīng)用處理器運(yùn)行時(shí)的數(shù)據(jù)和代碼,其特點(diǎn)是可讀可寫,易失性,成本高。一般移動(dòng)設(shè)備應(yīng)用處理器會(huì)集成一小塊SRAM存儲(chǔ)器,處理器可以直接執(zhí)行SRAM中的代碼。所述執(zhí)行模塊為具有數(shù)據(jù)處理功能的電子元件,例如可以為CPU。
[0043]而后執(zhí)行模塊執(zhí)行所述高速緩存模塊中的熱啟動(dòng)代碼,并讓第一存儲(chǔ)單元退出自刷新模式。在本實(shí)施方式中,所述第一存儲(chǔ)單元為DRAM,即通常所說的內(nèi)存。DRAM用于存儲(chǔ)運(yùn)行時(shí)操作系統(tǒng)的代碼和數(shù)據(jù),其特點(diǎn)是可讀可寫,易失性,成本低。處理器可以直接執(zhí)行DRAM中的代碼,且在DRAM處于自刷新模式時(shí)處理器不可訪問DRAM。當(dāng)移動(dòng)設(shè)備進(jìn)入低功耗模式(即休眠模式)時(shí),需要讓DRAM處于自刷新模式下,以保證DRAM中所存儲(chǔ)的正在運(yùn)行的進(jìn)程數(shù)據(jù)不會(huì)丟失,且需要給DRAM持續(xù)供電。當(dāng)執(zhí)行模塊執(zhí)行熱啟動(dòng)代碼時(shí),即移動(dòng)設(shè)備退出自刷新模式時(shí),這時(shí)候需要讓DRAM退出自刷新模式,以便使得移動(dòng)設(shè)備恢復(fù)到正常工作模式。
[0044]在本實(shí)施方式中,所述執(zhí)行模塊112還包括寄存器模塊122,所述寄存器模塊122用于存儲(chǔ)熱啟動(dòng)標(biāo)識(shí)信息,所述標(biāo)識(shí)信息包括開啟狀態(tài)和關(guān)閉狀態(tài),所述執(zhí)行模塊用于在終端進(jìn)入休眠模式時(shí),將所述寄存器模塊所存儲(chǔ)的熱啟動(dòng)標(biāo)識(shí)信息設(shè)置為開啟狀態(tài),并在終端退出所述休眠模式時(shí),將所述寄存器模塊所存儲(chǔ)的熱啟動(dòng)標(biāo)識(shí)信息設(shè)置為關(guān)閉狀態(tài)。例如可以在終端進(jìn)入休眠模式(低功耗模式,如待機(jī)模式),將寄存器的值設(shè)置為I;在終端退出休眠模式(低功耗模式,如待機(jī)模式),將寄存器的值設(shè)置為O。當(dāng)寄存器所存儲(chǔ)的值為I時(shí),表示當(dāng)前移動(dòng)設(shè)備處于熱啟動(dòng)開啟狀態(tài);當(dāng)寄存器所存儲(chǔ)的值為O時(shí),表示當(dāng)前移動(dòng)設(shè)備處于熱啟動(dòng)關(guān)閉狀態(tài)。
[0045]在本實(shí)施方式中,所述執(zhí)行模塊執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼具體包括:執(zhí)行模塊用于判斷寄存器模塊中的熱啟動(dòng)標(biāo)識(shí)信息是否為開啟狀態(tài),若是則所述執(zhí)行模塊用于從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,將其存儲(chǔ)于高速緩存模塊并執(zhí)行;否則所述執(zhí)行模塊執(zhí)行冷啟動(dòng)。在本實(shí)施方式中,冷啟動(dòng)代碼預(yù)先存儲(chǔ)于第二存儲(chǔ)單元中。當(dāng)執(zhí)行模塊判斷中的熱啟動(dòng)標(biāo)識(shí)信息為關(guān)閉狀態(tài),即移動(dòng)設(shè)備處于關(guān)機(jī)狀態(tài),因而將執(zhí)行冷啟動(dòng)流程。具體地,冷啟動(dòng)流程可以通過以下步驟實(shí)現(xiàn):執(zhí)行模塊執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,并將讀取第二存儲(chǔ)單元中的冷啟動(dòng)代碼,并將其存儲(chǔ)于高速緩存模塊并執(zhí)行。當(dāng)執(zhí)行模塊判斷中的熱啟動(dòng)標(biāo)識(shí)信息為開啟狀態(tài),即移動(dòng)設(shè)備處于休眠模式下,當(dāng)終端推出休眠模式時(shí),將執(zhí)行熱啟動(dòng)流程。具體地,冷啟動(dòng)流程可以通過以下步驟實(shí)現(xiàn):執(zhí)行模塊執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,執(zhí)行模塊從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,將其存儲(chǔ)于高速緩存模塊并執(zhí)行。
[0046]在本實(shí)施方式中,所述裝置還包括電源模塊,所述電源模塊用于在終端進(jìn)入休眠模式后,停止對(duì)處理單元供電。由于熱啟動(dòng)代碼預(yù)先存儲(chǔ)于第二存儲(chǔ)單元中,因而在終端處于休眠模式后,就無需再對(duì)高速緩存模塊進(jìn)行供電,也無需對(duì)處理單元再進(jìn)行供電,從而大大降低了終端在休眠模式下的功耗,且延長了處理單元的使用壽命,降低了硬件成本。
[0047]以及發(fā)明人還提供了一種終端熱啟動(dòng)方法,請(qǐng)參閱圖2,為本發(fā)明一實(shí)施方式涉及的終端熱啟動(dòng)方法的流程圖。所述方法應(yīng)用于終端熱啟動(dòng)裝置,所述裝置包括處理單元、第一存儲(chǔ)單元和第二存儲(chǔ)單元,所述處理單元包括執(zhí)行模塊、啟動(dòng)代碼存儲(chǔ)模塊和高速緩存模塊,所述執(zhí)行模塊與第一存儲(chǔ)單元連接,所述執(zhí)行模塊與第二存儲(chǔ)單元連接,所述啟動(dòng)代碼存儲(chǔ)模塊與執(zhí)行模塊連接,所述執(zhí)行模塊還與高速緩存模塊連接;所述方法包括以下步驟:
[0048]首先進(jìn)入步驟S201第二存儲(chǔ)單元存儲(chǔ)熱啟動(dòng)代碼,啟動(dòng)代碼存儲(chǔ)模塊存儲(chǔ)啟動(dòng)代碼。在本實(shí)施方式中,第二存儲(chǔ)單元具有數(shù)據(jù)存儲(chǔ)功能且非易失性的電子元件。優(yōu)選的,第二存儲(chǔ)單元為EMMC或Nand。由于第二存儲(chǔ)單元是非易失性的,其所存儲(chǔ)的數(shù)據(jù)即使在未供電的情況下,也不會(huì)丟失,因而可以將熱啟動(dòng)代碼預(yù)先存儲(chǔ)于第二存儲(chǔ)單元。在本實(shí)施方式中,啟動(dòng)代碼存儲(chǔ)模塊為BOOTROM。BOOTROM中存儲(chǔ)移動(dòng)設(shè)備執(zhí)行冷啟動(dòng)或熱啟動(dòng)的第一個(gè)代碼,該存儲(chǔ)模塊的特點(diǎn)是只讀且非易失性的,B00TR0M—般集成在移動(dòng)設(shè)備應(yīng)用處理器中,處理器可以直接執(zhí)行BOOTROM中的代碼。
[0049]而后進(jìn)入步驟S202執(zhí)行模塊接收第一指令,執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,并從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,并將其存儲(chǔ)于高速緩存模塊。在本實(shí)施方式中,所述高速緩存模塊為SRAM ARAM通常用于存儲(chǔ)移動(dòng)設(shè)備應(yīng)用處理器運(yùn)行時(shí)的數(shù)據(jù)和代碼,其特點(diǎn)是可讀可寫,易失性,成本高。一般移動(dòng)設(shè)備應(yīng)用處理器會(huì)集成一小塊SRAM存儲(chǔ)器,處理器可以直接執(zhí)行SRAM中的代碼。所述執(zhí)行模塊為具有數(shù)據(jù)處理功能的電子元件,例如可以為CPU。
[0050]而后進(jìn)入步驟S203執(zhí)行模塊執(zhí)行所述高速緩存模塊中的熱啟動(dòng)代碼,并讓第一存儲(chǔ)單元退出自刷新模式。在本實(shí)施方式中,所述第一存儲(chǔ)單元為DRAM,即通常所說的內(nèi)存。DRAM用于存儲(chǔ)運(yùn)行時(shí)操作系統(tǒng)的代碼和數(shù)據(jù),其特點(diǎn)是可讀可寫,易失性,成本低。處理器可以直接執(zhí)行DRAM中的代碼,且在DRAM處于自刷新模式時(shí)處理器不可訪問DRAM。當(dāng)移動(dòng)設(shè)備進(jìn)入低功耗模式(即休眠模式)時(shí),需要讓DRAM處于自刷新模式下,以保證DRAM中所存儲(chǔ)的正在運(yùn)行的進(jìn)程數(shù)據(jù)不會(huì)丟失,且需要給DRAM持續(xù)供電。當(dāng)執(zhí)行模塊執(zhí)行熱啟動(dòng)代碼時(shí),即移動(dòng)設(shè)備退出自刷新模式時(shí),這時(shí)候需要讓DRAM退出自刷新模式,以便使得移動(dòng)設(shè)備恢復(fù)到正常工作模式。
[0051]在本實(shí)施方式中,所述執(zhí)行模塊還包括寄存器模塊,所述寄存器模塊用于存儲(chǔ)熱啟動(dòng)標(biāo)識(shí)信息,所述標(biāo)識(shí)信息包括開啟狀態(tài)和關(guān)閉狀態(tài)。如圖3所示,可以進(jìn)入步驟S301執(zhí)行模塊在終端進(jìn)入休眠模式時(shí),將所述寄存器模塊所存儲(chǔ)的熱啟動(dòng)標(biāo)識(shí)信息設(shè)置為開啟狀態(tài),并在終端退出所述休眠模式時(shí),將所述寄存器模塊所存儲(chǔ)的熱啟動(dòng)標(biāo)識(shí)信息設(shè)置為關(guān)閉狀態(tài)。例如可以在終端進(jìn)入休眠模式(低功耗模式,如待機(jī)模式),將寄存器的值設(shè)置為I;在終端退出休眠模式(低功耗模式,如待機(jī)模式),將寄存器的值設(shè)置為O。當(dāng)寄存器所存儲(chǔ)的值為I時(shí),表示當(dāng)前移動(dòng)設(shè)備處于熱啟動(dòng)開啟狀態(tài);當(dāng)寄存器所存儲(chǔ)的值為O時(shí),表示當(dāng)前移動(dòng)設(shè)備處于熱啟動(dòng)關(guān)閉狀態(tài)。
[0052]在本實(shí)施方式中,所述第一指令為終端退出休眠模式的指令,如圖3所示,所述步驟“執(zhí)行模塊執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼”具體包括:步驟S302執(zhí)行模塊判斷寄存器模塊中的熱啟動(dòng)標(biāo)識(shí)信息是否為開啟狀態(tài),若是則進(jìn)入步驟S303執(zhí)行模塊從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,將其存儲(chǔ)于高速緩存模塊并執(zhí)行;否則進(jìn)入步驟S304執(zhí)行模塊執(zhí)行冷啟動(dòng)。在本實(shí)施方式中,冷啟動(dòng)代碼預(yù)先存儲(chǔ)于第二存儲(chǔ)單元中。當(dāng)執(zhí)行模塊判斷中的熱啟動(dòng)標(biāo)識(shí)信息為關(guān)閉狀態(tài),即移動(dòng)設(shè)備處于關(guān)機(jī)狀態(tài),因而將執(zhí)行冷啟動(dòng)流程。具體地,冷啟動(dòng)流程可以通過以下步驟實(shí)現(xiàn):執(zhí)行模塊執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,并將讀取第二存儲(chǔ)單元中的冷啟動(dòng)代碼,并將其存儲(chǔ)于高速緩存模塊并執(zhí)行。當(dāng)執(zhí)行模塊判斷中的熱啟動(dòng)標(biāo)識(shí)信息為開啟狀態(tài),即移動(dòng)設(shè)備處于休眠模式下,當(dāng)終端推出休眠模式時(shí),將執(zhí)行熱啟動(dòng)流程。具體地,冷啟動(dòng)流程可以通過以下步驟實(shí)現(xiàn):執(zhí)行模塊執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,執(zhí)行模塊從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,將其存儲(chǔ)于高速緩存模塊并執(zhí)行。
[0053]在本實(shí)施方式中,所述裝置還包括電源模塊,所述電源模塊用于在終端進(jìn)入休眠模式后,停止對(duì)處理單元供電。由于熱啟動(dòng)代碼預(yù)先存儲(chǔ)于第二存儲(chǔ)單元中,因而在終端處于休眠模式后,就無需再對(duì)高速緩存模塊進(jìn)行供電,也無需對(duì)處理單元再進(jìn)行供電,從而大大降低了終端在休眠模式下的功耗,且延長了處理單元的使用壽命,降低了硬件成本。
[0054]上述技術(shù)方案所述的終端熱啟動(dòng)方法和裝置,所述方法應(yīng)用于終端熱啟動(dòng)裝置,所述裝置包括處理單元、第一存儲(chǔ)單元和第二存儲(chǔ)單元,所述處理單元包括執(zhí)行模塊、啟動(dòng)代碼存儲(chǔ)模塊和高速緩存模塊,所述執(zhí)行模塊與第一存儲(chǔ)單元連接,所述執(zhí)行模塊與第二存儲(chǔ)單元連接,所述啟動(dòng)代碼存儲(chǔ)模塊與執(zhí)行模塊連接,所述執(zhí)行模塊還與高速緩存模塊連接;所述方法包括以下步驟:首先第二存儲(chǔ)單元存儲(chǔ)熱啟動(dòng)代碼,啟動(dòng)代碼存儲(chǔ)模塊存儲(chǔ)啟動(dòng)代碼;而后執(zhí)行模塊接收第一指令,執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,并從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,并將其存儲(chǔ)于高速緩存模塊;而后執(zhí)行模塊執(zhí)行所述高速緩存模塊中的熱啟動(dòng)代碼,并讓第一存儲(chǔ)單元退出自刷新模式。由于熱啟動(dòng)代碼預(yù)先存儲(chǔ)于第二存儲(chǔ)單元,當(dāng)移動(dòng)設(shè)備進(jìn)入休眠模式時(shí),無需對(duì)高速緩存模塊進(jìn)行供電,從而大大降低了休眠模式下移動(dòng)設(shè)備的功耗。而當(dāng)移動(dòng)設(shè)備退出休眠模式時(shí),執(zhí)行模塊會(huì)將熱啟動(dòng)代碼存儲(chǔ)于高速緩存模塊并執(zhí)行,接著讓第一存儲(chǔ)單元退出自刷新模式,使得移動(dòng)設(shè)備恢復(fù)到正常工作模式下。由于熱啟動(dòng)代碼往往較小,相對(duì)于休眠模式下需要長時(shí)間給處理器供電而言,也大大降低了對(duì)處理器的損耗,延長了處理器的使用壽命,降低了硬件成本,因而在計(jì)算機(jī)領(lǐng)域具有廣闊的市場(chǎng)前景。
[0055]需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者終端設(shè)備中還存在另外的要素。此夕卜,在本文中,“大于”、“小于”、“超過”等理解為不包括本數(shù);“以上”、“以下”、“以內(nèi)”等理解為包括本數(shù)。
[0056]本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,上述各實(shí)施例可提供為方法、裝置、或計(jì)算機(jī)程序產(chǎn)品。這些實(shí)施例可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。上述各實(shí)施例涉及的方法中的全部或部分步驟可以通過程序來指令相關(guān)的硬件來完成,所述的程序可以存儲(chǔ)于計(jì)算機(jī)設(shè)備可讀取的存儲(chǔ)介質(zhì)中,用于執(zhí)行上述各實(shí)施例方法所述的全部或部分步驟。所述計(jì)算機(jī)設(shè)備,包括但不限于:個(gè)人計(jì)算機(jī)、服務(wù)器、通用計(jì)算機(jī)、專用計(jì)算機(jī)、網(wǎng)絡(luò)設(shè)備、嵌入式設(shè)備、可編程設(shè)備、智能移動(dòng)終端、智能家居設(shè)備、穿戴式智能設(shè)備、車載智能設(shè)備等;所述的存儲(chǔ)介質(zhì),包括但不限于:RAM、R0M、磁碟、磁帶、光盤、閃存、U盤、移動(dòng)硬盤、存儲(chǔ)卡、記憶棒、網(wǎng)絡(luò)服務(wù)器存儲(chǔ)、網(wǎng)絡(luò)云存儲(chǔ)等。
[0057]上述各實(shí)施例是參照根據(jù)實(shí)施例所述的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到計(jì)算機(jī)設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
[0058]這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)設(shè)備以特定方式工作的計(jì)算機(jī)設(shè)備可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)設(shè)備可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
[0059]這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)設(shè)備上,使得在計(jì)算機(jī)設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
[0060]盡管已經(jīng)對(duì)上述各實(shí)施例進(jìn)行了描述,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對(duì)這些實(shí)施例做出另外的變更和修改,所以以上所述僅為本發(fā)明的實(shí)施例,并非因此限制本發(fā)明的專利保護(hù)范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種終端熱啟動(dòng)裝置,其特征在于,所述裝置包括處理單元、第一存儲(chǔ)單元和第二存儲(chǔ)單元,所述處理單元包括執(zhí)行模塊、啟動(dòng)代碼存儲(chǔ)模塊和高速緩存模塊,所述執(zhí)行模塊與第一存儲(chǔ)單元連接,所述執(zhí)行模塊與第二存儲(chǔ)單元連接,所述啟動(dòng)代碼存儲(chǔ)模塊與執(zhí)行模塊連接,所述執(zhí)行模塊還與高速緩存模塊連接; 所述第二存儲(chǔ)單元用于存儲(chǔ)熱啟動(dòng)代碼; 所述啟動(dòng)代碼存儲(chǔ)模塊用于存儲(chǔ)啟動(dòng)代碼; 所述執(zhí)行模塊用于接收第一指令,執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,并從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,并將其存儲(chǔ)于高速緩存模塊; 所述執(zhí)行模塊還用于執(zhí)行所述高速緩存模塊中的熱啟動(dòng)代碼,并讓第一存儲(chǔ)單元退出自刷新模式。2.如權(quán)利要求1所述的終端熱啟動(dòng)裝置,其特征在于,所述執(zhí)行模塊還包括寄存器模塊,所述寄存器模塊用于存儲(chǔ)熱啟動(dòng)標(biāo)識(shí)信息,所述標(biāo)識(shí)信息包括開啟狀態(tài)和關(guān)閉狀態(tài),所述執(zhí)行模塊用于在終端進(jìn)入休眠模式時(shí),將所述寄存器模塊所存儲(chǔ)的熱啟動(dòng)標(biāo)識(shí)信息設(shè)置為開啟狀態(tài),并在終端退出所述休眠模式時(shí),將所述寄存器模塊所存儲(chǔ)的熱啟動(dòng)標(biāo)識(shí)信息設(shè)置為關(guān)閉狀態(tài)。3.如權(quán)利要求2所述的終端熱啟動(dòng)裝置,其特征在于,所述執(zhí)行模塊執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼具體包括:執(zhí)行模塊用于判斷寄存器模塊中的熱啟動(dòng)標(biāo)識(shí)信息是否為開啟狀態(tài),若是則所述執(zhí)行模塊用于從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,將其存儲(chǔ)于高速緩存模塊并執(zhí)行;否則所述執(zhí)行模塊執(zhí)行冷啟動(dòng)。4.如權(quán)利要求2所述的終端熱啟動(dòng)裝置,其特征在于,所述裝置還包括電源模塊,所述電源模塊用于在終端進(jìn)入休眠模式后,停止對(duì)處理單元供電。5.如權(quán)利要求1所述的終端熱啟動(dòng)裝置,其特征在于,所述高速緩存模塊為SRAM。6.—種終端熱啟動(dòng)方法,其特征在于,所述方法應(yīng)用于終端熱啟動(dòng)裝置,所述裝置包括處理單元、第一存儲(chǔ)單元和第二存儲(chǔ)單元,所述處理單元包括執(zhí)行模塊、啟動(dòng)代碼存儲(chǔ)模塊和高速緩存模塊,所述執(zhí)行模塊與第一存儲(chǔ)單元連接,所述執(zhí)行模塊與第二存儲(chǔ)單元連接,所述啟動(dòng)代碼存儲(chǔ)模塊與執(zhí)行模塊連接,所述執(zhí)行模塊還與高速緩存模塊連接;所述方法包括以下步驟: 第二存儲(chǔ)單元存儲(chǔ)熱啟動(dòng)代碼,啟動(dòng)代碼存儲(chǔ)模塊存儲(chǔ)啟動(dòng)代碼; 執(zhí)行模塊接收第一指令,執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼,并從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,并將其存儲(chǔ)于高速緩存模塊; 執(zhí)行模塊執(zhí)行所述高速緩存模塊中的熱啟動(dòng)代碼,并讓第一存儲(chǔ)單元退出自刷新模式。7.如權(quán)利要求6所述的終端熱啟動(dòng)方法,其特征在于,所述執(zhí)行模塊還包括寄存器模塊,所述寄存器模塊用于存儲(chǔ)熱啟動(dòng)標(biāo)識(shí)信息,所述標(biāo)識(shí)信息包括開啟狀態(tài)和關(guān)閉狀態(tài);則所述方法包括步驟: 執(zhí)行模塊在終端進(jìn)入休眠模式時(shí),將所述寄存器模塊所存儲(chǔ)的熱啟動(dòng)標(biāo)識(shí)信息設(shè)置為開啟狀態(tài),并在終端退出所述休眠模式時(shí),將所述寄存器模塊所存儲(chǔ)的熱啟動(dòng)標(biāo)識(shí)信息設(shè)置為關(guān)閉狀態(tài)。8.如權(quán)利要求7所述的終端熱啟動(dòng)方法,其特征在于,所述步驟“執(zhí)行模塊執(zhí)行啟動(dòng)代碼存儲(chǔ)模塊中啟動(dòng)代碼”具體包括: 執(zhí)行模塊判斷寄存器模塊中的熱啟動(dòng)標(biāo)識(shí)信息是否為開啟狀態(tài),若是則執(zhí)行模塊從第二存儲(chǔ)單元中讀取所述熱啟動(dòng)代碼,將其存儲(chǔ)于高速緩存模塊并執(zhí)行;否則所述執(zhí)行模塊執(zhí)行冷啟動(dòng)。9.如權(quán)利要求7所述的終端熱啟動(dòng)方法,其特征在于,所述裝置還包括電源模塊,所述電源模塊用于在終端進(jìn)入休眠模式后,停止對(duì)處理單元供電。10.如權(quán)利要求1所述的終端熱啟動(dòng)方法,其特征在于,所述高速緩存模塊為SRAM。
【文檔編號(hào)】G06F9/445GK105843641SQ201610160302
【公開日】2016年8月10日
【申請(qǐng)日】2016年3月21日
【發(fā)明人】陳奮, 趙儀峰
【申請(qǐng)人】福州瑞芯微電子股份有限公司