專利名稱:幀定位方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,具體涉及數(shù)據(jù)傳輸網(wǎng)絡(luò)中的幀定位方法及裝置。
背景技術(shù):
在數(shù)據(jù)傳輸網(wǎng)絡(luò)中,例如光傳輸網(wǎng)絡(luò)OTN ( Optical Transport Network ) 和同步數(shù)字傳送網(wǎng)SDH ( Synchronous Digital Hierarchy),數(shù)據(jù)是以數(shù)據(jù)幀為 單位進行傳輸,通過在每個數(shù)據(jù)幀的起始處插入幀定位信號(FAS) (Frame Alignment Signal)來確定數(shù)據(jù)幀的開頭。FAS具有確定值,接收設(shè)備通過在 接收到的數(shù)據(jù)中搜索幀定位字節(jié)即FAS字節(jié)來確定數(shù)據(jù)幀邊界位置。OTN網(wǎng)絡(luò)中數(shù)據(jù)幀中的幀定位字節(jié)由3個OA1字節(jié)和3個OA2字節(jié)組 成,即為OA1 OA1 OA1 OA2 OA2 OA2, SDH網(wǎng)絡(luò)中數(shù)據(jù)幀的幀定位字節(jié)由 3xN個Al字節(jié)、3xN個A2字節(jié)組成,其組合格式與在OTN網(wǎng)絡(luò)中相同, N按以下規(guī)律取值N=l、 14、 16、 64、 256……。上述Al、 A2、 OA1和 OA2字節(jié)都具有確定的二進制數(shù)值,其中Al和OA1字節(jié)為11110110, A2 和OA2字節(jié)為00101000?,F(xiàn)有的幀定位方法是先鎖存輸入的若干時鐘節(jié)拍的數(shù)據(jù),再在鎖存的數(shù) 據(jù)中進行逐位比較,當(dāng)比較到數(shù)據(jù)與幀定位字節(jié)相同時,即認為找到數(shù)據(jù)幀 頭,并根據(jù)數(shù)據(jù)幀頭位置調(diào)整輸入字節(jié)的位序。假設(shè)傳輸網(wǎng)絡(luò)的總線位寬為w, 幀定位字節(jié)長度為s, k為滿足式kxw > s的最小正整數(shù),則請參閱圖1, 現(xiàn)有的幀定位方法包括步驟Al、將輸入數(shù)據(jù)進行拼接;將當(dāng)前周期輸入的數(shù)據(jù)及此前寄存的k- 1個時鐘周期的數(shù)據(jù)拼接為一個 長度為kxw比特(bit)的數(shù)據(jù),拼接的原則是kxw > s。A2、將輸入數(shù)據(jù)按幀定位字節(jié)長度與幀定位字節(jié)進行比較; 將輸入數(shù)據(jù)中的1 ~ s比特、2 ~ s + 1比特........w ~ w + s - 1比特所組成的長度為S的數(shù)據(jù)與幀定位字節(jié)進行比較。A3、根據(jù)比較結(jié)果確認是否定位出數(shù)據(jù)幀頭。若比較出某段數(shù)據(jù)與幀定位字節(jié)相同,則認為定位出數(shù)據(jù)幀頭。從以上內(nèi)容可以得出,在總線位寬為w,幀定位字節(jié)長度為s時,需要在 每個時鐘周期內(nèi)進行Si -wxs次比較運算。以總線位寬w為64bit,幀定位字節(jié)長度s為6個固定字節(jié)共48bit的情 況舉例,先將當(dāng)前時鐘周期內(nèi)輸入的64bit數(shù)據(jù)寄存一個時鐘周期后,與下一 時鐘周期輸入的64bit數(shù)據(jù)拼接為128bit數(shù)據(jù)(其中當(dāng)前周期數(shù)據(jù)位于1~64bit,下個周期的數(shù)據(jù)位于65 ~ 128bit),再分別將1 48bit、 2 -49bit........64-111bit所組成的48bit數(shù)據(jù)與規(guī)定的幀定位字節(jié)進行比較,若比較出某 48bit數(shù)據(jù)與幀定位字節(jié)相同,則認為定位出數(shù)據(jù)幀頭。可以得出,在此例中 需要在每個時鐘周期進行64 x 48 = 3072次比較運算。而隨著網(wǎng)絡(luò)總線位寬的增大,數(shù)據(jù)幀定位過程中需要進行的比較運算次 數(shù)就越多,消耗了大量的硬件資源,提高了產(chǎn)品的成本。發(fā)明內(nèi)容本發(fā)明實施例要解決的技術(shù)問題是提供一種幀定位方法及裝置,可以有 效地減少幀定位過程中的運算次數(shù)。為解決上述技術(shù)問題,本發(fā)明實施例是通過以下技術(shù)方案實現(xiàn)的本發(fā)明實施例提供一種幀定位方法,包括將輸入數(shù)據(jù)按幀定位字節(jié)的 組成單元長度與幀定位字節(jié)的組成單元進行比較,并根據(jù)預(yù)置規(guī)則得到比較 值;將所迷比較值組合后進行邏輯運算;根據(jù)邏輯運算結(jié)果并結(jié)合所述預(yù)置 規(guī)則,確定所述輸入數(shù)據(jù)中是否包含與幀定位字節(jié)相同的數(shù)據(jù),若是,找出 該相同的數(shù)據(jù)并作為數(shù)據(jù)幀頭。本發(fā)明實施例提供一種幀定位裝置,包括比較模塊、組合模塊、運算 模塊和定位模塊;比較模塊,用于將輸入數(shù)據(jù)按幀定位字節(jié)的組成單元長度 與幀定位字節(jié)的組成單元進行比較,并根據(jù)預(yù)置規(guī)則得到比較值;組合模塊, 用于將所迷比較值進行組合;運算模塊,用于將組合后的比較值進行邏輯運算,并輸出邏輯運算結(jié)果;定位模塊,用于根據(jù)所述邏輯運算結(jié)果并結(jié)合預(yù)置規(guī)則,確定所述輸入數(shù)據(jù)中是否包含與幀定位字節(jié)相同的數(shù)據(jù),若是,找 出該相同的數(shù)據(jù)并作為數(shù)據(jù)幀頭。從本發(fā)明實施例以上技術(shù)方案可以看出,現(xiàn)有幀定位方法進行幀定位過 程中將輸入數(shù)據(jù)按幀定位字節(jié)長度與幀定位字節(jié)進行比較,需要進行的比較 運算次數(shù)比較多,而本發(fā)明實施例將輸入數(shù)據(jù)按幀定位字節(jié)的組成單元長度與幀定位字節(jié)的不同組成單元分別進行比較,并根據(jù)預(yù)置規(guī)則得到比較值; 將所述比較值依據(jù)幀定位字節(jié)的組成單元數(shù)目組合后進行邏輯運算;根據(jù)邏 輯運算結(jié)果并結(jié)合所述預(yù)置規(guī)則,確定所述輸入數(shù)據(jù)中是否包含與幀定位字 節(jié)相同的數(shù)據(jù),若是,找出該相同的數(shù)據(jù)并作為數(shù)據(jù)幀頭。通過本發(fā)明實施 提供的技術(shù)方案,可以減少現(xiàn)有技術(shù)中存在的重復(fù)比較運算,從而有效減少 幀定位過程中的比較運算次數(shù)并定位出數(shù)據(jù)幀頭,減少所耗費的硬件資源。
圖l是現(xiàn)有技術(shù)幀定位方法流程圖; 圖2是本發(fā)明實施例幀定位方法流程圖; 圖3是本發(fā)明實施例幀定位方法實施例一流程圖; 圖4是本發(fā)明實施例幀定位方法實施例二流程圖; 圖5是本發(fā)明實施例幀定位裝置結(jié)構(gòu)示意圖。
具體實施方式
本發(fā)明實施例提供一種幀定位方法,能有效地減少幀定位過程中的運算 次數(shù)并定位出數(shù)據(jù)幀頭。目前網(wǎng)絡(luò)的總線位寬逐漸增大,數(shù)據(jù)傳輸時需要在每個時鐘周期內(nèi)對輸 入的數(shù)據(jù)與幀定位字節(jié)進行多次的比較運算來確定數(shù)據(jù)幀頭位置。在SDH、 OTN協(xié)議中,幀定位字節(jié)都由若干個重復(fù)的字節(jié)組成,例如OTN中的幀定位 字節(jié)是由3個0A1字節(jié)、3個OA2字節(jié)組成。因此,在進行幀定位過程中對 每個周期輸入的數(shù)據(jù)與幀定位字節(jié)進行逐位比較時,實際上對數(shù)據(jù)的大部分 字節(jié)與OA1字節(jié)或OA2字節(jié)進行了重復(fù)的比較。以背景技術(shù)中所述的總線位寬為64bit,幀定位字節(jié)為48bit的情況為例,是分別將1 ~ 48bit、 2 ~ 49bit、 ......、 64 ~ 11 lbit組成的48bit數(shù)據(jù)與規(guī)定的幀定位字節(jié)進行比較,而對1-48bit與幀定位字節(jié)的比較運算可以分解為6 個子運算,即比較1~8、9~16、 17-24bit是否等于OAl字節(jié);比較25~32、 33 -40、 41 48bit是否等于OA2字節(jié)。同理,對2 ~49bit與幀定位字節(jié)的比 較運算可以分解為6個子運算,即比較2~9、 10~17、 18 25bit是否等于 0A1字節(jié);比較26~34、 34~41、 42 ~ 49bit是否等于OA2字節(jié);而對9 ~ 56bit與幀定位字節(jié)的比較運算也是可以分解為6個子運算比較9~16、 17-24、 25-32bit是否等于OAl字節(jié);比較33~40、 41-48、 49 56bit是否等 于OA2字節(jié)。其他以此類推。很顯然,1 48bit與幀定位字節(jié)的比較運算和 9~56bit與幀定位字節(jié)的比較運算這兩個比較運算中都同樣比較了 9~16、 17 24bit是否等于OA1字節(jié),33~40、 41 ~ 48bit是否等于OA2字節(jié),也就 是說,兩個比較運算之間存在著重復(fù)的比較運算。相應(yīng)的,2 49bit與幀定位 字節(jié)的比較運算和10-57bit與FAS的比較運算也存在相同情況,其他以此類 推。本發(fā)明實施例考慮到上述這個特點,并結(jié)合總線位寬情況,提出了一種 新的幀定位方法,消除這些重復(fù)的比較運算,減少運算量,節(jié)省了所需硬件 資源。本發(fā)明實施例幀定位方法的總體思想是,先將輸入數(shù)據(jù)與構(gòu)成幀定位字 節(jié)的組成單元A、 B進行逐位比較,再對得到的比較結(jié)果進行處理,從而完成 幀定位過程。對于OTN,組成單元A為OA1字節(jié),B為OA2字節(jié),對于SDH, 組成單元A為A1字節(jié),B為A2字節(jié)。以下結(jié)合附圖詳細介紹本發(fā)明實施例。請參閱圖2,是本發(fā)明實施例幀定位方法的流程圖,具體包括步驟 Bl 、將輸入數(shù)據(jù)按幀定位字節(jié)的組成單元長度與幀定位字節(jié)的不同組成 單元分別進行比較,并根據(jù)預(yù)置規(guī)則得到比較值;幀定位字節(jié)的組成單元包括A和B,比較時是將輸入數(shù)據(jù)按幀定位字節(jié)規(guī)則可以為用數(shù)值1或o表示比較的數(shù)據(jù)與幀定位字節(jié)中的組成單元相同,對應(yīng)地用數(shù)值0或1表示比較的數(shù)據(jù)與幀定位字節(jié)中的組成單元不相同。B2、將所述比較值依據(jù)幀定位字節(jié)的組成單元數(shù)目組合后進行邏輯運算;假設(shè)幀定位字節(jié)的組成單元A的數(shù)目為n,組成單元B的數(shù)目為m,則 選取n個與組成單元A進行比較的值和m個與組成單元B進行比較的值進行 組合后再進行邏輯運算。當(dāng)預(yù)置規(guī)則可以為用數(shù)值1表示比較的數(shù)據(jù)與幀定 位字節(jié)中的組成單元相同時,進行的是邏輯與運算;當(dāng)預(yù)置規(guī)則可以為用數(shù) 值0表示比較的數(shù)據(jù)與幀定位字節(jié)中的組成單元相同時,進行的是邏輯或運 算。B3、根據(jù)邏輯運算結(jié)果并結(jié)合預(yù)置規(guī)則確認是否定位出數(shù)據(jù)幀頭。 如果進行的是邏輯與運算,則當(dāng)運算結(jié)果為1時,表示所述輸入數(shù)據(jù)中 包含與幀定位字節(jié)相同的數(shù)據(jù),并找出該相同的數(shù)據(jù)作為數(shù)據(jù)幀頭,此時也 就意味著定位出數(shù)據(jù)幀頭;如果進行的是邏輯或運算,則當(dāng)運算結(jié)果為0時, 表示所述輸入數(shù)據(jù)中包含與幀定位字節(jié)相同的數(shù)據(jù),并找出該相同的數(shù)據(jù)作 為數(shù)據(jù)幀頭,此時也就意味著定位出數(shù)據(jù)幀頭。進行邏輯與運算時,只有1 和l相與才等于l,進行邏輯或運算時,只有0和0相或才等于0。請參閱圖3,是本發(fā)明實施例幀定位方法實施例一流程圖。 設(shè)總線位寬為w,幀定位字節(jié)長度為s, k為滿足式kxw > s的最小 正整數(shù)。其中幀定位字節(jié)由n個組成單元A、 m個組成單元B組成,則本發(fā) 明實施例的幀定位方法實施例一如圖3所示,具體包括步驟 Cl、將輸入數(shù)據(jù)進行拼接;將當(dāng)前周期的輸入數(shù)據(jù)及此前k- 1個時鐘周期寄存的數(shù)據(jù)拼接為一個長 度為kxwbit的數(shù)據(jù)。C2、將輸入數(shù)據(jù)按幀定位字節(jié)的組成單元長度與幀定位字節(jié)的組成單元 A和B分別進行比較,并根據(jù)預(yù)置規(guī)則得到比較值;分別將l 8bit、 2一9bit........ t ~ t + 7bit組成的8bit數(shù)據(jù)與0A1字節(jié)進行比較,其中t = w + (n-l)x8,設(shè)比較得到的結(jié)果為A1、 A2........ At。同時,將j ~ j+7bit、 j+l ~ j+l+7bit........ u ~ u + 7bit組成的8bit數(shù)據(jù)與OA2字節(jié)進行比較,其中,j = nx8+l, u = w + nx8 +(m-l)x8,設(shè)比較得 到的結(jié)果為Bj、 Bj+1........ Bu。上述A1-At, Bj Bu均為1比特信號,Al為"1"時代表l 8bit等于 0A1字節(jié),為"0"時代表l 8bit不等于OAl字節(jié),類似的,A2......At分別代表2 9bit……t t + 7bit與0A1字節(jié)的比較結(jié)果;Bj為"1"時代表j j+7bit等于OA2字節(jié),為"0"時代表不等于OA2字節(jié),類似的,Bj+1......Bu分別代表j+l ~ j+l+7bk……u ~ u + 7bit與OA2字節(jié)的比4交結(jié)果。C3、將所述比較值依據(jù)幀定位字節(jié)的組成單元A和B的數(shù)目組合后進行 邏輯與運算;將n個與組成單元A的比較結(jié)果和m個與組成單元B比較的結(jié)果組合起 來進行"與"運算,組合的方法為Ai n A(i+8)……D A(i+( n-l) x 8) n B(i+n x 8)……D B(i+n x 8+(m-l) x 8),其中1《i《w。C4、根據(jù)邏輯運算結(jié)果并結(jié)合預(yù)置規(guī)則確認是否定位出數(shù)據(jù)幀頭。顯然,如果按上式組合后進行"與"運算的結(jié)果為0,則表示第i~i + s-lbit *幀定位字節(jié);如果按上式組合后進行"與"運算的結(jié)果為1,則表示第i~i + s-lbit -幀定位字節(jié),也就是意味著定位出數(shù)據(jù)幀頭??梢钥闯?,整個幀定位過程共需要((w+(n-l) x 8) + (w+(m-l) x 8))次8bit比較運算,及w次(n+m)輸入的"與,,運算,共有(n+m+16) x w + 64(n+m-2)次運算。將s = 8x (n+m)代入,可知總運算次數(shù)S為s = , + i6w + 8s-128 。8與現(xiàn)有技術(shù)幀定位方法所需的總運算次數(shù)Si-ws相比,可得到本發(fā)明實 施例幀定位方法與現(xiàn)有技術(shù)幀定位方法的運算量的比值為 S1 16 8 1285\8svv vuy由上式可以看出,只要丁+:—"^"<i,本發(fā)明實施例幀定位方法的運算量就小于現(xiàn)有技術(shù) 幀定位方法的運算量,且w、 s的值越大,本發(fā)明實施例幀定位方法的運算量 減少的幅度越大。仍以上文中總線位寬為64bit,幀定位字節(jié)為48bit的情況為例,此時n=3, m=3,進行幀定位的過程如下首先,將當(dāng)前時鐘周期內(nèi)輸入的64bit數(shù)據(jù)與下一時鐘周期輸入的64bit 數(shù)據(jù)拼接為128bit數(shù)據(jù),其中當(dāng)前周期數(shù)據(jù)位于1 64bit,下個周期的數(shù)據(jù)位 于65 ~ 128bit;其次,分別將1 ~ 8bit、 2 ~ 9bit........ 80 ~ 87bit組成的8bit數(shù)據(jù)與0A1字節(jié)進行比較,設(shè)比較得到的結(jié)果為Al、 A2........A80,同時將25 -32bit、26~33bit........ 104- lllbit組成的8bit數(shù)據(jù)與0A2字節(jié)進行比較,設(shè)比較得到的結(jié)果為B25、 B26........B104。 Al ~ A80均為1比特信號,Al為"1"時代表1-8bit等于0Al字節(jié),為"0"時代表l 8bit不等于OAl字節(jié),類 似的,A2……A80分別代表2-9bit……80-87bit與0A1字節(jié)的比較結(jié)果; B25 B104均為1比特信號,B25為T時代表25 ~ 32bit等于OA2字節(jié), 為"0"時代表25-32bit不等于OA2字節(jié),類似的,B26……B104分別代表 26-33bit……104~ lllbit與OA2字節(jié)的比較結(jié)杲;然后,再將比較后得到的lbit結(jié)果每6個一組進行"與"運算。每一組 中,3個為與0A1字節(jié)進行比較的結(jié)果,3個為與OA2字節(jié)進行比較的結(jié)果。 組合的方法為(Al n A9門A17門B25門B33門B41 ) , ( A2門A10 n A18 (1 B26 門B34 (I B42 )........ (A64 n A72 D A80 H B88門B96門B104 );最后,根據(jù)運算結(jié)果確認定位的數(shù)據(jù)幀頭。顯然,如果(AinA9DA17 nB25DB33nB41)進行"與"運算的結(jié)果為1,則1 ~48bit =幀定位字節(jié), 意味著定位出數(shù)據(jù)幀頭,如果(Al nA9nA17nB25DB33 DB41 )進行"與,, 運算的結(jié)果為O,則1 48bit-幀定位字節(jié)。同樣的,(A2f!A10nA18nB26 D B34 n B42 )進行"與"運算的結(jié)果就是2 ~ 49bit與FAS比較的結(jié)果,(A64 nA72nA80riB88nB96nB104)進行"與,,運算的結(jié)果就是64~lllbit與 幀定位字節(jié)比較的結(jié)果。如果進行"與"運算的結(jié)果為1,則表示比較數(shù)據(jù)與幀定位字節(jié)相同,也就意味著定位出數(shù)據(jù)幀頭。請參閱圖4,是本發(fā)明實施例幀定位方法實施例二流程圖。實施例二與實施例一的主要區(qū)別是將Al At中為"1"時代表不等于 0A1字節(jié),為"0"時代表等于0A1字節(jié),Bj Bu中為"1"時代表不等于 OA2字節(jié),為"0"時代表等于OA2字節(jié),并且相應(yīng)的在后面的運算是進行 邏輯或運算。設(shè)總線位寬為w,幀定位字節(jié)長度為s, k為滿足式kxw > s的最小 正整數(shù)。其中幀定位字節(jié)由n個A、 m個B組成,則本發(fā)明實施例的幀定位 方法實施例二如圖4所示,具體包括步驟Dl、將輸入數(shù)據(jù)進行拼接;將當(dāng)前周期的輸入數(shù)據(jù)及此前k- 1個時鐘周期寄存的數(shù)據(jù)拼接為一個長 度為kxwbit的數(shù)據(jù)。D2、將輸入數(shù)據(jù)按幀定位字節(jié)的組成單元長度與幀定位字節(jié)的組成單元 A和B分別進行比較,并根據(jù)預(yù)置規(guī)則得到比較值;分別將1 ~ 8bit、 2 ~ 9bit........ t ~ t + 7bit組成的8bit數(shù)據(jù)與0A1字節(jié)進行比較,其中t = w + (n-l)x8,設(shè)比較得到的結(jié)果為A1、 A2........ At;同時,將j ~ j+7bit、 j+l ~ j+l+7bit........ u ~ u + 7bit組成的8bit數(shù)據(jù)與OA2字節(jié)進行比較,其中,j = nx8+l, u = w + nx8 +(m-l)x8,設(shè)比較得 到的結(jié)果為Bj、 Bj+1........ Bu。上述Al ~ At, Bj ~ Bu均為1比特信號,Al為"0"時代表1 ~ 8bit等于 0A1字節(jié),為"1"時代表l 8bit不等于OAl字節(jié),類似的,A2……At分 別代表2 ~ 9bit......t ~ t + 7bit與0A1字節(jié)的比較結(jié)果;Bj為"0"時代表j ~j+7bit等于OA2字節(jié),為"1"時代表不等于OA2字節(jié),類似的,Bj+1…… Bu分別代表j+l ~j+l+7bit……u u + 7bit與OA2字節(jié)的比較結(jié)果。D3、將所述比較值依據(jù)幀定位字節(jié)的組成單元A和B的數(shù)目組合后進行 邏輯或運算;將n個與組成單元A的比較結(jié)果和m個與組成單元B比較的結(jié)果組合起來進行"或"運算,組合的方法為Ai門A(i+8)……D A(i+( n-l) x 8) (1 B(i+n x 8)……(1 B(i+n x 8+(m-l) x 8),其中l(wèi)<i<w。D4、根據(jù)邏輯運算結(jié)果并結(jié)合預(yù)置規(guī)則確認定位出數(shù)據(jù)幀頭。顯然,如果按上式組合后進行"與"運算的結(jié)果為1,則第i~i + s-lbit *幀定位字節(jié);如果按上式組合后進行"與"運算的結(jié)果為0,則第i~i + s-l bit=幀定位字節(jié),也就是意味著定位出數(shù)據(jù)幀頭。可以看出,整個幀定位過程共需要((w+(n-l) x 8) + (w+(m-l) x 8))次8bit比較運算,及w次(n+m)輸入的"與,,運算,共有(n+m+16) x w + 64(n+m-2)次運算。將s = 8x (n+m)代入,可知總運算次數(shù)S為S = ! + 16w + ^-l28 。8與現(xiàn)有技術(shù)幀定位方法所需的總運算次數(shù)Sl = ws相比,可得到本發(fā)明實 施例楨定位方法與現(xiàn)有技術(shù)幀定位方法的運算量的比值為 S1 16 8 128=—+ 一一 +---《8 TV wy由上式可以看出,只要"7+:—本發(fā)明實施例幀定位方法的運算量就小于現(xiàn)有技術(shù) 幀定位方法的運算量,且w、 s的值越大,本發(fā)明實施例幀定位方法的運算量 減少的幅度越大。仍以上文中總線位寬w為64bit,幀定位字節(jié)長度s為48bit的情況為例, 此時11=3, m=3,進行幀定位的過程如下首先,將當(dāng)前時鐘周期內(nèi)輸入的64bit數(shù)據(jù)與下一時鐘周期輸入的64bit 數(shù)據(jù)拼接為128bit數(shù)據(jù),其中當(dāng)前周期數(shù)據(jù)位于1 64bit,下個周期的數(shù)據(jù)位 于65 ~ 128bit;其次,分別S奪1 ~ 8bit、 2 ~ 9bit........ 80 ~ 87bit組成的8bit數(shù)據(jù)與0A1字節(jié)進行比較,設(shè)比較得到的結(jié)果為Al、 A2........A80,同時將25 32bit、26 ~ 33bit.......、 104 ~ lllbit組成的8bit數(shù)據(jù)與0A2字節(jié)進行比較,設(shè)比較得到的結(jié)果為B25、 B26........B104。 Al A80均為1比特信號,Al為"1"時代表l 8bit不等于0Al字節(jié),為"0"時代表l 8bit等于OAl字節(jié),類 似的,A2……A80分別代表2 9bit……80 87bit與OA1字節(jié)的比較結(jié)果; B25 104均為1比特信號,B25為T時代表25 ~ 32bit不等于OA2字節(jié), 為"0"時代表25 ~ 32bit等于OA2字節(jié),類似的,B26……B104分別代表26 ~ 33bit……104 111bit與OA2字節(jié)的比較結(jié)果;然后,再將比較后得到的lbit結(jié)果每6個一組進行"或,,運算。每一組 中,3個為與0A1字節(jié)進行比較的結(jié)果,3個為與OA2字節(jié)進行比較的結(jié)果。 組合的方法為(Al DA9nA17nB25nB33 HB41 ) , ( A2 (1 A10 fl A18 fl B26 門B34門B42 )........ ( A64 n A72門A80 D B88門B96門B104 );最后,根據(jù)運算結(jié)果確認定位的數(shù)據(jù)幀頭。顯然,如果(AinA9flA17 nB25nB33f1B41)進行"或"運算的結(jié)果為0,貝'J 1 ~ 48bit =幀定位字節(jié), 意味著定位出數(shù)據(jù)幀頭,如果(Al nA9nA17nB25nB33DB41 )進行"或,, 運算的結(jié)果為l,則l-48bit-幀定位字節(jié)。同樣的,(A2nA10nA18DB26 D B34 n B42 )進行"或"運算的結(jié)果就是2 ~ 49bit與FAS比較的結(jié)果,(A64 門A72nA80nB88DB96nB104)進行"或,'運算的結(jié)果就是64~lllbit與 FAS比較的結(jié)果。如果進行"或"運算的結(jié)果為0,則表示比較數(shù)據(jù)與FAS 相同,也就意味著定位出數(shù)據(jù)幀頭。需要說明的是,上述是以光傳輸網(wǎng)絡(luò)OTN為例進行說明但并不局限于此, 也可以應(yīng)用于其他傳輸網(wǎng)絡(luò)例如SDH網(wǎng)絡(luò)等。還需要說明的是,上述實施例介紹的是幀定位字節(jié)包括兩種組成單元的 情況,如果幀定位字節(jié)只有一種組成單元,或者,幀定位字節(jié)包括多個組成 單元的情況,也同樣適用于上述介紹的將輸入數(shù)據(jù)按幀定位字節(jié)的組成單元 長度與幀定位字節(jié)的組成單元進行比較及定位的過程,其原理是相同的。以上介紹了本發(fā)明實施例的幀定位方法,相應(yīng)的,本發(fā)明實施例提供幀 定位裝置。請參閱圖5,是本發(fā)明實施例幀定位裝置結(jié)構(gòu)示意圖。 幀定位裝置包括比較模塊10、組合模塊20、運算模塊30和定位模塊40。比較模塊10將輸入數(shù)據(jù)按幀定位字節(jié)的組成單元長度與幀定位字節(jié)的不 同組成單元分別進行比較,并根據(jù)預(yù)置規(guī)則得到比較值;組合模塊20將所述 比較值依據(jù)幀定位字節(jié)的組成單元數(shù)目進行組合;運算模塊30將組合后的比 較值進行邏輯運算,并輸出邏輯運算結(jié)果;定位模塊40根據(jù)所述邏輯運算結(jié) 果并結(jié)合預(yù)置規(guī)則,確定所述輸入數(shù)據(jù)中是否包含與幀定位字節(jié)相同的數(shù)據(jù), 若是,找出該相同的數(shù)據(jù)并作為數(shù)據(jù)幀頭。幀定位裝置進一步包括設(shè)置模塊50,用于設(shè)置預(yù)置規(guī)則,設(shè)置模塊50設(shè) 置用數(shù)值1表示比較的數(shù)據(jù)與幀定位字節(jié)中的組成單元相同,用數(shù)值0表示 比較的數(shù)據(jù)與幀定位字節(jié)中的組成單元不相同。當(dāng)按此設(shè)置規(guī)則時,運算模 塊30進行的邏輯運算為邏輯與運算。設(shè)置模塊50還可以設(shè)置用數(shù)值0表示 比較的數(shù)據(jù)與幀定位字節(jié)中的組成單元相同,用數(shù)值1表示比較的數(shù)據(jù)與幀 定位字節(jié)中的組成單元不相同,當(dāng)按此設(shè)置規(guī)則時,運算模塊30進行的邏輯 運算為邏輯或運算。因為由設(shè)置模塊50設(shè)置預(yù)置規(guī)則,所以比較模塊10是 根據(jù)設(shè)置模塊50設(shè)置的預(yù)置規(guī)則得到比較值。比較模塊10包括第一比較模塊101和第二比較模塊102;第一比較模塊 101,將從所述輸入數(shù)據(jù)中選取出與幀定位字節(jié)的第一組成單元長度相等的t 段比較數(shù)據(jù),所述t段比較數(shù)據(jù)的首位分別是所述輸入數(shù)據(jù)中的第l位至第t 位,將所述t段數(shù)據(jù)分別與所述幀定位字節(jié)的第一組成單元進行比較,并根據(jù) 預(yù)置規(guī)則得到第一比較值,其中,t = w + (n-l)x8, w為總線位寬,n為幀定 位字節(jié)的第一組成單元的數(shù)目;第二比較模塊102,從所述輸入數(shù)據(jù)中選取出 與幀定位字節(jié)的第二組成單元長度相等的u-j+l段比較數(shù)據(jù),所述u-j+l段 比較數(shù)據(jù)的首位分別是所述輸入數(shù)據(jù)中的第j位至第u位,將所述u-j+l段數(shù) 據(jù)分別與所迷幀定位字節(jié)的第二組成單元進行比較,并根據(jù)預(yù)置規(guī)則得到第 二比較值,其中,j=nx8+l, u = w + nx8 +(m-l)x8, m為幀定位字節(jié)的 第二組成單元的數(shù)目。設(shè)總線位寬為w,幀定位字節(jié)長度為s,周期k為滿足式kxw > s的 最小正整數(shù),在當(dāng)前周期的輸入數(shù)據(jù)及此前k- 1個時鐘周期寄存的數(shù)據(jù)拼接 為一個長度為k x Wbit的數(shù)據(jù)后,比較模塊10進行的具體比較過程為第一比較模塊101分別將l-8bit、 2~9bit........ t ~ t + 7bit組成的8bit數(shù)據(jù)與幀定位字節(jié)的第一組成單元OAl字節(jié)進行比較,其中t = w + (n-l) x8,設(shè)比較得到的結(jié)果為A1、 A2........ At;同時,第二比較模塊102將j ~j+7bit、 j+l ~j+l+7bit、 ....... u~u + 7bit組成的8bit數(shù)據(jù)與幀定位字節(jié)的第二組成單元OA2字節(jié)進行比較,其中,其 中,j二nx8+l,u-w + nx8 + (m-l) x 8,設(shè)比專交得到的結(jié)果為Bj 、 Bj+1........ Bu。上述A1 -At, Bj-Bu均為1比特信號,預(yù)置規(guī)則設(shè)置用數(shù)值1表示比較 的數(shù)據(jù)與幀定位字節(jié)中的組成單元相同,用數(shù)值0表示比較的數(shù)據(jù)與幀定位 字節(jié)中的組成單元不相同時,則A1為'T,時代表1 8bit等于0A1字節(jié), 為"0"時代表1 ~8bit不等于0A1字節(jié),類似的,A2……At分別代表2 9bit……t t + 7bit與0A1字節(jié)的比較結(jié)果;Bj為"1"時代表j ~j+7bit等于 OA2字節(jié),為"0"時代表不等于OA2字節(jié),類似的,Bj+1……Bu分別代表 j+l ~j+l+7bit……u-u + 7bit與OA2字節(jié)的比較結(jié)果。組合模塊20對第一比 較模塊101和第二比較模塊102所比較出的值進行組合。組合模塊20進一步包括第一組合模塊201、第二組合模塊202和第三組 合模塊203。第一組合模塊201選取第一比較模塊101進行比較所得到的且與 幀定位字節(jié)的第一組成單元數(shù)目相同的第一比較值;第二組合模塊202選取 第二比較模塊102比較所得到的且與幀定位字節(jié)的第二組成單元數(shù)目相同的 第二比較值;且所述第一組合模塊201選取的第一比較值、第二組合模塊202 選取的第二比較值各自對應(yīng)的比較數(shù)據(jù)組合后的數(shù)據(jù),是所述輸入數(shù)據(jù)中一 段與幀定位字節(jié)等長的連續(xù)數(shù)據(jù);第三組合模塊203,將所述第一組合模塊 201選取的第一比較值和第二組合模塊202選取的第二比較值進行組合。具體 組合過程為第三組合模塊203將第一組合模塊201選取的n個與第一組成單元0A1 字節(jié)的比較結(jié)果和第二組合模塊202選取的m個與第二組成單元0A2字節(jié)比 較的結(jié)果進行組合,即Ai (1 A(i+8)……D A(i+( n陽l) x 8) n B(i+n x 8)……(1 B(i+n x 8+(m-l) x8),其中l(wèi)<i<w。運算模塊30對上述組合進行邏輯運算,如果按上式組合后進行"與,,運 算的結(jié)果為0,則第i i + s-lbit *幀定位字節(jié);如果按上式組合后進行"與" 運算的結(jié)果為l,則第i-i + s-lbit -幀定位字節(jié),也就是意味著定位出數(shù)據(jù) 幀頭。需要說明的是,若比較時預(yù)置規(guī)則設(shè)置用數(shù)值0表示比較的數(shù)據(jù)與幀定 位字節(jié)中的組成單元相同,用數(shù)值l表示比較的數(shù)據(jù)與幀定位字節(jié)中的組成 單元不相同,則運算模塊30對上述組合進行邏輯運算為邏輯或運算,如果按 上式組合后進行"或"運算的結(jié)果為1,則第i i + s-l bit #幀定位字節(jié); 如果按上式組合后進行"或,,運算的結(jié)果為0,則第i-i + s-l bit =幀定位 字節(jié),也就是意味著定位出數(shù)據(jù)幀頭。綜上所述,現(xiàn)有幀定位方法進行幀定位過程中將輸入數(shù)據(jù)按幀定位字節(jié) 長度與幀定位字節(jié)進行比較,需要進行的比較運算次數(shù)比較多,而本發(fā)明實 施例提供的幀定位方法及裝置,將輸入數(shù)據(jù)按幀定位字節(jié)的組成單元長度與 幀定位字節(jié)的不同組成單元分別進行比較,并根據(jù)預(yù)置規(guī)則得到比較值;將 所述比較值依據(jù)幀定位字節(jié)的組成單元數(shù)目組合后進行邏輯運算;根據(jù)邏輯 運算結(jié)果并結(jié)合所述預(yù)置規(guī)則,確定輸入數(shù)據(jù)中包含的數(shù)據(jù)是否與幀定位字 節(jié)相同,并在相同時確認定位出數(shù)據(jù)幀頭。通過本發(fā)明實施提供的技術(shù)方案, 可以減少現(xiàn)有技術(shù)中存在的重復(fù)比較運算,從而有效減少幀定位過程中的比 較運算次數(shù)并定位出數(shù)據(jù)幀頭,減少所耗費的硬件資源。以上對本發(fā)明實施例所提供的一種幀定位方法及裝置進行了詳細介紹,的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的 一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應(yīng)用范圍上均會有改 變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1. 一種幀定位方法,其特征在于,包括將輸入數(shù)據(jù)按幀定位字節(jié)的組成單元長度與幀定位字節(jié)的組成單元進行比較,并根據(jù)預(yù)置規(guī)則得到比較值;將所述比較值組合后進行邏輯運算;根據(jù)邏輯運算結(jié)果并結(jié)合所述預(yù)置規(guī)則,確定所述輸入數(shù)據(jù)中是否包含與幀定位字節(jié)相同的數(shù)據(jù),若是,找出該相同的數(shù)據(jù)并作為數(shù)據(jù)幀頭。
2、 根據(jù)權(quán)利要求1所述的幀定位方法,其特征在于所述按幀定位字節(jié)的組成單元長度與幀定位字節(jié)的組成單元進行比較具 體為,從所述輸入數(shù)據(jù)中選取出與幀定位字節(jié)的第一組成單元長度相等的t段 比較數(shù)據(jù),所述t段比較數(shù)據(jù)的首位分別是所述輸入數(shù)據(jù)中的第1位至第t位, 將所述t段數(shù)據(jù)分別與所述幀定位字節(jié)的第一組成單元進行比較,其中,t = w + (n-l)x8, w為總線位寬,n為幀定位字節(jié)的第一組成單元的數(shù)目;從所述輸入數(shù)據(jù)中選取出與幀定位字節(jié)的第二組成單元長度相等的u-j+l段比較數(shù)據(jù),所述u-j+l段比較數(shù)據(jù)的首位分別是所述輸入數(shù)據(jù)中的第j 位至第u位,將所述u-j+l段數(shù)據(jù)分別與所述幀定位字節(jié)的第二組成單元進 行比較,其中,j = n><8 + l, u = w + nx8 +(m-l)x8, m為幀定位字節(jié)的第 二組成單元的數(shù)目。
3、 根據(jù)權(quán)利要求2所述的幀定位方法,其特征在于 所述組合具體為,選取與幀定位字節(jié)的第 一組成單元進行比較得到的且與幀定位字節(jié)的第 一組成單元數(shù)目相同的第 一比較值;選取與幀定位字節(jié)的第二組成單元進行比較得到的且與幀定位字節(jié)的第 二組成單元數(shù)目相同的第二比較值;其中所迷選取的第 一比較值、第二比較值各自對應(yīng)的比較數(shù)據(jù)組合后的 數(shù)據(jù),是所述輸入數(shù)據(jù)中 一段與幀定位字節(jié)等長的連續(xù)數(shù)據(jù);將所迷選取的第 一 比較值和第二比較值進行組合。
4、 根據(jù)權(quán)利要求1至3任一項所述的幀定位方法,其特征在于所述預(yù)置規(guī)則為,用數(shù)值1表示比較的數(shù)據(jù)與幀定位字節(jié)中的組成單元 相同,用數(shù)值0表示比較的數(shù)據(jù)與幀定位字節(jié)中的組成單元不相同,以及,所述邏輯運算為邏輯與運算。
5、 根據(jù)權(quán)利要求1至3任一項所述的幀定位方法,其特征在于 所述預(yù)置規(guī)則為,用數(shù)值0表示比較的數(shù)據(jù)與幀定位字節(jié)中的組成單元相同,用數(shù)值1表示比較的數(shù)據(jù)與幀定位字節(jié)中的組成單元不相同, 以及,所述邏輯運算為邏輯或運算。
6、 一種幀定位裝置,其特征在于,包括 比較模塊、組合模塊、運算模塊和定位模塊;比較模塊,用于將輸入數(shù)據(jù)按幀定位字節(jié)的組成單元長度與幀定位字節(jié) 的組成單元進行比較,并根據(jù)預(yù)置規(guī)則得到比較值; 組合模塊,用于將所述比較值進行組合;運算模塊,用于將組合后的比較值進行邏輯運算,并輸出邏輯運算結(jié)果;定位模塊,用于根據(jù)所述邏輯運算結(jié)果并結(jié)合預(yù)置規(guī)則,確定所述輸入 數(shù)據(jù)中是否包含與幀定位字節(jié)相同的數(shù)據(jù),若是,找出該相同的數(shù)據(jù)并作為 數(shù)據(jù)幀頭。
7、 根據(jù)權(quán)利要求6所述的幀定位裝置,其特征在于 所述比較模塊包括第 一 比較模塊和第二比較模塊;第 一比較模塊,用于從所述輸入數(shù)據(jù)中選取出與幀定位字節(jié)的第 一組成 單元長度相等的t段比較數(shù)據(jù),所述t段比較數(shù)據(jù)的首位分別是所述輸入數(shù)據(jù) 中的第l位至第t位,將所述t段數(shù)據(jù)分別與所述幀定位字節(jié)的第一組成單元 進行比較,并根據(jù)預(yù)置規(guī)則得到第一比較值,其中,t = w + (n-l)x8, w為總 線位寬,n為幀定位字節(jié)的第一組成單元的數(shù)目;第二比較模塊,用于從所述輸入數(shù)據(jù)中選取出與幀定位字節(jié)的第二組成 單元長度相等的u-j+l段比較數(shù)據(jù),所述u-j+l段比較數(shù)據(jù)的首位分別是所 述輸入數(shù)據(jù)中的第j位至第u位,將所述u-j+l段數(shù)據(jù)分別與所述幀定位字節(jié)的第二組成單元進行比較,并根據(jù)預(yù)置規(guī)則得到第二比較值,其中,j=nx8+ 1, u = w + nx8 +(m-l)x8, m為幀定位字節(jié)的第二組成單元的數(shù)目。
8、 根據(jù)權(quán)利要求7所述的幀定位裝置,其特征在于 組合模塊進一步包括第 一組合模塊、第二組合模塊和第三組合模塊,第 一組合模塊,用于選取與幀定位字節(jié)的第 一組成單元數(shù)目相同的第一 比較值;第二組合模塊,用于選取與幀定位字節(jié)的第二組成單元數(shù)目相同的第二 比較值;其中,所述第一組合模塊選取的第一比較值、第二組合模塊選取的第二 比較值各自對應(yīng)的比較數(shù)據(jù)組合后的數(shù)據(jù),是所述輸入數(shù)據(jù)中 一段與幀定位 字節(jié)等長的連續(xù)數(shù)據(jù);第三組合模塊,將所述第一組合模塊選取的第一比較值和第二組合模塊 選取的第二比較值進行組合。
9、 根據(jù)權(quán)利要求6至8任一項所述的幀定位裝置,其特征在于進一步包括設(shè)置模塊,用于設(shè)置預(yù)置規(guī)則,設(shè)置模塊設(shè)置用數(shù)值1表示 比較的數(shù)據(jù)與幀定位字節(jié)中的組成單元相同,用數(shù)值0表示比較的數(shù)據(jù)與幀 定位字節(jié)中的組成單元不相同,以及,此時運算模塊進行的邏輯運算為邏輯與運算。
10、 根據(jù)權(quán)利要求6至8任一項所述的幀定位裝置,其特征在于 進一步包括設(shè)置模塊,用于設(shè)置預(yù)置規(guī)則,設(shè)置模塊設(shè)置用數(shù)值0表示比較的數(shù)據(jù)與幀定位字節(jié)中的組成單元相同,用數(shù)值1表示比較的數(shù)據(jù)與幀 定位字節(jié)中的組成單元不相同,以及,此時運算模塊進行的邏輯運算為邏輯或運算。
全文摘要
本發(fā)明實施例公開一種幀定位方法,包括將輸入數(shù)據(jù)按幀定位字節(jié)的組成單元長度與幀定位字節(jié)的組成單元進行比較,并根據(jù)預(yù)置規(guī)則得到比較值;將所述比較值組合后進行邏輯運算;根據(jù)邏輯運算結(jié)果并結(jié)合所述預(yù)置規(guī)則,確定所述輸入數(shù)據(jù)中是否包含與幀定位字節(jié)相同的數(shù)據(jù),若是,找出該相同的數(shù)據(jù)并作為數(shù)據(jù)幀頭。相應(yīng)的,本發(fā)明實施例提供一種幀定位裝置。本發(fā)明實施例提供的技術(shù)方案可以有效地減少幀定位過程中的運算次數(shù)并定位出數(shù)據(jù)幀頭。
文檔編號H04J3/16GK101232344SQ20071000270
公開日2008年7月30日 申請日期2007年1月23日 優(yōu)先權(quán)日2007年1月23日
發(fā)明者劉天鑄, 周冬寶, 陳會勇, 雨 雷, 雷張偉 申請人:華為技術(shù)有限公司