一種基于PCIe總線多主控板冗余備份系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種基于PCIe總線多主控板冗余備份系統(tǒng),包括:主板電路A(12)、主板電路B(13)、主板電路C(14)、PCIe交換電路(15)、FC通道卡電路(10)和PCIeRaid卡電路(11)。系統(tǒng)上電后,測試計算機(jī)將初始配置文件傳送到PCIe管理芯片(7)中,然后PCIe管理芯片(7)將初始配置文件燒寫到串行EEPROM(8)中。燒寫完畢后,重新啟動系統(tǒng),PCIe管理芯片(7)通過SMBus總線讀取串行EEPROM(8)的初始配置文件,用于配置PCIe管理芯片(7)的端口寄存器、分區(qū)模式及時鐘模式。本發(fā)明實現(xiàn)了多主控板冗余備份系統(tǒng)出現(xiàn)故障時進(jìn)行實時切換系統(tǒng),提高了系統(tǒng)的實時性。
【專利說明】[0001] 一種基于PCIe總線多主控板冗余備份系統(tǒng)
【技術(shù)領(lǐng)域】
[0002] 本發(fā)明涉及一種多主控板冗余備份系統(tǒng),特別是一種基于PCIe總線多主控板冗 余備份系統(tǒng)。
【背景技術(shù)】
[0003] 多主控板冗余備份系統(tǒng)主要用于高安全、高可靠性系統(tǒng)應(yīng)用,當(dāng)系統(tǒng)出現(xiàn)異常時 能進(jìn)行故障定位和備份系統(tǒng)切換。以往的多主控板冗余備份系統(tǒng),包括:主板、PCI外設(shè)板 卡、板卡狀態(tài)監(jiān)測系統(tǒng)、I2C控制器、CPU處理器和BMC控制器。板卡狀態(tài)監(jiān)測系統(tǒng)用于采 集板卡上的電壓、電流和溫度信號,檢測系統(tǒng)運行狀態(tài)是否正常。但是以往的多主控板冗 余備份系統(tǒng)是基于CPCI總線的容錯計算機(jī),當(dāng)備份系統(tǒng)切換時,需重啟計算機(jī)系統(tǒng)以便于 對PCI設(shè)備進(jìn)行重新枚舉并分配空間,此過程不能滿足高性能實時計算機(jī)的要求,而基于 CPCI總線的計算機(jī)系統(tǒng)已不能滿足微處理器、存儲器和互連網(wǎng)絡(luò)的高速發(fā)展對數(shù)據(jù)高速傳 輸處理的要求。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的目的在于提供一種基于PCIe總線多主控板冗余備份系統(tǒng),解決傳統(tǒng)基 于CPCI總線的計算機(jī)系統(tǒng)切換系統(tǒng)時需重啟計算機(jī)系統(tǒng)以及CPCI總線不能滿足微處理 器、存儲器和互連網(wǎng)絡(luò)的高速發(fā)展對數(shù)據(jù)高速傳輸處理的問題。
[0005] -種基于PCIe總線多主控板冗余備份系統(tǒng),包括:主板電路A、主板電路B、主板電 路C、PCIe交換電路、FC通道卡電路和PCIe Raid卡電路,其中主板電路A包括:CPU處理器 A和PCIe控制器A,主板電路B包括:CPU處理器B和PCIe控制器B,主板電路C包括:CPU 處理器C和PCIe控制器C,PCIe交換電路包括:PCIe管理芯片、串行EEPR0M和時鐘芯片。 [0006] PCIe控制器A通過PCIe總線與PCIe管理芯片的端口 a雙向連接,PCIe控制器B 通過PCIe總線與PCIe管理芯片的端口 b雙向連接,PCIe控制器C通過PCIe總線與PCIe 管理芯片的端口 c雙向連接,測試計算機(jī)通過SMBus總線與PCIe管理芯片雙向連接,F(xiàn)C通 道卡電路通過PCIe總線與PCIe管理芯片的端口 e雙向連接,PCIe Raid卡電路通過PCIe 總線與PCIe管理芯片的端口 d雙向連接;在主板電路A中,CPU處理器A與PCIe控制器A 雙向連接;在主板電路B中,CPU處理器B與PCIe控制器B雙向連接;在主板電路C中,CPU 處理器C與PCIe控制器C雙向連接;在PCIe交換電路中,PCIe管理芯片與串行EEPR0M通 過SMBus總線雙向連接,時鐘芯片的輸出端與PCIe管理芯片的輸入端連接。
[0007] 基于PCIe總線的多主控板冗余備份系統(tǒng)上電后,首先測試計算機(jī)將初始配置文 件通過SMBus總線傳送到PCIe管理芯片中,然后PCIe管理芯片將初始配置文件通過SMBus 總線燒寫到串行EEPR0M中,完成初始配置文件的燒寫。初始配置文件的內(nèi)容為對PCIe管 理芯片的設(shè)置,包括:設(shè)置端口 a為復(fù)合工作模式,即端口 a同時作為上行端口和非透明橋, 表示為P2P+NT,端口 b的設(shè)置和端口 a相同;設(shè)置端口 c為單一工作模式,即端口 c只作為 非透明橋,表示為NT ;設(shè)置端口 d為單一工作模式,即端口 d只作為下行端口,表示為P2P, 端口 e的設(shè)置和端口 d相同;設(shè)置分區(qū)k包含端口 a和端口 d ;設(shè)置分區(qū)m包含端口 b和端 口 e ;設(shè)置分區(qū)η包含端口 c ;設(shè)置PCIe管理芯片的時鐘模式為全局時鐘模式。
[0008] 燒寫完畢后,重新啟動系統(tǒng),PCIe管理芯片通過SMBus總線讀取串行EEPR0M的初 始配置文件,用于配置PCIe管理芯片的端口寄存器、分區(qū)模式及時鐘模式。配置完畢后, PCIe管理芯片將分區(qū)k中的端口 a和端口 d連通,此時PCIe Raid卡電路作為CPU處理器 A的下游PCIe設(shè)備;PCIe管理芯片將分區(qū)m中的端口 b和端口 e連通,此時FC通道卡電路 作為CPU處理器B的下游PCIe設(shè)備;PCIe管理芯片將分區(qū)η中端口 c的工作模式設(shè)為非 透明橋,此時CPU處理器C沒有下游的PCIe設(shè)備,CPU處理器C作為備用主板電路,用于接 管CPU處理器A或CPU處理器B出現(xiàn)故障時對應(yīng)的下游PCIe設(shè)備;PCIe管理芯片由時鐘 芯片提供全局時鐘。然后,CPU處理器A對PCIe Raid卡電路進(jìn)行PCIe設(shè)備掃描完成系統(tǒng) 枚舉,CPU處理器B對FC通道卡電路進(jìn)行PCIe設(shè)備掃描完成系統(tǒng)枚舉,CPU處理器C同樣 進(jìn)行PCIe設(shè)備掃描完成系統(tǒng)枚舉,最后正常啟動各自的操作系統(tǒng)。
[0009] 待CPU處理器A、CPU處理器B、CPU處理器C正常啟動各自操作系統(tǒng)后,由CPU處 理器A、CPU處理器B通過非透明橋向CPU處理器C發(fā)送心跳信息,若CPU處理器C在1秒 內(nèi)分別收到CPU處理器A和CPU處理器B發(fā)送的心跳信息,則CPU處理器C仍處于備用狀 態(tài),繼續(xù)檢測CPU處理器A和CPU處理器B發(fā)送的心跳信息。當(dāng)CPU處理器A出現(xiàn)異常時, CPU處理器A停止向CPU處理器C發(fā)送心跳信息,CPU處理器C在1秒內(nèi)沒有收到CPU處理 器A發(fā)來的心跳信息,則觸發(fā)CPU處理器C的故障恢復(fù)功能:由CPU處理器C動態(tài)的將PCIe 管理芯片端口 c的工作模式由非透明橋改為上行端口加非透明橋,將PCIe管理芯片分區(qū)k 中的端口 d去掉,將PCIe管理芯片端口 d加入到分區(qū)n,將PCIe管理芯片端口 a的工作模 式由上行端口加非透明橋改為非透明橋。然后CPU處理器C進(jìn)行PCIe總線掃描和設(shè)備的 重新枚舉,以識別新加入到CPU處理器C的PCIe Raid卡電路設(shè)備。這樣PCIe管理芯片的 端口 c和端口 d連通并屬于同一個分區(qū)n,PCIe Raid卡電路作為CPU處理器A的PCIe設(shè) 備轉(zhuǎn)為作為CPU處理器C的PCIe設(shè)備。當(dāng)CPU處理器B出現(xiàn)異常時,其處理過程與CPU處 理器A出現(xiàn)異常時相同。
[0010] 當(dāng)CPU處理器A、CPU處理器B工作狀態(tài)都異常時,則同樣觸發(fā)CPU處理器C的故 障恢復(fù)功能:將CPU處理器C對應(yīng)PCIe管理芯片端口 C的工作模式動態(tài)的由非透明橋改為 上行端口加非透明橋,將CPU處理器A、CPU處理器B的下游PCIe設(shè)備都切換到CPU處理器 C的下游PCIe設(shè)備,將CPU處理器A、CPU處理器B對應(yīng)PCIe管理芯片端口 a和端口 b的 工作模式動態(tài)的由上行端口加非透明橋改為非透明橋。
[0011] 本發(fā)明實現(xiàn)了基于PCIe總線的多主控板冗余備份系統(tǒng),使得系統(tǒng)能夠應(yīng)對某塊 甚至某幾塊主板異常的情況,提高了系統(tǒng)的抗風(fēng)險能力;適用于對系統(tǒng)穩(wěn)定性、可靠性具有 很高要求的場合。
【專利附圖】
【附圖說明】
[0012] 圖1 一種基于PCIe總線多主控板冗余備份系統(tǒng)的結(jié)構(gòu)示意圖。
[0013] 1. CPU處理器A 2. PCIe控制器A 3. CPU處理器B 4. PCIe控制器B 5. CPU處 理器C 6.PCIe控制器C 7.PCIe管理芯片8.串行EEPROM 9.時鐘芯片10. FC通道卡 電路11. PCIe Raid卡電路12.主板電路A 13.主板電路B 14.主板電路C 15. PCIe交 換電路。
【具體實施方式】
[0014] 一種基于PCIe總線多主控板冗余備份系統(tǒng),包括:主板電路A12、主板電路B13、 主板電路C14、PCIe交換電路15、FC通道卡電路10和PCIe Raid卡電路11,其中主板電路 A12包括:CPU處理器A1和PCIe控制器A2,主板電路B13包括:CPU處理器B3和PCIe控制 器B4,主板電路C14包括:CPU處理器C5和PCIe控制器C6, PCIe交換電路15包括:PCIe 管理芯片7、串行EEPR0M8和時鐘芯片9。
[0015] PCIe控制器A2通過PCIe總線與PCIe管理芯片7的端口 a雙向連接,PCIe控制 器B4通過PCIe總線與PCIe管理芯片7的端口 b雙向連接,PCIe控制器C6通過PCIe總線 與PCIe管理芯片7的端口 c雙向連接,測試計算機(jī)通過SMBus總線與PCIe管理芯片7雙 向連接,F(xiàn)C通道卡電路10通過PCIe總線與PCIe管理芯片7的端口 e雙向連接,PCIe Raid 卡電路11通過PCIe總線與PCIe管理芯片7的端口 d雙向連接;在主板電路A12中,CPU 處理器A1與PCIe控制器A2雙向連接;在主板電路B13中,CPU處理器B3與PCIe控制器 B4雙向連接;在主板電路C14中,CPU處理器C5與PCIe控制器C6雙向連接;在PCIe交換 電路15中,PCIe管理芯片7與串行EEPR0M8通過SMBus總線雙向連接,時鐘芯片9的輸出 端與PCIe管理芯片7的輸入端連接。
[0016] 基于PCIe總線的多主控板冗余備份系統(tǒng)上電后,首先測試計算機(jī)將初始配置文 件通過SMBus總線傳送到PCIe管理芯片7中,然后PCIe管理芯片7將初始配置文件通過 SMBus總線燒寫到串行EEPR0M8中,完成初始配置文件的燒寫。初始配置文件的內(nèi)容為對 PCIe管理芯片7的設(shè)置,包括:設(shè)置端口 a為復(fù)合工作模式,即端口 a同時作為上行端口和 非透明橋,表示為P2P+NT,端口 b的設(shè)置和端口 a相同;設(shè)置端口 c為單一工作模式,即端口 c只作為非透明橋,表示為NT ;設(shè)置端口 d為單一工作模式,即端口 d只作為下行端口,表示 為P2P,端口 e的設(shè)置和端口 d相同;設(shè)置分區(qū)k包含端口 a和端口 d ;設(shè)置分區(qū)m包含端口 b和端口 e ;設(shè)置分區(qū)η包含端口 c ;設(shè)置PCIe管理芯片7的時鐘模式為全局時鐘模式。
[0017] 燒寫完畢后,重新啟動系統(tǒng),PCIe管理芯片7通過SMBus總線讀取串行EEPR0M8 的初始配置文件,用于配置PCIe管理芯片7的端口寄存器、分區(qū)模式及時鐘模式。配置完 畢后,PCIe管理芯片7將分區(qū)k中的端口 a和端口 d連通,此時PCIe Raid卡電路11作為 CPU處理器A1的下游PCIe設(shè)備;PCIe管理芯片7將分區(qū)m中的端口 b和端口 e連通,此時 FC通道卡電路10作為CPU處理器B3的下游PCIe設(shè)備;PCIe管理芯片7將分區(qū)η中端口 c的工作模式設(shè)為非透明橋,此時CPU處理器C5沒有下游的PCIe設(shè)備,CPU處理器C5作 為備用主板電路,用于接管CPU處理器A1或CPU處理器B3出現(xiàn)故障時對應(yīng)的下游PCIe設(shè) 備;PCIe管理芯片7由時鐘芯片9提供全局時鐘。然后,CPU處理器A1對PCIe Raid卡電 路11進(jìn)行PCIe設(shè)備掃描完成系統(tǒng)枚舉,CPU處理器B3對FC通道卡電路10進(jìn)行PCIe設(shè) 備掃描完成系統(tǒng)枚舉,CPU處理器C5同樣進(jìn)行PCIe設(shè)備掃描完成系統(tǒng)枚舉,最后正常啟動 各自的操作系統(tǒng)。
[0018] 待CPU處理器Al、CPU處理器B3、CPU處理器C5正常啟動各自操作系統(tǒng)后,由CPU 處理器Al、CPU處理器B3通過非透明橋向CPU處理器C5發(fā)送心跳信息,若CPU處理器C5 在1秒內(nèi)分別收到CPU處理器A1和CPU處理器B3發(fā)送的心跳信息,則CPU處理器C5仍處 于備用狀態(tài),繼續(xù)檢測CPU處理器A1和CPU處理器B3發(fā)送的心跳信息。當(dāng)CPU處理器A1 出現(xiàn)異常時,CPU處理器A1停止向CPU處理器C5發(fā)送心跳信息,CPU處理器C5在1秒內(nèi)沒 有收到CPU處理器A1發(fā)來的心跳信息,則觸發(fā)CPU處理器C5的故障恢復(fù)功能:由CPU處理 器C5動態(tài)的將PCIe管理芯片7端口 c的工作模式由非透明橋改為上行端口加非透明橋,將 PCIe管理芯片7分區(qū)k中的端口 d去掉,將PCIe管理芯片7端口 d加入到分區(qū)n,將PCIe 管理芯片7端口 a的工作模式由上行端口加非透明橋改為非透明橋。然后CPU處理器C5 進(jìn)行PCIe總線掃描和設(shè)備的重新枚舉,以識別新加入到CPU處理器C5的PCIe Raid卡電路 11設(shè)備。這樣PCIe管理芯片7的端口 c和端口 d連通并屬于同一個分區(qū)n,PCIe Raid卡 電路11作為CPU處理器A1的PCIe設(shè)備轉(zhuǎn)為作為CPU處理器C5的PCIe設(shè)備。當(dāng)CPU處 理器B3出現(xiàn)異常時,其處理過程與CPU處理器A1出現(xiàn)異常時相同。
[0019] 當(dāng)CPU處理器A1、CPU處理器B3工作狀態(tài)都異常時,則同樣觸發(fā)CPU處理器C5的 故障恢復(fù)功能:將CPU處理器C5對應(yīng)PCIe管理芯片7端口 C的工作模式動態(tài)的由非透明 橋改為上行端口加非透明橋,將CPU處理器Al、CPU處理器B3的下游PCIe設(shè)備都切換到 CPU處理器C5的下游PCIe設(shè)備,將CPU處理器A1、CPU處理器B3對應(yīng)PCIe管理芯片7端 口 a和端口 b的工作模式動態(tài)的由上行端口加非透明橋改為非透明橋。
【權(quán)利要求】
1. 一種基于PCIe總線多主控板冗余備份系統(tǒng),其特征在于包括:主板電路A (12)、主 板電路B (13)、主板電路C (14)、PCIe交換電路(15)、FC通道卡電路(10)和PCIeRaid卡 電路(11),其中主板電路A (12)包括:CPU處理器A (1)和PCIe控制器A (2),主板電路 B (13)包括:CPU處理器B (3)和PCIe控制器B (4),主板電路C (14)包括:CPU處理器C (5)和PCIe控制器C (6),PCIe交換電路(15)包括:PCIe管理芯片(7)、串行EEPROM (8) 和時鐘芯片(9); PCIe控制器A (2)通過PCIe總線與PCIe管理芯片(7)的端口 a雙向連接,PCIe控制 器B (4)通過PCIe總線與PCIe管理芯片(7)的端口 b雙向連接,PCIe控制器C (6)通過 PCIe總線與PCIe管理芯片(7)的端口 c雙向連接,測試計算機(jī)通過SMBus總線與PCIe管 理芯片(7)雙向連接,F(xiàn)C通道卡電路(10)通過PCIe總線與PCIe管理芯片(7)的端口 e雙 向連接,PCIe Raid卡電路(11)通過PCIe總線與PCIe管理芯片(7)的端口 d雙向連接;在 主板電路A (12)中,CPU處理器A (1)與PCIe控制器A (2)雙向連接;在主板電路B (13) 中,CPU處理器B (3)與PCIe控制器B (4)雙向連接;在主板電路C (14)中,CPU處理器C (5)與PCIe控制器C (6)雙向連接;在PCIe交換電路(15)中,PCIe管理芯片(7)與串行 EEPROM (8)通過SMBus總線雙向連接,時鐘芯片(9)的輸出端與PCIe管理芯片(7)的輸入 端連接; 基于PCIe總線的多主控板冗余備份系統(tǒng)上電后,首先測試計算機(jī)將初始配置文件通 過SMBus總線傳送到PCIe管理芯片(7)中,然后PCIe管理芯片(7)將初始配置文件通過 SMBus總線燒寫到串行EEPROM (8)中,完成初始配置文件的燒寫;初始配置文件的內(nèi)容為 對PCIe管理芯片(7)的設(shè)置,包括:設(shè)置端口 a為復(fù)合工作模式,即端口 a同時作為上行端 口和非透明橋,表示為P2P+NT,端口 b的設(shè)置和端口 a相同;設(shè)置端口 c為單一工作模式, 即端口 c只作為非透明橋,表示為NT ;設(shè)置端口 d為單一工作模式,即端口 d只作為下行端 口,表示為P2P,端口 e的設(shè)置和端口 d相同;設(shè)置分區(qū)k包含端口 a和端口 d;設(shè)置分區(qū)m 包含端口 b和端口 e ;設(shè)置分區(qū)η包含端口 c ;設(shè)置PCIe管理芯片(7)的時鐘模式為全局時 鐘模式; 燒寫完畢后,重新啟動系統(tǒng),PCIe管理芯片(7)通過SMBus總線讀取串行EEPROM (8) 的初始配置文件,用于配置PCIe管理芯片(7)的端口寄存器、分區(qū)模式及時鐘模式;配置完 畢后,PCIe管理芯片(7)將分區(qū)k中的端口 a和端口 d連通,此時PCIe Raid卡電路(11)作 為CPU處理器A (1)的下游PCIe設(shè)備;PCIe管理芯片(7)將分區(qū)m中的端口 b和端口 e連 通,此時FC通道卡電路(10)作為CPU處理器B (3)的下游PCIe設(shè)備;PCIe管理芯片(7) 將分區(qū)η中端口 c的工作模式設(shè)為非透明橋,此時CPU處理器C (5)沒有下游的PCIe設(shè) 備,CPU處理器C (5)作為備用主板電路,用于接管CPU處理器A (1)或CPU處理器B (3) 出現(xiàn)故障時對應(yīng)的下游PCIe設(shè)備;PCIe管理芯片(7)由時鐘芯片(9)提供全局時鐘;然后, CPU處理器A (1)對PCIe Raid卡電路(11)進(jìn)行PCIe設(shè)備掃描完成系統(tǒng)枚舉,CPU處理器 B (3)對FC通道卡電路(10)進(jìn)行PCIe設(shè)備掃描完成系統(tǒng)枚舉,CPU處理器C (5)同樣進(jìn) 行PCIe設(shè)備掃描完成系統(tǒng)枚舉,最后正常啟動各自的操作系統(tǒng); 待CPU處理器A (1)、CPU處理器B (3)、CPU處理器C (5)正常啟動各自操作系統(tǒng)后, 由CPU處理器A (1)、CPU處理器B (3)通過非透明橋向CPU處理器C (5)發(fā)送心跳信息, 若CPU處理器C (5)在1秒內(nèi)分別收到CPU處理器A (1)和CPU處理器B (3)發(fā)送的心 跳信息,則CPU處理器C (5)仍處于備用狀態(tài),繼續(xù)檢測CPU處理器A (1)和CPU處理器B (3)發(fā)送的心跳信息;當(dāng)CPU處理器A (1)出現(xiàn)異常時,CPU處理器A (1)停止向CPU處理 器C (5)發(fā)送心跳信息,CPU處理器C (5)在1秒內(nèi)沒有收到CPU處理器A (1)發(fā)來的心跳 信息,則觸發(fā)CPU處理器C (5)的故障恢復(fù)功能:由CPU處理器C (5)動態(tài)的將PCIe管理 芯片(7)端口 c的工作模式由非透明橋改為上行端口加非透明橋,將PCIe管理芯片(7)分 區(qū)k中的端口 d去掉,將PCIe管理芯片(7)端口 d加入到分區(qū)n,將PCIe管理芯片(7)端 口 a的工作模式由上行端口加非透明橋改為非透明橋;然后CPU處理器C (5)進(jìn)行PCIe總 線掃描和設(shè)備的重新枚舉,以識別新加入到CPU處理器C (5)的PCIe Raid卡電路(11)設(shè) 備;這樣PCIe管理芯片(7)的端口 c和端口 d連通并屬于同一個分區(qū)n,PCIe Raid卡電路 (11)作為CPU處理器A (1)的PCIe設(shè)備轉(zhuǎn)為作為CPU處理器C (5)的PCIe設(shè)備;當(dāng)CPU 處理器B (3)出現(xiàn)異常時,其處理過程與CPU處理器A (1)出現(xiàn)異常時相同; 當(dāng)CPU處理器A (1)、CPU處理器B (3)工作狀態(tài)都異常時,則同樣觸發(fā)CPU處理器C (5)的故障恢復(fù)功能:將CPU處理器C (5)對應(yīng)PCIe管理芯片(7)端口 c的工作模式動態(tài)的 由非透明橋改為上行端口加非透明橋,將CPU處理器A (1)、CPU處理器B (3)的下游PCIe 設(shè)備都切換到CPU處理器C (5)的下游PCIe設(shè)備,將CPU處理器A (1)、CPU處理器B (3) 對應(yīng)PCIe管理芯片(7)端口 a和端口 b的工作模式動態(tài)的由上行端口加非透明橋改為非 透明橋。
【文檔編號】G06F11/16GK104050061SQ201410308701
【公開日】2014年9月17日 申請日期:2014年7月1日 優(yōu)先權(quán)日:2014年7月1日
【發(fā)明者】王寶強(qiáng), 王浩, 王曉光, 鐘生海, 韓瓊 申請人:中國航天科工集團(tuán)第二研究院七〇六所