一種高速緩衝存儲器掉電數據保存方法、設備和系統的製作方法
2023-06-10 20:12:16 1
專利名稱:一種高速緩衝存儲器掉電數據保存方法、設備和系統的製作方法
技術領域:
本發明實施例涉及存儲領域,尤其涉及一種高速緩沖存儲器掉電數據保 存方法、設備和系統。
背景技術:
存儲系統使用Cache (高速緩沖存儲器)加速主才幾請求的響應速度。當接 收到主機下發的寫請求時,存儲系統將主機數據寫入Cache後就返回主機請 求完成,隨後存儲系統會選擇適當的時間再將Cache裡的數據寫入磁碟。Cache 加快了主機請求的響應,但是也帶來了存儲系統掉電時Cache中數據丟失的 問題,所以在有Cache的存儲系統裡,有掉電數據保護功能。
現有技術中,當存儲系統掉電後,通過備用電池對Cache供電,實現對 Cache的不斷刷新,以確保Cache中的數據不會丟失。如圖1所示,當系統掉電 以後,存儲系統切掉了所有的業務,通過備用電池給Cache供電。
在實施本發明的過程中,發明人發現現有技術中至少存在以下缺點
在長時間的掉電情況下,由於電池的容量有限,不能保持存儲系統的 Cache的持續動態刷新,從而丟失Cache中保存的數據。
發明內容
本發明的實施例提供一種高速緩衝存儲器掉電數據保存方法、設備和系 統,以實現在存儲設備掉電時,對Cache內的數據進行備份,保護Cache內 保存的數據。
本發明的實施例提供一種Cache掉電數據保存方法,包括以下步驟-. 當存儲系統掉電時,接收中央處理單元CPU發送的配置信息; 根據所述配置信息建立Cache中數據的地址和存儲設備中地址的映射關向Cache發送攜帶所述映射關係的信令,使Cache根據所述信令將數據 向對應的存儲設備遷移。
本發明的實施例提供一種輔助邏輯器,包括
接收單元,用於當存儲系統掉電時,接收中央處理單元CPU發送的配置 信息;
映射單元,用於根據所述接收單元接收的配置信息建立Cache中數據的 地址和存儲設備中地址的映射關係;
傳輸單元,用於向Cache發送攜帶所述映射單元建立的映射關係的信令, 使Cache根據所述信令將數據向對應的存儲設備遷移。
本發明的實施例提供一種存儲系統,包括輔助邏輯器、CPU、 Cache以及 存儲設備;
所述CPU,用於向所述輔助邏輯器發送配置信息;
所述輔助邏輯器,用於接收所述CPU發送的配置信息,並根據所述配置 信息向所述Cache發送攜帶有所述Cache中數據的地址和存儲設備中地址的 映射關係的信令;
所述Cache,用於存儲數據,並在存儲系統掉電時,接收所述輔助邏輯器 發送的信令,根據所述信令將存儲的數據向對應的存儲設備遷移;
所述存儲設備,用於在存儲系統掉電時,存儲從所述Cache遷移來的數據。
與現有技術相比,本發明的實施例具有以下優點
本發明實施例在存儲系統掉電時,通過根據由配置信息建立的映射關係, 將Cache中的數據遷移到其它存儲設備,實現將Cache中的數據以備份的方 式寫入存儲設備達到備份數據的目的,保護Cache內保存的數據,從而保證 數據不會丟失。
圖1是現有技術中備用電池對Cache的供電示意圖; 圖2是本發明的實施例中提供的方法的流程示意圖;圖3是^^明兩另一實施例中提供的方法的流程示意圖4是本發明的另一實施例中提供的方法的流程示意圖5是本發明的實施例中提供的存儲系統的結構示意圖6是本發明的實施例中提供的輔助邏輯器的結構示意圖7是本發明的另 一實施例中提供的輔助邏輯器的結構示意圖。
具體實施例方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行 清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而 不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作 出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。
本發明實施例提供一種Cache掉電數據保存方法,如圖2所示,包括以 下步驟
步驟s201,當存儲系統掉電時,接收中央處理單元CPU發送的配置信息; 步驟s202,根據上述配置信息建立Cache中數據的地址和存儲設備中地 址的映射關係;
步驟s203,向Cache發送攜帶有上述映射關係的信令,使Cache根據該 信令將所存儲的數據向對應的存儲設備遷移。
通過採用本發明實施例提供的方法,在存儲系統掉電時,通過根據由配 置信息建立的映射關係,將Cache中的數據遷移備份到其它存儲設備,實現 將Cache中的數據以備份的方式寫入存儲設備達到備份數據的目的,保護 Cache內保存的數據,從而保證存儲系統掉電但數據不會丟失。
本發明實施例提供一種Cache掉電數據保存方法,當存儲系統掉電時,將 Cache中的數據通過相關的輔助邏輯器以備份的方式寫入存儲設備以達到備 份數據的功能,該存儲設備在系統掉電時依然具有數據存儲功能,可以稱為 掉電不失效設備。該輔助邏輯器可以為ASIC
(Application Specific Integrated Circuit,專用集成電路)系統邏輯、DMA(Dfrect Memory Access,直接內存存取)控制器( 一般集成於橋片中)等。 具體的,本發明實施例提供的Cache掉電數據保存方法如圖3所示,包括 以下步驟
步驟s301,當存儲系統掉電時,備用電池向Cache和掉電不失效設備供電。 步驟s302,根據預先的設置,備用電池向輔助邏輯器供電。 輔助邏輯器的工作一般需要其他外設都同時工作正常的情況下才能進行 相應的酉己置,如DMA (Direct Memory Access,直4妄內存訪問)的裝載,;也址
的映射等。
步驟s303,當存儲系統掉電時,CPU向輔助邏輯器發送配置信息,完成 對輔助邏輯器的相關配置工作。
CPU在系統掉電以後的短時間內,或者是在備用電池開始向系統供電的 前期,CPU通過電容上面存儲的電量或者是備用電池為其提供的電量,向輔 助邏輯器發送配置信息,該配置信息包括數據傳送的源地址、目標地址、傳 送數據的大小、傳送數據的方向中等。此後CPU掉電,不參與後續的數據保 存工作。
步驟s304,輔助邏輯器根據步驟s303中的配置信息建立Cache中數據的 地址和掉電不失效設備中地址的映射關係。
步驟s305,輔助邏輯器向Cache發送攜帶上述映射關係的信令,通知Cache 進行數據遷移。
步驟s306, Cache接收攜帶上述映射關係的信令,將存儲的數據遷移到掉 電不失效設備中。
在此過程中,數據是從Cache塊完整的遷移到掉電不失效設備中去的,可 以將需要備份的Cache分成有限的幾個塊進行備除。
本發明實施例提供的方法中,輔助邏輯器可以單獨存在或集成於其它設 備中,比如集成於北橋或南橋中。
通過採用本發明實施例提供的方法,在存儲系統掉電時,根據由配置信 息建立的映射關係,將Cache中的數據遷移備份到其它存儲設備,實現將Cache 中的數據以備份的方式寫入存儲設備達到備份數據的目的,保護Cache內保存的數據,從而保證數據不會丟失。
下面結合一具體應用場景對本發明實施例進行進一步介紹,其中,輔助
邏輯器以橋片中集成的DMA控制器為例。
本發明實施例提供一種Cache掉電數據保存方法,如圖4所示,包括以下 步驟
步驟s401,當存儲系統掉電時,CPU對DMA控制器進行配置。 CPU在系統掉電以後的短時間內,或者是在電池開始向系統供電的前期, CPU通過電容上面存儲的電量或者是備用電池為其提供的電量,完成對相應 輔助邏輯器的相關配置工作,即對DMA控制器的配置工作。該配置包括傳 送數據的源地址和目的地址配置、傳送數據的大小配置、傳送數據的方向配 置等,同時,向DMA控制器發送數據傳送命令。 步驟s402,備用電池向DMA控制器供電。
CPU對DMA控制器的配置完成後,掉電,不參與後續數據保存工作。備 用電池向DMA控制器、Cache以及掉電不失效設備供電。
步驟s403, DMA控制器建立Cache中數據的地址和掉電不失效設備有效的 地址映射。
DMA控制器根據CPU在系統掉電後配置的命令,建立映射的具體過程 按照CPU給出的傳送數據的源地址和目的地址確認相應的地址空間,按照步 驟s401中CPU配置給DMA控制器的傳送數據的大小在掉電不失效設備中開闢 一個和Cache中傳送數據大小相同的存儲區域,完成地址映射的建立。
步驟s404, DMA控制器向Cache發送攜帶上述映射關係的信令,通知Cache 進行數據遷移。
步驟s405, Cache接收攜帶上述映射關係的信令,將數據向對應的存儲設 備遷移。
該信令中攜帶上述映射關係以及要求Cache遷移數據的大小,Cache根據 該映射關係將數據遷移到掉電不失效設備。在DMA控制器的參與下,完成數 據從Cache到掉電不失效設備的遷移的具體過程為根據DMA控制器發送的信令,Cache將數據向DMA控制器在存儲設備中開闢的存儲區域進行遷移,每一 次遷移源地址或目的地址寄存器自動累加直到累加至配置的傳送數據大小為 止,遷移完成。
通過採用本發明實施例提供的方法,在存儲系統掉電時,根據由配置信 息建立的映射關係,將Cache中的數據遷移備份到其它存儲設備,實現將Cache 中的數據以備份的方式寫入存儲設備達到備份數據的目的,保護Cache內保 存的數據,從而保證數據不會丟失。
本發明實施例提供一種存儲系統,如圖5所示,包括輔助邏輯器51、 CPU52、 Cache53以及存儲設備54;
其中,輔助邏輯器51,用於接收CPU52發送的配置信息,並根據該配置 信息向Cache53發送攜帶有Cache53中數據的地址和存儲設備中地址的映射 關係的信令,使Cache53將數據向存儲設備54遷移。輔助邏輯器51可以為 ASIC系統邏輯、DMA控制器等,可以單獨存在,也可以集成於其它設備中。 當存儲系統掉電後,輔助邏輯器51接收CPU52進行的配置,該配置中包括 了數據遷移的源地址和目的地址以及遷移數據的大小等信息。輔助邏輯器51 根據該配置確認Cache53作為源地址的地址空間以及存〗諸i殳備54中目的地址 的地址空間,並根據配置中遷移數據的大小在存儲設備54中開闢一個和 Cache53中遷移數據大小相同的存儲區域,建立數據遷移的源地址與目的地址 的映射;然後向Cache53發送信令,通知Cache53進行數據遷移。
CPU52,用於向輔助邏輯器51發送配置信息,完成對輔助邏輯器51的 配置。CPU52在存儲系統掉電時,對輔助邏輯器51進行配置,配置完成後, CPU52掉電,不參與後期的數據遷移等操作,減少系統的耗電量。
Cache53,用於存儲數據,並在存儲系統掉電時,接收輔助邏輯器51發 送的信令,將所存儲的數據向存儲設備54遷移。在一種實現下,Cache53接 收輔助邏輯器51發送的信令,將數據向輔助邏輯器51在存儲設備54中開闢 的存儲區域進行遷移,每一次遷移源地址或目的地址寄存器自動累加直到累 加至配置的傳送數據大小為止,遷移完成。存儲設備54,用於在存儲系統掉電時,存儲從Cache53遷移來的數據。 該設備在掉電情況下,依然可以有效保存數據。
本發明另一實施例中,該系統還包括備用電池55,用於在存儲系統掉電 時,向輔助邏輯器51、 CPU52、 Cache53以及存儲設備54中的一種或多種供 電。該備用電池55可以集成於存儲系統內,也可以為存儲系統外的設備。
通過採用本發明實施例提供的系統,在存儲系統掉電時,根據由配置信 息建立的映射關係,將Cache中的數據遷移備份到其它存儲設備,實現將Cache 中的數據以備份的方式寫入存儲設備達到備份數據的目的,保護Cache內保 存的數據,從而保證數據不會丟失。
本發明實施例提供一種輔助邏輯器,該輔助邏輯器可以為ASIC系統邏 輯、DMA控制器等,可以單獨存在,也可以集成於其它設備中。當存儲系統 掉電後,輔助邏輯器接收CPU進行的配置,根據該配置建立Cache中數據地 址和存儲設備中地址的映射關係,並向Cache發送信令,通知Cache進行數 據遷移。具體的,如圖6所示,包括
接收單元61,用於當存儲系統掉電時,接收CPU發送的配置信息;
在一種實現下,該配置信息包括傳送數據的源地址和目的地址配置、傳 送數據的大小配置、傳送數據的方向配置等。
映射單元62,用於根據接收單元61接收的配置信息建立Cache中數據地 址和存儲設備中地址的映射關係;
在一種實現下,映射單元62確認配置信息中數據的源地址和目的地址, 並在存儲設備中開闢與傳送數據的大小相同的地址空間,建立Cache中數據 地址和存儲設備中地址的映射關係。
傳輸單元63,用於向Cache發送攜帶映射單元62建立的映射關係的信令, 使Cache根據該信令將數據向對應的存儲設備遷移。
在一種實現下,傳輸單元63向Cache發送信令,通知Cache進行數據遷 移,該信令中包括了要求Cache進行數據遷移的數據大小以及進行數據遷移 需要的映射關係,使Cache將數據向對應的存儲設備遷移。本發明的另一實施例中,如圖7所示,映射單元62包括
確認子單元621 ,用於才艮據接收單元61接收的配置信息確認數據傳送的 源地址以及數據傳送的目標地址;
建立子單元622,用於根據確認子單元621確認的結果,建立Cache和存 儲設備中地址的映射關係。
通過採用本發明實施例提供的設備,在存儲系統掉電時,根據由配置信 息建立的映射關係,將Cache中的數據遷移備份到其它存儲設備,實現將Cache 中的數據以備份的方式寫入存儲設備達到備份數據的目的,保護Cache內保 存的數據,從而保證數據不會丟失。
進一步的,系統掉電備份時數據從Cache遷移到存儲設備的過程中CPU 免參與;並且在備份過程中,有效降低了整機設備的功率。
通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到本發 明可以通過硬體實現,也可以藉助軟體加必要的通用硬體平臺的方式來實現。 基於這樣的理解,本發明的技術方案可以以軟體產品的形式體現出來,該軟 件產品可以存儲在一個非易失性存儲介質(可以是CD-ROM, U盤,移動硬 盤等)中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服 務器,或者網絡設備等)執行本發明各個實施例所述的方法。
以上公開的僅為本發明的幾個具體實施例,但是,本發明並非局限於此, 任何本領域的技術人員能思之的變化都應落入本發明的保護範圍。
權利要求
1、一種高速緩衝存儲器Cache掉電數據保存方法,其特徵在於,包括當存儲系統掉電時,接收中央處理單元CPU發送的配置信息;根據所述配置信息建立Cache中數據的地址和存儲設備中地址的映射關係;向Cache發送攜帶所述映射關係的信令,使所述Cache根據所述信令將所存儲的數據向對應的存儲設備遷移。
2、 如權利要求1所述的方法,其特徵在於,所述接收CPU發送的配置 信息具體包括接收CPU發送的所配置的數據傳送的源地址、目標地址、傳送 數據的大小、傳送數據的方向中的一種或多種。
3、 如權利要求2所述的方法,其特徵在於,所述根據配置信息建立Cache 中數據的地址和存儲設備中地址的映射關係包括根據所述配置信息確定所述數據傳送的源地址以及數據傳送的目標地址;根據所述數據傳送的源地址以及數據傳送的目標地址的確認結果建立 Cache中數據的地址和存儲設備中地址的映射關係。
4、 一種輔助邏輯器,其特徵在於,包括接收單元,用於當存儲系統掉電時,接收中央處理單元CPU發送的配置4 &息5映射單元,用於根據所述接收單元接收的配置信息建立Cache中數據的 地址和存儲設備中地址的映射關係;傳輸單元,用於向Cache發送攜帶所述映射單元建立的映射關係的信令, 使Cache根據所述信令將數據向對應的存儲設備遷移。
5、 如權利要求4所述的輔助邏輯器,其特徵在於,所述映射單元包括 確認子單元,用於根據所述配置信息確認數據傳送的源地址以及數據傳送的目標地址;建立子單元,用於根據所述確認子單元對數據傳送的源地址以及數據傳 送的目標地址的確認結果建立Cache中數據的地址和存儲設備中地址的映射 關係。
6、 一種存儲系統,其特徵在於,包括輔助邏輯器、中央處理單元CPU、 Cache以及存儲設備;所述CPU,用於向所述輔助邏輯器發送配置信息;所述輔助邏輯器,用於接收所述CPU發送的配置信息,並根據所述配置 信息向所述Cache發送攜帶有所述Cache中數據的地址和存儲設備中地址的 映射關係的信令;所述Cache,用於存儲數據,並在存儲系統掉電時,接收所述輔助邏輯器 發送的信令,根據所述信令將存儲的數據向對應的存儲設備遷移;所述存儲設備,用於在存儲系統掉電時,存儲從所述Cache遷移來的數據。
7、 如權利要求6所述的系統,其特徵在於,還包括備用電池,用於在存儲系統掉電時,向所述輔助邏輯器、CPU、 Cache以 及存儲設備中的 一種或多種供電。
8、 如權利要求6所述的系統,其特徵在於,所述輔助邏輯器包括 接收單元,用於當存儲系統掉電時,接收CPU發送的配置信息; 映射單元,用於根據所述接收單元接收的配置信息建立Cache中數據的地址和存儲設備中地址的映射關係;傳輸單元,用於向Cache發送攜帶有所述映射關係的信令,使Cache根 據所述信令將所存儲的數據向對應的存儲設備遷移。
全文摘要
本發明的實施例公開了一種高速緩衝存儲器掉電數據保存方法、設備和系統,該方法包括以下步驟當存儲系統掉電時,接收中央處理單元CPU發送的配置信息;根據所述配置信息建立高速緩衝存儲器Cache中數據的地址和存儲設備中地址的映射關係;向Cache發送攜帶所述映射關係的信令,使所述Cache根據所述信令將所存儲的數據向對應的存儲設備遷移。本發明實施例在存儲系統掉電時,通過根據由配置信息建立的映射關係,將Cache中的數據遷移備份到其它存儲設備,實現將Cache中的數據以備份的方式寫入存儲設備達到備份數據的目的,保護Cache內保存的數據,從而保證數據不會丟失。
文檔編號G06F12/16GK101446926SQ20081017211
公開日2009年6月3日 申請日期2008年11月10日 優先權日2008年11月10日
發明者陳立耀 申請人:成都市華為賽門鐵克科技有限公司