一種用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方法
【專利摘要】本發(fā)明涉及一種網(wǎng)絡(luò)通信領(lǐng)域,特別涉及一種基于TDM的網(wǎng)絡(luò)時(shí)鐘恢復(fù)方法。包含在單個(gè)計(jì)算周期內(nèi),依照當(dāng)前恢復(fù)時(shí)鐘頻率按照指定采樣周期tsam對(duì)接收到的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行采樣計(jì)數(shù)的步驟;包含計(jì)算平均時(shí)鐘計(jì)數(shù)的步驟;包含將當(dāng)前計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù)Sn與上個(gè)計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù)Sn-1進(jìn)行比較的步驟;包含根據(jù)比較結(jié)果對(duì)下個(gè)計(jì)算周期內(nèi)當(dāng)前恢復(fù)時(shí)鐘的每個(gè)調(diào)整段的基準(zhǔn)脈沖數(shù)進(jìn)行增減調(diào)整的步驟;本發(fā)明提供的用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整系方法采用針對(duì)數(shù)據(jù)序列號(hào)采樣計(jì)數(shù)的方式實(shí)現(xiàn)數(shù)據(jù)的時(shí)鐘自適應(yīng)恢復(fù),恢復(fù)所需時(shí)間短,恢復(fù)精度高;在對(duì)時(shí)鐘進(jìn)行調(diào)整的過(guò)程中采用離散插入脈沖方式,使得時(shí)鐘調(diào)整更加平穩(wěn),時(shí)鐘脈沖抖動(dòng)小,采用本發(fā)明系統(tǒng)實(shí)現(xiàn)的2.048MHz恢復(fù)時(shí)鐘精度高達(dá)10ppb,很好滿足網(wǎng)絡(luò)數(shù)據(jù)收發(fā)同步的目的。
【專利說(shuō)明】一種用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種網(wǎng)絡(luò)通信領(lǐng)域,特別涉及一種用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方 法。
【背景技術(shù)】
[0002] 如圖1所示,CES (Circuit Emulation Service)電路仿真提供一種從電路交換 網(wǎng)到分組交換網(wǎng)的平穩(wěn)過(guò)渡方案,發(fā)送端PE設(shè)備將TDM數(shù)據(jù)通過(guò)實(shí)時(shí)封裝,經(jīng)分組網(wǎng)絡(luò)傳 輸達(dá)接收端,在接收端PE設(shè)備接收端數(shù)據(jù)緩存隊(duì)列恢復(fù)出同步時(shí)鐘,同步時(shí)鐘解封裝數(shù)據(jù) 幀,重組為TDM數(shù)據(jù)流;但因?yàn)門DM網(wǎng)是一種同步網(wǎng),分組網(wǎng)為典型的異步網(wǎng),TDM數(shù)據(jù)在通 過(guò)分組網(wǎng)傳送到接收端時(shí)會(huì)造成自身的時(shí)鐘信息丟失,因此在接收端恢復(fù)TDM數(shù)據(jù)時(shí)的時(shí) 鐘恢復(fù)技術(shù)至關(guān)重要,數(shù)據(jù)時(shí)鐘信息的恢復(fù)直接影響數(shù)據(jù)傳輸?shù)馁|(zhì)量,目前的時(shí)鐘恢復(fù)技 術(shù)存在著恢復(fù)所需時(shí)間長(zhǎng)、恢復(fù)精度差等問(wèn)題。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明提供一種恢復(fù)精度高、恢復(fù)所需時(shí)間短的基于TDM的網(wǎng)絡(luò)時(shí)鐘恢復(fù)系統(tǒng); 包括數(shù)據(jù)時(shí)鐘分徑模塊、數(shù)據(jù)緩存模塊、離散補(bǔ)償調(diào)整系統(tǒng)、并串處理模塊;所述數(shù)據(jù)時(shí)鐘 分徑模塊分別與所述數(shù)據(jù)緩存模塊、離散補(bǔ)償調(diào)整系統(tǒng)連接;所述數(shù)據(jù)緩存模塊、所述離散 補(bǔ)償調(diào)整系統(tǒng)均與所述并串處理模塊連接。
[0004] 所述數(shù)據(jù)時(shí)鐘分徑模塊用于將從分組網(wǎng)絡(luò)接收到的網(wǎng)絡(luò)數(shù)據(jù)中的控制字部分送 入離散補(bǔ)償調(diào)整系統(tǒng)。
[0005] 所述數(shù)據(jù)緩存模塊用于對(duì)所述網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行排序、丟包處理。
[0006] 所述離散補(bǔ)償調(diào)整系統(tǒng)用于接收所述網(wǎng)絡(luò)數(shù)據(jù)的控制字部分,并計(jì)算、調(diào)整所述 網(wǎng)絡(luò)數(shù)據(jù)的恢復(fù)時(shí)鐘。
[0007] 所述并串處理模塊用于將所述經(jīng)過(guò)排序、丟包處理的網(wǎng)絡(luò)數(shù)據(jù)和計(jì)算調(diào)整出的恢 復(fù)時(shí)鐘頻率進(jìn)行并串處理。
[0008] 本發(fā)明同時(shí)提供的一種用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整系統(tǒng)包括控制模塊、計(jì)數(shù)器 模塊、偏差計(jì)算模塊和時(shí)鐘調(diào)整模塊;所述控制模塊分別與所述計(jì)數(shù)器模塊和偏差計(jì)算模 塊連接;所述偏差計(jì)算模塊與所述時(shí)鐘調(diào)整模塊連接;所述時(shí)鐘調(diào)整模塊的輸出端與所述 計(jì)數(shù)器模塊連接。
[0009] 所述控制模塊用于控制各個(gè)模塊的運(yùn)行;所述計(jì)數(shù)器模塊用于根據(jù)所述時(shí)鐘調(diào)整 模塊輸出的當(dāng)前恢復(fù)時(shí)鐘頻率對(duì)接收到的數(shù)據(jù)進(jìn)行計(jì)數(shù);所述偏差計(jì)算模塊用于計(jì)算當(dāng)前 恢復(fù)時(shí)鐘頻率的時(shí)鐘偏差;所述時(shí)鐘調(diào)整模塊用于根據(jù)所述偏差計(jì)算模塊的計(jì)算結(jié)果調(diào)整 數(shù)據(jù)的恢復(fù)時(shí)鐘,并將當(dāng)前恢復(fù)時(shí)鐘輸出。
[0010] 進(jìn)一步的,所述偏差計(jì)算模塊包括時(shí)鐘計(jì)數(shù)值累加模塊,時(shí)鐘采樣次數(shù)累加模塊、 平均時(shí)鐘計(jì)數(shù)計(jì)算模塊和平均時(shí)鐘計(jì)數(shù)對(duì)比模塊。
[0011] 所述時(shí)鐘計(jì)數(shù)值累加模塊用于累加單一計(jì)算周期內(nèi)的時(shí)鐘計(jì)數(shù)累加值。
[0012] 所述時(shí)鐘采樣次數(shù)模塊用于記錄單一計(jì)算周期內(nèi)實(shí)際采樣次數(shù)。
[0013] 平均時(shí)鐘計(jì)數(shù)計(jì)算模塊用于計(jì)算并存儲(chǔ)單一計(jì)算周期內(nèi)的平均時(shí)鐘計(jì)數(shù),計(jì)算周 期內(nèi)的平均時(shí)鐘計(jì)數(shù)=計(jì)算周期內(nèi)的時(shí)鐘計(jì)數(shù)累加值/計(jì)算周期內(nèi)實(shí)際采樣次數(shù)。
[0014] 所述平均時(shí)鐘計(jì)數(shù)對(duì)比模塊用于對(duì)比當(dāng)前時(shí)鐘周期內(nèi)平均時(shí)鐘計(jì)數(shù)與上一時(shí)鐘 周期內(nèi)的平均時(shí)鐘計(jì)數(shù)的大小。
[0015] 進(jìn)一步的,所述時(shí)鐘調(diào)整模塊中包括基準(zhǔn)脈沖產(chǎn)生模塊、恢復(fù)時(shí)鐘產(chǎn)生模塊和脈 沖增減模塊。
[0016] 所述基準(zhǔn)脈沖產(chǎn)生模塊用于產(chǎn)生基準(zhǔn)脈沖。
[0017] 所述恢復(fù)時(shí)鐘產(chǎn)生模塊用于根據(jù)所述基準(zhǔn)脈沖產(chǎn)生當(dāng)前恢復(fù)時(shí)鐘。
[0018] 所述脈沖增減模塊用于根據(jù)所述偏差計(jì)算模塊的計(jì)算結(jié)果對(duì)當(dāng)前恢復(fù)時(shí)鐘包含 的基準(zhǔn)脈沖進(jìn)行增減操作。
[0019] 優(yōu)選的,所述基準(zhǔn)脈沖頻率為327. 68MHz。
[0020] 優(yōu)選的,所述計(jì)數(shù)器模塊中采用遞減的方式實(shí)現(xiàn)接收數(shù)據(jù)的計(jì)數(shù)。
[0021] 進(jìn)一步的,所述數(shù)據(jù)緩存模塊包括寫入控制模塊、讀出控制模塊、抖動(dòng)緩存模塊, 所述寫入控制模塊的輸入端與數(shù)據(jù)接收端口連接,所述寫入控制模塊的輸出端與所述抖動(dòng) 緩存模塊連接,所述抖動(dòng)緩存模塊還與所述讀出控制模塊連接;所述寫入控制模塊用于控 制網(wǎng)絡(luò)數(shù)據(jù)的寫入;所述抖動(dòng)緩存模塊用于存儲(chǔ)所述網(wǎng)絡(luò)數(shù)據(jù);所述讀出控制模塊用于控 制所述抖動(dòng)緩存模塊中網(wǎng)絡(luò)數(shù)據(jù)的讀出。
[0022] 進(jìn)一步的,所述抖動(dòng)緩存模塊包括標(biāo)志存儲(chǔ)模塊和數(shù)據(jù)存儲(chǔ)模塊,所述標(biāo)志存儲(chǔ) 模塊包括寫讀標(biāo)志存儲(chǔ)模塊和序列號(hào)存儲(chǔ)模塊;所述數(shù)據(jù)存儲(chǔ)模塊用于存儲(chǔ)所述網(wǎng)絡(luò)數(shù)據(jù) 的凈荷部分;所述讀寫標(biāo)志存儲(chǔ)模塊用于存儲(chǔ)與凈荷部分一一對(duì)應(yīng)的寫讀標(biāo)志;所述序列 號(hào)存儲(chǔ)模塊用于存儲(chǔ)網(wǎng)絡(luò)數(shù)據(jù)的序列號(hào)部分。
[0023] 進(jìn)一步的,所述寫入控制模塊還連接有寫基準(zhǔn)時(shí)鐘產(chǎn)生模塊,所述讀出控制模塊 還連接有讀恢復(fù)時(shí)鐘產(chǎn)生模塊,所述寫基準(zhǔn)時(shí)鐘產(chǎn)生模塊用于產(chǎn)生控制所述寫入控制模塊 的基準(zhǔn)時(shí)鐘;所述讀恢復(fù)時(shí)鐘產(chǎn)生模塊用于產(chǎn)生控制所述讀出控制模塊的恢復(fù)時(shí)鐘。
[0024] 優(yōu)選的,所述寫入數(shù)據(jù)步驟在81. 92MHz基準(zhǔn)時(shí)鐘下工作,所述讀出數(shù)據(jù)步驟在 81. 92MHz恢復(fù)時(shí)鐘下工作。
[0025] 進(jìn)一步的,所述數(shù)據(jù)緩存模塊還包括數(shù)據(jù)包計(jì)數(shù)模塊,所述數(shù)據(jù)包計(jì)數(shù)模塊同時(shí) 與所述寫入控制模塊和所述讀出控制模塊連接,其用于記錄系統(tǒng)接收到的正常包、重復(fù)包、 延時(shí)包、丟包數(shù)量。
[0026] 本發(fā)明同時(shí)提供一種恢復(fù)精度高、恢復(fù)所需時(shí)間短的基于TDM的網(wǎng)絡(luò)時(shí)鐘恢復(fù)方 法,包含以下步驟: 包含將待傳送網(wǎng)絡(luò)數(shù)據(jù)按照指定幀數(shù)進(jìn)行封裝的步驟。
[0027] 包含將接收到的網(wǎng)絡(luò)數(shù)據(jù)中控制字部分分出,并計(jì)算、調(diào)整恢復(fù)時(shí)鐘的步驟。
[0028] 包含將接收到的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行排序、丟包處理的步驟。
[0029] 包含將所述經(jīng)過(guò)排序、丟包處理的網(wǎng)絡(luò)數(shù)據(jù)和計(jì)算調(diào)整出的恢復(fù)時(shí)鐘頻率進(jìn)行并 串處理的步驟。
[0030] 進(jìn)一步的,所述從控制字部分提取時(shí)序序列號(hào)依照當(dāng)前恢復(fù)時(shí)鐘進(jìn)行計(jì)數(shù)的步驟 為用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方法,其包含如下步驟: 包含在單個(gè)計(jì)算周期內(nèi),按照指定采樣周期tsam針對(duì)控制字部分進(jìn)行采樣計(jì)數(shù)的步驟; 所述單個(gè)計(jì)算周期內(nèi)包含有1個(gè)以上的采樣周期tsam。
[0031] 包含計(jì)算單個(gè)計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù)的步驟,所述計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù) Sn=計(jì)算周期內(nèi)時(shí)鐘計(jì)數(shù)累加值/計(jì)算周期內(nèi)采樣次數(shù)。
[0032] 包含將當(dāng)前計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù)5"與上個(gè)計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù)Slri進(jìn)行 比較的步驟。
[0033] 包含將下個(gè)計(jì)算周期平均分為N個(gè)調(diào)整段的步驟,N為1以上的自然數(shù)。
[0034] 包含根據(jù)比較結(jié)果對(duì)下個(gè)計(jì)算周期內(nèi)當(dāng)前恢復(fù)時(shí)鐘每個(gè)調(diào)整段包含的基準(zhǔn)脈沖 數(shù)進(jìn)行增減調(diào)整的步驟,每次增加或者減少的脈沖數(shù)量均為額定脈沖數(shù)量IMPnum; IMPnmi為 根據(jù)需要預(yù)設(shè)的1以上的自然數(shù)。
[0035] 進(jìn)一步的,根據(jù)比較結(jié)果對(duì)下個(gè)計(jì)算周期內(nèi)當(dāng)前恢復(fù)時(shí)鐘每個(gè)調(diào)整段包含的基準(zhǔn) 脈沖數(shù)進(jìn)行增減調(diào)整的步驟中,如S n> Slri,則所述下個(gè)計(jì)算周期內(nèi)當(dāng)前恢復(fù)時(shí)鐘每個(gè)調(diào)整 段的基準(zhǔn)脈沖數(shù)減少IMPnum個(gè),否則所述下個(gè)計(jì)算周期內(nèi)當(dāng)前恢復(fù)時(shí)鐘每個(gè)調(diào)整段的基準(zhǔn) 脈沖數(shù)增加 IMPnum個(gè)。
[0036] 進(jìn)一步的,在對(duì)當(dāng)前恢復(fù)時(shí)鐘包含的基準(zhǔn)脈沖進(jìn)行增減調(diào)整的步驟中,每次增加 的頂Pnum個(gè)脈沖為離散的插入到原脈沖序列中;或,每次減少的IMP num個(gè)脈沖為離散的從原 脈沖序列中去除。
[0037] 進(jìn)一步的,所述網(wǎng)絡(luò)時(shí)鐘恢復(fù)方法按照時(shí)間先后和時(shí)鐘收斂速度分為快速收斂階 段、慢速收斂階段和鎖定收斂階段三個(gè)階段。
[0038] 所述快速收斂階段、慢速收斂階段、鎖定收斂階段均包含有一個(gè)以上的計(jì)算周期。
[0039] 其中,所述快速收斂階段的計(jì)算周期小于所述慢速收斂階段的計(jì)算周期,所述慢 速收斂階段的計(jì)算周期小于所述鎖定收斂階段的計(jì)算周期。
[0040] 所述離散補(bǔ)償調(diào)整方法還包含根據(jù)預(yù)設(shè)條件判斷是否進(jìn)入下一階段的步驟。
[0041] 進(jìn)一步的,所述預(yù)設(shè)條件為本階段中增加時(shí)鐘脈沖次數(shù)的計(jì)算周期數(shù)>1,同時(shí), 減少時(shí)鐘脈沖次數(shù)的計(jì)算周期數(shù)>1 ;如滿足所述預(yù)設(shè)條件,則進(jìn)入下一階段。
[0042] 進(jìn)一步的,所述額定脈沖數(shù)量IMPnmi隨著所述計(jì)算周期的延長(zhǎng)而不斷減??;其中, 所述鎖定收斂階段的計(jì)算周期中,所述額定脈沖數(shù)量IMP num為1。
[0043] 進(jìn)一步的,任意收斂階段中,3"與Slri進(jìn)行比較時(shí),如果|Sn- Slri I >收斂失敗標(biāo) 識(shí)值Fail,則本次時(shí)鐘恢復(fù)終止,返回快速收斂階段初始狀態(tài),重新開(kāi)始進(jìn)行時(shí)鐘恢復(fù)計(jì) 算;所述收斂失敗標(biāo)識(shí)值Fail為根據(jù)需要設(shè)定的大于1的自然數(shù)。
[0044] 進(jìn)一步的,在快速收斂階段中,3"與511_1進(jìn)行比較時(shí),如果|S n- Slri I >本階段最 大額定脈沖數(shù)量IMPnum*m,則本次時(shí)鐘恢復(fù)終止,返回快速收斂階段初始狀態(tài),重新開(kāi)始 進(jìn)行時(shí)鐘恢復(fù)計(jì)算。
[0045] 在慢速收斂階段或鎖定收斂階段中,Sn與Slri進(jìn)行比較時(shí),如果|S n- Slri I >本階 段最大額定脈沖數(shù)量MPnUffl*m,則本階段時(shí)鐘恢復(fù)終止,返回上一階段初始狀態(tài),重新開(kāi) 始進(jìn)行時(shí)鐘恢復(fù)計(jì)算。
[0046] 其中,m為根據(jù)需要設(shè)定的大于2的自然數(shù)。
[0047] 進(jìn)一步的,所述將接收到的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行排序、丟包處理的步驟中包含如下寫入 數(shù)據(jù)步驟: (1)系統(tǒng)上電,抖動(dòng)緩存模塊清零。
[0048] (2)根據(jù)接收到的第一個(gè)數(shù)據(jù)包的序列號(hào)SEQ值初始化序列號(hào)存儲(chǔ)模塊以及讀指 針;即,將該序列號(hào)SEQ寫入序列號(hào)存儲(chǔ)模塊的第一位置,并根據(jù)所述序列號(hào)存儲(chǔ)模塊的容 量,以該序列號(hào)SEQ為起始值將所述序列號(hào)存儲(chǔ)模塊向后填滿;將第一數(shù)據(jù)包凈荷數(shù)據(jù)寫 入數(shù)據(jù)存儲(chǔ)模塊對(duì)應(yīng)位置,對(duì)應(yīng)寫讀標(biāo)志設(shè)為已寫標(biāo)志。
[0049] (3)接收新數(shù)據(jù),遍歷所述序列號(hào)存儲(chǔ)模塊,查找是否含有新接收數(shù)據(jù)序列號(hào)SEQ, 如有,進(jìn)入步驟(5),否則,進(jìn)入步驟(4)。
[0050] (4)該數(shù)據(jù)包為無(wú)效包,無(wú)效包計(jì)數(shù)加1,該無(wú)效包丟棄,返回步驟3。
[0051] (5)判斷與該序列號(hào)SEQ對(duì)應(yīng)的寫讀標(biāo)志是否為已寫標(biāo)志,如是,進(jìn)入步驟(6);如 否,進(jìn)入步驟(7)。
[0052] (6)該數(shù)據(jù)包為重復(fù)包,重復(fù)包計(jì)數(shù)加1 ;返回步驟(3)。
[0053] (7)在數(shù)據(jù)存儲(chǔ)模塊中該序列號(hào)對(duì)應(yīng)位置寫入凈荷數(shù)據(jù),將與該序列號(hào)對(duì)應(yīng)的寫 讀標(biāo)志設(shè)為已寫標(biāo)志;返回步驟(3)。
[0054] 進(jìn)一步的,所述將接收到的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行排序、丟包處理的步驟中還包括如下讀 出數(shù)據(jù)步驟: (1)從所述讀指針指向的序列號(hào)SEQ開(kāi)始順序讀取數(shù)。
[0055] (2)判斷讀指針指向的序列號(hào)SEQ對(duì)應(yīng)的寫讀標(biāo)志是否為已寫標(biāo)志,如是,進(jìn)入步 驟(3);如否進(jìn)入步驟(4)。
[0056] (3)從數(shù)據(jù)存儲(chǔ)模塊對(duì)應(yīng)位置讀出凈荷數(shù)據(jù);將對(duì)應(yīng)寫讀標(biāo)志清零;數(shù)據(jù)存儲(chǔ)模 塊對(duì)應(yīng)位置清零;正常包計(jì)數(shù)加1,進(jìn)入步驟(7)。
[0057] (4)判斷寫讀標(biāo)志存儲(chǔ)模塊是否為延時(shí)標(biāo)志,如是進(jìn)入步驟(5);如不是進(jìn)入步驟 (6)。
[0058] (5)將該序列號(hào)SEQ對(duì)應(yīng)的數(shù)據(jù)以補(bǔ)空包方式讀出;丟包計(jì)數(shù)加1,進(jìn)入步驟(7)。
[0059] (6)將對(duì)應(yīng)讀寫標(biāo)志設(shè)置延時(shí)標(biāo)志;將該序列號(hào)SEQ對(duì)應(yīng)的數(shù)據(jù)以補(bǔ)空包方式讀 出;延時(shí)包計(jì)數(shù)加1,進(jìn)入步驟(7)。
[0060] (7)將序列存儲(chǔ)模塊中該SEQ值加所述序列號(hào)存儲(chǔ)模塊容量值后重新覆蓋該位 置,讀寫指針加1并返回步驟(2)。
[0061] 進(jìn)一步的,所述將接收到的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行排序、丟包處理的步驟中,所述已寫標(biāo)志 為0X1234,所述延時(shí)標(biāo)志為0X5678。
[0062] 進(jìn)一步的,所述將接收到的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行排序、丟包處理的步驟中,所述寫入數(shù)據(jù) 步驟在81. 92MHz基準(zhǔn)時(shí)鐘下工作,所述讀出數(shù)據(jù)步驟在81. 92MHz恢復(fù)時(shí)鐘下工作。
[0063] 進(jìn)一步的,所述將接收到的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行排序、丟包處理的步驟中,以補(bǔ)空包方式 讀出是指將數(shù)據(jù)設(shè)置為〇讀出,即將該數(shù)據(jù)包對(duì)應(yīng)數(shù)據(jù)位設(shè)置為0x00,并將該數(shù)據(jù)按照數(shù) 據(jù)位大小補(bǔ)充到讀出序列中,以避免讀出數(shù)據(jù)出現(xiàn)時(shí)延。
[0064] 與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果:本發(fā)明提供的用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào) 整方法采用針對(duì)數(shù)據(jù)序列號(hào)采樣計(jì)數(shù)的方式實(shí)現(xiàn)數(shù)據(jù)的時(shí)鐘自適應(yīng)恢復(fù),恢復(fù)所需時(shí)間 短,恢復(fù)精度高;在對(duì)時(shí)鐘進(jìn)行調(diào)整的過(guò)程中采用離散插入脈沖方式,使得時(shí)鐘調(diào)整更加平 穩(wěn),時(shí)鐘脈沖抖動(dòng)小,采用本發(fā)明系統(tǒng)實(shí)現(xiàn)的2. 048MHz恢復(fù)時(shí)鐘精度高達(dá)lOppb,很好滿足 網(wǎng)絡(luò)數(shù)據(jù)收發(fā)同步的目的。
[0065]
【專利附圖】
【附圖說(shuō)明】: 圖1為【背景技術(shù)】中TDM數(shù)據(jù)分組傳送示意圖。
[0066] 圖2為本發(fā)明網(wǎng)絡(luò)時(shí)鐘恢復(fù)系統(tǒng)結(jié)構(gòu)示意圖。
[0067] 圖3為本發(fā)明離散補(bǔ)償調(diào)整系統(tǒng)結(jié)構(gòu)示意圖。
[0068] 圖4為本發(fā)明數(shù)據(jù)緩存模塊結(jié)構(gòu)示意圖。
[0069] 圖5為本發(fā)明網(wǎng)絡(luò)數(shù)據(jù)時(shí)鐘恢復(fù)方法的流程圖。
[0070] 圖6為本發(fā)明離散補(bǔ)償調(diào)整方法流程圖。
[0071] 圖7為本發(fā)明網(wǎng)絡(luò)數(shù)據(jù)計(jì)數(shù)流程圖。
[0072] 圖8為本發(fā)明實(shí)施例2中分階段恢復(fù)時(shí)鐘頻率流程圖。
[0073] 圖9為本發(fā)明實(shí)施例3中分階段恢復(fù)時(shí)鐘頻率流程圖。
[0074] 圖10為本發(fā)明實(shí)施例中抖動(dòng)緩存模塊寫入數(shù)據(jù)流程圖。
[0075] 圖11為本發(fā)明實(shí)施例中抖動(dòng)緩慢模塊讀出數(shù)據(jù)流程圖。
[0076] 圖中標(biāo)記:1_數(shù)據(jù)時(shí)鐘分徑模塊,2-數(shù)據(jù)緩存模塊,21-寫入控制模塊,22-抖動(dòng)緩 存模塊,23-讀出控制模塊,24-寫基準(zhǔn)時(shí)鐘產(chǎn)生模塊,25-讀恢復(fù)時(shí)鐘產(chǎn)生模塊,26-數(shù)據(jù)包 計(jì)數(shù)模塊,3-離散補(bǔ)償調(diào)整系統(tǒng),31-控制模塊,32-計(jì)數(shù)器模塊,33-偏差計(jì)算模塊,34-時(shí) 鐘調(diào)整模塊,4-并串處理模塊。
【具體實(shí)施方式】
[0077] 下面結(jié)合具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)描述。但不應(yīng)將此理解為本發(fā)明 上述主題的范圍僅限于以下的實(shí)施例,凡基于本
【發(fā)明內(nèi)容】
所實(shí)現(xiàn)的技術(shù)均屬于本發(fā)明的范 圍。 實(shí)施例1 :如圖2所不,本實(shí)施例提供一種恢復(fù)精度1?、恢復(fù)所需時(shí)間短的基于TDM的 網(wǎng)絡(luò)時(shí)鐘恢復(fù)系統(tǒng);包括數(shù)據(jù)時(shí)鐘分徑模塊1、數(shù)據(jù)緩存模塊2、離散補(bǔ)償調(diào)整系統(tǒng)3、并串 處理模塊4 ;所述數(shù)據(jù)時(shí)鐘分徑模塊1分別與所述數(shù)據(jù)緩存模塊2、離散補(bǔ)償調(diào)整系統(tǒng)連接 3 ;所述數(shù)據(jù)緩存模塊2、所述離散補(bǔ)償調(diào)整系統(tǒng)3均與所述并串處理模塊4連接。
[0078] 所述數(shù)據(jù)時(shí)鐘分徑模塊1用于將從分組網(wǎng)絡(luò)接收到的網(wǎng)絡(luò)數(shù)據(jù)中的控制字部分 送入離散補(bǔ)償調(diào)整系統(tǒng)3。
[0079] 所述數(shù)據(jù)緩存模塊2用于對(duì)所述網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行排序、丟包處理。
[0080] 所述離散補(bǔ)償調(diào)整系統(tǒng)3用用于接收所述網(wǎng)絡(luò)數(shù)據(jù)的控制字部分,并計(jì)算、調(diào)整 所述網(wǎng)絡(luò)數(shù)據(jù)的恢復(fù)時(shí)鐘。
[0081] 所述并串處理模塊4用于將所述經(jīng)過(guò)排序、丟包處理的網(wǎng)絡(luò)數(shù)據(jù)和計(jì)算調(diào)整出的 恢復(fù)時(shí)鐘頻率進(jìn)行并串處理,從而實(shí)現(xiàn)所述網(wǎng)絡(luò)數(shù)據(jù)時(shí)鐘恢復(fù)。
[0082] 進(jìn)一步的,如圖3所示,所述離散補(bǔ)償調(diào)整系統(tǒng)3包括控制模塊31、計(jì)數(shù)器模塊 32、偏差計(jì)算模塊33和時(shí)鐘調(diào)整模塊34 ;所述控制模塊31分別與所述計(jì)數(shù)器模塊32和偏 差計(jì)算模塊連接33 ;所述偏差計(jì)算模塊33與所述時(shí)鐘調(diào)整模塊34連接;所述時(shí)鐘調(diào)整模 塊34的輸出端與所述計(jì)數(shù)器模塊32連接,所述時(shí)鐘調(diào)整模塊34的輸出端與所述計(jì)數(shù)器模 塊32連接。
[0083] 所述控制模塊31用于控制各個(gè)模塊的運(yùn)行;所述計(jì)數(shù)器模塊32用于根據(jù)所述時(shí) 鐘調(diào)整模塊34輸出的當(dāng)前恢復(fù)時(shí)鐘頻率對(duì)接收到的數(shù)據(jù)進(jìn)行計(jì)數(shù);所述偏差計(jì)算模塊33 用于計(jì)算當(dāng)前恢復(fù)時(shí)鐘頻率的時(shí)鐘偏差;所述時(shí)鐘調(diào)整模塊34用于根據(jù)所述偏差計(jì)算模 塊的計(jì)算結(jié)果調(diào)整數(shù)據(jù)的恢復(fù)時(shí)鐘,并將當(dāng)前恢復(fù)時(shí)鐘輸出。
[0084] 進(jìn)一步的,所述偏差計(jì)算模塊33包括時(shí)鐘計(jì)數(shù)值累加模塊,時(shí)鐘采樣次數(shù)累加模 塊、平均時(shí)鐘計(jì)數(shù)計(jì)算模塊和平均時(shí)鐘計(jì)數(shù)對(duì)比模塊。
[0085] 所述時(shí)鐘計(jì)數(shù)值累加模塊用于累加單一計(jì)算周期內(nèi)的時(shí)鐘計(jì)數(shù)累加值。
[0086] 所述時(shí)鐘采樣次數(shù)模塊用于記錄單一計(jì)算周期內(nèi)實(shí)際采樣次數(shù)。
[0087] 平均時(shí)鐘計(jì)數(shù)計(jì)算模塊用于計(jì)算并存儲(chǔ)單一計(jì)算周期內(nèi)的平均時(shí)鐘計(jì)數(shù),所述單 一計(jì)算周期內(nèi)的平均時(shí)鐘計(jì)數(shù)=單一計(jì)算周期內(nèi)的時(shí)鐘計(jì)數(shù)累加值/單一計(jì)算周期內(nèi)實(shí)際 采樣次數(shù)。
[0088] 所述平均時(shí)鐘計(jì)數(shù)對(duì)比模塊用于對(duì)比當(dāng)前時(shí)鐘周期內(nèi)平均時(shí)鐘計(jì)數(shù)與上一時(shí)鐘 周期內(nèi)的平均時(shí)鐘計(jì)數(shù)的大小。
[0089] 進(jìn)一步的,所述時(shí)鐘調(diào)整模塊34中包括基準(zhǔn)脈沖產(chǎn)生模塊、恢復(fù)時(shí)鐘產(chǎn)生模塊和 脈沖增減模塊;所述基準(zhǔn)脈沖產(chǎn)生模塊用于產(chǎn)生基準(zhǔn)脈沖;所述恢復(fù)時(shí)鐘產(chǎn)生模塊用于根 據(jù)所述基準(zhǔn)脈沖產(chǎn)生當(dāng)前恢復(fù)時(shí)鐘;所述脈沖增減模塊用于根據(jù)所述偏差計(jì)算模塊的計(jì)算 結(jié)果對(duì)當(dāng)前恢復(fù)時(shí)鐘包含的基準(zhǔn)脈沖進(jìn)行增減操作。
[0090] 本實(shí)施例中,所述基準(zhǔn)脈沖產(chǎn)生模塊用于產(chǎn)生327. 68MHz基準(zhǔn)脈沖,并用以恢復(fù) 2. 048MHz時(shí)鐘頻率。
[0091] 優(yōu)選的,所述計(jì)數(shù)器模塊32中采用遞減的方式實(shí)現(xiàn)接收數(shù)據(jù)的計(jì)數(shù)。
[0092] 進(jìn)一步的,如圖4所示,本實(shí)施例中數(shù)據(jù)緩存模塊2包括寫入控制模塊21、讀出控 制模塊23、抖動(dòng)緩存模塊22,所述寫入控制模塊21的輸入端與數(shù)據(jù)接收端口(所述數(shù)據(jù)分 徑模塊1的輸出端)連接,所述寫入控制模塊21的輸出端與所述抖動(dòng)緩存模塊22連接,所 述抖動(dòng)緩存模塊22還與所述讀出控制模塊23連接;所述寫入控制模塊21用于控制網(wǎng)絡(luò)數(shù) 據(jù)的寫入;所述抖動(dòng)緩存模塊22用于存儲(chǔ)所述網(wǎng)絡(luò)數(shù)據(jù);所述讀出控制模塊23用于控制 所述抖動(dòng)緩存模塊中網(wǎng)絡(luò)數(shù)據(jù)的讀出,所述讀出控制模塊23中設(shè)置有讀指針,所述讀指針 由系統(tǒng)第一次收到的網(wǎng)絡(luò)數(shù)據(jù)序列號(hào)SEQ初始化,開(kāi)始讀取操作后,每讀完一個(gè)數(shù)據(jù)包,所 述讀指針會(huì)加1操作指向下一數(shù)據(jù)包。
[0093] 進(jìn)一步的,所述抖動(dòng)緩存模塊22包括標(biāo)志存儲(chǔ)模塊和數(shù)據(jù)存儲(chǔ)模塊,所述標(biāo)志存 儲(chǔ)模塊包括寫讀標(biāo)志存儲(chǔ)模塊和序列號(hào)存儲(chǔ)模塊;所述數(shù)據(jù)存儲(chǔ)模塊用于存儲(chǔ)所述網(wǎng)絡(luò)數(shù) 據(jù)的凈荷部分;所述讀寫標(biāo)志存儲(chǔ)模塊用于存儲(chǔ)與凈荷部分一一對(duì)應(yīng)的寫讀標(biāo)志;所述序 列號(hào)存儲(chǔ)模塊用于存儲(chǔ)網(wǎng)絡(luò)數(shù)據(jù)的序列號(hào)部分。本實(shí)施例中,抖動(dòng)緩存模塊按512ms計(jì)算, 當(dāng)傳輸2. 048MHz網(wǎng)絡(luò)數(shù)據(jù)按1幀封裝時(shí)(1幀時(shí)長(zhǎng)為125 us),則所述抖動(dòng)緩存模塊的深 度=512*1000/125=4096,即所述抖動(dòng)緩存模塊可同時(shí)緩存4096幀數(shù)據(jù)。
[0094] 進(jìn)一步的,所述寫入控制模塊21還連接有寫基準(zhǔn)時(shí)鐘產(chǎn)生模塊24,所述讀出控制 模塊23還連接有讀恢復(fù)時(shí)鐘產(chǎn)生模塊25,所述寫基準(zhǔn)時(shí)鐘產(chǎn)生模塊24用于產(chǎn)生控制所述 寫入控制模塊21的基準(zhǔn)時(shí)鐘;所述讀恢復(fù)時(shí)鐘產(chǎn)生模塊25用于產(chǎn)生控制所述讀出控制模 塊23的恢復(fù)時(shí)鐘。
[0095] 進(jìn)一步的,為了防止抖動(dòng)緩存模塊中存儲(chǔ)的數(shù)據(jù)逸出,在所述抖動(dòng)緩存模塊存儲(chǔ) 一半時(shí)開(kāi)始讀出數(shù)據(jù)操作,即從接收第一幀數(shù)據(jù)包開(kāi)始后156ms開(kāi)始讀出數(shù)據(jù)操作。
[0096] 優(yōu)選的,寫基準(zhǔn)時(shí)鐘產(chǎn)生模塊24產(chǎn)生81. 92MHz的基準(zhǔn)時(shí)鐘,其由327. 68MHz基準(zhǔn) 脈沖分頻生成,讀恢復(fù)時(shí)鐘產(chǎn)生模塊25產(chǎn)生81. 9281. 92MHz的恢復(fù)時(shí)鐘,其由2. 048MHz恢 復(fù)時(shí)鐘倍頻生成。
[0097] 進(jìn)一步的,所述讀出控制模塊還連接有數(shù)據(jù)包計(jì)數(shù)模塊26,所述數(shù)據(jù)包計(jì)數(shù)模塊 25用于記錄收到的正常包、重復(fù)包、延時(shí)包、丟包的數(shù)量。
[0098] 實(shí)施例2 :本實(shí)施例同時(shí)提供一種恢復(fù)精度高、恢復(fù)所需時(shí)間短的基于TDM的網(wǎng) 絡(luò)時(shí)鐘恢復(fù)方法,如圖5所示,包含以下步驟:包含步驟S100:將待傳送網(wǎng)絡(luò)數(shù)據(jù)按照指定 幀數(shù)進(jìn)行封裝。
[0099] 包含步驟S200 :將接收到的網(wǎng)絡(luò)數(shù)據(jù)中控制字部分分出,并計(jì)算、調(diào)整恢復(fù)時(shí)鐘。
[0100] 包含步驟S300 :將接收到的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行排序、丟包處理。
[0101] 包含步驟S400 :將所述經(jīng)過(guò)排序、丟包處理的網(wǎng)絡(luò)數(shù)據(jù)和計(jì)算調(diào)整出的恢復(fù)時(shí)鐘 頻率進(jìn)行并串處理,從而實(shí)現(xiàn)所述網(wǎng)絡(luò)數(shù)據(jù)時(shí)鐘恢復(fù)的步驟。
[0102] 進(jìn)一步的,如圖6所示,所述從控制字部分提取時(shí)序序列號(hào)依照當(dāng)前恢復(fù)時(shí)鐘進(jìn) 行計(jì)數(shù)的步驟S200即用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方法步驟中:包含步驟S210 :在單個(gè)計(jì) 算周期內(nèi),按照指定采樣周期tsam針對(duì)控制字部分進(jìn)行采樣計(jì)數(shù);所述單個(gè)計(jì)算周期內(nèi)包 含有1個(gè)以上的采樣周期t sam ;如本實(shí)施例中,采樣周期tsam=4ms,計(jì)算周期根據(jù)需要設(shè)定為 4096ms、16384ms、32768ms、65536ms、131072ms ;實(shí)際應(yīng)用中,計(jì)算周期越長(zhǎng),計(jì)算精度越高、 誤差越小,但在時(shí)鐘恢復(fù)領(lǐng)域,花費(fèi)總時(shí)間越少,說(shuō)明時(shí)鐘恢復(fù)效率越高,所以應(yīng)在保證恢 復(fù)精度高和誤差小的前提下,應(yīng)追求最短的總花費(fèi)時(shí)間。
[0103] 包含步驟S220 :計(jì)算單個(gè)計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù),所述計(jì)算周期內(nèi)平均時(shí)鐘計(jì) 數(shù)Sn=計(jì)算周期內(nèi)時(shí)鐘計(jì)數(shù)累加值/計(jì)算周期內(nèi)采樣次數(shù)。
[0104] 包含步驟S230:將當(dāng)前計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù)Sn與上個(gè)計(jì)算周期內(nèi)平均時(shí)鐘 計(jì)數(shù)S lri進(jìn)行比較。
[0105] 包含步驟S240將下個(gè)計(jì)算周期平均分為N個(gè)調(diào)整段的步驟,N為1以上的自然數(shù), 本實(shí)施例中,N取值為4、8、16、32,即每個(gè)計(jì)算周期均分為4個(gè)、8個(gè)、16個(gè)或32個(gè)調(diào)整段, 使得脈沖的增加或減少更加均勻,從而減少脈沖抖動(dòng)現(xiàn)象。
[0106] 包含步驟S250:根據(jù)比較結(jié)果對(duì)下個(gè)計(jì)算周期內(nèi)當(dāng)前恢復(fù)時(shí)鐘每個(gè)調(diào)整段包 含的基準(zhǔn)脈沖數(shù)進(jìn)行增減調(diào)整的步驟,每次增加或者減少的脈沖數(shù)量均為額定脈沖數(shù)量 MPnum; MPnum為根據(jù)需要預(yù)設(shè)的1以上的自然數(shù)。如本實(shí)施例中MPnum的取值可為2048、 1024、512、256、128、64、32、16、8、4、2、1。
[0107] 本實(shí)施例中,時(shí)鐘恢復(fù)脈沖由327.68MHz基準(zhǔn)脈沖經(jīng)過(guò)160分頻產(chǎn)生,用以恢 復(fù)網(wǎng)絡(luò)數(shù)據(jù)2.048MHz時(shí)鐘頻率;步驟S350中,根據(jù)計(jì)算周期取值的不同(可為4096ms、 16384ms、32768ms、65536ms、131072ms ),將額定脈沖數(shù)量MPnum個(gè)基準(zhǔn)脈沖脈沖增加或減少 到下一計(jì)算周期的各個(gè)調(diào)整段中。
[0108] 進(jìn)一步的,如圖7所示,步驟S210中,包含步驟S211 :在采樣開(kāi)始前設(shè)定時(shí)鐘計(jì)數(shù) 初始值。
[0109] 包含步驟S212 :依照當(dāng)前系統(tǒng)提供的時(shí)鐘頻率,按照指定采樣周期tsam對(duì)接收到 的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行采樣。
[0110] 包含步驟S213 :根據(jù)采樣結(jié)果,對(duì)時(shí)鐘計(jì)數(shù)初始值進(jìn)行增或減,從而實(shí)現(xiàn)計(jì)數(shù)。
[0111] 包含步驟S214 :在采樣周期結(jié)束后將所述時(shí)鐘計(jì)數(shù)值累加保存。
[0112] 包含步驟S215 :記錄采樣次數(shù)并重置時(shí)鐘計(jì)數(shù)初始值。
[0113] 進(jìn)一步的,步驟S210中,采用對(duì)時(shí)鐘計(jì)數(shù)初始值遞減的方式實(shí)現(xiàn)計(jì)數(shù),所述時(shí)鐘 計(jì)數(shù)初始值〉采樣周期t sam內(nèi)理論傳輸數(shù)據(jù)值* (計(jì)算周期/采樣周期tsam);所述計(jì)算周期 為根據(jù)需要設(shè)定的采樣周期tsam的整數(shù)倍,本實(shí)施例中,采樣周期為t sam=4ms,計(jì)算周期根據(jù) 需要設(shè)定為 4096ms、16384ms、32768ms、65536ms、131072ms ;當(dāng)采用 2. 048MHz 時(shí)鐘發(fā)送數(shù)據(jù) 時(shí),4ms內(nèi)理論傳輸數(shù)據(jù)值應(yīng)為8192bit由于本發(fā)明采用設(shè)定初始值后遞減方式實(shí)現(xiàn)計(jì)數(shù), 并保存采樣周期后的計(jì)數(shù)剩余值,這種情況下,如初始值設(shè)置過(guò)小,則可能造成初始值不夠 用,反之,如初始值過(guò)大,則可能造成計(jì)數(shù)剩余值累加值溢出,因此應(yīng)根據(jù)需要設(shè)定初始值, 本實(shí)施例中,所述時(shí)鐘計(jì)數(shù)初始值設(shè)定為100000000000000000000000 (二進(jìn)制)。
[0114] 進(jìn)一步的,步驟S210中,采樣周期tsam結(jié)束后,重置時(shí)鐘計(jì)數(shù)初始值的步驟中,包 含將本采樣周期時(shí)鐘計(jì)數(shù)剩余值與上一采樣周期時(shí)鐘計(jì)數(shù)剩余值進(jìn)行比較的步驟;如I本 采樣周期時(shí)鐘計(jì)數(shù)剩余值-上一采樣周期時(shí)鐘計(jì)數(shù)剩余值I >采樣周期tsam內(nèi)理論傳輸數(shù) 據(jù)值,則,下一采樣周期時(shí)鐘計(jì)數(shù)初始值設(shè)定為ceil( I本采樣周期時(shí)鐘計(jì)數(shù)剩余值-上一 采樣周期時(shí)鐘計(jì)數(shù)剩余值I /采樣周期tsam內(nèi)理論傳輸數(shù)據(jù)值)*采樣周期tsam內(nèi)理論傳輸 數(shù)據(jù)值+本采樣周期時(shí)鐘計(jì)數(shù)剩余值;否則下一采樣周期時(shí)鐘計(jì)數(shù)初始值設(shè)定為本采樣周 期時(shí)鐘計(jì)數(shù)剩余值+采樣周期t sam內(nèi)理論傳輸數(shù)據(jù)值。當(dāng)采用2. 048MHz時(shí)鐘發(fā)送數(shù)據(jù)時(shí), 4ms內(nèi)理論傳輸數(shù)據(jù)值應(yīng)為8192bit,即如I本采樣周期時(shí)鐘計(jì)數(shù)剩余值-上一采樣周期時(shí) 鐘計(jì)數(shù)剩余值I >8192,則,下一采樣周期時(shí)鐘計(jì)數(shù)初始值設(shè)定為ceil ( I本采樣周期時(shí)鐘 計(jì)數(shù)剩余值-上一采樣周期時(shí)鐘計(jì)數(shù)剩余值I /8192)*8192+本采樣周期時(shí)鐘計(jì)數(shù)剩余值; 否則下一采樣周期時(shí)鐘計(jì)數(shù)初始值設(shè)定為本采樣周期時(shí)鐘計(jì)數(shù)剩余值+8192。其中ceil () 為上取整函數(shù)(其返回大于或者等于指定表達(dá)式的最小整數(shù))。
[0115] 進(jìn)一步的,步驟S210中,單一采樣周期結(jié)束后,還包括判斷所述計(jì)算周期是否結(jié) 束的步驟:如所述計(jì)算周期沒(méi)有結(jié)束,則進(jìn)入下一采樣周期。
[0116] 如所述計(jì)算周期結(jié)束,則計(jì)算本計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù)Sn ;計(jì)算公式為:所述計(jì) 算周期內(nèi)平均時(shí)鐘計(jì)數(shù)Sn=本計(jì)算周期內(nèi)時(shí)鐘計(jì)數(shù)累加值/本計(jì)算周期內(nèi)采樣次數(shù);時(shí)鐘 計(jì)數(shù)累加值清零,采樣次數(shù)清零。
[0117] 進(jìn)一步的,步驟S210中,在單一計(jì)算周期結(jié)束后,還包括將本計(jì)算周期平均時(shí)鐘 計(jì)數(shù)S n與上一計(jì)算周期平均時(shí)鐘計(jì)數(shù)Slri進(jìn)行比較的步驟。
[0118] 如Sn> Slri,則發(fā)出調(diào)快時(shí)鐘頻率指令;否則發(fā)出調(diào)慢時(shí)鐘頻率指令。
[0119] 進(jìn)一步的,步驟S210中,在單一計(jì)算周期結(jié)束后,還包括將本計(jì)算周期平均時(shí)鐘 計(jì)數(shù)S n與上一計(jì)算周期平均時(shí)鐘計(jì)數(shù)Slri進(jìn)行比較的步驟:如|sn-Slri I >收斂失敗標(biāo)識(shí) 值Fail,則發(fā)出本次時(shí)鐘恢復(fù)失敗的信號(hào);所述收斂失敗標(biāo)識(shí)值Fail為根據(jù)需要設(shè)定的大 于1的自然數(shù),如本實(shí)施例中收斂失敗標(biāo)識(shí)值Fail可為1024或2048或4096。
[0120] 進(jìn)一步的,步驟250中,如Sn> Slri,則下個(gè)計(jì)算周期內(nèi)當(dāng)前恢復(fù)時(shí)鐘每個(gè)調(diào)整 段的基準(zhǔn)脈沖數(shù)減少頂Pnum個(gè)(MP num根據(jù)階段需要可設(shè)定為2048、1024、512、256、128、 64、32、16、8、4、2、1),否則所述下個(gè)計(jì)算周期內(nèi)當(dāng)前恢復(fù)時(shí)鐘每個(gè)調(diào)整段的基準(zhǔn)脈沖數(shù)增 加 MPnum個(gè);本實(shí)施例中,所述基準(zhǔn)脈沖為327. 68MHz基準(zhǔn)脈沖,并通過(guò)160分頻以恢復(fù) 2. 048MHz時(shí)鐘頻率;即所述增、減IMPnum個(gè)時(shí)鐘脈沖的操作均針對(duì)327. 68MHz基準(zhǔn)脈沖進(jìn) 行。
[0121] 進(jìn)一步的,步驟250中,每次增加的IMPnum個(gè)脈沖為離散的插入到原脈沖序列中; 或,每次減少的IMP num個(gè)脈沖為離散的從原脈沖序列中去除,這樣可以進(jìn)一步的減少因脈沖 增加或減少而造成的抖動(dòng)現(xiàn)象。
[0122] 進(jìn)一步的,如圖8所示,所述計(jì)算、調(diào)整時(shí)鐘頻率的步驟S200中,所述網(wǎng)絡(luò)時(shí)鐘恢 復(fù)方法按照時(shí)間先后和時(shí)鐘收斂速度分為快速收斂階段、慢速收斂階段和鎖定收斂階段三 個(gè)階段。
[0123] 所述快速收斂階段、慢速收斂階段、鎖定收斂階段均包含有一個(gè)以上的計(jì)算周期。
[0124] 本實(shí)施例中,所述快速收斂階段包含STEP0、STEP1、STEP2、STEP3、STEP4、STEP5六 個(gè)STEP段;每個(gè)STEP段均包含有1個(gè)以上的計(jì)算周期。
[0125] 慢速收斂階段包含 STEP6、STEP7、STEP8、STEP9、STEPlO 五個(gè) STEP 段;每個(gè) STEP 段均包含有1個(gè)以上的計(jì)算周期。
[0126] 鎖定收斂階段包含STEPll -個(gè)STEP段(STEP0至STEPll按時(shí)間先后依次進(jìn)行, 圖8中未顯出各STEP段,僅顯示包含各STEP段的快速收斂階段、慢速收斂階段、鎖定收斂 階段三個(gè)收斂階段)。
[0127] 其中,所述快速收斂階段的計(jì)算周期小于所述慢速收斂階段的計(jì)算周期,所述慢 速收斂階段的計(jì)算周期小于所述鎖定收斂階段的計(jì)算周期。
[0128] 所述離散補(bǔ)償調(diào)整方法還包含根據(jù)預(yù)設(shè)條件判斷是否進(jìn)入下一收斂階段或下一 STEP段的步驟。
[0129] 如,本實(shí)施例中,所述預(yù)設(shè)條件為本階段中增加時(shí)鐘脈沖次數(shù)的計(jì)算周期數(shù)>1, 同時(shí),減少時(shí)鐘脈沖次數(shù)的計(jì)算周期數(shù)>1 ;如滿足所述預(yù)設(shè)條件,則進(jìn)入下一收斂階段或 下一 STEP段,需要指出的是,在進(jìn)入下一收斂階段或下一 STEP段或下一計(jì)算周期時(shí),基準(zhǔn) 脈沖產(chǎn)生的恢復(fù)時(shí)鐘脈沖均為上一計(jì)算周期調(diào)整過(guò)的當(dāng)前恢復(fù)時(shí)鐘脈沖,而非原始未經(jīng)調(diào) 整的恢復(fù)時(shí)鐘脈沖。
[0130] 進(jìn)一步的,所述額定脈沖數(shù)量IMPnmi隨著所述計(jì)算周期的延長(zhǎng)而不斷減??;其中, 所述鎖定收斂階段的計(jì)算周期中,所述額定脈沖數(shù)量IMP num為1。
[0131] 各個(gè)收斂階段中各個(gè)STEP段計(jì)算周期、調(diào)整周期、調(diào)整段、額定脈沖數(shù)量MPnum的 對(duì)照表如表1 : 表1
【權(quán)利要求】
1. 一種用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方法,其特征在于,包含如下步驟: 包含在單個(gè)計(jì)算周期內(nèi),依照當(dāng)前恢復(fù)時(shí)鐘頻率按照指定采樣周期tsam對(duì)接收到的網(wǎng) 絡(luò)數(shù)據(jù)進(jìn)行采樣計(jì)數(shù)的步驟;所述單個(gè)計(jì)算周期內(nèi)包含有1個(gè)以上的采樣周期tsam; 包含計(jì)算單個(gè)計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù)的步驟,所述計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù)Sn=計(jì) 算周期內(nèi)時(shí)鐘計(jì)數(shù)累加值/計(jì)算周期內(nèi)采樣次數(shù); 包含將當(dāng)前計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù)Sn與上個(gè)計(jì)算周期內(nèi)平均時(shí)鐘計(jì)數(shù)sn_i進(jìn)行比較 的步驟; 包含將下個(gè)計(jì)算周期平均分為N個(gè)調(diào)整段的步驟,N為1以上的自然數(shù); 包含根據(jù)比較結(jié)果對(duì)下個(gè)計(jì)算周期內(nèi)當(dāng)前恢復(fù)時(shí)鐘的每個(gè)調(diào)整段的基準(zhǔn)脈沖數(shù)進(jìn)行 增減調(diào)整的步驟,每次增加或者減少的基準(zhǔn)脈沖數(shù)量均為額定脈沖數(shù)量IMPnUffl; IMP_為根 據(jù)需要預(yù)設(shè)的1以上的自然數(shù)。
2. 如權(quán)利要求1所述的用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方法,其特征在于,根據(jù)比較結(jié) 果對(duì)下個(gè)計(jì)算周期內(nèi)當(dāng)前恢復(fù)時(shí)鐘每個(gè)調(diào)整段的基準(zhǔn)脈沖數(shù)進(jìn)行增減調(diào)整的步驟中,如 Sn> Sn_i,則所述下個(gè)計(jì)算周期內(nèi)當(dāng)前恢復(fù)時(shí)鐘每個(gè)調(diào)整段的基準(zhǔn)脈沖減少IMPnUffl個(gè),否則 所述下個(gè)計(jì)算周期內(nèi)當(dāng)前恢復(fù)時(shí)鐘每個(gè)調(diào)整段的基準(zhǔn)脈沖數(shù)增加頂Pnuffl個(gè)。
3. 如權(quán)利要求1所述的用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方法,其特征在于,在對(duì)當(dāng)前恢 復(fù)時(shí)鐘包含的基準(zhǔn)脈沖進(jìn)行增減調(diào)整的步驟中,每次增加的IMPnum個(gè)脈沖為離散的插入到 原脈沖序列中;或,每次減少的IMPnum個(gè)脈沖為離散的從原脈沖序列中去除。
4. 如權(quán)利要求1所述的用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方法,其特征在于,所述網(wǎng)絡(luò)時(shí) 鐘恢復(fù)方法按照時(shí)鐘收斂速度和時(shí)間先后分為快速收斂階段、慢速收斂階段和鎖定收斂階 段; 所述快速收斂階段、慢速收斂階段、鎖定收斂階段均包含有一個(gè)以上的計(jì)算周期; 其中,所述快速收斂階段的計(jì)算周期小于所述慢速收斂階段的計(jì)算周期,所述慢速收 斂階段的計(jì)算周期小于所述鎖定收斂階段的計(jì)算周期; 所述離散補(bǔ)償調(diào)整方法還包含根據(jù)預(yù)設(shè)條件判斷是否進(jìn)入下一階段的步驟。
5. 如權(quán)利要求4所述的用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方法,其特征在于,所述預(yù)設(shè)條 件為本階段中增加時(shí)鐘脈沖次數(shù)的計(jì)算周期數(shù)>1,同時(shí),減少時(shí)鐘脈沖次數(shù)的計(jì)算周期數(shù) >1 ;如滿足所述預(yù)設(shè)條件,則進(jìn)入下一階段。
6. 如權(quán)利要求4、5任一項(xiàng)所述的用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方法,其特征在于,所 述額定脈沖數(shù)量IMPnUffl隨著所述計(jì)算周期時(shí)間的延長(zhǎng)而不斷減小;其中,所述鎖定收斂階 段的計(jì)算周期中,所述額定脈沖數(shù)量IMPnUffl為1。
7. 如權(quán)利要求6所述的用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方法,其特征在于,任意收斂階 段中,Sn%Sn_i進(jìn)行比較時(shí),如果|Sn- Sn_i | >收斂失敗標(biāo)識(shí)值Fail,則本次時(shí)鐘恢復(fù)終 止,返回快速收斂階段初始狀態(tài),重新開(kāi)始進(jìn)行時(shí)鐘恢復(fù)計(jì)算;所述收斂失敗標(biāo)識(shí)值Fail 為根據(jù)需要設(shè)定的大于1的自然數(shù)。
8. 如權(quán)利要求6所述的用于時(shí)鐘恢復(fù)的離散補(bǔ)償調(diào)整方法,其特征在于, 在快速收斂階段中,進(jìn)行比較時(shí),如果|Sn-Sn_i | >本階段最大額定脈沖數(shù) 量IMPnum*m,則本次時(shí)鐘恢復(fù)終止,返回快速收斂階段初始狀態(tài),重新開(kāi)始進(jìn)行時(shí)鐘恢復(fù) 計(jì)算; 在慢速收斂階段或鎖定收斂階段中,3"與511_1進(jìn)行比較時(shí),如果|Sn-S n_i | >本階段最 大額定脈沖數(shù)量頂PnUD*m,則本階段時(shí)鐘恢復(fù)終止,返回上一階段初始狀態(tài),重新開(kāi)始進(jìn) 行時(shí)鐘恢復(fù)計(jì)算; 其中,m為根據(jù)需要設(shè)定的大于2的自然數(shù)。
【文檔編號(hào)】H04L7/00GK104393979SQ201410761206
【公開(kāi)日】2015年3月4日 申請(qǐng)日期:2014年12月12日 優(yōu)先權(quán)日:2014年12月12日
【發(fā)明者】胡強(qiáng), 吳援明 申請(qǐng)人:成都朗銳芯科技發(fā)展有限公司