SES機箱管理知識回顧(五)之SGPIO

       之前回顧了SES的基礎知識以及幾種在實際應用下的實現方式,最後說一下SGPIO,通用串行輸入/輸出總線。很多做硬件設計的同學對GPIO,通用輸入/輸出非常的瞭解,而SGPIO是把通用目的I/O信號來串行化的一種方法。SGPIO定義了Initiator初始端(比如一個主機適配器)Target目的端(比如放置磁盤的背板)之間的通信,通常情況下Target目的端可以把Initiator初始端的輸出信號轉換成多個並行的LED信號。

      其實SGPIO是和SES沒有任何關係的標準,SES是通過SCSI的命令集來實現對磁盤狀態燈、溫度、風扇等元素的管理,而SGPIO相對於SES來說功能簡單的很多,僅僅是對磁盤狀態燈的管理。比如,RAID5組中的某個磁盤由於ECC錯誤導致“Failed”掉線,RAID5變成Degraded降級狀態,而這個時候Initiator控制端比如卡或者控制器等,可以通過SGPIO來讓那顆磁盤的狀態燈變成紅色,從而系統管理員可以發現並更換問題磁盤。

        SGPIO總線共有四個信號線,分別是SClockSLoadSDataOutSDataIn,如下圖所示,其中前3個是從Initiator發送到Target的,而最後一個是從Target發送到InitiatorSClock是時鐘信號,SLoad是一個位流傳輸的最後時鐘,SDataOut是串行的數據輸出位流,而SDataIn是串行的數據輸入位流,SDataIn不是所有的SGPIO設備都支持的,是可選的。

 

          SGPIO總線通過以上4組信號就可以控制磁盤燈的狀態,一般來說支持3種狀態,ActivityLocateError。這是一個相對比較獨立的標準,因爲它獨立的定義了物理層、協議層和應用層等等。在實際的應用中,目前最爲流行的莫過於在SAS HBA或者RAID卡的X4寬接口中,如果卡端支持SGPIO的話,這種寬接口標準正好包含了除了數據通路之外的SGPIO信號接口,如下圖所示,通過一個統一的包含數據、SGPIO信號的線纜就可以實現數據的傳輸以及磁盤信號燈的控制,實現方式比較簡單。SES Over I2C是通過卡上面的I2C接口採用特殊的線纜來管理,所以可以稱作帶外管理;而對於SGPIO來說,可以稱作帶內管理。

        當然,除了卡支持SGPIO外,磁盤背板也需要支持SGPIO,而目前最爲流行的是採用AMI公司的9071/9072芯片,這種芯片支持兩種方式的機箱管理,一種是SES Over I2C,另外一種就是SGPIO。對於SGPIO標準的詳細定義,可以參照SFF-8485的規格書,由SFF標準委員會制定,  [url]ftp://ftp.seagate.com/sff[/url]

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章