專利名稱:一種具有錯誤終止與負(fù)載平衡的磁盤陣列系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明是有關(guān)于一種磁盤陣列系統(tǒng),尤其是有關(guān)于一種具有錯誤終止與負(fù)載平衡的磁盤陣列系統(tǒng)。
背景技術(shù):
現(xiàn)代的計算機(jī)系統(tǒng)需要大量的儲存裝置以容納大量的數(shù)據(jù)需求,由一個主機(jī)結(jié)合控制器控制多個磁盤的磁盤陣列系統(tǒng)(RAID)便是計算機(jī)業(yè)者常常提供的解決方案。一個更為完備的數(shù)據(jù)儲存系統(tǒng)必須具備數(shù)據(jù)定期備份、偵測錯誤磁盤、偵測錯誤控制器以及平衡數(shù)據(jù)負(fù)載平衡的功能。上述功能可以借由計算機(jī)主機(jī)搭配主機(jī)總線配接卡(HBA),借由控制器連接多個磁盤運(yùn)作而達(dá)到,如美國專利第6578158號“提供具有傳輸錯誤終止與錯誤回傳磁盤控制器的方法及其裝置”中提到以具有主機(jī)總線配接卡的主機(jī)計算機(jī),以二個轉(zhuǎn)接器(hub)各連接二個相同具有數(shù)據(jù)傳輸與錯誤終止功能的控制器的數(shù)據(jù)傳輸端口與錯誤終止端口,該二個控制器控制多個磁盤,其運(yùn)作方式為主機(jī)內(nèi)的數(shù)據(jù)經(jīng)過二個轉(zhuǎn)接器經(jīng)由控制器的數(shù)據(jù)傳輸端口傳送入磁盤中儲存,磁盤中的數(shù)據(jù)也可以經(jīng)由相同途徑傳輸至主機(jī)內(nèi)運(yùn)作??刂破髋c磁盤分別具有身份辨識器(uniqueidentifier)與邏輯單位號碼(logic unit number),與計算機(jī)主機(jī)相聯(lián)系,控制器之間同時具有信道相溝通,該信道可以是小型計算機(jī)系統(tǒng)接口(Small Computer System Interface),控制器之間不斷以“ping”信號溝通彼此之間的信息,以確定控制器運(yùn)作是否正常。在一般狀況下,計算機(jī)主機(jī)數(shù)據(jù)借由一個主控制器傳輸至磁盤放置,當(dāng)然磁盤也同樣可以借由該主控制器將數(shù)據(jù)回傳給計算機(jī)主機(jī)作處理,當(dāng)控制器“ping”對方時,無法接收到對方的響應(yīng)信息,運(yùn)作正常的控制器便判斷對方處于無法運(yùn)作的狀態(tài),該運(yùn)作正常的控制器的錯誤終止端口接收并記錄無法運(yùn)作的控制器的身份辨識器與邏輯單位號碼,并且借由錯誤終止端口傳遞原本由無法正常運(yùn)作的控制器的數(shù)據(jù)傳輸端口所傳輸?shù)臄?shù)據(jù),借此維持磁盤陣列系統(tǒng)的正常運(yùn)作。此技術(shù)的好處是控制器具有數(shù)據(jù)傳輸與錯誤終止功能,不需要計算機(jī)主機(jī)操作系統(tǒng)來處理磁盤的錯誤事件或者是控制器無法運(yùn)作的事件,然而此技術(shù)的成本昂貴,需要轉(zhuǎn)接器的成本外,更需要具有功能的控制器將這套磁盤陣列系統(tǒng)架設(shè)起來,一般人無法負(fù)荷如此昂貴的高成本,業(yè)者便殫精竭慮以發(fā)展一套成本低廉而且實用的磁盤陣列系統(tǒng)以解決上述問題。
發(fā)明內(nèi)容
本發(fā)明的主要目的是在于提供一種磁盤陣列系統(tǒng),其具有安裝于主機(jī)上的一軟件,該軟件具有控制磁盤錯誤終止與數(shù)據(jù)負(fù)載平衡的功能,能夠利用主機(jī)上的高性能微處理器進(jìn)行磁盤陣列系統(tǒng)的錯誤終止與數(shù)據(jù)負(fù)載平衡的功能,節(jié)省習(xí)知技術(shù)需要以具有控制磁盤錯誤終止與數(shù)據(jù)負(fù)載平衡控制器運(yùn)作的成本。
本發(fā)明的次要目的是在于提供一種控制器,能夠傳輸數(shù)據(jù)給各磁盤。
本發(fā)明的又一目的是在于提供一種存儲器,能夠具有存儲指令與數(shù)據(jù)緩沖功能。
本發(fā)明的又一目的是在于提供一種SATA總線,能夠?qū)⒂嬎銠C(jī)主機(jī)的數(shù)據(jù)傳輸給磁盤儲存,或者是將儲存于磁盤中的數(shù)據(jù)回傳給計算機(jī)主機(jī)處理。
本發(fā)明一種磁盤陣列系統(tǒng),以具有容錯處理的方式儲存一主機(jī)的數(shù)據(jù),其包括一微處理器,由一軟件所控制以處理該主機(jī)的運(yùn)作,具有錯誤終止與負(fù)載平衡的功能;一第一總線,連接該微處理器,該第一總線具有多個第一信道;一控制器,連接該第一總線;一存儲器,連接該控制器,具有存儲指令與數(shù)據(jù)緩沖的功能;一第二總線,連接于該控制器,該第二總線具有多個第二信道;以及多個磁盤,該多個磁盤連接該多個信道。
圖1是本發(fā)明磁盤陣列系統(tǒng)的硬件架構(gòu)示意圖;圖2是本發(fā)明磁盤陣列系統(tǒng)的運(yùn)作流程圖;圖3是本發(fā)明磁盤陣列系統(tǒng)的實施例示意圖;圖4是本發(fā)明磁盤陣列系統(tǒng)的實施例示意圖;圖5是本發(fā)明磁盤陣列系統(tǒng)的實施例示意圖;圖6是本發(fā)明磁盤陣列系統(tǒng)的實施例示意圖。
符號說明100~主機(jī)110~微處理器120~總線131~信道132~信道133~信道134~信道200~控制器210~磁盤陣列處理器 220~存儲器231~信道232~信道233~信道234~信道240~總線250~總線261~信道262~信道263~信道264~信道
270~磁盤300~數(shù)據(jù)ABCD310~數(shù)據(jù)A 311~數(shù)據(jù)A/3312~數(shù)據(jù)A/2 320~數(shù)據(jù)B322~數(shù)據(jù)B/2 330~數(shù)據(jù)C340~數(shù)據(jù)D具體實施方式
本發(fā)明一種磁盤陣列系統(tǒng)是利用一種安裝于主機(jī)計算機(jī)上的軟件,進(jìn)行磁盤陣列系統(tǒng)與主機(jī)微處理器之間數(shù)據(jù)傳輸問題上的處理,其硬件架構(gòu)如圖1所示,主機(jī)100內(nèi)含有安裝有一軟件(圖未示)的微處理器110,該軟件具有將無法運(yùn)作的信道131-134,231-234終止運(yùn)作(fail over)與將微處理器傳輸出來的數(shù)據(jù)或者由磁盤回傳給主機(jī)的數(shù)據(jù)作負(fù)載平衡(load balance),主機(jī)100的微處理器110將數(shù)據(jù)經(jīng)由總線120經(jīng)由信道131-134傳輸出主機(jī)100,并經(jīng)由信道231-234傳遞入控制器200中,經(jīng)由控制器200的總線240傳遞入磁盤陣列處理器210,存儲器220存儲有錯誤終止與負(fù)載平衡指令與數(shù)據(jù)緩沖功能,將數(shù)據(jù)作還原與傳輸?shù)娇偩€250,并經(jīng)由信道261-264傳遞入硬盤270存放,硬盤270中的數(shù)據(jù)也依相同路徑接收相同指令回傳給主機(jī)100的微處理器。
磁盤陣列系統(tǒng)的運(yùn)作流程請參考圖2所示,首先由主機(jī)100內(nèi)的微處理器110運(yùn)作軟件啟動主機(jī)總線配接卡-步驟410,再啟動控制器200-步驟420,接著開始系統(tǒng)運(yùn)作,進(jìn)行主機(jī)100與磁盤270之間的數(shù)據(jù)傳輸,傳輸?shù)姆绞綖閿?shù)據(jù)在微處理器110,210接受軟件中負(fù)載平衡的指示,將數(shù)據(jù)分為若干部分接著分派給各信道131-134,231-234傳輸給總線120、240在傳輸至主機(jī)100的微處理器110或是硬盤270-步驟430,主機(jī)100的SATA信道131-134會自動不停地偵測信道是否運(yùn)作正常-步驟440,若是偵測到其中有信道壞掉,主機(jī)100的微處理器110便透過軟件下達(dá)終止該毀損信道運(yùn)作的指令-步驟450,接著主機(jī)100的微處理器110便下達(dá)負(fù)載平衡的指令將原來經(jīng)由該毀損信道傳送的數(shù)據(jù)以其它運(yùn)作正常的信道傳送-步驟460。
以下是本發(fā)明的一個較佳實施例,磁盤陣列系統(tǒng)中數(shù)據(jù)可以由主機(jī)100的微處理器110經(jīng)由控制器200將數(shù)據(jù)傳遞給磁盤270存放,而本發(fā)明的重點(diǎn)便在于以軟件達(dá)到信道錯誤終止與負(fù)載平衡的功能,確保數(shù)據(jù)的傳輸沒有問題。請參考圖1與圖3所示,在正常運(yùn)作下,主機(jī)100的微處理器110或控制器200的磁盤陣列處理器210將數(shù)據(jù)(ABCD)300劃分為數(shù)據(jù)(A)310、數(shù)據(jù)(B)320、數(shù)據(jù)(C)330、數(shù)據(jù)(D)340四部分,經(jīng)由總線120將四部分?jǐn)?shù)據(jù)分送至信道131-134傳輸出主機(jī)100,再傳遞入信道231-234經(jīng)由總線240送入控制器200的磁盤陣列處理器210中將數(shù)據(jù)(A)310、數(shù)據(jù)(B)320、數(shù)據(jù)(C)330、數(shù)據(jù)(D)340還原為數(shù)據(jù)(ABCD)300并經(jīng)由總線250經(jīng)由信道261-264傳遞給磁盤270存放。
請參考圖1與圖4所示,當(dāng)微處理器110偵測到信道131與信道231之間的溝通失常時,微處理器110首先終止信道131與信道231之間的運(yùn)作,接著將原來借由信道131與信道231傳輸?shù)臄?shù)據(jù)(A)310劃分為三份數(shù)據(jù)(A/3)311并分別連同數(shù)據(jù)(B)320、數(shù)據(jù)(C)330、數(shù)據(jù)(D)340借由信道132-134傳輸出主機(jī)100,再傳遞入信道232-234經(jīng)由總線240送入控制器200的磁盤陣列處理器210中將三份數(shù)據(jù)(A/3)311、數(shù)據(jù)(B)320、數(shù)據(jù)(C)330、數(shù)據(jù)(D)340還原為數(shù)據(jù)(ABCD)300并經(jīng)由總線250經(jīng)由信道261-264傳遞給磁盤270存放。
請參考圖1與圖5所示,當(dāng)微處理器110偵測到信道131與信道231之間的溝通以及信道132與信道232之間的溝通均失常時,微處理器110首先終止信道131與信道231以及信道132與信道232之間的運(yùn)作,接著將原來借由信道131與信道231傳輸?shù)臄?shù)據(jù)(A)310劃分為二份數(shù)據(jù)(A/2)312以及將原來借由信道132與信道232傳輸?shù)臄?shù)據(jù)(B)320劃分為二份數(shù)據(jù)(B/2)322并分別連同數(shù)據(jù)(C)330、數(shù)據(jù)(D)340借由信道133-134傳輸出主機(jī)100,再傳遞入信道233-234經(jīng)由總線240送入控制器200的磁盤陣列處理器210中將二份數(shù)據(jù)(A/2)312、二份數(shù)據(jù)(B/2)322、數(shù)據(jù)(C)330、數(shù)據(jù)(D)340還原為數(shù)據(jù)(ABCD)300并經(jīng)由總線250經(jīng)由信道261-264傳遞給磁盤270存放。
請參考圖1與圖6所示,當(dāng)微處理器110偵測到信道131與信道231之間的溝通、信道132與信道232之間的溝通以及信道133與信道233之間的溝通均失常時,微處理器110首先終止信道131與信道231、信道132與信道232之間的溝通以及信道133與信道233之間的運(yùn)作,接著將原來借由信道131與信道231傳輸?shù)臄?shù)據(jù)(A)310、借由信道132與信道232傳輸?shù)臄?shù)據(jù)(B)320以及借由信道133與信道233傳輸?shù)臄?shù)據(jù)(C)330連同數(shù)據(jù)(D)340借由信道134傳輸出主機(jī)100,再傳遞入信道234經(jīng)由總線240送入控制器200的磁盤陣列處理器210中將數(shù)據(jù)(A)310、數(shù)據(jù)(B)320、數(shù)據(jù)(C)330、數(shù)據(jù)(D)340還原為數(shù)據(jù)(ABCD)300并經(jīng)由總線250經(jīng)由信道261-264傳遞給磁盤270存放。
本發(fā)明利用現(xiàn)有主機(jī)微處理器上高性能微處理器的運(yùn)作能力,和軟件以及功能簡化的控制器架構(gòu)出高傳輸能力、成本低廉的磁盤陣列系統(tǒng),控制磁盤陣列系統(tǒng)數(shù)據(jù)傳輸?shù)耐暾?,?jié)省習(xí)知技術(shù)必須以高成本的硬件控制器處理磁盤陣列系統(tǒng),關(guān)于信道終止、負(fù)載平衡的缺失。
權(quán)利要求
1.一種具有錯誤終止與負(fù)載平衡的磁盤陣列系統(tǒng),是用以儲存一主機(jī)的數(shù)據(jù),其特征在于所述具有錯誤終止與負(fù)載平衡的磁盤陣列系統(tǒng)包括一微處理器;一軟件,控制以處理該主機(jī)的運(yùn)作,具有錯誤終止與負(fù)載平衡的功能;一第一總線,傳輸該微處理器所輸出的數(shù)據(jù),該第一總線具有多個第一信道;至少一控制器,連接該第一總線;一存儲器,連接該控制器,具有存儲指令與數(shù)據(jù)緩沖的功能;一第二總線,連接于該控制器,該第二總線具有多個第二信道;多個磁盤,該多個磁盤連接該多個信道。
2.根據(jù)權(quán)利要求1所述的一種具有錯誤終止與負(fù)載平衡的磁盤陣列系統(tǒng),其特征在于由該微處理器驅(qū)動該第一總線以進(jìn)行該主機(jī)數(shù)據(jù)的傳輸。
3.根據(jù)權(quán)利要求2所述的一種具有錯誤終止與負(fù)載平衡的磁盤陣列系統(tǒng),其特征在于由該微處理器驅(qū)動該第一總線后驅(qū)動該控制器。
4.根據(jù)權(quán)利要求3所述的一種具有錯誤終止與負(fù)載平衡的磁盤陣列系統(tǒng),其特征在于該微處理器偵測該其中至少一第一信道的錯誤并終止其運(yùn)作,將原本送至該錯誤的第一信道的數(shù)據(jù)通過該控制器均分送入該正常的第一信道。
5.根據(jù)權(quán)利要求4所述的一種具有錯誤終止與負(fù)載平衡的磁盤陣列系統(tǒng),其特征在于其中該正常的第一信道除了傳送原本分配的數(shù)據(jù)外,更需要傳送該錯誤的第一信道均分給該正常的第一信道的數(shù)據(jù)。
6.根據(jù)權(quán)利要求1所述的一種具有錯誤終止與負(fù)載平衡的磁盤陣列系統(tǒng),其特征在于該第一總線與該第二總線是為Serial ATA總線。
全文摘要
本發(fā)明是一種具有錯誤終止與負(fù)載平衡的磁盤陣列系統(tǒng),是用以儲存一主機(jī)的數(shù)據(jù),其包括一微處理器由一軟件所控制以處理該主機(jī)的運(yùn)作,具有錯誤終止與負(fù)載平衡的功能;一第一總線,傳輸該微處理器所輸出的數(shù)據(jù),該第一總線具有多個第一信道;至少一控制器,連接該第一總線;一存儲器,連接該控制器,具有存儲微處理器所傳遞的指令與數(shù)據(jù)緩沖的功能;一第二總線,連接于該控制器,該第二總線具有多個第二信道;以及多個磁盤,該多個磁盤連接該多個信道。
文檔編號G06F13/38GK1755654SQ200410080619
公開日2006年4月5日 申請日期2004年9月29日 優(yōu)先權(quán)日2004年9月29日
發(fā)明者池勇潮 申請人:池勇潮