TWI873481B - 時脈同步方法及裝置、電子設備和儲存介質 - Google Patents
時脈同步方法及裝置、電子設備和儲存介質 Download PDFInfo
- Publication number
- TWI873481B TWI873481B TW111144130A TW111144130A TWI873481B TW I873481 B TWI873481 B TW I873481B TW 111144130 A TW111144130 A TW 111144130A TW 111144130 A TW111144130 A TW 111144130A TW I873481 B TWI873481 B TW I873481B
- Authority
- TW
- Taiwan
- Prior art keywords
- processing module
- clock
- count value
- timer
- phase
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 161
- 238000003860 storage Methods 0.000 title claims abstract description 27
- 238000012545 processing Methods 0.000 claims abstract description 769
- 230000001360 synchronised effect Effects 0.000 claims abstract description 95
- 230000008569 process Effects 0.000 claims description 48
- 230000010355 oscillation Effects 0.000 claims description 32
- 230000004044 response Effects 0.000 claims description 22
- 230000001427 coherent effect Effects 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 26
- 238000004891 communication Methods 0.000 description 17
- 239000013078 crystal Substances 0.000 description 16
- 230000006870 function Effects 0.000 description 15
- 238000004590 computer program Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 7
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 4
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 239000000758 substrate Substances 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 2
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 2
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
一種時脈同步方法及裝置、電子設備和儲存介質。該時脈同步方法包括:向第二處理模組發送觸發訊號,同時記錄發送觸發訊號時第一計時器當前的計數值作為第一計數值,其中,第二處理模組與第一處理模組屬於不同的時脈領域;從第二處理模組讀取第二計數值,其中,第二計數值為第二處理模組在接收到觸發訊號時,第二處理模組的第二計時器當前的計數值,第二計時器的計數值作為第二處理模組的定時基準且順序遞增;其中,第一計數值和第二計數值用於時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
Description
本發明的實施例涉及一種時脈同步方法、系統時脈同步方法、時脈同步裝置、電子設備和非暫態性電腦可讀儲存介質。
由於受到大型積體電路的系統限制,時常需要在多個不同的時脈頻率系統之間交換資料、在不同的時脈頻率系統之間通過輸入介面和輸出介面來接收、發送資料或處理非同步訊號等,也即在積體電路中可能存在多個時脈領域(Clock Domain),每個時脈領域為積體電路中由同一個時脈訊號控制的區域。
不同時脈領域對應的時脈訊號稱為非同步時脈。對於積體電路中相連的兩個模組,例如,每個模組可以由一些完成特定功能的電路邏輯構成,如果兩個模組分別由不同的時脈(也即非同步時脈)驅動,則兩個模組的時脈訊號稱為非同步時脈訊號(Asynchronous Interface),兩個模組屬於不同的時脈領域;如果兩個模組由同一個時脈驅動,則兩個模組的時脈訊號稱為同步時脈訊號(Synchronous Interface),兩個模組屬於一個時脈領域。
提供該內容部分以便以簡要的形式介紹構思,這些構思將在後面的具體實施方式部分被詳細描述。該內容部分並不旨在標識要求保護的技術方案的關鍵特徵或必要特徵,也不旨在用於限制所要求的保護的技術方案的範圍。
本發明至少一實施例提供一種時脈同步方法,用於第一處理模組,其中,所述第一處理模組包括第一計時器,所述第一計時器的計數值作為所述第一處理模組的定時基準且順序遞增,所述時脈同步方法包括:向第二處理模組發送觸發訊號,同時記錄發送所述觸發訊號時所述第一計時器當前的計數值作為第一計數值,其中,所述第二處理模組與所述第一處理模組屬於不同的時脈領域;從所述第二處理模組讀取第二計數值,其中,所述第二計數值為所述第二處理模組在接收到所述觸發訊號時,所述第二處理模組的第二計時器當前的計數值,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增;其中,所述第一計數值和所述第二計數值用於時脈補償,以使得所述第一處理模組所在的第一時脈領域與所述第二處理模組所在的第二時脈領域同步。
本發明至少一實施例提供一種時脈同步方法,用於第二處理模組,其中,所述第二處理模組包括第二計時器,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增,所述時脈同步方法包括:回應於接收到第一處理模組發送的觸發訊號,記錄所述第二計時器當前的計數值作為第二計數值,其中,所
述第二處理模組與所述第一處理模組屬於不同的時脈領域;其中,所述第二計數值用於結合第一計數值進行時脈補償,以使得所述第一處理模組所在的第一時脈領域與所述第二處理模組所在的第二時脈領域同步,所述第一計數值為所述第一處理模組向所述第二處理模組發送觸發訊號時,所述第一處理模組的第一計時器當前的計數值,所述第一計時器的計數值用於作為所述第一處理模組的定時基準且順序遞增。
本發明至少一實施例提供一種系統時脈同步方法,其中,所述系統包括第一處理模組和第二處理模組,所述第一處理模組包括第一計時器,所述第一計時器的計數值作為所述第一處理模組的定時基準且順序遞增,所述第二處理模組包括第二計時器,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增,所述第一處理模組和所述第二處理模組屬於不同的時脈領域,所述系統時脈同步方法包括:所述第一處理模組向所述第二處理模組發送觸發訊號,所述第一處理模組記錄在發送所述觸發訊號時所述第一計時器當前的計數值作為第一計數值,所述第二處理模組記錄在接收到所述觸發訊號時所述第二計時器當前的計數值作為第二計數值;其中,所述第一計數值和所述第二計數值用於時脈補償,以使得所述第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
本發明至少一實施例提供一種時脈同步裝置,用於第一處理模組,其中,所述第一處理模組包括第一計時器,所述第一計
時器的計數值作為所述第一處理模組的定時基準且順序遞增,所述時脈同步裝置包括:第一記錄單元,配置為向第二處理模組發送觸發訊號,同時記錄發送所述觸發訊號時所述第一計時器當前的計數值作為第一計數值,其中,所述第二處理模組與所述第一處理模組屬於不同的時脈領域;讀取單元,配置為從所述第二處理模組讀取第二計數值,其中,所述第二計數值為所述第二處理模組在接收到所述觸發訊號時,所述第二處理模組的第二計時器當前的計數值,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增;其中,所述第一計數值和所述第二計數值用於時脈補償,以使得所述第一處理模組所在的第一時脈領域與所述第二處理模組所在的第二時脈領域同步。
本發明至少一實施例提供一種時脈同步裝置,用於第二處理模組,其中,所述第二處理模組包括第二計時器,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增,所述時脈同步裝置包括:第二記錄單元,配置為回應於接收到第一處理模組發送的觸發訊號,記錄所述第二計時器當前的計數值作為第二計數值,其中,所述第二處理模組與所述第一處理模組屬於不同的時脈領域;其中,所述第二計數值用於結合第一計數值進行時脈補償,以使得所述第一處理模組所在的第一時脈領域與所述第二處理模組所在的第二時脈領域同步,所述第一計數值為所述第一處理模組向第二處理模組發送觸發訊號時,所述第一處理模組的第一計時器當前的計數值,所述第一計時器的計數值用於作為
所述第一處理模組的定時基準且順序遞增。
本發明至少一實施例提供一種電子設備,包括第一處理模組和第二處理模組,其中,所述第一處理模組包括第一計時器,所述第一計時器的計數值作為所述第一處理模組的定時基準且順序遞增,所述第二處理模組包括第二計時器,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增,所述第一處理模組和所述第二處理模組屬於不同的時脈領域,其中,所述第一處理模組配置為向所述第二處理模組發送觸發訊號,以及記錄在發送所述觸發訊號時所述第一計時器當前的計數值作為第一計數值,所述第二處理模組配置為記錄在接收到所述觸發訊號時所述第二計時器當前的計數值作為第二計數值;其中,所述第一計數值和所述第二計數值用於時脈補償,以使得所述第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
本發明至少一實施例提供一種電子設備,包括:記憶體,非暫態性地儲存有電腦可執行指令;處理器,配置為運行所述電腦可執行指令,其中,所述電腦可執行指令被所述處理器運行時實現根據本發明任一實施例所述的時脈同步方法或系統時脈同步方法。
本發明至少一實施例提供一種非暫態性電腦可讀儲存介質,其中,所述非暫態性電腦可讀儲存介質儲存有電腦可執行指令,所述電腦可執行指令被處理器執行時實現根據本發明任一實施例所述的時脈同步方法或系統時脈同步方法。
100:時脈同步裝置
101:第一記錄單元
102:讀取單元
103:第一時脈補償單元
200:時脈同步裝置
201:第二記錄單元
202:第二時脈補償單元
300:電子設備
310:第一處理模組
320:第二處理模組
400:電子設備
410:處理器
420:記憶體
500:儲存介質
510:電腦可讀指令
S10、S20、S301、S302、S401、S402、S50、S601、S602、S603:步驟
T0~Tn+1、T0’~Tn+1’:時刻
為了更清楚地說明本發明實施例的技術方案,下面將對實施例的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅涉及本發明的一些實施例,而非對本發明的限制。
圖1為一種中央處理器的層次結構示意圖;圖2為一種時脈同步過程示意圖;圖3為本發明至少一實施例提供的一種時脈同步方法的示意性流程圖;圖4為本發明至少一實施例提供的時脈同步方法的流程圖;圖5為本發明至少一實施例提供的時脈同步方法的交互過程示意圖;圖6為本發明至少一實施例提供的時脈同步方法的流程圖;圖7為本發明至少一實施例提供的另一種時脈同步方法的示意性流程圖;圖8A為本發明至少一實施例提供的系統時脈同步方法的交互過程示意圖;圖8B為本發明至少一實施例提供的補償處理模組之間傳輸延遲的示意性方塊圖;圖9A為本發明至少一實施例提供的一種時脈同步裝置的示意性方塊圖;圖9B為本發明至少一實施例提供的另一種時脈同步裝置的
示意性方塊圖;圖9C為本發明至少一實施例提供的一種電子設備的示意性方塊圖;圖10為本發明至少一實施例提供的一種電子設備的示意性方塊圖;圖11為本發明至少一實施例提供的一種非暫態性電腦可讀儲存介質的示意圖。
為了使得本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例的附圖,對本發明實施例的技術方案進行清楚、完整地描述。顯然,所描述的實施例是本發明的一部分實施例,而不是全部的實施例。基於所描述的本發明的實施例,本領域具通常知識者在無需創造性勞動的前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。
除非另外定義,本發明使用的技術術語或者科學術語應當為本發明所屬領域內具有一般技能的人士所理解的通常意義。本發明中使用的“第一”、“第二”以及類似的詞語並不表示任何順序、數量或者重要性,而只是用來區分不同的組成部分。“包括”或者“包含”等類似的詞語意指出現該詞前面的元件或者物件涵蓋出現在該詞後面列舉的元件或者物件及其等同,而不排除其他元件或者物件。“連接”或者“相連”等類似的詞語並非限
定於物理的或者機械的連接,而是可以包括電性的連接,不管是直接的還是間接的。“上”、“下”、“左”、“右”等僅用於表示相對位置關係,當被描述物件的絕對位置改變後,則該相對位置關係也可能相應地改變。為了保持本發明實施例的以下說明清楚且簡明,本發明省略了部分已知功能和已知部件的詳細說明。
對於非同步時脈領域,在一些場景下需要各個非同步時脈領域能夠同步調度和協助操作,也即需要保持各個非同步時脈領域的同步。
例如,對於中央處理器(Central Processing Unit,簡稱CPU),其實體層次結構示意圖如圖1所示。
如圖1所示,中央處理器包括2個物理插槽(socket),每個物理插槽可以插入一個CPU封裝(CPU Package或CPU socket),例如圖1中的Socket0和Socket1。
每個CPU封裝可以包括一個或多個CPU Die,CPU Die指的是處理器在生產過程中,從晶圓(Silicon Wafer)上切割下來的一個個小方塊,在切割下來之前,每個小方塊(Die)都需要經過各種加工,將電路邏輯刻到該Die上面,每個CPU Die可以看作一個帶有電路邏輯的處理單元。如圖1所示,每個CPU封裝包括兩個Die,例如Socket0包括Die0和Die1。
每個CPU Die可以包括一個或多個處理核(CPU Core),例如,如圖1所示,DIE0包括處理核Core0和處理核Core1。
當然,圖1僅給出一種中央處理器的示意,不同CPU的
CPU封裝數量、每個CPU封裝中CPU Die的數量、每個CPU Die中的處理核的數量可能不同,這裡不再贅述。
例如,由於各個CPU Die或者CPU Socket在物理上彼此獨立,通常各個CPU Die或者CPU Socket有自己的鎖相迴路(Phase Locked Loop,簡稱PLL)用於生成工作時脈訊號或參考時脈訊號。
例如,鎖相迴路可以接收時脈源提供的時脈訊號(例如100MHz),對時脈訊號倍頻生成工作時脈訊號(例如2.4GHz),CPU Die或者CPU Socket結合工作時脈訊號執行操作。例如,鎖相迴路還根據時脈訊號為系統計時器(system timer)在內的器件提供參考時脈訊號(例如100MHz),以供這些器件正常工作。
例如,CPU上的每個處理模組(例如CPU Die或者CPU Socket)包括各自的系統計時器,系統計時器用於提供定時參考。例如,系統計時器通常選擇晶片上最高準確度的計時器作為系統時間的定時基準,以避免在系統運行較長時間後出現大的時間偏移。例如,系統計時器的計數值作為所在處理模組的定時基準且順序遞增。例如,在系統重啟後,可以從RTC(real_time clock)重新獲取時間,以該時間為基準繼續進行週期性計數,以用於設置系統時脈,提供報警器或週期性的計時器。
例如,對於對稱多處理結構(Symmetrical Multi-Processing,簡稱SMP),多個處理模組(例如CPU Die或者CPU Socket)之間共用記憶體和匯流排結構,為了讓多個處理模組具有更好的同步調度和協助操作效率,需要讓多個處理模組的系統計
時器保持一樣的計數值,以滿足計時器(system tick)觸發調度的需求、IPC(Inter-Process Communication,進程間通訊)等待超時同步的需求、調試階段增加時間戳記(time stamp)的需求等。
圖2為一種時脈同步過程示意圖。應用於主處理模組(例如Master CPU Die)和從處理模組(例如Slave CPU Die)之間。
如圖2所示,在T0時刻,從處理模組向主處理模組發起同步請求,申請同步,T1時刻主處理模組收到請求並向從處理模組回應接受請求。在T2時刻,主處理模組開始發起同步,向從處理模組發送同步請求,T3時刻從處理模組接受到請求並向主處理模組回應接受主處理模組的請求。在T4時刻主處理模組接受到從處理模組的回應,完成一次握手。
在T5時刻,主處理模組發送同步計數值給從處理模組,在T6時刻從處理模組接收到該計數值,計數值與T5時刻、通訊延遲等有關。
在T7時刻,主處理模組再次發送同步請求,T8時刻從處理模組接受請求並回應主處理模組,同時更新自身的計數值。
例如,若從處理模組接收到了同步計數值,但同步失敗了(例如等待超時仍未收到對方回應),則在T9時刻重新開始一輪同步過程。
在圖2所示的同步過程中,需要先通過多個階段才能完成同步,同步失敗風險較高,而且由於處理模組之間的通訊需要通過晶片上匯流排或互聯匯流排實現,多個階段的通訊會增加匯流
排上的時脈抖動、延遲帶來的影響,同步準確度較低。
此外,在為主處理模組和從處理模組提供時脈訊號的時脈源為非同源時脈時,缺乏對於非同源時脈的高效處理方案。例如,對於非同源時脈,測量某操作所花費的時間時,執行該操作的執行緒可能從處理模組A變為處理模組B,則測量操作開始時間是基於處理模組A的時脈訊號,測量操作的結束時間是基於處理模組B的時脈訊號,這會由於處理模組A的時脈訊號與處理模組B的時脈訊號為非同步時脈訊號而產生時脈測量問題。例如,對於非同源時脈需要經常進行校準,當執行操作過程中進行了時間校準時,與時間測量/延遲相關的應用都會發生錯誤。
本發明至少一實施例提供一種時脈同步方法、時脈同步裝置、系統時脈同步方法、電子設備和非暫態性電腦可讀儲存介質。
該系統時脈同步方法包括:向第二處理模組發送觸發訊號,同時記錄發送觸發訊號時第一計時器當前的計數值作為第一計數值,其中,第二處理模組與第一處理模組屬於不同的時脈領域;從第二處理模組讀取第二計數值,其中,第二計數值為第二處理模組在接收到觸發訊號時,第二處理模組的第二計時器當前的計數值,第二計時器的計數值作為第二處理模組的定時基準且順序遞增;其中,第一計數值和第二計數值用於時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
在至少一個實施例中,第一處理模組和第二處理模組基於同一個觸發訊號凍結系統計時器當前的計數值,並分別將該當前的計數值記錄下來,從而通過各個系統計時器的計數值即可瞭解各個計時器之間的關係及偏差,利用該計數值即可完成時脈補償。該時脈同步方法大大減少了時脈同步所需要的階段,通過同一個觸發訊號將各個計時器的計數值記錄下來,得到計時器之間的關係和偏差,即使後續出現通訊失敗問題,也不會導致同步失敗,並且同步準確度大大提升,消除軟體干預,減少匯流排上的時脈抖動、延遲帶來的影響,將用於時脈同步的介面由兩個減少為1個,減少介面佔用,提高資源利用率。
下面結合附圖對本發明的實施例進行詳細說明,但是本發明並不限於這些具體的實施例。
圖3為本發明至少一實施例提供的一種時脈同步方法的示意性流程圖。
例如,該時脈同步方法用於第一處理模組,第一處理模組包括第一計時器,第一計時器的計數值作為第一處理模組的定時基準且順序遞增。例如,第一計時器為第一處理模組的系統計時器。
如圖3所示,本發明至少一實施例提供的時脈同步方法包括步驟S10至步驟S20。
例如,在步驟S10,向第二處理模組發送觸發訊號,同時記錄發送觸發訊號時第一計時器當前的計數值作為第一計數值。
例如,第一計數值記錄在第一處理模組的暫存器中。
例如,在步驟S20,從第二處理模組讀取第二計數值。
例如,第二計數值為第二處理模組在接收到觸發訊號時,第二處理模組的第二計時器當前的計數值,第二計時器的計數值作為第二處理模組的定時基準且順序遞增。
例如,第二計時器為第二處理模組的系統計時器。
例如,第二計數值記錄在第二處理模組的暫存器中。
例如,第一計數值和第二計數值用於時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,第一處理模組和第二處理模組可以為CPU Die或CPU Socket。例如,第一處理模組可以為圖1中的Die0,第二處理模組可以為圖1中的Die1,例如,第一處理模組可以為圖1中的Socket0,第二處理模組可以為圖1中的Socket1。當然,第一處理模組和第二處理模組可以為其他需要進行時脈同步的硬體模組。本發明對第一處理模組、第二處理模組的結構、功能不作具體限制。
例如,第二處理模組與第一處理模組屬於不同的時脈領域。
例如,積體電路包括基於第一時脈源確定的第一時脈領域和基於第二時脈源確定的第二時脈領域。例如,第一時脈領域為由第一時脈源控制的區域,第一處理模組位於第一時脈領域。例
如,第二時脈領域為由第二時脈源控制的區域,第二處理模組位於第二時脈領域。例如,圖1中的Die0和Die1屬於兩個不同的時脈領域,例如,Die0位於第一時脈領域,根據第一時脈源提供的第一參考時脈訊號工作,Die1位於第二時脈領域,根據第二時脈源提供的第二參考時脈訊號工作。
例如,第二處理模組與第一處理模組屬於不同的時脈領域表示它們屬於非同步時脈領域,產生原因可能有以下兩種:
1、第一處理模組包括第一鎖相迴路,第一鎖相迴路配置為接收第一時脈源提供的第一參考時脈訊號,並根據第一參考時脈訊號生成第一工作時脈訊號提供給第一處理模組;第二處理模組包括第二鎖相迴路,第二鎖相迴路配置為接收第一時脈源提供的第一參考時脈訊號,並根據第一參考時脈訊號生成第二工作時脈訊號提供給第二處理模組。也即,第一處理模組和第二處理模組具有各自的鎖相迴路,但鎖相迴路接收同源時脈訊號。由於通電時鎖定的時間相位關係是隨機的,不同鎖相迴路之間觸發緣(launch edge)和捕獲緣(capture edge)的相位關係也是隨機的,所以即使第一處理模組和第二處理模組本質上接收是的同源時脈訊號,但也需要作為非同步時脈領域來處理。
2、第一處理模組由第一時脈源提供參考時脈訊號,第二處理模組由第二時脈源提供參考時脈訊號,第一時脈源與第二時脈源為非同源時脈源。此時,第一處理模組包括第一鎖相迴路,第一鎖相迴路配置為接收第一時脈源提供的第一參考時脈訊號,並
根據第一參考時脈訊號生成第一工作時脈訊號提供給第一處理模組;第二處理模組包括第二鎖相迴路,第二鎖相迴路配置為接收第二時脈源提供的第二參考時脈訊號,並根據第二參考時脈訊號生成第二工作時脈訊號提供給第二處理模組。第一時脈訊號和第二時脈訊號為非同步時脈訊號。例如,對於非同源時脈源,儘管鎖相迴路能夠進行相位跟隨,由於不可能存在兩個晶振的頻率完全相同,因此非同源時脈源不僅相位不同,時脈頻率也不同。
需要說明的是,積體電路還可以包括第三時脈領域、第四時脈領域等,也即積體電路可以包括多個時脈領域,在進行時脈同步時,從多個處理模組中選擇由非同步時脈控制的兩個處理模組作為第一處理模組和第二處理模組,並基於本發明所提供的時脈同步方法對這兩個處理模組對應的非同步時脈進行時脈同步。
在本發明至少一實施例提供的時脈同步方法中,實現了第一計時器和第二計時器的快拍功能(snapshot),例如第一計時器和第二計時器接收到同一個觸發訊號(例如計時器trigger訊號或者通用輸入輸出介面的訊號)的上升邊緣,將當前第一計時器的計數值凍結至第一處理模組中的一個暫存器,將當前第二計時器的計數值凍結至第二處理模組中的一個暫存器,由於多個計時器只由一個訊號同步觸發,因而讀取各計時器用於儲存記錄的計數值的暫存器即可得到各個計時器的關係及偏差,從而確定補償值以進行時脈補償。例如,根據第一計數值和第二計數值的偏差進行時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模
組所在的第二時脈領域同步。
對於不同原因導致的非同步時脈領域,在時脈同步時的處理方法也不同,下面分別針對兩種不同原因導致的非同步時脈領域,結合附圖具體說明處理過程。
例如,以CPU為例,多個處理模組通常包括一個主處理模組(Master)和多個從處理模組,主處理模組通常進行調度和協助,將服務的執行委託給不同的從處理模組。
例如,以下實施例中以第一處理模組為從處理模組,第二處理模組為主處理模組為例進行描述。當然,本發明不限於此,本領域技術人員也可以根據實際需要選擇第一處理模組為主處理模組,第二處理模組為從處理模組,或者,第一處理模組和第二處理模組之間也可以沒有主從關係。
對於第一處理模組和第二處理模組採用同源時脈源提供參考時脈訊號,但分別具有不同的鎖相迴路的情形下,經過鎖相迴路處理後,第一處理模組和第二處理模組所接收的參考時脈訊號頻率相同,但存在固定的相位差。因此,第一處理模組只需要獲取第一計數值和第二計數值,根據第一計數值和第二計數值的差異補償第一計時器,補償後第一計時器和第二計時器會一直保持一致,非斷電重啟否則不需要再進行維護。例如,時脈補償可以在需要時,由軟體觸發執行一次,例如設置標誌位元,在標誌位元有效時進行補償,由於計數值的偏差已經通過同一觸發訊號記錄在暫存器中,消除了同步失敗問題。
例如,時脈同步在第一處理模組處於通電階段時執行,也即在第一處理模組剛剛通電、還沒有執行任何具體操作前執行。此時,由於第一處理模組還沒有執行具體操作,因此時脈補償可以不需考慮維持時間單調遞增問題。
當然,若時脈同步在第一處理模組工作時執行,也即第一處理模組已經執行具體操作,則需要考慮時間單調遞增問題,具體過程可以參考後文中非同源時脈源中的相關說明,這裡不再贅述。
圖4為本發明至少一實施例提供的時脈同步方法的流程圖。
如圖4所示,在步驟S20後,該時脈同步方法還包括步驟S301和步驟S302。
步驟S301,確定第一計數值和第二計數值的偏差。
步驟S302,根據偏差,對第一計時器進行補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,在步驟S301,偏差為第一計數值和第二計數值的差值。
例如,步驟S302可以包括:獲取第一計時器當前的計數值作為第三計數值;將偏差與第三計數值進行加和處理,得到更新計數值;將第一計時器的計數值更新為更新計數值,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,第一計數值為N1,第二計數值為N2,N1和N2為正整數。第一計數值和第二計數值的偏差例如為N1-N2。
例如,計算得到偏差後,可以在需要時進行時脈補償。例如,當指示進行時脈補償的標誌位元有效時,獲取第一計時器當前的計數值N3作為第三計數值,計算N3+N1-N2作為更新計數值,並將第一計時器的計數值更新為該更新計數值N3+N1-N2。例如,在指示進行時脈補償的標誌位元無效時,第一計時器的計數值按照參考時脈訊號頻率持續遞增,例如每個時脈週期加1。
例如,觸發訊號還配置為同時觸發第一處理模組的中斷,以執行時脈補償。例如,由於在時脈同源情況下,第一處理模組調整第一計時器的計數值即可,因此只需要第一處理模組觸發中斷,中斷當前的應用服務,執行時脈補償後再繼續執行應用服務。
圖5為本發明至少一實施例提供的時脈同步方法的交互過程示意圖。
如圖5所示,在T0時刻,第一處理模組向第二處理模組發起“assert trigger”,此時,第一處理模組在發送觸發訊號時記錄第一計時器當前的計數值作為第一計數值並儲存在第一暫存器中,例如,第一暫存器位於第一處理模組且可以靜態儲存數值;同時,第二處理模組在接收到該觸發訊號時記錄第二計時器當前的計數值作為第二計數值並儲存在第二暫存器中,例如,第二暫存器位於第二處理模組且可以靜態儲存數值。並且,觸發訊號還同時觸發了第一處理模組的中斷。
之後,在T1時刻,第一處理模組讀取第二處理模組中的第二暫存器的值,得到第二計數值,參考如上步驟S301和步驟S302的過程,進行時脈補償,具體過程不再贅述。
在該實施例中,由於時脈同源,所以第一處理模組和第二處理模組之間存在固定的相位差,根據第一計數值和第二計數值的偏差可以補償該固定相位差,並且補償一次即可,非掉電重啟不需要再維護,實現方式簡單有效,消除了同步失敗情況,大幅減少了時脈同步階段,第一處理模組和第二處理模組之間的通訊次數大大減少,降低了由於網路線或晶片上網路的時脈抖動、延遲等帶來的影響,時脈同步準確度得到了提升。
對於第一處理模組和第二處理模組採用非同源時脈源提供參考時脈訊號的情形下,時脈頻率和時脈相位都需要進行調整,並且隨時間增長時脈頻率會產生漂移。因此,在這種情況下需要定期進行時脈同步。
例如,時脈同步在第一處理模組處於工作狀態時定期執行,這裡工作狀態表示,第一處理模組已經完成通電初始化,能夠執行計算等任意操作。例如,這裡定期執行的時脈同步包括記錄第一計數值、第二計數值、時脈補償整個過程。
在時脈同步的整個過程中,也即在第一處理模組和第二處理模組的整個工作過程中,第一計時器和所述第二計時器的計數值始終保持單調遞增。不同于同源時脈源執行一次時脈同步即可,在非同源時脈源情況下,時脈同步需要定期執行,且第一處理
模組或第二處理模組的時脈需要始終保持單調遞增,否則對於時脈測量、延遲相關的應用服務會出現錯誤。
因此,在該實施例中,進行時脈同步時,獲得基於同一觸發訊號記錄的第一計數值和第二計數值後,需要根據第一計數值和第二計數值判斷第一處理模組和第二處理模組中時脈較快的一方,選擇較慢的一方進行時脈補償,以使得時脈向較快的一方靠攏。
圖6為本發明至少一實施例提供的時脈同步方法的流程圖。
如圖6所示,在步驟S20後,該時脈同步方法還包括步驟S401和步驟S402。
在步驟S401,比較第一計數值和第二計數值的大小關係。
在步驟S402,回應於第一計數值小於第二計數值,根據第一計數值和第二計數值的偏差進行時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,若第一計數值小於第二計數值,表示第一處理模組的時脈慢於第二處理模組的時脈,需要調整第一處理模組的時脈以向第二處理模組的時脈靠攏。
例如,步驟S402可以包括:確定第一計數值和第二計數值的偏差;根據偏差,對第一計時器進行補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
根據時脈源的類型不同,時脈補償的具體操作略有不同。下面針對不同類型的時脈源分別說明具體補償過程。
例如,對於能夠通過電壓控制時脈源的振盪頻率的晶振,例如壓控晶振(Voltage Control Crystal Oscillator,簡稱VCXO)或壓控溫補晶振(Voltage Control Temperature Compensate Crystal Oscillator,簡稱VCTCXO),通過向晶振的電壓控制管腳輸入調整電壓,可以控制晶振的輸出頻率,使得晶振的振盪頻率不斷向目標振盪頻率收斂,可以達到ppb(億分之一)級別準確度。
例如,在該實施例中,首先得到第一計數值和第二計數值的偏差,例如,偏差為第一計數值和第二計數值之差。
例如,在該實施例中,步驟S402可以包括:根據偏差,對第一計時器進行補償;根據偏差,確定調整電壓;根據調整電壓,對第一時脈源進行補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,根據偏差,對第一計時器進行補償的過程與同源時脈源類似,首先獲取第一計時器當前的計數值作為第三計數值;之後,將偏差與第三計數值進行加和處理,得到更新計數值;最後,將第一計時器的計數值更新為更新計數值。具體過程這裡不再贅述。
例如,根據偏差,確定調整電壓,可以包括:根據偏差,計算第一時脈源相對於第二時脈源的單位時間頻率偏差;根據單位時間頻率偏差,確定調整電壓。
例如,單位時間頻率偏差以ppm(百萬分之一)或ppb為單位,例如,單位時間頻率偏差可以為偏差與第一計時器的工作頻率的比值。
對於壓控振盪器,例如通過調整電壓可以改變變容二極體的電容,從而可以“牽引”晶振的頻率,達到頻率調製的目的。由此,根據單位時間頻率偏差,可以確定調整電壓,調整電壓與晶振自身的參數和單位時間頻率偏差相關。
例如,在一些實施例中,根據偏差,確定調整電壓,可以包括:獲取歷史頻率偏差,其中,歷史頻率偏差為最近一次用於計算調整電壓的單位時間頻率偏差;計算歷史頻率偏差和基於偏差計算的單位時間頻率偏差的加權和;根據加權和的計算結果確定調整電壓。
例如,調整電壓的計算公式如下:latest_ppm=(1.0-ema)*latest_ppm+ema*current_observed_ppm adj_vlt=f(latest_ppm)(公式1)
其中,latest_ppm表示歷史頻率偏差,current_observed_ppm表示基於偏差計算的單位時間頻率偏差,ema表示權值係數,這裡“=”表示賦值,例如將歷史頻率偏差和基於偏差計算的單位時間頻率偏差計算的加權和賦值給(更新)歷史頻率偏差,adj_vlt表示調整電壓,f(*)表示調整電壓與時脈偏差(加
權和)的函數關係。
例如,對於第一次執行調整電壓計算時,直接根據當前偏差計算調整電壓,並將當前偏差計算的單位時間頻率偏差作為歷史頻率偏差;在第二次執行調整電壓計算時,計算當前偏差計算的單位時間頻率偏差和歷史頻率偏差的加權和,根據加權和確定調整電壓,並將歷史頻率偏差更新為加權和;以此類推。
在該實施例中,根據權重係數可以調整歷史頻率偏差或當前的單位時間頻率偏差的比重,平緩調整電壓變化,平緩時脈變化,避免發生劇烈的時脈抖動。
例如,根據調整電壓,對第一時脈源進行補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步,可以包括:將調整電壓輸入第一時脈源的電壓控制管腳,以使得第一時脈源的振盪頻率向第二時脈源的振盪頻率方向收斂,並使得第一時脈源和第二時脈源同步。
例如,將調整電壓輸入第一時脈源的電壓控制管腳後,第一時脈源的振盪頻率會向第二時脈源的振盪頻率方向收斂,收斂可以達到ppb級別準確度,由此維護及時脈補償的週期也可以放鬆到比較久才做一次,例如間隔1秒執行一次時脈同步。例如,在收斂準確度達到50ppb時,對於工作頻率為100MHz的系統時脈,1秒做一次會產生5個週期(cycle)的誤差。
例如,觸發訊號還配置為同時觸發第一處理模組和第二處理模組的中斷,以執行時脈補償。例如,由於在時脈非同源情況
下,第一處理模組和第二處理模組都存在調整自身計時器的計數值及時脈頻率的可能性,因此需要第一處理模組和第二處理模組都觸發中斷,中斷各自當前的應用服務,執行時脈補償後再繼續執行應用服務。
在上述實施例中,由於可以通過電壓調控晶振的頻率,例如在第一處理模組的時脈慢於第二處理模組的時脈時,通過電壓控制使得第一時脈源的振盪頻率向第二時脈源的振盪頻率方向收斂,因此“定期”執行時脈同步的間隔可以設置較長,例如可以達到秒級,這對系統性能影響較小,不需要頻繁產生中斷影響系統性能,也不需要頻繁產生觸發訊號在第一處理模組和第二處理模組之間通訊,不會佔用晶片上網路或網路線的通訊資源。此外,消除了同步失敗情況,大幅減少了時脈同步階段,第一處理模組和第二處理模組之間的通訊次數大大減少,降低了由於網路線或晶片上網路的時脈抖動、延遲等帶來的影響,時脈同步準確度得到了提升。
例如,對於不能通過電壓控制時脈源的振盪頻率的晶振,例如簡單的XO(Crystal Oscillator)晶振,XO晶振的穩定性完全由晶體諧振器本身的固有特性決定。在這種情況下,時脈同步仍然在第一處理模組處於工作狀態時定期執行,在確定需要由第一處理模組進行時脈補償時,對第一計時器進行補償即可,具體過程與時脈源同源時相似,首先獲取第一計時器當前的計數值作為第三計數值;之後,將偏差與第三計數值進行加和處理,得到更新計數
值;最後,將第一計時器的計數值更新為更新計數值,完成一次時脈補償。具體過程這裡不再贅述。
此外,在該實施例中,觸發訊號還配置為同時觸發第一處理模組和第二處理模組的中斷,以執行時脈補償。
例如,在該實施例中,執行時脈同步的間隔時間與第一時脈源和第二時脈源之間的頻率差異有關,若第一時脈源和第二時脈源的頻率偏差較大,則補償間隔相對於能夠進行電壓控制的時脈源來說較短。
例如,本發明至少一實施例還提供另一種時脈同步方法。圖7為本發明至少一實施例提供的另一種時脈同步方法的示意性流程圖。
例如,該時脈同步方法應用於第二處理模組,第二處理模組包括第二計時器,第二計時器的計數值作為第二處理模組的定時基準且順序遞增。例如,第二計時器為第二處理模組的系統計時器。
關於第二處理模組和第二計時器的內容可以參考前述實施例中關於第一處理模組和第一計時器的相關介紹,這裡不再贅述。
例如,如圖7所示,本發明至少一實施例提供的時脈同步方法至少包括步驟S50。
在步驟S50,回應於接收到第一處理模組發送的觸發訊號,記錄第二計時器當前的計數值作為第二計數值,這裡,第二處理模
組與第一處理模組屬於不同的時脈領域。
例如,第二計數值用於結合第一計數值進行時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步,第一計數值為第一處理模組向第二處理模組發送觸發訊號時,第一處理模組的第一計時器當前的計數值,第一計時器的計數值用於作為第一處理模組的定時基準且順序遞增。
關於第一處理模組、第一計時器、第一計數值的相關內容可以參考前述實施例中第一處理模組、第一計時器、第一計數值的相關描述,這裡不再贅述。
例如,參考前述實施例中的相關描述,第一處理模組和第二處理模組屬於不同時脈領域的形成原因有兩種。
例如,在第一處理模組和第二處理模組具有各自的鎖相迴路,但鎖相迴路接收同源時脈訊號的情況下,如步驟S301和步驟S302所述,時脈補償由第一處理模組執行,第二處理模組只需記錄在接收到同一個觸發訊號時第二計時器的計數值即可,第二處理模組無需中斷,可以繼續執行所需要的操作。實現過程簡單,無需中斷,且在第一處理模組和第二處理模組處於帶電狀態時執行一次補償即可,非掉電重啟不需要維護,對系統性能影響很小,同步準確度高。
例如,第一處理模組由第一時脈源提供參考時脈訊號,第二處理模組由第二時脈源提供參考時脈訊號,第一時脈源與第二時脈源為非同源時脈源時,如前所述,這種情況下,非同源時脈源
不僅相位不同,時脈頻率也不同,需要定期執行時脈同步,並且第一計時器和第二計時器的計數值在整個時脈同步過程始終保持單調遞增。需要說明的是,這裡整個時脈同步過程不僅指單次時脈同步,而是指定期執行的多次時脈同步裡,第一計時器和第二計時器的計數值,始終保持單調遞增。
為保持時脈單調遞增,如前所述,首先需要判斷第一處理模組和第二處理模組中時脈較快的一方,選擇較慢的一方進行時脈補償,以使得時脈向較快的一方靠攏。
例如,如圖7所示,在步驟S50後,該時脈同步方法還包括步驟S601至步驟S603。
在步驟S601,從第一處理模組讀取第一計數值。
在步驟S602,比較第一計數值和第二計數值的大小關係。
在步驟S603,回應於第二計數值小於第一計數值,根據第一計數值和第二計數值的偏差進行時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,觸發訊號還配置為同時觸發第一處理模組和第二處理模組的中斷,以執行時脈補償。
例如,若第二計數值小於第一計數值,表示第二處理模組的時脈慢於第一處理模組的時脈,需要調整第二處理模組的時脈以向第一處理模組的時脈靠攏。
例如,步驟S603可以包括:確定第一計數值和第二計數
值的偏差;根據偏差,對第二計時器進行補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
如前所述,根據時脈源的類型不同,時脈補償的具體操作略有不同。
例如,回應於第二時脈源能夠利用電壓對振盪頻率進行調整,根據偏差,對第二計時器進行補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步,可以包括:根據偏差,對第二計時器進行補償;根據偏差,確定調整電壓;根據調整電壓,對第二時脈源進行補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,根據調整電壓,對第二時脈源進行補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步,可以包括:將調整電壓輸入第二時脈源的電壓控制管腳,以使得第二時脈源的振盪頻率向第一時脈源的振盪頻率方向收斂,並使得第一時脈源和第二時脈源同步。
例如,偏差可以為第一計數值和第二計數值的差值。
例如,根據偏差,對第二計時器進行補償的具體過程可以參考前述步驟S302以及步驟S402中的“根據偏差,對第一計時器進行補償”的具體過程,這裡不再贅述。
例如,調整電壓的確定過程,以及利用調整電壓調整第二時脈源的具體過程也可以參考前述利用調整電壓調整第一時脈源的相關說明,這裡不再贅述。
由此,通過偏差對第二計時器進行補償,根據偏差計算得到調整電壓,通過向第二時脈源的電壓控制管腳輸入調整電壓,使得第二時脈源的振盪頻率向第一時脈源的振盪頻率方向收斂,類似的,由於收斂可以達到ppb級別準確度,維護及時脈補償的週期也可以放鬆到比較久才做一次,例如間隔1秒執行一次時脈同步。這種方式對系統性能影響較小,不需要頻繁產生中斷影響系統性能,也不需要頻繁產生觸發訊號在第一處理模組和第二處理模組之間通訊,不會佔用晶片上網路或網路線的通訊資源。此外,消除了同步失敗情況,大幅減少了時脈同步階段,第一處理模組和第二處理模組之間的通訊次數大大減少,降低了由於網路線或晶片上網路的時脈抖動、延遲等帶來的影響,時脈同步準確度得到了提升。
例如,對於不能通過電壓控制時脈源的振盪頻率的晶振,其時脈補償的具體執行過程與前述相同場景下,第一處理模組執行時脈補償的過程相似,這裡不再贅述。
例如,本發明至少一實施例還提供一種系統時脈同步方法。
例如,該系統可以包括第一處理模組和第二處理模組,第一處理模組包括第一計時器,第一計時器的計數值作為第一處理模組的定時基準且順序遞增,第二處理模組包括第二計時器,第二計時器的計數值作為第二處理模組的定時基準且順序遞增,第一處理模組和第二處理模組屬於不同的時脈領域。
例如,系統可以是如圖1所示的CPU,第一處理模組和第二處理模組可以是圖1中的任意兩個CPU Die或CPU Socket。當然,本發明對此不作具體限制,也可以是其它需要執行時脈同步的處理模組。
例如,第一計時器可以是第一處理模組的系統計時器,第二計時器可以是第二處理模組的系統計時器。關於第一計時器和第二計時器的相關描述可以參考前文內容,這裡不再贅述。
例如,第一處理模組和第二處理模組屬於非同步時脈領域,其形成原因如前文所述,這裡不再贅述。
例如,在一些實施例中,系統時脈同步方法可以包括:第一處理模組向第二處理模組發送觸發訊號,第一處理模組記錄在發送觸發訊號時第一計時器當前的計數值作為第一計數值,第二處理模組記錄在接收到觸發訊號時第二計時器當前的計數值作為第二計數值。這裡,第一計數值和第二計數值用於時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,關於第一計數值和第二計數值用於時脈補償的具體過程可以參考前述應用於第一處理模組的時脈同步方法和應用於第二處理模組的時脈同步方法的相關描述。
例如,針對時脈源同源,但第一處理模組和第二處理模組具有各自的鎖相迴路的情況,根據第一計數值和第二計數值的偏差,對第一計時器進行補償,以使得第一時脈領域和第二時脈領域
同步。例如,此時時脈同步的具體過程可以參考前述應用於第一處理模組的時脈同步方法和應用於第二處理模組的時脈同步方法的相關描述,這裡不再贅述。
圖8A為本發明至少一實施例提供的系統時脈同步方法的交互過程示意圖。下面結合圖8A,說明在第一時脈源和第二時脈源為非同源時脈源的情況下,系統時脈同步方法的執行過程。
如圖8A所示,在T0時刻,第一處理模組向第二處理模組發起“assert trigger”,此時,第一處理模組在發送觸發訊號時記錄第一計時器當前的計數值作為第一計數值並儲存在第一暫存器中,例如,第一暫存器位於第一處理模組且可以靜態儲存數值;同時,第二處理模組在接收到觸發訊號時(T0’時刻)記錄第二計時器當前的計數值作為第二計數值並儲存在第二暫存器中,例如,第二暫存器位於第二處理模組且可以靜態儲存數值。並且,觸發訊號還同時觸發了第一處理模組和第二處理模組的中斷。
之後,在T1時刻,第一處理模組讀取第二處理模組中的第二暫存器的值,得到第二計數值,在T1’時刻,第二處理模組讀取第一處理模組中的第一暫存器的值,得到第一計數值,這裡,T1可以和T1’相等,也可以不等。
之後,第一處理模組和第二處理模組比較自身記錄的計數值和讀取的計數值的大小關係,若自身記錄的計數值小於讀取的計數值,則執行時脈補償,否則不執行時脈補償。
例如,對於第一處理模組,在得到第二計數值後,在步驟
S401,比較第一計數值和第二計數值,若第一計數值小於第二計數值,參考步驟S402進行時脈補償,具體過程可以參考步驟S402的相關內容,這裡不再贅述。
例如,對於第二處理模組,在得到第一計數值後,在步驟S602,比較第一計數值和第二計數值,若第二計數值小於第一計數值,參考步驟S603進行時脈補償,具體過程可以參考步驟S603的相關內容,這裡不再贅述。
由此,在時脈同步過程中時脈始終保持單調遞增。
之後,在Tn時刻,第一處理模組再次向第二處理模組發起“assert trigger”,第一處理模組在發送觸發訊號時(Tn時刻)記錄第一計時器當前的計數值作為第一計數值並儲存在第一暫存器中,第二處理模組在接收到觸發訊號(Tn’時刻)時記錄第二計時器當前的計數值作為第二計數值並儲存在第二暫存器中。並且,觸發訊號還同時觸發了第一處理模組和第二處理模組的中斷。
之後,在Tn+1時刻,第一處理模組讀取第二處理模組中的第二暫存器的值,得到第二計數值,在Tn+1’時刻,第二處理模組讀取第一處理模組中的第一暫存器的值,得到第一計數值,之後第一處理模組和第二處理模組比較自身記錄的計數值和讀取的計數值的大小關係,若自身記錄的計數值小於讀取的計數值,則執行時脈補償,否則不執行時脈補償,具體過程與T0時刻相似,這裡不再贅述。
例如,Tn時刻和T0時刻的差異可以根據時脈源類型、
第一時脈源和第二時脈源之間的時脈頻率偏差確定。
在上述實施例中,由於時脈源非同源,所以第一處理模組和第二處理模組之間存在相位差和時脈頻率偏差,且相位差和時脈頻率偏差可能跟隨時間推移發生漂移,因此需要定期執行時脈同步,包括通過同一個觸發訊號獲取第一計數值和第二計數值,根據第一計數值和第二計數值進行時脈補償。該實現方式簡單有效,消除了同步失敗情況,大幅減少了時脈同步階段,第一處理模組和第二處理模組之間的通訊次數大大減少,減少了用於時脈同步的通訊連接埠數量,降低了由於網路線或晶片上網路的時脈抖動、延遲等帶來的影響,時脈同步準確度得到了提升。
例如,觸發訊號由第一處理模組發送至第二處理模組的過程中,需要通過模組之間的通訊匯流排傳輸,例如通過PCB(Printed Circuit Board,印製電路板)或基板(substrate)來傳輸。電訊號在PCB/基板中傳送速率與材質的介電常數有關,如電訊號在玻璃布基板(FR)的傳送速率約為光速的一半,在Rogers(羅傑斯)板材傳送速率約為光速的70%,按照傳輸距離30cm來算由於Die之間通訊造成的偏差在ns級,該時間差異(例如T0和T0’的差異)較小,對於時脈補償來說可以忽略不計。
例如,在一些示例中,也可以對觸發訊號在處理模組之間傳遞造成的延遲進行補償,也即補償T0和T0’之間的差異。
圖8B為本發明至少一實施例提供的補償處理模組之間傳輸延遲的示意性方塊圖。
如圖8B所示,在第一處理模組的基板或PCB上,為觸發訊號建立回授通路,例如觸發訊號從第一計時器通過晶片上網路或互聯匯流排發送至第二計時器時,該觸發訊號通過回授通路傳遞回第一計時器,根據觸發訊號經回授通路傳遞回第一計時器的回授訊號的時間進行時脈補償。
具體來說,記錄第一計時器接收到回授通路傳遞的回授訊號時第一計時器當前的計數值作為第一計數值,記錄第二計時器接收到觸發訊號時的值作為第二計數值,由此補償處理模組之間傳輸延遲。
本發明至少一實施例還提供一種時脈同步裝置,圖9A為本發明至少一實施例提供的一種時脈同步裝置的示意性方塊圖。
例如,該時脈同步裝置用於第一處理模組。例如,第一處理模組包括第一計時器,第一計時器的計數值作為所述第一處理模組的定時基準且順序遞增。
關於第一處理模組、第一計時器等說明可以參考前述應用於第一處理模組的時脈同步方法的相關介紹,這裡不再贅述。
如圖9A示,時脈同步裝置100可以包括第一記錄單元101、讀取單元102。這些元件通過匯流排系統和/或其它形式的連接機構(未示出)互連。應當注意,圖9A所示的時脈同步裝置100的元件和結構只是示例性的,而非限制性的,根據需要,時脈同步裝置100也可以具有其他元件和結構。
第一記錄單元101,配置為向第二處理模組發送觸發訊號,
同時記錄發送觸發訊號時第一計時器當前的計數值作為第一計數值。
例如,第二處理模組與第一處理模組屬於不同的時脈領域。
讀取單元102,配置為從第二處理模組讀取第二計數值。
例如,第二計數值為第二處理模組在接收到觸發訊號時,第二處理模組的第二計時器當前的計數值,第二計時器的計數值作為第二處理模組的定時基準且順序遞增。
例如,第一計數值和第二計數值用於時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,如圖9A所示,時脈同步裝置還包括第一時脈補償單元103。
例如,在一些實施例中,第一處理模組包括第一鎖相迴路,第一鎖相迴路配置為接收第一時脈源提供的第一時脈訊號,並根據第一時脈訊號為第一處理模組提供第一參考時脈訊號,第二處理模組包括第二鎖相迴路,第二鎖相迴路配置為接收第一時脈源提供的第一時脈訊號,並根據第一時脈訊號為第二處理模組提供第二參考時脈訊號,第一鎖相迴路與第二鎖相迴路不同,時脈補償在第一處理模組處於通電階段時執行。
例如,在上述實施例中,第一時脈補償單元103配置為執行以下操作:確定第一計數值和第二計數值的偏差;根據偏差,
對第一計時器進行補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,第一時脈補償單元103執行根據所述偏差,對所述第一計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步時,包括執行以下操作:獲取所述第一計時器當前的計數值作為第三計數值;將所述偏差與所述第三計數值進行加和處理,得到更新計數值;將所述第一計時器的計數值更新為所述更新計數值,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
例如,觸發訊號還配置為同時觸發所述第一處理模組的中斷,以執行所述時脈補償。
例如,在另一些實施例中,第一處理模組由第一時脈源提供參考時脈訊號,第二處理模組由第二時脈源提供參考時脈訊號,第一時脈源與第二時脈源為非同源時脈源,時脈同步在第一處理模組處於工作狀態時定期執行,在時脈同步的整個過程中,第一計時器和第二計時器的計數值始終保持單調遞增。
在上述實施例中,第一時脈補償單元103配置為執行以下操作:比較第一計數值和第二計數值的大小關係;回應於第一計數值小於第二計數值,根據第一計數值和第二計數值的偏差進行時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,在上述實施例中,第一時脈補償單元103執行根據所述第一計數值和所述第二計數值的偏差進行時脈補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步時,包括執行以下操作:確定所述第一計數值和所述第二計數值的偏差;根據所述偏差,對所述第一計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與第二處理模組所在的所述第二時脈領域同步。
例如,在上述實施例中,第一時脈補償單元103執行回應於所述第一時脈源能夠利用電壓對振盪頻率進行調整,根據所述偏差,對所述第一計時器進行補償,以使得所述第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步,包括執行以下操作:根據所述偏差,對所述第一計時器進行補償;根據所述偏差,確定調整電壓;根據所述調整電壓,對所述第一時脈源進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的第二時脈領域同步。
例如,在一些示例中,第一時脈補償單元103執行根據所述偏差,確定調整電壓時,包括執行以下操作:根據所述偏差,計算所述第一時脈源相對於所述第二時脈源的單位時間頻率偏差;根據所述單位時間頻率偏差,確定所述調整電壓。
例如,在另一些示例中,第一時脈補償單元103執行根據所述偏差,確定調整電壓時,包括執行以下操作:獲取歷史頻率偏差,其中,所述歷史頻率偏差為最近一次用於計算調整電壓的單
位時間頻率偏差;計算所述歷史頻率偏差和基於所述偏差計算的單位時間頻率偏差的加權和;根據所述加權和的計算結果確定所述調整電壓。
例如,第一時脈補償單元103執行根據所述調整電壓,對所述第一時脈源進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的第二時脈領域同步時,包括執行以下操作:將所述調整電壓輸入所述第一時脈源的電壓控制管腳,以使得所述第一時脈源的振盪頻率向所述第二時脈源的振盪頻率方向收斂,並使得所述第一時脈源和所述第二時脈源同步。
例如,在上述實施例中,所述觸發訊號還配置為同時觸發所述第一處理模組和所述第二處理模組的中斷,以執行所述時脈補償。
例如,所述第一計數值儲存在所述第一處理模組的暫存器中,所述第二計數值儲存在所述第二處理模組的暫存器中。關於第一記錄單元101、讀取單元102和第一時脈補償單元103的具體說明可以參考上述應用於第一處理模組的時脈同步方法的相關步驟描述,這裡不再贅述。
例如,時脈同步裝置100可以實現與前述應用於第一處理模組的時脈同步方法相似的技術效果,在此不再贅述。
本發明至少一實施例還提供另一種時脈同步裝置,圖9B為本發明至少一實施例提供的另一種時脈同步裝置的示意性方塊
圖。
例如,該時脈同步裝置用於第二處理模組。例如,第二處理模組包括第二計時器,第二計時器的計數值作為第二處理模組的定時基準且順序遞增。
關於第二處理模組、第二計時器等說明可以參考前述應用於第二處理模組的時脈同步方法的相關介紹,這裡不再贅述。
如圖9B示,時脈同步裝置200可以包括第二記錄單元201。這些元件通過匯流排系統和/或其它形式的連接機構(未示出)互連。應當注意,圖9B所示的時脈同步裝置200的元件和結構只是示例性的,而非限制性的,根據需要,時脈同步裝置200也可以具有其他元件和結構。
例如,第二記錄單元201,配置為回應於接收到第一處理模組發送的觸發訊號,記錄第二計時器當前的計數值作為第二計數值,其中,第二處理模組與第一處理模組屬於不同的時脈領域。
例如,第二計數值用於結合第一計數值進行時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步,第一計數值為第一處理模組向第二處理模組發送觸發訊號時,第一處理模組的第一計時器當前的計數值,第一計時器的計數值用於作為第一處理模組的定時基準且順序遞增。
如圖9B所示,時脈同步裝置200還可以包括第二時脈補償單元202。
例如,在一些實施例中,第一處理模組由第一時脈源提供
參考時脈訊號,第二處理模組由第二時脈源提供參考時脈訊號,第一時脈源與第二時脈源為非同源時脈源,時脈同步在第一處理模組處於工作狀態時定期執行,在時脈同步的整個過程中,第一計時器和第二計時器的計數值始終保持單調遞增。
在上述實施例中,第二時脈補償單元202配置為執行以下操作:從第一處理模組讀取第一計數值;比較第一計數值和第二計數值的大小關係;回應於第二計數值小於第一計數值,根據第一計數值和第二計數值的偏差進行時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,第二時脈補償單元202執行根據所述第一計數值和所述第二計數值的偏差進行所述時脈補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步時,包括執行以下操作:確定所述第一計數值和所述第二計數值的偏差;根據所述偏差,對所述第二計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
例如,回應於所述第二時脈源能夠利用電壓對振盪頻率進行調整,第二時脈補償單元202執行根據所述偏差,對所述第二計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步時,包括執行以下操作:根據所述偏差,對所述第二計時器進行補償;根據所述偏差,確定調整電壓;根據所述調整電壓,對所述第二時脈
源進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
例如,第二時脈補償單元202執行根據所述調整電壓,對所述第二時脈源進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步時,包括執行以下操作:將所述調整電壓輸入所述第二時脈源的電壓控制管腳,以使得所述第二時脈源的振盪頻率向所述第一時脈源的振盪頻率方向收斂,並使得所述第一時脈源和所述第二時脈源同步。
關於第二記錄單元201和第二時脈補償單元202的具體說明可以參考上述應用於第二處理模組的時脈同步方法的相關步驟描述,這裡不再贅述。
例如,時脈同步裝置200可以實現與前述應用於第二處理模組的時脈同步方法相似的技術效果,在此不再贅述。
本發明至少一實施例還提供一種電子設備,圖9C為本發明至少一實施例提供的一種電子設備的示意性結構圖。
如圖9C所示,電子設備300包括第一處理模組310和第二處理模組320。
例如,第一處理模組包括第一計時器,第一計時器的計數值作為第一處理模組的定時基準且順序遞增,第二處理模組包括第二計時器,第二計時器的計數值作為第二處理模組的定時基準且順序遞增,第一處理模組和第二處理模組屬於不同的時脈領域。
例如,第一處理模組配置為向第二處理模組發送觸發訊號,以及記錄在發送觸發訊號時第一計時器當前的計數值作為第一計數值。
例如,第二處理模組配置為記錄在接收到觸發訊號時第二計時器當前的計數值作為第二計數值。
例如,第一計數值和第二計數值用於時脈補償,以使得第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
例如,電子設備可以為CPU等處理設備,第一處理模組和第二處理模組可以為CPU Die或CPU Socket。當然,本發明不限於此。需要說明的是,圖9C所示的電子設備300的元件和結構只是示例性的,而非限制性的,根據需要,電子設備300也可以具有其他元件和結構。
例如,關於第一處理模組和第二處理模組執行時脈同步的具體過程可以參考前述系統時脈同步方法的相關說明,這裡不再贅述。
例如,電子設備300可以實現與前述系統時脈同步方法相似的技術效果,在此不再贅述。
本發明一些實施例還提供一種電子設備。圖10為本發明至少一實施例提供的一種電子設備的示意性方塊圖。
例如,如圖10所示,電子設備400包括處理器410和記憶體420。應當注意,圖10所示的電子設備400的元件只是示例
性的,而非限制性的,根據實際應用需要,該電子設備400還可以具有其他元件。
例如,處理器410和記憶體420之間可以直接或間接地互相通訊。
例如,處理器410和記憶體420可以通過網路進行通訊。網路可以包括無線網路、有線網路、和/或無線網路和有線網路的任意組合。處理器410和記憶體420之間也可以通過系統匯流排實現相互通訊,本發明對此不作限制。
例如,在一些實施例中,記憶體420用於非暫態性地儲存電腦可讀指令。處理器410用於運行電腦可讀指令時,電腦可讀指令被處理器410運行時實現根據上述任一實施例所述的時脈同步方法或根據上述任一實施例所述的系統時脈同步方法。關於該時脈同步方法的各個步驟的具體實現以及相關解釋內容可以參見上述時脈同步方法的實施例,關於該系統時脈同步方法的各個步驟的具體實現以及相關解釋內容可以參見上述系統時脈同步方法的實施例,重複之處在此不作贅述。
例如,處理器410可以控制電子設備400中的其它元件以執行期望的功能。處理器410可以是中央處理器(CPU)、圖形處理器(Graphics Processing Unit,GPU)、網路處理器(NP)等;還可以是數位訊號處理器(DSP)、專用積體電路(ASIC)、現場可程式設計閘陣列(FPGA)或者其他可程式設計邏輯器件、分立門或者電晶體邏輯器件、分立硬體元件。中央處理元(CPU)可以為
X86或ARM架構等。
例如,記憶體420可以包括一個或多個電腦程式產品的任意組合,電腦程式產品可以包括各種形式的電腦可讀儲存介質,例如易失性記憶體和/或非易失性記憶體。易失性記憶體例如可以包括隨機存取記憶體(RAM)和/或高速緩衝記憶體(cache)等。非易失性記憶體例如可以包括唯讀記憶體(ROM)、硬碟、可擦除可程式設計唯讀記憶體(EPROM)、可擕式緊致盤唯讀記憶體(CD-ROM)、USB記憶體、快閃記憶體等。在所述電腦可讀儲存介質上可以儲存一個或多個電腦可讀指令,處理器410可以運行所述電腦可讀指令,以實現電子設備400的各種功能。在儲存介質中還可以儲存各種應用程式和各種資料等。
例如,在一些實施例中,電子設備400可以為手機、平板電腦、電子紙、電視機、顯示器、筆記型電腦、數碼相框、導航儀、可穿戴電子設備、智慧家居設備等。
例如,電子設備400可以包括顯示面板,顯示面板可以用於顯示交互內容等。例如,顯示面板可以為矩形面板、圓形面板、橢圓形面板或多邊形面板等。另外,顯示面板不僅可以為平面面板,也可以為曲面面板,甚至球面面板。
例如,電子設備400可以具備觸控功能,即電子設備400可以為觸控裝置。
例如,關於電子設備400執行時脈同步方法的過程的詳細說明可以參考時脈同步方法的實施例中的相關描述,關於電子
設備400執行系統時脈同步方法的過程的詳細說明可以參見上述系統時脈同步方法的實施例中的相關描述,重複之處不再贅述。
圖11為本發明至少一實施例提供的一種非暫態性電腦可讀儲存介質的示意圖。例如,如圖11所示,在儲存介質500上可以非暫時性地儲存一個或多個電腦可讀指令510。例如,當電腦可讀指令510由處理器執行時可以執行根據上文所述的時脈同步方法中的一個或多個步驟,或者,當電腦可讀指令510由處理器執行時可以執行根據上文所述的系統時脈同步方法中的一個或多個步驟。
例如,該儲存介質500可以應用於上述電子設備400中。例如,儲存介質500可以包括電子設備400中的記憶體420。
例如,關於儲存介質500的說明可以參考電子設備400的實施例中對於記憶體420的描述,重複之處不再贅述。
特別地,根據本發明的實施例,上文參考流程圖描述的過程可以被實現為電腦軟體程式。例如,本發明的實施例包括一種電腦程式產品,其包括承載在非暫態電腦可讀介質上的電腦程式,該電腦程式包含用於執行流程圖所示的方法的程式碼。在這樣的實施例中,該電腦程式可以通過通訊裝置從網路上被下載和安裝,或者從儲存裝置被安裝,或者從ROM被安裝。在該電腦程式被處理裝置執行時,執行本發明實施例的方法中限定的上述功能。
需要說明的是,在本發明的上下文中,電腦可讀介質可以是有形的介質,其可以包含或儲存以供指令執行系統、裝置或設備
使用或與指令執行系統、裝置或設備結合地使用的程式。電腦可讀介質可以是電腦可讀訊號介質或者電腦可讀儲存介質或者是上述兩者的任意組合。電腦可讀儲存介質例如可以是,但不限於:電、磁、光、電磁、紅外線、或半導體的系統、裝置或器件,或者任意以上的組合。電腦可讀儲存介質的更具體的例子可以包括但不限於:具有一個或多個導線的電連接、可擕式電腦磁片、硬碟、隨機訪問記憶體(RAM)、唯讀記憶體(ROM)、可擦式可程式設計唯讀記憶體(EPROM或快閃記憶體)、光纖、可擕式緊湊磁片唯讀記憶體(CD-ROM)、光記憶體件、磁記憶體件、或者上述的任意合適的組合。在本發明中,電腦可讀儲存介質可以是任何包含或儲存程式的有形介質,該程式可以被指令執行系統、裝置或者器件使用或者與其結合使用。而在本發明中,電腦可讀訊號介質可以包括在基帶中或者作為載波一部分傳播的資料訊號,其中承載了電腦可讀的程式碼。這種傳播的資料訊號可以採用多種形式,包括但不限於電磁訊號、光訊號或上述的任意合適的組合。電腦可讀訊號介質還可以是電腦可讀儲存介質以外的任何電腦可讀介質,該電腦可讀訊號介質可以發送、傳播或者傳輸用於由指令執行系統、裝置或者器件使用或者與其結合使用的程式。電腦可讀介質上包含的程式碼可以用任何適當的介質傳輸,包括但不限於:電線、光纜、RF(射頻)等等,或者上述的任意合適的組合。
上述電腦可讀介質可以是上述電子設備中所包含的;也可以是單獨存在,而未裝配入該電子設備中。
可以以一種或多種程式設計語言或其組合來編寫用於執行本發明的操作的電腦程式代碼,上述程式設計語言包括但不限於物件導向的程式設計語言,諸如Java、Smalltalk、C++,還包括常規的過程式程式設計語言,諸如“C”語言或類似的程式設計語言。程式碼可以完全地在使用者電腦上執行、部分地在使用者電腦上執行、作為一個獨立的套裝軟體執行、部分在使用者電腦上部分在遠端電腦上執行、或者完全在遠端電腦或伺服器上執行。在涉及遠端電腦的情形中,遠端電腦可以通過任意種類的網路(,包括局域網(LAN)或廣域網路(WAN))連接到使用者電腦,或者,可以連接到外部電腦(例如利用網際網路服務提供者來通過網際網路連接)。
附圖中的流程圖和方塊圖,圖示了按照本發明各種實施例的系統、方法和電腦程式產品的可能實現的體系架構、功能和操作。在這點上,流程圖或方塊圖中的每個方框可以代表一個模組、程式段、或代碼的一部分,該模組、程式段、或代碼的一部分包含一個或多個用於實現規定的邏輯功能的可執行指令。也應當注意,在有些作為替換的實現中,方框中所標注的功能也可以以不同於附圖中所標注的順序發生。例如,兩個接連地表示的方框實際上可以基本並行地執行,它們有時也可以按相反的循序執行,這依所涉及的功能而定。也要注意的是,方塊圖和/或流程圖中的每個方框、以及方塊圖和/或流程圖中的方框的組合,可以用執行規定的功能或操作的專用的基於硬體的系統來實現,或者可以用專用硬體與
電腦指令的組合來實現。
描述於本發明實施例中所涉及到的單元可以通過軟體的方式實現,也可以通過硬體的方式來實現。其中,單元的名稱在某種情況下並不構成對該單元本身的限定。
本文中以上描述的功能可以至少部分地由一個或多個硬體邏輯部件來執行。例如,非限制性地,可以使用的示範類型的硬體邏輯部件包括:現場可程式設計閘陣列(FPGA)、專用積體電路(ASIC)、專用標準產品(ASSP)、片上系統(SOC)、複雜可程式設計邏輯裝置(CPLD)等等。
根據本發明的一個或多個實施例,一種時脈同步方法,其中,所述第一處理模組包括第一計時器,所述第一計時器的計數值作為所述第一處理模組的定時基準且順序遞增,所述時脈同步方法包括:向第二處理模組發送觸發訊號,同時記錄發送所述觸發訊號時所述第一計時器當前的計數值作為第一計數值,其中,所述第二處理模組與所述第一處理模組屬於不同的時脈領域;從所述第二處理模組讀取第二計數值,其中,所述第二計數值為所述第二處理模組在接收到所述觸發訊號時,所述第二處理模組的第二計時器當前的計數值,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增;其中,所述第一計數值和所述第二計數值用於時脈補償,以使得所述第一處理模組所在的第一時脈領域與所述第二處理模組所在的第二時脈領域同步。
根據本發明的一個或多個實施例,所述第一處理模組包
括第一鎖相迴路,所述第一鎖相迴路配置為接收第一時脈源提供的第一時脈訊號,並根據所述第一時脈訊號為所述第一處理模組提供第一參考時脈訊號,所述第二處理模組包括第二鎖相迴路,所述第二鎖相迴路配置為接收所述第一時脈源提供的所述第一時脈訊號,並根據所述第一時脈訊號為所述第二處理模組提供第二參考時脈訊號,所述第一鎖相迴路與所述第二鎖相迴路不同,所述時脈補償在所述第一處理模組處於通電階段時執行。
根據本發明的一個或多個實施例,所述時脈同步方法還包括:確定所述第一計數值和所述第二計數值的偏差;根據所述偏差,對所述第一計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
根據本發明的一個或多個實施例,根據所述偏差,對所述第一計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步,包括:獲取所述第一計時器當前的計數值作為第三計數值;將所述偏差與所述第三計數值進行加和處理,得到更新計數值;將所述第一計時器的計數值更新為所述更新計數值,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
根據本發明的一個或多個實施例,所述觸發訊號還配置為同時觸發所述第一處理模組的中斷,以執行所述時脈補償。
根據本發明的一個或多個實施例,所述第一處理模組由第一時脈源提供參考時脈訊號,所述第二處理模組由第二時脈源提供參考時脈訊號,所述第一時脈源與所述第二時脈源為非同源時脈源,所述時脈同步在所述第一處理模組處於工作狀態時定期執行,在所述時脈同步的整個過程中,所述第一計時器和所述第二計時器的計數值始終保持單調遞增。
根據本發明的一個或多個實施例,所述時脈同步方法還包括:比較所述第一計數值和所述第二計數值的大小關係;回應於所述第一計數值小於所述第二計數值,根據所述第一計數值和所述第二計數值的偏差進行時脈補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
根據本發明的一個或多個實施例,根據所述第一計數值和所述第二計數值的偏差進行時脈補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步,包括:確定所述第一計數值和所述第二計數值的偏差;根據所述偏差,對所述第一計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與第二處理模組所在的所述第二時脈領域同步。
根據本發明的一個或多個實施例,響應於所述第一時脈源能夠利用電壓對振盪頻率進行調整,根據所述偏差,對所述第一計時器進行補償,以使得所述第一處理模組所在的第一時脈領域
與第二處理模組所在的第二時脈領域同步,包括:根據所述偏差,對所述第一計時器進行補償;根據所述偏差,確定調整電壓;根據所述調整電壓,對所述第一時脈源進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的第二時脈領域同步。
根據本發明的一個或多個實施例,根據所述偏差,確定調整電壓,包括:根據所述偏差,計算所述第一時脈源相對於所述第二時脈源的單位時間頻率偏差;根據所述單位時間頻率偏差,確定所述調整電壓。
根據本發明的一個或多個實施例,根據所述偏差,確定調整電壓,包括:獲取歷史頻率偏差,其中,所述歷史頻率偏差為最近一次用於計算調整電壓的單位時間頻率偏差;計算所述歷史頻率偏差和基於所述偏差計算的單位時間頻率偏差的加權和;根據所述加權和的計算結果確定所述調整電壓。
根據本發明的一個或多個實施例,根據所述調整電壓,對所述第一時脈源進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的第二時脈領域同步,包括:將所述調整電壓輸入所述第一時脈源的電壓控制管腳,以使得所述第一時脈源的振盪頻率向所述第二時脈源的振盪頻率方向收斂,並使得所述第一時脈源和所述第二時脈源同步。
根據本發明的一個或多個實施例,所述觸發訊號還配置為同時觸發所述第一處理模組和所述第二處理模組的中斷,以執
行所述時脈補償。
根據本發明的一個或多個實施例,所述第一計數值儲存在所述第一處理模組的暫存器中,所述第二計數值儲存在所述第二處理模組的暫存器中。
根據本發明的一個或多個實施例,一種時脈同步方法,用於第二處理模組,其中,所述第二處理模組包括第二計時器,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增,所述時脈同步方法包括:回應於接收到第一處理模組發送的觸發訊號,記錄所述第二計時器當前的計數值作為第二計數值,其中,所述第二處理模組與所述第一處理模組屬於不同的時脈領域;其中,所述第二計數值用於結合第一計數值進行時脈補償,以使得所述第一處理模組所在的第一時脈領域與所述第二處理模組所在的第二時脈領域同步,所述第一計數值為所述第一處理模組向所述第二處理模組發送觸發訊號時,所述第一處理模組的第一計時器當前的計數值,所述第一計時器的計數值用於作為所述第一處理模組的定時基準且順序遞增。
根據本發明的一個或多個實施例,所述第一處理模組由第一時脈源提供參考時脈訊號,所述第二處理模組由第二時脈源提供參考時脈訊號,所述第一時脈源與所述第二時脈源為非同源時脈源,所述時脈同步在所述第一處理模組處於工作狀態時定期執行,在所述時脈同步的整個過程中,所述第一計時器和所述第二計時器的計數值始終保持單調遞增。
根據本發明的一個或多個實施例,所述時脈同步方法還包括:從所述第一處理模組讀取所述第一計數值;比較所述第一計數值和所述第二計數值的大小關係;回應於所述第二計數值小於所述第一計數值,根據所述第一計數值和所述第二計數值的偏差進行所述時脈補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
根據本發明的一個或多個實施例,根據所述第一計數值和所述第二計數值的偏差進行所述時脈補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步,包括:確定所述第一計數值和所述第二計數值的偏差;根據所述偏差,對所述第二計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
根據本發明的一個或多個實施例,響應於所述第二時脈源能夠利用電壓對振盪頻率進行調整,根據所述偏差,對所述第二計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步,包括:根據所述偏差,對所述第二計時器進行補償;根據所述偏差,確定調整電壓;根據所述調整電壓,對所述第二時脈源進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
根據本發明的一個或多個實施例,根據所述調整電壓,對
所述第二時脈源進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步,包括:將所述調整電壓輸入所述第二時脈源的電壓控制管腳,以使得所述第二時脈源的振盪頻率向所述第一時脈源的振盪頻率方向收斂,並使得所述第一時脈源和所述第二時脈源同步。
根據本發明的一個或多個實施例,一種系統時脈同步方法,其中,所述系統包括第一處理模組和第二處理模組,所述第一處理模組包括第一計時器,所述第一計時器的計數值作為所述第一處理模組的定時基準且順序遞增,所述第二處理模組包括第二計時器,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增,所述第一處理模組和所述第二處理模組屬於不同的時脈領域,所述系統時脈同步方法包括:所述第一處理模組向所述第二處理模組發送觸發訊號,所述第一處理模組記錄在發送所述觸發訊號時所述第一計時器當前的計數值作為第一計數值,所述第二處理模組記錄在接收到所述觸發訊號時所述第二計時器當前的計數值作為第二計數值;其中,所述第一計數值和所述第二計數值用於時脈補償,以使得所述第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
根據本發明的一個或多個實施例,一種時脈同步裝置,用於第一處理模組,其中,所述第一處理模組包括第一計時器,所述第一計時器的計數值作為所述第一處理模組的定時基準且順序遞增,所述時脈同步裝置包括:第一記錄單元,配置為向第二處理模
組發送觸發訊號,同時記錄發送所述觸發訊號時所述第一計時器當前的計數值作為第一計數值,其中,所述第二處理模組與所述第一處理模組屬於不同的時脈領域;讀取單元,配置為從所述第二處理模組讀取第二計數值,其中,所述第二計數值為所述第二處理模組在接收到所述觸發訊號時,所述第二處理模組的第二計時器當前的計數值,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增;其中,所述第一計數值和所述第二計數值用於時脈補償,以使得所述第一處理模組所在的第一時脈領域與所述第二處理模組所在的第二時脈領域同步。
根據本發明的一個或多個實施例,一種時脈同步裝置,用於第二處理模組,其中,所述第二處理模組包括第二計時器,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增,所述時脈同步裝置包括:第二記錄單元,配置為回應於接收到第一處理模組發送的觸發訊號,記錄所述第二計時器當前的計數值作為第二計數值,其中,所述第二處理模組與所述第一處理模組屬於不同的時脈領域;其中,所述第二計數值用於結合第一計數值進行時脈補償,以使得所述第一處理模組所在的第一時脈領域與所述第二處理模組所在的第二時脈領域同步,所述第一計數值為所述第一處理模組向第二處理模組發送觸發訊號時,所述第一處理模組的第一計時器當前的計數值,所述第一計時器的計數值用於作為所述第一處理模組的定時基準且順序遞增。
根據本發明的一個或多個實施例,一種電子設備,包括第
一處理模組和第二處理模組,其中,所述第一處理模組包括第一計時器,所述第一計時器的計數值作為所述第一處理模組的定時基準且順序遞增,所述第二處理模組包括第二計時器,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增,所述第一處理模組和所述第二處理模組屬於不同的時脈領域,其中,所述第一處理模組配置為向所述第二處理模組發送觸發訊號,以及記錄在發送所述觸發訊號時所述第一計時器當前的計數值作為第一計數值,所述第二處理模組配置為記錄在接收到所述觸發訊號時所述第二計時器當前的計數值作為第二計數值;其中,所述第一計數值和所述第二計數值用於時脈補償,以使得所述第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步。
根據本發明的一個或多個實施例,一種電子設備,包括:記憶體,非暫態性地儲存有電腦可執行指令;處理器,配置為運行所述電腦可執行指令,其中,所述電腦可執行指令被所述處理器運行時實現根據本發明任一實施例所述的時脈同步方法或本發明任一實施例所述的系統時脈同步方法。
根據本發明的一個或多個實施例,一種非暫態性電腦可讀儲存介質,其中,所述非暫態性電腦可讀儲存介質儲存有電腦可執行指令,所述電腦可執行指令被處理器執行時實現根據本發明任一實施例所述的時脈同步方法或本發明任一實施例所述的系統時脈同步方法。
以上描述僅為本發明的較佳實施例以及對所運用技術原
理的說明。本領域技術人員應當理解,本發明中所涉及的公開範圍,並不限於上述技術特徵的特定組合而成的技術方案,同時也應涵蓋在不脫離上述公開構思的情況下,由上述技術特徵或其等同特徵進行任意組合而形成的其它技術方案。例如上述特徵與本發明中公開的(但不限於)具有類似功能的技術特徵進行互相替換而形成的技術方案。
此外,雖然採用特定次序描繪了各操作,但是這不應當理解為要求這些操作以所示出的特定次序或以順序次序執行來執行。在一定環境下,多工和並行處理可能是有利的。同樣地,雖然在上面論述中包含了若干具體實現細節,但是這些不應當被解釋為對本發明的範圍的限制。在單獨的實施例的上下文中描述的某些特徵還可以組合地實現在單個實施例中。相反地,在單個實施例的上下文中描述的各種特徵也可以單獨地或以任何合適的子組合的方式實現在多個實施例中。
儘管已經採用特定於結構特徵和/或方法邏輯動作的語言描述了本主題,但是應當理解所附請求項書中所限定的主題未必侷限於上面描述的特定特徵或動作。相反,上面所描述的特定特徵和動作僅僅是實現請求項書的示例形式。
對於本發明,還有以下幾點需要說明:
(1)本發明實施例附圖只涉及到與本發明實施例涉及到的結構,其他結構可參考通常設計。
(2)在不衝突的情況下,本發明的實施例及實施例中的
特徵可以相互組合以得到新的實施例。
以上所述僅為本發明的具體實施方式,但本發明的保護範圍並不侷限於此,本發明的保護範圍應以所述請求項的保護範圍為准。
S10、S20:步驟
Claims (19)
- 一種時脈同步方法,用於第一處理模組,其中,所述第一處理模組包括第一計時器,所述第一計時器的計數值作為所述第一處理模組的定時基準且順序遞增,所述時脈同步方法包括:向第二處理模組發送觸發訊號,同時記錄發送所述觸發訊號時所述第一計時器當前的計數值作為第一計數值,其中,所述第二處理模組與所述第一處理模組屬於不同的時脈領域;從所述第二處理模組讀取第二計數值,其中,所述第二計數值為所述第二處理模組在接收到所述觸發訊號時,所述第二處理模組的第二計時器當前的計數值,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增;其中,所述第一計數值和所述第二計數值用於時脈補償,以使得所述第一處理模組所在的第一時脈領域與所述第二處理模組所在的第二時脈領域同步;其中,所述第一處理模組包括第一鎖相迴路,所述第一鎖相迴路配置為接收第一時脈源提供的第一時脈訊號,並根據所述第一時脈訊號為所述第一處理模組提供第一參考時脈訊號,所述第二處理模組包括第二鎖相迴路,所述第二鎖相迴路配置為接收所述第一時脈源提供的所述第一時脈訊號,並根據所述第一時脈訊號為所述第二處理模組提供第二參考時脈訊號,所述第一鎖相迴路與所述第二鎖相迴路不同,響應於所述第一鎖相迴路和所述第二鎖相迴路不同但接 收同源的所述第一時脈訊號,所述時脈補償在所述第一處理模組處於通電階段時執行,其中,所述通電階段指所述第一處理模組剛剛通電但還沒有執行任何具體操作前。
- 如請求項1所述的時脈同步方法,其中,所述時脈同步方法還包括:確定所述第一計數值和所述第二計數值的偏差;根據所述偏差,對所述第一計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
- 如請求項2所述的時脈同步方法,其中,根據所述偏差,對所述第一計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步,包括:獲取所述第一計時器當前的計數值作為第三計數值;將所述偏差與所述第三計數值進行加和處理,得到更新計數值;將所述第一計時器的計數值更新為所述更新計數值,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
- 如請求項1所述的時脈同步方法,其中,所述第一處理模組由第一時脈源提供參考時脈訊號,所述第二處理模組由第二時脈源提供參考時脈訊號, 所述第一時脈源與所述第二時脈源為非同源時脈源,所述時脈同步在所述第一處理模組處於工作狀態時定期執行,在所述時脈同步的整個過程中,所述第一計時器和所述第二計時器的計數值始終保持單調遞增。
- 如請求項4所述的時脈同步方法,其中,所述時脈同步方法還包括:比較所述第一計數值和所述第二計數值的大小關係;回應於所述第一計數值小於所述第二計數值,根據所述第一計數值和所述第二計數值的偏差進行時脈補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
- 如請求項5所述的時脈同步方法,其中,根據所述第一計數值和所述第二計數值的偏差進行時脈補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步,包括:確定所述第一計數值和所述第二計數值的偏差;根據所述偏差,對所述第一計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與第二處理模組所在的所述第二時脈領域同步。
- 如請求項6所述的時脈同步方法,其中,響應於所述第一時脈源能夠利用電壓對振盪頻率進行調整,根據所述偏差,對所述第一計時器進行補償,以使得所述第 一處理模組所在的所述第一時脈領域與第二處理模組所在的所述第二時脈領域同步,包括:根據所述偏差,對所述第一計時器進行補償;根據所述偏差,確定調整電壓;根據所述調整電壓,對所述第一時脈源進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的第二時脈領域同步。
- 如請求項7所述的時脈同步方法,其中,根據所述調整電壓,對所述第一時脈源進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的第二時脈領域同步,包括:將所述調整電壓輸入所述第一時脈源的電壓控制管腳,以使得所述第一時脈源的振盪頻率向所述第二時脈源的振盪頻率方向收斂,並使得所述第一時脈源和所述第二時脈源同步。
- 一種時脈同步方法,用於第二處理模組,其中,所述第二處理模組包括第二計時器,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增,所述時脈同步方法包括:回應於接收到第一處理模組發送的觸發訊號,記錄所述第二計時器當前的計數值作為第二計數值,其中,所述第二處理模組與所述第一處理模組屬於不同的時脈領域;其中,所述第二計數值用於結合第一計數值進行時脈補償, 以使得所述第一處理模組所在的第一時脈領域與所述第二處理模組所在的第二時脈領域同步,所述第一計數值為所述第一處理模組向所述第二處理模組發送觸發訊號時,所述第一處理模組的第一計時器當前的計數值,所述第一計時器的計數值用於作為所述第一處理模組的定時基準且順序遞增;其中,所述第一處理模組包括第一鎖相迴路,所述第一鎖相迴路配置為接收第一時脈源提供的第一時脈訊號,並根據所述第一時脈訊號為所述第一處理模組提供第一參考時脈訊號,所述第二處理模組包括第二鎖相迴路,所述第二鎖相迴路配置為接收所述第一時脈源提供的所述第一時脈訊號,並根據所述第一時脈訊號為所述第二處理模組提供第二參考時脈訊號,所述第一鎖相迴路與所述第二鎖相迴路不同,響應於所述第一鎖相迴路和所述第二鎖相迴路不同但接收同源的所述第一時脈訊號,所述時脈補償在所述第一處理模組處於通電階段時執行,其中,所述通電階段指所述第一處理模組剛剛通電但還沒有執行任何具體操作前。
- 如請求項9所述的時脈同步方法,其中,所述第一處理模組由第一時脈源提供參考時脈訊號,所述第二處理模組由第二時脈源提供參考時脈訊號,所述第一時脈源與所述第二時脈源為非同源時脈源,所述時脈同步在所述第一處理模組處於工作狀態時定期執行,在所述時脈同步的整個過程中,所述第一計時器和所述第二 計時器的計數值始終保持單調遞增。
- 如請求項10所述的時脈同步方法,其中,所述時脈同步方法還包括:從所述第一處理模組讀取所述第一計數值;比較所述第一計數值和所述第二計數值的大小關係;回應於所述第二計數值小於所述第一計數值,根據所述第一計數值和所述第二計數值的偏差進行所述時脈補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
- 如請求項11所述的時脈同步方法,其中,根據所述第一計數值和所述第二計數值的偏差進行所述時脈補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步,包括:確定所述第一計數值和所述第二計數值的偏差;根據所述偏差,對所述第二計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
- 如請求項12所述的時脈同步方法,其中,響應於所述第二時脈源能夠利用電壓對振盪頻率進行調整,根據所述偏差,對所述第二計時器進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步,包括: 根據所述偏差,對所述第二計時器進行補償;根據所述偏差,確定調整電壓;根據所述調整電壓,對所述第二時脈源進行補償,以使得所述第一處理模組所在的所述第一時脈領域與所述第二處理模組所在的所述第二時脈領域同步。
- 一種系統時脈同步方法,其中,所述系統包括第一處理模組和第二處理模組,所述第一處理模組包括第一計時器,所述第一計時器的計數值作為所述第一處理模組的定時基準且順序遞增,所述第二處理模組包括第二計時器,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增,所述第一處理模組和所述第二處理模組屬於不同的時脈領域,所述系統時脈同步方法包括:所述第一處理模組向所述第二處理模組發送觸發訊號,所述第一處理模組記錄在發送所述觸發訊號時所述第一計時器當前的計數值作為第一計數值,所述第二處理模組記錄在接收到所述觸發訊號時所述第二計時器當前的計數值作為第二計數值;其中,所述第一計數值和所述第二計數值用於時脈補償,以使得所述第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步;其中,所述第一處理模組包括第一鎖相迴路,所述第一鎖相迴路配置為接收第一時脈源提供的第一時脈訊號,並根據所述第 一時脈訊號為所述第一處理模組提供第一參考時脈訊號,所述第二處理模組包括第二鎖相迴路,所述第二鎖相迴路配置為接收所述第一時脈源提供的所述第一時脈訊號,並根據所述第一時脈訊號為所述第二處理模組提供第二參考時脈訊號,所述第一鎖相迴路與所述第二鎖相迴路不同,響應於所述第一鎖相迴路和所述第二鎖相迴路不同但接收同源的所述第一時脈訊號,所述時脈補償在所述第一處理模組處於通電階段時執行,其中,所述通電階段指所述第一處理模組剛剛通電但還沒有執行任何具體操作前。
- 一種時脈同步裝置,用於第一處理模組,其中,所述第一處理模組包括第一計時器,所述第一計時器的計數值作為所述第一處理模組的定時基準且順序遞增,所述時脈同步裝置包括:第一記錄單元,配置為向第二處理模組發送觸發訊號,同時記錄發送所述觸發訊號時所述第一計時器當前的計數值作為第一計數值,其中,所述第二處理模組與所述第一處理模組屬於不同的時脈領域;讀取單元,配置為從所述第二處理模組讀取第二計數值,其中,所述第二計數值為所述第二處理模組在接收到所述觸發訊號時,所述第二處理模組的第二計時器當前的計數值,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增;其中,所述第一計數值和所述第二計數值用於時脈補償,以 使得所述第一處理模組所在的第一時脈領域與所述第二處理模組所在的第二時脈領域同步;其中,所述第一處理模組包括第一鎖相迴路,所述第一鎖相迴路配置為接收第一時脈源提供的第一時脈訊號,並根據所述第一時脈訊號為所述第一處理模組提供第一參考時脈訊號,所述第二處理模組包括第二鎖相迴路,所述第二鎖相迴路配置為接收所述第一時脈源提供的所述第一時脈訊號,並根據所述第一時脈訊號為所述第二處理模組提供第二參考時脈訊號,所述第一鎖相迴路與所述第二鎖相迴路不同,響應於所述第一鎖相迴路和所述第二鎖相迴路不同但接收同源的所述第一時脈訊號,所述時脈補償在所述第一處理模組處於通電階段時執行,其中,所述通電階段指所述第一處理模組剛剛通電但還沒有執行任何具體操作前。
- 一種時脈同步裝置,用於第二處理模組,其中,所述第二處理模組包括第二計時器,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增,所述時脈同步裝置包括:第二記錄單元,配置為回應於接收到第一處理模組發送的觸發訊號,記錄所述第二計時器當前的計數值作為第二計數值,其中,所述第二處理模組與所述第一處理模組屬於不同的時脈領域;其中,所述第二計數值用於結合第一計數值進行時脈補償,以使得所述第一處理模組所在的第一時脈領域與所述第二處理模 組所在的第二時脈領域同步,所述第一計數值為所述第一處理模組向第二處理模組發送觸發訊號時,所述第一處理模組的第一計時器當前的計數值,所述第一計時器的計數值用於作為所述第一處理模組的定時基準且順序遞增;其中,所述第一處理模組包括第一鎖相迴路,所述第一鎖相迴路配置為接收第一時脈源提供的第一時脈訊號,並根據所述第一時脈訊號為所述第一處理模組提供第一參考時脈訊號,所述第二處理模組包括第二鎖相迴路,所述第二鎖相迴路配置為接收所述第一時脈源提供的所述第一時脈訊號,並根據所述第一時脈訊號為所述第二處理模組提供第二參考時脈訊號,所述第一鎖相迴路與所述第二鎖相迴路不同,響應於所述第一鎖相迴路和所述第二鎖相迴路不同但接收同源的所述第一時脈訊號,所述時脈補償在所述第一處理模組處於通電階段時執行,其中,所述通電階段指所述第一處理模組剛剛通電但還沒有執行任何具體操作前。
- 一種電子設備,包括第一處理模組和第二處理模組,其中,所述第一處理模組包括第一計時器,所述第一計時器的計數值作為所述第一處理模組的定時基準且順序遞增,所述第二處理模組包括第二計時器,所述第二計時器的計數值作為所述第二處理模組的定時基準且順序遞增,所述第一處理模組和所述第二處理模組屬於不同的時脈領域, 其中,所述第一處理模組配置為向所述第二處理模組發送觸發訊號,以及記錄在發送所述觸發訊號時所述第一計時器當前的計數值作為第一計數值,所述第二處理模組配置為記錄在接收到所述觸發訊號時所述第二計時器當前的計數值作為第二計數值;其中,所述第一計數值和所述第二計數值用於時脈補償,以使得所述第一處理模組所在的第一時脈領域與第二處理模組所在的第二時脈領域同步;其中,所述第一處理模組包括第一鎖相迴路,所述第一鎖相迴路配置為接收第一時脈源提供的第一時脈訊號,並根據所述第一時脈訊號為所述第一處理模組提供第一參考時脈訊號,所述第二處理模組包括第二鎖相迴路,所述第二鎖相迴路配置為接收所述第一時脈源提供的所述第一時脈訊號,並根據所述第一時脈訊號為所述第二處理模組提供第二參考時脈訊號,所述第一鎖相迴路與所述第二鎖相迴路不同,響應於所述第一鎖相迴路和所述第二鎖相迴路不同但接收同源的所述第一時脈訊號,所述時脈補償在所述第一處理模組處於通電階段時執行,其中,所述通電階段指所述第一處理模組剛剛通電但還沒有執行任何具體操作前。
- 一種電子設備,包括:記憶體,非暫態性地儲存有電腦可執行指令;處理器,配置為運行所述電腦可執行指令, 其中,所述電腦可執行指令被所述處理器運行時實現如請求項1-13任一項所述的時脈同步方法或請求項14所述的系統時脈同步方法。
- 一種非暫態性電腦可讀儲存介質,其中,所述非暫態性電腦可讀儲存介質儲存有電腦可執行指令,所述電腦可執行指令被處理器執行時實現如請求項1-13任一項所述的時脈同步方法或請求項14所述的系統時脈同步方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW111144130A TWI873481B (zh) | 2022-11-18 | 2022-11-18 | 時脈同步方法及裝置、電子設備和儲存介質 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW111144130A TWI873481B (zh) | 2022-11-18 | 2022-11-18 | 時脈同步方法及裝置、電子設備和儲存介質 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW202422266A TW202422266A (zh) | 2024-06-01 |
| TWI873481B true TWI873481B (zh) | 2025-02-21 |
Family
ID=92539972
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW111144130A TWI873481B (zh) | 2022-11-18 | 2022-11-18 | 時脈同步方法及裝置、電子設備和儲存介質 |
Country Status (1)
| Country | Link |
|---|---|
| TW (1) | TWI873481B (zh) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102265237A (zh) * | 2008-08-21 | 2011-11-30 | 克罗诺洛吉克有限公司 | 同步和计时方法及设备 |
| CN112260789A (zh) * | 2020-10-20 | 2021-01-22 | 哲库科技(北京)有限公司 | 时钟源系统、时钟同步系统和时钟同步方法 |
-
2022
- 2022-11-18 TW TW111144130A patent/TWI873481B/zh active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102265237A (zh) * | 2008-08-21 | 2011-11-30 | 克罗诺洛吉克有限公司 | 同步和计时方法及设备 |
| CN112260789A (zh) * | 2020-10-20 | 2021-01-22 | 哲库科技(北京)有限公司 | 时钟源系统、时钟同步系统和时钟同步方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| TW202422266A (zh) | 2024-06-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2024104321A1 (zh) | 时钟同步方法及装置、电子设备和存储介质 | |
| US11609598B2 (en) | Network card, time synchronization methods and devices, and computer storage media | |
| CN111385050B (zh) | 时钟同步方法、装置和存储介质 | |
| US10739814B2 (en) | Time-synchronizing a group of nodes | |
| CN111385051B (zh) | 时钟同步方法、装置和存储介质 | |
| Najafi et al. | Graham: Synchronizing clocks by leveraging local clock properties | |
| CN115801175B (zh) | 时间频率同步方法、系统、存储介质及电子设备 | |
| CN108023723A (zh) | 频率同步的方法以及从时钟 | |
| US9568944B2 (en) | Distributed timer subsystem across multiple devices | |
| TWI873481B (zh) | 時脈同步方法及裝置、電子設備和儲存介質 | |
| CN117176285A (zh) | 基于fpga的ptp时间同步方法及装置 | |
| US11853114B1 (en) | Virtualized hardware clocks for providing highly accurate time information in hosted machine instances | |
| Kinali et al. | Fault-tolerant clock synchronization with high precision | |
| TW202322635A (zh) | 網路交換器及電路板 | |
| CN117792558B (zh) | 用于集成高精度时间的方法、装置、设备和介质 | |
| CN110071778B (zh) | 一种对时方法、装置、设备及介质 | |
| CN111291011A (zh) | 文件同步方法及装置、电子设备和可读存储介质 | |
| WO2024230480A1 (zh) | 时钟同步方法、装置、计算机可读介质及电子设备 | |
| Neville-Neil | Time is an illusion lunchtime doubly so | |
| CN115397004B (zh) | 一种时钟同步方法、装置、网络设备、转换器及存储介质 | |
| CN113268105B (zh) | 时钟同步的实现方法、装置、电子设备及存储介质 | |
| Girela-López et al. | Ultra-accurate Ethernet time-transfer with programmable carrier-frequency based on White Rabbit solution | |
| CN107241365A (zh) | 一种云平台时间同步方法 | |
| Rusetskiy et al. | Architecture for time synchronization in an onboard SpaceWire network of ARINC 653 nodes | |
| US20250337556A1 (en) | Maintaining timing synchronization in network devices |