專利名稱:時間同步方法、系統(tǒng)和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及時間同步技術(shù),具體涉及時間同步方法、時間同步系統(tǒng),時 鐘源設(shè)備和待同步設(shè)備。
背景技術(shù):
在很多系統(tǒng)中,要求系統(tǒng)中各組成模塊時間同步。例如,在網(wǎng)絡(luò)存儲系 統(tǒng)中,同步時間是進(jìn)行數(shù)據(jù)存儲的重要信息,依賴精確的同步時間可以進(jìn)行 精準(zhǔn)的數(shù)據(jù)備份、災(zāi)難恢復(fù)等操作。如果系統(tǒng)各組成模塊的同步時間出現(xiàn)誤 差,則在數(shù)據(jù)恢復(fù)過程中將出現(xiàn)數(shù)據(jù)丟失、恢復(fù)失敗等嚴(yán)重的后果。目前主要釆用在系統(tǒng)中設(shè)置時鐘源,通過發(fā)送時鐘同步命令的方式實(shí)現(xiàn) 同步。該同步方式下,系統(tǒng)中的時鐘源單元將當(dāng)前時間作為同步時間攜帶在 時鐘同步命令中發(fā)送,該時鐘同步命令通過交換網(wǎng)絡(luò)到達(dá)系統(tǒng)中的待同步單地時鐘的校準(zhǔn)。其中,同步時間例如2007年12月12日8點(diǎn)45分02秒。 但該發(fā)送時鐘同步命令的同步方式缺點(diǎn)是,時鐘同步命令需要在系統(tǒng)中的交 換網(wǎng)絡(luò)中傳輸,依次到達(dá)各個待同步單元,由于傳輸時延的存在,待同步單 元接收同步時間的時刻將晚于時鐘源發(fā)送同步時間的時刻,因此待同步單元 接收到的同步時間不夠準(zhǔn)確。也正是由于傳輸時延的存在,各個待同步單元 無法同時接收到時鐘同步命令,導(dǎo)致同 一 系統(tǒng)中不同待同步單元的同步時間 不同,出現(xiàn)了同步誤差。例如,時鐘同步命令的同步時間精確到秒,那么, 當(dāng)系統(tǒng)中待同步單元l接收時間同步命令的時間為時刻1,待同步單元2接 收時間同步命令的時間為時刻2,且在時刻1與時刻2之間發(fā)生了秒的跳變, 則待同步單元1和待同步單元2之間的同步誤差為1秒,可見,在這種同步方式下,時間同步精度不夠高。目前已經(jīng)出現(xiàn)了 一種高精度的時間同步方案,但是該方案需要在系統(tǒng)中設(shè)置諸如全球定位系統(tǒng)(GPS)接收機(jī)的同步設(shè)備,用于分別給系統(tǒng)中的每 個待同步單元發(fā)送同步時間,使得每個待同步單元能夠接收到精確的同步時 間;該方案還可以在每個待同步單元中均設(shè)置GPS接收機(jī),待同步單元通 過GPS接收機(jī)接收精確同步時間,從而完成時間同步。但GPS接收才幾成本 較高,導(dǎo)致這種時間同步方案的實(shí)現(xiàn)成本較高。發(fā)明內(nèi)容有鑒于此,本發(fā)明提供了一種時間同步方法,用以將時鐘源的同步時間發(fā)送到待同步單元,該方法能夠?qū)崿F(xiàn)低成本、高精度的時間同步。所述同步時間由高位部分和低位部分構(gòu)成,所述時鐘源與待同步單元之間包括高時延通道以及低時延通道,該方法包括通過所述高時延通道向待同步單元發(fā)送同步時間的高位部分; 通過所述低時延通道向待同步單元發(fā)送同步時間的低位部分; 待同步單元接收到同步時間的高位部分時,從所述低時延通道上獲取當(dāng)前傳輸?shù)耐綍r間的低位部分;將所述高位部分和低位部分合成為本地同步時間。其中,所述同步時間高位部分的最小單位大于所述高時延通道的最大時 延。所述高時延通道為網(wǎng)絡(luò)交換通道,所述低時延通道為總線通道。分的步驟進(jìn)一步包括令低時延通道上的數(shù)據(jù)在0到所述同步時間的低位部 分能夠表示的最大時間值之間循環(huán)遞增。較佳地,所述向待同步單元發(fā)送同步時間的高位部分之前,進(jìn)一步包括 判斷當(dāng)前同步時間的低位部分加上預(yù)設(shè)最大傳輸時延是否大于或等于所述 同步時間的低位部分所能表示的最大時間值,如果是,等待同步時間的低位 部分跳變?yōu)?后,發(fā)送攜帶跳變后同步時間的高位部分;否則,直接執(zhí)行所述發(fā)送同步時間的高位部分的操作。較佳地,通過高時延通道發(fā)送的所述高位部分是攜帶在包括高位部分和 低位部分的同步時間中發(fā)送的。本發(fā)明還提供了 一種時間同步系統(tǒng),用以將時鐘源單元的同步時間發(fā)送 到待同步單元,該系統(tǒng)能夠?qū)崿F(xiàn)低成本、高精度的時間同步。該系統(tǒng)包括時鐘源單元和多個待同步單元,所述時鐘源單元和各待同步單元之間包括高時延通道以及低時延通道;所述同步時間由高位部分和低位 部分構(gòu)成;所述時鐘源單元,用于通過所述高時延通道向;f爭同步單元發(fā)送同步時間的 高位部分;通過所述低時延通道向待同步單元發(fā)送同步時間的低位部分;所述待同步單元,用于在接收到來自所述時鐘源單元的同步時間的高位 部分時,從所述低時延通道上獲取當(dāng)前傳輸?shù)耐綍r間的低位部分,將所獲 取的高位部分和低位部分合成為本地同步時間。其中,所述時鐘源單元包括高位發(fā)送模塊和低位發(fā)送模塊;所述高位發(fā)送模塊,用于將當(dāng)前時間作為同步時間,將同步時間的高位部 分?jǐn)y帶在時間同步命令中,通過所述高時延通道發(fā)送給各待同步單元,通知低 位發(fā)送模塊;所述低位發(fā)送模塊,用于在所述高位發(fā)送模塊的通知下,將當(dāng)前時間的低 位部分作為同步時間的低位部分,換算為預(yù),沒編碼-f各式的低時延通道數(shù)據(jù),通 過所述低時延通道發(fā)送給各待同步單元。較佳地,所述低位發(fā)送模塊進(jìn)一步在發(fā)送低位部分之后,令低時延通道上 的婆:據(jù)在0到所述低位部分能夠表示的最大時間值之間循環(huán)遞增。較佳地,所述時鐘源單元進(jìn)一步包括判斷模塊,用于在高位發(fā)送模塊發(fā)送 時間同步命令之前,判斷待發(fā)送同步時間低位加上預(yù)設(shè)最大傳輸時延是否超過 所述同步時間低位部分能夠表示的最大時間值,如果是,則確定等待,否則, 確定發(fā)送;將判斷結(jié)果發(fā)送給所述高位發(fā)送模塊;所述高位發(fā)送模塊進(jìn)一步接收判斷結(jié)果,當(dāng)判斷結(jié)果顯示為等待時,等待同步時間的低位部分跳變?yōu)?后,發(fā)送攜帶跳變后同步時間的高位部分的時間同步命令;當(dāng)判斷結(jié)果顯示發(fā)送時,則直接執(zhí)行所述發(fā)送操作。其中,所述待同步單元包括高位獲^^莫塊、低位獲^uf莫塊和合成模塊; 所述高位獲取溪塊,用于將接收自所述時鐘源單元的同步時間的高位部分發(fā)送給所述合成模塊,并通知低位獲取模塊;所述低位獲取模塊,用于在接收到通知時,從低延時通道上讀取預(yù)設(shè)編碼格式的低延時通道數(shù)據(jù),經(jīng)譯碼得到同步時間的低位部分,發(fā)送給合成模塊; 所述合成模塊,用于將所述同步時間的高位部分和低位部分合成為本地同步時間。其中,所述高時延通道為網(wǎng)絡(luò)交換通道,所述低時延通道為總線通道。 所述總線通道為串行總線通道或并行總線通道。本發(fā)明提供了一種時鐘源設(shè)備,用以向待同步單元提供同步時間,能夠 實(shí)現(xiàn)低成本、高精度的時間同步。所述時鐘源設(shè)備與待同步單元之間包括高時延通道和低時延通道;所述 同步時間由高位部分和j氐位部分構(gòu)成;該設(shè)備包括高位發(fā)送模塊和低位發(fā)送模塊;所述高位發(fā)送^^莫塊,用于通過所述高時延通道發(fā)送同步時間的高位部分, 并通知低位發(fā)送模塊;所述低位發(fā)送模塊,用于在高位發(fā)送模塊的通知下,通過所述低時延通 道發(fā)送同步時間的低位部分。本發(fā)明提供了 一種待同步設(shè)備,用以接收時鐘源單元提供的同步時間, 能夠?qū)崿F(xiàn)低成本、高精度的時間同步。該待同步設(shè)備與時鐘源單元之間包括高時延通道和低時延通道;所述同步 時間由高位部分和低位部分構(gòu)成;該待同步設(shè)備包括高位獲取模塊、低位獲取模塊和合成模塊;所述高位獲取模塊,用于從所述高時延通道接收同步時間的高位部分,并 發(fā)送給所述合成模塊,并通知低位獲取模塊;所述低位獲取模塊,用于在接收到通知時,從所述低時延通道上讀取同步時間的低位部分,發(fā)送給合成模塊;所述合成^^莫塊,用于將所述同步時間的高位部分和所述同步時間的低位 部分合成為本地同步時間。根據(jù)以上技術(shù)方案可見,本發(fā)明將同步時間分開傳輸,通過高時延通道 傳輸對傳輸時延不敏感的同步時間的高位部分,通過低時延通道傳輸對傳輸 時延很敏感的同步時間的低位部分,待同步單元在接收到同步時間的高位部 分時,將當(dāng)前從低時延通道上獲得的同步時間低位部分與高位部分合成,從 而得到精確的本地同步時間。由于低時延通道上的同步時間低位部分的傳輸 過程時延非常低,甚至可以忽略不計(jì),因此待同步單元能夠獲得精確的當(dāng)前 同步時間低位部分,經(jīng)與高位的組合,就得到了精確的同步時間,避免了現(xiàn) 有技術(shù)中時間同步命令在系統(tǒng)中的傳輸時延帶來的同步誤差。其次,低時延通道可以為總線通道,那么本發(fā)明只需要在系統(tǒng)中增加用 于發(fā)送同步時間低位部分的總線,避免了現(xiàn)有技術(shù)需要增加諸如GPS接收 機(jī)的同步設(shè)備帶來的時間同步成本高的問題。再次,時鐘源在發(fā)送同步時間高位之前,才艮據(jù)當(dāng)前同步時間與預(yù)設(shè)最大 傳輸延時之和判斷是否需要等待同步時間跳變后再執(zhí)行發(fā)送操作,從而避免 了因同步時間在發(fā)送過程中的異常跳變導(dǎo)致的較大同步誤差。此外,在發(fā)送高位部分時,直接發(fā)送包括高位部分和低位部分的同步時 間,減少了對原有時鐘源設(shè)備的修改。
圖1為本發(fā)明實(shí)施例中時間同步方法的流程圖。 圖2為本發(fā)明較佳實(shí)施例中時間同步方法的流程圖。 圖3為本發(fā)明實(shí)施例中時間同步系統(tǒng)的結(jié)構(gòu)示意圖。 圖4為本發(fā)明實(shí)施例中時鐘源設(shè)備的結(jié)構(gòu)示意圖。 圖5為本發(fā)明實(shí)施例中待同步設(shè)備的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖并舉實(shí)施例,對本發(fā)明進(jìn)行詳細(xì)描述。本發(fā)明提供了 一種用以將時鐘源的同步時間發(fā)送到待同步單元的時間 同步方案。該方案中,同步時間由高位部分和低位部分構(gòu)成,所述時鐘源與 待同步單元之間包括高時延通道以及低時延通道;通過高時延通道傳輸對傳輸時延不敏感的同步時間的高位部分,通過低時延通道傳輸對傳輸時延很敏 感的同步時間的低位部分,待同步單元利用低時延通道上的同步時間的低位 部分與同步時間的高位部分組合,從而得到精確的本地同步時間。其中,在劃分同步時間高位部分和低位部分,令同步時間高位部分的最 小單位大于高時延通道的最大時延。那么,同步時間高位部分在高時延通道 的傳輸過程中不會跳變,避免了高位部分的同步誤差。在實(shí)際中,時鐘源發(fā) 送同步時間的高位部分時,較佳地,直接發(fā)送包括高位部分和低位部分的同 步時間,這樣可以減少對時鐘源設(shè)備的修改。傳輸通道的時延高低是相對而言的。本發(fā)明可以采用總線通道或者紅外 線通道作為低時延通道來傳輸同步時間的低位部分。相對于總線通道和紅外 線通道,在現(xiàn)有技術(shù)中用以傳輸同步時間的網(wǎng)絡(luò)交換通道即為高時延通道。以下以網(wǎng)絡(luò)交換通道為高時延通道,以總線通道為低時延通道為例,舉 實(shí)施例對本發(fā)明的時間同步方案進(jìn)行詳細(xì)描述。時鐘源通過高時延通道發(fā)送 包括高位和低位的同步時間。圖1為本發(fā)明實(shí)施例中時間同步方法的流程圖,如圖l所示,該方法包 括以下步驟步驟101:系統(tǒng)中的時鐘源通過網(wǎng)絡(luò)交換通道發(fā)送同步時間的同時,在 自身與各待同步單元之間的總線上發(fā)送同步時間的低位部分,并實(shí)時刷新。本步驟中,同步時間是時鐘源攜帶在時間同步命令中通過所在系統(tǒng)的交 換網(wǎng)絡(luò)發(fā)送給各待同步單元的。同步時間低位部分的位數(shù)可以根據(jù)具體需要 靈活設(shè)置。步驟102:待同步單元接收到同步時間時,從總線上讀取同步時間的低 位部分。步驟103:利用讀取的同步時間的低位部分修正接收到的同步時間,合 得到本地同步時間。至此,本流程結(jié)束。同步時間的格式例如2007年12月12日8點(diǎn)45分02秒,該同步時間 是絕對時間。當(dāng)然本發(fā)明中的同步時間還可以是相對于一個基準(zhǔn)時間的相對 時間,例如32582秒。根據(jù)上述流程,采用圖l的處理方法,利用從總線上讀取的當(dāng)前同步時 間低位部分對接收到的同步時間進(jìn)行修正。由于總線上的同步時間是實(shí)時刷 新的,它根據(jù)時間變化而變化,總與當(dāng)前同步時間相吻合,因此各個待同步 單元總能得到準(zhǔn)確的同步時間,避免了現(xiàn)有技術(shù)中時間同步命令在系統(tǒng)中的 傳輸時延帶來的同步精度低的問題。以同步時間低位部分是秒為例,當(dāng)兩個 不同待同步單元分別在秒位跳變前后接收到攜帶2007年12月12日8點(diǎn)45 分02秒的時間同步命令,這兩個待同步單元不會直接利用2007年12月12 日8點(diǎn)45分02秒作為本地同步時間,而是從總線上讀取當(dāng)前秒的個位,利 用讀取的秒的個位々務(wù)正同步時間中秒的個位,以得到精確的本地同步時間, 從而提高了時間同步精度。同時,該方案只需要在系統(tǒng)中增加用于發(fā)送同步 時間低位部分的總線,避免了現(xiàn)有技術(shù)需要增加額外GPS接收機(jī)帶來的時 間同步成本高的問題。在實(shí)際中,也可以不采用定時刷新低位部分方式,而是在時鐘源發(fā)送高 位部分之后,延時一段預(yù)設(shè)時間,確保待同步單元接收到高位部分后,再將 當(dāng)前時間作為同步時間,發(fā)送同步時間的低位部分。那么,待同步單元利用 當(dāng)前讀取的低位部分修正接收到的同步時間后,仍然可以得到精確的本地同 步時間。圖2為本發(fā)明較佳實(shí)施例中時間同步方法的流程圖。如圖2所示,該方 法包括以下步驟步驟201:在系統(tǒng)中的時鐘源與各待同步單元之間設(shè)置總線。 步驟202:待同步單元通過交換網(wǎng)絡(luò)向時鐘源發(fā)送時間同步請求。 步驟203:時鐘源接收請求后,通過交換網(wǎng)絡(luò)發(fā)送攜帶同步時間的時間同步命令,同時將同步時間的低位換算為預(yù)設(shè)編碼格式的總線數(shù)據(jù),在總線上傳輸。其中,預(yù)設(shè)編碼格式可以根據(jù)實(shí)際需要指定,例如8421BCD編碼、 2421BCD編碼、5421BCD編碼,以及格雷碼等等。通常,可以采用較為常 用的8421BCD編碼作為預(yù)設(shè)編碼格式。8421BCD編碼的位數(shù)根據(jù)低位部分 的位數(shù)以及低位部分表示的時間單位確定。如果低位部分為l位且表示秒的 個位,其變化范圍為0到9,那么采用4位8421BCD碼表示;如果低位部 分為2位且表示秒的十位和個位,其變化范圍為0到59,那么采用6位 8421BCD碼表示;如果低位部分為2位且表示毫秒的十位和個位,其變化 范圍為0到99,那么采用7位8421BCD碼表示。為了減少總線上傳輸數(shù)據(jù)的長度,較佳地,將同步時間的最后一位作為 同步時間低位部分。本步驟中,總線可以是串行總線或者是并行總線。如果采用串行總線, 則總線數(shù)據(jù)在同一根總線上串行傳輸,那么讀取總線數(shù)據(jù)時,需要在同一條 總線上依次讀取總線數(shù)據(jù)的各位,才能獲得同步時間低位部分。如果采用并 行總線,則總線數(shù)據(jù)在多根總線上并行傳輸,那么讀取總線數(shù)據(jù)時,從多根 總線上同時讀取總線數(shù)據(jù)的各位,即可獲得同步時間低位部分。并行總線的 根數(shù)是根據(jù)編碼方式和低位部分的位數(shù)確定的。例如,如果低位部分為l位 且表示秒的個位,如果采用8421BCD編碼表示低位部分,則需要4根總線 進(jìn)行并行傳輸;如果低位部分為2位且表示毫秒的十位和個位,則需要7根 總線進(jìn)行并行傳輸;此外,時鐘源和待同步單元需要預(yù)先協(xié)商收發(fā)總線數(shù)據(jù) 的速率。步驟204:實(shí)時刷新總線數(shù)據(jù),令總線上的同步時間低位部分在0到同 步時間低位部分能夠表示的最大時間值之間循環(huán)遞增。本步驟中,如果總線數(shù)據(jù)表示秒的個位,秒的個位能夠表示的最大時間 值為9秒,刷新總線數(shù)據(jù)時,從當(dāng)前同步時間秒的個位數(shù)值開始,每隔一秒遞增l,總線上低位數(shù)值的變化范圍為0到9。步驟205:待同步單元接收到時間同步命令后,從中獲取同步時間;同 時從總線讀取預(yù)設(shè)編碼格式的總線數(shù)據(jù),通過譯碼得到同步時間低位部分。步驟206:將從總線獲取的同步時間低位部分和從時間同步命令獲取的 同步時間合成為本地同步時間。在實(shí)際中,時間同步命令中的同步時間可以包括低位,那么合成時,將 從總線讀取的同步時間〗氐位部分替換時間同步命令中同步時間的相應(yīng)^f氐位。 時間同步命令中的同步時間也可以不包括低位,那么合成時,將時間同步命 令中的同步時間作為高位與從總線獲取的同步時間低位部分合并,構(gòu)成本地 同步時間。待同步單元完成本地時間同步后可以通知時鐘源從總線上招t銷同步時 間低位部分。從以上所述可見,如果在時間同步命令傳輸過程中,低位部分從能夠表 示的最大時間值跳變到0,則待同步單元經(jīng)合成得到的本地同步時間將與實(shí) 際的時間有很大差異,產(chǎn)生了較大同步誤差。例如,時間同步命令中的同步 時間為2007年7月17日15點(diǎn)26分49秒,同步時間低位部分為秒的個位, 在傳輸過程中,總線上的數(shù)據(jù)跳變?yōu)?,那么經(jīng)合成得到本地時間為2007 年7月17日15點(diǎn)26分40秒,與實(shí)際同步時間的50秒有很大差異,發(fā)生 了異常跳變。為了避免異常跳變導(dǎo)致出現(xiàn)較大同步誤差,本發(fā)明采用如下方式解決 時鐘源在發(fā)送時間同步命令之前,先判斷待發(fā)送同步時間低位部分加上 預(yù)設(shè)的最大傳輸時延是否超過低位部分所能表示的最大時間值,如果是,則 等待同步時間低位部分跳變?yōu)镺后再發(fā)送,否則,直接發(fā)送。其中,最大傳 輸時延可以根據(jù)不同系統(tǒng)的具體情況確定,通常最大傳輸時延不會超過 50ms。仍以上述2007年7月17日15點(diǎn)26分49秒為待發(fā)送同步時間為例, 假設(shè)預(yù)先設(shè)定最大傳輸時延為l秒,則在發(fā)送前,時鐘源檢查同步時間低位 部分9秒加上最大傳輸時延1秒為10秒,已經(jīng)超過秒的個位能夠表示的最 大時間值,則等待同步時間的低位部分跳變?yōu)?,即同步時間跳變?yōu)?007 年7月17日15點(diǎn)26分50秒后,再進(jìn)行同步時間的發(fā)送,從而避免的異常 跳變。至此,本流程結(jié)束。下面舉一個實(shí)例。,叉設(shè)系統(tǒng)同步時間精確到秒的個位,采用8421BCD 編碼作為預(yù)設(shè)編碼格式,設(shè)置4根并行總線傳輸同步時間低位部分。時鐘源 在時間同步命令中攜帶同步時間為2007年7月17日15點(diǎn)26分47秒,然 后發(fā)送給請求時間同步的待同步單元,并將同步時間的低位7轉(zhuǎn)換為 8421BCD碼0111在4根并行總線上傳輸,并開始實(shí)時刷新總線數(shù)據(jù),令其 從0111開始逐秒遞增,變化范圍為0000到1001;在待同步單元從時間同 步命令中獲取同步時間同時,從4根總線上獲取8421BCD碼1000,經(jīng)譯碼 得到j(luò)氐位8,利用低位8修正從時間同步命令中獲耳又的同步時間2007年7 月17日15點(diǎn)26分47秒,得到本地同步時間為2007年7月17日15點(diǎn)26 分48秒??梢?,該待同步單元獲得同步時間是準(zhǔn)確的。假設(shè)同時有兩個模 塊請求時間同步,而且這兩個才莫塊接收時間同步命令時刻之間發(fā)生了 47秒 到48秒的跳變,但這兩個模塊通過讀取總線數(shù)據(jù),仍能夠獲得準(zhǔn)確的本地 時間。為了實(shí)現(xiàn)本發(fā)明時間同步方法,本發(fā)明提供了一種時間同步系統(tǒng),用以 將時鐘源的同步時間發(fā)送到待同步單元。圖3為本發(fā)明中時間同步系統(tǒng)的結(jié) 構(gòu)示意圖。如圖3所示,該系統(tǒng)包括時鐘源單元和m個待同步單元,其中m 為大于或等于l的整數(shù)。時鐘源單元與待同步單元之間設(shè)置有總線,總線在 圖3中用粗實(shí)線表示。連接時鐘源單元與待同步單元的細(xì)實(shí)線表示用于傳輸 命令和請求的網(wǎng)絡(luò)交換通道。其中,時鐘源單元,用于通過網(wǎng)絡(luò)交換通道向待同步單元發(fā)送同步時間,通過自身與各待同步單元之間的總線向待同步單元發(fā)送同步時間的低位部 分。待同步單元,用于在接收到來自時鐘源單元的同步時間的同時,從總線 上讀取同步時間的低位部分,利用所獲取的同步時間和讀取的同步時間低位 部分合成本地同步時間。具體地,圖4示出了本發(fā)明實(shí)施例中系統(tǒng)時鐘源設(shè)備,即圖3中時鐘源 單元的結(jié)構(gòu)示意圖。如圖4所示,該時鐘源設(shè)備包括高位發(fā)送模塊和低位發(fā) 送模塊,其中,高位發(fā)送模塊,用于在接收到來自待同步單元的時間同步請求時,將當(dāng) 前時間作為同步時間,將同步時間攜帶在時間同步命令中,通過網(wǎng)絡(luò)交換通 道發(fā)送給各待同步模塊,并通知低位發(fā)送模塊。低位發(fā)送模塊,用于在高位發(fā)送模塊的通知下,將當(dāng)前時間的低位部分 作為同步時間的低位部分在總線上傳輸。具體地,該低位發(fā)送模塊在收到通 知后,立刻將該同步時間的低位部分換算為預(yù)設(shè)編碼格式的總線數(shù)據(jù)在總線 上傳輸。并且,較佳地,該低位發(fā)送模塊實(shí)時刷新總線數(shù)據(jù),令總線上的同 步時間低位部分在0到該同步時間低位部分能夠表示的最大時間值之間循 環(huán)遞增?;蛘?,該低位發(fā)送模塊在收到通知后,等待一段預(yù)設(shè)時間,然后再 將執(zhí)行獲取低位部分并發(fā)送的操作。其中,總線在圖4中采用粗實(shí)線表示。在實(shí)際中,如圖4所示,該時鐘源設(shè)備還可以進(jìn)一步包括判斷單元,用 于在高位發(fā)送模塊發(fā)送時間同步命令之前,獲取待發(fā)送同步時間的低位部 分,判斷待發(fā)送的同步時間低位部分加上預(yù)設(shè)最大傳輸時延是否超過低位部 分所能表示的最大時間值,如果是,則確定等待,否則,確定發(fā)送,然后將 判斷結(jié)果發(fā)送給高位發(fā)送模塊。高位發(fā)送模塊進(jìn)一步接收判斷結(jié)果,當(dāng)判斷結(jié)果顯示為等待時,等待同 步時間的低位部分跳變?yōu)?后,發(fā)送攜帶跳變后同步時間的時間同步命令; 當(dāng)判斷結(jié)果顯示為發(fā)送時,則直接發(fā)送攜帶當(dāng)前同步時間的時間同步命令。圖5示出了本發(fā)明實(shí)施例中系統(tǒng)的待同步設(shè)備,即圖3中待同步單元的結(jié)構(gòu)示意圖。如圖5所示,該待同步設(shè)備包括高位獲取模塊,低位獲取模塊 以及合成模塊,其中,高位獲取模塊,接收來自時鐘源單元的時間同步命令,從中提取同步時 間并發(fā)送給合成模塊,并通知低位獲取模塊。低位獲取模塊,在接收到通知時,從總線上讀取同步時間的低位部分, 發(fā)送給合成模塊。具體地,低位獲取模塊從總線上讀取預(yù)設(shè)編碼格式的總線 數(shù)據(jù),并進(jìn)行譯碼,得到同步時間的低位部分。當(dāng)總線為串行總線時,低位 獲取模塊從一條總線上順序讀取總線數(shù)據(jù)各位,經(jīng)譯碼得到對應(yīng)的十進(jìn)制數(shù),作為同步時間低位部分;當(dāng)總線為并行總線時,低位獲取模塊從多根總 線上同時讀取總線數(shù)據(jù)各位,經(jīng)譯碼得到對應(yīng)的十進(jìn)制數(shù),作為同步時間低 位部分。其中總線在圖5中采用粗實(shí)線表示。合成模塊,用于利用從時間同步命令獲取的同步時間和從總線上讀取的 同步時間低位部分,合成本地同步時間。由以上所述可以看出,本發(fā)明所提供的時間同步方案能夠?qū)崿F(xiàn)低成本、 高精度的時間同步。綜上所述,以上僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的 保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改 進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1、一種時間同步方法,用以將時鐘源的同步時間發(fā)送到待同步單元,其特征在于,所述同步時間由高位部分和低位部分構(gòu)成,所述時鐘源與待同步單元之間包括高時延通道以及低時延通道,該方法包括通過所述高時延通道向待同步單元發(fā)送同步時間的高位部分;通過所述低時延通道向待同步單元發(fā)送同步時間的低位部分;待同步單元接收到同步時間的高位部分時,從所述低時延通道上獲取當(dāng)前傳輸?shù)耐綍r間的低位部分;將所述高位部分和低位部分合成為本地同步時間。
2、 如權(quán)利要求l所述的方法,其特征在于,所述同步時間高位部分的最小 單位大于所述高時延通道的最大時延。
3、 如權(quán)利要求l所述的方法,其特征在于,所述高時延通道為網(wǎng)絡(luò)交換通 道,所述低時延通道為總線通道。
4、 如權(quán)利要求l所述的方法,其特征在于,所述通過低時延通道向待同步 單元發(fā)送同步時間的低位部分為將所述同步時間的低位部分換算為預(yù)設(shè)編碼 格式的低時延通道數(shù)據(jù),在所述低時延通道上傳輸;所述從低時延通道上獲取當(dāng)前傳輸?shù)耐綍r間的低位部分為從低時延通 道上讀取預(yù)設(shè)編碼格式的低時延通道數(shù)據(jù),經(jīng)譯碼得到所述同步時間的低位部 分。
5、 如權(quán)利要求1所述的方法,其特征在于,所述通過所述低時延通道向待 同步單元發(fā)送同步時間的低位部分的步驟進(jìn)一步包括令低時延通道上的數(shù)據(jù) 在0到所述同步時間的低位部分能夠表示的最大時間值之間循環(huán)遞增。
6、 如權(quán)利要求l所述的方法,其特征在于,所述向待同步單元發(fā)送同步時 間的高位部分之前,進(jìn)一步包括判斷當(dāng)前同步時間的低位部分加上預(yù)設(shè)最大 傳輸時延是否大于或等于所述同步時間的低位部分所能表示的最大時間值,如 果是,等待同步時間的低位部分跳變?yōu)?后,發(fā)送攜帶跳變后同步時間的高位 部分;否則,直接執(zhí)行所述發(fā)送同步時間的高位部分的操作。
7、 如權(quán)利要求l所述的方法,其特征在于,通過高時延通道發(fā)送的所述高 位部分是攜帶在包括高位部分和低位部分的同步時間中發(fā)送的。
8、 一種時間同步系統(tǒng),包括時鐘源單元和多個^f寺同步單元,該系統(tǒng)用以將 時鐘源單元的同步時間發(fā)送到待同步單元,其特征在于,所述時鐘源單元和各 待同步單元之間包括高時延通道以及低時延通道;所述同步時間由高位部分和 l氐位部分構(gòu)成;所述時鐘源單元,用于通過所述高時延通道向待同步單元發(fā)送同步時間的 高位部分;通過所述低時延通道向待同步單元發(fā)送同步時間的低位部分;所述待同步單元,用于在接收到來自所述時鐘源單元的同步時間的高位部 分時,從所述低時延通道上獲取當(dāng)前傳輸?shù)耐綍r間的低位部分,將所獲取的 高位部分和低位部分合成為本地同步時間。
9、 如權(quán)利要求8所述的系統(tǒng),其特征在于,所述時鐘源單元包括高位發(fā)送 模塊和低位發(fā)送模塊;所述高位發(fā)送^^塊,用于將當(dāng)前時間作為同步時間,將同步時間的高位部 分?jǐn)y帶在時間同步命令中,通過所述高時延通道發(fā)送給各待同步單元,通知低 位發(fā)送模塊;所述低位發(fā)送模塊,用于在所述高位發(fā)送模塊的通知下,將當(dāng)前時間的低 位部分作為同步時間的低位部分,換算為預(yù)設(shè)編碼格式的低時延通道數(shù)據(jù),通 過所述低時延通道發(fā)送給各待同步單元。
10、 如權(quán)利要求9所述的系統(tǒng),其特征在于,所述低位發(fā)送模塊進(jìn)一步在 發(fā)送低位部分之后,令低時延通道上的數(shù)據(jù)在0到所述低位部分能夠表示的最 大時間值之間循環(huán)遞增。
11、 如權(quán)利要求9所述的系統(tǒng),其特征在于,所述高位發(fā)送模塊,進(jìn)一步 將同步時間的低位部分?jǐn)y帶在所述時間同步命令中。
12、 如權(quán)利要求9所述的系統(tǒng),其特征在于,所述時鐘源單元進(jìn)一步包括 判斷模塊,用于在高位發(fā)送模塊發(fā)送時間同步命令之前,判斷待發(fā)送同步時間 低位加上預(yù)設(shè)最大傳輸時延是否超過所述同步時間低位部分能夠表示的最大時間值,如果是,則確定等待,否則,確定發(fā)送;將判斷結(jié)果發(fā)送給所述高位發(fā) 送模塊;所述高位發(fā)送模塊進(jìn)一步接收判斷結(jié)果,當(dāng)判斷結(jié)果顯示為等待時,等待 同步時間的低位部分跳變?yōu)?后,發(fā)送攜帶跳變后同步時間的高位部分的時間 同步命令;當(dāng)判斷結(jié)果顯示發(fā)送時,則直接執(zhí)行所述發(fā)送操作。
13、 如權(quán)利要求8所述的系統(tǒng),其特征在于,所述待同步單元包括高位獲 取模塊、低位獲取模塊和合成模塊;所述高位獲取模塊,用于將接收自所述時鐘源單元的同步時間的高位部分 發(fā)送給所述合成模塊,并通知低位獲取模塊;所述低位獲取模塊,用于在接收到通知時,從低延時通道上讀取預(yù)設(shè)編碼 格式的低延時通道數(shù)據(jù),經(jīng)譯碼得到同步時間的低位部分,發(fā)送給合成模塊;所述合成模塊,用于將所述同步時間的高位部分和低位部分合成為本地同 步時間。
14、 如權(quán)利要求8至13任意一項(xiàng)所述的系統(tǒng),其特征在于,所述高時延通 道為網(wǎng)絡(luò)交換通道,所述低時延通道為總線通道。
15、 如權(quán)利要求14所述的系統(tǒng),其特征在于,所述總線通道為串行總線通 道或并行總線通道。
16、 一種時鐘源設(shè)備,用以向待同步單元提供同步時間,其特征在于,所 述時鐘源設(shè)備與待同步單元之間包括高時延通道和低時延通道;所述同步時間 由高位部分和^f氐位部分構(gòu)成;該設(shè)備包括高位發(fā)送模塊和低位發(fā)送模塊;所述高位發(fā)送模塊,用于通過所述高時延通道發(fā)送同步時間的高位部分, 并通知低位發(fā)送模塊;所述低位發(fā)送模塊,用于在高位發(fā)送模塊的通知下,通過所述低時延通道 發(fā)送同步時間的低位部分。
17、 如權(quán)利要求16所述的設(shè)備,其特征在于,所迷低位發(fā)送模塊進(jìn)一步在 發(fā)送所述低位部分之后,令低時延通道上的lt據(jù)在0到所述低位部分能夠表示的最大時間值之間循環(huán)遞增。
18、 如權(quán)利要求16所述的設(shè)備,其特征在于,該時鐘源設(shè)備進(jìn)一步包括判 斷模塊,用于在高位發(fā)送模塊發(fā)送時間同步命令之前,判斷待發(fā)送同步時間低 位加上預(yù)設(shè)最大傳輸時延是否超過所述同步時間低位部分能夠表示的最大時間 值,如果是,則確定等待,否則,確定發(fā)送;將判斷結(jié)果發(fā)送給所述高位發(fā)送 模塊;所述高位發(fā)送模塊進(jìn)一步接收判斷結(jié)果,當(dāng)判斷結(jié)果顯示為等待時,等待 同步時間的低位部分跳變?yōu)?后,發(fā)送跳變后同步時間的高位部分;當(dāng)判斷結(jié) 果顯示發(fā)送時,則直接執(zhí)行所述發(fā)送操作。
19、 一種待同步設(shè)備,用以接收時鐘源單元提供的同步時間,其特征在于, 該待同步設(shè)備與時鐘源單元之間包括高時延通道和低時延通道;所述同步時間 由高位部分和j氐位部分構(gòu)成;該待同步設(shè)備包括高位獲取模塊、低位獲取模塊和合成模塊;所述高位獲取4莫塊,用于從所述高時延通道接收同步時間的高位部分,并 發(fā)送給所述合成模塊,并通知低位獲取模塊;所述低位獲取模塊,用于在接收到通知時,從所述低時延通道上讀取同步 時間的低位部分,發(fā)送給合成模塊;所述合成模塊,用于將所述同步時間的高位部分和所述同步時間的低位部 分合成為本地同步時間。
全文摘要
本發(fā)明公開了一種時間同步方法,用以將時鐘源的同步時間發(fā)送到待同步單元,所述同步時間由高位部分和低位部分構(gòu)成,所述時鐘源與待同步單元之間包括高時延通道以及低時延通道;通過所述高時延通道向待同步單元發(fā)送同步時間的高位部分;通過所述低時延通道向待同步單元發(fā)送同步時間的低位部分;待同步單元接收到同步時間的高位部分時,從所述低時延通道上獲取當(dāng)前傳輸?shù)耐綍r間的低位部分;將所述高位部分和低位部分合成為本地同步時間。此外,本發(fā)明還公開了一種時間同步系統(tǒng)、一種時鐘源設(shè)備和一種待同步設(shè)備。使用本發(fā)明能夠?qū)崿F(xiàn)低成本、高精度的時間同步。
文檔編號H04J3/06GK101217328SQ20071030852
公開日2008年7月9日 申請日期2007年12月29日 優(yōu)先權(quán)日2007年12月29日
發(fā)明者劉介良, 輝 安, 賴守鋒 申請人:杭州華三通信技術(shù)有限公司