劉如金
(工業(yè)和信息化部電子第五研究所,廣東 廣州,510610)
近年來,隨著超大規(guī)模集成電路的發(fā)展,F(xiàn)PGA/CPLD等可編程邏輯器件的資源也有了極大的發(fā)展,F(xiàn)PGA在開發(fā)階段具有安全、方便、可隨時修改設(shè)計等不可替代的優(yōu)點,在電子系統(tǒng)中采用FPGA可以極大地提升硬件系統(tǒng)設(shè)計的靈活性、可靠性,以及提高硬件開發(fā)的速度和降低系統(tǒng)的成本。ewFPGA的固有優(yōu)點使其得到越來越廣泛的應(yīng)用。
對于FPGA設(shè)計,同步設(shè)計將優(yōu)于異步設(shè)計。對于靜態(tài)同步設(shè)計,當(dāng)滿足以下兩個條件時,我們說這個系統(tǒng)是同步的:1)每個邊緣敏感部件的時鐘輸入是一次時鐘輸入的某個函數(shù),并且仍是像一次時鐘那樣的時鐘信號;2)所有的存儲元件(包括計數(shù)器)都是邊緣敏感的,在系統(tǒng)中沒有電平敏感存儲元件。FPGA的同步設(shè)計可以理解為所有的狀態(tài)改變都由一個主時鐘觸發(fā),而對具體的電路形式表現(xiàn)為所有的觸發(fā)器的時鐘端都接在同一個主時鐘上。
相比異步設(shè)計來說,同步設(shè)計有許多的優(yōu)點,同步是通信系統(tǒng)中一個重要的問題。在數(shù)字通信中,除了獲取相干載波的載波同步外,位同步的提取是更為重要的一個環(huán)節(jié)。因為只有確定了每一個碼元的起始時刻,才能對數(shù)字信息作出正確的判決。利用全數(shù)字鎖相環(huán)可直接從接收到的單極性不歸零碼中提取位同步信號。
數(shù)字鎖相環(huán)位同步提取電路原理框圖如圖1所示。
圖1 位同步提取電路框圖
本地時鐘產(chǎn)生兩路相位相差p的脈沖,其頻率為fo。輸入信碼的正、負跳變經(jīng)過過零檢測電路后變成了窄脈沖序列,它含有信碼中的位同步信息,該位同步窄脈沖序列與分頻器輸出脈沖進行鑒相,分頻比為m,若分頻后的脈沖相位超前于窄脈沖序列,則在“1”端有輸出,并通過控制器將加到分頻器的脈沖序列扣除一個脈沖,使分頻后的脈沖相位退后;若分頻后的脈沖相位滯后窄脈沖序列,則在“2”端有輸出,并通過控制器將加到分頻器的脈沖序列附加一個脈沖,使分頻后的脈沖相位提前。直到鑒相器的“1”、“2”端無輸出,此時環(huán)路鎖定。輸出端就得到了該輸入信碼的位同步信號。
基于FPGA的鎖相環(huán)位同步提取電路的實現(xiàn)如圖2所示,由雙相高頻時鐘源、過零檢測電路、鑒相器、控制器和分頻器組成。
圖2 鎖相環(huán)位同步提取電路
2.2.1 雙相高頻時鐘源
該電路由D觸發(fā)器組成的二分頻器、兩個與門和兩個非門組成(電路最右端)。它將FPGA的高頻時鐘信號clk_xm變換成兩路相位相反的時鐘信號,由e、f輸出,然后送給控制電路的常開門G3和常閉門G4。其中f路信號還作為控制器中的D1和D2觸發(fā)器的時鐘信號。在實際系統(tǒng)中,F(xiàn)PGA的高頻時鐘頻率為32.768 M Hz,e、f兩路信號頻率為32.768/2=16.384 M Hz。
2.2.2 過零檢測電路
該電路見圖2中jianxiang部分,它由D觸發(fā)器和異或門組成。過零檢測的輸出脈沖codeout的寬度應(yīng)略大于f路信號一個周期,但為了減少鎖相環(huán)的穩(wěn)態(tài)誤差,該輸出脈沖不宜過寬。在實際系統(tǒng)中,過零檢測電路的時鐘信號clkin由FPGA的高頻時鐘四分頻得來,這樣輸出的脈沖寬度約是f路信號的兩個周期。
2.2.3 鑒相器
該電路由兩個與門組成,分別是超前門G1和滯后門G2(電路中間的兩個與門)。過零檢測電路的輸出信號b與位定時信號clkout一起進入鑒相器,若clkout超前b,則滯后門G2被封鎖,輸出為0,超前門G1的輸出端有窄脈沖輸出;若clkout滯后b,則超前門G1被封鎖,輸出為0,滯后門G2的輸出端有窄脈沖輸出。
2.2.4 分頻器
該電路對應(yīng)于圖2中div64部分。輸出的信號頻率是256 kHz,e、f兩路信號的頻率均為16.384 M Hz,故該電路完成16384 /256=64的分頻功能。當(dāng)控制電路無超前或滯后控制脈沖輸出時,D1的q端為0,D2的q端也為0,常開門G3處于打開狀態(tài),常閉門G4處于關(guān)閉狀態(tài),e路信號通過常開門G3、異或門G5到達64分頻器的輸入端,經(jīng)分頻后產(chǎn)生穩(wěn)定的位定時信號。
2.2.5 控制器
分頻器輸出的位定時信號clkout與過零檢測脈沖b進行相位比較。當(dāng)位定時信號clkout超前于b時,超前門G1有正脈沖輸出。在觸發(fā)脈沖f的上升沿,G1觸發(fā)器的q端由低變高,經(jīng)過非門后,使常開門G3關(guān)閉一個時鐘周期,將e路脈沖扣除一個,使clkout相位向滯后方向變化一個時鐘周期。當(dāng)位定時信號clkout滯后于b時,滯后門G2有正脈沖輸出。在觸發(fā)脈沖f的上升沿,D2觸發(fā)器的q端由低變高,使常閉門G4打開一個時鐘周期,在分頻器輸入端添加一個脈沖,直到電路鎖定。
以上是全數(shù)字鎖相環(huán)的電路工作原理,全部電路已在芯片上實現(xiàn)。芯片的工作頻率選為32.768 M Hz,也作為位同步提取電路的本地高頻時鐘。另外,該時鐘信號四分頻后還作為過零檢測電路的時鐘。輸入的單極性不歸零碼的碼元速率為256 kbps。從輸入信碼中提取的位同步信號如圖3所示,從波形上看,該全數(shù)字鎖相環(huán)位同步提取電路能很好地從輸出的信碼中提取位同步信號。
圖3 輸入的信碼與提取的位同步信號
在FPGA設(shè)計中,同步設(shè)計要優(yōu)于異步設(shè)計,本文提出了一種數(shù)字鎖相環(huán)的位同步提取電路的方案,并已成功地用FPGA器件進行了實現(xiàn)。此時鐘提取電路可以快速、準(zhǔn)確地對串行輸入信碼進行位同步時鐘的提取,即使輸入碼流中的毛刺現(xiàn)象,本設(shè)計也有很好的時鐘調(diào)整恢復(fù)功能,能極大地減小誤碼率。
[1]樊昌信.數(shù)字專用集成電路設(shè)計[M].北京:人民郵 電出版社,1999.
[2]徐志軍,徐光輝.CPLD/FPGA 的開發(fā)與應(yīng)用[M].北京:電子工業(yè)出版社,2002.