張麗,徐妍,,馬麗珍
?。ㄖ信d通訊股份有限公司 上海研發(fā)中心,上海 201203)
摘要:在微波通信系統(tǒng)中,,受天氣情況的影響,,發(fā)送端的時(shí)鐘頻率可能隨時(shí)變化。在接收端如何進(jìn)行時(shí)鐘恢復(fù)是微波通信的難點(diǎn),。本文給出了一種基于FPGA的微波無線口時(shí)鐘恢復(fù)的設(shè)計(jì),。該設(shè)計(jì)使用FPGA內(nèi)的PLL和FIFO,實(shí)時(shí)調(diào)整時(shí)鐘頻率,,保證接收端恢復(fù)時(shí)鐘的頻率與發(fā)送端無線口的發(fā)射時(shí)鐘信號(hào)頻率一致,且減少了PLL個(gè)數(shù),,避免了PLL失鎖及其引發(fā)的復(fù)位重新鎖定過程,。
關(guān)鍵詞:微波通信;時(shí)鐘恢復(fù),;FPGA,;PLL
0引言
微波通信是一種重要的電磁波通信手段,廣泛應(yīng)用于地球與空間站之間,、城市兩個(gè)建筑物之間以及很大的無法實(shí)際布設(shè)電纜的開闊區(qū)域[1],。但是微波通信極易受天氣影響,如風(fēng)沙,、雨霧等,。微波通信系統(tǒng)需要在不同的天氣情況下選擇不同的工作帶寬和時(shí)鐘頻率,以確保傳輸質(zhì)量,。對(duì)于這種時(shí)鐘頻率可能隨時(shí)變化的通信系統(tǒng),,如何保證發(fā)送端和接收端時(shí)鐘信號(hào)一致、穩(wěn)定可靠,,顯得尤為重要,。本文在介紹傳統(tǒng)的微波時(shí)鐘恢復(fù)方法的基礎(chǔ)上,,給出了一種基于FPGA的微波無線口時(shí)鐘恢復(fù)的設(shè)計(jì)并對(duì)設(shè)計(jì)的邏輯控制過程進(jìn)行了詳細(xì)說明。
1現(xiàn)有的時(shí)鐘恢復(fù)設(shè)計(jì)
微波通信系統(tǒng)在不同的環(huán)境條件下工作在不同的帶寬和時(shí)鐘頻率,,如時(shí)鐘頻率為7 MHz,、14 MHz、28 MHz,、49 MHz 等?,F(xiàn)有的微波時(shí)鐘恢復(fù)方法如圖1所示。該設(shè)計(jì)中包含時(shí)鐘提取模塊,、分頻模塊,、PLL倍頻模塊、小數(shù)分頻模塊,、時(shí)鐘選擇模塊,、時(shí)鐘鑒相模塊、時(shí)鐘調(diào)整模塊和監(jiān)控模塊,。假設(shè)有N種不同的時(shí)鐘頻率,,在每種時(shí)鐘頻率下,時(shí)鐘提取模塊從空中接收的數(shù)據(jù)信號(hào)幀中提取出的無線口時(shí)鐘信號(hào)通常是不均勻的,,會(huì)存在一定的脈沖缺失[2],,然后N個(gè)時(shí)鐘分頻模塊將其對(duì)應(yīng)的不均勻的時(shí)鐘信號(hào)分頻,將不均勻程度弱化,。N個(gè)時(shí)鐘分頻模塊的分頻系數(shù)可以不同,。PLL 倍頻模塊將分頻模塊弱化不均勻程度后得到的時(shí)鐘信號(hào)倍頻,倍頻系數(shù)也可以不同,,接下來小數(shù)分頻模塊要根據(jù)實(shí)際應(yīng)用環(huán)境,,利用SigmaDelta 算法實(shí)現(xiàn)小數(shù)分頻[3],將倍頻后的時(shí)鐘信號(hào)分頻到一個(gè)統(tǒng)一的頻率,,如50 Hz,。時(shí)鐘選擇模塊從多路時(shí)鐘信號(hào)中選擇一路,如當(dāng)前系統(tǒng)的時(shí)鐘頻率為7 MHz,,則選擇7 MHz 時(shí)鐘對(duì)應(yīng)分頻得到的50 Hz信號(hào)輸出到時(shí)鐘鑒相模塊,,時(shí)鐘鑒相模塊將50 Hz信號(hào)作為參考時(shí)鐘,與微波通信系統(tǒng)接收端產(chǎn)生的標(biāo)準(zhǔn)時(shí)鐘分頻得到的50 Hz信號(hào)比較,,得到鑒相值,,用鑒相值控制時(shí)鐘調(diào)整模塊對(duì)接收端產(chǎn)生的標(biāo)準(zhǔn)時(shí)鐘進(jìn)行調(diào)整,使其跟蹤上接收的無線口時(shí)鐘信號(hào),,即發(fā)送端的時(shí)鐘,。監(jiān)控模塊實(shí)時(shí)檢測(cè)PLL倍頻模塊輸出的時(shí)鐘,一旦發(fā)現(xiàn)PLL 異常無時(shí)鐘送出時(shí),,就復(fù)位PLL,。
現(xiàn)有的時(shí)鐘恢復(fù)設(shè)計(jì)通過PLL直接分頻和倍頻的操作,,把不均勻的時(shí)鐘信號(hào)整合成相對(duì)均勻的時(shí)鐘。雖然不均勻的脈沖送入FPGA內(nèi)部的PLL之后,,可能會(huì)導(dǎo)致PLL失鎖,,但是只要不會(huì)導(dǎo)致PLL異常,從而出現(xiàn)無法恢復(fù)的情況,,就能保證恢復(fù)出來的時(shí)鐘信號(hào)質(zhì)量,。同時(shí)系統(tǒng)還需要一個(gè)監(jiān)控機(jī)制,實(shí)時(shí)檢測(cè)PLL發(fā)送出來的時(shí)鐘,,一旦發(fā)現(xiàn)PLL異常,,無時(shí)鐘送出時(shí),就需要復(fù)位PLL,,PLL從復(fù)位圖1現(xiàn)有的時(shí)鐘恢復(fù)設(shè)計(jì)到正常工作一般需要5 ms,,這5 ms會(huì)導(dǎo)致軟件得到的鑒相值跳變,軟件也需要做相應(yīng)的濾波機(jī)制,?!?/p>
2基于FPGA的時(shí)鐘恢復(fù)設(shè)計(jì)
2.1設(shè)計(jì)組成及功能
本時(shí)鐘恢復(fù)設(shè)計(jì)主要由時(shí)鐘提取模塊、晶振,、PLL合成模塊,、FPGA和時(shí)鐘調(diào)整模塊等構(gòu)成,如圖2所示,。時(shí)鐘提取模塊從空中接收的數(shù)據(jù)信號(hào)幀中提取出無線口時(shí)鐘信號(hào),;自由震蕩的晶振輸出10 MHz時(shí)鐘;PLL合成模塊根據(jù)接收到的無線口帶寬模式,,輸出標(biāo)準(zhǔn)時(shí)鐘信號(hào),;FPGA完成時(shí)鐘恢復(fù),并把恢復(fù)后的時(shí)鐘分頻到50 Hz,,與本地VCXO分頻得到的50 Hz信號(hào)進(jìn)行鑒相,輸出的鑒相值控制時(shí)鐘調(diào)整模塊,,最終使本地時(shí)鐘跟蹤上接收的無線口時(shí)鐘信號(hào),。
2.2FPGA控制
FPGA主要由FIFO模塊、控制模塊,、可調(diào)相位PLL模塊,、分頻模塊和鑒相模塊組成,如圖3所示,。其中,,F(xiàn)IFO1的空/滿決定了可調(diào)相位PLL的相位調(diào)整方向;FIFO2的空/滿決定了可調(diào)相位PLL的相位調(diào)整時(shí)機(jī),;控制模塊根據(jù)兩個(gè)FIFO的空/滿以及水位信息輸出調(diào)整信息給可調(diào)相位PLL,;可調(diào)相位PLL的輸出即是與無線口時(shí)鐘頻率一致的恢復(fù)時(shí)鐘,;分頻模塊將恢復(fù)時(shí)鐘分頻到50 Hz。
這里FPGA選用ALTERA stratix IV 芯片,,此系列芯片的可調(diào)相位PLL具有動(dòng)態(tài)相移功能[4],,使單個(gè)PLL輸出的輸出相位能夠相對(duì)于參考時(shí)鐘動(dòng)態(tài)地被調(diào)整。每次相位調(diào)整只偏移VCO頻率的1/8,,并且輸出時(shí)鐘在該相位重配置過程中是有效的,。PLL的控制端口:PHASESTEP為高電平時(shí)使能動(dòng)態(tài)相移;
SCANCLK是與PHASESTEP相結(jié)合使用的內(nèi)核自由時(shí)鐘,,最大100 MHz,;PHASEUPDOWN選擇動(dòng)態(tài)相移方向,1為UP,0為DOWN,,且在SCANCLK上升沿寄存在PLL中,。 PLL的輸出端口:PHASEDONE從低變高時(shí)表示相位調(diào)整完成,可以啟動(dòng)下一次動(dòng)態(tài)相移,;c0/c1為輸出時(shí)鐘端口,。在相位可調(diào)PLL IPCORE生成過程中需要配置PLL具有動(dòng)態(tài)相位配置功能,且c0端口為輸入標(biāo)準(zhǔn)時(shí)鐘信號(hào)的1倍頻,,而c1端口設(shè)置的輸出頻率要與c0端口一致,,如圖4所示。
2.3時(shí)鐘恢復(fù)調(diào)整過程
可調(diào)相位PLL剛上電時(shí),,其輸出就是輸入標(biāo)準(zhǔn)時(shí)鐘信號(hào),,也就是將標(biāo)準(zhǔn)時(shí)鐘信號(hào)直接輸出到FIFO1的寫時(shí)鐘端口WR_CLK和FIFO2的讀時(shí)鐘端口RD_CLK,時(shí)鐘提取模塊輸出的無線口時(shí)鐘信號(hào)則同時(shí)輸入到FIFO1的讀時(shí)圖4PLL 配置參數(shù)
鐘端口RD_CLK 以及FIFO2的寫時(shí)鐘端口WR_CLK,。
假設(shè)此時(shí)FIFO1中保存的數(shù)據(jù)個(gè)數(shù)為n1,,F(xiàn)IFO1的存儲(chǔ)深度為m,即0<n1<m,。FIFO1在標(biāo)準(zhǔn)時(shí)鐘信號(hào)上升沿的控制下進(jìn)行數(shù)據(jù)寫操作,,同時(shí)在無線口時(shí)鐘信號(hào)上升沿的控制下進(jìn)行數(shù)據(jù)讀操作,如果標(biāo)準(zhǔn)時(shí)鐘信號(hào)比無線口時(shí)鐘信號(hào)頻率低,,則經(jīng)過一段時(shí)間后,,F(xiàn)IFO1中存儲(chǔ)的數(shù)圖5恢復(fù)時(shí)鐘示意圖
據(jù)個(gè)數(shù)會(huì)變少,甚至為0(即空),;如果標(biāo)準(zhǔn)時(shí)鐘信號(hào)比無線口時(shí)鐘信號(hào)頻率高,,則經(jīng)過一段時(shí)間后,F(xiàn)IFO1中存儲(chǔ)的數(shù)據(jù)個(gè)數(shù)會(huì)變多,,甚至為m(即滿),。而FIFO1通過wrusedw[5]端口實(shí)時(shí)將其中保存的數(shù)據(jù)個(gè)數(shù)上報(bào)給相位調(diào)整控制模塊,上報(bào)的數(shù)據(jù)個(gè)數(shù)就能夠反映無線口時(shí)鐘信號(hào)與標(biāo)準(zhǔn)時(shí)鐘信號(hào)的頻率(相位)差異信息,。相位調(diào)整控制模塊在收到FIFO1上報(bào)的數(shù)據(jù)個(gè)數(shù)變少時(shí),,據(jù)此判斷出標(biāo)準(zhǔn)時(shí)鐘信號(hào)比無線口時(shí)鐘信號(hào)頻率低,,則需提高恢復(fù)時(shí)鐘信號(hào)的頻率;相位調(diào)整控制模塊在收到FIFO1上報(bào)的數(shù)據(jù)個(gè)數(shù)變多時(shí),,據(jù)此判斷出標(biāo)準(zhǔn)時(shí)鐘信號(hào)比無線口時(shí)鐘信號(hào)頻率高,,則需降低恢復(fù)時(shí)鐘信號(hào)的頻率,即確定了對(duì)恢復(fù)時(shí)鐘信號(hào)的頻率調(diào)整方向,。
假設(shè)FIFO2中保存的數(shù)據(jù)個(gè)數(shù)為n2(n2<m),,F(xiàn)IFO2在恢復(fù)時(shí)鐘信號(hào)上升沿的控制下進(jìn)行數(shù)據(jù)讀操作,同時(shí)在無線口時(shí)鐘信號(hào)上升沿的控制下進(jìn)行寫操作,,F(xiàn)IFO2通過wrusedw端口實(shí)時(shí)將其中保存的數(shù)據(jù)個(gè)數(shù)上報(bào)給相位調(diào)整控制模塊,。當(dāng)出現(xiàn)無線口時(shí)鐘信號(hào)與恢復(fù)時(shí)鐘信號(hào)的頻率不同時(shí),F(xiàn)IFO2上報(bào)的數(shù)據(jù)個(gè)數(shù)就會(huì)發(fā)生變化,,此時(shí)需要調(diào)節(jié),。只要相位調(diào)整控制模塊收到FIFO2上報(bào)的數(shù)據(jù)個(gè)數(shù)不是n2,即發(fā)生了變化,,相位調(diào)整控制模塊就會(huì)根據(jù)由FIFO1確定的頻率調(diào)整方向?qū)謴?fù)時(shí)鐘信號(hào)的周期,、占空比等進(jìn)行調(diào)整,使恢復(fù)時(shí)鐘信號(hào)與無線口時(shí)鐘信號(hào)頻率一致,。
例如:圖5中,,當(dāng)無線口時(shí)鐘信號(hào)出現(xiàn)脈沖連續(xù)空缺時(shí),需降低恢復(fù)時(shí)鐘信號(hào)的頻率,,假設(shè)恢復(fù)時(shí)鐘信號(hào)原來的周期T=10 ns,,一個(gè)周期內(nèi)高脈沖持續(xù)5 ns,低脈沖持續(xù)5 ns,,則每次調(diào)整時(shí)鐘頻率的1/8,,直到FIFO2上報(bào)的數(shù)據(jù)個(gè)數(shù)不發(fā)生變化,則停止對(duì)恢復(fù)時(shí)鐘信號(hào)的調(diào)節(jié),?;謴?fù)時(shí)鐘信號(hào)在經(jīng)過上述調(diào)節(jié)后會(huì)逐漸趨近于無線口時(shí)鐘信號(hào),如圖5所示,,雖然某些經(jīng)過調(diào)整的周期長(zhǎng)度與其他周期不同,,但是能夠保證在比較長(zhǎng)的一段時(shí)間內(nèi),恢復(fù)時(shí)鐘信號(hào)與無線口時(shí)鐘信號(hào)的脈沖個(gè)數(shù)相同,,即這兩個(gè)信號(hào)的頻率相同,。實(shí)際中,,該時(shí)間的具體數(shù)值與FIFO1,、FIFO2的存儲(chǔ)容量大小有關(guān)。此外,,需要說明的是,,標(biāo)準(zhǔn)時(shí)鐘信號(hào)與無線口時(shí)鐘信號(hào)輸入FIFO1的讀,、寫時(shí)鐘端口可以交換,恢復(fù)時(shí)鐘信號(hào)與無線口時(shí)鐘信號(hào)輸入FIFO2的讀,、寫時(shí)鐘端口也可以交換,。
3結(jié)論
本文給出了一種基于FPGA的微波無線口時(shí)鐘恢復(fù)的設(shè)計(jì)。該設(shè)計(jì)使用FPGA內(nèi)的PLL和FIFO,,實(shí)時(shí)調(diào)整時(shí)鐘頻率,,減少了PLL個(gè)數(shù),避免了PLL失鎖及其引發(fā)的復(fù)位重新鎖定過程,,提高了微波通信系統(tǒng)的穩(wěn)定性,,降低了系統(tǒng)成本和復(fù)雜度。
參考文獻(xiàn)
?。?] 李兵.微波通信技術(shù)的發(fā)展與展望[J].電力系統(tǒng)通信,,2011, 32(12):4043.
[2] Provigent Ltd. PVG610 Data Sheet PVG610_DSH_002_I [Z].2009.
?。?] 李慧.基于VHDL的小數(shù)分頻器設(shè)計(jì)[J].微計(jì)算機(jī)信息,,2010, 26(10):192193.
[4] Altera Corporation. Stratix IV Device Handbook Volume 1 [Z]. 2015.
?。?] Altera Corporation. SCFIFO and DCFIFO IP Cores User Guide [Z]. 2014.