0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

采用Quartus II軟件和EP2C5芯片實現(xiàn)新型位同步提取電路的設(shè)計

電子設(shè)計 ? 來源:電子設(shè)計應(yīng)用 ? 作者:靖文,李斌,屈薇 ? 2021-05-28 11:20 ? 次閱讀

作者:靖文,李斌,屈薇,宋開鑫

在數(shù)字通信系統(tǒng)中,同步技術(shù)是非常重要的,而位同步是最基本的同步。位同步時鐘信號不僅用于監(jiān)測輸入碼元信號,確保收發(fā)同步,而且在獲取禎同步、群同步及對接收的數(shù)字碼元進(jìn)行各種處理的過程中,也為系統(tǒng)提供了一個基準(zhǔn)的同步時鐘。

隨著可編程器件容量的增加,設(shè)計師傾向于把位同步電路設(shè)計CPLD/FPGA芯片內(nèi)部。因此,本文采用Quartus II軟件設(shè)計了一種新型的位同步提取電路,對電路進(jìn)行了仿真試驗,并使用Altera的Cyclone II系列FPGA芯片EP2C5予以實現(xiàn)。

在CPLD/FPGA上實現(xiàn)位同步,最簡單直接的辦法就是利用FPGA的片上鎖相環(huán)。但這種鎖相環(huán)要求的輸入時鐘范圍是10MHz“100MHz,它對于低速數(shù)據(jù)顯得無能為力。而且,對于中低檔FPGA來說,鎖相環(huán)是稀缺資源,很多時候被用作系統(tǒng)時鐘鎖相。CPLD片上則沒有鎖相環(huán),大部分應(yīng)用都需要設(shè)計師自己設(shè)計位同步電路。

兩種位同步提取電路性能分析

目前在CPLD/FPGA上常用的位同步方案可分為兩類:一是采用鎖相環(huán)的閉環(huán)相位調(diào)整電路,二是采用開環(huán)結(jié)構(gòu)的位同步電路。下面用兩個典型的設(shè)計電路來討論這兩種方案的優(yōu)缺點。

基于超前滯后型鎖相環(huán)的位同步提取電路

這種電路一般采用添/扣門結(jié)構(gòu),如圖1所示,每輸入一個碼元后,根據(jù)鑒相器輸出是超前還是滯后,通過反饋回路控制的添/扣門來調(diào)整相位,使之逼近輸入碼元的相位。為了提高精度,這種方案只能采用更短的調(diào)整脈沖,一旦失步,就需要通過反饋回路重新調(diào)整。每一個超前和滯后脈沖僅能調(diào)整一步,如果接收碼元出現(xiàn)連“0”或是連“1”的情況,鎖定時間會很長,使其同步建立時間和調(diào)整精度變得相互制約。盡管有此缺點,但由于這種結(jié)構(gòu)具有失鎖后的自我調(diào)節(jié)性,因此,碼元消失或是碼元相位出現(xiàn)抖動時,同步脈沖不會出現(xiàn)較大變化,仍然可以輸出穩(wěn)定的同步脈沖。

圖1 數(shù)字鎖相環(huán)法位同步提取原理框圖

采用開環(huán)結(jié)構(gòu)的快速位同步電路

由于這種結(jié)構(gòu)沒有采用閉環(huán)的相位調(diào)節(jié)電路,所以要求在每一個輸入碼元跳變沿實現(xiàn)與輸出的同步脈沖跳變沿相位對齊。所以,通常采用這種結(jié)構(gòu)的位同步電路能夠快速實現(xiàn)同步。其典型實例如圖2所示。

跳變沿提取電路的作用是,當(dāng)產(chǎn)生一個邊沿脈沖時,它直接反映了輸入信號的真實相位。以它為基準(zhǔn),就可以有效地提取出與輸入信號同步的時鐘。時鐘同步的原理就是利用這個邊沿脈沖清零計數(shù)器,輸出反映輸入碼元相位的一個高精度時鐘源周期的短脈沖。圖中狀態(tài)寄存器保證了在接收碼元出現(xiàn)連“0”或是連“1”時仍然會有固定的反映碼元時鐘的短脈沖輸出??梢?,這種設(shè)計與數(shù)字鎖相環(huán)法相比,優(yōu)點主要是可以快速提取位同步脈沖,并進(jìn)行實時輸出。另外,這種電路結(jié)構(gòu)要更節(jié)省硬件資源。

該電路也有兩大缺點,首先,輸出S并不是占空比為50%的時鐘脈沖,而是間隔不固定的短脈沖。此缺點可以通過增加一個時鐘整形電路來解決。第二個缺點是,由于跳變沿提取電路的輸出X3(clr)具有對計數(shù)器清零的作用,如果跳變沿出現(xiàn)抖動的話,這種跳變沿會和計數(shù)器原先的輸出產(chǎn)生沖突,造成輸出時鐘信號占空比大幅度變化,嚴(yán)重時會出現(xiàn)毛刺。這對后續(xù)電路功能的實現(xiàn)無疑會產(chǎn)生致命的影響,很可能導(dǎo)致設(shè)計失敗。

新型快速位同步提取方案

綜合以上兩種設(shè)計的優(yōu)缺點,本文提出了一種新型的設(shè)計方案,其原理框圖如圖3所示。該方案實現(xiàn)位同步的基本原理是利用輸入碼元的跳變沿脈沖作為計數(shù)器的清零輸入信號,這里高精度時鐘的頻率為F,碼元速率為f,取F=2Nf=2N/T(T為輸入的不歸零碼元的寬度)。原理圖中的計數(shù)器為N進(jìn)制自動增加計數(shù)器。當(dāng)輸入清零信號后,計數(shù)器輸出翻轉(zhuǎn)。當(dāng)輸入碼元出現(xiàn)連“0”或是連“1”時,一個碼元的長度為2NT。由于計數(shù)器為N進(jìn)制,計數(shù)器的計數(shù)值回到0時,計數(shù)器的輸出仍然翻轉(zhuǎn),占空比為:NT/2NT=50%。這樣就保證了一個輸入碼元的寬度對應(yīng)了占空比為50%的時鐘信號,即實現(xiàn)了輸入碼元與計數(shù)器輸出CLKOUT時鐘的同步。

圖3中數(shù)字濾波器的作用是將輸入碼元中的窄脈沖干擾濾除掉,這部分電路較簡單,在此不作介紹。跳變沿提取電路的作用仍然是提取碼元的跳變沿,這部分作用和實現(xiàn)原理與圖2介紹的方法相同。其中,跳變沿提取電路如圖4所示。

固定延遲單元的作用是,將經(jīng)過跳變沿提取電路之后的碼元信號進(jìn)行固定時鐘周期的延遲,使之與計數(shù)器的輸出同相,從而達(dá)到位同步。

本設(shè)計的關(guān)鍵點是帶清零抖動判斷的N進(jìn)制計數(shù)器的設(shè)計。當(dāng)計數(shù)器清零輸入沒有抖動,而嚴(yán)格按照t=n×2NT時間出現(xiàn)時(當(dāng)出現(xiàn)連“1”或是連“0”時,式中n》1,否則n = 1),計數(shù)器計到“0”和清零脈沖同時生效,計數(shù)器輸出翻轉(zhuǎn),這時的輸出時鐘是穩(wěn)定的。計數(shù)器的清零輸入信號是由碼元的邊沿脈沖提供的,所謂清零抖動實際上就是輸入碼元的邊沿位置出現(xiàn)抖動,這是符合實際情況的,因為信號的傳輸路徑上不可避免地會產(chǎn)生衰減,并受到干擾,發(fā)送方的數(shù)據(jù)發(fā)送時鐘也有可能存在抖動。下面討論這種抖動對N進(jìn)制計數(shù)器輸出產(chǎn)生的影響:

1.當(dāng)輸入的不歸零碼元的跳變沿出現(xiàn)的時間略小于2NT的整數(shù)倍時,稱之為前向抖動。此時計數(shù)器的清零脈沖出現(xiàn)在計數(shù)器還沒有計數(shù)到 “0”的某個計數(shù)值的位置,比如當(dāng)計數(shù)器計到N-1時,清零脈沖出現(xiàn),于是計數(shù)器被清零脈沖清零,同時輸出脈沖翻轉(zhuǎn)。這種情況會使輸出的時鐘脈沖比估計的翻轉(zhuǎn)時間提前aT=(0+N-(N-1)+1)T=2T,這對時鐘輸出不會產(chǎn)生不利影響。而且,時鐘的翻轉(zhuǎn)時間實時反映出碼元的變化,有利于后續(xù)電路功能的實現(xiàn)。

2.當(dāng)輸入的不歸零碼元的跳變沿出現(xiàn)的時間略大于2NT的整數(shù)倍時,稱之為后向抖動。此時計數(shù)器的清零脈沖出現(xiàn)在計數(shù)器計數(shù)到“0”之后的某個計數(shù)值的位置,比如當(dāng)計數(shù)值為2時,清零脈沖出現(xiàn)?,F(xiàn)在來看計數(shù)器的輸出,首先當(dāng)計數(shù)器計到“0”前,計數(shù)器輸出一直維持在“0” ;計數(shù)器計到“0”后,計數(shù)器輸出自動翻轉(zhuǎn)為“1”,然后繼續(xù)計數(shù);當(dāng)計數(shù)值為2時,清零脈沖出現(xiàn),于是計數(shù)器被清零脈沖清零,同時輸出脈沖翻轉(zhuǎn)為“0”,計數(shù)器輸出就會出現(xiàn)持續(xù)時間為bT=(2-0)T=2T的窄脈沖。當(dāng)接收電路的時鐘里出現(xiàn)這種不可預(yù)測的窄脈沖時,接收電路位同步之后的后續(xù)電路的功能也就無法正常實現(xiàn)了,這也就是本文剛開始討論的采用開環(huán)結(jié)構(gòu)的快速位同步電路的缺點。

本文的設(shè)計方案中所采用的計數(shù)器是利用VHDL語言設(shè)計的、帶清零抖動判斷功能的計數(shù)器。具體來說,它可以判斷清零抖動為前向抖動還是后向抖動。如果是后者,則忽略此次清零脈沖,同時將此之后的某個計數(shù)值減去b,這樣做的目的是防止這種抖動帶來的影響出現(xiàn)累加。依照以上分析及處理辦法,可以設(shè)計出帶有清零抖動判斷功能的計數(shù)器。

a:process(clk,clr) begin

if clk‘event and clk=’1‘ then

if clr=’1‘ and count》c then countelsif clr=’1‘ and count=”0“ then countelsif clr=’1‘ and count》0 and countelsif count=”N/2“ then

if zero=’1‘ then countelsif temp=”0“ then countelse countend if;

else countend if;

end if;

end process a;

b:process(clk,clkout) begin

if clk’event and clk=‘1’ then

if count=”0“ then clkoutend if;

end if;

end process b;

程序中count為當(dāng)前時刻的計數(shù)值,當(dāng)清零信號有效時,首先進(jìn)行0c。這樣可以在碼元跳邊沿之間的計數(shù)值湊夠N的整數(shù)倍,避免了這種抖動帶來的影響出現(xiàn)累加。程序中對清零信號有效且n=0的情況作了特殊考慮。

本設(shè)計方案在Altera的Cyclone II系列FPGA芯片EP2C5上進(jìn)行了實現(xiàn),在Quartus II環(huán)境下,用VHDL硬件描述語言和電路圖輸入混合設(shè)計的方法,完成了整個時鐘提取電路的設(shè)計,其仿真結(jié)果如圖5所示。仿真中采用的CLK頻率為10MHz,參數(shù)取值為N=32、c=4。仿真圖中各輸入輸出標(biāo)號與圖3中標(biāo)號對應(yīng)。

位同步時鐘提取電路的性能

將廣泛采用的鎖相環(huán)路法(模擬鎖相環(huán)和數(shù)字鎖相環(huán))和本文設(shè)計的開環(huán)位同步法相比較,本方案有如下優(yōu)點:

1.本設(shè)計基于開環(huán)結(jié)構(gòu),具備了開環(huán)結(jié)構(gòu)位同步提取電路的快速同步特點。如果輸入不出現(xiàn)較大的相位抖動,輸出時鐘的相位可以實時地反映輸入碼元的相位。

2.由于具有判斷輸入碼元脈沖邊沿抖動的功能,因此也具有鎖相環(huán)的自適應(yīng)性。由以上分析可知,當(dāng)輸入碼元出現(xiàn)抖動而使得輸出時鐘沒有和碼元對齊之后,下一個碼元跳變沿就會重新對齊。這種自適應(yīng)性比鎖相環(huán)的自適應(yīng)反應(yīng)更迅速。

3.本設(shè)計可支持的系統(tǒng)時鐘clk可以達(dá)到181MHz,支持的輸入碼元速率最大為(181/N)MHz,可以支持大部分的數(shù)字通信應(yīng)用。

4.本設(shè)計結(jié)構(gòu)簡單,這種辦法比鎖相環(huán)法更節(jié)省LE資源。當(dāng)N=32、c=4時,使用EP2C5Q208C8器件,位同步提取電路所消耗的LE數(shù)目僅為26個。

結(jié)語

實現(xiàn)位同步的方法很多,本文討論的是一種提取位同步信號的新型設(shè)計方案。該設(shè)計在Quartus II下調(diào)試通過并在實踐中得到應(yīng)用。實踐證明這種方法可以用很少的FPGA資源實現(xiàn)位同步的目的,并具有很高的穩(wěn)定性和可靠性。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1629

    文章

    21738

    瀏覽量

    603461
  • 芯片
    +關(guān)注

    關(guān)注

    455

    文章

    50818

    瀏覽量

    423718
  • cpld
    +關(guān)注

    關(guān)注

    32

    文章

    1248

    瀏覽量

    169370
收藏 人收藏

    評論

    相關(guān)推薦

    EP2C5核心板型電路原理圖

    EP2C5核心板型原理圖,EP2C5核心板型電路圖[hide][/hide]
    發(fā)表于 06-14 00:36

    EP2C5型 FPGA/SOPC(NiosII)學(xué)習(xí)開發(fā)套件 V3.0

       EP2C5型 FPGA/SOPC(NiosII)學(xué)習(xí)開發(fā)套件 V3.0  一、FPGA核心板:多種核心板供選擇,所采用的FPGA分別
    發(fā)表于 10-23 15:15

    Quartus II軟件Quartus II網(wǎng)絡(luò)版的區(qū)別

    , APEX? 20K30E, APEX 20K60E, APEX 20K100E, APEX 20K160E, APEX 20K200C, APEX 20K200E, APEX II EP2
    發(fā)表于 08-15 12:30

    Quartus II 軟件13.1的新特性

    基于模型的輸入,幫助您高效的達(dá)到設(shè)計目的。 [/url]新增特性實現(xiàn)業(yè)界最快的編譯時間采用Quartus II軟件v13.1,與前一版本相比
    發(fā)表于 11-13 15:34

    基FPGA Cyclone II_EP2C5 EP2C8的頻

    基FPGA Cyclone II_EP2C5 EP2C8的頻率計 基FPGA_Cyclone_II_EP2C5/EP2C8的頻率計 功能描述:按4*4鍵盤上的1,
    發(fā)表于 11-30 12:17 ?87次下載

    Quartus II 10.1軟件下載入口

    Quartus II 10.1軟件下載入口
    發(fā)表于 09-16 08:16 ?640次下載

    ALTERA QUARTUS II軟件使用

    ALTERA QUARTUS II軟件使用:IC 設(shè)計入門 (三) ALTERA QUARTUS II
    發(fā)表于 10-27 14:06 ?176次下載

    Quartus II 中文教程

    Quartus II 中文教程 您現(xiàn)在閱讀的是 Quartus II 簡介手冊。 Altera® Quartus®
    發(fā)表于 03-11 14:41 ?236次下載

    數(shù)字鎖相位同步提取的VHDL實現(xiàn)

    本文設(shè)計了一種在數(shù)字通信系統(tǒng)中的數(shù)字鎖相位同步提取方案,詳細(xì)介紹了本設(shè)計的同步提取原理及其各個組成功能模塊的VHDL語言
    發(fā)表于 08-06 14:28 ?64次下載

    Quartus ii 11軟件安裝

    Quartus ii 11軟件安裝
    發(fā)表于 12-27 09:39 ?36次下載

    Quartus_II_14軟件下載

    Quartus_II_14軟件下載
    發(fā)表于 05-04 14:20 ?119次下載

    Quartus II 11.0 軟件的安裝指南

     本文以 Quartus II 11.0 軟件的安裝為例,作為安裝指南。此外,關(guān)于 Quartus II 10.0 以前版本,安裝都大同小異
    發(fā)表于 11-07 17:10 ?8次下載

    EDA實驗一 Quartus II軟件的使用

    Quartus II軟件的使用
    發(fā)表于 11-14 17:48 ?12次下載

    Altera Quartus II設(shè)計軟件的簡介手冊免費下載

    Altera? Quartus? II 設(shè)計軟件提供完整的多平臺設(shè)計環(huán)境,它可以輕易滿足特定設(shè)計的需要。 它是單芯片可編程系統(tǒng) (SOPC) 設(shè)計的綜合性環(huán)境。
    發(fā)表于 01-29 16:26 ?26次下載
    Altera <b class='flag-5'>Quartus</b> <b class='flag-5'>II</b>設(shè)計<b class='flag-5'>軟件</b>的簡介手冊免費下載

    Quartus II 13.0軟件下載

    首先安裝Quartus II 13.0軟件再用Quartus_II_13.0_x64破解器.exe破解
    發(fā)表于 12-21 17:27 ?29次下載