035]在步驟104中,將第一校驗值與預(yù)先設(shè)定的校驗閾值相比較,若通過比較,則輸出與該第一截取數(shù)據(jù)相對應(yīng)的序號。該序號可定義為標(biāo)第一截取數(shù)據(jù)的產(chǎn)生時間窗口的序號。輸出的序號可用于表示在輸入的數(shù)據(jù)流中對應(yīng)于該序號部分的數(shù)據(jù)處于同步狀態(tài)。
[0036]與圖1所示流程圖相對應(yīng),圖3為本發(fā)明實施例數(shù)據(jù)同步裝置示意圖。
[0037]參考圖2,在本實施例數(shù)據(jù)同步裝置中,包括數(shù)據(jù)截取模塊、同步碼校驗?zāi)K和序號輸出模塊。
[0038]在數(shù)據(jù)截取模塊中,該模塊接收輸入的多路并行數(shù)據(jù),并將每一路并行數(shù)據(jù)截取為多個第一截取數(shù)據(jù),在對并行數(shù)據(jù)進(jìn)行截取時,數(shù)據(jù)截取模塊采用與步驟102相同的截取規(guī)則,以保證每個第一截取數(shù)據(jù)的一致性。
[0039]同步碼校驗?zāi)K接收數(shù)據(jù)截取模塊產(chǎn)生的每一個第一截取數(shù)據(jù),并利用同步碼對每一個第一截取數(shù)據(jù)進(jìn)行校驗,為保證數(shù)據(jù)校驗時的數(shù)據(jù)一致性,同樣需要根據(jù)最小校驗單元對同步碼和第一截取數(shù)據(jù)進(jìn)行劃分,按最小校驗單元的長度對同步碼和第一截取數(shù)據(jù)劃分后,再對劃分后的最小同步碼和最小截取數(shù)據(jù)進(jìn)行異或運算,并將獲得異或運算結(jié)果相加,作為對應(yīng)于該段第一截取數(shù)據(jù)的第一校驗值。
[0040]序號輸出模塊接收同步碼校驗?zāi)K產(chǎn)生的第一校驗值,并將輸入的第一校驗值與預(yù)設(shè)的校驗閾值相比較,若某個校驗值小于校驗閾值,則將該校驗結(jié)果對應(yīng)的第一截取數(shù)據(jù)的序號輸出。否則繼續(xù)判斷下一個輸入的第一校驗值。
[0041]下面結(jié)合一個具體的實施例對本發(fā)明做進(jìn)一步介紹。該實施例以工程階段的FPGA實現(xiàn)為例。
[0042]為實現(xiàn)對輸入據(jù)流向并行數(shù)據(jù)的轉(zhuǎn)化,在該實施例中,設(shè)定輸入數(shù)據(jù)為Μ位并行,即Data[M-l:0]。則設(shè)置用于接收的可配置寄存器位寬為Mbit,可配置寄存器數(shù)量為 1/2*M,即 regl[M-l:0], reg2 [M-1:0],...regl/2*M[M_l:0],即將輸入數(shù)據(jù)通過寄存器變換為1/2*M路并行數(shù)據(jù)。在一個時鐘周期來臨時,將Data[M-l:0]中的數(shù)據(jù)傳輸給regl[M-l:0],在下一個時鐘周期中,再將寄存器1中的數(shù)據(jù)傳輸給寄存器2,寄存器2中的數(shù)據(jù)傳遞給寄存器3,并依此類推,即Data[M-l:0] = >regl [M_l:0], regl [M_l:0]=
>reg2 [M-1:0], reg2 [M-1:0] = >...reg3 [M_l: 0],.........,從而使得在每經(jīng)過 1/2*M 個周期后,都會是各寄存器中充滿數(shù)據(jù)。進(jìn)而在完成1/2*M個時鐘后,將1/2*M個寄存器中的數(shù)據(jù)同時輸出,則轉(zhuǎn)化為1/2*M路并行數(shù)據(jù)。本領(lǐng)域技術(shù)人員可以知道,在本發(fā)明實施例中,Μ僅用于進(jìn)行示例性說明,寄存器的位寬和并行數(shù)據(jù)的路數(shù)可按照具體實現(xiàn)的不同進(jìn)行配置。
[0043]對產(chǎn)生的每一路并行數(shù)據(jù),進(jìn)行截取時,按照上述步驟102中的截取規(guī)則,即按照數(shù)據(jù)到達(dá)時間的先后,設(shè)第一截取數(shù)據(jù)的長度為L比特,并以步進(jìn)值為1比特截取數(shù)據(jù),將卡取第一個長度為L比特的數(shù)據(jù)塊作為第一截取數(shù)據(jù)存入寄存器1中,并記為CH[1],依此類推,共形成1/2*M*M-L個數(shù)據(jù)塊,依次是CH[1],CH[2]…CH[1/2*M*M-L]。各第一截取數(shù)據(jù)作為數(shù)據(jù)塊存儲去CH[1],CH[2]…CH[1/2*M*M-L]中作為待校驗的數(shù)據(jù)以進(jìn)行校驗。
[0044]在對第一截取數(shù)據(jù)進(jìn)行校驗時,以4bit為最小計算單元對各第一截取數(shù)據(jù)和同步碼進(jìn)行拆分。具體拆分方法,設(shè)置計數(shù)器lcntl[l:0]和計數(shù)器2cnt2[7:0]。cntl作為標(biāo)尺,cnt2記錄拆分的最小計算單元個數(shù)。第一截取數(shù)據(jù)CH[1]長度為L比特,以cntl為標(biāo)尺對CH[1]進(jìn)行拆分,cntl每計4個數(shù),歸零一次,每歸零一次,對CH[1]截取4比特數(shù)據(jù),并且cnt2計數(shù)加一。經(jīng)過運算,待匹配數(shù)據(jù)塊CH[1]拆分為P個最小計算單元Corre 1 ator_4_a 1, Corre 1 ator_4_a2...Corre 1 ator_4_aP0 并且同步碼也將拆分為 P 個最小計算單兀 Corre 1 ator_4_b 1, Correlator_4_b2...Correlator_4_bP。
[0045]在每個最小計算單兀中,對Correlator_4_al和Correlator_4_bl進(jìn)行4比特異或運算,得到每個最小計算單元的差異值diff_numl,對Correlator_4_a2和Correlator_4_b2進(jìn)行4比特異或運算,得到每個最小計算單元的差異值diff_num2…最終得到P個差異值。進(jìn)一步利用P路并行加法器實現(xiàn)每個最小單元差異值的合并,得到數(shù)據(jù)塊CH[1]和同步碼的第一校驗值Resultl。以此類推,依次實現(xiàn)對1/2*M*M_L個第一截取數(shù)據(jù)的運算,得到1/2*M*M_L個第一校驗值的結(jié)果,記為Resultl?Result 1/2*M*M_L。
[0046]對獲得的各個第一校驗值與校驗閾值即允許的幀同步字誤比特數(shù)(Num)進(jìn)行比較,如果出現(xiàn)小于Num的數(shù)據(jù)窗口,則將序號(CH)傳輸給同步數(shù)據(jù)輸出單元,否則繼續(xù)尋找。
[0047]在完成對序號的輸出后,作為對數(shù)據(jù)同步的進(jìn)一步操作,則判斷是否需要校驗,并按照判斷完成校驗操作,若進(jìn)入鎖定狀態(tài),則在每到一個數(shù)據(jù)幀起始的位置就產(chǎn)生一個幀同步信號(Frame_Syc)。
[0048]本發(fā)明說明書中未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域的公知技術(shù)。
【主權(quán)項】
1.一種數(shù)據(jù)同步方法,用于多路并行數(shù)據(jù)進(jìn)行同步,其特征在于,對其中一路并行數(shù)據(jù)的同步,包括以下步驟: 按設(shè)定的截取長度對一路所述并行數(shù)據(jù)中進(jìn)行截取,獲得多個第一截取數(shù)據(jù); 利用同步碼對每個所述第一截取數(shù)據(jù)進(jìn)行校驗,獲取對應(yīng)于每個所述第一截取數(shù)據(jù)的第一校驗值; 若所述第一校驗值滿足校驗閾值,則輸出對應(yīng)與所述第一校驗值的第一截取數(shù)據(jù)的序號,所述序號用于對數(shù)據(jù)進(jìn)行同步。2.如權(quán)利要求1所述數(shù)據(jù)同步方法,其特征在于:所述多路并行數(shù)據(jù)通過下述步驟獲得: 根據(jù)設(shè)定的數(shù)據(jù)長度對輸入的數(shù)據(jù)流進(jìn)行截取,每次截取獲得一個數(shù)據(jù)段; 將獲得的多個所述數(shù)據(jù)段并行輸出,多個所述并行數(shù)據(jù)段的數(shù)量由設(shè)定的并行路數(shù)確定。3.如權(quán)利要求1所述數(shù)據(jù)同步方法,其特征在于:利用同步碼對每個所述第一截取數(shù)據(jù)進(jìn)行校驗的步驟,包括: 按最小校驗單元的長度對所述第一截取數(shù)據(jù)進(jìn)行拆分獲得最小截取數(shù)據(jù),對所述同步碼進(jìn)行拆分獲得最小同步碼; 利用每個所述最小同步碼對每個所述最小截取數(shù)據(jù)異或運算,并將所述異或運算結(jié)果相加獲得針對每個所述第一截取數(shù)據(jù)的校驗值。4.一種數(shù)據(jù)同步裝置,其特征在于,包括: 數(shù)據(jù)截取模塊,用于按設(shè)定的截取長度對并行數(shù)據(jù)中的一路進(jìn)行截取,獲得多個第一截取數(shù)據(jù); 同步碼校驗?zāi)K,用于利用同步碼對所述多個第一截取數(shù)據(jù)的每一個進(jìn)行校驗,獲得對應(yīng)于所述多個第一截取數(shù)據(jù)中每一個的第一校驗值; 序號輸出模塊,若所述第一截取數(shù)據(jù)第一校驗值滿足校驗閾值,則輸出所述第一截取數(shù)據(jù)的序號,所述序號用于數(shù)據(jù)同步。5.如權(quán)利要求4所述數(shù)據(jù)同步裝置,其特征在于,還包括:所述同步碼校驗?zāi)K,按照最小校驗單元的長度將所述第一截取數(shù)據(jù)拆分為最小截取數(shù)據(jù),將所述同步碼拆分為最小同步碼。6.如權(quán)利要求4或5所述數(shù)據(jù)同步裝置,其特征在于,所述同步碼校驗?zāi)K利用每個所述最小同步碼與每個所述最小截取數(shù)據(jù)進(jìn)行異或運算,并將所述異或運算結(jié)果相加獲得針對每個所述第一截取數(shù)據(jù)的校驗值。
【專利摘要】本發(fā)明公開了一種數(shù)據(jù)同步方法,用于多路并行數(shù)據(jù)進(jìn)行同步,包括以下步驟:按設(shè)定的截取長度對一路所述并行數(shù)據(jù)中進(jìn)行截取,獲得多個第一截取數(shù)據(jù);利用同步碼對每個所述第一截取數(shù)據(jù)進(jìn)行校驗,獲取對應(yīng)于每個所述第一截取數(shù)據(jù)的第一校驗值;若所述第一校驗值滿足校驗閾值,則輸出對應(yīng)與所述第一校驗值的第一截取數(shù)據(jù)的序號,所述序號用于對數(shù)據(jù)進(jìn)行同步。同時本發(fā)明還公開了一種數(shù)據(jù)同步裝置。采用本發(fā)明可以對并行的數(shù)據(jù)進(jìn)行同步,從而提高了數(shù)據(jù)同步時的效率。
【IPC分類】G06F13/42
【公開號】CN105279128
【申請?zhí)枴緾N201410281466
【發(fā)明人】李博, 劉焱, 陳慶鋒, 李璇, 趙興圓
【申請人】航天恒星科技有限公司
【公開日】2016年1月27日
【申請日】2014年6月22日