專利名稱:以太網(wǎng)幀處理方法及裝置的制作方法
技術(shù)領(lǐng)域:
本申請(qǐng)涉及通信技術(shù)領(lǐng)域,特別是涉及一種基站中的DSP (Digital SignalProcessor,數(shù)字信號(hào)處理器)對(duì)ethernet (以太網(wǎng))巾貞的處理方法及裝置。
背景技術(shù):
Ethernet接口是一種用途廣泛的嵌入式處理器接口,各家廠商的DSP上都集成了ethernet接口,利用它來(lái)連接通用處理器、ARM (Advanced RISC Machines)、PC機(jī),以及在DSP間做數(shù)據(jù)通信。DSP集成的ethernet接口早已達(dá)到Gbps速率,ethernet通信在基站系統(tǒng)中的使用范圍也不斷擴(kuò)展,然而其處理效率很大程度上依賴于處理方式是否與通信數(shù)據(jù)模型匹 配。目前,常見(jiàn)的ethernet處理接收數(shù)據(jù)時(shí)的兩種軟件方法分別如圖I和圖2所示。一種是DSP響應(yīng)ethernet接收巾貞中斷的方法,如圖I所示,以ethernet巾貞為單位產(chǎn)生接收幀中斷,在中斷處理程序中處理ethernet幀的一幀數(shù)據(jù),圖I中,t表示時(shí)間,每個(gè)豎箭頭代表接收到一個(gè)ethernet巾貞,產(chǎn)生一次接收中斷。另一種是DSP響應(yīng)定時(shí)器中斷處理接收ethernet巾貞的方法,如圖2所示,用timer計(jì)數(shù)器產(chǎn)生周期中斷,在中斷處理程序中輪詢接收BD (buffer descriptor,緩沖描述符)鏈,處理本周期內(nèi)接收到的多巾貞數(shù)據(jù),圖2中,t表示時(shí)間,每個(gè)實(shí)心豎箭頭代表一次定時(shí)器中斷,處理每次間隔里接收到的所有ethernet幀(以虛箭頭表示)。上述方法中,在接收幀中斷中處理接收數(shù)據(jù)是響應(yīng)速度最快的辦法,但在數(shù)據(jù)接收過(guò)于頻繁時(shí),反復(fù)進(jìn)入接收巾貞中斷,影響處理器整體效率。包大小對(duì)ethernet巾貞接收效率的影響很大,在接收幾千字節(jié)(分片)的包時(shí),速率可達(dá)幾百M(fèi)bps,而在接收幾十字節(jié)的包時(shí)速率只有一百多Mbps。Ethernet接收巾貞中斷任務(wù)頻繁中斷應(yīng)用任務(wù)的情況如圖3所示,從圖3中可以看出,用接收幀中斷模式處理頻繁接收的小包,效率下降尤其明顯。在timer周期中斷中批量處理接收數(shù)據(jù),可以提高處理效率,但在處理一些對(duì)接收時(shí)間點(diǎn)要求苛刻的ethernet巾貞時(shí),實(shí)時(shí)性較差;且timer周期在軟件初始化時(shí)寫死,無(wú)法在線修改;另外周期內(nèi)能夠緩存的ethernet幀最大個(gè)數(shù)依賴內(nèi)存尺寸,為了滿足峰值接收個(gè)數(shù),就要把緩存增大到峰值以上,這樣大多數(shù)情況下接收幀個(gè)數(shù)比峰值小得多,造成內(nèi)存浪費(fèi)。定時(shí)器中斷任務(wù)處理ethernet巾貞如圖4所示,其中,虛箭頭表示接收到一個(gè)ethernet幀。在實(shí)際應(yīng)用中,ethernet巾貞接收存在著各種各樣的情況,對(duì)ethernet巾貞處理的要求也各不相同,如某些業(yè)務(wù)的ethernet巾貞要求實(shí)時(shí)處理,而某些業(yè)務(wù)的ethernet巾貞要求高效率處理等。然而,無(wú)論使用上述哪種方法,現(xiàn)有的DSP都無(wú)法根據(jù)實(shí)際情況對(duì)ethernet幀進(jìn)行靈活處理,無(wú)法同時(shí)滿足業(yè)務(wù)的多樣化需求
發(fā)明內(nèi)容
本申請(qǐng)?zhí)峁┝艘环N以太網(wǎng)幀的處理方法及裝置,以解決現(xiàn)有的DSP無(wú)法根據(jù)實(shí)際情況對(duì)ethernet幀進(jìn)行靈活處理,無(wú)法同時(shí)滿足業(yè)務(wù)的多樣化需求的問(wèn)題。為了解決上述問(wèn)題,本申請(qǐng)公開(kāi)了一種以太網(wǎng)幀處理方法,包括定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù);根據(jù)所述以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換,其中,所述以太網(wǎng)幀的處理模式包括幀中斷處理模式和定時(shí)器處理模式;若需要,則對(duì)所述當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換。為了解決上述問(wèn)題,本申請(qǐng)還公開(kāi)了一種以太網(wǎng)幀處理裝置,包括檢測(cè)模塊,用于定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù);切換模 塊,用于根據(jù)所述以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換,其中,所述以太網(wǎng)幀的處理模式包括幀中斷處理模式和定時(shí)器處理模式;若需要,則對(duì)所述當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換。與現(xiàn)有技術(shù)相比,本申請(qǐng)具有以下優(yōu)點(diǎn)本申請(qǐng)使用以太網(wǎng)幀處理的自動(dòng)調(diào)整模式,定時(shí)檢測(cè)基站中以太網(wǎng)幀的運(yùn)行狀態(tài),包括以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù),根據(jù)檢測(cè)結(jié)果自動(dòng)判斷是否需要在以太網(wǎng)幀的幀中斷處理模式和定時(shí)器處理模式之間進(jìn)行切換。例如,當(dāng)判斷以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)小于某一閾值或比例時(shí),則確定需要使用幀中斷處理模式,這時(shí),若當(dāng)前以太網(wǎng)幀的處理模式為定時(shí)器處理模式,則切換為幀中斷處理模式進(jìn)行以太網(wǎng)幀處理;同樣,當(dāng)判斷以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)大于某一閾值或比例時(shí),則確定需要使用定時(shí)器處理模式,這時(shí),若當(dāng)前以太網(wǎng)幀的處理模式為幀中斷處理模式,則切換為定時(shí)器處理模式進(jìn)行以太網(wǎng)幀處理。定時(shí)器處理模式相比幀中斷處理模式,效率更高;而幀中斷處理模式擁有更好的實(shí)時(shí)性,對(duì)每一幀都立即處理。本申請(qǐng)根據(jù)以太網(wǎng)幀的運(yùn)行狀態(tài),及時(shí)調(diào)整以太網(wǎng)幀的處理模式,既可以實(shí)現(xiàn)以太網(wǎng)幀的及時(shí)處理,又能夠提高以太網(wǎng)幀處理的工作效率。通過(guò)本申請(qǐng),使用自適應(yīng)的切換模式,可以使以太網(wǎng)幀處理根據(jù)工作環(huán)境自動(dòng)調(diào)整到最有效的模式,解決了現(xiàn)有的DSP無(wú)法根據(jù)實(shí)際情況對(duì)以太網(wǎng)幀進(jìn)行靈活處理,無(wú)法同時(shí)滿足業(yè)務(wù)的多樣化需求的問(wèn)題,兼顧了以太網(wǎng)幀處理的實(shí)時(shí)性和效率,滿足了業(yè)務(wù)的多樣化需求。
圖I是現(xiàn)有技術(shù)的一種DSP響應(yīng)ethernet接收巾貞中斷的示意圖;圖2是現(xiàn)有技術(shù)的一種DSP響應(yīng)定時(shí)器中斷處理接收ethernet巾貞的示意圖;圖3是現(xiàn)有技術(shù)的一種ethernet接收巾貞中斷任務(wù)頻繁中斷應(yīng)用任務(wù)的示意圖;圖4是現(xiàn)有技術(shù)的一種定時(shí)器中斷任務(wù)處理ethernet巾貞的示意圖;圖5是根據(jù)本申請(qǐng)實(shí)施例一的一種ethernet巾貞處理方法的步驟流程圖;圖6是根據(jù)本申請(qǐng)實(shí)施例二的一種ethernet巾貞處理方法的步驟流程圖;圖7是根據(jù)本申請(qǐng)實(shí)施例三的一種ethernet巾貞處理方法的步驟流程圖;圖8是根據(jù)本申請(qǐng)實(shí)施例四的一種ethernet巾貞處理方法的步驟流程圖;圖9是圖8所示實(shí)施例中的ethernet幀可用緩存資源切換規(guī)則的示意圖10是圖8所示實(shí)施例中的單位時(shí)間接收ethernet幀數(shù)切換規(guī)則的示意圖;圖11是圖8所示實(shí)施例中的以ethernet巾貞可用緩存資源為檢測(cè)對(duì)象的ethernet幀處理模式切換的流程圖;圖12是圖8所示實(shí)施例中的以單位時(shí)間接收ethernet幀數(shù)為檢測(cè)對(duì)象的ethernet巾貞處理模式切換的流程圖;圖13是根據(jù)本申請(qǐng)實(shí)施例四的一種ethernet幀處理裝置的結(jié)構(gòu)框圖。
具體實(shí)施例方式為使本申請(qǐng)的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式
對(duì)本申請(qǐng)作進(jìn)一步詳細(xì)的說(shuō)明。
實(shí)施例一參照?qǐng)D5,示出了根據(jù)本申請(qǐng)實(shí)施例一的一種ethernet巾貞處理方法的步驟流程圖。本實(shí)施例的ethernet巾貞處理方法包括以下步驟步驟S102 =DSP定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)。其中,定時(shí)的時(shí)間可以由本領(lǐng)域技術(shù)人員根據(jù)實(shí)際情況適當(dāng)設(shè)置,通常為秒級(jí)??捎镁彺尜Y源是ethernet存儲(chǔ)接收數(shù)據(jù)的多個(gè)緩存buffer,上層處理完接收數(shù)據(jù)后,釋放緩存給ethernet再次用于接收數(shù)據(jù),緩存耗盡時(shí)無(wú)法接收數(shù)據(jù)。步驟S104 =DSP根據(jù)以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換。其中,以太網(wǎng)幀的處理模式包括幀中斷處理模式和定時(shí)器處理模式。幀中斷處理模式以ethernet巾貞為單位產(chǎn)生接收巾貞中斷,在中斷處理程序中處理ethernet巾貞的一巾貞數(shù)據(jù);定時(shí)器處理模式用timer計(jì)數(shù)器產(chǎn)生周期中斷,在中斷處理程序中輪詢接收BD鏈,處理本周期內(nèi)接收到的多幀數(shù)據(jù)。例如,當(dāng)判斷以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)小于某一閾值或比例時(shí),則確定需要使用幀中斷處理模式,這時(shí),若當(dāng)前以太網(wǎng)幀的處理模式為定時(shí)器處理模式,則切換為幀中斷處理模式進(jìn)行以太網(wǎng)幀處理;同樣,當(dāng)判斷以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)大于某一閾值或比例時(shí),則確定需要使用定時(shí)器處理模式,這時(shí),若當(dāng)前以太網(wǎng)幀的處理模式為幀中斷處理模式,則切換為定時(shí)器處理模式進(jìn)行以太網(wǎng)幀處理。步驟S106 =DSP確定需要進(jìn)行切換,對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換。包括將當(dāng)前以太網(wǎng)幀的處理模式從幀中斷處理模式切換為定時(shí)器處理模式,或者,從定時(shí)器處理模式切換為幀中斷處理模式。本實(shí)施例使用以太網(wǎng)幀處理的自動(dòng)調(diào)整模式,定時(shí)檢測(cè)基站中以太網(wǎng)幀的運(yùn)行狀態(tài),包括以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù),根據(jù)檢測(cè)結(jié)果自動(dòng)判斷是否需要在以太網(wǎng)幀的幀中斷處理模式和定時(shí)器處理模式之間進(jìn)行切換。定時(shí)器處理模式相比幀中斷處理模式,效率更高;而幀中斷處理模式擁有更好的實(shí)時(shí)性,對(duì)每一幀都立即處理。本實(shí)施例根據(jù)以太網(wǎng)幀的運(yùn)行狀態(tài),及時(shí)調(diào)整以太網(wǎng)幀的處理模式,既可以實(shí)現(xiàn)以太網(wǎng)幀的及時(shí)處理,又能夠提高以太網(wǎng)幀處理的工作效率。通過(guò)本實(shí)施例,使用自適應(yīng)的切換模式,可以使以太網(wǎng)幀處理根據(jù)工作環(huán)境自動(dòng)調(diào)整到最有效的模式,解決了現(xiàn)有的DSP無(wú)法根據(jù)實(shí)際情況對(duì)以太網(wǎng)幀進(jìn)行靈活處理,無(wú)法同時(shí)滿足業(yè)務(wù)的多樣化需求的問(wèn)題,兼顧了以太網(wǎng)幀處理的實(shí)時(shí)性和效率,滿足了業(yè)務(wù)的多樣化需求。實(shí)施例二參照?qǐng)D6,示出了根據(jù)本申請(qǐng)實(shí)施例二的一種ethernet巾貞處理方法的步驟流程圖。本實(shí)施例的ethernet巾貞處理方法包括以下步驟步驟S202 DSP確定當(dāng)前的ethernet巾貞的處理模式。當(dāng)前的以太網(wǎng)幀的處理模式可能為定時(shí)器處理模式,也可能為幀中斷處理模式。 步驟S204 =DSP確定檢測(cè)對(duì)象,若為ethernet幀的可用緩存資源,則執(zhí)行步驟S206 ;若為單位時(shí)間的ethernet幀接收幀數(shù),則執(zhí)行步驟S216。步驟S206 DSP定時(shí)檢測(cè)基站中ethernet巾貞的可用緩存資源。步驟S208 =DSP判斷ethernet幀的可用緩存資源是否小于第一閾值,若是,則執(zhí)行步驟S210 ;若否,則執(zhí)行步驟S212。其中,第一閾值是可用緩存資源的低門限值,可以由本領(lǐng)域技術(shù)人員根據(jù)實(shí)際情況適當(dāng)設(shè)置。當(dāng)?shù)陀谠撻撝禃r(shí),說(shuō)明目前可用緩存資源較少,需要使用幀中斷處理模式處理ethernet 中貞。步驟S210 DSP根據(jù)當(dāng)前ethernet巾貞的處理模式,對(duì)ethernet巾貞處理模式進(jìn)行相應(yīng)地處理,結(jié)束本次切換流程。包括若當(dāng)前ethernet幀的處理模式為定時(shí)器處理模式,則切換為幀中斷處理模式;若當(dāng)前ethernet巾貞的處理模式為巾貞中斷處理模式,則保持不變。步驟S212 :DSP判斷ethernet幀的可用緩存資源是否大于第二閾值,若是,則執(zhí)行步驟S214 ;若否,則不做切換處理,結(jié)束本次切換流程。其中,第二閾值是可用緩存資源的高門限值,其大于第一閾值,第二閾值可以由本領(lǐng)域技術(shù)人員根據(jù)實(shí)際情況適當(dāng)設(shè)置。當(dāng)高于該閾值時(shí),說(shuō)明目前可用緩存資源較多,可以使用定時(shí)器處理模式高效率處理ethernet幀。步驟S214 :DSP根據(jù)當(dāng)前ethernet巾貞的處理模式,對(duì)ethernet巾貞處理模式進(jìn)行相應(yīng)地處理,結(jié)束本次切換流程。包括若當(dāng)前ethernet幀的處理模式為定時(shí)器處理模式,則保持不變;若當(dāng)前ethernet巾貞的處理模式為巾貞中斷處理模式,則切換為定時(shí)器處理模式。需要說(shuō)明的是,步驟S208-S210與步驟S212-214的執(zhí)行沒(méi)有嚴(yán)格的順序,即,可以先執(zhí)行步驟S208-S210再執(zhí)行步驟S212-214,也可以先執(zhí)行步驟S212-214再執(zhí)行步驟S208-S210。步驟S216 DSP定時(shí)檢測(cè)單位時(shí)間的ethernet巾貞接收巾貞數(shù)。步驟S218 :DSP判斷單位時(shí)間的ethernet幀接收幀數(shù)是否小于第三閾值,若是,則執(zhí)行步驟S220 ;若否,則執(zhí)行步驟S222。其中,第三閾值是單位時(shí)間的ethernet幀接收幀數(shù)的低門限值,可以由本領(lǐng)域技術(shù)人員根據(jù)實(shí)際情況適當(dāng)設(shè)置。當(dāng)?shù)陀谠撻撝禃r(shí),說(shuō)明目前單位時(shí)間的ethernet幀接收幀數(shù)較少,可以使用巾貞中斷處理模式處理ethernet中貞。步驟S220 DSP根據(jù)當(dāng)前ethernet巾貞的處理模式,對(duì)ethernet巾貞處理模式進(jìn)行相應(yīng)地處理,結(jié)束本次切換流程。包括若當(dāng)前ethernet幀的處理模式為定時(shí)器處理模式,則切換為幀中斷處理模式;若當(dāng)前ethernet巾貞的處理模式為巾貞中斷處理模式,則保持不變。步驟S222 :DSP判斷單位時(shí)間的ethernet巾貞接收巾貞數(shù)是否大于第四閾值,若是,則執(zhí)行步驟S224 ;若否,則不做切換處理,結(jié)束本次切換流程。其中,第四閾值是單位時(shí)間的ethernet幀接收幀數(shù)的高門限值,其大于第三閾值,第四閾值可以由本領(lǐng)域技術(shù)人員根據(jù)實(shí)際情況適當(dāng)設(shè)置。當(dāng)高于該閾值時(shí),說(shuō)明目前單位時(shí)間的ethernet巾貞接收巾貞數(shù)較多,可以使用定時(shí)器處理模式高效率處理ethernet中貞。步驟S224 DSP根據(jù)當(dāng)前ethernet巾貞的處理模式,對(duì)ethernet巾貞處理模式進(jìn)行相應(yīng)地處理,結(jié)束本次切換流程。包括若當(dāng)前ethernet幀的處理模式為定時(shí)器處理模式,則保持不變;若當(dāng)前ethernet巾貞的處理模式為巾貞中斷處理模式,則切換為定時(shí)器處理模式。需要說(shuō)明的是,步驟S218-S220與步驟S222-224的執(zhí)行沒(méi)有嚴(yán)格的順序,即,可以先執(zhí)行步驟S218-S220再執(zhí)行步驟S222-224,也可以先執(zhí)行步驟S222-224再執(zhí)行步驟S218-S220。還需要說(shuō)明的是,本實(shí)施例中,以擇一的方式選擇檢測(cè)對(duì)象,不同的檢測(cè)對(duì)象使用不同的檢測(cè)切換流程,但本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本實(shí)施例中的檢測(cè)對(duì)象和檢測(cè)切換方式可以混合使用,適當(dāng)組合,如同時(shí)檢測(cè)以太網(wǎng)幀的可用緩存資源和單位時(shí)間的以太網(wǎng)幀接收幀數(shù),若以太網(wǎng)幀的可用緩存資源小于第一閾值且單位時(shí)間的以太網(wǎng)幀接收幀數(shù)小于第三閾值,或者,若以太網(wǎng)幀的可用緩存資源大于第二閾值且單位時(shí)間的以太網(wǎng)幀接收幀數(shù)大于第四閾值,則根據(jù)當(dāng)前以太網(wǎng)幀的處理模式?jīng)Q定是否進(jìn)行切換,執(zhí)行相應(yīng)的切換流程等。當(dāng)然,也可以僅使用其中的某個(gè)或某些閾值,而使用其它方式代替另外的閾值指標(biāo),如使用空閑緩存率或空閑緩存容量代替第一閾值和/或第二閾值等,以確定是否進(jìn)行以太網(wǎng)幀處理模式的切換。通過(guò)本實(shí)施例,在兼顧以太網(wǎng)幀處理的實(shí)時(shí)性和效率,滿足了業(yè)務(wù)的多樣化需求的基礎(chǔ)上,設(shè)置閾值對(duì)檢測(cè)結(jié)果進(jìn)行判斷,閾值可以根據(jù)實(shí)際情況適當(dāng)設(shè)置,既能盡可能地滿足實(shí)際需求,又實(shí)現(xiàn)簡(jiǎn)單,降低了以太網(wǎng)幀處理的實(shí)現(xiàn)成本。實(shí)施例三參照?qǐng)D7,示出了根據(jù)本申請(qǐng)實(shí)施例三的一種ethernet巾貞處理方法的步驟流程圖。與實(shí)施例二不同的是,本實(shí)施例中設(shè)置了配置接口,通過(guò)配置接口輸入配置參數(shù),根據(jù)配置參數(shù)確定以太網(wǎng)幀的處理模式,以及以太網(wǎng)幀處理模式的調(diào)整模式(包括手動(dòng)調(diào)整和自動(dòng)調(diào)整)。當(dāng)根據(jù)配置參數(shù)確定以太網(wǎng)幀的處理模式的調(diào)整模式為自動(dòng)調(diào)整時(shí),則可以參照實(shí)施例二實(shí)現(xiàn)自動(dòng)調(diào)整。本實(shí)施例的ethernet巾貞處理方法包括以下步驟步驟S302 =DSP接收通過(guò)配置接口輸入的配置參數(shù)。其中,配置參數(shù)包括調(diào)整模式參數(shù)和/或處理模式參數(shù),調(diào)整模式參數(shù)用于指示、對(duì)以太網(wǎng)幀處理模式的切換為自動(dòng)切換或者為手動(dòng)切換,處理模式參數(shù)用于指示以太網(wǎng)幀的處理模式。配置接口可以由本領(lǐng)域技術(shù)人員根據(jù)實(shí)際情況適當(dāng)設(shè)置,如設(shè)置為參數(shù)輸入界面,或者通過(guò)函數(shù)參數(shù)傳遞進(jìn)行輸入等,本申請(qǐng)對(duì)此不作限制。通過(guò)調(diào)整模式參數(shù),可以確定對(duì)以太網(wǎng)幀處理模式的切換是自動(dòng)還是手動(dòng)。當(dāng)確定為手動(dòng)時(shí),則可以根據(jù)處理模式參數(shù),確定以太網(wǎng)幀的處理模式是幀中斷模式還是定時(shí)器模式,以及定時(shí)器模式時(shí)的定時(shí)周期。當(dāng)然,在實(shí)際使用中,也可以僅設(shè)置調(diào)整模式參數(shù),或者,僅設(shè)置處理模式參數(shù)。若僅設(shè)置調(diào)整模式參數(shù),則手動(dòng)調(diào)整時(shí)的參數(shù)(如以太網(wǎng)幀的處理模式和定時(shí)周期等)可以由系統(tǒng)默認(rèn)配置;若僅設(shè)置處理模式參數(shù),則可以通過(guò)設(shè)置特定的處理模式參數(shù)指示調(diào)整模式,如為一 I時(shí)指示自動(dòng)調(diào)整,為非一 I時(shí)指示手動(dòng)調(diào)整等。本實(shí)施例中,設(shè)定配置參數(shù)包括調(diào)整模式參數(shù)和處理模式參數(shù)。 步驟S304 =DSP獲取配置參數(shù),根據(jù)其中的調(diào)整模式參數(shù)確定以太網(wǎng)幀處理模式的切換為自動(dòng)切換或者為手動(dòng)切換,若為自動(dòng)切換,則執(zhí)行步驟S306 ;若為手動(dòng)切換,則執(zhí)行步驟S310。步驟S306 =DSP定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)。步驟S308 =DSP根據(jù)以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換;若需要,則對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換;若不需要,則結(jié)束本次切換流程。步驟S306 —步驟S308可以參照實(shí)施例二實(shí)現(xiàn),在此不再詳述。步驟S310 :獲取配置參數(shù)中的處理模式參數(shù),根據(jù)處理模式參數(shù),設(shè)置以太網(wǎng)幀的處理模式。包括以下至少之一若當(dāng)前以太網(wǎng)幀的處理模式為定時(shí)器處理模式,且該定時(shí)器處理模式使用的定時(shí)器周期不同于處理模式參數(shù)指示的定時(shí)器周期,則重新配置定時(shí)器處理模式使用的定時(shí)器周期為處理模式參數(shù)指示的定時(shí)器周期;若當(dāng)前以太網(wǎng)幀的處理模式為所述定時(shí)器處理模式,且處理模式參數(shù)指示使用幀中斷處理模式處理以太網(wǎng)幀,則將當(dāng)前以太網(wǎng)幀的處理模式從定時(shí)器處理模式切換為幀中斷處理模式;若當(dāng)前以太網(wǎng)幀的處理模式為幀中斷處理模式,且處理模式參數(shù)指示使用定時(shí)器處理模式處理以太網(wǎng)幀,則將當(dāng)前以太網(wǎng)幀的處理模式從幀中斷處理模式切換為定時(shí)器處理模式,且以處理模式參數(shù)指示的定時(shí)器周期為以太網(wǎng)幀的處理周期。優(yōu)選地,當(dāng)確定需要將當(dāng)前以太網(wǎng)幀的處理模式從幀中斷處理模式切換到定時(shí)器處理模式時(shí),確定當(dāng)前使用幀中斷處理模式對(duì)以太網(wǎng)幀進(jìn)行處理的任務(wù)結(jié)束,啟動(dòng)定時(shí)器,關(guān)閉幀中斷處理模式使用的幀中斷寄存器;在定時(shí)器的定時(shí)周期到來(lái)時(shí),使用定時(shí)器處理模式對(duì)以太網(wǎng)幀進(jìn)行處理;當(dāng)確定需要將當(dāng)前以太網(wǎng)幀的處理模式從定時(shí)器處理模式切換到幀中斷處理模式時(shí),確定當(dāng)前使用定時(shí)器處理模式對(duì)以太網(wǎng)幀進(jìn)行處理的任務(wù)結(jié)束,打開(kāi)幀中斷處理模式使用的幀中斷寄存器,關(guān)閉定時(shí)器處理模式使用的定時(shí)器;在接收到以太網(wǎng)幀時(shí),使用幀中斷處理模式對(duì)以太網(wǎng)幀進(jìn)行處理。通過(guò)上述操作,保證了以太網(wǎng)幀處理模式的平滑切換。優(yōu)選地,為了保證以太網(wǎng)幀處理模式的切換不丟包,可以設(shè)置基站可接收的BD的數(shù)量大于以太網(wǎng)峰值速率時(shí)基站可接收的以太網(wǎng)幀的數(shù)量。通過(guò)本實(shí)施例,實(shí)現(xiàn)了以太網(wǎng)幀處理模式調(diào)整的自動(dòng)和手動(dòng)切換,并且,通過(guò)配置接口,可以實(shí)現(xiàn)自動(dòng)和手動(dòng)切換之間的轉(zhuǎn)換,以及處理模式和處理周期的調(diào)整,兼顧了以太網(wǎng)幀處理的實(shí)時(shí)性和效率,滿足了業(yè)務(wù)的多樣化需求。實(shí)施例四參照?qǐng)D8,示出了根據(jù)本申請(qǐng)實(shí)施例四的一種ethernet巾貞處理方法的步驟流程 圖。本實(shí)施例的ethernet幀處理方法在基站的操作系統(tǒng)進(jìn)行任務(wù)切換時(shí)進(jìn)行,利用了 DSP在任務(wù)切換時(shí)中斷處于關(guān)閉狀態(tài),可以修改中斷開(kāi)關(guān)的特性,根據(jù)設(shè)定的切換準(zhǔn)則,對(duì)DSP處理ethernet接收巾貞模式進(jìn)行靈活處理,做到了 ethernet巾貞處理模式的平穩(wěn)切換。當(dāng)然,不限于此,本領(lǐng)域技術(shù)人員在實(shí)際應(yīng)用時(shí),可以根據(jù)具體情況使用其它適當(dāng)?shù)囊蕴W(wǎng)幀處理模式切換的時(shí)機(jī)。本實(shí)施例的ethernet巾貞處理方法包括以下步驟步驟S402 :軟件初始化時(shí),分別創(chuàng)建定時(shí)器和ethernet巾貞接收中斷兩種任務(wù),但不打開(kāi)接收幀中斷,定時(shí)器周期默認(rèn)配置為1ms,調(diào)整模式默認(rèn)為自動(dòng)。本實(shí)施例中,通過(guò)設(shè)置定時(shí)器周期來(lái)設(shè)置配置參數(shù),如步驟S404中所述。步驟S404 :設(shè)置DSP處理ethernet幀的定時(shí)器周期。其中,設(shè)置為0代表使用ethernet接收巾貞中斷(即ethernet巾貞中斷處理模式)來(lái)處理;正的非0值代表定時(shí)器周期,表示以該定時(shí)器周期為處理周期,使用定時(shí)器處理模式進(jìn)行處理;設(shè)置一 I代表使用自動(dòng)調(diào)整模式;其它非一 I值則代表使用手動(dòng)調(diào)整模塊。其中設(shè)置為非一 I值時(shí),定時(shí)器周期重配置立即生效,設(shè)置為一 I值時(shí),重配置在自動(dòng)調(diào)整的優(yōu)先級(jí)任務(wù)中生效。步驟S406 :在任務(wù)切換hook函數(shù)里檢查到定時(shí)器周期配置變化時(shí),按不同情況進(jìn)行相應(yīng)操作。包括(I)改變定時(shí)器的周期當(dāng)定時(shí)器周期從一個(gè)正的非0值變化為另一個(gè)正的非0值時(shí),表示定時(shí)器周期發(fā)生變化,則關(guān)閉該定時(shí)器,按照新周期重新配置定時(shí)器,啟動(dòng)定時(shí)器,以新的定時(shí)器周期為處理周期,使用定時(shí)器處理模式處理以太網(wǎng)幀。(2)從定時(shí)器處理切換到接收幀中斷處理當(dāng)定時(shí)器周期從正的非0值變化為0值時(shí),表示對(duì)以太網(wǎng)幀的處理模式由定時(shí)器處理模式切換為幀中斷處理模式,則關(guān)閉該定時(shí)器,打開(kāi)接收幀中斷寄存器,即打開(kāi)ethernet接收巾貞中斷,使用巾貞中斷處理模式處理以太網(wǎng)中貞。(3)從接收幀中斷處理切換到定時(shí)器處理當(dāng)定時(shí)器周期從0值變化為正的非0值時(shí),表示對(duì)以太網(wǎng)幀的處理模式由幀中斷處理模式切換為定時(shí)器處理模式,則關(guān)閉接收幀中斷寄存器,即關(guān)閉ethernet接收幀中斷,按照配置周期配置定時(shí)器,啟動(dòng)定時(shí)器,以該非0值指示的周期為處理周期,使用定時(shí)器處理模式處理以太網(wǎng)幀。(4)自動(dòng)調(diào)整模式當(dāng)定時(shí)器周期設(shè)置為一 I時(shí),表示系統(tǒng)自動(dòng)對(duì)以太網(wǎng)幀進(jìn)行檢測(cè)及處理模式切換,則開(kāi)始監(jiān)測(cè)ethernet運(yùn)行狀態(tài),按照一定規(guī)則對(duì)定時(shí)器處理模式和接收幀中斷處理模式進(jìn)行切換。當(dāng)定時(shí)器周期配置不為一 I時(shí),則停止監(jiān)測(cè),轉(zhuǎn)換為手動(dòng)調(diào)整。通過(guò)對(duì)ethernet運(yùn)行狀態(tài)的檢測(cè),自適應(yīng)地切換處理模式,提高效率又不影響ethernet運(yùn)行。具體地,可以設(shè)置一個(gè)專用監(jiān)測(cè)任務(wù),定時(shí)對(duì)ethernet運(yùn)行狀態(tài)進(jìn)行檢測(cè)。主要的檢測(cè)目標(biāo)為1、ethernet幀的可用緩存資源;2、單位時(shí)間ethernet接收幀數(shù)(或稱為單 位時(shí)間的ethernet幀接收幀數(shù))。在檢測(cè)目標(biāo)達(dá)到切換門限后,觸發(fā)切換操作。其中,可用緩存資源指的是ethernet存儲(chǔ)接收數(shù)據(jù)的多個(gè)緩存buffer。上層處理完接收數(shù)據(jù)后,釋放緩存給ethernet再次用于接收數(shù)據(jù),緩存耗盡時(shí)無(wú)法接收數(shù)據(jù)。單位時(shí)間ethernet接收幀數(shù)是衡量ethernet控制器工作壓力的參數(shù),當(dāng)幀中斷處理模式接收幀數(shù)較大時(shí),頻繁進(jìn)入中斷,影響效率;而當(dāng)定時(shí)器處理模式接收幀數(shù)很小時(shí),對(duì)幀的響應(yīng)延遲的缺陷就凸顯出來(lái),并且沒(méi)有幀接收的時(shí)候也會(huì)進(jìn)入中斷處理,造成浪費(fèi)。監(jiān)測(cè)任務(wù)監(jiān)測(cè)周期為秒級(jí),即至多I秒執(zhí)行一次,每次僅對(duì)周期內(nèi)記錄的數(shù)據(jù)做簡(jiǎn)單邏輯分析,對(duì)系統(tǒng)性能無(wú)影響。以太網(wǎng)幀處理模式切換僅操作幾個(gè)寄存器,執(zhí)行效率為us級(jí)。優(yōu)選地,監(jiān)測(cè)周期設(shè)置為I秒當(dāng)檢測(cè)目標(biāo)為ethernet幀的可用緩存資源時(shí),切換規(guī)則如圖9所示,包括(A)定時(shí)器處理模式切換到幀中斷處理模式當(dāng)可用緩存資源小于最大緩存的10%時(shí),觸發(fā)切換到幀中斷處理;(B)幀中斷處理模式切換到定時(shí)器處理模式當(dāng)可用緩存資源大于最大緩存的50%時(shí),觸發(fā)切換到定時(shí)器處理;(C)可用緩存資源在最大緩存的10%-50%之間時(shí),保持當(dāng)前處理模式,經(jīng)測(cè)試在這個(gè)區(qū)間內(nèi)兩種處理模式的效率相等,這種操作方式同時(shí)起到了去抖作用。其中,切換門限默認(rèn)值為10%和50%,可以很好地匹配默認(rèn)ethernet使用狀態(tài),且能有效避免抖動(dòng)。但不限于此,在實(shí)際使用中,切換門限可以基于業(yè)務(wù)需求動(dòng)態(tài)調(diào)整。當(dāng)檢測(cè)目標(biāo)為單位時(shí)間ethernet接收幀數(shù)時(shí),切換規(guī)則如圖10所示,包括(D)定時(shí)器處理模式切換到幀中斷處理模式檢測(cè)I秒內(nèi)接收幀數(shù),若接收幀數(shù)小于500,則觸發(fā)切換到幀中斷處理模式;(E)幀中斷處理模式切換到定時(shí)器處理模式檢測(cè)I秒內(nèi)收到的幀數(shù),如果接收的包數(shù)超過(guò)2000,此時(shí)認(rèn)為ethernet處于比較忙的狀態(tài),觸發(fā)啟動(dòng)定時(shí)器中斷;(F)I秒內(nèi)收到的幀數(shù)在500-2000之間時(shí),保持當(dāng)前處理模式,經(jīng)測(cè)試在這個(gè)區(qū)間內(nèi)兩種處理模式的效率相等,這種操作方式同時(shí)起到了去抖作用。其中,切換門限默認(rèn)值為500和2000,可以很好地匹配默認(rèn)ethernet使用狀態(tài),且能有效避免抖動(dòng)。但不限于此,在實(shí)際使用中,切換門限可以基于業(yè)務(wù)需求動(dòng)態(tài)調(diào)整。上述切換規(guī)則既可以依據(jù)可用緩存資源或單位時(shí)間ethernet接收幀數(shù)進(jìn)行一級(jí)切換,也可以兩者串行起來(lái)做兩級(jí)切換,還可以兩者并行做混合切換。其中,一級(jí)切換流程如圖11和圖12所示,兩級(jí)切換和混合切換都是一級(jí)切換的組合。圖11是以ethernet巾貞可用緩存資源為檢測(cè)對(duì)象的ethernet巾貞處理模式切換的流程圖,包括步驟S502 :判斷當(dāng)前的ethernet幀處理模式,若為定時(shí)器處理模式,則執(zhí)行步驟S504 ;若為幀中斷處理模塊,則執(zhí)行步驟S506。步驟S504 :判斷ethernet巾貞的可用緩存是否低于10%,若是,貝U切換到巾貞中斷處理模式,返回步驟S502 ;若否,則直接返回步驟S502。步驟S506 :判斷ethernet巾貞的可用緩存是否高于50%,若是,則切換到定時(shí)器處理模式,返回步驟S502 ;若否,則直接返回步驟S502。圖12是以單位時(shí)間接收ethernet巾貞數(shù)為檢測(cè)對(duì)象的ethernet巾貞處理模式切換的流程圖,包括
步驟S602 :判斷當(dāng)前的ethernet幀處理模式,若為定時(shí)器處理模式,則執(zhí)行步驟S604 ;若為幀中斷處理模塊,則執(zhí)行步驟S606。步驟S604 :判斷每秒接收ethernet巾貞數(shù)是否小于500巾貞,若是,貝U切換到巾貞中斷處理模式,返回步驟S602 ;若否,則直接返回步驟S602。步驟S606 :判斷每秒接收ethernet巾貞數(shù)是否大于2000巾貞,若是,則切換到定時(shí)器處理模式,返回步驟S602 ;若否,則直接返回步驟S602。此外,為了保證處理模式的平滑切換(I)從定時(shí)器處理模式切換到幀中斷處理模式時(shí)在一次定時(shí)器任務(wù)結(jié)束后,先打開(kāi)接收幀中斷寄存器,然后關(guān)閉該定時(shí)器,則在下一次接收到ethernet幀后變?yōu)閹袛嗵幚怼?2)從幀中斷處理模式切換到定時(shí)器處理模式時(shí)在當(dāng)前幀處理中斷任務(wù)結(jié)束后,先配置啟動(dòng)定時(shí)器,然后關(guān)閉接收幀中斷寄存器,則當(dāng)定時(shí)中斷到來(lái)后,過(guò)渡到了定時(shí)器處理模式。再者,不管是在定時(shí)器中斷,還是在接收幀中斷里處理ethernet幀,接收過(guò)程并不受處理模式的影響,只要接收BD鏈不溢出,就可以接收下所有幀。只需保證可配置的最大定時(shí)器周期下,接收BD個(gè)數(shù)大于峰值速率時(shí)ethernet幀個(gè)數(shù)即可,從而保證了處理模式切換不丟包。通過(guò)本實(shí)施例,提供了一種根據(jù)基站系統(tǒng)DSP接收ethernet巾貞情況,靈活變換處理ethernet巾貞方式的方案。本實(shí)施例可以通過(guò)設(shè)置定時(shí)器周期動(dòng)態(tài)修改ethernet接收中貞的處理周期,且能夠在周期批量處理ethernet巾貞和接收巾貞中斷單個(gè)處理ethernet巾貞兩種模式間平滑轉(zhuǎn)換,提供了自適應(yīng)切換的算法,包括靈活可配置的切換門限,多級(jí)/單級(jí)可配置的切換規(guī)則等,從而提高了以太網(wǎng)幀處理效率,節(jié)約了內(nèi)存;并且,解決了 DSP在定時(shí)處理和每幀處理間平滑切換的問(wèn)題;提供了自適應(yīng)的切換算法,提高了系統(tǒng)處理ethernet幀的靈活性。實(shí)施例四參照?qǐng)D13,示出了根據(jù)本申請(qǐng)實(shí)施例四的一種ethernet幀處理裝置的結(jié)構(gòu)框圖。本實(shí)施例的ethernet幀處理裝置包括檢測(cè)模塊702,用于定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù);切換模塊704,用于根據(jù)以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換,其中,以太網(wǎng)幀的處理模式包括幀中斷處理模式和定時(shí)器處理模式;若需要,則對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換。優(yōu)選地,檢測(cè)模塊702每秒檢測(cè)一次基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)。優(yōu)選地,切換模塊704在根據(jù)以太網(wǎng)幀的可用緩存資源的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換時(shí),判斷所述以太網(wǎng)幀的可用緩存資源是否小于第一閾值,若是,且確定當(dāng)前以太網(wǎng)幀的處理模式為定時(shí)器處理模式,則確定需要將當(dāng)前以太網(wǎng)幀的處理模式從定時(shí)器處理模式切換到幀中斷處理模式;或者,判斷以太網(wǎng)幀的可用緩存資源是否大于第二閾值,若是,且確定當(dāng)前以太網(wǎng)幀的處理模式為幀中斷處理模式,則確定需要將當(dāng)前以太網(wǎng)幀的處理模式從幀中斷處理模式切換到定時(shí)器處理模式;其中,第一閾值小于第二閾值。優(yōu)選地,第一閾值為以太網(wǎng)幀的最大可用緩存資源的10%;第二閾值為以太網(wǎng)幀的最大可用緩存資源的50%。 優(yōu)選地,切換模塊704在根據(jù)單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換時(shí),判斷單位時(shí)間的以太網(wǎng)幀接收幀數(shù)是否小于第三閾值,若是,且確定當(dāng)前以太網(wǎng)幀的處理模式為定時(shí)器處理模式,則確定需要將當(dāng)前以太網(wǎng)幀的處理模式從定時(shí)器處理模式切換到幀中斷處理模式;或者,判斷單位時(shí)間的以太網(wǎng)幀接收幀數(shù)是否大于第四閾值,若是,且確定當(dāng)前以太網(wǎng)幀的處理模式為幀中斷處理模式,則確定需要將當(dāng)前以太網(wǎng)幀的處理模式從幀中斷處理模式切換到定時(shí)器處理模式;其中,第三閾值小于第四閾值。優(yōu)選地,第三閾值為每秒接收500幀以太網(wǎng)幀;第四閾值為每秒接收2000幀以太網(wǎng)幀。優(yōu)選地,本實(shí)施例的以太網(wǎng)幀處理裝置還包括接收模塊706,用于在檢測(cè)模塊702定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)之前,接收輸入的配置參數(shù),配置參數(shù)包括調(diào)整模式參數(shù)和/或處理模式參數(shù),其中,調(diào)整模式參數(shù)用于指示對(duì)以太網(wǎng)幀處理模式的切換為自動(dòng)切換或者為手動(dòng)切換,所述處理模式參數(shù)用于指示以太網(wǎng)幀的處理模式;第一執(zhí)行模塊708,用于當(dāng)調(diào)整模式參數(shù)指示對(duì)以太網(wǎng)幀處理模式的切換為自動(dòng)切換時(shí),則調(diào)用檢測(cè)模塊702和切換模塊704 ;第二執(zhí)行模塊710,用于當(dāng)調(diào)整模式參數(shù)指示對(duì)以太網(wǎng)幀處理模式的切換為手動(dòng)切換時(shí),則根據(jù)處理模式參數(shù),設(shè)置以太網(wǎng)幀的處理模式。優(yōu)選地,配置參數(shù)通過(guò)設(shè)置定時(shí)器周期進(jìn)行配置。優(yōu)選地,第二執(zhí)行模塊710在根據(jù)處理模式參數(shù),設(shè)置以太網(wǎng)幀的處理模式時(shí),若當(dāng)前以太網(wǎng)幀的處理模式為定時(shí)器處理模式,且該定時(shí)器處理模式使用的定時(shí)器周期不同于處理模式參數(shù)指示的定時(shí)器周期,則重新配置定時(shí)器處理模式使用的定時(shí)器周期為處理模式參數(shù)指示的定時(shí)器周期;若當(dāng)前以太網(wǎng)幀的處理模式為定時(shí)器處理模式,且處理模式參數(shù)指示使用幀中斷處理模式處理以太網(wǎng)幀,則將當(dāng)前以太網(wǎng)幀的處理模式從定時(shí)器處理模式切換為幀中斷處理模式;若當(dāng)前以太網(wǎng)幀的處理模式為幀中斷處理模式,且處理模式參數(shù)指示使用定時(shí)器處理模式處理以太網(wǎng)幀,則將當(dāng)前以太網(wǎng)幀的處理模式從幀中斷處理模式切換為定時(shí)器處理模式,且以處理模式參數(shù)指示的定時(shí)器周期為以太網(wǎng)幀的處理周期。
優(yōu)選地,當(dāng)切換模塊704確定需要將當(dāng)前以太網(wǎng)幀的處理模式從幀中斷處理模式切換到定時(shí)器處理模式時(shí),確定當(dāng)前使用幀中斷處理模式對(duì)以太網(wǎng)幀進(jìn)行處理的任務(wù)結(jié)束,啟動(dòng)定時(shí)器,關(guān)閉幀中斷處理模式使用的幀中斷寄存器;在定時(shí)器的定時(shí)周期到來(lái)時(shí),使用定時(shí)器處理模式對(duì)以太網(wǎng)幀進(jìn)行處理;當(dāng)切換模塊704確定需要將當(dāng)前以太網(wǎng)幀的處理模式從定時(shí)器處理模式切換到幀中斷處理模式時(shí),確定當(dāng)前使用定時(shí)器處理模式對(duì)以太網(wǎng)幀進(jìn)行處理的任務(wù)結(jié)束,打開(kāi)幀中斷處理模式使用的幀中斷寄存器,關(guān)閉定時(shí)器處理模式使用的定時(shí)器;在接收到以太網(wǎng)幀時(shí),使用幀中斷處理模式對(duì)以太網(wǎng)幀進(jìn)行處理。優(yōu)選地,本實(shí)施例的以太網(wǎng)幀處理裝置還包括設(shè)置模塊712,用于在檢測(cè)模塊702定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)之前,設(shè)置基站可接收的BD的數(shù)量大于以太網(wǎng)峰值速率時(shí)基站可接收的以太網(wǎng)幀的數(shù)量。優(yōu)選地,本實(shí)施例的以太網(wǎng)幀處理裝置在基站的操作系統(tǒng)進(jìn)行任務(wù)切換時(shí)進(jìn)行以太網(wǎng)幀處理模式的切換。 優(yōu)選地,本實(shí)施例的以太網(wǎng)幀處理裝置設(shè)置于基站的DSP中。本實(shí)施例的以太網(wǎng)幀處理裝置用于實(shí)現(xiàn)前述多個(gè)方法實(shí)施例中相應(yīng)的以太網(wǎng)幀處理方法,并具有相應(yīng)的方法實(shí)施例的有益效果,在此不再贅述。本申請(qǐng)?zhí)峁┝艘环N基站系統(tǒng)中DSP處理ethernet幀方式的靈活變換方案,本申請(qǐng)?zhí)岢龅姆桨父鶕?jù)基站內(nèi)DSP每個(gè)核的ethernet接收頻率情況,確定處理接收ethernet中貞的方式,并且提供配置接口和自適應(yīng)算法,使DSP的各個(gè)核可靈活選擇處理方式,適應(yīng)不同數(shù)據(jù)傳輸情況,大大提高了系統(tǒng)的通信效率和處理性能。通過(guò)本申請(qǐng),實(shí)現(xiàn)了 (I)定時(shí)器處理相比與幀中斷處理,效率更高,以Ims定時(shí)器處理為例,定時(shí)器處理比幀中斷處理效率提升約20% ;而幀中斷處理?yè)碛懈玫膶?shí)時(shí)性,對(duì)每一幀都立即處理。本申請(qǐng)可以快速靈活地配置接收ethernet幀的處理頻率,既保證及時(shí)處理,又提高了系統(tǒng)的工作效率。(2)自適應(yīng)的切換模式,可以使ethernet幀處理根據(jù)工作環(huán)境自動(dòng)調(diào)整到最有效地模式,很好地提高了系統(tǒng)效率;而手動(dòng)配置模式,又提高了應(yīng)用的靈活性。(3)簡(jiǎn)化了軟件設(shè)計(jì),配置ethernet巾貞處理間隔時(shí)無(wú)需修改軟件初始化代碼,具有較好的可擴(kuò)展性和可移植性。(4)本申請(qǐng)適用于多核和單核DSP,在多核DSP上使得各核的ethernet處理模式相互獨(dú)立,可滿足各核的不同的傳輸需求。本說(shuō)明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可。對(duì)于裝置實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。以上對(duì)本申請(qǐng)所提供的一種以太網(wǎng)幀處理方法和裝置進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本申請(qǐng)的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本申請(qǐng)的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請(qǐng)的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說(shuō)明書內(nèi)容不應(yīng)理解為對(duì)本申請(qǐng)的限制。
權(quán)利要求
1.ー種以太網(wǎng)幀處理方法,其特征在于,包括 定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù);根據(jù)所述以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換,其中,所述以太網(wǎng)幀的處理模式包括幀中斷處理模式和定時(shí)器處理模式; 若需要,則對(duì)所述當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述根據(jù)所述以太網(wǎng)幀的可用緩存資源的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換的步驟包括 判斷所述以太網(wǎng)幀的可用緩存資源是否小于第一閾值,若是,且確定所述當(dāng)前以太網(wǎng)幀的處理模式為所述定時(shí)器處理模式,則確定需要將所述當(dāng)前以太網(wǎng)幀的處理模式從所述定時(shí)器處理模式切換到所述幀中斷處理模式; 或者, 判斷所述以太網(wǎng)幀的可用緩存資源是否大于第二閾值,若是,且確定所述當(dāng)前以太網(wǎng)幀的處理模式為所述幀中斷處理模式,則確定需要將所述當(dāng)前以太網(wǎng)幀的處理模式從所述幀中斷處理模式切換到所述定時(shí)器處理模式; 其中,所述第一閾值小于所述第二閾值。
3.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述根據(jù)所述單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換的步驟包括 判斷所述單位時(shí)間的以太網(wǎng)幀接收幀數(shù)是否小于第三閾值,若是,且確定所述當(dāng)前以太網(wǎng)幀的處理模式為所述定時(shí)器處理模式,則確定需要將所述當(dāng)前以太網(wǎng)幀的處理模式從所述定時(shí)器處理模式切換到所述幀中斷處理模式; 或者, 判斷所述單位時(shí)間的以太網(wǎng)幀接收幀數(shù)是否大于第四閾值,若是,且確定所述當(dāng)前以太網(wǎng)幀的處理模式為所述幀中斷處理模式,則確定需要將所述當(dāng)前以太網(wǎng)幀的處理模式從所述幀中斷處理模式切換到所述定時(shí)器處理模式; 其中,所述第三閾值小于所述第四閾值。
4.根據(jù)權(quán)利要求I所述的方法,其特征在于,在所述定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的步驟之前,還包括 接收輸入的配置參數(shù),所述配置參數(shù)包括調(diào)整模式參數(shù)和/或處理模式參數(shù),其中,所述調(diào)整模式參數(shù)用于指示對(duì)以太網(wǎng)幀處理模式的切換為自動(dòng)切換或者為手動(dòng)切換,所述處理模式參數(shù)用于指示以太網(wǎng)幀的處理模式; 當(dāng)所述調(diào)整模式參數(shù)指示對(duì)以太網(wǎng)幀處理模式的切換為自動(dòng)切換時(shí),則執(zhí)行所述定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù);根據(jù)所述以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換;若需要,則對(duì)所述當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換的步驟; 當(dāng)所述調(diào)整模式參數(shù)指示對(duì)以太網(wǎng)幀處理模式的切換為手動(dòng)切換時(shí),則根據(jù)所述處理模式參數(shù),設(shè)置以太網(wǎng)幀的處理模式。
5.根據(jù)權(quán)利要求4所述的方法,其特征在干,所述配置參數(shù)通過(guò)設(shè)置定時(shí)器周期進(jìn)行配置。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述根據(jù)所述處理模式參數(shù),設(shè)置以太網(wǎng)幀的處理模式的步驟包括以下至少之ー 若當(dāng)前以太網(wǎng)幀的處理模式為所述定時(shí)器處理模式,且該定時(shí)器處理模式使用的定時(shí)器周期不同于所述處理模式參數(shù)指示的定時(shí)器周期,則重新配置所述定時(shí)器處理模式使用的定時(shí)器周期為所述處理模式參數(shù)指示的定時(shí)器周期; 若當(dāng)前以太網(wǎng)幀的處理模式為所述定時(shí)器處理模式,且所述處理模式參數(shù)指示使用所述幀中斷處理模式處理以太網(wǎng)幀,則將所述當(dāng)前以太網(wǎng)幀的處理模式從所述定時(shí)器處理模式切換為所述幀中斷處理模式; 若當(dāng)前以太網(wǎng)幀的處理模式為所述幀中斷處理模式,且所述處理模式參數(shù)指示使用所述定時(shí)器處理模式處理以太網(wǎng)幀,則將所述當(dāng)前以太網(wǎng)幀的處理模式從所述幀中斷處理模式切換為所述定時(shí)器處理模式,且以所述處理模式參數(shù)指示的定時(shí)器周期為以太網(wǎng)幀的處理周期。
7.根據(jù)權(quán)利要求I至6任一項(xiàng)所述的方法,其特征在干, 當(dāng)確定需要將所述當(dāng)前以太網(wǎng)幀的處理模式從所述幀中斷處理模式切換到所述定時(shí)器處理模式時(shí),所述對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換的步驟包括確定當(dāng)前使用所述幀中斷處理模式對(duì)以太網(wǎng)幀進(jìn)行處理的任務(wù)結(jié)束,啟動(dòng)定時(shí)器,關(guān)閉所述幀中斷處理模式使用的幀中斷寄存器;在所述定時(shí)器的定時(shí)周期到來(lái)時(shí),使用所述定時(shí)器處理模式對(duì)以太網(wǎng)幀進(jìn)行處理; 當(dāng)確定需要將所述當(dāng)前以太網(wǎng)幀的處理模式從所述定時(shí)器處理模式切換到所述幀中斷處理模式時(shí),所述對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換的步驟包括確定當(dāng)前使用所述定時(shí)器處理模式對(duì)以太網(wǎng)幀進(jìn)行處理的任務(wù)結(jié)束,打開(kāi)所述幀中斷處理模式使用的幀中斷寄存器,關(guān)閉所述定時(shí)器處理模式使用的定時(shí)器;在接收到以太網(wǎng)幀時(shí),使用所述幀中斷處理模式對(duì)所述以太網(wǎng)幀進(jìn)行處理。
8.根據(jù)權(quán)利要求I至6任一項(xiàng)所述的方法,其特征在于,在所述定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的步驟之前,還包括 設(shè)置所述基站可接收的緩沖描述符BD的數(shù)量大于以太網(wǎng)峰值速率時(shí)所述基站可接收的以太網(wǎng)幀的數(shù)量。
9.根據(jù)權(quán)利要求I至6任一項(xiàng)所述的方法,其特征在于,所述對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換在所述基站的操作系統(tǒng)進(jìn)行任務(wù)切換時(shí)進(jìn)行。
10.ー種以太網(wǎng)幀處理裝置,其特征在于,包括 檢測(cè)模塊,用于定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù); 切換模塊,用于根據(jù)所述以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換,其中,所述以太網(wǎng)幀的處理模式包括幀中斷處理模式和定時(shí)器處理模式;若需要,則對(duì)所述當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換。
11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述切換模塊在根據(jù)所述以太網(wǎng)幀的可用緩存資源的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換時(shí),判斷所述以太網(wǎng)幀的可用緩存資源是否小于第一閾值,若是,且確定所述當(dāng)前以太網(wǎng)幀的處理模式為所述定時(shí)器處理模式,則確定需要將所述當(dāng)前以太網(wǎng)幀的處理模式從所述定時(shí)器處理模式切換到所述幀中斷處理模式;或者,判斷所述以太網(wǎng)幀的可用緩存資源是否大于第二閾值,若是,且確定所述當(dāng)前以太網(wǎng)幀的處理模式為所述幀中斷處理模式,則確定需要將所述當(dāng)前以太網(wǎng)幀的處理模式從所述幀中斷處理模式切換到所述定時(shí)器處理模式;其中,所述第一閾值小于所述第二閾值。
12.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述切換模塊在根據(jù)所述単位時(shí)間的以太網(wǎng)幀接收幀數(shù)的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換時(shí),判斷所述單位時(shí)間的以太網(wǎng)幀接收幀數(shù)是否小于第三閾值,若是,且確定所述當(dāng)前以太網(wǎng)幀的處理模式為所述定時(shí)器處理模式,則確定需要將所述當(dāng)前以太網(wǎng)幀的處理模式從所述定時(shí)器處理模式切換到所述幀中斷處理模式;或者,判斷所述單位時(shí)間的以太網(wǎng)幀接收幀數(shù)是否大于第四閾值,若是,且確定所述當(dāng)前以太網(wǎng)幀的處理模式為所述幀中斷處理模式,則確定需要將所述當(dāng)前以太網(wǎng)幀的處理模式從所述幀中斷處理模式切換到所述定時(shí)器處理模式;其中,所述第三閾值小于所述第四閾值。
13.根據(jù)權(quán)利要求10所述的裝置,其特征在于,還包括 接收模塊,用于在所述檢測(cè)模塊定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或単位時(shí)間的以太網(wǎng)幀接收幀數(shù)之前,接收輸入的配置參數(shù),所述配置參數(shù)包括調(diào)整模式參數(shù)和/或處理模式參數(shù),其中,所述調(diào)整模式參數(shù)用于指示對(duì)以太網(wǎng)幀處理模式的切換為自動(dòng)切換或者為手動(dòng)切換,所述處理模式參數(shù)用于指示以太網(wǎng)幀的處理模式; 第一執(zhí)行模塊,用于當(dāng)所述調(diào)整模式參數(shù)指示對(duì)以太網(wǎng)幀處理模式的切換為自動(dòng)切換吋,則調(diào)用所述檢測(cè)模塊和所述切換模塊; 第二執(zhí)行模塊,用于當(dāng)所述調(diào)整模式參數(shù)指示對(duì)以太網(wǎng)幀處理模式的切換為手動(dòng)切換吋,則根據(jù)所述處理模式參數(shù),設(shè)置以太網(wǎng)幀的處理模式。
14.根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述配置參數(shù)通過(guò)設(shè)置定時(shí)器周期進(jìn)行配置。
15.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述第二執(zhí)行模塊在根據(jù)所述處理模式參數(shù),設(shè)置以太網(wǎng)幀的處理模式時(shí),執(zhí)行以下至少之ー 若當(dāng)前以太網(wǎng)幀的處理模式為所述定時(shí)器處理模式,且該定時(shí)器處理模式使用的定時(shí)器周期不同于所述處理模式參數(shù)指示的定時(shí)器周期,則重新配置所述定時(shí)器處理模式使用的定時(shí)器周期為所述處理模式參數(shù)指示的定時(shí)器周期; 若當(dāng)前以太網(wǎng)幀的處理模式為所述定時(shí)器處理模式,且所述處理模式參數(shù)指示使用所述幀中斷處理模式處理以太網(wǎng)幀,則將所述當(dāng)前以太網(wǎng)幀的處理模式從所述定時(shí)器處理模式切換為所述幀中斷處理模式; 若當(dāng)前以太網(wǎng)幀的處理模式為所述幀中斷處理模式,且所述處理模式參數(shù)指示使用所述定時(shí)器處理模式處理以太網(wǎng)幀,則將所述當(dāng)前以太網(wǎng)幀的處理模式從所述幀中斷處理模式切換為所述定時(shí)器處理模式,且以所述處理模式參數(shù)指示的定時(shí)器周期為以太網(wǎng)幀的處理周期。
16.根據(jù)權(quán)利要求10至15任一項(xiàng)所述的裝置,其特征在干, 當(dāng)所述切換模塊確定需要將所述當(dāng)前以太網(wǎng)幀的處理模式從所述幀中斷處理模式切換到所述定時(shí)器處理模式時(shí),確定當(dāng)前使用所述幀中斷處理模式對(duì)以太網(wǎng)幀進(jìn)行處理的任務(wù)結(jié)束,啟動(dòng)定時(shí)器,關(guān)閉所述幀中斷處理模式使用的幀中斷寄存器;在所述定時(shí)器的定時(shí)周期到來(lái)時(shí),使用所述定時(shí)器處理模式對(duì)以太網(wǎng)幀進(jìn)行處理; 當(dāng)所述切換模塊確定需要將所述當(dāng)前以太網(wǎng)幀的處理模式從所述定時(shí)器處理模式切換到所述幀中斷處理模式時(shí),確定當(dāng)前使用所述定時(shí)器處理模式對(duì)以太網(wǎng)幀進(jìn)行處理的任務(wù)結(jié)束,打開(kāi)所述幀中斷處理模式使用的幀中斷寄存器,關(guān)閉所述定時(shí)器處理模式使用的定時(shí)器;在接收到以太網(wǎng)幀時(shí),使用所述幀中斷處理模式對(duì)所述以太網(wǎng)幀進(jìn)行處理。
17.根據(jù)權(quán)利要求10至15任一項(xiàng)所述的裝置,其特征在于,還包括 設(shè)置模塊,用于在所述檢測(cè)模塊定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或単位時(shí)間的以太網(wǎng)幀接收幀數(shù)之前,設(shè)置所述基站可接收的緩沖描述符BD的數(shù)量大于以太網(wǎng)峰值速率時(shí)所述基站可接收的以太網(wǎng)幀的數(shù)量。
全文摘要
本申請(qǐng)?zhí)峁┝艘环N以太網(wǎng)幀處理方法及裝置,其中,以太網(wǎng)幀處理方法包括定時(shí)檢測(cè)基站中以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù);根據(jù)所述以太網(wǎng)幀的可用緩存資源和/或單位時(shí)間的以太網(wǎng)幀接收幀數(shù)的檢測(cè)結(jié)果,確定是否需要對(duì)當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換,其中,所述以太網(wǎng)幀的處理模式包括幀中斷處理模式和定時(shí)器處理模式;若需要,則對(duì)所述當(dāng)前以太網(wǎng)幀的處理模式進(jìn)行切換。通過(guò)本申請(qǐng),兼顧了以太網(wǎng)幀處理的實(shí)時(shí)性和效率,滿足了業(yè)務(wù)的多樣化需求。
文檔編號(hào)H04L12/28GK102664777SQ20121015010
公開(kāi)日2012年9月12日 申請(qǐng)日期2012年5月7日 優(yōu)先權(quán)日2012年5月7日
發(fā)明者侯彥龍, 劉一飛, 陳劍 申請(qǐng)人:大唐移動(dòng)通信設(shè)備有限公司