專利名稱:Xg-pon1系統(tǒng)onu端的ploam消息處理加速的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及XG-PONl (10吉比特?zé)o源光網(wǎng)絡(luò))的接入技術(shù),具體說(shuō)是XG-PONl系統(tǒng)ONU (光網(wǎng)絡(luò)單元)端的PLOAM消息(物理層操作管理維護(hù)消息)處理加速的方法。
背景技術(shù):
XG-PONl作為下一代接入網(wǎng)技術(shù),具有更高的速率和分光比、從吉比特?zé)o源光網(wǎng)絡(luò)(GPON)技術(shù)的平滑演進(jìn)、對(duì)全業(yè)務(wù)運(yùn)營(yíng)能力支持等優(yōu)勢(shì),實(shí)現(xiàn)了低成本、遠(yuǎn)距離的高速接入,目前被認(rèn)為是寬帶接入的新趨勢(shì)。XG-PONl接入系統(tǒng)由局端光線路終端設(shè)備OLT和遠(yuǎn)端ONU設(shè)備組成。依據(jù)國(guó)際電信聯(lián)盟遠(yuǎn)程通信標(biāo)準(zhǔn)化組織ITU-T制定的XG-PONl協(xié)議G.987.3,XG-PONl的系統(tǒng)控制、操作和管理有三個(gè)通道:嵌入式操作管理維護(hù)(嵌入式0AM)、物理層操作管理維護(hù)(PL0AM)、管理和控制接口(0MCI)。其中PLOAM通道是基于消息的,在下行125us數(shù)據(jù)幀和上行突發(fā)特定域中固定傳輸?shù)囊唤M消息,PLOAM信道的優(yōu)點(diǎn)在于,相比嵌入式OAM管理通道可以提供更靈活的功能,而速度超過OMCI通道,XG-PONl系統(tǒng)ONU對(duì)PLOAM消息的處理響應(yīng)時(shí)間在G.987.3協(xié)議規(guī)定為最大750微秒。目前XG-PONl系統(tǒng)ONU端的PLOAM消息的處理都是通過軟件來(lái)處理的,在ONU設(shè)備中使用軟件處理PLOAM消息存在響應(yīng)時(shí)間達(dá)不到協(xié)議規(guī)定的要求的缺陷,主要表現(xiàn)在以下三個(gè)方面:1、軟件和硬件的數(shù)據(jù)交換的速度較慢,由于PLOAM消息的數(shù)據(jù)量不大,一般采用緩存隊(duì)列存放,CPU是采用間接選址的方式訪問PLOAM消息的緩存,這樣會(huì)導(dǎo)致軟件和硬件之間的數(shù)據(jù)交換占用較多的時(shí)間。2、一些不需要處理的PLOAM消息送往軟件處理,耗費(fèi)了軟硬件數(shù)據(jù)交換時(shí)間和CPU的處理資源。3,PLOAM消息的MIC校驗(yàn)計(jì)算會(huì)耗費(fèi)ONU中CPU比較多的時(shí)間和資源,影響到ONU對(duì)PLOAM消息的處理和響應(yīng)速度。ONU對(duì)PLOAM消息的處理時(shí)間達(dá)不到協(xié)議要求,在實(shí)際的XG-P0N1系統(tǒng)的測(cè)試中就會(huì)導(dǎo)致ONU不能完成基本的注冊(cè)功能或者是注冊(cè)功能不穩(wěn)定,導(dǎo)致整個(gè)XG-PONl系統(tǒng)性能降低的嚴(yán)重問題。
發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明的目的在于提供XG-PONl系統(tǒng)ONU端的PLOAM消息處理加速的方法,利用硬件電路來(lái)替代軟件的部分功能,并加快軟件和硬件數(shù)據(jù)交互的速度,提高了 ONU對(duì)PLOAM消息的處理性能,降低PLOAM消息的處理時(shí)間,提高XG-PONl系統(tǒng)的穩(wěn)定性。為達(dá)到以上目的,本發(fā)明采取的技術(shù)方案是:XG-PONl系統(tǒng)ONU端的PLOAM消息處理加速的方法,其特征在于:在ONU對(duì)PLOAM消息處理的過程中采用CPU軟件處理和硬件處理相結(jié)合,所述硬件處理是指:通過硬件處理部分實(shí)現(xiàn)MIC校驗(yàn)和MIC生成,ONU對(duì)接收到的下行PLOAM消息采用硬件來(lái)完成MIC校驗(yàn),對(duì)于ONU發(fā)送的上行PLOAM消息也采用硬件來(lái)完成MIC校驗(yàn)字節(jié)生成,其中:下行PLOAM消息是指XG-PONl系統(tǒng)中OLT發(fā)送給ONU的PLOAM消息,上行PLOAM消息是指XG-PONl系統(tǒng)中ONU發(fā)送給OLT的PLOAM消息,下行和上行PLOAM消息的數(shù)據(jù)格式符合G.987.3CLAUSE11.2章節(jié)的定義,包括ONU的ID號(hào)、PLOAM消息類型ID號(hào)、序列號(hào)、消息內(nèi)容、MIC校驗(yàn)字節(jié)。在上述技術(shù)方案的基礎(chǔ)上,所述硬件處理還包括:對(duì)于下行PLOAM消息依據(jù)ONU的注冊(cè)狀態(tài)進(jìn)行硬件過濾,濾除ONU在該狀態(tài)下不需要處理的下行PLOAM消息。在上述技術(shù)方案的基礎(chǔ)上,所述硬件處理部分設(shè)有下行PLOAM緩存和上行PLOAM緩存,CPU對(duì)PLOAM緩存的讀寫采用直接選址訪問,PLOAM緩存采用先進(jìn)先出FIFO實(shí)現(xiàn)。在上述技術(shù)方案的基礎(chǔ)上,所述硬件處理部分為PLOAM消息處理加速電路,具體包括下行數(shù)據(jù)處理電路和上行數(shù)據(jù)處理電路;所述PLOAM消息處理加速電路完成下行PLOAM消息處理流程和上行PLOAM消息處理流程;所述下行數(shù)據(jù)處理電路包括中斷產(chǎn)生電路、以及依次連接的下行MIC校驗(yàn)電路、下行PLOAM過濾電路、下行PLOAM寫使能生成電路、下行PLOAM緩存電路、下行PLOAM讀使能生成電路;所述上行數(shù)據(jù)處理電路包括依次連接的上行PLOAM寫使能生成電路、上行PLOAM緩存電路、上行PLOAM讀使能生成電路、上行MIC生成電路。在上述技術(shù)方案的基礎(chǔ)上,硬件處理部分處理、產(chǎn)生以下信號(hào):下行PLOAM數(shù)據(jù):為并行數(shù)據(jù)信號(hào),是ONU接收到的下行數(shù)據(jù);下行PLOAM數(shù)據(jù)使能:下行PLOAM數(shù)據(jù)的有效指示信號(hào),為高時(shí)指示下行PLOAM的并行數(shù)據(jù)信號(hào)有效,為低時(shí)指示下行PLOAM的并行數(shù)據(jù)無(wú)效;下行FIFO剩余空間:指示下行PLOAM緩存的剩余空間,為0時(shí)指示下行PLOAM緩存的被占滿,為全I(xiàn)時(shí)指示下行PLOAM緩存還沒有存放數(shù)據(jù);下行FIFO占用空間:指示下行PLOAM緩存的占用空間,為0時(shí)表示緩存中沒有數(shù)據(jù),為全I(xiàn)是指示緩存被占滿;下行FIFO寫使能:由下行PLOAM寫使能生成電路產(chǎn)生,用于控制下行PLOAM數(shù)據(jù)寫入下行FIFO緩存,為高時(shí)寫入,為低時(shí)不動(dòng)作;下行FIFO讀使能:由下行PLOAM讀使能生成電路產(chǎn)生,用于控制下行PLOAM數(shù)據(jù)從下行FIFO緩存中讀出,為高時(shí)讀出,為低時(shí)不動(dòng)作;CPU讀使能:CPU總線的讀控制信號(hào),為高時(shí)讀取,為低時(shí)不動(dòng)作;CPU讀地址:CPU的地址總線,在CPU讀信號(hào)為高時(shí)有效;CPU讀數(shù)據(jù):CPU的數(shù)據(jù)總線,為CPU從下行FIFO中讀出的下行PLOAM數(shù)據(jù);中斷指示:由中斷生成電路產(chǎn)生,當(dāng)下行FIFO緩存占用空間大于或者等于一個(gè)下行PLOAM消息的長(zhǎng)度時(shí),產(chǎn)生中斷指示;上行FIFO剩余空間:指示上行PLOAM緩存的剩余空間,為0時(shí)指示上行PLOAM緩存的被占滿,為全I(xiàn)時(shí)指示上行PLOAM緩存還沒有存放數(shù)據(jù);上行FIFO占用空間:指示上行PLOAM緩存的占用空間,為0時(shí)表示緩存中沒有數(shù)據(jù),為全I(xiàn)是指示緩存被占滿;上行FIFO寫使能:由上行PLOAM寫使能生成電路產(chǎn)生,用于控制上行PLOAM數(shù)據(jù)寫入上行FIFO緩存,為高時(shí)寫入,為低時(shí)不動(dòng)作;上行FIFO讀使能:由上行PLOAM讀使能生成電路產(chǎn)生,用于控制上行PLOAM數(shù)據(jù)從上行FIFO緩存中讀出,為高時(shí)讀出,為低時(shí)不動(dòng)作;CPU寫使能:CPU總線的寫控制信號(hào),為高時(shí)寫入,為低時(shí)不動(dòng)作;CPU寫地址:CPU的地址總線,在CPU寫信號(hào)為高時(shí)有效;CPU寫數(shù)據(jù):CPU的數(shù)據(jù)總線,為CPU寫入上行FIFO的上行PLOAM數(shù)據(jù),當(dāng)寫信號(hào)為聞時(shí)有效;上行PLOAM發(fā)送使能:依據(jù)OLT的指示生成的上行PLOAM發(fā)送指示信號(hào),為高時(shí)發(fā)送上行PLOAM消息,為低時(shí)不發(fā)送;上行PLOAM數(shù)據(jù):為并行數(shù)據(jù)信號(hào),是ONU發(fā)送到的上行PLOAM消息;上行PLOAM數(shù)據(jù)使能:指示上行PLOAM數(shù)據(jù)有效的指示信號(hào),為高時(shí)指示上行PLOAM的并行數(shù)據(jù)信號(hào)有效,為低時(shí)指示上行PLOAM的并行數(shù)據(jù)無(wú)效。在上述技術(shù)方案的基礎(chǔ)上,下行PLOAM消息處理流程的步驟為:當(dāng)ONU收到屬于本ONU的下行PLOAM消息或者廣播PLOAM消息時(shí),首先對(duì)下行PLOAM消息進(jìn)行MIC校驗(yàn),將計(jì)算出的8字節(jié)的MIC數(shù)據(jù)與從下行PLOAM消息中提取的8字節(jié)數(shù)據(jù)進(jìn)行比對(duì),如果一致,該下行PLOAM消息送往后續(xù)處理模塊;如果比對(duì)不一致,將該下行PLOAM消息丟棄;對(duì)于MIC校驗(yàn)正確的下行PLOAM數(shù)據(jù),需要判斷下行FIFO的緩存剩余空間是否足夠存放該下行PLOAM消息,判斷條件是下行FIFO的剩余空間是否大于等于一幀下行PLOAM消息的長(zhǎng)度,如果小于一幀PLOAM消息的長(zhǎng)度,表明FIFO緩存不能存放該P(yáng)LOAM消息,該下行PLOAM消息做丟棄處理,如果大于等于一幀PLOAM消息的長(zhǎng)度,表明下行FIFO緩存可以存放該P(yáng)LOAM消息,就可以將該P(yáng)LOAM消息寫入到下行FIFO中;當(dāng)下行FIFO中寫入數(shù)據(jù)后,依據(jù)下行FIFO的緩存占用空間指示,當(dāng)下行FIFO緩存占用空間大于等于一幀PLOAM消息的長(zhǎng)度時(shí),將中斷指示信號(hào)置為高通知CPU可以讀取下行PLOAM消息;當(dāng)CPU收到中斷指示后,執(zhí)行中斷處理程序,首先讀取下行PLOAM緩存的狀態(tài),獲得可以讀取的下行PLOAM消息的個(gè)數(shù),然后依據(jù)可讀取PLOAM消息的個(gè)數(shù),執(zhí)行讀取操作,從下行PLOAM消息緩存中讀出PLOAM數(shù)據(jù);讀操作完成后,對(duì)下行PLOAM消息的中斷信號(hào)執(zhí)行清除操作,將中斷指示信號(hào)置為低。在上述技術(shù)方案的基礎(chǔ)上,上行PLOAM消息處理流程的步驟為:當(dāng)CPU生成上行PLOAM消息后,首先讀取上行FIFO緩存的剩余空間狀態(tài),如果上行FIFO緩存的剩余空間不能裝下一幀完整的PLOAM數(shù)據(jù),繼續(xù)等待,直到上行FIFO緩存的剩余空間大于等于一幀PLOAM消息的長(zhǎng)度;如果上行FIFO緩存的剩余空間大于等于一幀PLOAM消息的長(zhǎng)度,將該P(yáng)LOAM消息寫入到上行FIFO緩存中;當(dāng)上行PLOAM發(fā)送使能信號(hào)有效時(shí),首先判斷上行FIFO的緩存占用空間是否大于等于一幀PLOAM消息的長(zhǎng)度,如果緩存占用空間大于等于一幀PLOAM消息的長(zhǎng)度,表明上行FIFO緩存中存儲(chǔ)有一幀完整的上行PLOAM消息,將該上行PLOAM消息讀出,送往MIC校驗(yàn)生成模塊,利用除去最后8字節(jié)后的PLOAM消息的數(shù)據(jù)和PLOAM消息的密鑰計(jì)算出8字節(jié)的MIC校驗(yàn)字節(jié),替換PLOAM消息中的最后8個(gè)字節(jié),然后將替換后的PLOAM消息發(fā)送出去;如果緩存占用空間小于一幀PLOAM消息的長(zhǎng)度,表明上行FIFO緩存中沒有一幀完整的PLOAM消息數(shù)據(jù)或者根本就沒有數(shù)據(jù),硬件電路生成一幀空消息送往MIC校驗(yàn)生成模塊,利用除去最后8字節(jié)的空消息的數(shù)據(jù)和PLOAM消息的密鑰計(jì)算出8字節(jié)的MIC校驗(yàn)字節(jié),替換空消息中數(shù)據(jù)中的最后8個(gè)字節(jié),然后將替換后的空消息發(fā)送出去。本發(fā)明所述的XG-PONl系統(tǒng)ONU端的PLOAM消息處理加速的方法,利用硬件電路來(lái)替代軟件的部分功能,并加快軟件和硬件數(shù)據(jù)交互的速度,提高了 ONU對(duì)PLOAM消息的處理性能,降低PLOAM消息的處理時(shí)間,提高XG-PONl系統(tǒng)的穩(wěn)定性。
本發(fā)明有如下附圖:圖1為本發(fā)明XG-PONl系統(tǒng)ONU端PLOAM消息處理加速框圖,圖2為ONU端下行PLOAM消息的處理加速流程圖,圖3為ONU端上行PLOAM消息的處理加速流程圖。
具體實(shí)施例方式以下結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明。ONU對(duì)PLOAM消息處理的基本流程是:0NU設(shè)備從下行數(shù)據(jù)流中提取PLOAM消息,然后對(duì)PLOAM消息進(jìn)行消息完整性檢查(MIC)校驗(yàn),校驗(yàn)錯(cuò)誤的PLOAM消息被丟棄,校驗(yàn)通過的PLOAM消息存放到下行PLOAM緩存,產(chǎn)生中斷通知CPU讀取,CPU讀取下行PLOAM緩存中的數(shù)據(jù),并對(duì)下行PLOAM消息進(jìn)行處理,生成上行PLOAM消息寫入到上行PLOAM緩存中。當(dāng)需要發(fā)送上行PLOAM消息時(shí),從上行PLOAM緩存中讀出數(shù)據(jù),并進(jìn)行MIC生成得到MIC校驗(yàn)字節(jié),然后將從上行PLOAM緩存中讀出數(shù)據(jù)和MIC校驗(yàn)字節(jié)一同發(fā)送到上行數(shù)據(jù)中。如圖1所示,本發(fā)明所述的XG-PONl系統(tǒng)ONU端的PLOAM消息處理加速的方法,在ONU對(duì)PLOAM消息處理的過程中采用的是CPU軟件處理和硬件處理相結(jié)合,圖1中虛線左邊是CPU軟件處理部分,虛線右邊是硬件處理部分。所述硬件處理是指:通過硬件處理部分實(shí)現(xiàn)了 MIC校驗(yàn)和MIC生成,即由硬件處理部分中的MIC校驗(yàn)和MIC生成替換了軟件的功能,ONU對(duì)接收到的下行PLOAM消息采用硬件來(lái)完成MIC校驗(yàn),對(duì)于ONU發(fā)送的上行PLOAM消息也采用硬件來(lái)完成MIC校驗(yàn)字節(jié)生成,MIC校驗(yàn)和MIC生成是指ITU-T G.987.3CLAUSE15.6定義的AES-CMAC算法,其中:下行PLOAM消息是指XG-PONl系統(tǒng)中OLT發(fā)送給ONU的PLOAM消息,下行PLOAM消息包括但不限于消息類型號(hào)為 0x01、0x03、0x04、0x05、0x06、0x09、0x0A、0x0D、0xl2 等 9 條消息;上行 PLOAM 消息是指XG-PONl系統(tǒng)中ONU發(fā)送給OLT的PLOAM消息,上行PLOAM消息包括但不限于消息類型號(hào)為0x01、0x02、0x05、0x09、0xl0等5條消息;下行和上行PLOAM消息的數(shù)據(jù)格式符合G.987.3CLAUSE11.2章節(jié)的定義,包括ONU的ID號(hào)、PLOAM消息類型ID號(hào)、序列號(hào)、消息內(nèi)容、MIC校驗(yàn)字節(jié)。在上述技術(shù)方案的基礎(chǔ)上,所述硬件處理還包括:對(duì)于下行PLOAM消息依據(jù)ONU的注冊(cè)狀態(tài)進(jìn)行硬件過濾,濾除ONU在該狀態(tài)下不需要處理的下行PLOAM消息。在上述技術(shù)方案的基礎(chǔ)上,所述硬件處理部分設(shè)有下行PLOAM緩存和上行PLOAM緩存,CPU對(duì)PLOAM緩存(指下行PLOAM緩存和上行PLOAM緩存,即PLOAM消息的接收緩存和發(fā)送緩存)的讀寫采用直接選址訪問,以提高CPU和ONU硬件電路的數(shù)據(jù)交換速度,PLOAM緩存采用先進(jìn)先出FIFO實(shí)現(xiàn)。在上述技術(shù)方案的基礎(chǔ)上,所述硬件處理部分為PLOAM消息處理加速電路,具體包括:下行數(shù)據(jù)處理電路和上行數(shù)據(jù)處理電路。所述下行數(shù)據(jù)處理電路包括中斷產(chǎn)生電路、以及依次連接的下行MIC校驗(yàn)電路、下行PLOAM過濾電路、下行PLOAM寫使能生成電路、下行PLOAM緩存電路、下行PLOAM讀使能生成電路;所述上行數(shù)據(jù)處理電路包括依次連接的上行PLOAM寫使能生成電路、上行PLOAM緩存電路、上行PLOAM讀使能生成電路、上行MIC生成電路。本發(fā)明提出實(shí)現(xiàn)XG-P0N10NU的PLOAM消息處理加速的實(shí)現(xiàn)電路,如圖1所示,包括:1、用于下行PLOAM消息的下行MIC校驗(yàn)電路,對(duì)下行PLOAM消息進(jìn)行MIC計(jì)算,與下行PLOAM消息中的MIC字節(jié)進(jìn)行比對(duì)。2、用于下行PLOAM消息的下行PLOAM過濾電路,對(duì)于下行PLOAM消息依據(jù)ONU的注冊(cè)狀態(tài)進(jìn)行過濾。3、下行PLOAM寫使能生成電路,下行PLOAM緩存電路的寫控制電路,將下行PLOAM消息寫入緩存中。4、用于下行PLOAM消息的中斷產(chǎn)生電路,完成中斷信號(hào)的生成和控制。5、下行PLOAM消息緩存電路,完成對(duì)下行PLOAM消息的存儲(chǔ)。6、下行PLOAM讀使能生成電路,用于CPU對(duì)下行PLOAM消息的直接尋址的讀控制電路。7、上行PLOAM寫使能生成電路,用于CPU對(duì)上行PLOAM消息的直接尋址的寫控制電路。8、上行PLOAM緩存電路,完成對(duì)上行PLOAM消息的存儲(chǔ)。9、上行PLOAM讀使能生成電路,上行PLOAM緩存電路的讀控制電路,將上行PLOAM消息從緩存中讀出。10、用于上行PLOAM消息的上行MIC生成電路,完成上行PLOAM消息的MIC字節(jié)的生成計(jì)算。在上述技術(shù)方案的基礎(chǔ)上,如圖1所示,硬件處理部分處理、產(chǎn)生以下信號(hào):下行PLOAM數(shù)據(jù):為并行數(shù)據(jù)信號(hào),是ONU接收到的下行數(shù)據(jù);下行PLOAM數(shù)據(jù)使能:下行PLOAM數(shù)據(jù)的有效指示信號(hào),為高時(shí)指示下行PLOAM的并行數(shù)據(jù)信號(hào)有效,為低時(shí)指示下行PLOAM的并行數(shù)據(jù)無(wú)效;下行FIFO剩余空間:指示下行PLOAM緩存的剩余空間,為0時(shí)指示下行PLOAM緩存的被占滿,為全I(xiàn)時(shí)指示下行PLOAM緩存還沒有存放數(shù)據(jù);下行FIFO占用空間:指示下行PLOAM緩存的占用空間,為0時(shí)表示緩存中沒有數(shù)據(jù),為全I(xiàn)是指示緩存被占滿;下行FIFO寫使能:由下行PLOAM寫使能生成電路產(chǎn)生,用于控制下行PLOAM數(shù)據(jù)寫入下行FIFO緩存,為高時(shí)寫入,為低時(shí)不動(dòng)作;下行FIFO讀使能:由下行PLOAM讀使能生成電路產(chǎn)生,用于控制下行PLOAM數(shù)據(jù)從下行FIFO緩存中讀出,為高時(shí)讀出,為低時(shí)不動(dòng)作;CPU讀使能:CPU總線的讀控制信號(hào),為高時(shí)讀取,為低時(shí)不動(dòng)作;CPU讀地址:CPU的地址總線,在CPU讀信號(hào)為高時(shí)有效;CPU讀數(shù)據(jù):CPU的數(shù)據(jù)總線,為CPU從下行FIFO中讀出的下行PLOAM數(shù)據(jù);中斷指示:由中斷生成電路產(chǎn)生,當(dāng)下行FIFO緩存占用空間大于或者等于一個(gè)下行PLOAM消息的長(zhǎng)度時(shí),產(chǎn)生中斷指示;上行FIFO剩余空間:指示上行PLOAM緩存的剩余空間,為0時(shí)指示上行PLOAM緩存的被占滿,為全I(xiàn)時(shí)指示上行PLOAM緩存還沒有存放數(shù)據(jù);上行FIFO占用空間:指示上行PLOAM緩存的占用空間,為0時(shí)表示緩存中沒有數(shù)據(jù),為全I(xiàn)是指示緩存被占滿;上行FIFO寫使能:由上行PLOAM寫使能生成電路產(chǎn)生,用于控制上行PLOAM數(shù)據(jù)寫入上行FIFO緩存,為高時(shí)寫入,為低時(shí)不動(dòng)作;上行FIFO讀使能:由上行PLOAM讀使能生成電路產(chǎn)生,用于控制上行PLOAM數(shù)據(jù)從上行FIFO緩存中讀出,為高時(shí)讀出,為低時(shí)不動(dòng)作;CPU寫使能:CPU總線的寫控制信號(hào),為高時(shí)寫入,為低時(shí)不動(dòng)作;CPU寫地址:CPU的地址總線,在CPU寫信號(hào)為高時(shí)有效;CPU寫數(shù)據(jù):CPU的數(shù)據(jù)總線,為CPU寫入上行FIFO的上行PLOAM數(shù)據(jù),當(dāng)寫信號(hào)為聞時(shí)有效;上行PLOAM發(fā)送使能:依據(jù)OLT的指示生成的上行PLOAM發(fā)送指示信號(hào),為高時(shí)發(fā)送上行PLOAM消息,為低時(shí)不發(fā)送;上行PLOAM數(shù)據(jù):為并行數(shù)據(jù)信號(hào),是ONU發(fā)送到的上行PLOAM消息;上行PLOAM數(shù)據(jù)使能:指示上行PLOAM數(shù)據(jù)有效的指示信號(hào),為高時(shí)指示上行PLOAM的并行數(shù)據(jù)信號(hào)有效,為低時(shí)指示上行PLOAM的并行數(shù)據(jù)無(wú)效。在上述技術(shù)方案的基礎(chǔ)上,下行MIC校驗(yàn)電路完成對(duì)下行PLOAM消息的MIC校驗(yàn),當(dāng)下行PLOAM數(shù)據(jù)使能信號(hào)有效時(shí),判斷該P(yáng)LOAM消息是否是屬于本ONU的下行單播PLOAM消息或者組播PLOAM消息,提取該P(yáng)LOAM消息的最后8個(gè)字節(jié),這8個(gè)字節(jié)是該P(yáng)LOAM消息自帶的MIC校驗(yàn)字節(jié),并利用去除最后8個(gè)字節(jié)后的該P(yáng)LOAM消息數(shù)據(jù)和PLOAM消息的密鑰計(jì)算該P(yáng)LOAM消息的正確MIC校驗(yàn)字節(jié),然后利用計(jì)算出的正確MIC校驗(yàn)字節(jié)與從PLOAM消息中提取出的MIC校驗(yàn)字節(jié)進(jìn)行比對(duì),如果一致,MIC校驗(yàn)正確,PLOAM消息繼續(xù)向下傳送,如果不一致,MIC校驗(yàn)錯(cuò)誤,該P(yáng)LOAM消息做丟棄處理,該下行PLOAM數(shù)據(jù)對(duì)應(yīng)的下行PLOAM數(shù)據(jù)使能信號(hào)被置低,讓該P(yáng)LOAM消息無(wú)效。在上述技術(shù)方案的基礎(chǔ)上,下行PLOAM過濾電路完成對(duì)MIC校驗(yàn)正確后的PLOAM消息的濾除功能,該功能通過濾除表項(xiàng)來(lái)完成,以下為一個(gè)濾除表項(xiàng)的實(shí)施例。
權(quán)利要求
1.XG-PONl系統(tǒng)ONU端的PLOAM消息處理加速的方法,其特征在于:在ONU對(duì)PLOAM消息處理的過程中采用CPU軟件處理和硬件處理相結(jié)合,所述硬件處理是指:通過硬件處理部分實(shí)現(xiàn)MIC校驗(yàn)和MIC生成, ONU對(duì)接收到的下行PLOAM消息采用硬件來(lái)完成MIC校驗(yàn),對(duì)于ONU發(fā)送的上行PLOAM消息也采用硬件來(lái)完成MIC校驗(yàn)字節(jié)生成,其中:下行PLOAM消息是指XG-PONl系統(tǒng)中OLT發(fā)送給ONU的PLOAM消息,上行PLOAM消息是指XG-PONl系統(tǒng)中ONU發(fā)送給OLT的PLOAM消息, 下行和上行PLOAM消息的數(shù)據(jù)格式符合G.987.3CLAUSE11.2章節(jié)的定義,包括ONU的ID號(hào)、PLOAM消息類型ID號(hào)、序列號(hào)、消息內(nèi)容、MIC校驗(yàn)字節(jié)。
2.如權(quán)利要求1所述的XG-PONl系統(tǒng)ONU端的PLOAM消息處理加速的方法,其特征在于,所述硬件處理還包括:對(duì)于下行PLOAM消息依據(jù)ONU的注冊(cè)狀態(tài)進(jìn)行硬件過濾,濾除ONU在該狀態(tài)下不需要處理的下行PLOAM消息。
3.如權(quán)利要求1所述的XG-PONl系統(tǒng)ONU端的PLOAM消息處理加速的方法,其特征在于:所述硬件處理部分設(shè)有下行PLOAM緩存和上行PLOAM緩存,CPU對(duì)PLOAM緩存的讀寫采用直接選址訪問,PLOAM緩存采用先進(jìn)先出FIFO實(shí)現(xiàn)。
4.如權(quán)利要求1所述的XG-PONl系統(tǒng)ONU端的PLOAM消息處理加速的方法,其特征在于:所述硬件處理部分為PLOAM消息處理加速電路,具體包括下行數(shù)據(jù)處理電路和上行數(shù)據(jù)處理電路;所述PLOAM消息處理加速電路完成下行PLOAM消息處理流程和上行PLOAM消息處理流程; 所述下行數(shù)據(jù)處理電路包括中斷產(chǎn)生電路、以及依次連接的下行MIC校驗(yàn)電路、下行PLOAM過濾電路、下行PLOAM寫使能生成電路、下行PLOAM緩存電路、下行PLOAM讀使能生成電路; 所述上行數(shù)據(jù)處理電路包括依次連接的上行PLOAM寫使能生成電路、上行PLOAM緩存電路、上行PLOAM讀使能生成電路、上行MIC生成電路。
5.如權(quán)利要求4所述的XG-PONl系統(tǒng)ONU端的PLOAM消息處理加速的方法,其特征在于,硬件處理部分處理、產(chǎn)生以下信號(hào): 下行PLOAM數(shù)據(jù):為并行數(shù)據(jù)信號(hào),是ONU接收到的下行數(shù)據(jù); 下行PLOAM數(shù)據(jù)使能:下行PLOAM數(shù)據(jù)的有效指示信號(hào),為高時(shí)指示下行PLOAM的并行數(shù)據(jù)信號(hào)有效,為低時(shí)指示下行PLOAM的并行數(shù)據(jù)無(wú)效; 下行FIFO剩余空間:指示下行PLOAM緩存的剩余空間,為0時(shí)指示下行PLOAM緩存的被占滿,為全I(xiàn)時(shí)指示下行PLOAM緩存還沒有存放數(shù)據(jù); 下行FIFO占用空間:指示下行PLOAM緩存的占用空間,為0時(shí)表示緩存中沒有數(shù)據(jù),為全I(xiàn)是指不緩存被占滿; 下行FIFO寫使能:由下行PLOAM寫使能生成電路產(chǎn)生,用于控制下行PLOAM數(shù)據(jù)寫入下行FIFO緩存,為高時(shí)寫入,為低時(shí)不動(dòng)作; 下行FIFO讀使能:由下行PLOAM讀使能生成電路產(chǎn)生,用于控制下行PLOAM數(shù)據(jù)從下行FIFO緩存中讀出,為高時(shí)讀出,為低時(shí)不動(dòng)作; CPU讀使能:CPU總線的讀 控制信號(hào),為高時(shí)讀取,為低時(shí)不動(dòng)作; CPU讀地址:CPU的地址總線,在CPU讀信號(hào)為高時(shí)有效;CPU讀數(shù)據(jù):CPU的數(shù)據(jù)總線,為CPU從下行FIFO中讀出的下行PLOAM數(shù)據(jù); 中斷指示:由中斷生成電路產(chǎn)生,當(dāng)下行FIFO緩存占用空間大于或者等于一個(gè)下行PLOAM消息的長(zhǎng)度時(shí),產(chǎn)生中斷指示; 上行FIFO剩余空間:指示上行PLOAM緩存的剩余空間,為0時(shí)指示上行PLOAM緩存的被占滿,為全I(xiàn)時(shí)指示上行PLOAM緩存還沒有存放數(shù)據(jù); 上行FIFO占用空間:指示上行PLOAM緩存的占用空間,為0時(shí)表示緩存中沒有數(shù)據(jù),為全I(xiàn)是指不緩存被占滿; 上行FIFO寫使能:由上行PLOAM寫使能生成電路產(chǎn)生,用于控制上行PLOAM數(shù)據(jù)寫入上行FIFO緩存,為高時(shí)寫入,為低時(shí)不動(dòng)作; 上行FIFO讀使能:由上行PLOAM讀使能生成電路產(chǎn)生,用于控制上行PLOAM數(shù)據(jù)從上行FIFO緩存中讀出,為高時(shí)讀出,為低時(shí)不動(dòng)作; CPU寫使能:CPU總線的寫控制信號(hào),為高時(shí)寫入,為低時(shí)不動(dòng)作; CPU寫地址:CPU的地址總線,在CPU寫信號(hào)為高時(shí)有效; CPU寫數(shù)據(jù):CPU的數(shù)據(jù)總線,為CPU寫入上行FIFO的上行PLOAM數(shù)據(jù),當(dāng)寫信號(hào)為高時(shí)有效; 上行PLOAM發(fā)送使能:依據(jù)OLT的指示生成的上行PLOAM發(fā)送指示信號(hào),為高時(shí)發(fā)送上行PLOAM消息,為低時(shí)不發(fā)送; 上行PLOAM數(shù)據(jù):為并行數(shù)據(jù)信號(hào),是ONU發(fā)送到的上行PLOAM消息; 上行PLOAM數(shù)據(jù)使能:指示上行PLOAM數(shù)據(jù)有效的指示信號(hào),為高時(shí)指示上行PLOAM的并行數(shù)據(jù)信號(hào)有效,為低時(shí)指示上行PLOAM的并行數(shù)據(jù)無(wú)效。
6.如權(quán)利要求5所述的XG-P0N1系統(tǒng)ONU端的PLOAM消息處理加速的方法,其特征在于,下行PLOAM消息處理流程的步驟為: 當(dāng)ONU收到屬于本ONU的下行PLOAM消息或者廣播PLOAM消息時(shí),首先對(duì)下行PLOAM消息進(jìn)行MIC校驗(yàn),將計(jì)算出的8字節(jié)的MIC數(shù)據(jù)與從下行PLOAM消息中提取的8字節(jié)數(shù)據(jù)進(jìn)行比對(duì),如果一致,該下行PLOAM消息送往后續(xù)處理模塊;如果比對(duì)不一致,將該下行PLOAM消息丟棄;對(duì)于MIC校驗(yàn)正確的下行PLOAM數(shù)據(jù),需要判斷下行FIFO的緩存剩余空間是否足夠存放該下行PLOAM消息,判斷條件是下行FIFO的剩余空間是否大于等于一幀下行PLOAM消息的長(zhǎng)度,如果小于一幀PLOAM消息的長(zhǎng)度,表明FIFO緩存不能存放該P(yáng)LOAM消息,該下行PLOAM消息做丟棄處理,如果大于等于一幀PLOAM消息的長(zhǎng)度,表明下行FIFO緩存可以存放該P(yáng)LOAM消息,就可以將該P(yáng)LOAM消息寫入到下行FIFO中;當(dāng)下行FIFO中寫入數(shù)據(jù)后,依據(jù)下行FIFO的緩存占用空間指示,當(dāng)下行FIFO緩存占用空間大于等于一幀PLOAM消息的長(zhǎng)度時(shí),將中斷指示信號(hào)置為高通知CPU可以讀取下行PLOAM消息;當(dāng)CPU收到中斷指示后,執(zhí)行中斷處理程序,首先讀取下行PLOAM緩存的狀態(tài),獲得可以讀取的下行PLOAM消息的個(gè)數(shù),然后依據(jù)可讀取PLOAM消息的個(gè)數(shù),執(zhí)行讀取操作,從下行PLOAM消息緩存中讀出PLOAM數(shù)據(jù);讀操作完成后,對(duì)下行PLOAM消息的中斷信號(hào)執(zhí)行清除操作,將中斷指示信號(hào)置為低。
7.如權(quán)利要求5所述的XG-P0N1系統(tǒng)ONU端的PLOAM消息處理加速的方法,其特征在于,上行PLOAM消息處理流程的步驟為: 當(dāng)CPU生成上行PLOAM消息后,首先讀取上行FIFO緩存的剩余空間狀態(tài),如果上行FIFO緩存的剩余空間不能裝下一幀完整的PLOAM數(shù)據(jù),繼續(xù)等待,直到上行FIFO緩存的剩余空間大于等于一幀PLOAM消息的長(zhǎng)度;如果上行FIFO緩存的剩余空間大于等于一幀PLOAM消息的長(zhǎng)度,將該P(yáng)LOAM消息寫入到上行FIFO緩存中;當(dāng)上行PLOAM發(fā)送使能信號(hào)有效時(shí),首先判斷上行FIFO的緩存占用空間是否大于等于一幀PLOAM消息的長(zhǎng)度,如果緩存占用空間大于等于一幀PLOAM消息的長(zhǎng)度,表明上行FIFO緩存中存儲(chǔ)有一幀完整的上行PLOAM消息,將該上行PLOAM消息讀出,送往MIC校驗(yàn)生成模塊,利用除去最后8字節(jié)后的PLOAM消息的數(shù)據(jù)和PLOAM消息的密鑰計(jì)算出8字節(jié)的MIC校驗(yàn)字節(jié),替換PLOAM消息中的最后8個(gè)字節(jié),然后將替換后的PLOAM消息發(fā)送出去;如果緩存占用空間小于一幀PLOAM消息的長(zhǎng)度,表明上行FIFO緩存中沒有一幀完整的PLOAM消息數(shù)據(jù)或者根本就沒有數(shù)據(jù),硬件電路生成一幀空消息送往MIC校驗(yàn)生成模塊,利用除去最后8字節(jié)的空消息的數(shù)據(jù)和PLOAM消息的密鑰計(jì)算出8字節(jié)的MIC校驗(yàn)字節(jié),替換空消息中數(shù)據(jù)中的最后8個(gè)字節(jié),然后將替換后的空消息發(fā)送 出去。
全文摘要
本發(fā)明涉及XG-PON1系統(tǒng)ONU端的PLOAM消息處理加速的方法,在ONU對(duì)PLOAM消息處理的過程中采用CPU軟件處理和硬件處理相結(jié)合,通過硬件處理部分實(shí)現(xiàn)MIC校驗(yàn)和MIC生成,ONU對(duì)接收到的下行PLOAM消息采用硬件來(lái)完成MIC校驗(yàn),對(duì)于ONU發(fā)送的上行PLOAM消息也采用硬件來(lái)完成MIC校驗(yàn)字節(jié)生成,其中下行PLOAM消息是指XG-PON1系統(tǒng)中OLT發(fā)送給ONU的PLOAM消息,上行PLOAM消息是指XG-PON1系統(tǒng)中ONU發(fā)送給OLT的PLOAM消息。本發(fā)明所述的方法,利用硬件電路來(lái)替代軟件的部分功能,并加快軟件和硬件數(shù)據(jù)交互的速度,提高了ONU對(duì)PLOAM消息的處理性能,降低PLOAM消息的處理時(shí)間,提高XG-PON1系統(tǒng)的穩(wěn)定性。
文檔編號(hào)H04L12/861GK103117954SQ201310007698
公開日2013年5月22日 申請(qǐng)日期2013年1月9日 優(yōu)先權(quán)日2013年1月9日
發(fā)明者劉登強(qiáng) 申請(qǐng)人:烽火通信科技股份有限公司