專利名稱:存儲(chǔ)器備份期間的數(shù)據(jù)操作的制作方法
存儲(chǔ)器備份期間的數(shù)據(jù)操作相關(guān)申請的交叉引用本專利申請基于并且要求2010年12月20日由Peter B. Chon提交的、題為"LowPower Hardware Controlled Memory Backup that includes Encryption and SignatureGeneration"的美國臨時(shí)專利申請序號(hào)61/424,701的權(quán)益,由此對于其全部公開和教導(dǎo)的內(nèi)容,通過引用該申請而被具體地包括在此處。
背景技術(shù):
計(jì)算機(jī)或者其他電子系統(tǒng)的所有或者大部分組件可以被集成到單個(gè)集成電路(芯片)中。芯片可以包含數(shù)字、模擬、混合信號(hào)和射頻功能的各種組合。這些集成電路可以被稱為芯片上系統(tǒng)(SoC或者S0C)。典型的應(yīng)用是嵌入式系統(tǒng)的領(lǐng)域。芯片上系統(tǒng)的一 種變型是單個(gè)芯片上的多個(gè)RAID功能的集成。其可以被稱為芯片上RAID(ROC)??梢砸蕴峁┤哂嗪湾e(cuò)誤恢復(fù)而沒有任何數(shù)據(jù)損失的方式配置RAID陣列。RAID陣列還可以被配置為通過允許向多個(gè)盤驅(qū)動(dòng)器同時(shí)讀取或者寫入數(shù)據(jù)來增加讀取和寫入性能。RAID陣列還可以被配置為允許"熱交換",其允許在不中斷陣列的存儲(chǔ)服務(wù)的情況下替換故障的盤。來自Berkeley的California大學(xué)的David A. Patterson等人1987號(hào)公開、題為"A Case for Redundant Arrays of Inexpensive Disks (RAID)"討論了 RAID技術(shù)的基本概念和標(biāo)準(zhǔn)。RAID存儲(chǔ)系統(tǒng)通常利用控制器對用戶或者主機(jī)系統(tǒng)屏蔽管理存儲(chǔ)陣列的細(xì)節(jié)??刂破魇沟么鎯?chǔ)陣列表現(xiàn)為一個(gè)或更多個(gè)盤驅(qū)動(dòng)器(或者卷)。這是已實(shí)現(xiàn)的,盡管對于特定卷的數(shù)據(jù)(或者冗余數(shù)據(jù))可能跨越多個(gè)盤驅(qū)動(dòng)器。
發(fā)明內(nèi)容
本發(fā)明的一個(gè)實(shí)施例因此可以包括一種在易失性存儲(chǔ)器和非易失性存儲(chǔ)器之間傳送數(shù)據(jù)的方法,包括接收具有存儲(chǔ)器地址字段的指令數(shù)據(jù)塊,所述存儲(chǔ)器地址字段具有表明所述易失性存儲(chǔ)器中的位置的多個(gè)第一位和表明數(shù)據(jù)操作的多個(gè)第二位;基于所表明的數(shù)據(jù)操作,選擇用于將被發(fā)送給所述非易失性存儲(chǔ)器的數(shù)據(jù)的源;將數(shù)據(jù)從所述易失性存儲(chǔ)器傳送到所述源;從所述源接收操作的數(shù)據(jù);以及將所述操作的數(shù)據(jù)傳送到所述非易失性存儲(chǔ)器。本發(fā)明的一個(gè)實(shí)施例因此可以進(jìn)一步包括一種在非易失性存儲(chǔ)器和易失性存儲(chǔ)器之間傳送數(shù)據(jù)的方法,包括接收具有存儲(chǔ)器地址字段的指令數(shù)據(jù)塊,所述存儲(chǔ)器地址字段具有表明所述易失性存儲(chǔ)器中的位置的多個(gè)第一位和表明數(shù)據(jù)操作的多個(gè)第二位;基于所表明的數(shù)據(jù)操作,選擇用于將被發(fā)送給所述易失性存儲(chǔ)器的數(shù)據(jù)的源;將數(shù)據(jù)從所述非易失性存儲(chǔ)器傳送到所述源;從所述源接收操作的數(shù)據(jù);以及將所述操作的數(shù)據(jù)傳送到所述易失性存儲(chǔ)器。本發(fā)明的一個(gè)實(shí)施例因此可以進(jìn)一步包括一種集成電路,包括數(shù)據(jù)操作控制器,接收存儲(chǔ)器地址字段,所述存儲(chǔ)器地址字段具有表明易失性存儲(chǔ)器中的位置的多個(gè)第一位和表明數(shù)據(jù)操作的多個(gè)第二位,基于所表明的數(shù)據(jù)操作,所述數(shù)據(jù)操作控制器選擇用于將被發(fā)送給非易失性存儲(chǔ)器的數(shù)據(jù)的源;易失性存儲(chǔ)器控制器,耦合到易失性存儲(chǔ)器,所述易失性存儲(chǔ)器控制器促使數(shù)據(jù)從所述易失性存儲(chǔ)器傳送到所述源;非易失性存儲(chǔ)器,耦合到所述非易失性存儲(chǔ)器,所述非易失性存儲(chǔ)器控制器從所述源接收操作的數(shù)據(jù)并且將所述操作的數(shù)據(jù)傳送到所述非易失性存儲(chǔ)器。本發(fā)明的一個(gè)實(shí)施例因此可以進(jìn)ー步包括ー種集成電路,包括數(shù)據(jù)操作控制器,接收存儲(chǔ)器地址字段,所述存儲(chǔ)器地址字段具有表明易失性存儲(chǔ)器中的位置的多個(gè)第一位和表明數(shù)據(jù)操作的多個(gè)第二位,基于所表明的數(shù)據(jù)操作,所述數(shù)據(jù)操作控制器選擇用于將被發(fā)送給所述易失性存儲(chǔ)器的數(shù)據(jù)的源;非易失性存儲(chǔ)器控制器,耦合到非易失性存儲(chǔ)器,所述非易失性存儲(chǔ)器控制器促進(jìn)數(shù)據(jù)從所述非易失性存儲(chǔ)器傳送到所述源;易失性存儲(chǔ)器控制器,耦合到所述易失性存儲(chǔ)器,所述易失性存儲(chǔ)器控制器從所述源接收操作的數(shù)據(jù)并且將所述操作的數(shù)據(jù)傳送到所述易失性存儲(chǔ)器。
圖I示出了電源隔離和備份系統(tǒng)的框圖。·圖2示出了電源隔離的方法的流程圖。圖3A和3B示出了數(shù)據(jù)操作系統(tǒng)配置的框圖。圖4示出了指令數(shù)據(jù)塊(⑶B)的圖示。圖5示出了電源隔離和備份系統(tǒng)的框圖。圖6示出了計(jì)算機(jī)系統(tǒng)的框圖。
具體實(shí)施例方式圖I示出了電源隔離和備份系統(tǒng)的框圖。在圖I中,隔離和備份系統(tǒng)100包括集成電路110、電源控制部分150、SDRAM 125和非易失性存儲(chǔ)器(例如閃存)135。集成電路(IC) 110包括SDRAM子系統(tǒng)115、控制部分140、時(shí)鐘發(fā)生器141及其他電路111。SDRAM子系統(tǒng)115包括SDRAM控制器120和非易失性存儲(chǔ)器控制器130。其他電路112可以包括臨時(shí)存儲(chǔ)器112 (例如,高速緩沖存儲(chǔ)器、緩存器等等)。SDRAM控制器120通過接ロ 121與SDRAM 125接ロ并控制SDRAM 125。非易失性存儲(chǔ)器控制器130通過接ロ 131與非易失性存儲(chǔ)器135接ロ并且控制非易失性存儲(chǔ)器135。SDRAM子系統(tǒng)115 (以及由此SDRAM控制器120和非易失性存儲(chǔ)器控制器130)操作地耦合到控制部分140、時(shí)鐘發(fā)生器141、其他電路111和臨時(shí)存儲(chǔ)器112。時(shí)鐘發(fā)生器141操作地耦合到控制部分140及其他電路111。電源控制部分150向IC 110提供電源A(PWRA) 160。電源控制部分150向SDRAM子系統(tǒng)115提供電源B(PWRB) 161。電源控制部分150向SDRAM 125提供電源C(PWRC) 162。電源控制部分150向非易失性存儲(chǔ)器135提供電源D (PWRD) 163。電源控制部分150向控制部分140提供電源故障信號(hào)165。電源控制部分150還通過信號(hào)166操作地耦合到SDRAM子系統(tǒng)。應(yīng)當(dāng)理解,如在本申請中使用的,SDRAM(同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器)意圖包括所有的易失性存儲(chǔ)器技術(shù)。由此,在一個(gè)實(shí)施例中,SDRAM子系統(tǒng)115可以包括靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)控制器,以及SDRAM 125可以包括SRAM裝置。
在一個(gè)實(shí)施例中,當(dāng)電源控制部分150檢測到電源故障狀況(或者就要發(fā)生電源故障或者存在電源故障),電源控制部分150通過電源故障信號(hào)165通知IC 110該狀況。這將啟動(dòng)電源隔離流程以將SDRAM子系統(tǒng)115從IC 110的其余部分——特別是其他電路111隔離。在一個(gè)實(shí)施例中,全部電源隔離流程由硬件(例如,控制部分140、SDRAM子系統(tǒng)115或者二者)控制,而沒有來自軟件的交互。在收到電源故障狀況的通知時(shí),連接到SDRAM子系統(tǒng)115的所有接口(例如對于其他電路111的接口)將被停止。將清空芯片上的臨時(shí)存儲(chǔ)器112。應(yīng)當(dāng)理解,盡管在圖I中臨時(shí)存儲(chǔ)器112被示出在SDRAM子系統(tǒng)115之外,然而臨時(shí)存儲(chǔ)器112可以是SDRAM子系統(tǒng)115的一部分。在一個(gè)實(shí)例中,臨時(shí)存儲(chǔ)器112可以是高速緩存(例如第一級(jí)高速緩存、第二級(jí)高速緩存、第三級(jí)高速緩存)、置入緩存器(posting buffer)等等。一旦已經(jīng)清空了臨時(shí)存儲(chǔ)器112,則連接到SDRAM子系統(tǒng)115的邏輯表明何時(shí)已經(jīng)停止了用于清空的接口。一旦停止,則這些接口不接受任何新的周期。一旦所有接口都被停止,則外部設(shè)備和內(nèi)部核心邏輯(即,其他電路111)所需的輸入被鎖存,由此使得它們的狀態(tài)在發(fā)生隔離時(shí)不會(huì)丟失。在鎖存了輸入之后不需要的時(shí)鐘被斷開。SDRAM子系統(tǒng)將切 換到內(nèi)部產(chǎn)生的時(shí)鐘,或者切換到由與SDRAM子系統(tǒng)115共享電源的時(shí)鐘發(fā)生器(例如,時(shí)鐘發(fā)生器141)產(chǎn)生的時(shí)鐘。此后,對于存儲(chǔ)器備份來說不需要的SDRAM子系統(tǒng)115的輸入被隔離。在一個(gè)實(shí)施例中,這些輸入被驅(qū)動(dòng)至非活動(dòng)狀態(tài)。在完成輸入的隔離之后,SDRAM子系統(tǒng)115(或者控制部分140)發(fā)送信號(hào)通知(例如,利用信號(hào)166)電源控制部分150以斷開PWRA 160。這導(dǎo)致斷開對于除了 SDRAM子系統(tǒng)115之外的ICllO的所有(部件)的電源。SDRAM子系統(tǒng)115處于與至少其他電路111分離的電源層上。這允許保持對SDRAM子系統(tǒng)的電源(即,通過PWRB 161)直到對隔離和備份系統(tǒng)100的電源完全失去。在對除了 SDRAM子系統(tǒng)115 (以及SDRAM子系統(tǒng)115需要的任何其他邏輯)之外的所有部分的電源的隔離和斷開進(jìn)行控制之外,一旦已經(jīng)停止接口以及清空了臨時(shí)存儲(chǔ)器112,內(nèi)部存儲(chǔ)器備份邏輯開始將數(shù)據(jù)從SDRAM 125移動(dòng)到非易失性存儲(chǔ)器135。在一個(gè)實(shí)施例中,一旦已經(jīng)斷開了 PWRA,僅僅存在在整個(gè)芯片上運(yùn)行的幾個(gè)周期。圖I示出了 IC 110芯片和外部邏輯之間的連接以及可以用于電源隔離和隨后存儲(chǔ)器備份的一些內(nèi)部連接。當(dāng)電源控制部分150檢測到電源故障,其通過電源故障信號(hào)165通知IC 110??刂撇糠?40監(jiān)測電源故障信號(hào)165。當(dāng)控制部分140發(fā)現(xiàn)電源故障信號(hào)165被斷言,以及能夠完成電源隔離時(shí),控制部分140通過斷言power_iso_begin信號(hào)(在圖I中沒有明確示出)來通知子SDRAM子系統(tǒng)115開始隔離流程。SDRAM子系統(tǒng)115隨后執(zhí)行電源隔離流程所需的步驟。稍后將在本說明書中更詳細(xì)地闡述包括在電源隔離流程中的步驟。一旦已經(jīng)完成了電源隔離流程,MSS_core_iso_ready信號(hào)(在圖I中未明確示出)被斷言以表明至少可以斷開PWRA 160。電源控制部分150禁止PWRA 160,但是將保持PffRB 161、PWRC 162、和PWRD 163被使能。禁止PWRA 160將電源從IC 110的除了連接到PWRB 161的電路之外的部分?jǐn)嚅_。SDRAM子系統(tǒng)115以及相關(guān)的鎖相環(huán)(例如,時(shí)鐘發(fā)生器141內(nèi)部的)和10(例如接口 121和131)處于與IC 110的其余部分不同的電源層上。該層由PWRB161供電,并且將保持使能。在一個(gè)實(shí)例中,至少一部分電路位于該分離的電源層上的功能塊是控制部分140、時(shí)鐘發(fā)生器141和SDRAM子系統(tǒng)115。在一個(gè)實(shí)施例中,夕卜部SDRAM 125保持由PWRC 162供電,以及外部非易失性存儲(chǔ)器保持由PWRD 163供電。這是必須保持被供電以便執(zhí)行存儲(chǔ)器備份的邏輯的減小數(shù)量。在電源隔離流程期間,SDRAM子系統(tǒng)115在適當(dāng)?shù)臅r(shí)間開始SDRAM 125的存儲(chǔ)器備份。該備份將需要(或者請求)的數(shù)據(jù)從SDRAM 125移動(dòng)到非易失性存儲(chǔ)器135。在一個(gè)實(shí)施例中,在沒有軟件介入的情況下執(zhí)行全部存儲(chǔ)器備份。應(yīng)當(dāng)理解,用于提供電源160-163的上述和部分地通過圖I示出的方法是向隔離和備份系統(tǒng)100的一個(gè)或更多個(gè)組件提供(和斷開)電源的示例性方法。在所示的實(shí)例中,所有電源160-163和各種電源域/層的控制在IC 110外部完成。然而,存在向隔離和備份系統(tǒng)100的一個(gè)或更多個(gè)組件提供(和斷開)電源的其他方法。ー種方法可以為每個(gè)電壓使用ー個(gè)外部電源,井隨后利用IC 110內(nèi)部的開關(guān)形成不同的電源域/層。另ー種方法可以減小外部電壓的數(shù)目,并且使用隔離和備份系統(tǒng)100 (例如,IC 110)的一個(gè)或更多 個(gè)組件內(nèi)部的調(diào)節(jié)器以得到各種電壓,以及使用IC 110內(nèi)部的開關(guān)以控制不同的電源域/層。利用這些方法,以大致相同的方式完成了電源隔離。差異在于,需要通知以保持電源161-163使能的電源控制邏輯150可以位于內(nèi)部或者外部。圖2示出了電源隔離的方法的流程圖。圖2中示出的各步驟可以由隔離和備份系統(tǒng)100的ー個(gè)或更多個(gè)部件執(zhí)行。為第一芯片上子系統(tǒng)接收電源(202)。例如,可以由IC100接收為其他電路111供電的PWRA 160。接收電源故障狀況的指示符(204)。例如,可以由IC 110接收電源故障信號(hào)165。這可以導(dǎo)致在power_iso_begin信號(hào)被斷言時(shí)開始電源隔離流程。停止對SDRAM子系統(tǒng)的接ロ(206)。臨時(shí)存儲(chǔ)被清空到SDRAM(208)。例如,可以清空第三級(jí)高速緩存、第二級(jí)高速緩存、置入緩存器或者用于臨時(shí)存儲(chǔ)去柱/來自SDRAM 125的數(shù)據(jù)拷貝的任何其他類型的存儲(chǔ)裝置。連接到各個(gè)接ロ的邏輯在它們已經(jīng)完成所有未完成的周期并且已經(jīng)停止接受任何新的周期時(shí)可以返回停止指示。在硬件控制下,芯片上SDRAM子系統(tǒng)被隔離(210)。例如,當(dāng)SDRAM接ロ(或者臨時(shí)存儲(chǔ)器112)已經(jīng)表明它已經(jīng)停止接受周期,則通過將其設(shè)置為非活動(dòng)狀態(tài)而隔離它的輸入。一旦接收到來自其他接ロ的停止,需要為外部核心裝置和內(nèi)部邏輯保存的輸入被鎖存。這些輸入包括諸如復(fù)位、用于PLL的信號(hào)和母線輸入等。此時(shí),可以斷開SDRAM子系統(tǒng)不再需要的任何時(shí)鐘,以便幫助減小功耗。一段時(shí)間之后,可以斷言信號(hào)(例如,MSS_C0re_iso_enable),這表明隔尚SDRAM子系統(tǒng)的所有輸入并且將其設(shè)置為非活動(dòng)狀態(tài)。第一芯片上子系統(tǒng)使用的時(shí)鐘和電源被斷開(212)。例如,去往臨時(shí)存儲(chǔ)器112的時(shí)鐘可以被切換到內(nèi)部產(chǎn)生的時(shí)鐘。一旦已經(jīng)隔離了輸入,可以斷言例如MSS_COre_iSO_ready的信號(hào)。這例如向電源控制邏輯150表明,現(xiàn)在可以禁止連接到IC 110的PWRA 160。產(chǎn)生SDRAM子系統(tǒng)使用的時(shí)鐘(214)。例如,時(shí)鐘發(fā)生器141可以產(chǎn)生SDRAM子系統(tǒng)使用的時(shí)鐘以在斷開PWRA 160時(shí)使用。數(shù)據(jù)從SDRAM被拷貝到非易失性存儲(chǔ)器(216)。例如,可以通過斷言例如flash_0ffl0ad_begin的信號(hào)來啟動(dòng)從SDRAM 125到非易失性存儲(chǔ)器135的存儲(chǔ)器備份。從SDRAM子系統(tǒng)、SDRAM和非易失性存儲(chǔ)器斷開電源(218)。例如,在完成存儲(chǔ)器備份時(shí)在電源控制部分150的控制下,或者僅僅由于整個(gè)隔離和備份系統(tǒng)100的電源已經(jīng)故障,從SDRAM子系統(tǒng)115、SDRAM 125和非易失性存儲(chǔ)器135斷開電源。
在備份期間隔離SDRAM子系統(tǒng)115的電源的優(yōu)點(diǎn)是減小了消耗的功率量。僅僅對處理存儲(chǔ)器備份的IC 110的內(nèi)部邏輯、外部SDRAM 125和非易失性存儲(chǔ)器135供電。通過降低功耗,在消耗完所有剩余的功率之前,可用于執(zhí)行存儲(chǔ)器備份的時(shí)間量增加了。除了更少的在完成備份之前保持電源所需的外部邏輯之外,擁有更多時(shí)間使得可以備份更多的存儲(chǔ)器。由于正在進(jìn)行電源隔離,可能有利的是將閃存控制器移動(dòng)至內(nèi)部以降低功耗和減少進(jìn)行存儲(chǔ)器備份所需的總體系統(tǒng)成本。在一個(gè)實(shí)施例中,隨著SDRAM 125中的數(shù)據(jù)被移到非易失性存儲(chǔ)器135,通過執(zhí)行加密和/或數(shù)據(jù)完整性簽名計(jì)算為備份的數(shù)據(jù)提供額外的數(shù)據(jù)保護(hù)。數(shù)據(jù)加密提供了安全存儲(chǔ)數(shù)據(jù)的方法。數(shù)據(jù)完整性簽名計(jì)算防止了絕大部分可能發(fā)生的數(shù)據(jù)錯(cuò)誤。在需要存儲(chǔ)器備份或者恢復(fù)時(shí),SDRAM子系統(tǒng)115在SDRAM125和非易失性存儲(chǔ)器135之間移動(dòng)數(shù)據(jù)。SDRAM子系統(tǒng)115可以使用一系列CDB (指令描述符塊)用于表明請求 的數(shù)據(jù)移動(dòng)。這些⑶B的格式通常是預(yù)先定義的。⑶B中的一個(gè)字段是存儲(chǔ)器地址字段,其表明在SDRAM 125中讀取或者寫入數(shù)據(jù)的位置。在一個(gè)實(shí)施例中,在該字段中提供的地址位的數(shù)目超過了尋址所有SDRAM 125所需的數(shù)目。一些不需要的地址位可以被用于對如下信息進(jìn)行編碼,所述信息是關(guān)于在數(shù)據(jù)被移動(dòng)至SDRAM 125/從SDRAM 125移動(dòng)數(shù)據(jù)的同時(shí)應(yīng)當(dāng)如何操作數(shù)據(jù)的信息。在執(zhí)行存儲(chǔ)器備份或者恢復(fù)時(shí)或者在其他時(shí)候可以進(jìn)行該移動(dòng)。未使用的地址位的編碼可以表明數(shù)據(jù)是否應(yīng)當(dāng)被加密/解密、是否需要生成簽名、是否應(yīng)當(dāng)卸載或者重置簽名以及應(yīng)當(dāng)使用哪一個(gè)簽名引擎。當(dāng)接收到來自非易失性存儲(chǔ)器控制器130的請求對SDRAM 125進(jìn)行讀/寫時(shí),隨著數(shù)據(jù)通過SDRAM子系統(tǒng)115在SDRAM 125和非易失性存儲(chǔ)器135之間移動(dòng),可以解析上述未使用的地址位以確定執(zhí)行什么樣的數(shù)據(jù)操作。在一個(gè)實(shí)施例中,圖3A和3B示出了數(shù)據(jù)操作系統(tǒng)配置的框圖。在圖3A中,數(shù)據(jù)操作系統(tǒng)300包括=SDRAM控制器310、閃存控制器320、控制部分330、簽名引擎340、加密/解密引擎350和多路復(fù)用器(MUX) 360。控制部分330操作地耦合到SDRAM控制器310、閃存控制器320、簽名引擎340和加密/解密引擎350和MUX 360。由此,控制部分330可以從閃存控制器320接收指令、信號(hào)、CDB等,執(zhí)行判優(yōu),以及另行管理數(shù)據(jù)操作系統(tǒng)300的配置和數(shù)據(jù)流。在圖3A中,通過耦合371,SDRAM 310被配置為將從SDRAM(在圖3A中未示出)讀取的數(shù)據(jù)發(fā)送至簽名引擎340、加密/解密引擎350和MUX 360的第一輸入。加密/解密引擎350被配置為通過耦合372將加密的數(shù)據(jù)發(fā)送至MUX 360的第二輸入。簽名引擎340被配置為通過耦合373將數(shù)據(jù)完整性簽名發(fā)送至MUX 360的第三輸入??刂撇糠?30控制MUX以將從SDRAM讀取的未改變的數(shù)據(jù)、加密的數(shù)據(jù)或者數(shù)據(jù)完整性簽名中的一個(gè)發(fā)送至閃存控制器320。閃存控制器320可以將從SDRAM讀取的未改變的數(shù)據(jù)、加密的數(shù)據(jù)或者數(shù)據(jù)完整性簽名存儲(chǔ)在閃存中(在圖3A中未不出)。圖3A示出了當(dāng)控制部分330從閃存控制器320接收到從SDRAM(例如,SDRAM 125)讀取的請求時(shí)的控制和數(shù)據(jù)流的配置。在一個(gè)實(shí)施例中,當(dāng)需要SDRAM存儲(chǔ)器的備份時(shí)使用該配置和數(shù)據(jù)流。在一個(gè)實(shí)施例中,簽名引擎340和加密/解密引擎350被用于讀取和寫入請求二者。圖3A中示出了用于閃存寫入請求(對應(yīng)于SDRAM讀取)的數(shù)據(jù)連接和數(shù)據(jù)流。圖3B中示出了用于閃存讀取請求(對應(yīng)于SDRAM寫入)的數(shù)據(jù)連接。
閃存控制器320發(fā)送讀取請求至控制部分330??刂撇糠?30檢查所述請求的編碼地址線(或者專用字段)以確定從何處路由從SDRAM控制器310返回的讀取數(shù)據(jù)以及需要什么樣的數(shù)據(jù)操作(如果有的話)。在一個(gè)實(shí)施例中,地址位[46:40]包含如下的編碼和映射位40-42 (SES
)指定了 8個(gè)簽名引擎340中的哪些應(yīng)該采取由編碼的其他位指定的動(dòng)作(如果有的話);位43(SG)確定所指定的簽名引擎是否應(yīng)該利用讀取數(shù)據(jù)作為輸入產(chǎn)生數(shù)據(jù)完整性簽名;位44(S0)告知指定的簽名引擎以輸出數(shù)據(jù)完整性簽名(這取決于MUX 360的狀態(tài),其可以被發(fā)送給閃存控制器320用于存儲(chǔ));位45(SR)重置指定的簽名引擎的數(shù)據(jù)完整性簽名;以及位46(E/D)確定來自加密/解密引擎350的輸出的加密數(shù)據(jù)是否應(yīng)當(dāng)被發(fā)送給閃存控制器320。 圖4示出了指令數(shù)據(jù)塊(CDB)的圖示。在圖4中,示出了用于地址位0-46的地址字段。還示出了指定使用的SDRAM地址位的SDRAM地址位中的字段(A
),以及編碼地 址位的字段(A[40:46])。還示出了編碼地址位的各個(gè)位字段(SES
、SG、S0、SR和E/D)??梢岳斫?,基于地址位40-46的編碼,指示將被發(fā)送給MUX360,導(dǎo)致閃存控制器320使用三個(gè)不同源中的ー個(gè)。數(shù)據(jù)將直接來自SDRAM控制器310、加密/解密引擎350,或者是否從其中ー個(gè)簽名引擎340卸載簽名。如果編碼表明執(zhí)行加密,則控制部分330將控制加密/解密引擎350以從SDRAM控制器310接收讀取數(shù)據(jù)。一旦加密/解密引擎350從SDRAM控制器310收到數(shù)據(jù),則其執(zhí)行數(shù)據(jù)加密,發(fā)送結(jié)果至MUX 360用于路由至閃存控制器320并且等待它接受該數(shù)據(jù)。編碼還表明是否應(yīng)當(dāng)對正在被轉(zhuǎn)移到閃存的數(shù)據(jù)進(jìn)行簽名生成。如編碼的簽名引擎選擇(SES
)字段表明的,八個(gè)簽名引擎340中的ー個(gè)將通知應(yīng)當(dāng)更新它的CRC/校驗(yàn)和簽名值。與正在被直接發(fā)送至閃存控制器320或者加密/解密引擎350的數(shù)據(jù)并行地,數(shù)據(jù)還被至少發(fā)送給指定的簽名引擎340。一旦所選擇的簽名引擎340發(fā)現(xiàn)那些塊中的任何ー個(gè)接受了 SDRAM數(shù)據(jù),則利用該數(shù)據(jù)更新當(dāng)前的CRC/校驗(yàn)和簽名。最后,編碼表明是否應(yīng)當(dāng)輸出簽名卸載。如果需要簽名卸載,控制部分330將不會(huì)發(fā)布讀取命令至SDRAM控制器310。作為替代,控制部分330將命令所選擇的簽名引擎340發(fā)送數(shù)據(jù)完整性簽名數(shù)據(jù)至閃存控制器320。在圖3B中,通過耦合381,控制器320被配置為將從閃存(在圖3B中未示出)讀取的數(shù)據(jù)發(fā)送至簽名引擎340、加密/解密引擎350和MUX 361的第一輸入。加密/解密引擎350被配置為通過耦合382將加密的數(shù)據(jù)發(fā)送至MUX 361的第二輸入。簽名引擎340被配置為通過耦合383表明選擇的數(shù)據(jù)完整性簽名的當(dāng)前值??刂撇糠?30控制MUX 361以將從閃存(通過閃存控制器320)讀取的未改變的數(shù)據(jù)或者解密的數(shù)據(jù)中的一個(gè)發(fā)送至SDRAM控制器310。SDRAM控制器310可以將從閃存讀取的未改變的數(shù)據(jù)或者解密的數(shù)據(jù)存儲(chǔ)在SDRAM(在圖3B中未示出)中。圖3B中示出了用于閃存讀取請求(對應(yīng)于SDRAM寫入)的數(shù)據(jù)連接。在ー個(gè)實(shí)施例中,當(dāng)需要將數(shù)據(jù)恢復(fù)回到SDRAM存儲(chǔ)器時(shí)使用該流??刂撇糠?30可以從閃存控制器320接收寫指令??刂撇糠?30可以發(fā)布寫入請求至SDRAM控制器310。檢查請求的編碼地址線以確定從何處路由正在(從閃存控制器320)發(fā)送給SDRAM控制器的寫入數(shù)據(jù)以及需要什么樣的數(shù)據(jù)操作(如果有的話)。可以使用與圖3A的討論中的描述相同的編碼?;谠摼幋a,來自閃存控制器320的未改變的數(shù)據(jù)或者來自加密/解密引擎350的解密的數(shù)據(jù)將由MUX 361選擇發(fā)送給SDRAM控制器310。如果編碼表明執(zhí)行解密,則加密/解密引擎350將被控制為從閃存控制器320接受數(shù)據(jù)。一旦加密/解密引擎350從閃存控制器320接受數(shù)據(jù),其執(zhí)行數(shù)據(jù)解密,發(fā)送結(jié)果至SDRAM控制器310并且等待SDRAM控制器310接受該數(shù)據(jù)。編碼還將表明是否需要為了正在被轉(zhuǎn)移到SDRAM的數(shù)據(jù)進(jìn)行簽名生成。如編碼的SES
字段表明的,八個(gè)簽名引擎340中的一個(gè)被控制為更新它的CRC/校驗(yàn)和簽名值。簽名生成總是對于解密數(shù)據(jù)進(jìn)行的。因此簽名引擎340被控制為在來自閃存控制器320的數(shù)據(jù)或者來自加密/解密引擎350的解密結(jié)果之間進(jìn)行選擇,以更新數(shù)據(jù)完整性簽名值。與正在從閃存控制器或者加密/解密引擎350被發(fā)送給SDRAM控制器310的數(shù)據(jù)并行的,數(shù)據(jù)還將被發(fā)送給選擇的簽名引擎340。一旦所選擇的簽名引擎340發(fā)現(xiàn)SDRAM控制器310接受了數(shù)據(jù),則利用該數(shù)據(jù)更新當(dāng)前的CRC/校驗(yàn)和簽名。最后,可以通過耦合383由軟件選擇和讀取八個(gè)數(shù)據(jù)完整性簽名中的一個(gè)的當(dāng)前值。該值可以通過軟件與從閃存恢復(fù)到SDRAM的備份簽名比較??梢赃M(jìn)行該步驟以檢驗(yàn)在備份或者恢復(fù)數(shù)據(jù)的同時(shí)是否沒有發(fā)生 數(shù)據(jù)錯(cuò)誤。圖5示出了電源隔離和備份系統(tǒng)的框圖。在圖5中,隔離和備份系統(tǒng)500包括集成電路510、電源控制部分550、SDRAM 525和非易失性存儲(chǔ)器(例如閃存)535。集成電路(IC) 510包括SDRAM子系統(tǒng)515、控制部分540、時(shí)鐘發(fā)生器541及其他電路511。SDRAM子系統(tǒng)515包括SDRAM控制器520、非易失性存儲(chǔ)器控制器530和數(shù)據(jù)操作部分570。其他電路512可以包括臨時(shí)存儲(chǔ)器512 (例如,高速緩沖存儲(chǔ)器、緩存器等等)。SDRAM控制器520通過接口 521與SDRAM 525接口并且控制SDRAM 525。非易失性存儲(chǔ)器控制器530通過接口 531與非易失性存儲(chǔ)器535接口并且控制非易失性存儲(chǔ)器535。SDRAM子系統(tǒng)515 (并且由此SDRAM控制器520、非易失性存儲(chǔ)器控制器530和數(shù)據(jù)操作部分570)操作地耦合到控制部分540、時(shí)鐘發(fā)生器541、其他電路511和臨時(shí)存儲(chǔ)器512。時(shí)鐘發(fā)生器541操作地耦合到控制部分540及其他電路511。電源控制部分550向IC 510提供電源A (PWRA) 560。電源控制部分550向SDRAM子系統(tǒng)515提供電源B (PWRB) 561。電源控制部分550向SDRAM 525提供電源C(PWRC) 562。電源控制部分550向非易失性存儲(chǔ)器535提供電源D (PWRD) 563。電源控制部分550向控制部分540提供電源故障信號(hào)565。電源控制部分550還通過信號(hào)566操作地耦合到SDRAM子系統(tǒng)。在一個(gè)實(shí)施例中,當(dāng)電源控制部分550檢測到電源故障狀況(或者就要發(fā)生電源故障或者存在電源故障),電源控制部分550通過電源故障信號(hào)565通知IC 510該狀況。這將啟動(dòng)電源隔離流程以將SDRAM子系統(tǒng)515從IC 510的其余部分——特別是其他電路511隔離。在一個(gè)實(shí)施例中,整個(gè)電源隔離流程由硬件(例如,控制部分540、SDRAM子系統(tǒng)515或者二者)控制,而沒有來自軟件的交互。在收到電源故障狀況的通知時(shí),連接到SDRAM子系統(tǒng)515的所有接口(例如對于其他電路511的接口)將被停止。將清空芯片上的臨時(shí)存儲(chǔ)器512。應(yīng)當(dāng)理解,盡管在圖5中臨時(shí)存儲(chǔ)器512被示出在SDRAM子系統(tǒng)515之外,然而臨時(shí)存儲(chǔ)器512可以是SDRAM子系統(tǒng)515的一部分。在一個(gè)實(shí)例中,臨時(shí)存儲(chǔ)器512可以是高速緩存(例如第一級(jí)高速緩存、第二級(jí)高速緩存、第三級(jí)高速緩存)、置入緩存器等等。
一旦已經(jīng)清空了臨時(shí)存儲(chǔ)器512,則連接到SDRAM子系統(tǒng)515的邏輯表明何時(shí)已經(jīng)停止了用于清空的接ロ。一旦停止,則這些接ロ不接受任何新的周期。一旦所有接ロ都被停止,則外部設(shè)備和內(nèi)部核心邏輯(即,其他電路511)所需的輸入被鎖存,以使得它們的狀態(tài)在發(fā)生隔離時(shí)不會(huì)丟失。在鎖存輸入之后不需要的時(shí)鐘被斷開。SDRAM子系統(tǒng)將切換到內(nèi)部產(chǎn)生的時(shí)鐘,或者切換到由與SDRAM子系統(tǒng)515共享電源的時(shí)鐘發(fā)生器(例如,時(shí)鐘發(fā)生器541)產(chǎn)生的時(shí)鐘。此后,隔離SDRAM子系統(tǒng)515的對于存儲(chǔ)器備份來說不需要的輸入。在一個(gè)實(shí)施例中,這些輸入被驅(qū)動(dòng)至非活動(dòng)狀態(tài)。在完成輸入隔離之后,SDRAM子系統(tǒng)515 (或者控制部分540)發(fā)送信號(hào)通知(例如利用信號(hào)566)電源控制部分550以斷開PWRA 560。這導(dǎo)致關(guān)閉至IC 510的除了 SDRAM子系統(tǒng)515之外的所有(部件)的電源。SDRAM子系統(tǒng)515處于 與至少其他電路511分離的電源層上。這允許保持至SDRAM子系統(tǒng)的電源(即,通過PWRB 561)直至至隔離和備份系統(tǒng)500的電源完全失去。除了控制至除了 SDRAM子系統(tǒng)515 (以及SDRAM子系統(tǒng)515需要的任何其他邏輯)之外的所有部件的電源的隔離和斷開之外,一旦已經(jīng)停止接ロ以及清空臨時(shí)存儲(chǔ)器512,內(nèi)部存儲(chǔ)器備份邏輯開始將數(shù)據(jù)從SDRAM 525移動(dòng)到非易失性存儲(chǔ)器535。在一個(gè)實(shí)施例中,一旦已經(jīng)斷開了 PWRA,僅僅存在在整個(gè)芯片上運(yùn)行的幾個(gè)周期。在一個(gè)實(shí)施例中,在數(shù)據(jù)分別在SDRAM 525和非易失性存儲(chǔ)器535之間來往移動(dòng)時(shí),數(shù)據(jù)操作部分570可以對數(shù)據(jù)進(jìn)行操作。數(shù)據(jù)操作部分570被配置為以與先前參考圖3A和3B的數(shù)據(jù)操作系統(tǒng)300所描述的相同方式的操作和發(fā)揮作用。因此,簡而言之,數(shù)據(jù)操作部分570可以被配置為加密/解密數(shù)據(jù)和/或計(jì)算/校驗(yàn)數(shù)據(jù)完整性簽名。在ー個(gè)實(shí)施例中,在斷開PWRA 560的同時(shí),可以實(shí)現(xiàn)數(shù)據(jù)操作部分570的功能、數(shù)據(jù)流和配置(例如保存加密數(shù)據(jù)和/或計(jì)算和存儲(chǔ)數(shù)據(jù)完整性簽名)。在另ー實(shí)施例中,在PWRA 560處于連接的同時(shí),可以實(shí)現(xiàn)數(shù)據(jù)操作部分570的功能、數(shù)據(jù)流和配置(例如恢復(fù)加密數(shù)據(jù)和/或計(jì)算和存儲(chǔ)數(shù)據(jù)完整性簽名)??梢栽谟?jì)算機(jī)系統(tǒng)中實(shí)現(xiàn)上述的方法、系統(tǒng)和裝置,或者可以被計(jì)算機(jī)系統(tǒng)存儲(chǔ)。上述方法還可以被存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上。可以利用在現(xiàn)有技術(shù)中可用的計(jì)算機(jī)輔助設(shè)計(jì)工具實(shí)現(xiàn)此處描述的裝置、電路和系統(tǒng),并且通過包含上述電路的軟件描述的計(jì)算機(jī)可讀文件來實(shí)現(xiàn)它們。其包括但不限于隔離和備份系統(tǒng)100和500、IC 110和510、電源控制部分150和550、SDRAM子系統(tǒng)115和515以及它們的組件。這些軟件描述可以是行為的、寄存器傳送、邏輯元件、晶體管和布局幾何形狀層次的描述。此外,軟件描述可以被存儲(chǔ)在存儲(chǔ)介質(zhì)上或者通過載波傳送??梢詫?shí)現(xiàn)上述描述的數(shù)據(jù)格式包括但不限于支持行為語言例如C的格式、支持寄存器傳送級(jí)(RTL)語言例如Verilog和VHDL的格式、支持幾何形狀描述語言(例如⑶SII、⑶SIII、⑶SIV、CIF和MEBES)的格式,及其他適當(dāng)?shù)母袷胶驼Z言。此外,可以在因特網(wǎng)或者例如通過電子郵件在各種介質(zhì)上電子地完成機(jī)器可讀介質(zhì)上的上述文件的數(shù)據(jù)傳送。注意,可以在機(jī)器可讀介質(zhì)上實(shí)現(xiàn)物理文件,例如4mm磁帶、8mm磁帶、3-1/2英寸軟介質(zhì)、⑶、DVD諸如此類。圖6示出了計(jì)算機(jī)系統(tǒng)的框圖。計(jì)算機(jī)系統(tǒng)600包括通信接ロ 620、處理系統(tǒng)630、存儲(chǔ)系統(tǒng)640和用戶接ロ 660。處理系統(tǒng)630操作地耦合到存儲(chǔ)系統(tǒng)640。存儲(chǔ)系統(tǒng)640存儲(chǔ)軟件650和數(shù)據(jù)670。處理系統(tǒng)630操作地耦合到通信接口 620和用戶接口 660。計(jì)算機(jī)系統(tǒng)600可以包括編程的通用計(jì)算機(jī)。計(jì)算機(jī)系統(tǒng)600可以包括微處理器。計(jì)算機(jī)系統(tǒng)600可以包括可編程或者專用電路。計(jì)算機(jī)系統(tǒng)600可以分布在多個(gè)器件、處理器、存儲(chǔ)器和/或接口(其共同包括部件620-670)上。通信接口 620可以包括網(wǎng)絡(luò)接口、調(diào)制解調(diào)器、端口、總線、鏈路、收發(fā)信機(jī)或者其他通信裝置。通信接口 620可以分布在多個(gè)通信裝置上。處理系統(tǒng)630可以包括微處理器、微控制器、邏輯電路或者其他處理裝置。處理系統(tǒng)630可以分布在多個(gè)處理裝置上。用戶接口 660可以包括鍵盤、鼠標(biāo)、語音識(shí)別接口、麥克風(fēng)和揚(yáng)聲器、圖形顯示器、觸摸屏或者其他類型的用戶接口裝置。用戶接口 660可以分布在多個(gè)接口裝置上。存儲(chǔ)系統(tǒng)640可以包括盤、磁帶、集成電路、RAM、ROM、網(wǎng)絡(luò)存儲(chǔ)器、服務(wù)器或者其他存儲(chǔ)功能。存儲(chǔ)系統(tǒng)640可以 是計(jì)算機(jī)可讀介質(zhì)。存儲(chǔ)系統(tǒng)640可以分布在多個(gè)儲(chǔ)存裝置上。處理系統(tǒng)630從存儲(chǔ)系統(tǒng)640取回并且執(zhí)行軟件650。處理系統(tǒng)可以取回和存儲(chǔ)數(shù)據(jù)670。處理系統(tǒng)還可以通過通信接口 620取回和儲(chǔ)存數(shù)據(jù)。處理系統(tǒng)630可以創(chuàng)建或者改變軟件650或者數(shù)據(jù)670以實(shí)現(xiàn)實(shí)體的結(jié)果。處理系統(tǒng)可以控制通信接口 620或者用戶接口 660以實(shí)現(xiàn)實(shí)體的結(jié)果。處理系統(tǒng)可以通過通信接口 620取回和執(zhí)行遠(yuǎn)程存儲(chǔ)的軟件。軟件650和遠(yuǎn)程存儲(chǔ)的軟件可以包括操作系統(tǒng)、有效組件、驅(qū)動(dòng)器、連網(wǎng)軟件及計(jì)算機(jī)系統(tǒng)通常執(zhí)行的其他軟件。軟件650包括應(yīng)用程序、Java的程序、固件或者計(jì)算機(jī)系統(tǒng)通常執(zhí)行的其他形式的機(jī)器可讀的處理指令。當(dāng)由處理系統(tǒng)630執(zhí)行時(shí),軟件650或者遠(yuǎn)程存儲(chǔ)的軟件可以指引計(jì)算機(jī)系統(tǒng)600如此處描述的那樣操作。出于說明和描述的目的,已經(jīng)給出了上述的本發(fā)明描述其不意味著窮舉的或者意圖將本發(fā)明限制到所公開的精確的形式,根據(jù)上述教導(dǎo),其他改型和變化都是可能的。為了最佳地闡明它的發(fā)明和實(shí)際應(yīng)用的原理并且為了能夠使得它的領(lǐng)域普通技術(shù)人員理解具有適于所設(shè)想的特定使用的各種改型的各種實(shí)施例的公開,選擇并且描述了實(shí)施例。除非被現(xiàn)有技術(shù)所限制,否則所附的權(quán)利要求書意圖被視為包括本發(fā)明的實(shí)施例的其它選擇。
權(quán)利要求
1.一種在易失性存儲(chǔ)器和非易失性存儲(chǔ)器之間傳送數(shù)據(jù)的方法,包括 接收具有存儲(chǔ)器地址字段的指令數(shù)據(jù)塊,所述存儲(chǔ)器地址字段具有表明所述易失性存儲(chǔ)器中的位置的多個(gè)第一位和表明數(shù)據(jù)操作的多個(gè)第二位; 基于所表明的數(shù)據(jù)操作,選擇用于將被發(fā)送給所述非易失性存儲(chǔ)器的數(shù)據(jù)的源; 將數(shù)據(jù)從所述易失性存儲(chǔ)器傳送到所述源; 從所述源接收操作的數(shù)據(jù);以及 將所述操作的數(shù)據(jù)傳送到所述非易失性存儲(chǔ)器。
2.如權(quán)利要求I所述的方法,其中所述源是數(shù)據(jù)加密引擎。
3.如權(quán)利要求I所述的方法,其中所述源是簽名引擎。
4.如權(quán)利要求3所述的方法,其中所述多個(gè)第二位表明所述簽名引擎將發(fā)送數(shù)據(jù)完整性簽名。
5.如權(quán)利要求I所述的方法,其中所述源能夠是多個(gè)簽名引擎中的ー個(gè),以及所述多個(gè)第二位表明所述多個(gè)簽名引擎中將成為所述源的ー個(gè)。
6.一種在非易失性存儲(chǔ)器和易失性存儲(chǔ)器之間傳送數(shù)據(jù)的方法,包括 接收具有存儲(chǔ)器地址字段的指令數(shù)據(jù)塊,所述存儲(chǔ)器地址字段具有表明所述易失性存儲(chǔ)器中的位置的多個(gè)第一位和表明數(shù)據(jù)操作的多個(gè)第二位; 基于所表明的數(shù)據(jù)操作,選擇用于將被發(fā)送給所述易失性存儲(chǔ)器的數(shù)據(jù)的源; 將數(shù)據(jù)從所述非易失性存儲(chǔ)器傳送到所述源; 從所述源接收操作的數(shù)據(jù);以及 將所述操作的數(shù)據(jù)傳送到所述易失性存儲(chǔ)器。
7.如權(quán)利要求6所述的方法,其中所述源是數(shù)據(jù)解密引擎。
8.如權(quán)利要求6所述的方法,其中所述源是簽名引擎。
9.如權(quán)利要求8所述的方法,其中所述多個(gè)第二位表明所述簽名引擎將發(fā)送數(shù)據(jù)完整性簽名。
10.如權(quán)利要求7所述的方法,其中所述源能夠是多個(gè)簽名引擎中的ー個(gè),以及所述多個(gè)第二位表明所述多個(gè)簽名引擎中將成為所述源的ー個(gè)。
11.一種集成電路,包括 數(shù)據(jù)操作控制器,接收存儲(chǔ)器地址字段,所述存儲(chǔ)器地址字段具有表明易失性存儲(chǔ)器中的位置的多個(gè)第一位和表明數(shù)據(jù)操作的多個(gè)第二位,基于所表明的數(shù)據(jù)操作,所述數(shù)據(jù)操作控制器選擇用于將被發(fā)送給非易失性存儲(chǔ)器的數(shù)據(jù)的源; 易失性存儲(chǔ)器控制器,耦合到易失性存儲(chǔ)器,所述易失性存儲(chǔ)器控制器促使數(shù)據(jù)從所述易失性存儲(chǔ)器傳送到所述源; 非易失性存儲(chǔ)器,耦合到所述非易失性存儲(chǔ)器,所述非易失性存儲(chǔ)器控制器從所述源接收操作的數(shù)據(jù)并且將所述操作的數(shù)據(jù)傳送到所述非易失性存儲(chǔ)器。
12.如權(quán)利要求11所述的集成電路,其中所述源是數(shù)據(jù)加密引擎。
13.如權(quán)利要求11所述的集成電路,其中所述源是簽名引擎。
14.如權(quán)利要求13所述的集成電路,其中所述多個(gè)第二位表明所述簽名引擎將發(fā)送數(shù)據(jù)完整性簽名。
15.如權(quán)利要求11所述的集成電路,其中所述源能夠是多個(gè)簽名引擎中的ー個(gè),以及所述多個(gè)第二位表明所述多個(gè)簽名引擎中將成為所述源的ー個(gè)。
16.—種集成電路,包括 數(shù)據(jù)操作控制器,接收存儲(chǔ)器地址字段,所述存儲(chǔ)器地址字段具有表明易失性存儲(chǔ)器中的位置的多個(gè)第一位和表明數(shù)據(jù)操作的多個(gè)第二位,基于所表明的數(shù)據(jù)操作,所述數(shù)據(jù)操作控制器選擇用于將被發(fā)送給所述易失性存儲(chǔ)器的數(shù)據(jù)的源; 非易失性存儲(chǔ)器控制器,耦合到非易失性存儲(chǔ)器,所述非易失性存儲(chǔ)器控制器促使數(shù)據(jù)從所述非易失性存儲(chǔ)器傳送到所述源; 易失性存儲(chǔ)器控制器,耦合到所述易失性存儲(chǔ)器,所述易失性存儲(chǔ)器控制器從所述源接收操作的數(shù)據(jù)并且將所述操作的數(shù)據(jù)傳送到所述易失性存儲(chǔ)器。
17.如權(quán)利要求16所述的集成電路,其中所述源是數(shù)據(jù)加密引擎。
18.如權(quán)利要求16所述的集成電路,其中所述源是簽名引擎。
19.如權(quán)利要求18所述的集成電路,其中所述多個(gè)第二位表明所述簽名引擎將發(fā)送數(shù)據(jù)完整性簽名。
20.如權(quán)利要求16所述的集成電路,其中所述源能夠是多個(gè)簽名引擎中的ー個(gè),以及所述多個(gè)第二位表明所述多個(gè)簽名引擎中將成為所述源的ー個(gè)。
全文摘要
本發(fā)明涉及電源故障的數(shù)據(jù)操作。公開了一種電源隔離和備份系統(tǒng)。當(dāng)檢測到電源故障狀況時(shí),臨時(shí)存儲(chǔ)器被清空到SDRAM。在清空之后,停止接口,從除了SDRAM子系統(tǒng)之外的芯片的大部分?jǐn)嚅_電源。SDRAM子系統(tǒng)將數(shù)據(jù)從SDRAM拷貝到閃存。期間,可以加密數(shù)據(jù)和/或計(jì)算數(shù)據(jù)完整性簽名。為了恢復(fù)數(shù)據(jù),SDRAM子系統(tǒng)將數(shù)據(jù)從閃存拷貝到SDRAM。期間,可以解密被恢復(fù)的數(shù)據(jù)和/或檢查數(shù)據(jù)完整性簽名。
文檔編號(hào)G06F11/14GK102841821SQ20111016697
公開日2012年12月26日 申請日期2011年6月21日 優(yōu)先權(quán)日2011年6月21日
發(fā)明者G·J·皮奇里洛, P·B·崇 申請人:Lsi公司