一種網(wǎng)絡(luò)設(shè)備的制作方法
【專利摘要】本發(fā)明提供一種網(wǎng)絡(luò)設(shè)備,包括主板以及可插拔功能板,主板包括第一邏輯器件及主板CPU,功能板包括第二邏輯器件及功能芯片;第一邏輯器件,用于完成功能板的第一階段初始化,然后判斷該功能板的第二階段初始化是否為首次,如果是則向主板CPU配置初始化通知,如果否,則向第二邏輯器件發(fā)送第二階段初始化通知;主板CPU,用于根據(jù)通知對功能板的功能芯片進行第二階段初始化,并將過程中生成的配置信息儲存于所述功能板的非易失性存儲介質(zhì)中;第二邏輯器件,用于根據(jù)通知從所述功能板的非易失性存儲介質(zhì)中獲取配置信息完成第二階段初始化。相較于現(xiàn)有技術(shù),本發(fā)明能夠大大加快了整個網(wǎng)絡(luò)設(shè)備的啟動過程。
【專利說明】一種網(wǎng)絡(luò)設(shè)備
【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明涉及通信【技術(shù)領(lǐng)域】,尤其涉及一種網(wǎng)絡(luò)設(shè)備。
【背景技術(shù)】
[0002]網(wǎng)絡(luò)設(shè)備普遍應(yīng)用模塊化設(shè)計技術(shù),特別是其中的多業(yè)務(wù)路由器,更是應(yīng)用模塊化技術(shù)的典型網(wǎng)絡(luò)設(shè)備。由于不同用戶所需要業(yè)務(wù)應(yīng)用不同,因此用戶對路由器的功能集合的需求也存在差異。為了滿足不同用戶的不同需求,多業(yè)務(wù)路由器普遍采用模塊化設(shè)計,提供可以裝入不同功能板的槽位,用戶可以根據(jù)實際網(wǎng)絡(luò)情況來選擇自己需要的功能板,將其裝入路由器的槽位上以實現(xiàn)不同業(yè)務(wù)應(yīng)用的需要。
[0003]然而由于功能板初始化時會獨占主板CPU,在功能板初始化期間主板CPU無法執(zhí)行其他啟動任務(wù),在插入有多個功能板的路由器上,由于功能板初始化的時間所需時間很長,這致使路由器整體的啟動時間會隨著功能板數(shù)量的增加而增加。若一臺路由器在線進行重啟,那么路由器完成啟動之前,其所承擔(dān)的業(yè)務(wù)將處于中斷狀態(tài),無法快速恢復(fù)起來,這對于運營商而言無疑是嚴(yán)重的服務(wù)質(zhì)量問題。因此引入更多的功能版無疑賦予了路由器更多更為靈活的功能,但是業(yè)務(wù)恢復(fù)時間卻因此而大受影響。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明提供一種網(wǎng)絡(luò)設(shè)備,包括主板以及可插拔功能板,其中所述主板包括第一邏輯器件以及主板中央處理單元CPU,所述功能板包括第二邏輯器件以及功能芯片;其中:
[0005]第一邏輯器件,用于在初始化過程中完成該功能板的第一階段初始化,然后判斷該功能板的第二階段初始化是否為首次,如果是則向主板CPU發(fā)送第二階段初始化通知,如果否,則向第二邏輯器件發(fā)送第二階段初始化通知,指示第二邏輯器件對功能板的功能芯片進行第二階段初始化;
[0006]主板CPU,用于根據(jù)第一邏輯器件的配置初始化通知對功能板的功能芯片進行第二階段初始化,并將第二階段初始化過程中生成的配置信息儲存于所述功能板的非易失性存儲介質(zhì)中;
[0007]第二邏輯器件,用于根據(jù)第一邏輯器件的第二階段初始化通知從所述功能板的非易失性存儲介質(zhì)中獲取配置信息完成第二階段初始化,并在第二階段初始化完成后通知主板 CPU。
[0008]相較于現(xiàn)有技術(shù),本發(fā)明能夠在初始化過程中更加深度地釋放對主板CPU的獨占,從而大大加快了整個網(wǎng)絡(luò)設(shè)備的啟動過程;避免了網(wǎng)絡(luò)設(shè)備重啟時間過長而對正常主機通信過程的嚴(yán)重負(fù)面影響。
【專利附圖】
【附圖說明】
[0009]圖1是本發(fā)明實施例中網(wǎng)絡(luò)設(shè)備的結(jié)構(gòu)示意圖;[0010]圖2是一種典型的硬件準(zhǔn)備階段初始化處理流程圖;
[0011]圖3是本發(fā)明實施例中配置階段初始化處理流程圖。
【具體實施方式】
[0012]在各個廠商比較典型的功能板的初始化設(shè)計中,初始化的過程主要分為兩個階段,一個是功能板的硬件準(zhǔn)備階段初始化;另一個是功能板上功能芯片配置階段初始化。在硬件準(zhǔn)備階段,主要是完成功能板初始化時的準(zhǔn)備工作,這一階段的處理典型地可以包括:主板CPU讀取和解析功能板的制造信息、主板CPU給功能板的上電、在功能板上電完成后檢測功能板上電是否成功等。在功能板初始化的配置階段中,對于沒有單獨CPU的功能板,主要進行功能板上功能芯片的配置,根據(jù)功能板的類型和使用的軟硬件資源對其進行掃描配置。功能板在與主板CPU及主板邏輯通信時會用到各種總線,包括IIC總線、PC1-E總線、Local Bus總線、以太總線等,這些總線都需要進行配置才能正常工作,本發(fā)明只針對PC1-E總線進行描述,其他總線可采取類似的處理方式。
[0013]請參考圖1,本發(fā)明提供一種網(wǎng)絡(luò)設(shè)備,該網(wǎng)絡(luò)設(shè)備包括主板以及可插拔的功能板。其中主板包括主板CPU以及第一邏輯器件,而功能板包括第二邏輯器件以及功能芯片,其中該功能芯片的數(shù)量和類型并無限制,對于網(wǎng)絡(luò)設(shè)備而言,最為常見的功能芯片是以太網(wǎng)交換芯片。功能板可以通過網(wǎng)絡(luò)設(shè)備提供的功能板槽位插入到網(wǎng)絡(luò)設(shè)備中,通過直接或者通過背板與主板建立連接。其中:
[0014]第一邏輯器件,用于在初始化過程中完成該功能板的第一階段初始化,然后判斷該功能板的第二階段初始化是否為首次,如果是則向主板CPU發(fā)送第二階段初始化通知,如果否,則通知第二邏輯器件對功能板的功能芯片進行第二階段初始化;
[0015]主板CPU,用于根據(jù)第一邏輯器件的第二階段初始化通知對功能板的功能芯片進行第二階段初始化,并將第二階段初始化過程中生成的配置信息儲存于所述功能板的非易失性存儲介質(zhì)中;
[0016]第二邏輯器件,用于根據(jù)第一邏輯器件的第二階段初始化通知控制所述功能芯片從所述功能板的非易失性存儲介質(zhì)中獲取配置信息完成第二階段初始化,并在第二階段初始化完成后通知主板CPU。
[0017]請繼續(xù)參考圖1,在本發(fā)明中第一及第二邏輯器件均為可編程邏輯器件,比如FPGA或CPLD。在實現(xiàn)的過程中,開發(fā)人員可以按照本發(fā)明以下描述通過對邏輯器件進行相應(yīng)的編程實現(xiàn)。從邏輯功能層面看,第一邏輯器件包括初始化控制單元、功能板管理單元、第一中斷產(chǎn)生單元、供電控制單元、以及熱插拔檢測單元。當(dāng)然第一邏輯器件通常還會包括內(nèi)部的非易失性存儲介質(zhì)或共享外部的非易失性存儲介質(zhì)。第二邏輯器件包括第二中斷產(chǎn)生單元、板內(nèi)控制單元以及總線切換單元。以上各個功能單元的劃分僅僅是為了輔助本領(lǐng)域普通技術(shù)人員更為方便地進行開發(fā)實現(xiàn),其是一種邏輯層面的人為定義,并不是本發(fā)明實現(xiàn)的唯一邏輯結(jié)構(gòu)。以下從硬件準(zhǔn)備階段初始化以及配置階段初始化兩個流程分別加以說明。
[0018]如前所述,在功能板開始初始化時,功能板初始化的硬件準(zhǔn)備階段可以完全交由主板上的第一邏輯器件(例如)處理。在硬件準(zhǔn)備階段的處理流程包括以下步驟。
[0019]步驟101,熱插拔檢測單元檢測功能板的熱插拔狀態(tài),并在檢測到功能板插入時通知初始化控制單元功能板在位;
[0020]具體來說,當(dāng)檢測到有功能板插入時,比如說熱插拔管腳的電平由高電平變化為低電平,此時熱插拔檢測單元將功能板管理單元中的功能板在位狀態(tài)字段設(shè)置為在位,將功能板管理單元的熱插拔中斷字段設(shè)置為生效;反之如果熱插拔管腳的電平由低電平變化為高電平,此時熱插拔檢測單元將功能板管理單元中的功能板在位狀態(tài)字段設(shè)置為不在位,將功能板管理單元的熱插拔中斷字段設(shè)置為無效。
[0021]步驟102,功能板管理單元確定功能板是否可以上電;
[0022]在具體實現(xiàn)中,通常先由功能板管理單元從功能板上獨立供電的非易失性存儲介質(zhì)中讀取功能板的電源需求信息,并判斷是否可以給該功能板供電,如果當(dāng)前設(shè)備的電源功率輸出不足以滿足功能板的電源功率需求,則無法上電;如果可以滿足,則在內(nèi)部對供電狀態(tài)進行置位并通知供電管理單元。在本發(fā)明中,主板上通常設(shè)置有兩個供電模塊,一個是主供電模塊,另一個是輔助供電模塊。輔助供電模塊給獨立供電的非易失性存儲介質(zhì)進行供電,這一供電無需受控,一旦功能板插入主板上的功能板插槽,則輔助功能模塊的電路與功能板上的獨立供電的非易失存儲介質(zhì)之間的供電電路會相應(yīng)閉合,由輔助供電模塊為功能板上的獨立供電的非易失存儲介質(zhì)供電。但是主供電模塊的供電則是受控的,這種處理手段可以讓主板一側(cè)準(zhǔn)確知道是否可以給功能板上電,避免了功率需求不匹配,盲目上電所引發(fā)的問題。
[0023]步驟103,功能板管理單元對該功能板進行復(fù)位;
[0024]步驟104,供電控制單元對功能板進行上電控制;
[0025]供電控制單元通過功能板管理單元中對應(yīng)的供電狀態(tài)的標(biāo)志來判斷是否給功能板上電,如果可以上電,則控制主板上的主供電模塊對功能板進行上電。延時一段時間之后,供電控制單元在檢測到已上電功能板的電壓穩(wěn)定時,在功能板管理單元中將供電完成狀態(tài)字段設(shè)置為完成狀態(tài)。功能板下電過程大致相反,在此不再贅述。
[0026]步驟101至步驟104描述了一個典型的初始化過程中硬件準(zhǔn)備階段的初始化處理過程,這個過程由主板上的第一邏輯器件執(zhí)行。事實上在更為復(fù)雜的情況中,主板事實上可能會連接多個功能板。請參考圖2,在多個功能板的情況下,處理的流程可以理解為增加相應(yīng)的循環(huán)判斷的過程。在路由器啟動過程中,主板依次選擇下一個已經(jīng)插入功能板(其可以掃描到的功能)進行步驟102的處理,先從其獨立供電的非易失性存儲介質(zhì)中讀取其功率需求信息,進而判斷是否可以其功率需求,并根據(jù)判斷結(jié)果對供電狀態(tài)進行置位;返回重新選擇下一個功能板,直到最后一個掃描到的功能板。
[0027]在完成硬件準(zhǔn)備階段的初始化處理之后,第一邏輯器件在接下來的過程中將與第二邏輯器件以及主板CPU配合來實現(xiàn)第二階段初始化的快速執(zhí)行。請參考圖3,在配置階段初始化執(zhí)行過程中主要包括如下步驟。
[0028]步驟201,功能板管理單元讀取功能板的非易失存儲介質(zhì)中該功能板標(biāo)識;
[0029]步驟202,功能板管理單元獲取主板的非易失存儲介質(zhì)中當(dāng)前槽位對應(yīng)的功能板標(biāo)識;
[0030]步驟203,功能板管理單元將功能板上讀取到功能板標(biāo)識以及從主板上獲取到的功能板標(biāo)識進行對比,判斷兩者是否一致,并將判斷結(jié)果提交給初始化控制單元;
[0031]步驟204,初始化控制單元在所述判斷結(jié)果為不一致時確定該功能板的配置階段初始化為首次,通知主板CPU執(zhí)行配置階段初始化,并通知第二邏輯器件切換功能板上非易失性存儲介質(zhì)的IO總線,使得主板CPU可以訪問該非易失性存儲介質(zhì);
[0032]步驟205,主板CPU從功能板的非易失性存儲介質(zhì)中獲取功能板類型;
[0033]步驟206,主板CPU根據(jù)功能板類型對功能芯片執(zhí)行配置階段初始化;
[0034]步驟207,主板CPU將配置階段初始化過程中生成的配置信息保存到功能板的非易失性存儲介質(zhì)中;并將該功能板標(biāo)識對應(yīng)更新到表1中,配置階段初始化處理流程結(jié)束。
[0035]步驟208,初始化控制單元在所述判斷結(jié)果為一致時確定該功能板的配置階段初始化為非首次,通知第二邏輯器件執(zhí)行配置階段初始化;
[0036]步驟209,在接收到來自初始化控制單元的通知后,第二邏輯器件的板內(nèi)控制單元通知總線切換單元進行總線切換;
[0037]步驟211,總線切換單元控制功能板的非易失性存儲介質(zhì)的I/O總線進行切換,使得功能板上的功能芯片能夠通過該I/O總線訪問該非易失存儲介質(zhì);
[0038]步驟211,在切換完成后,板內(nèi)控制單元控制功能板上的功能芯片從功能板的非易失性存儲介質(zhì)中加載步驟208中所保存的配置信息以完成該功能芯片的配置階段初始化;
[0039]步驟212,板內(nèi)控制單元在配置階段初始化完成時通過第二邏輯器件內(nèi)部的第二中斷產(chǎn)生單元產(chǎn)生一個中斷通知主板CPU配置階段初始化處理結(jié)束。
[0040]主板以及功能板上的非易失性存儲介質(zhì)都可能有多個,本發(fā)明并不限制對非易失性存儲介質(zhì)的使用,只要能夠讀取到上述兩個標(biāo)識均可以。 當(dāng)然一般來說這些標(biāo)識信息所存儲的位置通常是指定的位置。在優(yōu)選的實施方式中,功能板的標(biāo)識通常是功能板的生產(chǎn)序列號,或者是其他硬件標(biāo)識,比如功能板的CPU標(biāo)識,或者其使用的MAC地址等。在本發(fā)明中,主板的非易失性存儲介質(zhì)中所保存的功能板標(biāo)識是按照槽位來對應(yīng)保存的,請參考表1的示例性表達。
[0041]
【權(quán)利要求】
1.一種網(wǎng)絡(luò)設(shè)備,包括主板以及可插拔功能板,其中所述主板包括第一邏輯器件以及主板中央處理單元CPU,所述功能板包括第二邏輯器件以及功能芯片;其特征在于: 第一邏輯器件,用于在初始化過程中完成該功能板的第一階段初始化,然后判斷該功能板的第二階段初始化是否為首次,如果是則向主板CPU發(fā)送第二階段初始化通知,如果否,則向第二邏輯器件發(fā)送第二階段初始化通知,指示第二邏輯器件對功能板的功能芯片進行第二階段初始化; 主板CPU,用于根據(jù)第一邏輯器件的配置初始化通知對功能板的功能芯片進行第二階段初始化,并將第二階段初始化過程中生成的配置信息儲存于所述功能板的非易失性存儲介質(zhì)中; 第二邏輯器件,用于根據(jù)第一邏輯器件的第二階段初始化通知控制所述功能芯片從所述功能板的非易失性存儲介質(zhì)中獲取配置信息完成第二階段初始化,并在第二階段初始化完成后通知主板CPU。
2.如權(quán)利要求1所述的網(wǎng)絡(luò)設(shè)備,其特征在于:所述第一階段初始化為硬件準(zhǔn)備階段初始化;所述第二階段初始化為功能芯片的配置階段初始化。
3.如權(quán)利要求1所述的網(wǎng)絡(luò)設(shè)備,其特征在于, 所述主板CPU進一步用于在完成對功能板第二階段初始化之后,將該功能板的標(biāo)識以及與當(dāng)前槽位標(biāo)識的對應(yīng)關(guān)系保存在主板的非易失性存儲介質(zhì)中; 所述第一邏輯器件判斷該功能板的第二階段初始化是否為首次過程具體包括: 當(dāng)功能板位于當(dāng)前槽位時,在所述主板的非易失性存儲介質(zhì)中查詢當(dāng)前槽位標(biāo)識對應(yīng)的功能板標(biāo)識;若查詢到的功能板的標(biāo)識與從功能板的非易失性存儲介質(zhì)中讀取到的功能板標(biāo)識相同,則確定該功能板的第二階段初始化為非首次,否則確定為首次。
4.如權(quán)利要求1所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述第二邏輯器件進一步用于在功能板的第二階段初始化為非首次時,控制功能板非易失性存儲介質(zhì)的I/O總線進行切換以使得功能板的功能芯片能夠訪問該非易失性存儲介質(zhì)。
5.如權(quán)利要求1所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述功能板的非易失性存儲介質(zhì)數(shù)量為多個,其中至少一個非易失性存儲介質(zhì)為獨立供電的非易失存儲介質(zhì);主板CPU進一步用于功能板插入時,從該獨立供電的非易失存儲介質(zhì)上獲取電源功率信息,并判斷主板是否滿足功能板的電源功率需求,如果滿足,則控制主板上的主供電模塊對該功能板供電。
6.如權(quán)利要求1所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述第二邏輯器件在第二階段初始化完成后通知主板CPU的過程具體為:產(chǎn)生相應(yīng)的中斷并上報給主板CPU。
7.如權(quán)利要求1所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述功能芯片為以太網(wǎng)交換芯片。
8.如權(quán)利要求1所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述第二邏輯器件控制所述功能芯片從所述功能板的非易失性存儲介質(zhì)中獲取配置信息完成第二階段初始化的過程具體為:第二邏輯器件將所述功能芯片的配置管腳的電平置為預(yù)設(shè)電平,然后對所述功能芯片進行解除復(fù)位。
【文檔編號】G06F9/445GK103701707SQ201310641506
【公開日】2014年4月2日 申請日期:2013年12月3日 優(yōu)先權(quán)日:2013年12月3日
【發(fā)明者】趙志宇 申請人:杭州華三通信技術(shù)有限公司