專利名稱:數(shù)據(jù)幀的定位方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)幀的定位方法和裝置。
背景技術(shù):
隨著通信網(wǎng)絡(luò)的融合,光傳送網(wǎng)與IP網(wǎng)以及其他網(wǎng)絡(luò)的互通和互聯(lián)得到廣泛的 應(yīng)用。當(dāng)光傳送網(wǎng)作為另外一種網(wǎng)絡(luò)的物理層網(wǎng)絡(luò)時(shí),必須將另外一種網(wǎng)絡(luò)的數(shù)據(jù)以一定 的格式進(jìn)行封裝,而最常用的封裝形式就是GFP (Generic framing procedure,通用成幀規(guī) 程)封裝。常用的GFP封裝多應(yīng)用在1G-10G的低速率碼流,因此其最大被封裝數(shù)據(jù)位寬為 64位。但隨著網(wǎng)絡(luò)的迅猛發(fā)展,被封裝的數(shù)據(jù)流從40G-200G不等,這時(shí)數(shù)據(jù)位寬變?yōu)? 位-512位,對(duì)于這些高位寬的數(shù)據(jù)流,可以在一個(gè)時(shí)鐘周期內(nèi)封裝多個(gè)數(shù)據(jù)幀。比如,當(dāng)數(shù) 據(jù)流的位寬為512位時(shí),每一個(gè)時(shí)鐘周期數(shù)據(jù)為512/8 = 64個(gè)字節(jié),通常一個(gè)GFP幀的長(zhǎng) 度為12字節(jié),則在一個(gè)時(shí)鐘周期內(nèi)可以封裝5個(gè)數(shù)據(jù)幀。現(xiàn)有技術(shù)中的一種對(duì)一個(gè)時(shí)鐘周期內(nèi)封裝的GFP幀進(jìn)行幀定位的方法為采用一 個(gè)定幀狀態(tài)機(jī)對(duì)本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流按照字節(jié)進(jìn)行逐步搜尋,確定GFP幀的幀頭的開 始字節(jié)。上述定幀狀態(tài)機(jī)包括三個(gè)狀態(tài),分別為HUNT (搜尋)狀態(tài)、PRESYNC (初步同步) 狀態(tài)和SYNC (同步)狀態(tài)。上述定幀狀態(tài)機(jī)在搜尋開始時(shí)處于HUNT狀態(tài),從本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流的第 一個(gè)字節(jié)開始搜尋,在搜尋到符合第一個(gè)GFP幀的幀頭的特征的字節(jié)后,定幀狀態(tài)機(jī)的狀 態(tài)變化為PRESYNC狀態(tài)。然后,上述定幀狀態(tài)機(jī)根據(jù)上述符合GFP幀的幀頭的特征的字節(jié) 中攜帶的GFP幀的長(zhǎng)度信息,找到第二個(gè)GFP幀的幀頭的開始字節(jié),對(duì)該GFP幀的幀頭的開 始字節(jié)驗(yàn)證成功后,上述定幀狀態(tài)機(jī)的狀態(tài)變?yōu)镾YNC狀態(tài)。上述定幀狀態(tài)機(jī)確定上述第一 個(gè)GFP幀的幀頭、第二個(gè)GFP幀的幀頭的開始字節(jié)正確,將上述第一個(gè)GFP幀的幀頭、第二 個(gè)GFP幀的幀頭的開始字節(jié)和幀的長(zhǎng)度進(jìn)行記錄在搜尋結(jié)果中。然后,上述定幀狀態(tài)機(jī)從 上述第二個(gè)GFP幀的幀頭的開始字節(jié)繼續(xù)搜尋,直到設(shè)定的本次時(shí)鐘周期對(duì)應(yīng)的搜尋時(shí)間 結(jié)束。上述定幀狀態(tài)機(jī)在處于PRESYNC狀態(tài)和SYNC狀態(tài)時(shí),如果在找到第二個(gè)GFP幀的 幀頭的開始字節(jié),對(duì)該開始字節(jié)驗(yàn)證失敗后,則上述定幀狀態(tài)機(jī)轉(zhuǎn)化為HUNT狀態(tài)。在實(shí)現(xiàn)本發(fā)明過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中的對(duì)一個(gè)時(shí)鐘周期內(nèi)封裝的GFP幀 進(jìn)行幀定位的方法至少存在如下問題由于一個(gè)時(shí)鐘周期的時(shí)間非常短暫,因此,設(shè)定的本 次時(shí)鐘周期對(duì)應(yīng)的搜尋時(shí)間也是非常短暫。上述定幀狀態(tài)機(jī)是從本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流 的第一個(gè)字節(jié)開始搜尋,如果上述第一個(gè)字節(jié)不是GFP幀的開始字節(jié),并且在本次時(shí)鐘周 期內(nèi)封裝了多個(gè)數(shù)據(jù)幀時(shí),則該方法有可能搜尋不到正確的GFP幀的開始字節(jié),無法實(shí)現(xiàn) 對(duì)本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的GFP幀進(jìn)行定位。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)幀的定位方法和裝置,以實(shí)現(xiàn)高效率地對(duì)一個(gè)時(shí)鐘 周期內(nèi)的數(shù)據(jù)流中封裝的數(shù)據(jù)幀進(jìn)行定位。一種數(shù)據(jù)幀的定位方法,包括獲取本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流,為所述本次始終周期內(nèi)的數(shù)據(jù)流的每個(gè)字節(jié)分配 一個(gè)定幀狀態(tài)機(jī);所述定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié)開始搜尋數(shù)據(jù)幀,獲得多個(gè)數(shù)據(jù)幀的搜尋 結(jié)果,其中,所述搜尋結(jié)果包括每個(gè)定幀狀態(tài)機(jī)搜尋到的第一個(gè)數(shù)據(jù)幀的開始字節(jié);根據(jù)前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果確定本次時(shí)鐘周期內(nèi)的第一個(gè)數(shù)據(jù)幀 的開始字節(jié);將所述多個(gè)數(shù)據(jù)幀的搜尋結(jié)果分別與所述本次時(shí)鐘周期內(nèi)的第一數(shù)據(jù)幀的開始 字節(jié)進(jìn)行匹配,將匹配成功的搜尋結(jié)果作為本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果。一種數(shù)據(jù)幀的定位裝置,包括搜尋處理模塊,用于獲取本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流,為所述本次始終周期內(nèi)的數(shù) 據(jù)流的每個(gè)字節(jié)分配一個(gè)定幀狀態(tài)機(jī);所述定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié)開始搜尋數(shù) 據(jù)幀,獲得多個(gè)數(shù)據(jù)幀的搜尋結(jié)果,其中,所述搜尋結(jié)果包括每個(gè)定幀狀態(tài)機(jī)搜尋到的第一 個(gè)數(shù)據(jù)幀的開始字節(jié);搜尋結(jié)果確定模塊,用于根據(jù)前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果確定本次時(shí)鐘 周期內(nèi)的第一個(gè)數(shù)據(jù)幀的開始字節(jié);將所述搜尋處理模塊得到的多個(gè)數(shù)據(jù)幀的搜尋結(jié)果分 別與所述本次時(shí)鐘周期內(nèi)的第一數(shù)據(jù)幀的開始字節(jié)進(jìn)行匹配,將匹配成功的搜尋結(jié)果作為 本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果。由上述本發(fā)明的實(shí)施例提供的技術(shù)方案可以看出,本發(fā)明實(shí)施例通過為本次始終 周期內(nèi)的數(shù)據(jù)流的每個(gè)字節(jié)分配一個(gè)定幀狀態(tài)機(jī),每個(gè)定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié) 并行開始搜尋數(shù)據(jù)幀,可以快速地搜尋出本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的數(shù)據(jù)幀的開始 字節(jié),進(jìn)而快速地搜尋出本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的多個(gè)數(shù)據(jù)幀,對(duì)本次時(shí)鐘周期 內(nèi)的數(shù)據(jù)流中封裝的數(shù)據(jù)幀進(jìn)行精確定位。
為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用 的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本 領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他 的附圖。圖1為本發(fā)明實(shí)施例一提供的一種數(shù)據(jù)幀的定位方法的處理流程圖;圖2為本發(fā)明實(shí)施例一提供的一種將前面時(shí)鐘周期內(nèi)的GFP幀的搜尋結(jié)果與本次 時(shí)鐘周期內(nèi)的GFP幀的搜尋結(jié)果進(jìn)行匹配的示意圖;圖3為本發(fā)明實(shí)施例一提供的一種GFP幀的格式示意圖;圖4為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)幀的定位裝置的具體結(jié)構(gòu)圖;圖5為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)幀的定位裝置的原理示意圖;圖6為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)幀的定位裝置的具體結(jié)構(gòu)圖。
具體實(shí)施例方式為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例 中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是 本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員 在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。為便于對(duì)本發(fā)明實(shí)施例的理解,下面將結(jié)合附圖以幾個(gè)具體實(shí)施例為例做進(jìn)一步 的解釋說明,且各個(gè)實(shí)施例并不構(gòu)成對(duì)本發(fā)明實(shí)施例的限定。實(shí)施例一該實(shí)施例提供的一種數(shù)據(jù)幀的定位方法的處理流程如圖1所示,包括如下的處理 步驟步驟11、為本次始終周期內(nèi)的數(shù)據(jù)流的每個(gè)字節(jié)分配一個(gè)定幀狀態(tài)機(jī),每個(gè)定幀 狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié)開始搜尋數(shù)據(jù)幀,獲得多個(gè)數(shù)據(jù)幀的搜尋結(jié)果。本發(fā)明實(shí)施例中的數(shù)據(jù)幀可以為GFP巾貞,下面以GFP幀為例來說明本發(fā)明實(shí)施例。當(dāng)在前面時(shí)鐘周期對(duì)應(yīng)的搜尋時(shí)間結(jié)束時(shí)定幀狀態(tài)機(jī)的狀態(tài)為PRESYNC狀態(tài)或 SYNC狀態(tài)。本發(fā)明實(shí)施例假設(shè)本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流的每個(gè)字節(jié)都有可能是一個(gè)GFP幀 的開始字節(jié),采用和本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流的總字節(jié)數(shù)相等的多個(gè)定幀狀態(tài)機(jī),為本次 始終周期內(nèi)的數(shù)據(jù)流的每個(gè)字節(jié)分配一個(gè)定幀狀態(tài)機(jī),每個(gè)定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的 字節(jié)開始搜尋數(shù)據(jù)幀,獲得多個(gè)GFP幀的搜尋結(jié)果,每個(gè)搜尋結(jié)果對(duì)應(yīng)不同的開始字節(jié)。上述前面時(shí)鐘周期可以為上一個(gè)時(shí)鐘周期。步驟12、根據(jù)前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果確定本次時(shí)鐘周期內(nèi)的第一個(gè) 數(shù)據(jù)幀的開始字節(jié)。將所述多個(gè)數(shù)據(jù)幀的搜尋結(jié)果分別與所述本次時(shí)鐘周期內(nèi)的第一數(shù)據(jù) 幀的開始字節(jié)進(jìn)行匹配,將匹配成功的搜尋結(jié)果作為本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果。根據(jù)所述前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果確定本次時(shí)鐘周期內(nèi)的第一個(gè)數(shù) 據(jù)幀的開始字節(jié)。將所述多個(gè)數(shù)據(jù)幀的搜尋結(jié)果分別與所述本次時(shí)鐘周期內(nèi)的第一數(shù)據(jù)幀的開始 字節(jié)進(jìn)行匹配,將匹配成功的搜尋結(jié)果確定本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果。該實(shí)施例提供的一種將前面時(shí)鐘周期內(nèi)的GFP幀的搜尋結(jié)果與本次時(shí)鐘周期內(nèi) 的GFP幀的搜尋結(jié)果進(jìn)行匹配的示意圖如圖2所示,在圖2中,aO-hO為第0個(gè)時(shí)鐘周期內(nèi) 的數(shù)據(jù)流的8個(gè)字節(jié),al-hl為第1個(gè)時(shí)鐘周期內(nèi)的數(shù)據(jù)流的8個(gè)字節(jié),a2-h2為第2個(gè)時(shí) 鐘周期內(nèi)的數(shù)據(jù)流的8個(gè)字節(jié)。在第1個(gè)時(shí)鐘周期內(nèi),采用8個(gè)定幀狀態(tài)機(jī)分別從al、bl、 cl、dl、el、Π、gl或hi開始搜尋,得到8個(gè)搜尋結(jié)果。在上述8個(gè)搜尋結(jié)果中有兩個(gè)搜尋 結(jié)果搜尋到了 GFP巾貞,Wbl開始搜尋的定幀狀態(tài)機(jī)搜尋到的GFP幀的位置為bl- > gl- > f2 ;從Π開始搜尋的定幀狀態(tài)機(jī)搜尋到的GFP幀的位置為Π- > h2。根據(jù)第0個(gè)時(shí)鐘周 期內(nèi)的GFP幀的搜尋結(jié)果,第0個(gè)時(shí)鐘周期內(nèi)的最后一個(gè)GFP幀的幀頭的開始字節(jié)為eO,并 且?guī)^的PLL字段的值指示第1個(gè)時(shí)鐘周期內(nèi)的第一個(gè)GFP幀的開始字節(jié)為bl,于是確定 上述從bl開始搜尋的定幀狀態(tài)機(jī)搜尋到的GFP幀的位置bl- > gl- > f2是正確的。然后,將本次時(shí)鐘周期內(nèi)的GFP幀的搜尋結(jié)果和搜尋結(jié)束時(shí)的定幀狀態(tài)機(jī)的狀態(tài) 傳輸給下一個(gè)時(shí)鐘周期。
由上述實(shí)施例提供的技術(shù)方案可以看出,由上述本發(fā)明的實(shí)施例提供的技術(shù)方案 可以看出,本發(fā)明實(shí)施例通過為本次始終周期內(nèi)的數(shù)據(jù)流的每個(gè)字節(jié)分配一個(gè)定幀狀態(tài) 機(jī),每個(gè)定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié)并行開始搜尋數(shù)據(jù)幀,可以快速地搜尋出本次 時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的第一個(gè)GFP幀等數(shù)據(jù)幀的幀頭的開始字節(jié),進(jìn)而快速地搜尋 出本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的多個(gè)GFP幀等數(shù)據(jù)幀,對(duì)本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中 封裝的GFP幀等數(shù)據(jù)幀進(jìn)行精確定位。具體而言的,上述步驟11中的為本次始終周期內(nèi)的數(shù)據(jù)流的每個(gè)字節(jié)分配一個(gè) 定幀狀態(tài)機(jī),每個(gè)定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié)并行開始搜尋數(shù)據(jù)幀,可以包括在接收到本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流的各個(gè)字節(jié)后,先對(duì)數(shù)據(jù)流進(jìn)行預(yù)處理,對(duì)數(shù) 據(jù)流的每?jī)蓚€(gè)相鄰字節(jié)的值進(jìn)行HEC(hybrid error control,混合差錯(cuò)控制)運(yùn)算,將獲得 的每?jī)蓚€(gè)相鄰字節(jié)的值的HEC運(yùn)算結(jié)果進(jìn)行保存。在具體操作上,可以采取多個(gè)運(yùn)算邏輯 并行進(jìn)行上述每?jī)蓚€(gè)相鄰字節(jié)的值的HEC運(yùn)算。上述預(yù)處理過程可以提高后續(xù)的GFP幀的 搜尋過程中的HEC驗(yàn)證運(yùn)算的速度。在實(shí)際應(yīng)用中,采用定幀狀態(tài)機(jī)從一個(gè)時(shí)鐘周期內(nèi)的數(shù)據(jù)流的不同字節(jié)開始搜尋 可以得到不同的GFP幀的幀頭的搜尋結(jié)果。當(dāng)在前面時(shí)鐘周期對(duì)應(yīng)的搜尋時(shí)間結(jié)束時(shí)定幀 狀態(tài)機(jī)的狀態(tài)為PRESYNC狀態(tài)或SYNC狀態(tài)。本發(fā)明實(shí)施例假設(shè)本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流 的每個(gè)字節(jié)都有可能是一個(gè)GFP幀的幀頭,假設(shè)本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流的字節(jié)總數(shù)為N, 則選取N個(gè)定幀狀態(tài)機(jī),每個(gè)定幀狀態(tài)機(jī)對(duì)應(yīng)一個(gè)搜幀通道。每個(gè)定幀狀態(tài)機(jī)利用上述保 存的每?jī)蓚€(gè)相鄰字節(jié)的值的HEC運(yùn)算結(jié)果,同時(shí)從每個(gè)字節(jié)開始搜尋GFP幀的幀頭,獲取N 個(gè)GFP幀的幀頭的搜尋結(jié)果。比如,數(shù)據(jù)流的位寬為512位,則本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流包 括512/8 = 32字節(jié),則采用32個(gè)定幀狀態(tài)機(jī)分別對(duì)應(yīng)搜幀通道1、搜幀通道2...搜幀通道 32,第1個(gè)定幀狀態(tài)機(jī)在搜幀通道1中從第1個(gè)字節(jié)開始搜尋,第2個(gè)定幀狀態(tài)機(jī)在搜幀通 道2中從第2個(gè)字節(jié)開始搜尋...第32個(gè)定幀狀態(tài)機(jī)在搜幀通道32中從第32個(gè)字節(jié)開 始搜尋。每個(gè)定幀狀態(tài)機(jī)在開始搜尋時(shí)的狀態(tài)可以和前面時(shí)鐘周期對(duì)應(yīng)的搜尋時(shí)間結(jié)束 時(shí)定幀狀態(tài)機(jī)的狀態(tài)相同,即為PRESYNC狀態(tài)或SYNC狀態(tài);也可以任意設(shè)定為定幀狀態(tài)機(jī) 所有可能的狀態(tài)中的一個(gè)狀態(tài)。每個(gè)定幀狀態(tài)機(jī)從開始搜尋的第一個(gè)字節(jié)開始,選取連續(xù)的相鄰的四個(gè)字節(jié),將 上述連續(xù)的相鄰的四個(gè)字節(jié)中的前兩個(gè)相鄰字節(jié)的值的HEC運(yùn)算結(jié)果與后兩個(gè)相鄰字節(jié) 的值進(jìn)行比較,如果相等,則確定上述前兩個(gè)相鄰字節(jié)中的第一個(gè)字節(jié)為第一個(gè)GFP幀的 開始字節(jié)。然后,根據(jù)上述前兩個(gè)相鄰字節(jié)的值確定第一個(gè)GFP幀的長(zhǎng)度,再根據(jù)該第一個(gè) GFP幀的長(zhǎng)度找到第二個(gè)GFP幀的開始字節(jié)。從第二個(gè)GFP幀的開始字節(jié)開始,將前兩個(gè)相 鄰字節(jié)的值的HEC運(yùn)算結(jié)果與后兩個(gè)相鄰字節(jié)的值進(jìn)行比較,如果相等,則上述定幀狀態(tài) 機(jī)確定上述第一個(gè)GFP幀、第二個(gè)GFP幀的位置正確,將上述第一個(gè)GFP幀、第二個(gè)GFP幀 的開始字節(jié)和GFP幀的長(zhǎng)度信息記錄在搜尋結(jié)果中。定幀狀態(tài)機(jī)的狀態(tài)設(shè)定為SYNC狀態(tài)。然后,上述定幀狀態(tài)機(jī)從所述第二個(gè)數(shù)據(jù)幀的開始字節(jié)開始,繼續(xù)進(jìn)行所述數(shù)據(jù) 幀的搜尋過程,直到設(shè)定的本次時(shí)鐘周期對(duì)應(yīng)的搜尋時(shí)間結(jié)束。因此,如果在一個(gè)搜尋過程 中搜尋到的多個(gè)GFP幀的幀頭,則該搜尋結(jié)果中包括上述多個(gè)GFP幀的開始字節(jié)和GFP幀 的長(zhǎng)度信息。
具體的,上述步驟11還可以包括當(dāng)在前面時(shí)鐘周期對(duì)應(yīng)的搜尋時(shí)間結(jié)束時(shí)定幀狀態(tài)機(jī)的狀態(tài)為HUNT狀態(tài),則由 于根據(jù)前面時(shí)鐘周期內(nèi)的GFP幀的搜尋結(jié)果,得不到前面時(shí)鐘周期內(nèi)的最后一個(gè)GFP幀的 開始字節(jié),也得不到本次時(shí)鐘周期內(nèi)的第一個(gè)GFP幀的開始字節(jié)。于是,采用一個(gè)處于HUNT 狀態(tài)的定幀狀態(tài)機(jī)從本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流的第一個(gè)字節(jié)開始搜尋。具體而言,上述步驟12中的根據(jù)前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果確定本次 時(shí)鐘周期內(nèi)的第一個(gè)數(shù)據(jù)幀的開始字節(jié),可以包括一種GFP幀的格式示意圖如圖3所示,一個(gè)GFP幀由核心報(bào)頭和凈荷區(qū)構(gòu)成,其中 核心報(bào)頭包括兩個(gè)字節(jié)的凈荷長(zhǎng)度指示符字段(PLL字段)和兩個(gè)字節(jié)的核心報(bào)頭差錯(cuò)校 驗(yàn)字段(cHEC字段)構(gòu)成,上述PLL字段的值表示該GFP幀的凈荷區(qū)的長(zhǎng)度。上述PLL字 段的值經(jīng)過HEC運(yùn)算后所得到的值和所述cHEC字段的值相等。當(dāng)在前面時(shí)鐘周期對(duì)應(yīng)的搜尋時(shí)間結(jié)束時(shí)定幀狀態(tài)機(jī)的狀態(tài)為PRESYNC狀態(tài)或 SYNC狀態(tài),根據(jù)前面時(shí)鐘周期內(nèi)的幀的搜尋結(jié)果,得到前面時(shí)鐘周期內(nèi)的最后一個(gè)GFP幀 的幀頭的PLL字段的值和最后一個(gè)GFP幀的開始字節(jié)。根據(jù)上述PLL字段的值確定前面時(shí) 鐘周期內(nèi)的最后一個(gè)GFP幀的長(zhǎng)度,再根據(jù)前面時(shí)鐘周期內(nèi)的最后一個(gè)GFP幀的長(zhǎng)度和開 始字節(jié)確定本次時(shí)鐘周期內(nèi)的第一個(gè)GFP幀的開始字節(jié)。具體而言,上述步驟12中的將所述多個(gè)數(shù)據(jù)幀的搜尋結(jié)果分別與所述本次時(shí)鐘 周期內(nèi)的第一數(shù)據(jù)幀的開始字節(jié)進(jìn)行匹配,將匹配成功的搜尋結(jié)果作為本次時(shí)鐘周期內(nèi)的 數(shù)據(jù)幀的搜尋結(jié)果。將上述多個(gè)GFP幀的搜尋結(jié)果分別與根據(jù)前面時(shí)鐘周期內(nèi)的最后一個(gè)GFP幀的長(zhǎng) 度和開始字節(jié)確定的本次時(shí)鐘周期內(nèi)的第一個(gè)GFP幀的開始字節(jié)進(jìn)行匹配,如果有一個(gè)搜 尋結(jié)果中的第一個(gè)GFP幀的開始字節(jié)與根據(jù)前面時(shí)鐘周期內(nèi)的最后一個(gè)GFP幀的長(zhǎng)度和開 始字節(jié)確定的本次時(shí)鐘周期內(nèi)的第一個(gè)GFP幀的開始字節(jié)相同,并且該搜尋結(jié)果是從上述 第一個(gè)GFP幀的開始字節(jié)開始搜尋而獲得的,則確定該搜尋結(jié)果為本次時(shí)鐘周期內(nèi)的GFP 幀的搜尋結(jié)果,根據(jù)該搜尋結(jié)果便可以對(duì)本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的GFP幀進(jìn)行定 位。由上述本發(fā)明的實(shí)施例提供的技術(shù)方案可以看出,本發(fā)明實(shí)施例對(duì)一個(gè)時(shí)鐘周期 內(nèi)的數(shù)據(jù)流中封裝的GFP幀等數(shù)據(jù)幀的個(gè)數(shù)沒有限制,無需為數(shù)據(jù)幀的定位而填充空幀, 從而可以節(jié)約網(wǎng)絡(luò)的數(shù)據(jù)傳輸帶寬。本發(fā)明實(shí)施例通過先對(duì)一個(gè)時(shí)鐘周期內(nèi)的數(shù)據(jù)流進(jìn)行預(yù)處理,將每?jī)蓚€(gè)相鄰字節(jié) 的值的HEC運(yùn)算結(jié)果進(jìn)行保存,可以提高后續(xù)的GFP幀的搜尋過程中的HEC驗(yàn)證運(yùn)算的速 度,從而可以進(jìn)一步提高本次時(shí)鐘周期內(nèi)的GFP幀等數(shù)據(jù)幀的定位效率。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以 通過計(jì)算機(jī)程序來指令相關(guān)的硬件來完成,所述的程序可存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì) 中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁 碟、光盤、只讀存儲(chǔ)記憶體(Read-Only Memory, ROM)或隨機(jī)存儲(chǔ)記憶體(Random Access Memory, RAM)等。本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)幀的定位裝置,其具體結(jié)構(gòu)如圖4所示,包括如 下的模塊
搜尋處理模塊41,用于獲取本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流,為所述本次始終周期內(nèi)的 數(shù)據(jù)流的每個(gè)字節(jié)分配一個(gè)定幀狀態(tài)機(jī);所述定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié)開始搜尋 數(shù)據(jù)幀,獲得多個(gè)數(shù)據(jù)幀的搜尋結(jié)果,其中,所述搜尋結(jié)果包括每個(gè)定幀狀態(tài)機(jī)搜尋到的第 一個(gè)數(shù)據(jù)幀的開始字節(jié)。搜尋結(jié)果確定模塊42,用于根據(jù)前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果確定本次時(shí) 鐘周期內(nèi)的第一個(gè)數(shù)據(jù)幀的開始字節(jié);將所述搜尋處理模塊41得到的多個(gè)數(shù)據(jù)幀的搜尋 結(jié)果分別與所述本次時(shí)鐘周期內(nèi)的第一數(shù)據(jù)幀的開始字節(jié)進(jìn)行匹配,將匹配成功的搜尋結(jié) 果作為本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果。由上述實(shí)施例提供的技術(shù)方案可以看出,本發(fā)明實(shí)施例通過為本次始終周期內(nèi)的 數(shù)據(jù)流的每個(gè)字節(jié)分配一個(gè)定幀狀態(tài)機(jī),每個(gè)定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié)并行開始 搜尋數(shù)據(jù)幀,可以快速地搜尋出本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的數(shù)據(jù)幀的幀頭的開始字 節(jié),進(jìn)而快速地搜尋出本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的多個(gè)數(shù)據(jù)幀,對(duì)本次時(shí)鐘周期內(nèi) 的數(shù)據(jù)流中封裝的數(shù)據(jù)幀進(jìn)行精確定位。本發(fā)明實(shí)施例還提供了另一種數(shù)據(jù)幀的定位裝置,其實(shí)現(xiàn)原理示意圖如圖5所 示,具體結(jié)構(gòu)如圖6所示,包括如下的模塊搜尋處理模塊61,用于獲取本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流,為所述本次始終周期內(nèi)的 數(shù)據(jù)流的每個(gè)字節(jié)分配一個(gè)定幀狀態(tài)機(jī);所述定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié)開始搜尋 數(shù)據(jù)幀,獲得多個(gè)數(shù)據(jù)幀的搜尋結(jié)果,其中,所述搜尋結(jié)果包括每個(gè)定幀狀態(tài)機(jī)搜尋到的第 一個(gè)數(shù)據(jù)幀的開始字節(jié)。搜尋結(jié)果確定模塊62,用于根據(jù)前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果確定本次時(shí) 鐘周期內(nèi)的第一個(gè)數(shù)據(jù)幀的開始字節(jié);將所述搜尋處理模塊61得到的多個(gè)數(shù)據(jù)幀的搜尋 結(jié)果分別與所述本次時(shí)鐘周期內(nèi)的第一數(shù)據(jù)幀的開始字節(jié)進(jìn)行匹配,將匹配成功的搜尋結(jié) 果作為本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果。具體而言,所述的搜尋處理模塊61,可以包括預(yù)處理模塊611,用于在接收到一個(gè)時(shí)鐘周期內(nèi)的數(shù)據(jù)流的各個(gè)字節(jié)后,先對(duì)數(shù) 據(jù)流的每?jī)蓚€(gè)相鄰字節(jié)的值進(jìn)行混合差錯(cuò)控制HEC運(yùn)算,將獲得的每?jī)蓚€(gè)相鄰字節(jié)的值的 HEC運(yùn)算結(jié)果進(jìn)行保存;HEC驗(yàn)證模塊612,用于使每個(gè)定幀狀態(tài)機(jī)從開始搜尋的第一個(gè)字節(jié)開始,選取連 續(xù)的相鄰的四個(gè)字節(jié),將所述連續(xù)的相鄰的四個(gè)字節(jié)中的前兩個(gè)相鄰字節(jié)的值的HEC運(yùn)算 結(jié)果與后兩個(gè)相鄰字節(jié)的值進(jìn)行比較,如果相等,則確定所述前兩個(gè)相鄰字節(jié)中的第一個(gè) 字節(jié)為第一個(gè)數(shù)據(jù)幀的開始字節(jié);根據(jù)所述前兩個(gè)相鄰字節(jié)的值確定第一個(gè)數(shù)據(jù)幀的長(zhǎng)度,再根據(jù)該第一個(gè)數(shù)據(jù)幀 的長(zhǎng)度和第一個(gè)數(shù)據(jù)幀的開始字節(jié)確定第二個(gè)數(shù)據(jù)幀的開始字節(jié),從所述第二個(gè)數(shù)據(jù)幀的 開始字節(jié)開始,將前兩個(gè)相鄰字節(jié)的值的HEC運(yùn)算結(jié)果與后兩個(gè)相鄰字節(jié)的值進(jìn)行比較, 如果相等,則確定所述第一個(gè)數(shù)據(jù)幀、第二個(gè)數(shù)據(jù)幀的位置正確,將所述第一個(gè)數(shù)據(jù)幀、第 二個(gè)數(shù)據(jù)幀的開始字節(jié)和長(zhǎng)度信息記錄在搜尋結(jié)果中;從所述第二個(gè)數(shù)據(jù)幀的開始字節(jié)開始,繼續(xù)進(jìn)行所述數(shù)據(jù)幀的搜尋過程,直到設(shè) 定的本次時(shí)鐘周期對(duì)應(yīng)的搜尋時(shí)間結(jié)束。具體而言,所述的搜尋結(jié)果確定模塊62,可以包括CN 102142917 A
說明書
7/7頁(yè)上次搜尋結(jié)果處理模塊621,用于根據(jù)前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果,得到 前面時(shí)鐘周期內(nèi)的最后一個(gè)數(shù)據(jù)幀的幀頭的凈荷長(zhǎng)度指示符字段的值和最后一個(gè)數(shù)據(jù)幀 的開始字節(jié),根據(jù)所述凈荷長(zhǎng)度指示符字段的值確定前面時(shí)鐘周期內(nèi)的最后一個(gè)數(shù)據(jù)幀的 長(zhǎng)度;根據(jù)所述前面時(shí)鐘周期內(nèi)的最后一個(gè)數(shù)據(jù)幀的長(zhǎng)度和開始字節(jié),確定本次時(shí)鐘周 期內(nèi)的第一個(gè)數(shù)據(jù)幀的開始字節(jié);匹配處理模塊622,用于當(dāng)所述搜尋處理模塊61所獲取的搜尋結(jié)果中的第一個(gè)數(shù) 據(jù)幀的開始字節(jié)與上述上次搜尋結(jié)果處理模塊621所獲得的根據(jù)前面時(shí)鐘周期內(nèi)的最后 一個(gè)數(shù)據(jù)幀的長(zhǎng)度和開始字節(jié)而確定的本次時(shí)鐘周期內(nèi)的第一個(gè)數(shù)據(jù)幀的開始字節(jié)相同, 并且所述搜尋結(jié)果是從所述第一個(gè)數(shù)據(jù)幀的開始字節(jié)開始搜尋而獲得的,則確定所述搜尋 結(jié)果為本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果。搜尋結(jié)果傳遞模塊623,用于將本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果和搜尋結(jié)束 時(shí)的定幀狀態(tài)機(jī)的狀態(tài)傳遞給下一個(gè)時(shí)鐘周期。綜上所述,由上述本發(fā)明的實(shí)施例提供的技術(shù)方案可以看出,本發(fā)明實(shí)施例通過 為本次始終周期內(nèi)的數(shù)據(jù)流的每個(gè)字節(jié)分配一個(gè)定幀狀態(tài)機(jī),每個(gè)定幀狀態(tài)機(jī)分別從各自 對(duì)應(yīng)的字節(jié)并行開始搜尋數(shù)據(jù)幀,可以快速地搜尋出本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的第 一個(gè)GFP幀等數(shù)據(jù)幀的幀頭的開始字節(jié),進(jìn)而快速地搜尋出本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封 裝的多個(gè)GFP幀等數(shù)據(jù)幀,對(duì)本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的GFP幀等數(shù)據(jù)幀進(jìn)行精確 定位。本發(fā)明實(shí)施例對(duì)一個(gè)時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的GFP幀等數(shù)據(jù)幀的個(gè)數(shù)沒有 限制,無需為數(shù)據(jù)幀的定位而填充空幀,從而可以節(jié)約網(wǎng)絡(luò)的數(shù)據(jù)傳輸帶寬。本發(fā)明實(shí)施例通過先對(duì)一個(gè)時(shí)鐘周期內(nèi)的數(shù)據(jù)流進(jìn)行預(yù)處理,將每?jī)蓚€(gè)相鄰字節(jié) 的值的HEC運(yùn)算結(jié)果進(jìn)行保存,可以提高后續(xù)的GFP幀的搜尋過程中的HEC驗(yàn)證運(yùn)算的速 度,從而可以進(jìn)一步提高本次時(shí)鐘周期內(nèi)的GFP幀等數(shù)據(jù)幀的定位效率。以上所述,僅為本發(fā)明較佳的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此, 任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換, 都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求的保護(hù)范圍 為準(zhǔn)。
權(quán)利要求
1.一種數(shù)據(jù)幀的定位方法,其特征在于,包括獲取本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流,為所述本次始終周期內(nèi)的數(shù)據(jù)流的每個(gè)字節(jié)分配一個(gè) 定幀狀態(tài)機(jī);所述定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié)開始搜尋數(shù)據(jù)幀,獲得多個(gè)數(shù)據(jù)幀的搜尋結(jié) 果,其中,所述搜尋結(jié)果包括每個(gè)定幀狀態(tài)機(jī)搜尋到的第一個(gè)數(shù)據(jù)幀的開始字節(jié);根據(jù)前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果確定本次時(shí)鐘周期內(nèi)的第一個(gè)數(shù)據(jù)幀的開 始字節(jié);將所述多個(gè)數(shù)據(jù)幀的搜尋結(jié)果分別與所述本次時(shí)鐘周期內(nèi)的第一數(shù)據(jù)幀的開始字節(jié) 進(jìn)行匹配,將匹配成功的搜尋結(jié)果作為本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果。
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)幀的定位方法,其特征在于,所述的定幀狀態(tài)機(jī)分別從 各自對(duì)應(yīng)的字節(jié)開始搜尋數(shù)據(jù)幀包括在接收到一個(gè)時(shí)鐘周期內(nèi)的數(shù)據(jù)流的各個(gè)字節(jié)后,先對(duì)數(shù)據(jù)流的每?jī)蓚€(gè)相鄰字節(jié)的值 進(jìn)行混合差錯(cuò)控制HEC運(yùn)算,將獲得的每?jī)蓚€(gè)相鄰字節(jié)的值的HEC運(yùn)算結(jié)果進(jìn)行保存;每個(gè)定幀狀態(tài)機(jī)從開始搜尋的第一個(gè)字節(jié)開始,選取連續(xù)的相鄰的四個(gè)字節(jié),將所述 連續(xù)的相鄰的四個(gè)字節(jié)中的前兩個(gè)相鄰字節(jié)的值的HEC運(yùn)算結(jié)果與后兩個(gè)相鄰字節(jié)的值 進(jìn)行比較,如果相等,則確定所述前兩個(gè)相鄰字節(jié)中的第一個(gè)字節(jié)為第一個(gè)數(shù)據(jù)幀的開始 字節(jié);根據(jù)所述前兩個(gè)相鄰字節(jié)的值確定第一個(gè)數(shù)據(jù)幀的長(zhǎng)度,再根據(jù)該第一個(gè)數(shù)據(jù)幀的長(zhǎng) 度和第一個(gè)數(shù)據(jù)幀的開始字節(jié)確定第二個(gè)數(shù)據(jù)幀的開始字節(jié),從所述第二個(gè)數(shù)據(jù)幀的開始 字節(jié)開始,將前兩個(gè)相鄰字節(jié)的值的HEC運(yùn)算結(jié)果與后兩個(gè)相鄰字節(jié)的值進(jìn)行比較,如果 相等,則確定所述第一個(gè)數(shù)據(jù)幀、第二個(gè)數(shù)據(jù)幀的位置正確,將所述第一個(gè)數(shù)據(jù)幀、第二個(gè) 數(shù)據(jù)幀的開始字節(jié)和長(zhǎng)度信息記錄在搜尋結(jié)果中;從所述第二個(gè)數(shù)據(jù)幀的開始字節(jié)開始,繼續(xù)進(jìn)行所述數(shù)據(jù)幀的搜尋過程,直到設(shè)定的 本次時(shí)鐘周期對(duì)應(yīng)的搜尋時(shí)間結(jié)束。
3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)幀的定位方法,其特征在于,所述的根據(jù)前面時(shí)鐘周期 內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果確定本次時(shí)鐘周期內(nèi)的第一個(gè)數(shù)據(jù)幀的開始字節(jié),包括根據(jù)前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果,得到前面時(shí)鐘周期內(nèi)的最后一個(gè)數(shù)據(jù)幀的 幀頭的凈荷長(zhǎng)度指示符字段的值和最后一個(gè)數(shù)據(jù)幀的開始字節(jié),根據(jù)所述凈荷長(zhǎng)度指示符 字段的值確定前面時(shí)鐘周期內(nèi)的最后一個(gè)數(shù)據(jù)幀的長(zhǎng)度;根據(jù)所述前面時(shí)鐘周期內(nèi)的最后一個(gè)數(shù)據(jù)幀的長(zhǎng)度和開始字節(jié),確定本次時(shí)鐘周期內(nèi) 的第一個(gè)數(shù)據(jù)幀的開始字節(jié)。
4.根據(jù)權(quán)利要求1或2或3所述的數(shù)據(jù)幀的定位方法,其特征在于,所述的將所述多個(gè) 數(shù)據(jù)幀的搜尋結(jié)果分別與所述本次時(shí)鐘周期內(nèi)的第一數(shù)據(jù)幀的開始字節(jié)進(jìn)行匹配,將匹配 成功的搜尋結(jié)果確定本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果,包括當(dāng)搜尋結(jié)果中的第一個(gè)數(shù)據(jù)幀的開始字節(jié)與所述本次時(shí)鐘周期內(nèi)的第一個(gè)數(shù)據(jù)幀的 開始字節(jié)相同,并且所述搜尋結(jié)果是從所述第一個(gè)數(shù)據(jù)幀的開始字節(jié)開始搜尋而獲得的, 則確定所述搜尋結(jié)果為本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果;將本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果和搜尋結(jié)束時(shí)的定幀狀態(tài)機(jī)的狀態(tài)傳輸給下 一個(gè)時(shí)鐘周期。
5.一種數(shù)據(jù)幀的定位裝置,其特征在于,包括搜尋處理模塊,用于獲取本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流,為所述本次始終周期內(nèi)的數(shù)據(jù)流 的每個(gè)字節(jié)分配一個(gè)定幀狀態(tài)機(jī);所述定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié)開始搜尋數(shù)據(jù) 幀,獲得多個(gè)數(shù)據(jù)幀的搜尋結(jié)果,其中,所述搜尋結(jié)果包括每個(gè)定幀狀態(tài)機(jī)搜尋到的第一個(gè) 數(shù)據(jù)幀的開始字節(jié);搜尋結(jié)果確定模塊,用于根據(jù)前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果確定本次時(shí)鐘周期 內(nèi)的第一個(gè)數(shù)據(jù)幀的開始字節(jié);將所述搜尋處理模塊得到的多個(gè)數(shù)據(jù)幀的搜尋結(jié)果分別與 所述本次時(shí)鐘周期內(nèi)的第一數(shù)據(jù)幀的開始字節(jié)進(jìn)行匹配,將匹配成功的搜尋結(jié)果作為本次 時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果。
6.根據(jù)權(quán)利要求5所述的數(shù)據(jù)幀的定位裝置,其特征在于,所述的搜尋處理模塊,包括預(yù)處理模塊,用于在接收到一個(gè)時(shí)鐘周期內(nèi)的數(shù)據(jù)流的各個(gè)字節(jié)后,先對(duì)數(shù)據(jù)流的每 兩個(gè)相鄰字節(jié)的值進(jìn)行混合差錯(cuò)控制HEC運(yùn)算,將獲得的每?jī)蓚€(gè)相鄰字節(jié)的值的HEC運(yùn)算 結(jié)果進(jìn)行保存;HEC驗(yàn)證模塊,用于使每個(gè)定幀狀態(tài)機(jī)從開始搜尋的第一個(gè)字節(jié)開始,選取連續(xù)的相鄰 的四個(gè)字節(jié),將所述連續(xù)的相鄰的四個(gè)字節(jié)中的前兩個(gè)相鄰字節(jié)的值的HEC運(yùn)算結(jié)果與后 兩個(gè)相鄰字節(jié)的值進(jìn)行比較,如果相等,則確定所述前兩個(gè)相鄰字節(jié)中的第一個(gè)字節(jié)為第 一個(gè)數(shù)據(jù)幀的開始字節(jié);根據(jù)所述前兩個(gè)相鄰字節(jié)的值確定第一個(gè)數(shù)據(jù)幀的長(zhǎng)度,再根據(jù)該第一個(gè)數(shù)據(jù)幀的長(zhǎng) 度和第一個(gè)數(shù)據(jù)幀的開始字節(jié)確定第二個(gè)數(shù)據(jù)幀的開始字節(jié),從所述第二個(gè)數(shù)據(jù)幀的開始 字節(jié)開始,將前兩個(gè)相鄰字節(jié)的值的HEC運(yùn)算結(jié)果與后兩個(gè)相鄰字節(jié)的值進(jìn)行比較,如果 相等,則確定所述第一個(gè)數(shù)據(jù)幀、第二個(gè)數(shù)據(jù)幀的位置正確,將所述第一個(gè)數(shù)據(jù)幀、第二個(gè) 數(shù)據(jù)幀的開始字節(jié)和長(zhǎng)度信息記錄在搜尋結(jié)果中;從所述第二個(gè)數(shù)據(jù)幀的開始字節(jié)開始,繼續(xù)進(jìn)行所述數(shù)據(jù)幀的搜尋過程,直到設(shè)定的 本次時(shí)鐘周期對(duì)應(yīng)的搜尋時(shí)間結(jié)束。
7.根據(jù)權(quán)利要求5或6所述的數(shù)據(jù)幀的定位裝置,其特征在于,所述的搜尋結(jié)果確定模 塊,包括上次搜尋結(jié)果處理模塊,用于根據(jù)前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果,得到前面時(shí) 鐘周期內(nèi)的最后一個(gè)數(shù)據(jù)幀的幀頭的凈荷長(zhǎng)度指示符字段的值和最后一個(gè)數(shù)據(jù)幀的開始 字節(jié),根據(jù)所述凈荷長(zhǎng)度指示符字段的值確定前面時(shí)鐘周期內(nèi)的最后一個(gè)數(shù)據(jù)幀的長(zhǎng)度;根據(jù)所述前面時(shí)鐘周期內(nèi)的最后一個(gè)數(shù)據(jù)幀的長(zhǎng)度和開始字節(jié),確定本次時(shí)鐘周期內(nèi) 的第一個(gè)數(shù)據(jù)幀的開始字節(jié);匹配處理模塊,用于當(dāng)所述搜尋處理模塊所獲取的搜尋結(jié)果中的第一個(gè)數(shù)據(jù)幀的開始 字節(jié)與所述上次搜尋結(jié)果處理模塊確定的本次時(shí)鐘周期內(nèi)的第一個(gè)數(shù)據(jù)幀的開始字節(jié)相 同,并且所述搜尋結(jié)果是從所述第一個(gè)數(shù)據(jù)幀的開始字節(jié)開始搜尋而獲得的,則確定所述 搜尋結(jié)果為本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果。
8.根據(jù)權(quán)利要求7所述的數(shù)據(jù)幀的定位裝置,其特征在于,所述的搜尋結(jié)果確定模塊, 還包括搜尋結(jié)果傳遞模塊,用于將本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果和搜尋結(jié)束時(shí)的定幀狀態(tài)機(jī)的狀態(tài)傳遞給下一個(gè)時(shí)鐘周期。
全文摘要
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)幀的定位方法及裝置。該方法主要包括為本次始終周期內(nèi)的數(shù)據(jù)流的每個(gè)字節(jié)分配一個(gè)定幀狀態(tài)機(jī),所述定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié)開始搜尋數(shù)據(jù)幀,獲得多個(gè)數(shù)據(jù)幀的搜尋結(jié)果,根據(jù)前面時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果選擇所述多個(gè)數(shù)據(jù)幀的搜尋結(jié)果中的一個(gè)搜尋結(jié)果,作為本次時(shí)鐘周期內(nèi)的數(shù)據(jù)幀的搜尋結(jié)果。本發(fā)明實(shí)施例通過采用每個(gè)定幀狀態(tài)機(jī)分別從各自對(duì)應(yīng)的字節(jié)并行開始搜尋數(shù)據(jù)幀,可以快速地搜尋出本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的多個(gè)數(shù)據(jù)幀,對(duì)本次時(shí)鐘周期內(nèi)的數(shù)據(jù)流中封裝的數(shù)據(jù)幀進(jìn)行精確定位。
文檔編號(hào)H04L29/06GK102142917SQ201110078469
公開日2011年8月3日 申請(qǐng)日期2011年3月28日 優(yōu)先權(quán)日2011年3月28日
發(fā)明者吳博, 鄧榮, 龍鎮(zhèn) 申請(qǐng)人:華為技術(shù)有限公司