Sata硬碟的監控裝置及其監控方法
2023-05-23 20:32:01 2
專利名稱:Sata硬碟的監控裝置及其監控方法
技術領域:
本發明為一種硬碟監控裝置及其監控方法,特別指一種可經由協議指令由 主系統對硬碟監控進行操控並將監控結果透過燈號直接顯示於監控裝置上的硬 盤監控裝置及其方法。
背景技術:
隨著網絡的蓬勃發展,網絡儲存裝置的管理也就更顯得重要,而通常一般 的網絡儲存裝置伺服器(Storage Server)對於硬碟(Hard Disk ,簡稱HD)的管 理與控制,乃是使用主系統內的中央處理單元(CPU)來同時作硬碟管控,這樣的 方法不僅較為耗損中央處理單元的處理效能,同時也會佔用在中央處理單元上 可供使用者進行程序設計用途且數量有限的通用輸入輸出(General Purpose 1/0,簡稱GPIO)接腳(pin)。因此,有另一種做法則是在連接硬碟的SATA背板上直接增加一個微處理器 (Microprocessor)專司此類伺服器中的硬碟管理與控制,但此類SATA背板上往 往無法直接提供直覺可視化的硬碟狀態,且一般SATA背板與主系統之間的實體 接口多採用"並列"或以"通用異步收發傳輸器(Universal Asynchronous Receiver/Transmitter,簡稱UART)"方式來與主系統相連結,因此會造成需要 較大的線路布局空間並且增加許多製作上的成本。此種做法上還有另外一個問題,就是在主系統與微處理器間往往必須要有 一個共通的通訊協議來處理相關的硬碟監控,然而由於各家伺服器生產廠商多 半採取不兼容的設計方式,使用非廣泛通用格式的方式來進行發展設計,因此 造成不同的伺服器系統之間對於硬碟監控的兼容性不高且不容易有效推展,並 且還增加了許多不必要的開發資源耗費。發明內容鑑於以上的問題,本發明提出一種SATA硬碟的監控裝置及其監控方法。 其中,此監控裝置可以透過設計的協議指令來完成對SATA硬碟的監控,監 控裝置及其監控方法包含通訊接口,用以與主系統連結並透過來自主系統的 第一協議指令與第二協議指令進行溝通;多個燈號顯示單元,用以顯示各硬碟 的狀態;儲存單元,用以儲存對應各硬碟及各燈號顯示單元的狀態信息;及監 控單元,用以偵測各硬碟的狀態並儲存回傳的信息於狀態信息中,及解析第一 協議指令以選擇性控制各燈號顯示單元並儲存回傳的信息於狀態信息中。此外,該監控單元可以透過解析第二協議指令,自狀態信息中讀取對應的信息回傳至主系統。透過此一監控裝置,可以自主系統中輕易完成對連接在SATA背板上的硬碟進行實時的監控,整個監控裝置的運作獨立於主系統之外,因此可以大幅降低 主系統的運作負擔,並且透過監控裝置上的燈號顯示單元以可視化方式實時顯 示各硬碟的狀態,並透過所定義的協議指令來執行硬碟狀態偵測、控制燈號顯 示及讀取狀態信息的操控。
圖1為本發明監控裝置的系統架構2A及圖2B分別為本發明第一協議指令及第二協議指令示意圖 圖3為本發明監控方法的方法流程圖具體實施方式
有關本發明的特徵與實作,茲配合圖示作最佳實施例詳細說明如下。本發明揭露一種SATA硬碟的監控裝置及其監控方法,在以下詳細說明中, 將描述多種特定的細節以便提供本發明的完整說明,對熟知技藝者來說,可以 不需要使用該等特定細節便可以實施本發明,或者可以借著利用替代的組件或 方法來實施本發明。在某些狀況下,並不特別詳細地說明已知的方法、程序、 部件、以及電路,以免不必要地混淆本發明的重點。首先,請參照圖l,本案所提出的監控裝置131, 一種用來提供計算機可執 行平臺100中的主系統可以直接監控裝設於SATA背板130上的多個SATA硬碟 140(包含SATA硬碟a…SATA硬碟n)所設計的技術方案。所述的計算機可執行平臺100, —般指伺服器,而主系統的部分則特別強調 與本案監控裝置131有運作上直接關係的中央處理單元110與輸出/入控制單元 120兩者。其中,輸出/入控制單元120, 一般指南橋晶片,在計算機可執行平 臺100中負責扮演整合許多輸出入(I/0)控制器以提供不同外圍裝置和總線接口 的角色。例如IDE接口、 USB接口及SATA(Serial ATA)接口,可藉此與硬碟機、 光碟機、鍵盤、滑鼠…等等裝置連接進行控制與存取數據。如同前面對背景技術所做的描述,以往在對於SATA硬碟的監控上都直接透 過主系統中的中央處理單元110來負責的,同樣透過所謂的輸出/入控制單元120 對連接在SATA背板130上的SATA硬碟140進行監控,使得中央處理單元110 的運作負擔非常大。所以,為了減輕中央處理單元110的運作負擔,本發明特 別在SATA背板130與主系統(即中央處理單元110與輸出/入控制單元120)之間 增加了一個獨立運作的監控裝置131,可獨立對連接在SATA背板130上的SATA 硬碟140進行監控。監控裝置131在實際實現上可以選擇性的與SATA背板130結合在一起或者 獨立。雖然監控裝置131的監控動作本身獨立於主系統外,但是對於一些實時狀態信息的取得與控制則仍然可由主系統透過定義的協議指令來對監控裝置131執行。在較佳實施例中,監控裝置131包含有(1) 監控單元1311,可以於計算機可執行平臺100啟動時,即主動對連接在 SATA背板130上的SATA硬碟140直接進行狀態監控,並將各個SATA硬碟 140 (SATA硬碟a…SATA硬碟n)所回傳的信息儲存起來,等待根據主系統所發出的協議指令來-執行對應的動作。監控單元1311 —般是微處理器(Micr叩rocessor),裡面通常包含有可用以執行監控及與主系統溝通的韌體(圖中未顯示)。(2) 儲存單元1312,直接與監控單元1311連接並由監控單元1311負責控制, 主要負責儲存前述由SATA硬碟140所回傳的狀態信息,並且當透過燈號顯示單 元1314來顯示各個SATA硬碟140的實時狀態時,也可以被用來記錄各個燈號 顯示單元1314中的狀態信息。(3) 通訊接口 1313,用以與監控單元1311連接,負責監控單元1311與主系 統間的協議指令傳遞溝通,通常當使用者欲透過計算機可執行平臺100中的監 控軟體(圖中未顯示)實時監控各個SATA硬碟140的狀態時,則可以透過監控軟 件發出所定義的協議指令,由中央處理單元110接收後由輸出/入控制單元120 傳遞到監控裝置131中再透過通訊接口 1313傳送給監控單元1311處理。而監 控單元1311根據協議指令所完成的動作也將產生對應的信息透過同樣的管道回 傳至監控軟體中,提供使用者知悉。在較佳實施例中,為了減少監控裝置131與主系統之間溝通的電路實現上 佔用過多的硬體空間,可以選擇以系統管理總線(System Management Bus,簡 稱SMBus)來作為實現通訊接口 1313的具體態樣,此種系統管理總線基本上是 一種以It (Inter Integrated Circuit)為基礎的簡單雙線(two-wire)且雙向 的序列(serial)界面,而TC則是一種高效率的總線。因此,不僅可以有效率的 實現監控動作並且在硬體實現上也比較不佔用空間。(4) 燈號顯示單元1314,亦與監控單元1311連接,可以依照監控單元1311 的控制使燈號顯示對應的SATA硬碟140狀態。燈號顯示單元1314中包含有多 個燈號顯示組件(圖中未顯示),目前習知的燈號顯示組件為發光二極體(LED), 在與監控單元1311間的信號控制上可以實現每個燈號顯示組件都對應到一個 SATA硬碟140的狀態顯示,或者可以用多個燈號顯示組件的開/閉狀態組合來顯 示一種特定的狀態信息,實際信號控制電路的實現方法可以依照不同定義的協 議指令來作配合,在此並不特別作局限。為了能夠識別各個SATA硬碟140,本發明可以利用SATA硬碟140內置的預設碼來輔助識別,實現上可以在監控裝置131中另外新增一個識別單元(圖中未示),專門用來處理對SATA硬碟140的預設碼的讀取及識別,識別結果將傳回 給監控單元1311。為了能夠取得監控裝置131的監控狀態並對監控裝置131進行一些必要的 顯示控制手段,前面提到必須要在主系統與監控裝置131間提供信息溝通傳遞 上必要的協議指令,才能夠進一步透過主系統(或者監控軟體)來做進一步的控 制,以下就針對幾個必要的協議指令來作說明,實際的協議指令可以依照不同 的監控需求進行必要的修改與擴充,不限定於以下說明的幾種協議指令而已在較佳實施例當中,所定義的協議指令符合SMBus /It格式的協議指令, 依照其作動類型可以被分為兩種 一是寫入指令(以下稱第一協議指令)200,如 圖2A所示; 一是讀取指令(以下稱第二協議指令)300,如圖2B所示。第一協議指令200中,本發明所定義的欄位部分包括指令碼210、指令 a220及指令b230;第二協議指令300中,本發明所定義的欄位部分包括指令 碼310、指令a320及指令b330,其餘部分包括起始位(S)、確認位(A)、重新 起始位(RS)、非確認位(NACK)、結束位(P)…則均依照系統管理總線(System Management Bus,簡稱SMBus)的協議指令來定義即可。其中,"指令"欄位的 長度均為一個位組長度(即8個位),第一協議指令200的欄位長度可以依照增 加寫入到監控裝置131中數據內容的需求來增加關於"指令"的部分,因此整 體第一協議指令200的長度可能會較第二協議指令300的欄位長度要長。為了有效實現透過主系統對監控裝置的溝通,本發明至少定義了八種有關 讀取/寫入的第一協議指令/第二協議指令,分別說明如下第一協議指令(配合參考圖2A),包括 .(1) 寫入燈號顯示指令,在指令碼210的部分其值以16進位表示為0x01, 代表指令a220的第1位元組可以透過將位設定為0/1的二元標誌值(Flag Value) 來表示所要處理的狀態(以下所有協議指令中的指令欄位均以此實現),用以分 別設定燈號顯示單元1314中8個不同燈號顯示組件的開啟/關閉狀態,以顯示 不同對應SATA硬碟140的狀態,或者也可以透過燈號的顯示組合來反映某種監 控狀態。例如,當每個燈號顯示組件分別代表單一對應的SATA硬碟140時,指 令a220中的內容假設為01000000,則表示只有第2個位置的燈號顯示組件需要 被設定為開啟狀態。當監控單元1311收到此第一協議指令200時,則可以驅動 燈號顯示單元1314中的對應燈號顯示組件(圖中未顯示)進行開啟的動作。當所要監控的SATA硬碟超出8個以上或者有更多的狀態要顯示時,則可以 適當的使用指令b230的內容來進行設定。(2) 寫入SATA硬碟電源指令,在指令碼210的部分其值以16進位表示為 0x02,同樣的代表指令a220的第1位元組可用以分別設定對應SATA硬碟140電 源的開啟/關閉狀態,例如若指令a220中的內容為00100000,則對應第3個 位的SATA硬碟140的電源必須開啟,其餘電源則關閉。當所要監控的SATA硬碟超出8個以上時,則可以進一步使用指令b230的 欄位內容來進行擴充上的設定。(3)寫入燈號閃爍顯示指令,指令碼210的部分以16進位0x03表示,指 令a220的部分可以用來控制對應燈號顯示組件的閃爍狀態的開啟/關閉,超過 的部分同樣可以透過指令b230的部分來實現寫入的動作。以上第一協議指令200,多為包含兩個指令(即指令a220及指令b230的部 分),實際應用上可以依照擴充和設定上的需求再增加"指令"的欄位。第二協議指令(配合參考圖2B),則包括(4) 讀取韌體指令,指令碼310的部分以16進位OxFF表示,指令a320的 部分用來提供監控單元1311記錄監控裝置131中監控單元1311的韌體識別碼 (firmware identify code),指令b330則用來記錄韌體版本(firmware version)。(5) 讀取SATA硬碟安裝狀態指令,指令碼310的部分以0x00表示,其中指 令a320可以提供監控單元1311記錄對應SATA硬碟140的安裝狀態。例如 10111110代表第2個位置及第8個位置並未安裝SATA硬碟140,若超過8個以 上SATA硬碟140的安裝狀態偵測,則可利用指令b330的部分來進行。(6) 讀取燈號顯示狀態指令,指令碼310的部分為0x04,可以利用指令a或 者必要時使用到指令b的部分來提供監控單元1311回復有關目前燈號顯示單元 1314中各個對應燈號顯示組件的當前狀態。例如指令a320中01000000的回 覆信息代表著只有第二個位置的燈號顯示組件為開啟狀態,其它燈號顯示組件 則為關閉狀態。(7) 讀取SATA硬碟電源狀態指令,指令碼310為0x05,指令a320與指令 b330的部分可以用來記錄至少8個對應SATA硬碟140的.電源開啟/關閉狀態。(8) 讀取燈號閃爍顯示狀態指令,指令碼310為0x06,同樣可以透過指令 a320與指令b330的部分來記錄對應燈號顯示組件的閃爍狀態的開啟/關閉狀態。以上所述的第一協議指令200與第二協議指令300所提供的寫入/讀取功能 僅為代表性內容,實現上熟悉該項技術者仍可在不脫離本發明所提出的定義格 式卞依照需求自行定義。透過前述的協議指令,則本發明更進一步提供可以透過裝設在SATA背板130 上且獨立於主系統的監控裝置131對連接於SATA背板130上的多個硬碟進行監 控的監控方法,其主要的運作流程如圖3所示,說明如下首先,監控裝置131中的監控單元會在計算機可執行平臺100啟動時開始 偵測連接於SATA背板130上各SATA硬碟140的狀態,並將這些由SATA硬碟140 所主動回傳的信息儲存在儲存單元1312的狀態信息中(步驟400),監控單元 1311根據對各個SATA硬碟140的預設碼進行識別後來產生對應於各個SATA硬 盤140的狀態信息,對SATA硬碟140的識別如前所述可透過額外的識別單元(圖8中未示)來處理,這些狀態信息在儲存單元1312中依照不同的偵測項目分別儲 存以0/l表示的二元標誌值(Flag Value),用以顯示每個SATA硬碟140在不同 偵測項目中所具有的當前狀態。這些偵測項目可以是SATA硬碟140的安裝狀態、 運作狀態…回傳的信息種類視監控單元1311中韌體的設計而定。當SATA背板 130所連接的SATA硬碟140產生狀態改變時(如移除、新增或者故障),通常監 控單元1311會經由韌體的主動偵測而得知,並更新在儲存單元1312中的狀態 信息。當監控單元1311完成對SATA硬碟140的主動偵測後,整個監控裝置131 會將這些回傳信息回傳給主系統中的監控軟體知悉,並同時處於等待主系統指 令的狀態(步驟410),在未接到主系統指令前持續保持等待狀態。此時,主系統中的監控軟體可以根據收到的回傳信息來發出相關的第一協 議指令200,由監控單元1311進行解析後,來控制燈號顯示單元1314的顯示狀 態,使燈號顯示單元1314能夠呈現SATA背板130上正確的SATA硬碟運作狀態(步驟420)。雖然圖3中所顯示的控制燈號顯示單元1314,但是實際上除了控 制燈號顯示外亦可以透過前述其它第一協議指令200來執行對SATA硬碟140的電源開啟/關閉設定,或者燈號顯示單元的閃爍狀態控制…(圖3中未顯示對應 流程)。或者,主系統中的監控軟體可以依照使用者的需要隨時發出第二協議指令 300,由監控單元1311進行解析後,自監控裝置131中讀取對應的狀態信息(步 驟430),如監控單元1311中韌體的版本、SATA硬碟140的電源狀態、SATA 硬碟140的安裝狀態、燈號顯示單元1314的顯示狀態、燈號顯示單元1314的 閃爍狀態…,如同前面所述各種第二協議指令300的作用(圖3中未顯示詳細對 應流程)。運用本發明的監控裝置131及監控方法,對扮演系統設計及研發角色的使用者來說是非常有用的,例如可透過計算機可執行平臺100中的監控軟體來實時讀取和控制SATA硬碟140的狀態,並且主系統的中央處理單元110也無需 額外花費運算資源在處理監控方面,更可藉由定義的協議指令使監控軟體與監 控單元1311之間的溝通接口統一,增加未來在修改監控功能上的可變更彈性。雖然本發明以前述的較佳實施例揭露如上,然其並非用以限定本發明,任 何熟習相像技藝者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤 飾,因此本發明的專利保護範圍須視本說明書所附的申請專利範圍所界定者為 準。
權利要求
1. 一種SATA硬碟的監控裝置,該監控裝置與連接若干個硬碟的SATA背板做電性連接,具有一通訊接口,用以與一主系統連結並透過來自該主系統的一第一協議指令與一第二協議指令進行溝通;若干個燈號顯示單元,用以顯示各該硬碟的狀態;一儲存單元,用以儲存對應各該硬碟及各該燈號顯示單元的一狀態信息;及一監控單元,用以偵測各該硬碟的狀態並儲存回傳的信息於該狀態信息中,及解析該第一協議指令以選擇性控制各該燈號顯示單元並儲存回傳的信息於該狀態信息中;其中,該監控單元解析該第二協議指令自該狀態信息中讀取對應的信息回傳至該主系統。
2. 根據權利要求1所述的SATA硬碟的監控裝置,其特徵在於,該通訊接口為一系統管理總線。
3. 根據權利要求1所述的SATA硬碟的監控裝置,其特徵在於,該第一協議 指令及該第二協議指令為分別基於SMBus /rc格式的寫/讀指令,且該第一協議' 指令及該第二協議指令至少包含一指令碼欄位及兩個指令欄位。
4. 根據權利要求1所述的SATA硬碟的監控裝置,其特徵在於,該監控單元 為一微處理器。
5. 根據權利要求1所述的SATA硬碟的監控裝置,其特徵在於,該監控裝置 更包含一識別單元用以根據各該硬碟的一預設碼來識別各該硬碟。
6. 根據權利要求1所述的SATA硬碟的監控裝置,其特徵在於,該狀態信息 記錄的以0/1代表的二元標誌值。
7. —種SATA硬碟的監控方法,應用於具有若干個硬碟且連結於一主系統的 SATA背板上,包括下列步驟偵測各該硬碟的狀態並儲存回傳信息於一狀態信息中;當接收到來自該主系統的一第一協議指令時,解析該第一協議指令以選擇 性控制若干個燈號顯示單元使各該燈號能夠顯示各該硬碟的狀態,並儲存回傳 的信息至該狀態信息中;及當接收來自該主系統的一第二協議指令時,解析該第二協議指令自該狀態 信息中讀取對應的信息回傳至該主系統。
8. 根據權利要求7所述的SATA硬碟的監控方法,其特徵在於,該第一協議指令及該第二協議指令透過一系統管理總線進行傳遞。
9. 根據權利要求7所述的SATA硬碟的監控方法,其特徵在於,該第一協議指令及該第二協議指令為分別基於SMBus /It格式的寫/讀指令,且該第一協議 指令及該第二協議指令至少包含一指令碼欄位及兩個指令欄位。
10. 根據權利要求7所述的SATA硬碟的監控方法,其特徵在於,該偵測各 該硬碟的狀態並儲存回傳信息於該狀態信息中的步驟,更包含取得各該硬碟的 一預設碼來識別各該硬碟的步驟。
11. 根據權利要求7所述的SATA硬碟的監控方法,其特徵在於,該狀態信 息記錄的以0/1代表的二元標誌值。
全文摘要
本發明提供了一種SATA硬碟的監控裝置及其監控方法,可透過裝設在SATA Serial ATA背板上且獨立於主系統的監控裝置對連接於SATA背板上的多個硬碟進行監控,並在監控裝置上直接提供燈號顯示以可視化方式來顯示各硬碟的狀態,主系統可以透過發送定義的協議指令給監控裝置執行偵測硬碟狀態、控制燈號顯示及讀取狀態信息的操控。
文檔編號G06F11/32GK101231610SQ200710026529
公開日2008年7月30日 申請日期2007年1月26日 優先權日2007年1月26日
發明者郭明義 申請人:佛山市順德區順達電腦廠有限公司;神達電腦股份有限公司