欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

時(shí)間同步方法及裝置的制作方法

文檔序號(hào):6562825閱讀:100來源:國知局
專利名稱:時(shí)間同步方法及裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信設(shè)備中系統(tǒng)時(shí)間同步技術(shù),尤其是一種通信設(shè)備中時(shí)間同步方法,以及時(shí)間同步裝置。
背景技術(shù)
對于通信網(wǎng)中的各種通信設(shè)備或者計(jì)算機(jī)設(shè)備來說,設(shè)備內(nèi)部的系統(tǒng)時(shí)間作為重要參數(shù)需要與協(xié)調(diào)世界時(shí)(Universal Time Coordinated,簡稱UTC)保持盡可能的同步,通常時(shí)間偏差被限定在足夠小的范圍內(nèi)(如100ms)。為了保證時(shí)間同步能夠順利完成,時(shí)間同步網(wǎng)絡(luò)中的各個(gè)節(jié)點(diǎn)時(shí)鐘都需要利用專用的網(wǎng)絡(luò)時(shí)間同步技術(shù)與UTC同步。在互聯(lián)網(wǎng)絡(luò)中,普遍采用網(wǎng)絡(luò)時(shí)間協(xié)議(Network Time Protocol,簡稱NTP)作為互聯(lián)網(wǎng)絡(luò)中各種通信設(shè)備的系統(tǒng)時(shí)間的時(shí)間同步協(xié)議,時(shí)間同步的準(zhǔn)確程度和NTP服務(wù)器與用戶間的距離有關(guān)。
對于通信設(shè)備內(nèi)部的各個(gè)部件來說,也需要保證時(shí)間的同步性,在采用多核CPU的通信設(shè)備中,多核CPU中的各個(gè)CPU可以運(yùn)行獨(dú)立的任務(wù),在報(bào)文處理上可采用流水線方式或者并行處理方式。如圖1所示,為多核CPU中采用流水線方式的報(bào)文處理示意圖,在流水線方式下,每個(gè)CPU完成報(bào)文處理的一部分。如圖2所示,為多核CPU中采用并行處理方式的報(bào)文處理示意圖,在并行處理方式下,每個(gè)CPU可以獨(dú)立完成報(bào)文的全部處理。無論采用流水線的方式還是并行處理的方式,多核CPU之間時(shí)間同步在某些情況下是正確處理業(yè)務(wù)的前提。
現(xiàn)有技術(shù)中關(guān)于多CPU之間時(shí)間的同步采用以下方式利用一個(gè)外部的定時(shí)器對各個(gè)CPU核按照周期同時(shí)發(fā)出定時(shí)器中斷,所謂外部的定時(shí)器為一種可按照一定的周期發(fā)出定時(shí)器中斷的設(shè)備,而各個(gè)CPU核在上電時(shí)會(huì)獲取相同的系統(tǒng)時(shí)間初值,再根據(jù)接收到的定時(shí)器中斷進(jìn)行累加,以獲得當(dāng)前的系統(tǒng)時(shí)間,從而保證了各個(gè)CPU之間時(shí)間的同步。這種同步方式可保證各個(gè)CPU核之間的時(shí)間同步,但是這種定時(shí)器中斷需要各個(gè)CPU核都進(jìn)行響應(yīng),從而使得各個(gè)CPU的開銷變大,導(dǎo)致系統(tǒng)的整個(gè)處理性能受到較大影響。

發(fā)明內(nèi)容
本發(fā)明的目的是針對現(xiàn)有的多核CPU中時(shí)間同步時(shí)定時(shí)器中斷對系統(tǒng)性能的影響等缺陷,提出一種時(shí)間同步方法,能夠保證多核CPU內(nèi)的系統(tǒng)時(shí)間一致,且不需要每個(gè)CPU核都處理定時(shí)器中斷,以降低定時(shí)器中斷對系統(tǒng)的處理性能的影響。
本發(fā)明的另一目的是提出一種時(shí)間同步裝置,能夠保證多核CPU內(nèi)的系統(tǒng)時(shí)間一致,且不需要每個(gè)CPU核都處理定時(shí)器中斷,以降低定時(shí)器中斷對系統(tǒng)的處理性能的影響。
為買現(xiàn)上述目的,本發(fā)明提供了一種時(shí)間同步方法,包括以下步驟步驟1,主控CPU核根據(jù)內(nèi)部定時(shí)器發(fā)出的定時(shí)器中斷對系統(tǒng)時(shí)間存儲(chǔ)模塊中存儲(chǔ)的系統(tǒng)時(shí)間進(jìn)行累加,以獲得當(dāng)前的系統(tǒng)時(shí)間;步驟2,主控CPU核將所述當(dāng)前的系統(tǒng)時(shí)間寫入系統(tǒng)時(shí)間存儲(chǔ)模塊;步驟3,所述非主控CPU核收到獲取系統(tǒng)時(shí)間的請求時(shí),從所述系統(tǒng)時(shí)間存儲(chǔ)模塊讀取所述當(dāng)前的系統(tǒng)時(shí)間。
在上述技術(shù)方案中,所述步驟1之前,主控CPU核在上電初始化時(shí)從時(shí)鐘源讀取時(shí)鐘源內(nèi)保存的系統(tǒng)時(shí)間初值。當(dāng)采用硬件實(shí)時(shí)時(shí)鐘作為時(shí)鐘源時(shí),由于硬件實(shí)時(shí)時(shí)鐘內(nèi)的編碼方式與操作系統(tǒng)有所區(qū)別,例如硬件實(shí)時(shí)時(shí)鐘采用BCD編碼,而操作系統(tǒng)采用BIN(二進(jìn)制)編碼,因此需要進(jìn)行格式轉(zhuǎn)換。
進(jìn)一步地,步驟3之后,主控CPU核在掉電前將所述當(dāng)前的系統(tǒng)時(shí)間寫入時(shí)鐘源,并由所述時(shí)鐘源對所述當(dāng)前的系統(tǒng)時(shí)間進(jìn)行維護(hù)。
可選地,步驟2具體為將所述當(dāng)前的系統(tǒng)時(shí)間封裝為存儲(chǔ)在系統(tǒng)時(shí)間存儲(chǔ)模塊的軟件設(shè)備,所述主控CPU核對該軟件設(shè)備執(zhí)行寫入操作。采用對軟件設(shè)備讀寫的方式可以解決多核間不能互訪各自的內(nèi)存區(qū)域的問題。
進(jìn)一步地,步驟3具體為所述非主控CPU核收到獲取系統(tǒng)時(shí)間的請求時(shí),對該軟件設(shè)備執(zhí)行讀取操作。
為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種時(shí)間同步裝置,該時(shí)間同步裝置用于多核CPU系統(tǒng),其包括主控CPU核、一個(gè)或數(shù)個(gè)非主控CPU核和用于存儲(chǔ)系統(tǒng)時(shí)間的系統(tǒng)時(shí)間存儲(chǔ)模塊,該主控CPU核中包括內(nèi)部定時(shí)器,用于按照周期發(fā)出定時(shí)器中斷;累加模塊,與所述內(nèi)部定時(shí)器和系統(tǒng)時(shí)間存儲(chǔ)模塊相連,用于接收所述內(nèi)部定時(shí)器發(fā)出的定時(shí)器中斷對系統(tǒng)時(shí)間存儲(chǔ)模塊存儲(chǔ)的系統(tǒng)時(shí)間進(jìn)行累加,獲得當(dāng)前的系統(tǒng)時(shí)間,并寫入系統(tǒng)時(shí)間存儲(chǔ)模塊;該一個(gè)或數(shù)個(gè)非主控CPU核包括接收請求模塊,用于接收獲取系統(tǒng)時(shí)間的請求;內(nèi)存讀取模塊,與所述系統(tǒng)時(shí)間存儲(chǔ)模塊和接收請求模塊相連,用于根據(jù)接收請求模塊發(fā)送的獲取系統(tǒng)時(shí)間的請求從所述系統(tǒng)時(shí)間存儲(chǔ)模塊讀取所述當(dāng)前的系統(tǒng)時(shí)間。
在上述技術(shù)方案中,還可以包括時(shí)鐘源,與所述累加模塊相連,用于為所述主控CPU核提供系統(tǒng)時(shí)間初值。所述時(shí)鐘源可為硬件實(shí)時(shí)時(shí)鐘。
基于上述的技術(shù)方案,本發(fā)明具有以下優(yōu)點(diǎn)通過主控CPU核集中管理系統(tǒng)時(shí)間計(jì)算的硬件資源,并將系統(tǒng)時(shí)間寫入系統(tǒng)時(shí)間存儲(chǔ)模塊,由其他非主控CPU核在需要時(shí)直接讀取,這樣既可以使非主控CPU核能夠共享當(dāng)前的系統(tǒng)時(shí)間,又不需要利用定時(shí)器中斷來同步系統(tǒng)時(shí)間,從而在保證了系統(tǒng)時(shí)間的同步的同時(shí),只需要主控CPU響應(yīng)定時(shí)器中斷,以此提高了系統(tǒng)性能。在實(shí)現(xiàn)上將當(dāng)前的系統(tǒng)時(shí)間作為系統(tǒng)時(shí)間變量寫入系統(tǒng)時(shí)間存儲(chǔ)模塊,并封裝為一個(gè)軟件設(shè)備,在軟件設(shè)計(jì)和應(yīng)用上可以利用統(tǒng)一的接口進(jìn)行操作。
下面通過附圖和實(shí)施例,對本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。


圖1為多核CPU中采用流水線方式的報(bào)文處理示意圖。
圖2為多核CPU中采用并行處理方式的報(bào)文處理示意圖。
圖3為本發(fā)明時(shí)間同步裝置的一實(shí)施例的結(jié)構(gòu)示意圖。
圖4為本發(fā)明時(shí)間同步裝置的另一實(shí)施例的結(jié)構(gòu)示意圖。
圖5為本發(fā)明時(shí)間同步方法的一實(shí)施例的流程示意圖。
圖6為本發(fā)明時(shí)間同步方法的另一實(shí)施例的流程示意圖。
圖7為本發(fā)明時(shí)間同步方法的又一實(shí)施例的流程示意圖。
圖8為采用軟件時(shí)鐘方式的系統(tǒng)時(shí)間同步系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式
鑒于現(xiàn)有多CPU核通信設(shè)備中,各個(gè)CPU核在維護(hù)和同步系統(tǒng)時(shí)間時(shí)都需要使用內(nèi)部定時(shí)器中斷,從而影響系統(tǒng)性能,本發(fā)明采用一種集中式的時(shí)鐘管理,不需要每個(gè)CPU核都去維護(hù)系統(tǒng)時(shí)間,從而既使CPU核能夠共享當(dāng)前的系統(tǒng)時(shí)間,又提高了系統(tǒng)性能。
如圖3所示,為本發(fā)明時(shí)間同步裝置的一實(shí)施例的結(jié)構(gòu)示意圖,在本實(shí)施例中,系統(tǒng)時(shí)間同步系統(tǒng)包括主控CPU核1、系統(tǒng)時(shí)間存儲(chǔ)模塊2和其他的CPU核3。其中主控CPU核1能夠?qū)ο到y(tǒng)時(shí)間作集中式管理,而其他的CPU核3為非主控CPU核,不需對系統(tǒng)時(shí)間進(jìn)行維護(hù),只有在需要使用時(shí)才進(jìn)行獲取。在這個(gè)實(shí)施例中,適用于多CPU核通信設(shè)備為不常掉電的單板的情況,在初始上電時(shí)通過外部時(shí)鐘源為主控CPU核提供系統(tǒng)時(shí)間初值或者利用預(yù)設(shè)的設(shè)備參數(shù),再由主控CPU核1實(shí)現(xiàn)系統(tǒng)時(shí)間的維護(hù)。所謂外部時(shí)鐘源可以為軟件時(shí)鐘源或者外部時(shí)鐘源(例如硬件RTC),預(yù)設(shè)的設(shè)備參數(shù)可以為廠家寫入到多核CPU的初始設(shè)備信息。如果單板需要經(jīng)常的掉電和上電,那就需要采用外部的時(shí)鐘源了。
在主控CPU核1中包括內(nèi)部定時(shí)器11和累加模塊12,其中累加模塊12可以接收內(nèi)部定時(shí)器11按照周期發(fā)出的定時(shí)器中斷,并將系統(tǒng)時(shí)間存儲(chǔ)模塊2中的系統(tǒng)時(shí)間進(jìn)行累加,獲得當(dāng)前的系統(tǒng)時(shí)間,然后寫回系統(tǒng)時(shí)間存儲(chǔ)模塊2。系統(tǒng)時(shí)間存儲(chǔ)模塊2中所存儲(chǔ)的系統(tǒng)時(shí)間是在預(yù)設(shè)或接收外部時(shí)鐘源的系統(tǒng)時(shí)間初值的基礎(chǔ)上,根據(jù)內(nèi)部定時(shí)器12發(fā)出的定時(shí)器中斷不斷累加獲得的。
非主控CPU核3包括接收請求模塊31和內(nèi)存讀取模塊32,當(dāng)非主控CPU核3上運(yùn)行的上層程序向非主控CPU核3中的接收請求模塊31發(fā)出獲取系統(tǒng)時(shí)間的請求時(shí),內(nèi)存讀取模塊32可以根據(jù)接收請求模塊31發(fā)送的獲取系統(tǒng)時(shí)間的請求從系統(tǒng)時(shí)間存儲(chǔ)模塊2讀取當(dāng)前的系統(tǒng)時(shí)間。
如圖4所示,為本發(fā)明時(shí)間同步裝置的另一實(shí)施例的結(jié)構(gòu)示意圖,與上一實(shí)施例相比,增加了時(shí)鐘源4,時(shí)鐘源4與主控CPU核1中的累加模塊12相連,其可以為外部的軟件時(shí)鐘源或硬件時(shí)鐘源(硬件RTC)。
累加模塊12可以在上電時(shí)從時(shí)鐘源2中獲取系統(tǒng)時(shí)間作為系統(tǒng)時(shí)間初值,并根據(jù)內(nèi)部定時(shí)器12發(fā)出的定時(shí)器中斷對系統(tǒng)時(shí)間初值進(jìn)行累加,獲得當(dāng)前的系統(tǒng)時(shí)間,然后將當(dāng)前的系統(tǒng)時(shí)間寫入系統(tǒng)時(shí)間存儲(chǔ)模塊2。累加模塊12也可在設(shè)備掉電前,可以將當(dāng)前的系統(tǒng)時(shí)間寫入時(shí)鐘源2,并由時(shí)鐘源2對當(dāng)前的系統(tǒng)時(shí)間進(jìn)行維持。
非主控CPU核在操作系統(tǒng)運(yùn)行時(shí)不需要處理對時(shí)鐘源的信號(hào),只需要在收到上層軟件獲取系統(tǒng)時(shí)間的請求時(shí),才從預(yù)定的內(nèi)存區(qū)域讀取當(dāng)前的系統(tǒng)時(shí)間以供上層軟件使用。
如圖5所示,為本發(fā)明時(shí)間同步方法的一實(shí)施例的流程示意圖,包括以下步驟步驟101,主控CPU核根據(jù)內(nèi)部定時(shí)器發(fā)出的定時(shí)器中斷對系統(tǒng)時(shí)間存儲(chǔ)模塊中存儲(chǔ)的系統(tǒng)時(shí)間進(jìn)行累加,以獲得當(dāng)前的系統(tǒng)時(shí)間;步驟102,主控CPU核將當(dāng)前的系統(tǒng)時(shí)間寫入系統(tǒng)時(shí)間存儲(chǔ)模塊;步驟103,非主控CPU核收到獲取系統(tǒng)時(shí)間的請求時(shí),從系統(tǒng)時(shí)間存儲(chǔ)模塊讀取當(dāng)前的系統(tǒng)時(shí)間。
本實(shí)施例中主控CPU核內(nèi)部的定時(shí)器作為硬件資源,與單核CPU內(nèi)的定時(shí)器相比不必有特殊要求,無論定時(shí)器的設(shè)計(jì)方式如何,定時(shí)器只需要按照Tick間隔給主控CPU一個(gè)定時(shí)器中斷即可。主控CPU核可以利用這個(gè)定時(shí)器中斷從系統(tǒng)時(shí)間初值開始進(jìn)行時(shí)間累加,以獲得當(dāng)前系統(tǒng)時(shí)間。
如圖6所示,為本發(fā)明時(shí)間同步方法的另一實(shí)施例的流程示意圖,本實(shí)施例對上一實(shí)施例的系統(tǒng)時(shí)間初值進(jìn)行進(jìn)一步地描述,在步驟101之前還可以包括步驟100,即主控CPU核在上電初始化時(shí)從時(shí)鐘源讀取該時(shí)鐘源內(nèi)保存的系統(tǒng)時(shí)間初值。當(dāng)采用硬件實(shí)時(shí)時(shí)鐘作為時(shí)鐘源時(shí),由于硬件實(shí)時(shí)時(shí)鐘內(nèi)的編碼方式與操作系統(tǒng)有所區(qū)別,例如硬件實(shí)時(shí)時(shí)鐘采用BCD編碼,而操作系統(tǒng)采用BIN(二進(jìn)制)編碼,因此需要進(jìn)行格式轉(zhuǎn)換,由于格式變換已經(jīng)是所屬領(lǐng)域技術(shù)人員很容易實(shí)現(xiàn)的技術(shù),這里就不贅述了。
在步驟3之后,主控CPU核還可以在掉電前將當(dāng)前的系統(tǒng)時(shí)間寫入所述時(shí)鐘源,并由時(shí)鐘源對所述當(dāng)前的系統(tǒng)時(shí)間進(jìn)行維護(hù),以供下次上電時(shí)由主控CPU核讀取。
系統(tǒng)時(shí)間在操作系統(tǒng)運(yùn)行過程中實(shí)際上是一種存儲(chǔ)在某段內(nèi)存地址的變量,該段內(nèi)存地址即圖3中的系統(tǒng)時(shí)間存儲(chǔ)模塊2,在利用高級語言或匯編語言編程實(shí)現(xiàn)的時(shí)候,可以將系統(tǒng)時(shí)間變量作為一個(gè)軟件設(shè)備進(jìn)行封裝,而這個(gè)軟件設(shè)備實(shí)際占用著內(nèi)存中的預(yù)定區(qū)域,例如MEM地址,在某些基于多核的通訊設(shè)備中,各CPU核所操作的內(nèi)存區(qū)域是相互區(qū)分的,通過封裝成軟件設(shè)備的方式,就可以對該軟件設(shè)備進(jìn)行讀寫,從而操作其他不屬于該CPU核的內(nèi)存區(qū)域。
下面用C語言給出了該軟件設(shè)備的定義
struct sys_time{spinlock_t lock;//spinlock_t表示軟件中的自旋鎖,用于互斥操作;int time_ms;int time_sec;int time_min;int time_hour;int time_day;int time_month;int time_year;int time_weekday;int yearday;int time_isdst;//time_isdst表示“是否為日光節(jié)約時(shí)間”,與標(biāo)準(zhǔn)Linux中的定義相匹配;}主控CPU核對這個(gè)軟件設(shè)備具有讀寫權(quán)限,負(fù)責(zé)向軟件設(shè)備定時(shí)更新當(dāng)前的系統(tǒng)時(shí)間;而其他的非主控CPU核只具有讀權(quán)限,只有在需要的時(shí)候才從該軟件設(shè)備上讀取系統(tǒng)時(shí)間。
如圖7所示,為本發(fā)明時(shí)間同步方法的又一實(shí)施例的流程示意圖,包括以下步驟步驟101,主控CPU核根據(jù)內(nèi)部定時(shí)器發(fā)出的定時(shí)器中斷對系統(tǒng)時(shí)間存儲(chǔ)模塊中存儲(chǔ)的系統(tǒng)時(shí)間進(jìn)行累加,以獲得當(dāng)前的系統(tǒng)時(shí)間;步驟102’,將當(dāng)前的系統(tǒng)時(shí)間封裝為存儲(chǔ)在系統(tǒng)時(shí)間存儲(chǔ)模塊的軟件設(shè)備,主控CPU核對該軟件設(shè)備執(zhí)行寫入操作;步驟103’,非主控CPU核收到獲取系統(tǒng)時(shí)間的請求時(shí),對該軟件設(shè)備執(zhí)行讀取操作。
本實(shí)施例也可以在步驟101之前加入上一實(shí)施例中的步驟100,在步驟103’之后加入上一實(shí)施例中的步驟104。
其中采用C語言描述的系統(tǒng)時(shí)間定義不應(yīng)作為實(shí)現(xiàn)方式的限制,其它的可以完成系統(tǒng)時(shí)間變量的定義的實(shí)現(xiàn)形式也應(yīng)在本發(fā)明的覆蓋范圍之內(nèi)。
除了以主控CPU核進(jìn)行集中式管理以外,還可以采用軟件時(shí)鐘方式進(jìn)行系統(tǒng)時(shí)間管理,如圖8所示,為采用軟件時(shí)鐘方式的系統(tǒng)時(shí)間同步系統(tǒng)的結(jié)構(gòu)示意圖,每個(gè)CPU核與單核CPU核相比,沒有特殊的要求,但時(shí)鐘源可采用一種軟件時(shí)鐘源6,整個(gè)系統(tǒng)由軟件時(shí)鐘源6集中管理,避免了各個(gè)CPU核的晶振、定時(shí)器等差異帶來的系統(tǒng)時(shí)間誤差,軟件時(shí)鐘源6從硬件時(shí)鐘源(硬件RTC)中獲取系統(tǒng)時(shí)間初值,并根據(jù)外部的硬件定時(shí)器對系統(tǒng)時(shí)間初值進(jìn)行累加以獲得當(dāng)前系統(tǒng)時(shí)間。然后根據(jù)上層軟件要求的時(shí)間精度,在軟件時(shí)鐘在軟件定時(shí)事件觸發(fā)時(shí),通過軟件時(shí)鐘信號(hào)5(例如消息、軟件脈沖信號(hào)等)周期的向各個(gè)CPU核發(fā)送軟件時(shí)鐘信號(hào),再由各個(gè)CPU核自行更新維護(hù)系統(tǒng)時(shí)間。由于CPU核對軟件時(shí)鐘信號(hào)的處理要比處理定時(shí)器中對系統(tǒng)性能的影響要小得多,因此可以在很小的系統(tǒng)性能的影響下實(shí)現(xiàn)系統(tǒng)時(shí)間的同步。
最后應(yīng)當(dāng)說明的是以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非對其限制;盡管參照較佳實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,所屬領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解依然可以對本發(fā)明的具體實(shí)施方式
進(jìn)行修改或者對部分技術(shù)特征進(jìn)行等同替換;而不脫離本發(fā)明技術(shù)方案的精神,其均應(yīng)涵蓋在本發(fā)明請求保護(hù)的技術(shù)方案范圍當(dāng)中。
權(quán)利要求
1.一種時(shí)間同步方法,其包括以下步驟步驟1,主控CPU核根據(jù)內(nèi)部定時(shí)器發(fā)出的定時(shí)器中斷對系統(tǒng)時(shí)間存儲(chǔ)模塊中存儲(chǔ)的系統(tǒng)時(shí)間進(jìn)行累加,以獲得當(dāng)前的系統(tǒng)時(shí)間;步驟2,主控CPU核將所述當(dāng)前的系統(tǒng)時(shí)間寫入所述系統(tǒng)時(shí)間存儲(chǔ)模塊;步驟3,所述非主控CPU核收到獲取系統(tǒng)時(shí)間的請求時(shí),從所述系統(tǒng)時(shí)間存儲(chǔ)模塊讀取所述當(dāng)前的系統(tǒng)時(shí)間。
2.根據(jù)權(quán)利要求1所述的時(shí)間同步方法,其中所述步驟1之前,主控CPU核在上電初始化時(shí),從時(shí)鐘源讀取時(shí)鐘源內(nèi)保存的系統(tǒng)時(shí)間初值。
3.根據(jù)權(quán)利要求2所述的時(shí)間同步方法,其中所述主控CPU核在上電初始化時(shí)從時(shí)鐘源讀取該時(shí)鐘源內(nèi)保存的系統(tǒng)時(shí)間初值具體為主控CPU核在上電初始化時(shí)從硬件實(shí)時(shí)時(shí)鐘讀取該時(shí)鐘源內(nèi)保存的系統(tǒng)時(shí)間初值,并進(jìn)行格式轉(zhuǎn)換。
4.根據(jù)權(quán)利要求1所述的時(shí)間同步方法,其中步驟3之后,主控CPU核在掉電前將所述當(dāng)前的系統(tǒng)時(shí)間寫入時(shí)鐘源,并由所述時(shí)鐘源對所述當(dāng)前的系統(tǒng)時(shí)間進(jìn)行維護(hù)。
5.根據(jù)權(quán)利要求1所述的時(shí)間同步方法,其中步驟2具體為將所述當(dāng)前的系統(tǒng)時(shí)間對應(yīng)的變量封裝為存儲(chǔ)在系統(tǒng)時(shí)間存儲(chǔ)模塊的軟件設(shè)備,所述主控CPU核對該軟件設(shè)備執(zhí)行寫入操作。
6.根據(jù)權(quán)利要求5所述的時(shí)間同步方法,其中步驟3具體為所述非主控CPU核收到獲取系統(tǒng)時(shí)間的請求時(shí),對該軟件設(shè)備執(zhí)行讀取操作。
7.一種時(shí)間同步裝置,該時(shí)間同步裝置用于多核CPU系統(tǒng),其包括主控CPU核、一個(gè)或數(shù)個(gè)非主控CPU核和用于存儲(chǔ)系統(tǒng)時(shí)間的系統(tǒng)時(shí)間存儲(chǔ)模塊,該主控CPU核中包括內(nèi)部定時(shí)器,用于按照周期發(fā)出定時(shí)器中斷;累加模塊,與所述內(nèi)部定時(shí)器和系統(tǒng)時(shí)間存儲(chǔ)模塊相連,用于接收所述內(nèi)部定時(shí)器發(fā)出的定時(shí)器中斷對系統(tǒng)時(shí)間存儲(chǔ)模塊存儲(chǔ)的系統(tǒng)時(shí)間進(jìn)行累加,獲得當(dāng)前的系統(tǒng)時(shí)間,并寫入系統(tǒng)時(shí)間存儲(chǔ)模塊;該一個(gè)或數(shù)個(gè)非主控CPU核包括接收請求模塊,用于接收獲取系統(tǒng)時(shí)間的請求;內(nèi)存讀取模塊,與所述系統(tǒng)時(shí)間存儲(chǔ)模塊和接收請求模塊相連,用于根據(jù)接收請求模塊發(fā)送的獲取系統(tǒng)時(shí)間的請求從所述系統(tǒng)時(shí)間存儲(chǔ)模塊讀取所述當(dāng)前的系統(tǒng)時(shí)間。
8.根據(jù)權(quán)利要求7所述的時(shí)間同步裝置,其中還包括時(shí)鐘源,與所述累加模塊相連,用于為所述主控CPU核提供系統(tǒng)時(shí)間初值。
9.根據(jù)權(quán)利要求7所述的時(shí)間同步裝置,其中所述時(shí)鐘源為硬件實(shí)時(shí)時(shí)鐘。
全文摘要
本發(fā)明涉及一種時(shí)間同步方法,其包括主控CPU核根據(jù)內(nèi)部定時(shí)器發(fā)出的定時(shí)器中斷對系統(tǒng)時(shí)間存儲(chǔ)模塊中存儲(chǔ)的系統(tǒng)時(shí)間進(jìn)行累加,以獲得當(dāng)前的系統(tǒng)時(shí)間;主控CPU核將當(dāng)前的系統(tǒng)時(shí)間寫入系統(tǒng)時(shí)間存儲(chǔ)模塊;非主控CPU核收到獲取系統(tǒng)時(shí)間的請求時(shí),從系統(tǒng)時(shí)間存儲(chǔ)模塊讀取當(dāng)前的系統(tǒng)時(shí)間。本發(fā)明還涉及一種時(shí)間同步裝置,該時(shí)間同步裝置用于多核CPU系統(tǒng),包括主控CPU核、一個(gè)或數(shù)個(gè)非主控CPU核和系統(tǒng)時(shí)間存儲(chǔ)模塊。本發(fā)明既可使非主控CPU核能夠共享當(dāng)前的系統(tǒng)時(shí)間,又不需定時(shí)器中斷來同步系統(tǒng)時(shí)間,從而在保證系統(tǒng)時(shí)間的同步的同時(shí),只需要主控CPU響應(yīng)定時(shí)器中斷,減少非主控CPU的中斷開銷,以此提高了系統(tǒng)性能。
文檔編號(hào)G06F1/12GK1949129SQ200610145379
公開日2007年4月18日 申請日期2006年11月27日 優(yōu)先權(quán)日2006年11月27日
發(fā)明者郭昕 申請人:杭州華為三康技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
鄂伦春自治旗| 白沙| 和静县| 北碚区| 双辽市| 同仁县| 资溪县| 新邵县| 天水市| 霸州市| 昔阳县| 农安县| 梨树县| 防城港市| 石泉县| 永福县| 齐齐哈尔市| 保康县| 霍城县| 常山县| 紫阳县| 建平县| 南乐县| 鄂尔多斯市| 吴旗县| 和顺县| 基隆市| 响水县| 思茅市| 志丹县| 长汀县| 北宁市| 府谷县| 灵山县| 灵丘县| 茂名市| 容城县| 辽中县| 牙克石市| 登封市| 琼海市|