專利名稱:調(diào)整時鐘信號相位差的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域和計算機領(lǐng)域,特別是涉及一種調(diào)整時鐘信號相位差的系統(tǒng)和方法。
背景技術(shù):
目前,通信系統(tǒng)和計算機系統(tǒng)在人們的工作和生活中扮演著越來越重要的角色,系統(tǒng)的穩(wěn)定性也就顯得越來越重要。為了提高通信系統(tǒng)和計算機系統(tǒng)的穩(wěn)定性,需要對系統(tǒng)中一些比較關(guān)鍵的單板(如交換板)進行熱備份,以便當主單板出現(xiàn)故障時,系統(tǒng)數(shù)據(jù)可以立即切換到備份單板上去,由備份單板代替主單板繼續(xù)工作,以保證整個系統(tǒng)繼續(xù)正常運轉(zhuǎn)。所述主單板指的是系統(tǒng)中正在工作的單板;所述備份單板指的是當主單板出現(xiàn)故障后,代替主單板繼續(xù)工作的單板。
在實際使用中,為了順利地進行主單板和備份單板之間的切換,就要求主單板的時鐘信號和備份單板的時鐘信號相位基本相同,一般要求相位差小于2ns(通常,時鐘信號是高速時,相位差的單位、相位的單位以及延時時間的單位均為ns(納秒))。所述相位差指的是由主單板和備份單板布線的差異、采用的元器件批次不同、主單板時鐘信號和備份單板時鐘信號路徑不完全相同而導(dǎo)致的時鐘信號相位差異。如果主單板和備份單板存在時鐘信號的相位差異,那么在同一時刻來采樣同一信號所得到的采樣結(jié)果可能會不同。
下面以ALE(使能)信號為例,來比較主單板和備份單板上存在時鐘相位差t時,同一時刻采樣ALE(使能)信號所得到的采樣結(jié)果。
請參閱圖1,主單板時鐘信號和備份單板時鐘信號的相位差為t,也就是主單板時鐘信號比備份單板時鐘信號早時間t。主單板的ALE信號和備份單板的ALE信號相同,分別由主單板時鐘信號和備份單板時鐘信號采樣。圖1中所示時間段t11、t12和t13均等于相位差t。在t11時間段內(nèi)主單板的ALE信號和備份單板的ALE信號從1變?yōu)?,這樣主單板時鐘信號在第一個上升沿采樣結(jié)果為1,而備份單板時鐘信號在第一個上升沿采樣結(jié)果為0;在t12時間段內(nèi)主單板的ALE信號和備份單板的ALE信號從0變?yōu)?,這樣主單板時鐘信號在第三個上升沿采樣結(jié)果為0,而備份單板時鐘信號在第三個上升沿采樣結(jié)果為1;在t13時間段內(nèi)主單板的ALE信號和備份單板的ALE信號從1變?yōu)?,這樣主單板時鐘信號在第七個上升沿采樣結(jié)果為1,而備份單板時鐘信號在第七個上升沿采樣結(jié)果為0。因此,在t11、t12和t13時間段內(nèi),若主單板出現(xiàn)故障,系統(tǒng)數(shù)據(jù)需要切換到備份單板時,由于采樣到的主單板的ALE信號和備份單板ALE信號狀態(tài)不同,將導(dǎo)致依據(jù)ALE信號狀態(tài)而工作的其他信號出現(xiàn)錯誤,從而使得整個系統(tǒng)不能正常工作。因此,當備份單板和主單板存在時鐘信號相位差時,需要對相位差進行調(diào)整,以使同一時刻對同一信號的采樣結(jié)果一致,進而保證主單板和備份單板之間能夠順利切換。
請參閱圖2,主單板的時鐘信號周期T21和備份單板的時鐘信號周期T22相等,均為時間T。但是,主單板和備份單板的時鐘信號之間不同步,存在相位差t21,也就是主單板的時鐘信號的上升沿比備份單板的時鐘信號的上升沿早時間t21。為了保證系統(tǒng)始終正常工作,需要對主單板和備份單板之間存在的時鐘信號相位差進行調(diào)整,以使備份單板的時鐘信號與主單板的時鐘信號同步(以上升沿為例,主單板時鐘信號的上升沿和備份單板時鐘信號的上升沿同步),也就是將備份單板的時鐘信號延遲時間t22。其中,t22=T-t21。
由上可以看出,若要保證系統(tǒng)正常的工作,需要對主單板和備份單板存在的時鐘信號相位差進行調(diào)整,所謂調(diào)整也就是對備份單板時鐘信號進行延時,以使其與主單板時鐘信號的相位基本相同。
現(xiàn)有技術(shù)中,對主單板的時鐘信號和備份單板時鐘信號相位差的調(diào)整可以在可編程邏輯器件內(nèi)完成。所述可編程邏輯器件可以是CPLD(ComplexProgrammable Logical Device,復(fù)雜可編程邏輯器件)或FPGA(FieldProgrammable Gate Array,現(xiàn)場可編程門陣列)。目前,較為通用的調(diào)整時鐘信號相位差的方法有下述兩種。
方法一根據(jù)可編程邏輯器件的底層文件來改變時鐘信號的路徑,進而實現(xiàn)相位差的調(diào)整。
所述底層文件是在可編程邏輯器件布線完成后,由設(shè)計人員借助可編程邏輯器件廠商提供的開發(fā)工具(如MAXPLUSII,F(xiàn)oundation,ISE),利用專門的語言VHDL或VERILOG HDL生成的。其中包含需要延時的時鐘信號、各個信號路徑及各個路徑時間等信息。所述底層文件可以使用專門的方法下載到可編程邏輯器件里,以實現(xiàn)相位差的調(diào)整。
下面以可編程邏輯器件FPGA為例,來說明方法一如何進行主單板和備份單板時鐘信號相位差的調(diào)整。
首先,用示波器測量主單板和備份單板時鐘信號的相位差,確定備份單板時鐘信號需要延時的時間(以下稱為延時時間S);然后,由設(shè)計/調(diào)試人員在底層文件中找到備份單板上的時鐘信號,并通過手工計算來尋找路徑時間與延時時間S相等的延時路徑;然后,由設(shè)計/調(diào)試人員通過開發(fā)工具將備份單板的時鐘信號的原有路徑修改為延時路徑,并生成新的底層文件;最后,將新的底層文件下載在至FPGA中,由FPGA將備份單板時鐘信號延遲延時時間S,從而實現(xiàn)對主單板和備份單板時鐘信號相位差的調(diào)整。
在實際應(yīng)用中,由于底層文件中記載的路徑時間與示波器實測的路徑時間往往不一致,因此就需要重復(fù)上述測量、尋找延時路徑、修改延時路徑、下載底層文件等步驟,以便找到合適的延時路徑,進而實現(xiàn)相位差的調(diào)整。
例如主單板和備份單板時鐘信號的路徑都是直接從A點到B點。首先,通過示波器測量出主單板和備份單板時鐘信號存在8ns的相位差,即備份單板的延時時間S是8ns。設(shè)計/調(diào)試人員在底層文件中查找連接A、B兩點的各個路徑(路徑一,先由A到C,再從C到D,最后從D到B;路徑二由A到L,再從L到M,最后從M到B;等等),并計算各個路徑的時間,從中找出路徑時間約等于8ns的路徑。路徑一中,由A至C路徑時間為2ns,由C至D路徑時間為4ns,由D至B路徑時間為2ns,該路徑時間總和正好等于8ns。于是就選定該路徑(A→C→D→B)為延時路徑,將A、B之間原有的路徑(由A直接到B)修改為延時路徑(A→C→D→B),以便將備份單板的時鐘信號延遲8ns。時鐘信號經(jīng)過延時路徑后,經(jīng)過示波器實測發(fā)現(xiàn)主單板和備份單板時鐘信號相位差實際為3ns,而不是0ns。這就是由于底層文件中記載的路徑時間與示波器實測的路徑時間不一致而造成的。因此,就需要再重復(fù)上述各個步驟來尋找到延時時間為3ns的路徑,直至將主單板和備份單板時鐘信號的相位差調(diào)整到2ns之內(nèi),以滿足時鐘信號基本同相的要求。
盡管人們可以借助方法一來調(diào)整時鐘信號的相位差,但是在實際應(yīng)用中,方法一不可避免的存在下述缺陷其一,效率低。方法一中由設(shè)計/調(diào)試人員在底層文件中尋找到路徑時間等于延時時間S的延時路徑,并將時鐘信號的原有路徑修改為延時路徑以延遲備份單板的時鐘信號,從而實現(xiàn)主單板和備份單板時鐘信號相位差的調(diào)整。但是,由于時鐘信號的路徑往往比較長,并且相位差不確定,因而,在實際應(yīng)用中往往會花費大量的時間卻找不到合適的延時路徑,這樣也就不能將時鐘信號的相位差調(diào)整到2ns之內(nèi)。因此,采用方法一來調(diào)整時鐘信號相位差的效率較低。
其二,過程繁瑣。方法一中需要在底層文件中尋找合適的延時路徑,而底層文件是由設(shè)計/調(diào)試人員借助開發(fā)工具生成的。由于開發(fā)工具并不能完全模擬實際情況,因此底層文件記載的路徑時間與示波器實測的路徑時間往往不一致,這時就需要重新測試、尋找延時路徑、修改延時路徑、下載底層文件,直至找到底層文件記載的延時時間和實際測試時間相等的延時路徑。因此,在實際應(yīng)用中,為了尋找合適的路徑往往需要若干次地重復(fù)上述各個步驟,使得調(diào)整過程較為繁瑣。同時,由于尋找延時路徑、計算路徑的延時時間都需要由設(shè)計/調(diào)試人員手工完成,同樣使得相位差的調(diào)整過程較為繁瑣。
其三,應(yīng)用范圍小。方法一需要由設(shè)計/調(diào)試人員來根據(jù)延時時間S在可編程邏輯器件的底層文件中尋找合適的延時路徑,并改變時鐘信號的路徑以實現(xiàn)備份單板時鐘信號的延時,進而實現(xiàn)主單板和備份單板時鐘信號相位差的調(diào)整。因此,方法一中使用的可編程邏輯器件必須具有可在底層修改路徑的功能。然而,在實際應(yīng)用中并不是所有的可編程邏輯器件都具有此功能,而是只有某些大廠家提供的可編程邏輯器件才具有此功能。因而,使得方法一的應(yīng)用范圍較小。同時,方法一中要求設(shè)計人員必須精通可編程邏輯器件的底層布線,才能進行時鐘信號相位差的調(diào)整,這同樣限制了方法一的應(yīng)用范圍。
在實際應(yīng)用中,人們又嘗試采用方法二來實現(xiàn)時鐘信號相位差的調(diào)整。方法二需要在備份單板上設(shè)置專門用于延遲時鐘信號的專用芯片,由所述專用芯片來調(diào)整主單板和備份單板時鐘信號的相位差。
具體步驟是首先,測量主單板時鐘信號和備份單板時鐘信號的相位差,即延時時間S;然后,把延時時間S換算成時鐘周期的倍數(shù)(N+a/b倍,其中,N、a、b均為整數(shù),且a<b,N表示整數(shù)倍,a/b表示小數(shù)倍),并將所述倍數(shù)與調(diào)整步長進行比較,確定調(diào)整步數(shù);然后,按照芯片手冊上芯片管腳的信息(不同的調(diào)整步長和調(diào)整步數(shù),對應(yīng)芯片管腳不同的輸入電平)來調(diào)整專用芯片輸入時鐘(備份單板的時鐘信號)的相位,實現(xiàn)對備份單板時鐘信號的延時,進而實現(xiàn)備份單板時鐘信號與主單板時鐘信號相位差的調(diào)整。
其中,所述調(diào)整步長是專用芯片每次調(diào)整的最小相位,也就是專用芯片的調(diào)整精度。所述調(diào)整步數(shù)指的是每次調(diào)整所需要的調(diào)整步長的數(shù)量?,F(xiàn)有技術(shù)中,專用芯片的最小調(diào)整步長(調(diào)整精度)為1/4個時鐘周期。
在實際應(yīng)用中,方法二存在下述缺陷其一,精度低。方法二需要采用專用芯片,然而目前專用芯片的最小調(diào)整步長為1/4個時鐘周期。這樣,如果時鐘周期為20ns,而相位差為19ns(備份單板比主單板提前19ns),則調(diào)整步長為5ns(1/4時鐘周期),也就是備份單板的時鐘信號每步最少只能被延時5ns,而不能以更小的步長進行延時。這樣,調(diào)整3個步長后,相位差為4ns。若再調(diào)整1個步長,則相位差又變?yōu)?9ns。因此,經(jīng)過方法二調(diào)整后,相位差最小為4ns。由此可見,由于方法二中采用的專用芯片的調(diào)整步長最小為1/4個時鐘周期,往往難以將時鐘信號的相位差調(diào)整在2ns之內(nèi)。因而,方法二的調(diào)整精度較低。
其二,成本高。方法二中需要在備份單板上設(shè)置專用芯片,這導(dǎo)致了成本的增加。同時,在備份單板上另外加入專用芯片又會占用備份單板的空間資源,導(dǎo)致備份單板的體積增大,這同樣會增加成本。
其三,應(yīng)用范圍小。實際應(yīng)用中,時鐘信號可以在一個時鐘周期的調(diào)整范圍內(nèi)任意調(diào)整。這樣,對于時鐘周期是26ns的時鐘信號,其調(diào)整范圍應(yīng)該是0~26ns。所謂調(diào)整范圍指的是專用芯片最多可以把時鐘信號延時多少納秒。目前,由于工藝和設(shè)計水平的限制,對于高速時鐘信號,專用芯片的調(diào)整范圍一般只能在20ns以內(nèi)。這樣,就使得方法二不能用于調(diào)整延時時間較長的時鐘信號或者時鐘周期較長的時鐘信號,因而應(yīng)用范圍較小。
發(fā)明內(nèi)容
本發(fā)明解決的技術(shù)問題在于提供了一種調(diào)整時鐘信號相位差的系統(tǒng)和方法,用于解決現(xiàn)有技術(shù)中調(diào)整時鐘信號相位差過程中效率低、精度低、成本高的問題,同時本發(fā)明提供的系統(tǒng)和方法還具有過程簡單、調(diào)整范圍和應(yīng)用范圍較寬的特點。
為此,本發(fā)明解決技術(shù)問題的技術(shù)方案是提供了一種調(diào)整時鐘信號相位差的方法,用于調(diào)整主單板和備份單板時鐘信號的相位差,包括步驟(1)確定實際使用的延時器;(2)控制備份單板的時鐘信號經(jīng)過所述延時器后輸出。
所述步驟(1)中,根據(jù)備份單板時鐘信號需要延時的時間和單個延時器的延時時間來確定實際使用的延時器。
所述步驟(1)之前還包括預(yù)先根據(jù)備份單板時鐘信號需要延時的時間和單個延時器的延時時間來確定實際使用的延時器;將實際使用的延時器的信息寫入寄存器,所述信息包括延時器的實際使用數(shù)量。
所述步驟(1)中,通過讀取寄存器的內(nèi)容來確定實際使用的延時器。
所述延時器是緩沖器。
提供了一種調(diào)整時鐘信號相位差的系統(tǒng),用于調(diào)整主單板和備份單板時鐘信號的相位差,所述系統(tǒng)包括可編程邏輯單元,所述可編程邏輯單元包括延時模塊,用于延遲備份單板的時鐘信號;所述延時模塊包括若干個延時器;控制模塊,用于確定延時模塊中實際使用的延時器,并控制時鐘信號經(jīng)過所述延時器后輸出。
所述控制模塊包括運算器,用于根據(jù)備份單板時鐘信號需要延時的時間和單個延時器的延時時間來確定實際使用的延時器。
所述控制模塊包括寄存器,用于預(yù)先存放實際使用的延時器的信息。
所述可編程邏輯單元是復(fù)雜可編程邏輯器件CPLD或現(xiàn)場可編程門陣列FPGA。
相對于現(xiàn)有技術(shù),本發(fā)明的有益效果是其一,效率高。本發(fā)明中,首先確定實際使用的延時器,然后控制備份單板的時鐘信號經(jīng)過所述延時器,以將時鐘信號延遲延時時間S,從而實現(xiàn)對備份單板和主單板時鐘信號相位差的調(diào)整。這樣,本發(fā)明就無需通過在底層文件中尋找并改變備份單板時鐘信號的路徑來實現(xiàn)相位差的調(diào)整,也就不會象現(xiàn)有技術(shù)的方法一那樣,因找不到合適的延時路徑而不能調(diào)整時鐘信號的相位差。因此,本發(fā)明提供的系統(tǒng)和方法工作效率較高。
其二,調(diào)整精度高。由于本發(fā)明采用延時器來延時備份單板的時鐘信號,進而達到備份單板的時鐘信號與主單板的時鐘信號相位相同的目的。在實際應(yīng)用中,每一個延時器的延時時間P通??尚〉?ns,也就是時鐘信號每經(jīng)過一個延時器就延時1ns。這樣,本發(fā)明中調(diào)整步長為1ns,調(diào)整精度也可達到1ns。因而,同現(xiàn)有技術(shù)相比,本發(fā)明減小了調(diào)整步長,提高了調(diào)整精度。
其三,成本低。本發(fā)明無需在備份單板上另外設(shè)置專用芯片來延遲時鐘信號。因而,同現(xiàn)有技術(shù)相比,成本較低。同時,由于本發(fā)明采用的延時器、寄存器、控制模塊以及運算器都是備份單板上現(xiàn)有的器件,不需要增加新的器件,因而不會增加成本。再者,由于本發(fā)明不需要另外增加器件,也就不會增大備份單板的體積,因而成本也就較低。
其四,過程簡單。首先確定實際使用的延時器,然后控制備份單板的時鐘信號經(jīng)過所述延時器,以將時鐘信號延遲延時時間S,從而實現(xiàn)對備份單板和主單板時鐘信號相位差的調(diào)整。而不是象現(xiàn)有技術(shù)那樣需要反復(fù)測試、尋找延時路徑、修改延時路徑、下載底層文件等步驟,同時,也就不需要花費較多的時間進行邏輯設(shè)計和測量。因而,同現(xiàn)有技術(shù)相比,本發(fā)明提供的調(diào)整時鐘信號相位差的系統(tǒng)和方法工作過程較為簡單。
其五,應(yīng)用范圍寬。本發(fā)明中采用備份單板上的延時器來實現(xiàn)時鐘信號的延時,進而實現(xiàn)對備份單板和主單板時鐘相位差的調(diào)整。由于備份單板的可編程邏輯器件中有足夠多的延時器,因此,備份單板的時鐘信號可以通過較多的延時器。這樣,就可以在較大的范圍內(nèi)延遲備份單板時鐘信號,使得調(diào)整范圍較寬。因此,本發(fā)明既可以用于調(diào)整較小的時鐘信號相位差,也可以用于調(diào)整較大的時鐘信號相位差,應(yīng)用范圍較寬。同時,由于本發(fā)明無需在底層文件中修改路徑,這樣,其應(yīng)用范圍也就不僅僅局限于可在底層修改路徑的可編程邏輯器件,這同樣使得應(yīng)用范圍拓寬。
圖1是現(xiàn)有技術(shù)中主單板和備份單板ALE信號的時序圖;圖2是現(xiàn)有技術(shù)中時鐘信號時序圖;圖3是本發(fā)明中調(diào)整時鐘信號相位差系統(tǒng)原理框圖;圖4是備份單板經(jīng)過調(diào)整時鐘信號相位差的系統(tǒng)延時前后,主單板和備份單板時鐘信號示意圖;圖5是本發(fā)明調(diào)整時鐘信號相位差的方法的流程圖;圖6是本發(fā)明調(diào)整時鐘信號相位差的方法的一個實施例流程圖;圖7是應(yīng)用調(diào)整時鐘信號相位差的方法延時前后,主單板和備份單板時鐘信號示意圖。
具體實施例方式
請參閱圖3,本發(fā)明提供的調(diào)整時鐘信號相位差的系統(tǒng)2包括用于延遲備份單板時鐘信號的可編程邏輯單元(圖未示)。
所述可編程邏輯單元包括控制模塊4和延時模塊6。
其中,延時模塊6用于將備份單板的時鐘信號延遲需要延時的時間(以下稱延時時間S),以將備份單板時鐘信號調(diào)整到與主單板時鐘信號的相位基本相同。所述延時模塊6包括若干個延時器(buffer)7,單個延時器7能夠?qū)r鐘信號延遲固定的時間。單個延時器7的延時時間以下簡稱延時時間P。
控制模塊4,用于確定實際使用的延時器7,并控制備份單板的時鐘信號經(jīng)過所述延時器7后輸出。
在實際應(yīng)用中,控制模塊4可以包括運算器(圖未示),用于根據(jù)延時時間S和單個延時器7的延時時間P來確定實際使用的延時器7。其中,延時時間S可以通過與本發(fā)明調(diào)整時鐘信號相位差的系統(tǒng)2相連接的測量單元1來實際測定。
在實際應(yīng)用中,控制模塊4還可以包括寄存器(圖未示),所述寄存器中預(yù)先存放實際使用的延時器7的信息。所述信息包括實際使用的延時器7的數(shù)量(以下稱數(shù)量A)或?qū)嶋H使用的延時器7的序號。
控制模塊4可以從寄存器中讀取數(shù)量A,并控制備份單板的時鐘信號經(jīng)過延時模塊6中的數(shù)量A個延時器7,由數(shù)量A個延時器7將備份單板的時鐘信號延遲延時時間S,從而使備份單板時鐘信號調(diào)整到與主單板時鐘信號的相位基本相同。
控制模塊4還可以從寄存器中讀取實際使用的延時器7的序號,并控制備份單板的時鐘信號經(jīng)過延時模塊6中的延時器7,以實現(xiàn)備份單板與主單板時鐘信號相位的調(diào)整。其中,若序號為1表示經(jīng)過序號為1的延時器7將備份單板的時鐘信號延遲延時時間S;若序號為5表示經(jīng)過序號為1~5的延時器將備份單板的時鐘信號延遲延時時間S。
需要指出的是,在實際應(yīng)用中,測量單元1可以采用示波器。寄存器可以采用位(bit)寄存器。延時器7可以是可編程邏輯器件中的緩沖器;也可以采用可編程邏輯器件之外的緩沖器,例如TTL的74LS系列緩沖器(74LS244等),或者其他的延時器。
請參閱圖4,主單板的時鐘信號周期T41和備份單板的時鐘信號周期T42相等,均為時間T(圖未示)。但是,主單板和備份單板的時鐘信號存在相位差t41。為了調(diào)整備份單板和主單板時鐘信號的相位差,將備份單板的時鐘信號接入調(diào)整時鐘信號相位差的系統(tǒng)610,經(jīng)調(diào)整時鐘信號相位差的系統(tǒng)610延遲時間t42(t42=T-t41)后,備份單板時鐘信號與主單板的時鐘信號的相位差為0或小于2ns,也就是主單板時鐘信號的上升沿和下降沿分別與備份單板時鐘信號的上升沿和下降沿同步。
請參閱圖5,本發(fā)明提供的調(diào)整時鐘信號相位差的方法具體包括下述步驟步驟510,確定實際使用的延時器7。
在實際應(yīng)用中,可以通過下述兩種方式來確定實際使用的延時器7。
方式一,根據(jù)延時時間S和單個延時器7的延時時間P來確定實際使用的延時器7。
方式二,預(yù)先根據(jù)延時時間S和單個延時器7的延時時間P來確定實際使用的延時器7;并將實際使用的延時器7的信息寫入寄存器;讀取寄存器的內(nèi)容來確定實際使用的延時器7。其中,所述延時器7的信息包括實際使用的延時器7的數(shù)量A或?qū)嶋H使用的延時器7的序號。
步驟520,根據(jù)實際使用的延時器7來控制備份單板的時鐘信號經(jīng)過所述延時器7后輸出。備份單板的時鐘信號經(jīng)過實際使用的延時器7延遲延時時間S后,其相位與主單板時鐘信號的相位基本相同。
圖6是本發(fā)明調(diào)整時鐘信號相位差的方法的一個實施例流程圖。
其中,延時時間S通過與調(diào)整時鐘信號相位差的系統(tǒng)2相連接的測量單元1實際測定??刂颇K4中包括用來確定實際使用的延時器7的運算器。
步驟410,測量延時時間S。測量單元1測量主單板時鐘信號和備份單板時鐘信號的相位差,即延時時間S,并將延時時間S傳輸給控制模塊4。
步驟420,控制模塊4將延時時間S傳送給運算器,運算器根據(jù)延時時間S和單個延時器的延時時間P來確定實際使用的延時器7。
步驟430,運算器依據(jù)公式(延時器7的實際使用數(shù)量A≤2M-1,其中M為滿足公式要求的最小整數(shù),用來表示寄存器的實際使用位數(shù))來確定寄存器的實際使用位數(shù)M。
步驟440,控制模塊4將延時器7的信息寫入寄存器(所述信息包括延時器7的實際使用數(shù)量和延時器的序號等),并控制備份單板的時鐘信號經(jīng)過所述延時器7以實現(xiàn)延時,進而調(diào)整時鐘信號的相位差。
下面舉例說明采用本發(fā)明提供的方法如何實現(xiàn)相位差的調(diào)整。其中,寄存器為位寄存器,延時時間P為1ns。
首先,測量單元1測量延時時間S為10ns,并將延時時間S傳輸給控制模塊4。
然后,控制模塊4將延時時間S(10ns)和延時時間P(1ns)傳送至運算器,運算器根據(jù)延時時間S(10ns)和延時時間P(1ns)之商計算出延時器7的實際使用數(shù)量A為10,即實際需要10個延時器7來延遲備份單板的時鐘信號。
再后,運算器根據(jù)公式(延時器7的實際使用數(shù)量A≤2M-1)和延時器7的實際使用數(shù)量A,計算出寄存器的實際使用位數(shù)M為4,并將寄存器的實際使用位數(shù)M傳送至控制模塊4。
最后,控制模塊4將延時器7的實際使用數(shù)量A寫入寄存器的各個位(1至M位)。由于延時器7的實際使用數(shù)量A為10,寄存器的實際使用位數(shù)M為4,因而向寄存器的低4位(Q1、Q2、Q3和Q4,圖未示)分別寫入1、0、1和0。同時,控制模塊4控制備份單板的時鐘信號經(jīng)過10個延時器7以延遲10ns,進而將備份單板的時鐘信號與主單板的時鐘信號調(diào)整為同相。需要指出的是,在步驟410之前還可以有下述步驟第一步,根據(jù)時鐘周期來確定延時器7的最大數(shù)量B。延時器7的最大數(shù)量B可以確保備份單板的時鐘信號通過足夠多個延時器7。
第二步,根據(jù)延時器7的最大數(shù)量B和公式(延時器7的最大數(shù)量B≤2N-1,其中N為滿足公式要求的最小整數(shù),表示寄存器的最多位數(shù))來確定寄存器的最多位數(shù)N,并設(shè)置一個N位寄存器。其中,2N應(yīng)大于或等于延時器7的最大數(shù)量B,這樣通過寫寄存器的最多位數(shù)N就可以覆蓋從0到延時器7的最大數(shù)量B的所有的整數(shù)。
下面舉例說明如何確定延時器7的最大數(shù)量B、寄存器的最多位數(shù)N,以及如何實現(xiàn)相位差的調(diào)整。
假設(shè)主單板和備份單板的時鐘信號周期為26ns,延時時間P為2ns。
根據(jù)時鐘周期26ns和延時時間P2ns來確定延時器7的最大數(shù)量B為13,即最多需要13個延時器7的延時就可以對一個時鐘周期內(nèi)的相位進行遍歷。
根據(jù)公式(延時器7的最大數(shù)量B≤2N-1),計算寄存器的最多位數(shù)N為4。因此,在備份單板上設(shè)置一個4位寄存器(寄存器的位數(shù)為4,其中存儲的數(shù)據(jù)最大值為15)來控制延時器7的數(shù)量。
然后,測量單元1測試主單板和備份單板的相位差為15ns,并將延時時間S傳輸給控制模塊4。
控制模塊4將延時時間S(15ns)和延時時間P(2ns)傳送至運算器,運算器根據(jù)延時時間S(15ns)和延時時間P(2ns)計算出延時器7的實際使用數(shù)量A為7(延時時間S除以延時時間P,得到的結(jié)果取整后即得到延時器7的實際使用數(shù)量A)。
在控制模塊4的控制下,運算器根據(jù)延時器7的實際使用數(shù)量A為7和公式(延時器7的實際使用數(shù)量A≤2M-1),計算出寄存器的實際使用位數(shù)M等于3(也就是實際可以使用寄存器的3個位),并將寄存器的實際使用位數(shù)M傳送至控制模塊4。
控制模塊4根據(jù)延時器7的實際使用數(shù)量A向寄存器低3位(Q1、Q2和Q3,圖未示)分別寫入數(shù)據(jù)1、1和1。
控制模塊4根據(jù)延時器7的實際使用數(shù)量A來控制備份單板上的時鐘信號經(jīng)過7個延時器7。這樣,備份單板上的時鐘信號經(jīng)過7個延時器7后,可以延時14ns。經(jīng)過14ns延時后,主單板和備份單板的時鐘信號相位差為1ns,小于2ns,符合基本同相的要求。
進一步需要指出的是,在步驟440后還包括將延時器7的實際使用數(shù)量A固化在寄存器中。這是在備份單板初始化時完成的。這樣,當主單板和備份單板接入系統(tǒng)后就可以直接完成相位差的調(diào)整。
可以理解的是,應(yīng)用本發(fā)明提供的調(diào)整時鐘信號相位差的系統(tǒng)和方法,所采用的可編程邏輯單元如同現(xiàn)有技術(shù)中的可編程邏輯器件一樣,可以利用專門語言來編寫程序。只是本發(fā)明中可編程邏輯單元可以只需編譯一次,而不象現(xiàn)有技術(shù)那樣需要反復(fù)編譯。這是由于本發(fā)明中若已知延時時間S和延時時間P,就可以確定延時器7的實際使用數(shù)量A,這樣,備份單板的時鐘信號通過數(shù)量A個延時器7就可以延遲延時時間S,進而實現(xiàn)時鐘信號相位差的調(diào)整。因此,應(yīng)用本發(fā)明提供的調(diào)整時鐘信號相位差的系統(tǒng)和方法,可編程邏輯器件只需要編譯一次,就可以調(diào)整相位差。此外,本發(fā)明中,可以將專門語言編寫的程序做成公用模塊,使用時單獨調(diào)用即可。
請參閱圖7,主單板的時鐘信號周期T1和備份單板的時鐘信號周期T2相等,均為時間T(圖未示)。但是,主單板和備份單板的時鐘信號之間不同步,存在相位差t61,也就是主單板的時鐘信號的上升沿比備份單板的時鐘信號的上升沿早時間t61。為了保證主單板和備份單板順利切換,需要調(diào)整主單板和備份單板時鐘信號相位差,將備份單板的時鐘信號延遲時間t62(t62=T-t61)。從而,調(diào)整備份單板時鐘信號與主單板的時鐘信號的相位差為0或小于2ns,也就是主單板的時鐘信號的上升沿和下降沿分別與備份單板的時鐘信號的上升沿和下降沿同步。
需要指出的是,本發(fā)明提供的方法和系統(tǒng)不僅僅應(yīng)用于通訊系統(tǒng)中的交換板,還可以應(yīng)用于通訊系統(tǒng)或計算機系統(tǒng)中的其他需要進行備份的單板。
以上所述僅是本發(fā)明的優(yōu)選實施方式,應(yīng)當指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應(yīng)視為本發(fā)明的保護范圍。
權(quán)利要求
1.一種調(diào)整時鐘信號相位差的方法,用于調(diào)整主單板和備份單板時鐘信號的相位差,其特征在于,包括步驟(1)確定實際使用的延時器;(2)控制備份單板的時鐘信號經(jīng)過所述延時器后輸出。
2.根據(jù)權(quán)利要求1所述的一種調(diào)整時鐘信號相位差的方法,其特征在于,所述步驟(1)中,根據(jù)備份單板時鐘信號需要延時的時間和單個延時器的延時時間來確定實際使用的延時器。
3.根據(jù)權(quán)利要求1所述的一種調(diào)整時鐘信號相位差的方法,其特征在于所述步驟(1)之前還包括預(yù)先根據(jù)備份單板時鐘信號需要延時的時間和單個延時器的延時時間來確定實際使用的延時器;將實際使用的延時器的信息寫入寄存器,所述信息包括延時器的實際使用數(shù)量。
4.根據(jù)權(quán)利要求3所述的一種調(diào)整時鐘信號相位差的方法,其特征在于所述步驟(1)中,通過讀取寄存器的內(nèi)容來確定實際使用的延時器。
5.根據(jù)權(quán)利要求1所述的一種調(diào)整時鐘信號相位差的方法,其特征在于所述延時器是緩沖器。
6.一種調(diào)整時鐘信號相位差的系統(tǒng),用于調(diào)整主單板和備份單板時鐘信號的相位差,所述系統(tǒng)包括可編程邏輯單元,其特征在于,所述可編程邏輯單元包括延時模塊,用于延遲備份單板的時鐘信號;所述延時模塊包括若干個延時器;控制模塊,用于確定延時模塊中實際使用的延時器,并控制時鐘信號經(jīng)過所述延時器后輸出。
7.根據(jù)權(quán)利要求6所述的一種調(diào)整時鐘信號相位差的系統(tǒng),其特征在于,所述控制模塊包括運算器,用于根據(jù)備份單板時鐘信號需要延時的時間和單個延時器的延時時間來確定實際使用的延時器。
8.根據(jù)權(quán)利要求6所述的一種調(diào)整時鐘信號相位差的系統(tǒng),其特征在于,所述控制模塊包括寄存器,用于預(yù)先存放實際使用的延時器的信息。
9.根據(jù)權(quán)利要求6所述的一種調(diào)整時鐘信號相位差的系統(tǒng),其特征在于所述可編程邏輯單元是復(fù)雜可編程邏輯器件CPLD或現(xiàn)場可編程門陣列FPGA。
全文摘要
本發(fā)明公開了一種調(diào)整時鐘信號相位差的方法,用于調(diào)整主單板和備份單板時鐘信號的相位差,包括步驟(1)確定實際使用的延時器;(2)控制備份單板的時鐘信號經(jīng)過所述延時器后輸出。本發(fā)明還公開了一種調(diào)整時鐘信號相位差的系統(tǒng),用于調(diào)整主單板和備份單板時鐘信號的相位差,所述系統(tǒng)包括可編程邏輯單元,所述可編程邏輯單元包括延時模塊,用于延遲備份單板的時鐘信號;所述延時模塊包括若干個延時器;控制模塊,用于確定延時模塊中實際使用的延時器,并控制時鐘信號經(jīng)過所述延時器后輸出。應(yīng)用本發(fā)明提供的系統(tǒng)和方法來調(diào)整主單板和備份單板時鐘信號的相位差,具有精度高、效率高、成本低以及應(yīng)用范圍廣等特點。
文檔編號H04L12/04GK1705272SQ20041004282
公開日2005年12月7日 申請日期2004年5月26日 優(yōu)先權(quán)日2004年5月26日
發(fā)明者費海 申請人:華為技術(shù)有限公司