亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種接收包排序及無效包處理方法

文檔序號:7822638閱讀:350來源:國知局
一種接收包排序及無效包處理方法
【專利摘要】本發(fā)明涉及一種網(wǎng)絡(luò)通信領(lǐng)域,特別涉及一種接收包排序及無效包處理方法,包括采用于根據(jù)網(wǎng)絡(luò)數(shù)據(jù)的序列號直接存入相應(yīng)位置的存入方法和根據(jù)讀指針一次讀取緩存數(shù)據(jù)的讀出方法,同時針對每一數(shù)據(jù)包的存入讀出設(shè)置寫讀標(biāo)志位的方式,統(tǒng)計系統(tǒng)接收到的有效包、重復(fù)包、丟包、無效包數(shù)量,實時評估系統(tǒng)性能。
【專利說明】一種接收包排序及無效包處理方法

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種網(wǎng)絡(luò)通信領(lǐng)域,特別涉及一種接收包排序及無效包處理方法。

【背景技術(shù)】
[0002] 如圖1所示,CES (Circuit Emulation Service)電路仿真提供一種從電路交換 網(wǎng)到分組交換網(wǎng)的平穩(wěn)過渡方案,發(fā)送端PE設(shè)備將TDM數(shù)據(jù)通過實時封裝,經(jīng)分組網(wǎng)絡(luò)傳 輸達接收端,在接收端PE設(shè)備接收端數(shù)據(jù)緩存隊列恢復(fù)出同步時鐘,同步時鐘解封裝數(shù)據(jù) 幀,重組為TDM數(shù)據(jù)流;但因為TDM網(wǎng)是一種同步網(wǎng),分組網(wǎng)為典型的異步網(wǎng),TDM數(shù)據(jù)在通 過分組網(wǎng)傳送到接收端時會造成自身的時鐘信息丟失,因此在接收端恢復(fù)TDM數(shù)據(jù)時的時 鐘恢復(fù)技術(shù)至關(guān)重要,數(shù)據(jù)時鐘信息的恢復(fù)直接影響數(shù)據(jù)傳輸?shù)馁|(zhì)量,目前的時鐘恢復(fù)技 術(shù)存在著恢復(fù)所需時間長、恢復(fù)精度差等問題。


【發(fā)明內(nèi)容】

[0003] 本發(fā)明的目的在于克服現(xiàn)有技術(shù)中所存在的上述不足,提供一種恢復(fù)精度高、恢 復(fù)所需時間短的基于TDM的網(wǎng)絡(luò)時鐘恢復(fù)系統(tǒng);包括數(shù)據(jù)時鐘分徑模塊、接收包排序及無 效包處理系統(tǒng)、時鐘恢復(fù)模塊、并串處理模塊;所述數(shù)據(jù)時鐘分徑模塊分別與所述接收包排 序及無效包處理系統(tǒng)、時鐘恢復(fù)模塊連接;所述接收包排序及無效包處理系統(tǒng)、所述時鐘恢 復(fù)模塊均與所述并串處理模塊連接。
[0004] 所述數(shù)據(jù)時鐘分徑模塊用于將從分組網(wǎng)絡(luò)接收到的網(wǎng)絡(luò)數(shù)據(jù)中的控制字部分送 入時鐘恢復(fù)模塊。
[0005] 所述接收包排序及無效包處理系統(tǒng)用于對所述網(wǎng)絡(luò)數(shù)據(jù)進行排序、丟包處理。
[0006] 所述時鐘恢復(fù)模塊用于接收所述網(wǎng)絡(luò)數(shù)據(jù)的控制字部分,并計算、調(diào)整所述網(wǎng)絡(luò) 數(shù)據(jù)的恢復(fù)時鐘。
[0007] 所述并串處理模塊用于將所述經(jīng)過排序、丟包處理的網(wǎng)絡(luò)數(shù)據(jù)和計算調(diào)整出的恢 復(fù)時鐘頻率進行并串處理。
[0008] 進一步的,所述時鐘恢復(fù)模塊包括控制模塊、計數(shù)器模塊、偏差計算模塊和時鐘調(diào) 整模塊;所述控制模塊分別與所述計數(shù)器模塊和偏差計算模塊連接;所述偏差計算模塊與 所述時鐘調(diào)整模塊連接;所述時鐘調(diào)整模塊的輸出端與所述計數(shù)器模塊連接。
[0009] 所述控制模塊用于控制各個模塊的運行;所述計數(shù)器模塊用于根據(jù)所述時鐘調(diào)整 模塊輸出的當(dāng)前恢復(fù)時鐘頻率對接收到的數(shù)據(jù)進行計數(shù);所述偏差計算模塊用于計算當(dāng)前 恢復(fù)時鐘頻率的時鐘偏差;所述時鐘調(diào)整模塊用于根據(jù)所述偏差計算模塊的計算結(jié)果調(diào)整 數(shù)據(jù)的恢復(fù)時鐘,并將當(dāng)前恢復(fù)時鐘輸出。
[0010] 進一步的,所述偏差計算模塊包括時鐘計數(shù)值累加模塊,時鐘采樣次數(shù)累加模塊、 平均時鐘計數(shù)計算模塊和平均時鐘計數(shù)對比模塊。
[0011] 所述時鐘計數(shù)值累加模塊用于累加單一計算周期內(nèi)的時鐘計數(shù)累加值。
[0012] 所述時鐘采樣次數(shù)模塊用于記錄單一計算周期內(nèi)實際采樣次數(shù)。
[0013] 平均時鐘計數(shù)計算模塊用于計算并存儲單一計算周期內(nèi)的平均時鐘計數(shù),計算周 期內(nèi)的平均時鐘計數(shù)=計算周期內(nèi)的時鐘計數(shù)累加值/計算周期內(nèi)實際采樣次數(shù)。
[0014] 所述平均時鐘計數(shù)對比模塊用于對比當(dāng)前時鐘周期內(nèi)平均時鐘計數(shù)與上一時鐘 周期內(nèi)的平均時鐘計數(shù)的大小。
[0015] 進一步的,所述時鐘調(diào)整模塊中包括基準(zhǔn)脈沖產(chǎn)生模塊、恢復(fù)時鐘產(chǎn)生模塊和脈 沖增減模塊。
[0016] 所述基準(zhǔn)脈沖產(chǎn)生模塊用于產(chǎn)生基準(zhǔn)脈沖。
[0017] 所述恢復(fù)時鐘產(chǎn)生模塊用于根據(jù)所述基準(zhǔn)脈沖產(chǎn)生當(dāng)前恢復(fù)時鐘。
[0018] 所述脈沖增減模塊用于根據(jù)所述偏差計算模塊的計算結(jié)果對當(dāng)前恢復(fù)時鐘包含 的基準(zhǔn)脈沖進行增減操作。
[0019] 優(yōu)選的,所述基準(zhǔn)脈沖頻率為327. 68MHz。
[0020] 優(yōu)選的,所述計數(shù)器模塊中采用遞減的方式實現(xiàn)接收數(shù)據(jù)的計數(shù)。
[0021] 進一步的,所述接收包排序及無效包處理系統(tǒng)包括寫入控制模塊、讀出控制模塊、 抖動緩存模塊,所述寫入控制模塊的輸入端與數(shù)據(jù)接收端口連接,所述寫入控制模塊的輸 出端與所述抖動緩存模塊連接,所述抖動緩存模塊還與所述讀出控制模塊連接;所述寫入 控制模塊用于控制網(wǎng)絡(luò)數(shù)據(jù)的寫入;所述抖動緩存模塊用于存儲所述網(wǎng)絡(luò)數(shù)據(jù);所述讀出 控制模塊用于控制所述抖動緩存模塊中網(wǎng)絡(luò)數(shù)據(jù)的讀出。
[0022] 進一步的,所述抖動緩存模塊包括標(biāo)志存儲模塊和數(shù)據(jù)存儲模塊,所述標(biāo)志存儲 模塊包括寫讀標(biāo)志存儲模塊和序列號存儲模塊;所述數(shù)據(jù)存儲模塊用于存儲所述網(wǎng)絡(luò)數(shù)據(jù) 的凈荷部分;所述讀寫標(biāo)志存儲模塊用于存儲與凈荷部分一一對應(yīng)的寫讀標(biāo)志;所述序列 號存儲模塊用于存儲網(wǎng)絡(luò)數(shù)據(jù)的序列號部分。
[0023] 進一步的,所述寫入控制模塊還連接有寫基準(zhǔn)時鐘產(chǎn)生模塊,所述讀出控制模塊 還連接有讀恢復(fù)時鐘產(chǎn)生模塊,所述寫基準(zhǔn)時鐘產(chǎn)生模塊用于產(chǎn)生控制所述寫入控制模塊 的基準(zhǔn)時鐘;所述讀恢復(fù)時鐘產(chǎn)生模塊用于產(chǎn)生控制所述讀出控制模塊的恢復(fù)時鐘。
[0024] 優(yōu)選的,所述寫入數(shù)據(jù)步驟在81. 92MHz基準(zhǔn)時鐘下工作,所述讀出數(shù)據(jù)步驟在 81. 92MHz恢復(fù)時鐘下工作。
[0025] 進一步的,所述接收包排序及無效包處理系統(tǒng)還包括數(shù)據(jù)包計數(shù)模塊,所述數(shù)據(jù) 包計數(shù)模塊同時與所述寫入控制模塊和所述讀出控制模塊連接,其用于記錄系統(tǒng)接收到的 正常包、重復(fù)包、延時包、丟包數(shù)量。
[0026] 本發(fā)明同時提供一種恢復(fù)精度高、恢復(fù)所需時間短的基于TDM的網(wǎng)絡(luò)時鐘恢復(fù)方 法,包含以下步驟: 包含將待傳送網(wǎng)絡(luò)數(shù)據(jù)按照指定幀數(shù)進行封裝的步驟。
[0027] 包含將接收到的網(wǎng)絡(luò)數(shù)據(jù)中控制字部分分出,并計算、調(diào)整恢復(fù)時鐘的步驟。
[0028] 包含將接收到的網(wǎng)絡(luò)數(shù)據(jù)進行排序、丟包處理的步驟。
[0029] 包含將所述經(jīng)過排序、丟包處理的網(wǎng)絡(luò)數(shù)據(jù)和計算調(diào)整出的恢復(fù)時鐘頻率進行并 串處理的步驟。
[0030] 進一步的,所述從控制字部分提取時序序列號依照當(dāng)前恢復(fù)時鐘進行計數(shù)的步驟 中: 包含在單個計算周期內(nèi),按照指定采樣周期tsam針對控制字部分進行采樣,并根據(jù)采樣 結(jié)果進行時鐘計數(shù)的步驟;所述單個計算周期內(nèi)包含有1個以上的采樣周期tsam。
[0031] 包含計算單個計算周期內(nèi)平均時鐘計數(shù)的步驟,所述計算周期內(nèi)平均時鐘計數(shù) Sn=計算周期內(nèi)時鐘計數(shù)累加值/計算周期內(nèi)采樣次數(shù)。
[0032] 包含將當(dāng)前計算周期內(nèi)平均時鐘計數(shù)5"與上個計算周期內(nèi)平均時鐘計數(shù)Slri進行 比較的步驟。
[0033] 包含將下個計算周期平均分為N個調(diào)整段的步驟,N為1以上的自然數(shù)。
[0034] 包含根據(jù)比較結(jié)果對下個計算周期內(nèi)當(dāng)前恢復(fù)時鐘每個調(diào)整段包含的基準(zhǔn)脈沖 數(shù)進行增減調(diào)整的步驟,每次增加或者減少的脈沖數(shù)量均為額定脈沖數(shù)量IMPnum; IMPnmi為 根據(jù)需要預(yù)設(shè)的1以上的自然數(shù)。
[0035] 進一步的,根據(jù)比較結(jié)果對下個計算周期內(nèi)當(dāng)前恢復(fù)時鐘每個調(diào)整段包含的基準(zhǔn) 脈沖數(shù)進行增減調(diào)整的步驟中,如S n> Slri,則所述下個計算周期內(nèi)當(dāng)前恢復(fù)時鐘每個調(diào)整 段的基準(zhǔn)脈沖數(shù)減少IMPnum個,否則所述下個計算周期內(nèi)當(dāng)前恢復(fù)時鐘每個調(diào)整段的基準(zhǔn) 脈沖數(shù)增加 IMPnum個。
[0036] 進一步的,在對當(dāng)前恢復(fù)時鐘包含的基準(zhǔn)脈沖進行增減調(diào)整的步驟中,每次增加 的頂Pnum個脈沖為離散的插入到原脈沖序列中;或,每次減少的IMP num個脈沖為離散的從原 脈沖序列中去除。
[0037] 進一步的,所述網(wǎng)絡(luò)時鐘恢復(fù)方法按照時間先后和時鐘收斂速度分為快速收斂階 段、慢速收斂階段和鎖定收斂階段三個階段。
[0038] 所述快速收斂階段、慢速收斂階段、鎖定收斂階段均包含有一個以上的計算周期。
[0039] 其中,所述快速收斂階段的計算周期小于所述慢速收斂階段的計算周期,所述慢 速收斂階段的計算周期小于所述鎖定收斂階段的計算周期。
[0040] 所述離散補償調(diào)整方法還包含根據(jù)預(yù)設(shè)條件判斷是否進入下一階段的步驟。
[0041] 進一步的,所述預(yù)設(shè)條件為本階段中增加時鐘脈沖次數(shù)的計算周期數(shù)>1,同時, 減少時鐘脈沖次數(shù)的計算周期數(shù)>1 ;如滿足所述預(yù)設(shè)條件,則進入下一階段。
[0042] 進一步的,所述額定脈沖數(shù)量IMPnmi隨著所述計算周期的延長而不斷減??;其中, 所述鎖定收斂階段的計算周期中,所述額定脈沖數(shù)量IMP num為1。
[0043] 進一步的,任意收斂階段中,3"與Slri進行比較時,如果|Sn- Slri I >收斂失敗標(biāo) 識值Fail,則本次時鐘恢復(fù)終止,返回快速收斂階段初始狀態(tài),重新開始進行時鐘恢復(fù)計 算;所述收斂失敗標(biāo)識值Fail為根據(jù)需要設(shè)定的大于1的自然數(shù)。
[0044] 進一步的,在快速收斂階段中,3"與511_1進行比較時,如果|S n- Slri I >本階段最 大額定脈沖數(shù)量IMPnum*m,則本次時鐘恢復(fù)終止,返回快速收斂階段初始狀態(tài),重新開始 進行時鐘恢復(fù)計算。
[0045] 在慢速收斂階段或鎖定收斂階段中,Sn與Slri進行比較時,如果|S n- Slri I >本階 段最大額定脈沖數(shù)量MPnUffl*m,則本階段時鐘恢復(fù)終止,返回上一階段初始狀態(tài),重新開 始進行時鐘恢復(fù)計算。
[0046] 其中,m為根據(jù)需要設(shè)定的大于2的自然數(shù)。
[0047] 進一步的,所述將接收到的網(wǎng)絡(luò)數(shù)據(jù)進行排序、丟包處理的步驟即接收包排序及 無效包處理方法,其包括如下步驟: (1)系統(tǒng)上電,抖動緩存模塊清零。
[0048] (2)根據(jù)接收到的第一個數(shù)據(jù)包的序列號SEQ值初始化序列號存儲模塊以及讀指 針;即,將該序列號SEQ寫入序列號存儲模塊的第一位置,并根據(jù)所述序列號存儲模塊的容 量,以該序列號SEQ為起始值將所述序列號存儲模塊從起始位置向后填滿;將第一數(shù)據(jù)包 凈荷數(shù)據(jù)寫入數(shù)據(jù)存儲模塊對應(yīng)位置,對應(yīng)寫讀標(biāo)志設(shè)為已寫標(biāo)志。
[0049] (3)接收新數(shù)據(jù),遍歷所述序列號存儲模塊,查找是否含有新接收數(shù)據(jù)序列號SEQ, 如有,進入步驟(5),否則,進入步驟(4)。
[0050] (4)該數(shù)據(jù)包為無效包,無效包計數(shù)加1,該無效包丟棄,返回步驟3。
[0051] (5)判斷與該序列號SEQ對應(yīng)的寫讀標(biāo)志是否為已寫標(biāo)志,如是,進入步驟(6);如 否,進入步驟(7)。
[0052] (6)該數(shù)據(jù)包為重復(fù)包,重復(fù)包計數(shù)加1 ;返回步驟(3)。
[0053] (7)在數(shù)據(jù)存儲模塊中該序列號對應(yīng)位置寫入凈荷數(shù)據(jù),將與該序列號對應(yīng)的寫 讀標(biāo)志設(shè)為已寫標(biāo)志;返回步驟(3)。
[0054] 進一步的,所述將接收到的網(wǎng)絡(luò)數(shù)據(jù)進行排序、丟包處理的步驟即接收包排序及 無效包處理方法,其包括如下步驟: (1)從所述讀指針指向的序列號SEQ開始順序讀取數(shù)。
[0055] (2)判斷讀指針指向的序列號SEQ對應(yīng)的寫讀標(biāo)志是否為已寫標(biāo)志,如是,進入步 驟(3);如否進入步驟(4)。
[0056] (3)從數(shù)據(jù)存儲模塊對應(yīng)位置讀出凈荷數(shù)據(jù);將對應(yīng)寫讀標(biāo)志清零;數(shù)據(jù)存儲模 塊對應(yīng)位置清零;正常包計數(shù)加1,進入步驟(7)。
[0057] (4)判斷寫讀標(biāo)志存儲模塊是否為延時標(biāo)志,如是進入步驟(5);如不是進入步驟 (6)。
[0058] (5)將該序列號SEQ對應(yīng)的數(shù)據(jù)以補空包方式讀出;丟包計數(shù)加1,進入步驟(7)。
[0059] (6)將對應(yīng)讀寫標(biāo)志設(shè)置延時標(biāo)志;將該序列號SEQ對應(yīng)的數(shù)據(jù)以補空包方式讀 出;延時包計數(shù)加1,進入步驟(7)。
[0060] (7)將序列存儲模塊中該SEQ值加所述序列號存儲模塊容量值后重新覆蓋該位 置,讀寫指針加1并返回步驟(2)。
[0061] 進一步的,所述接收包排序及無效包處理方法中,所述已寫標(biāo)志為0X1234,所述 延時標(biāo)志為0X5678。
[0062] 進一步的,所述將接收到的網(wǎng)絡(luò)數(shù)據(jù)進行排序、丟包處理的步驟即所述接收包排 序及無效包處理方法中,所述寫入數(shù)據(jù)步驟在81. 92MHz基準(zhǔn)時鐘下工作,所述讀出數(shù)據(jù)步 驟在81. 92MHz恢復(fù)時鐘下工作。
[0063] 進一步的,所述將接收到的網(wǎng)絡(luò)數(shù)據(jù)進行排序、丟包處理的步驟即所述接收包排 序及無效包處理方法中,以補空包方式讀出是指將數(shù)據(jù)設(shè)置為〇讀出,即將該數(shù)據(jù)包對應(yīng) 數(shù)據(jù)位設(shè)置為0x00,并將該數(shù)據(jù)按照數(shù)據(jù)位大小補充到讀出序列中,以避免讀出數(shù)據(jù)出現(xiàn) 時延。
[0064] 與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果:本發(fā)明提供的一種接收包排序及無效包處 理方法采用按照序列號直接存入相應(yīng)位置的方法,排序效率更高,同時具有丟包、無效包處 理、計數(shù)功能。
[0065]

【專利附圖】

【附圖說明】: 圖1為【背景技術(shù)】中TDM數(shù)據(jù)分組傳送示意圖。
[0066] 圖2為本發(fā)明網(wǎng)絡(luò)時鐘恢復(fù)系統(tǒng)結(jié)構(gòu)示意圖。
[0067] 圖3為本發(fā)明時鐘恢復(fù)模塊結(jié)構(gòu)示意圖。
[0068] 圖4為本發(fā)明接收包排序及無效包處理系統(tǒng)結(jié)構(gòu)示意圖。
[0069] 圖5為本發(fā)明網(wǎng)絡(luò)數(shù)據(jù)時鐘恢復(fù)方法的流程圖。
[0070] 圖6為本發(fā)明計算、調(diào)整時鐘頻率流程圖。
[0071] 圖7為本發(fā)明網(wǎng)絡(luò)數(shù)據(jù)計數(shù)流程圖。
[0072] 圖8為本發(fā)明實施例2中分階段恢復(fù)時鐘頻率流程圖。
[0073] 圖9為本發(fā)明實施例3中分階段恢復(fù)時鐘頻率流程圖。
[0074] 圖10為本發(fā)明實施例中抖動緩存模塊寫入數(shù)據(jù)流程圖。
[0075] 圖11為本發(fā)明實施例中抖動緩慢模塊讀出數(shù)據(jù)流程圖。
[0076] 圖中標(biāo)記:1-數(shù)據(jù)時鐘分徑模塊,2-接收包排序及無效包處理系統(tǒng),21-寫入控制 模塊,22-抖動緩存模塊,23-讀出控制模塊,24-寫基準(zhǔn)時鐘產(chǎn)生模塊,25-讀恢復(fù)時鐘產(chǎn)生 模塊,26-數(shù)據(jù)包計數(shù)模塊,3-時鐘恢復(fù)模塊,31-控制模塊,32-計數(shù)器模塊,33-偏差計算 模塊,34-時鐘調(diào)整模塊,4-并串處理模塊。

【具體實施方式】
[0077] 下面結(jié)合具體實施例對本發(fā)明作進一步的詳細描述。但不應(yīng)將此理解為本發(fā)明 上述主題的范圍僅限于以下的實施例,凡基于本
【發(fā)明內(nèi)容】
所實現(xiàn)的技術(shù)均屬于本發(fā)明的范 圍。 實施例1 :如圖2所不,本實施例提供一種恢復(fù)精度1?、恢復(fù)所需時間短的基于TDM的 網(wǎng)絡(luò)時鐘恢復(fù)系統(tǒng);包括數(shù)據(jù)時鐘分徑模塊1、接收包排序及無效包處理系統(tǒng)2、時鐘恢復(fù) 模塊3、并串處理模塊4 ;所述數(shù)據(jù)時鐘分徑模塊1分別與所述接收包排序及無效包處理系 統(tǒng)2、時鐘恢復(fù)模塊連接3 ;所述接收包排序及無效包處理系統(tǒng)2、所述時鐘恢復(fù)模塊3均與 所述并串處理模塊4連接。
[0078] 所述數(shù)據(jù)時鐘分徑模塊1用于將從分組網(wǎng)絡(luò)接收到的網(wǎng)絡(luò)數(shù)據(jù)中的控制字部分 送入時鐘恢復(fù)模塊3。
[0079] 所述接收包排序及無效包處理系統(tǒng)2用于對所述網(wǎng)絡(luò)數(shù)據(jù)進行排序、丟包處理。
[0080] 所述時鐘恢復(fù)模塊3用用于接收所述網(wǎng)絡(luò)數(shù)據(jù)的控制字部分,并計算、調(diào)整所述 網(wǎng)絡(luò)數(shù)據(jù)的恢復(fù)時鐘。
[0081] 所述并串處理模塊4用于將所述經(jīng)過排序、丟包處理的網(wǎng)絡(luò)數(shù)據(jù)和計算調(diào)整出的 恢復(fù)時鐘頻率進行并串處理,從而實現(xiàn)所述網(wǎng)絡(luò)數(shù)據(jù)時鐘恢復(fù)。
[0082] 進一步的,如圖3所示,所述時鐘恢復(fù)模塊3包括控制模塊31、計數(shù)器模塊32、偏 差計算模塊33和時鐘調(diào)整模塊34 ;所述控制模塊31分別與所述計數(shù)器模塊32和偏差計 算模塊連接33 ;所述偏差計算模塊33與所述時鐘調(diào)整模塊34連接;所述時鐘調(diào)整模塊34 的輸出端與所述計數(shù)器模塊32連接,所述時鐘調(diào)整模塊34的輸出端與所述計數(shù)器模塊32 連接。
[0083] 所述控制模塊31用于控制各個模塊的運行;所述計數(shù)器模塊32用于根據(jù)所述時 鐘調(diào)整模塊34輸出的當(dāng)前恢復(fù)時鐘頻率對接收到的數(shù)據(jù)進行計數(shù);所述偏差計算模塊33 用于計算當(dāng)前恢復(fù)時鐘頻率的時鐘偏差;所述時鐘調(diào)整模塊34用于根據(jù)所述偏差計算模 塊的計算結(jié)果調(diào)整數(shù)據(jù)的恢復(fù)時鐘,并將當(dāng)前恢復(fù)時鐘輸出。
[0084] 進一步的,所述偏差計算模塊33包括時鐘計數(shù)值累加模塊,時鐘采樣次數(shù)累加模 塊、平均時鐘計數(shù)計算模塊和平均時鐘計數(shù)對比模塊。
[0085] 所述時鐘計數(shù)值累加模塊用于累加單一計算周期內(nèi)的時鐘計數(shù)累加值。
[0086] 所述時鐘采樣次數(shù)模塊用于記錄單一計算周期內(nèi)實際采樣次數(shù)。
[0087] 平均時鐘計數(shù)計算模塊用于計算并存儲單一計算周期內(nèi)的平均時鐘計數(shù),所述單 一計算周期內(nèi)的平均時鐘計數(shù)=單一計算周期內(nèi)的時鐘計數(shù)累加值/單一計算周期內(nèi)實際 采樣次數(shù)。
[0088] 所述平均時鐘計數(shù)對比模塊用于對比當(dāng)前時鐘周期內(nèi)平均時鐘計數(shù)與上一時鐘 周期內(nèi)的平均時鐘計數(shù)的大小。
[0089] 進一步的,所述時鐘調(diào)整模塊34中包括基準(zhǔn)脈沖產(chǎn)生模塊、恢復(fù)時鐘產(chǎn)生模塊和 脈沖增減模塊;所述基準(zhǔn)脈沖產(chǎn)生模塊用于產(chǎn)生基準(zhǔn)脈沖;所述恢復(fù)時鐘產(chǎn)生模塊用于根 據(jù)所述基準(zhǔn)脈沖產(chǎn)生當(dāng)前恢復(fù)時鐘;所述脈沖增減模塊用于根據(jù)所述偏差計算模塊的計算 結(jié)果對當(dāng)前恢復(fù)時鐘包含的基準(zhǔn)脈沖進行增減操作。
[0090] 本實施例中,所述基準(zhǔn)脈沖產(chǎn)生模塊用于產(chǎn)生327. 68MHz基準(zhǔn)脈沖,并用以恢復(fù) 2. 048MHz時鐘頻率。
[0091] 優(yōu)選的,所述計數(shù)器模塊32中采用遞減的方式實現(xiàn)接收數(shù)據(jù)的計數(shù)。
[0092] 進一步的,如圖4所示,本實施例中接收包排序及無效包處理系統(tǒng)2包括寫入控制 模塊21、讀出控制模塊23、抖動緩存模塊22,所述寫入控制模塊21的輸入端與數(shù)據(jù)接收端 口(所述數(shù)據(jù)分徑模塊1的輸出端)連接,所述寫入控制模塊21的輸出端與所述抖動緩存 模塊22連接,所述抖動緩存模塊22還與所述讀出控制模塊23連接;所述寫入控制模塊21 用于控制網(wǎng)絡(luò)數(shù)據(jù)的寫入;所述抖動緩存模塊22用于存儲所述網(wǎng)絡(luò)數(shù)據(jù);所述讀出控制模 塊23用于控制所述抖動緩存模塊中網(wǎng)絡(luò)數(shù)據(jù)的讀出,所述讀出控制模塊23中設(shè)置有讀指 針,所述讀指針由系統(tǒng)第一次收到的網(wǎng)絡(luò)數(shù)據(jù)序列號SEQ初始化,開始讀取操作后,每讀完 一個數(shù)據(jù)包,所述讀指針會加1操作指向下一數(shù)據(jù)包。
[0093] 進一步的,所述抖動緩存模塊22包括標(biāo)志存儲模塊和數(shù)據(jù)存儲模塊,所述標(biāo)志存 儲模塊包括寫讀標(biāo)志存儲模塊和序列號存儲模塊;所述數(shù)據(jù)存儲模塊用于存儲所述網(wǎng)絡(luò)數(shù) 據(jù)的凈荷部分;所述讀寫標(biāo)志存儲模塊用于存儲與凈荷部分一一對應(yīng)的寫讀標(biāo)志;所述序 列號存儲模塊用于存儲網(wǎng)絡(luò)數(shù)據(jù)的序列號部分。本實施例中,抖動緩存模塊按512ms計算, 當(dāng)傳輸2. 048MHz網(wǎng)絡(luò)數(shù)據(jù)按1幀封裝時(1幀時長為125 us),則所述抖動緩存模塊的深 度=512*1000/125=4096,即所述抖動緩存模塊可同時緩存4096幀數(shù)據(jù)。
[0094] 進一步的,所述寫入控制模塊21還連接有寫基準(zhǔn)時鐘產(chǎn)生模塊24,所述讀出控制 模塊23還連接有讀恢復(fù)時鐘產(chǎn)生模塊25,所述寫基準(zhǔn)時鐘產(chǎn)生模塊24用于產(chǎn)生控制所述 寫入控制模塊21的基準(zhǔn)時鐘;所述讀恢復(fù)時鐘產(chǎn)生模塊25用于產(chǎn)生控制所述讀出控制模 塊23的恢復(fù)時鐘。
[0095] 進一步的,為了防止抖動緩存模塊中存儲的數(shù)據(jù)逸出,在所述抖動緩存模塊存儲 一半時開始讀出數(shù)據(jù)操作,即從接收第一幀數(shù)據(jù)包開始后156ms開始讀出數(shù)據(jù)操作。
[0096] 優(yōu)選的,寫基準(zhǔn)時鐘產(chǎn)生模塊24產(chǎn)生81. 92MHz的基準(zhǔn)時鐘,其由327. 68MHz基準(zhǔn) 脈沖分頻生成,讀恢復(fù)時鐘產(chǎn)生模塊25產(chǎn)生81. 9281. 92MHz的恢復(fù)時鐘,其由2. 048MHz恢 復(fù)時鐘倍頻生成。
[0097] 進一步的,所述讀出控制模塊還連接有數(shù)據(jù)包計數(shù)模塊26,所述數(shù)據(jù)包計數(shù)模塊 25用于記錄收到的正常包、重復(fù)包、延時包、丟包的數(shù)量。
[0098] 實施例2 :本實施例同時提供一種恢復(fù)精度高、恢復(fù)所需時間短的基于TDM的網(wǎng) 絡(luò)時鐘恢復(fù)方法,如圖5所示,包含以下步驟:包含步驟S100:將待傳送網(wǎng)絡(luò)數(shù)據(jù)按照指定 幀數(shù)進行封裝。
[0099] 包含步驟S200 :將接收到的網(wǎng)絡(luò)數(shù)據(jù)中控制字部分分出,并計算、調(diào)整恢復(fù)時鐘。
[0100] 包含步驟S300 :將接收到的網(wǎng)絡(luò)數(shù)據(jù)進行排序、丟包處理。
[0101] 包含步驟S400 :將所述經(jīng)過排序、丟包處理的網(wǎng)絡(luò)數(shù)據(jù)和計算調(diào)整出的恢復(fù)時鐘 頻率進行并串處理,從而實現(xiàn)所述網(wǎng)絡(luò)數(shù)據(jù)時鐘恢復(fù)的步驟。
[0102] 進一步的,如圖6所示,所述從控制字部分提取時序序列號依照當(dāng)前恢復(fù)時鐘進 行計數(shù)的步驟S200中:包含步驟S210 :在單個計算周期內(nèi),按照指定采樣周期tsam針對 控制字部分進行采樣,并根據(jù)采樣結(jié)果進行時鐘計數(shù);所述單個計算周期內(nèi)包含有1個以 上的采樣周期t sam ;如本實施例中,采樣周期tsam=4ms,計算周期根據(jù)需要設(shè)定為4096ms、 16384ms、32768ms、65536ms、131072ms ;實際應(yīng)用中,計算周期越長,計算精度越高、誤差越 小,但在時鐘恢復(fù)領(lǐng)域,花費總時間越少,說明時鐘恢復(fù)效率越高,所以應(yīng)在保證恢復(fù)精度 高和誤差小的前提下,應(yīng)追求最短的總花費時間。
[0103] 包含步驟S220 :計算單個計算周期內(nèi)平均時鐘計數(shù),所述計算周期內(nèi)平均時鐘計 數(shù)Sn=計算周期內(nèi)時鐘計數(shù)累加值/計算周期內(nèi)采樣次數(shù)。
[0104] 包含步驟S230:將當(dāng)前計算周期內(nèi)平均時鐘計數(shù)Sn與上個計算周期內(nèi)平均時鐘 計數(shù)S lri進行比較。
[0105] 包含步驟S240將下個計算周期平均分為N個調(diào)整段的步驟,N為1以上的自然數(shù), 本實施例中,N取值為4、8、16、32,即每個計算周期均分為4個、8個、16個或32個調(diào)整段, 使得脈沖的增加或減少更加均勻,從而減少脈沖抖動現(xiàn)象。
[0106] 包含步驟S250:根據(jù)比較結(jié)果對下個計算周期內(nèi)當(dāng)前恢復(fù)時鐘每個調(diào)整段包 含的基準(zhǔn)脈沖數(shù)進行增減調(diào)整的步驟,每次增加或者減少的脈沖數(shù)量均為額定脈沖數(shù)量 MPnum; MPnum為根據(jù)需要預(yù)設(shè)的1以上的自然數(shù)。如本實施例中MPnum的取值可為2048、 1024、512、256、128、64、32、16、8、4、2、1。
[0107] 本實施例中,時鐘恢復(fù)脈沖由327.68MHz基準(zhǔn)脈沖經(jīng)過160分頻產(chǎn)生,用以恢 復(fù)網(wǎng)絡(luò)數(shù)據(jù)2.048MHz時鐘頻率;步驟S350中,根據(jù)計算周期取值的不同(可為4096ms、 16384ms、32768ms、65536ms、131072ms ),將額定脈沖數(shù)量MPnum個基準(zhǔn)脈沖脈沖增加或減少 到下一計算周期的各個調(diào)整段中。
[0108] 進一步的,如圖7所示,步驟S210中,包含步驟S211 :在采樣開始前設(shè)定時鐘計數(shù) 初始值。
[0109] 包含步驟S212 :依照當(dāng)前系統(tǒng)提供的時鐘頻率,按照指定采樣周期tsam對接收到 的網(wǎng)絡(luò)數(shù)據(jù)進行采樣。
[0110] 包含步驟S213 :根據(jù)采樣結(jié)果,對時鐘計數(shù)初始值進行增或減,從而實現(xiàn)計數(shù)。
[0111] 包含步驟S214 :在采樣周期結(jié)束后將所述時鐘計數(shù)值累加保存。
[0112] 包含步驟S215 :記錄采樣次數(shù)并重置時鐘計數(shù)初始值。
[0113] 進一步的,步驟S210中,采用對時鐘計數(shù)初始值遞減的方式實現(xiàn)計數(shù),所述時鐘 計數(shù)初始值〉采樣周期t sam內(nèi)理論傳輸數(shù)據(jù)值* (計算周期/采樣周期tsam);所述計算周期 為根據(jù)需要設(shè)定的采樣周期tsam的整數(shù)倍,本實施例中,采樣周期為t sam=4ms,計算周期根據(jù) 需要設(shè)定為 4096ms、16384ms、32768ms、65536ms、131072ms ;當(dāng)采用 2. 048MHz 時鐘發(fā)送數(shù)據(jù) 時,4ms內(nèi)理論傳輸數(shù)據(jù)值應(yīng)為8192bit由于本發(fā)明采用設(shè)定初始值后遞減方式實現(xiàn)計數(shù), 并保存采樣周期后的計數(shù)剩余值,這種情況下,如初始值設(shè)置過小,則可能造成初始值不夠 用,反之,如初始值過大,則可能造成計數(shù)剩余值累加值溢出,因此應(yīng)根據(jù)需要設(shè)定初始值, 本實施例中,所述時鐘計數(shù)初始值設(shè)定為100000000000000000000000 (二進制)。
[0114] 進一步的,步驟S210中,采樣周期tsam結(jié)束后,重置時鐘計數(shù)初始值的步驟中,包 含將本采樣周期時鐘計數(shù)剩余值與上一采樣周期時鐘計數(shù)剩余值進行比較的步驟;如I本 采樣周期時鐘計數(shù)剩余值-上一采樣周期時鐘計數(shù)剩余值I >采樣周期tsam內(nèi)理論傳輸數(shù) 據(jù)值,則,下一采樣周期時鐘計數(shù)初始值設(shè)定為ceil( I本采樣周期時鐘計數(shù)剩余值-上一 采樣周期時鐘計數(shù)剩余值I /采樣周期tsam內(nèi)理論傳輸數(shù)據(jù)值)*采樣周期tsam內(nèi)理論傳輸 數(shù)據(jù)值+本采樣周期時鐘計數(shù)剩余值;否則下一采樣周期時鐘計數(shù)初始值設(shè)定為本采樣周 期時鐘計數(shù)剩余值+采樣周期t sam內(nèi)理論傳輸數(shù)據(jù)值。當(dāng)采用2. 048MHz時鐘發(fā)送數(shù)據(jù)時, 4ms內(nèi)理論傳輸數(shù)據(jù)值應(yīng)為8192bit,即如I本采樣周期時鐘計數(shù)剩余值-上一采樣周期時 鐘計數(shù)剩余值I >8192,則,下一采樣周期時鐘計數(shù)初始值設(shè)定為ceil ( I本采樣周期時鐘 計數(shù)剩余值-上一采樣周期時鐘計數(shù)剩余值I /8192)*8192+本采樣周期時鐘計數(shù)剩余值; 否則下一采樣周期時鐘計數(shù)初始值設(shè)定為本采樣周期時鐘計數(shù)剩余值+8192。其中ceil () 為上取整函數(shù)(其返回大于或者等于指定表達式的最小整數(shù))。
[0115] 進一步的,步驟S210中,單一采樣周期結(jié)束后,還包括判斷所述計算周期是否結(jié) 束的步驟:如所述計算周期沒有結(jié)束,則進入下一采樣周期。
[0116] 如所述計算周期結(jié)束,則計算本計算周期內(nèi)平均時鐘計數(shù)Sn ;計算公式為:所述計 算周期內(nèi)平均時鐘計數(shù)Sn=本計算周期內(nèi)時鐘計數(shù)累加值/本計算周期內(nèi)采樣次數(shù);時鐘 計數(shù)累加值清零,采樣次數(shù)清零。
[0117] 進一步的,步驟S210中,在單一計算周期結(jié)束后,還包括將本計算周期平均時鐘 計數(shù)S n與上一計算周期平均時鐘計數(shù)Slri進行比較的步驟。
[0118] 如Sn> Slri,則發(fā)出調(diào)快時鐘頻率指令;否則發(fā)出調(diào)慢時鐘頻率指令。
[0119] 進一步的,步驟S210中,在單一計算周期結(jié)束后,還包括將本計算周期平均時鐘 計數(shù)S n與上一計算周期平均時鐘計數(shù)Slri進行比較的步驟:如|sn-Slri I >收斂失敗標(biāo)識 值Fail,則發(fā)出本次時鐘恢復(fù)失敗的信號;所述收斂失敗標(biāo)識值Fail為根據(jù)需要設(shè)定的大 于1的自然數(shù),如本實施例中收斂失敗標(biāo)識值Fail可為1024或2048或4096。
[0120] 進一步的,步驟250中,如Sn> Slri,則下個計算周期內(nèi)當(dāng)前恢復(fù)時鐘每個調(diào)整 段的基準(zhǔn)脈沖數(shù)減少頂Pnum個(MP num根據(jù)階段需要可設(shè)定為2048、1024、512、256、128、 64、32、16、8、4、2、1),否則所述下個計算周期內(nèi)當(dāng)前恢復(fù)時鐘每個調(diào)整段的基準(zhǔn)脈沖數(shù)增 加 MPnum個;本實施例中,所述基準(zhǔn)脈沖為327. 68MHz基準(zhǔn)脈沖,并通過160分頻以恢復(fù) 2. 048MHz時鐘頻率;即所述增、減IMPnum個時鐘脈沖的操作均針對327. 68MHz基準(zhǔn)脈沖進 行。
[0121] 進一步的,步驟250中,每次增加的IMPnum個脈沖為離散的插入到原脈沖序列中; 或,每次減少的IMP num個脈沖為離散的從原脈沖序列中去除,這樣可以進一步的減少因脈沖 增加或減少而造成的抖動現(xiàn)象。
[0122] 進一步的,如圖8所示,所述計算、調(diào)整時鐘頻率的步驟S200中,所述網(wǎng)絡(luò)時鐘恢 復(fù)方法按照時間先后和時鐘收斂速度分為快速收斂階段、慢速收斂階段和鎖定收斂階段三 個階段。
[0123] 所述快速收斂階段、慢速收斂階段、鎖定收斂階段均包含有一個以上的計算周期。
[0124] 本實施例中,所述快速收斂階段包含STEP0、STEP1、STEP2、STEP3、STEP4、STEP5六 個STEP段;每個STEP段均包含有1個以上的計算周期。
[0125] 慢速收斂階段包含 STEP6、STEP7、STEP8、STEP9、STEPlO 五個 STEP 段;每個 STEP 段均包含有1個以上的計算周期。
[0126] 鎖定收斂階段包含STEPll -個STEP段(STEP0至STEPll按時間先后依次進行, 圖8中未顯出各STEP段,僅顯示包含各STEP段的快速收斂階段、慢速收斂階段、鎖定收斂 階段三個收斂階段)。
[0127] 其中,所述快速收斂階段的計算周期小于所述慢速收斂階段的計算周期,所述慢 速收斂階段的計算周期小于所述鎖定收斂階段的計算周期。
[0128] 所述離散補償調(diào)整方法還包含根據(jù)預(yù)設(shè)條件判斷是否進入下一收斂階段或下一 STEP段的步驟。
[0129] 如,本實施例中,所述預(yù)設(shè)條件為本階段中增加時鐘脈沖次數(shù)的計算周期數(shù)>1, 同時,減少時鐘脈沖次數(shù)的計算周期數(shù)>1 ;如滿足所述預(yù)設(shè)條件,則進入下一收斂階段或 下一 STEP段,需要指出的是,在進入下一收斂階段或下一 STEP段或下一計算周期時,基準(zhǔn) 脈沖產(chǎn)生的恢復(fù)時鐘脈沖均為上一計算周期調(diào)整過的當(dāng)前恢復(fù)時鐘脈沖,而非原始未經(jīng)調(diào) 整的恢復(fù)時鐘脈沖。
[0130] 進一步的,所述額定脈沖數(shù)量IMPnmi隨著所述計算周期的延長而不斷減?。黄渲?, 所述鎖定收斂階段的計算周期中,所述額定脈沖數(shù)量IMP num為1。
[0131] 各個收斂階段中各個STEP段計算周期、調(diào)整周期、調(diào)整段、額定脈沖數(shù)量MPnum的 對照表如表1 : 表1

【權(quán)利要求】
1. 一種接收包排序及無效包處理方法,其特征在于,包含如下寫入數(shù)據(jù)步驟: (1) 系統(tǒng)上電,抖動緩存模塊清零; (2) 根據(jù)接收到的第一個數(shù)據(jù)包的序列號SEQ值初始化序列號存儲模塊以及讀指針; 艮P,將該序列號SEQ寫入序列號存儲模塊的第一位置,并根據(jù)所述序列號存儲模塊的容量, 以該序列號SEQ為起始值將所述序列號存儲模塊從起始位置向后填滿;將第一數(shù)據(jù)包凈荷 數(shù)據(jù)寫入數(shù)據(jù)存儲模塊對應(yīng)位置,對應(yīng)寫讀標(biāo)志設(shè)為已寫標(biāo)志; (3) 接收新數(shù)據(jù),遍歷所述序列號存儲模塊,查找是否含有新接收數(shù)據(jù)序列號SEQ,如 有,進入步驟(5),否則,進入步驟(4); (4) 該數(shù)據(jù)包為無效包,無效包計數(shù)加1,該無效包丟棄,返回步驟(3); (5) 判斷與該序列號SEQ對應(yīng)的寫讀標(biāo)志是否為已寫標(biāo)志,如是,進入步驟(6);如否, 進入步驟(7); (6) 該數(shù)據(jù)包為重復(fù)包,重復(fù)包計數(shù)加1 ;返回步驟(3); (7) 在數(shù)據(jù)存儲模塊中該序列號對應(yīng)位置寫入凈荷數(shù)據(jù),將與該序列號對應(yīng)的寫讀標(biāo) 志設(shè)為已寫標(biāo)志;返回步驟(3)。
2. 如權(quán)利要求1所述的接收包排序及無效包處理方法,其特征在于,還包括如下讀出 數(shù)據(jù)步驟: (1) 從所述讀指針指向的序列號SEQ開始順序讀取數(shù); (2) 判斷讀指針指向的序列號SEQ對應(yīng)的寫讀標(biāo)志是否為已寫標(biāo)志,如是,進入步驟 (3);如否進入步驟(4); (3) 從數(shù)據(jù)存儲模塊對應(yīng)位置讀出凈荷數(shù)據(jù);將對應(yīng)寫讀標(biāo)志清零;數(shù)據(jù)存儲模塊對 應(yīng)位置清零;正常包計數(shù)加1,進入步驟(7); (4) 判斷寫讀標(biāo)志存儲模塊是否為延時標(biāo)志,如是進入步驟(5);如不是進入步驟(6); (5) 將該序列號SEQ對應(yīng)的數(shù)據(jù)以補空包方式讀出;丟包計數(shù)加1,進入步驟(7); (6) 將對應(yīng)讀寫標(biāo)志設(shè)置延時標(biāo)志;將該序列號SEQ對應(yīng)的數(shù)據(jù)以補空包方式讀出;延 時包計數(shù)加1,進入步驟(7); (7) 將序列存儲模塊中該SEQ值加所述序列號存儲模塊容量值后重新覆蓋該位置,讀 寫指針加1并返回步驟(2)。
3. 如權(quán)利要求1或2所述的接收包排序及無效包處理方法,其特征在于,所述已寫標(biāo)志 為0X1234,所述延時標(biāo)志為0X5678。
4. 如權(quán)利要求1或2所述的接收包排序及無效包處理方法,其特征在于,所述寫入數(shù)據(jù) 步驟在81. 92MHz基準(zhǔn)時鐘下工作,所述讀出數(shù)據(jù)步驟在81. 92MHz恢復(fù)時鐘下工作。
5. 如權(quán)利要求2所述的接收包排序及無效包處理方法,其特征在于,步驟(5)和步驟 (6)中,以補空包方式讀出是指將數(shù)據(jù)設(shè)置為0讀出。
【文檔編號】H04L1/00GK104393961SQ201410761231
【公開日】2015年3月4日 申請日期:2014年12月12日 優(yōu)先權(quán)日:2014年12月12日
【發(fā)明者】胡強, 吳援明, 劉思卓 申請人:成都朗銳芯科技發(fā)展有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1