態(tài)為在線狀態(tài)時,確定當(dāng)前識別周期光模塊狀為光模塊拔出操作;
[0059]當(dāng)所述上一個識別周期光模塊狀態(tài)為離線狀態(tài)時,確定當(dāng)前識別周期光模塊狀仍為離線狀態(tài);
[0060]其中,所述光模塊狀態(tài)包括:光模塊離線狀態(tài)、光模塊拔出。
[0061]上述方案中,所述0NU包括無源光網(wǎng)絡(luò)Ρ0Ν媒體接入地址MAC芯片;
[0062]所述0NU還包括:第三確定單元、第一配置單元;其中,
[0063]所述第三確定單元,用于依據(jù)所述第三獲取單元所獲取的光模塊參數(shù),確定光模塊類型;
[0064]所述第一配置單元,用于為所述PON MAC芯片配置與所述光模塊類型相對應(yīng)的工作模式,以完成0NU業(yè)務(wù)。
[0065]本發(fā)明實施例提供的0NU中識別光模塊狀態(tài)的方法及0NU,所述方法包括:獲取所述光模塊狀態(tài)的當(dāng)前識別周期,獲取上一識別周期內(nèi)所述光模塊的光模塊狀態(tài);對所述當(dāng)前識別周期進行等間隔劃分,形成至少兩個子周期;在當(dāng)前識別周期的每個子周期內(nèi),獲取光模塊參數(shù);依據(jù)連續(xù)成功獲取到所述光模塊參數(shù)的子周期的數(shù)量及所獲取的所述上一識別周期內(nèi)所述光模塊狀態(tài),確定當(dāng)前識別周期內(nèi)的光模塊狀態(tài);利用本發(fā)明實施例的技術(shù)方案,可提聞識別準確率聞。
【附圖說明】
[0066]圖1為0NU設(shè)備的硬件組成結(jié)構(gòu)示意圖;
[0067]圖2為本發(fā)明實施例提供的0NU設(shè)備的硬件組成結(jié)構(gòu)示意圖;
[0068]圖3為本發(fā)明實施例提供的0NU中識別光模塊狀態(tài)的方法的實現(xiàn)流程圖;
[0069]圖4為本發(fā)明實施例提供的0NU中識別光模塊狀態(tài)的方法的具體實現(xiàn)流程圖;
[0070]圖5為本發(fā)明實施例提供的0NU的組成示意圖。
【具體實施方式】
[0071]以下結(jié)合附圖對本發(fā)明的優(yōu)選實施例進行詳細說明,應(yīng)當(dāng)理解,以下所說明的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
[0072]本發(fā)明實施例提供了一種0NU中識別光模塊狀態(tài)的方法,所述0NU的硬件組成如圖2所示,0NU包括主控板和板卡,主控板包括中央處理單元(CPU, Central ProcessingUnit)、只讀存儲器ROM和隨機存儲器RAM ;所述CPU通過I2C接口方式與板卡的光模塊進行通信,光模塊通過小型可插拔(SPF, Small Form Pluggable)接口方式插拔于板卡中;所述CPU 通過異步收發(fā)傳輸器(UART, Universal Asynchronous Receiver/Transmitter)、千兆媒體獨立接口,(GMII,Gigabit Medium Independent Interface)、復(fù)位 RESET 等方式與板卡的PON MAC芯片進行通信。
[0073]圖3為本發(fā)明實施例提供的0NU中識別光模塊狀態(tài)的方法的實現(xiàn)流程圖;如圖3所示,所述方法包括:
[0074]步驟21:獲取所述光模塊狀態(tài)的當(dāng)前識別周期;
[0075]這里,在與CPU這一硬件對應(yīng)的板卡管理軟件程序中為光模塊狀態(tài)的識別配置一識別周期,所述光模塊狀態(tài)包括:光模塊插入、拔出、在線、離線等四種狀態(tài);所述識別周期的取值范圍為1秒(s)?3s中任意一個整數(shù),所述識別周期可以根據(jù)0NU的CPU處理資源的能力而靈活設(shè)置。
[0076]步驟22:獲取上一識別周期內(nèi)光模塊的光模塊狀態(tài);
[0077]這里,在獲取到每一識別周期的光模塊狀態(tài)時,CPU將對該光模塊狀態(tài)進行存儲。
[0078]步驟23:對所述當(dāng)前識別周期進行等間隔劃分,形成至少兩個子周期;
[0079]這里,對所述當(dāng)前識別周期按照預(yù)定的間隔Μ進行等間隔劃分,得到N個子周期。
[0080]步驟24:在當(dāng)前識別周期的每個子周期內(nèi),獲取所述光模塊參數(shù);
[0081]這里,所述光模塊參數(shù)包括:光模塊收發(fā)帶寬如lGbps或lOGbps、光模塊的光功率;在子周期N1內(nèi)(N1為N個子周期中的一個),CPU通過I2C總線向光模塊發(fā)出查詢指令,以查詢光模塊的光模塊參數(shù)。
[0082]步驟25:依據(jù)連續(xù)成功獲取到所述光模塊參數(shù)的子周期的數(shù)量及所獲取的所述上一識別周期內(nèi)所述光模塊狀態(tài),確定當(dāng)前識別周期內(nèi)的所述光模塊狀態(tài)。
[0083]這里,在子周期N1內(nèi),發(fā)出所述查詢指令后,啟動定時器,在定時器的定時時間內(nèi),如果CPU接收到光模塊上報的光模塊參數(shù)時,確認為CPU成功獲取到光模塊參數(shù);如果沒有收到光模塊上報的光模塊參數(shù)時,確認為CPU未成功獲取到光模塊參數(shù)。在N個子周期內(nèi),計算連續(xù)成功獲取到光模塊參數(shù)的子周期的數(shù)量,并判斷該子周期的數(shù)量是否未超出預(yù)設(shè)的第一范圍;當(dāng)判斷所述子周期的數(shù)量未超出預(yù)設(shè)的第一范圍時,依據(jù)所述上一個識別周期內(nèi)所述光模塊狀態(tài),確定當(dāng)前識別周期內(nèi)的所述光模塊狀態(tài)。其中,所述第一范圍的上限為10、下限為N。
[0084]圖4為本發(fā)明實施例提供的0NU中識別光模塊狀態(tài)的方法的具體實現(xiàn)流程圖;下面結(jié)合圖4所示,對本發(fā)明實施例的技術(shù)方案做進一步說明。
[0085]在圖4中,以所述識別周期為2s,間隔M = 100ms為例;如圖4所示,所述方法包括:
[0086]步驟301:獲取識別周期;
[0087]這里,CPU讀取板卡管理軟件程序中的用于表征識別周期的參量,該參量等于2s ;
[0088]步驟302:獲取上一個2s內(nèi)的光模塊狀態(tài);
[0089]這里,CPU通過讀取板卡管理軟件程序中的Last Status參量而獲取到上一個2s內(nèi)的光模塊狀態(tài)。
[0090]步驟303:對所獲取的識別周期2s進行等間隔(M = 100ms)劃分,形成N = 20個子周期,每個子周期為100ms;
[0091]步驟304:每100ms獲取一次光模塊的參數(shù);
[0092]這里,每100ms,CPU通過I2C總線向光模塊發(fā)出查詢指令,以查詢光模塊的光模塊參數(shù);在發(fā)出查詢命令時,啟動定時器開始計時。
[0093]步驟305:對識別周期2s內(nèi)的每個子周期,在定時器的定時時間內(nèi),判斷CPU是否成功獲取到光模塊參數(shù);
[0094]判斷為CPU成功獲取到光模塊參數(shù)、具體是光模塊收發(fā)帶寬時,對成功獲取到光模塊參數(shù)的子周期進行記錄;
[0095]判斷為CPU未成功獲取到光模塊參數(shù)、具體是光模塊收發(fā)帶寬時,對未成功獲取到光模塊參數(shù)的子周期進行記錄;
[0096]其中,在任意一個子周期,在定時器定時時間內(nèi),如果CPU接收到光模塊上報的光模塊收發(fā)帶寬時,確認為CPU成功獲取到光模塊參數(shù);否則,確認為CPU未成功獲取到光模塊參數(shù)。
[0097]這里,當(dāng)判斷為某個子周期內(nèi)CPU成功獲取到光模塊收發(fā)帶寬時,對板卡管理軟件程序中的用于表征統(tǒng)計值的數(shù)組如ADD[1][N]的相應(yīng)元素賦值為第一預(yù)設(shè)值如1,否則,對相應(yīng)元素賦值為第二預(yù)設(shè)值如0 ;數(shù)組ADD[1] [N]中的數(shù)組元素的取值對應(yīng)于每個子周期內(nèi)的CPU是否成功獲取到光模塊參數(shù)的判斷結(jié)果;例如,CPU初始化所有數(shù)組元素為0,當(dāng)判斷為當(dāng)前2s的第一子周期內(nèi)CPU成功獲取的光模塊收發(fā)帶寬時,將ADD[1] [1]元素賦值為1 ;當(dāng)判斷為當(dāng)前2s的第3子周期內(nèi)CPU成功獲取的光模塊收發(fā)帶寬時,將ADD [1] [3]元素賦值為0。
[0098]步驟306 ;在判斷完所有子周期之后,對記錄的連續(xù)成功獲取到光模塊參數(shù)的數(shù)量、連續(xù)未成功獲取到光模塊參數(shù)的數(shù)量分別進行統(tǒng)計;
[0099]判斷為連續(xù)成功獲取到光模塊參數(shù)的數(shù)量位于第一范圍[10,20]內(nèi)時,執(zhí)行步驟307 ;
[0100]判斷為連續(xù)未成功獲取到光模塊參數(shù)的子周期的數(shù)量位于第二范圍[10,20]內(nèi)時,執(zhí)行步驟308。
[0101]這里,在判斷完所有