陳劍波,李宗華,侯衛民
(1.中國電子科技集團公司第五十四研究所,河北石家莊050081;2.石家莊水務集團,河北石家莊050021;3.河北科技大學,河北石家莊050000)
傳統的工業總線大多采用共享并行總線方式,將多個處理機、存儲器及外圍設備以緊耦合方式連接在一起。最流行的并行總線形式包括外圍器件互連標準(Peripheral Component Interconnect,PCI)[1]、緊湊型PCI(Compact Peripheral Component Interconnect,CPCI)[2]和 Versa 總線模塊化的歐卡標準(VersaModule Eurocard,VME)等。但隨著具有高可擴展性、高可靠性和高帶寬的高速串行總線技術的發展使得計算機體系結構發生了巨大的變革。傳統的并行總線標準的維護組織如PICMG、VITA,相繼將高速串行互連技術引入已有的PCI、CPCI和VME總線中,制定了ATCA、CPCI Express、VXS和VPX等新的總線標準[3-5]。
本文對比分析了VPX機箱管理和ATCA機箱管理的關系和異同。VITA 46.11是VPX系列規范中專門定義VPX機箱管理方面的規范[6]。PICMG 3.0中的機箱管理部分對ATCA的機箱管理進行了定義,并且已經大量商業應用。
為了滿足對服務器管理的需要,1997年Intel、HP、Dell和NEC四家公司開始制定一個旨在解決無法在單一控制臺上監控不同平臺的服務器的規范,1998年初步提出了IPMI規范,為系統管理人員提供了一套跨平臺管理和監控服務器工作狀態的標準接口[7]。
不同版本PICMG 3.0規范中機箱管理部分分別基于 IPMI V1.0、IPMI V1.5 和 IPMI V2.0,最新版本的PICMG 3.0規范是基于IPMI V2.0的,并且兼容IPMI的早期版本。VITA 46.11是將 IPMI V1.5作為其架構基礎。IPMI V1.5定義的接口、協議、命令和記錄格式以及通用架構的概念和特點都被VITA 46.11所利用。此外,VITA 46.11 也允許開發者利用 IPMI V2.0的擴展部分,但是須遵守PMI V2.0的擴展部分中的規則。
PICMG 3.0規范中有關部分被直接引入到VITA 46.11規范中。在有些情況下,特別是表及其內容,VITA 46.11規范采用的方法就是將PICMG 3.0規范進行適當歸屬的基礎上逐字逐句的照搬。在另一些情況下,VITA 46.11規范將PICMG 3.0規范中的內容進行適當的改述而引用。
VITA 46.11規范與PICMG 3.0規范術語的對照表如表1所示。

表1 術語對照表
VITA 46.11規范直接采用PICMG 3.0規范中大部分的術語和相關定義。由于早期的VPX產品和應用環境中使用了一部分VPX獨有的術語,因此VITA 46.11規范對這些術語進行了修改和重定義,使之與PICMG 3.0規范中的術語能相互對應。
PICMG 3.0從指導思想上就設計成完全徹底地集成系統管理功能,要求前插模塊在其負載電源被使能前,其上的IPMC必須同機箱管理模塊進行復雜的協商處理。
系統管理在VPX平臺中是可選的。事實上,系統管理功能可選是基于大多數VITA 46.11規范設計者的意見。
PICMG 3.0支持 FRU的熱拔插。VITA 46.11不支持FRU的熱拔插。它之所以不支持熱拔插功能是由于VSO標準化組織和相應的工作組目前還沒有形成支持熱拔插的VPX、PMC和XMC模塊[8]。VITA 46.11并不排除將來支持熱拔插功能,只是由于缺少支持熱拔插功能的模塊而使目前的VITA 46.11標準不支持熱拔插功能。另一方面的考慮是為了簡化 VITA 46.11的功能,減少開發和驗證時間。
VITA 46.11不支持PICMG 3.0中的電源管理功能,包括激活模塊之前ShMC和模塊上IPMC之間的上電協商過程。PICMG 3.0電源管理能力是為了增加系統的可靠性。特別是熱拔插時可極大地增加系統的可靠性,因為系統中一些新插入的模塊,如果沒有進行電源管理協商上電就可能由于電源負載能力不足的原因,導致模塊加載失敗或者系統運行不正常。既然VITA 46.11不支持熱拔插,相應的電源管理功能需求也相應地減少。因此請特別注意,VITA 46.11系統用戶應該清楚了解系統的電源能力和將要插入系統中的模塊對電源的要求,以確保系統電源供應不過載,無論何時在VPX模塊插入到系統中時要確保系統供電能力不過載。VITA 46.11可以通過模塊的物理Key提供對系統供電過載的一定程度的保護。
另外,在VPX模塊激活前的上電協商過程將加長整個系統的上電時間,而已部署的VPX系統通常要求快速的系統啟動時間,這對VPX系統很重要,因此VPX系統不支持上電協商過程。
VITA 46.11在將來并不排除增加對模塊的電源管理能力的支持。只是由于目前的VPX系統應用缺少這方面需求,而已部署的VPX系統對快速上電又有強烈要求,以及為了簡化VITA 46.11固件功能和減少開發和驗證時間,才使得目前的VITA 46.11版本不支持電源管理功能。
VITA 46.11不支持PICMG 3.0定義的電子鍵控功能。PICMG 3.0定義電子鍵控功能目的是為了增加系統的可靠性,特別是在熱拔插的情況下。任何插入到不正確槽位的模塊(如果這個不正確安裝的模塊的接口與通過背板互連的其他模塊接口不兼容)可能造成模塊和系統工作不正常。如果接口不是電氣特性兼容,許多情況下會導致一個或多個模塊的物理損壞。既然VITA 46.11不支持熱拔插功能,那么其對電子鍵控功能的需求也相應減少。請注意,VITA 46.0系統用戶應該清楚模塊的能力和將要插入模塊的槽位對模塊的支持能力。機械鍵控可以一定程度上支持和管理模塊和槽位之間的兼容性,并且VITA 46.0系統管腳定義已經考慮盡量避免由于模塊錯插槽位帶來的電氣特性不兼容造成的損壞,但是這種方式的支持是有限的,損壞還是有可能發生的。
此外,在VPX模塊激活前的電子鍵控功能將加長整個系統的上電時間,而已部署的VPX系統通常要求快速的系統啟動時間,這對VPX系統很重要,因此VITA 46.0系統不支持電子鍵控功能。
VITA 46.11在將來并不排除增加對電子鍵控能力的支持。只是由于目前的VPX系統應用缺少這方面要求,已部署VPX系統對快速上電的強烈要求,以及為了簡化VITA 46.11固件功能和減少開發和驗證時間,才使得目前的VITA 46.11版本不支持電子鍵控功能。
VITA 46.11不支持PICMG 3.0定義的硬件平臺管理要求中關于前面板的指示部分,這是由于VITA 46.11 是 VSO(VITA Standards Organization,VITA 標準化組織)的標準,并且它有自己的前面板指示標準VITA 40。PICMG 3.0定義的硬件平臺管理要求中關于前插板面板指示部分主要與熱拔插功能相關,而目前的VITA 46.11版本不支持熱拔插功能,這也是造成兩者前面板的指示部分不相同的原因。
IPMI消息結構是可以擴展的,這允許在IPMI體系架構中產生和使用IPMI規范定義之外的命令。VITA 46.11就利用IPMI消息結構中網絡功能碼的群擴展功能定義VPX機箱管理命令。這使得它既可以利用標準的IPMI消息命令,又可以加入自己的VPX特有的消息命令。群擴展字段網絡功能碼(NetFn,2Ch 和2Dh)被分配給 ATCA[9],分配給Vita標準化組織的字段網絡功能碼(NetFn,03h)被用作VITA 46.11定義的消息命令。
VITA 46.11自定義了一系列IPMI命令,這是VITA 46.11規范所特有的,相對PICMG 3.0硬件平臺管理架構的命令增加的,這些在設計實現中應該加以注意。
ATCA系統機框管理規范也定義了一些命令和消息,但是與IPMI規范有所不同。不同之處主要體現在:IPMI規范規定的必選功能命令在ATCA系統機框管理規范可能是可選項;IPMI規范規定的可選功能命令在ATCA系統機框管理規范可能是必選項;機框管理規范對IPMI規范有擴充,增加了一些功能命令[10]。
VITA 46.11這個規范就是要盡量利用已存在的商業化機箱管理解決方案,如對PICMG 3.0規范的利用。它也提供了在PICMG 3.0中定義的多種高級系統管理特點的應用路線圖,但是它沒有制定支持這些應用的硬件互連兼容性規定。VPX規范與ATCA規范一致的地方只是它們都定義了到各自背板的機箱管理管腳。VPX系統設計者應特別注意以下幾種可選特點的應用。
在PICMG 3.0規范中為了增加系統可靠性,星型IPMB通信鏈路會經常使用。星型IPMB的數量會隨著插入到系統中模塊的數量增加而增加,相對于共享總線,像I2C總線拉死導致的IPMB錯誤的幾率也隨著IPMC數目的增加而增多。
應用星型IPMB通信鏈路并且符合PICMG 3.0規范的背板一般都是廠商定制的。機箱管理中星型IPMB通信鏈路的管腳是由廠商特有的應用而自定義的。使用星型IPMB拓撲的符合PICMG 3.0規范的模塊和背板通常都不能在不同廠家間交叉使用。一般情況下,機箱制造廠商要同時提供背板和機箱管理模塊。但是在星型 IPMB拓撲中符合PICMG 3.0規范機箱的FRU信息的數據結構是獨立于其具體應用方式,是可以統一起來的。
VITA 46.11 規范中的 9.1.3 節大體上概括了VPX系統中星型IPMB通信鏈路的要求,但是它故意沒有提供硬件方面對該應用的支持。因此,系統集成者應負責具有星型IPMB拓撲的VPX系統的硬件管腳的兼容性。在星型IPMB拓撲中符合VITA 46.11規范機箱的表項和數據結構等也是獨立于其具體應用和拓撲方式的。
例如一個具有系統IPMB Hub的VPX插入模塊,它上面就具有超過兩對的IPMB鏈路,這種情況下需要用戶自定義背板IPMB鏈路管腳信號了。VITA 46.11規范只在VPX P0/J0連接器上定義了一個基本的機箱管理系統接口(兩對基于I2C通道的總線型系統拓撲),如表2[11]所示。因此,VPX系統中的星型IPMB應用應由生產廠商提供自定義的背板。

表2 總線型IPMB的VPX背板管腳定義
VITA 46.11規范中定義了一種系統架構如圖1所示。
1個系統管理和2個冗余的機箱管理,并建議這2個機箱管理是互為冗余備份和對等的,其中一個機箱管理處于激活狀態,另一個處于備份狀態。然而在VITA 46.11規范中卻同樣故意沒有定義支持機箱管理冗余備份功能的鏈路管腳,而讓VPX系統集成者來負責具有冗余備份機箱管理功能的VPX系統的硬件管腳兼容性。
在PICMG 3.0規范中,也是故意的沒有定義支持避免和減少機箱管理網絡通信失敗的冗余硬件支持措施,而該功能的實現是交由生產廠商自行定義[12]。
通過分析和對比VPX機箱管理與ATCA機箱管理之間的關系,以及它們之間的相同點和不同點,幫助那些熟悉ATCA規范的開發者理解IPMI規范如何被應用到VITA 46.11規范中去;幫助這些開發者參考ATCA規范中機箱管理部分來理解VITA 46.11相關部分的細節和內容,了解它是如何從ATCA規范中派生發展而來的;同時也使這些開發者能夠更好地體會到2種規范基于不同市場定位而產生的區別。
[1] 滑 偉.一種PCI總線接口的數據接收卡設計[J].無線電通信技術,2013,39(4):53 -55,92.
[2] 邢占春,曹芳菊,黃進燕.基于CPCI總線的多卡實現32路采集平臺設計[J].無線電工程,2014,44(4):77-80.
[3] 張喜明,陳 旸.基于VPX標準總線的GPGPU平臺的圖像幾何校正[J].無線電工程,2014,44(1):53 -55.
[4] 張 博,劉子逸.基于PES32NT24AG2芯片的PCIe交換器的實現[J].無線電通信技術,2014,40(3):79 -81.
[5] 鄭東衛,陳 矛,羅丁利.VPX總線的技術規范及應用[J].火控雷達技術,38(4):73-77.
[6] ANSI/VITA 46.0.VPX Baseline Standard,2007[S].
[7] 于治樓,陳乃闊,牛玉峰.基于IPM I的服務器遠程管理的研究與實現[J].信息技術與信息化,2010(1):36-38.
[8] 張麗君.基于IP核的 PCI接口 FPGA設計實現[J].無線電通信技術,2013,39(1):91 -93.
[9] PICMG 3.0 Revision 3.0.Advanced TCA Base Specification[S].
[10]梅建超.IPMI在 ATCA系統中的應用與架構設計[J].數字技術與應用.2011(4):56 -58.
[11] VITA 46.11.System Management on VPX Draft Revision 0.11[S].
[12]李嵩泉,蔣海玲.衛星通信系統主備網控中心設計[J].無線電通信技術,2014,40(3):13-16.