亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FPGA可變速率快速位同步的實(shí)現(xiàn)

        2018-12-18 03:04:30,,
        電氣開關(guān) 2018年3期
        關(guān)鍵詞:分頻器碼元鎖相環(huán)

        ,,

        (1.東北電力大學(xué),自動(dòng)化工程學(xué)院,吉林 吉林 132012;2.海南熱帶海洋學(xué)院,電子通信 工程學(xué)院,海南 海口 570100;3.上海微小衛(wèi)星工程中心,上海 200000)

        1 引言

        同步技術(shù)是數(shù)字通信中重要的環(huán)節(jié),是通信系統(tǒng)的核心,也是最難的實(shí)現(xiàn)的地方,它決定著數(shù)據(jù)解調(diào)的成與敗[1]。調(diào)制的信號(hào)經(jīng)上變頻后變成2.2~2.4G的射頻信號(hào)[2]發(fā)射出去,在接收端接收該信號(hào)進(jìn)行下變頻,對其進(jìn)行數(shù)據(jù)還原,只有當(dāng)接收端產(chǎn)生相干載波的頻率和相位與發(fā)送端保持一致[3-4],才能得到源數(shù)據(jù)。這就決定收發(fā)兩端工作不在一起,為使接收端確定每一個(gè)碼元的起止時(shí)刻,接收機(jī)的時(shí)鐘應(yīng)與輸入信號(hào)的符號(hào)時(shí)鐘同步[5],才能準(zhǔn)確采樣接收的信號(hào)。在早期的模擬解調(diào)調(diào)節(jié)器中,典型的同步方法是通過反饋環(huán)調(diào)整本地采樣時(shí)鐘的相位來實(shí)現(xiàn)[6],通常是每個(gè)符號(hào)周期提取一個(gè)采樣點(diǎn),從中恢復(fù)出數(shù)據(jù),從而在數(shù)據(jù)流中分離出每一個(gè)獨(dú)立的碼元,同時(shí)誤碼率很低[7]。只有確定每一個(gè)碼元的起始時(shí)刻[8],才能對數(shù)字信息做出正確的判決,位同步它起著為接收信號(hào)提供基準(zhǔn)的作用。一個(gè)數(shù)字通信系統(tǒng)需要經(jīng)過很多的同步才能完成數(shù)據(jù)的通信,而位同步就是其中之一。位同步的數(shù)字化實(shí)現(xiàn)優(yōu)點(diǎn)是在原有硬件電路的條件下,僅僅通過對代碼的改寫,下載到FPGA配置芯片中,配置各個(gè)功能模塊以達(dá)到適應(yīng)不同條件,實(shí)現(xiàn)技術(shù)要求。位同步(即碼元同步)[9]常采用的方法有外同步法和自同步法兩種[10]實(shí)現(xiàn)方案。外同步法是發(fā)送信號(hào)中插入同步信息,在接收端利用窄帶濾波器分離出來,這就需要占用一定的帶寬,多消耗一部分發(fā)送功率。自同步法又分開環(huán)同步法和閉環(huán)同步法[11]兩種,其中閉環(huán)同步法克服了開環(huán)同步法同步跟蹤誤差大的缺點(diǎn),所以此方法得到廣泛應(yīng)用。閉環(huán)同步法采用常見的超前-滯后數(shù)字鎖相環(huán)提取位同步信息,也在工程中得到普遍的應(yīng)用。這類方法同步速率要求更高的場合,位同步依舊比較慢,仍需一個(gè)較長時(shí)間建立同步。筆者依據(jù)實(shí)際工程項(xiàng)目,針對上述不足,對超前-滯后數(shù)字鎖相環(huán)[12-13]方法進(jìn)行改進(jìn)。工程實(shí)踐表明,改進(jìn)后的位同步時(shí)間大大縮短,且設(shè)計(jì)成本低廉,可廣泛應(yīng)用在數(shù)字通信系統(tǒng)中。

        2 數(shù)字鎖相環(huán)的工作原理

        位同步是數(shù)字信號(hào)處理中最為核心也是技術(shù)要求最高的地方。調(diào)制解調(diào)的大體流程圖如圖1所示。

        圖1 調(diào)制解調(diào)流程

        (1)

        由式(1)知,信號(hào)解調(diào)最終由0.5f(t)和0.5cos(2ωt)f(t)兩部分組成,其中0.5f(t)為解調(diào)出的原函數(shù)(也是工程所要的),僅幅值變?yōu)樵瓉淼囊话?。如果我們想要還原原函數(shù),則0.5cos(2ωt)f(t)部分通過低通濾波器濾掉即可。如果解調(diào)端相位不能與調(diào)制端相位同步,則解調(diào)端數(shù)據(jù)很難還原出來。筆者在原超前-滯后數(shù)字鎖相環(huán)方法基礎(chǔ)上對該方法進(jìn)行改進(jìn),能夠適應(yīng)更快的碼元速度,降低鎖相誤差。改進(jìn)數(shù)字鎖相環(huán)原理方框圖如圖2所示。

        數(shù)字鎖相環(huán)DLL由晶振、常開扣除門、常閉添加門、N次分頻器、邊沿檢測器組成。改進(jìn)了添加、扣除門的控制方式,把邊沿檢測時(shí)鐘與分頻器的時(shí)鐘值進(jìn)行異或,并把此值作為控制雙門的脈沖量,相位調(diào)整在極短的時(shí)間內(nèi)完成,在降低誤差的前提下提高鎖定速度。在該步,檢測碼元的邊沿跳變恢復(fù)出一個(gè)與碼元信號(hào)同步的時(shí)鐘信號(hào),設(shè)其頻率為f,該環(huán)路中本地晶振產(chǎn)生頻率為Nf,分別送入扣除門和添加門,經(jīng)過兩者“相或”輸入N分頻器。當(dāng)信號(hào)相位超前時(shí),Q1=′1′、 Q2=′0′,扣除門開啟,控制分頻器減少計(jì)數(shù),添加門關(guān)閉,反之相反。隨著碼元信號(hào)的不斷輸入,該模塊經(jīng)過不斷調(diào)整最終完成相位同步,即使輸入碼元和環(huán)路輸出信號(hào)相位差π,鎖相環(huán)做N/2次相位調(diào)整最終鎖住相位?;謴?fù)時(shí)鐘信號(hào)與分頻器輸出的時(shí)鐘信號(hào)之間的相位差,可以理解為分頻器的計(jì)數(shù)值與1的比值。當(dāng)N值確定后即最佳接收時(shí)刻[14],對碼元進(jìn)行抽樣判決恢復(fù)信號(hào)。在邊沿檢測模塊基帶信號(hào)提取時(shí)鐘的同時(shí)添加了控制寄存器,通過對該寄存器的控制,使同步系統(tǒng)適應(yīng)可變速率的碼元[15]。

        圖2 數(shù)字鎖相環(huán)原理方框圖

        3 位同步的FPGA實(shí)現(xiàn)方案

        筆者采用VHDL語言,在ISE14.7開發(fā)平臺(tái)上編程仿真,下載到Xilinx公司Kintex-7系列FPGA芯片實(shí)現(xiàn)數(shù)字鎖相環(huán)設(shè)計(jì)。代碼完全自主開發(fā),以下是對各主要模塊進(jìn)行介紹。

        3.1 形成脈沖模塊

        Clk200為本地時(shí)鐘,輸出clk_d1和clk_d2兩路相位差為π的雙相時(shí)鐘,位同步環(huán)路中的系統(tǒng)時(shí)鐘頻率為數(shù)據(jù)采樣頻率的4倍,產(chǎn)生雙相時(shí)鐘信號(hào)的時(shí)鐘頻率不能小于雙相時(shí)鐘的4倍,從這段程序可以看出雙相時(shí)鐘clk_d1、clk_d2的周期為碼元的采樣周期,雙相時(shí)鐘相位相差一個(gè)clk200時(shí)鐘周期,產(chǎn)生周期為碼速率的8倍(采樣速率),占空比為1∶3的雙相時(shí)鐘。

        ENTITY clktrans IS

        PORT(

        rst:IN std_logic;

        clk200:IN std_logic;

        clk_d1:OUT std_logic;

        clk_d2:OUT std_logic);

        END clktrans;

        ARCHITECTURE translated OF clktrans is

        Signal c:std_logic_vector(1 downto 0);

        Signal clkd1:std_logic;

        Signal clkd2:std_logic;

        Signal clk_d1_xhdl1:std_logic;

        Signal clk_d2_xhdl2:std_logic;

        BEGIN

        clk_d1 <= clk_d1_xhdl1;

        clk_d2 <= clk_d2_xhdl2;

        PROCESS

        BEGIN

        Wait until(clk200′event and clk200 = ′1′)or(rst′event and rst = ′1′);

        IF(rst = ′1′)THEN

        C <= "00";

        clkd1 <= ′0′;

        clkd2 <= ′0′;

        ELSE

        c <= c + "01";

        IF(c = "00")THEN

        clkd1 <= ′1′;

        clkd2 <= ′0′;

        ELSE

        IF(c = "10")THEN

        clkd1 <= ′0′;

        clkd2 <= ′1′;

        ELSE

        clkd1 <= ′0′;

        clkd2 <= ′0′;

        END IF;

        END IF;

        END IF;

        END PROCESS;

        clk_d1_xhdl1 <= clkd1;

        利用向量空間模型計(jì)算文本相關(guān)度是一種常用的計(jì)算相關(guān)性的方法,在本文中,實(shí)現(xiàn)了該算法。問題集特征項(xiàng)的權(quán)值計(jì)算公式為

        clk_d2_xhdl2 <= clkd2;

        END translated;

        3.2 扣除添加門控制量模塊

        計(jì)算超前-滯后值,輸入信號(hào)微分整流,檢測輸入信號(hào)跳變沿后,產(chǎn)生一個(gè)clk200時(shí)鐘周期的高電平脈沖,取輸入數(shù)據(jù)的符號(hào)位為碼元起始相位,仿真結(jié)果如圖4~圖6所示。

        ENTITY differpd IS

        PORT(

        rst:IN std_logic;

        --復(fù)位信號(hào),高電平有效

        clk200:IN std_logic;

        --FPGA系統(tǒng)時(shí)鐘:200MHz

        --輸入數(shù)據(jù)

        clk_i:IN std_logic;

        --由控制分頻模塊送來的同相同步脈沖信號(hào)(占空比為1:1)

        clk_q:IN std_logic;

        --由控制分頻模塊送來的正交同步脈沖信號(hào)(占空比為1:1) pd_bef:OUT std_logic;

        --輸出的超前脈沖信號(hào)

        pd_aft:out std_logic);

        --輸出的滯后脈沖信號(hào)

        END differpd;

        ARCHITECTURE translated OF differpd IS

        Signal pdbef:std_logic;

        Signal pdaft:std_logic;

        Signal pd_bef_xhdl1:std_logic;

        Signal pd_aft_xhdl2:std_logic;

        begin

        pd_bef <= pd_bef_xhdl1;

        pd_aft <= pd_aft_xhdl2;

        din <= datain(5);

        Process

        begin

        wait until(clk200′event and clk200 = ′1′)

        or(rst′ event and rst = ′1′);

        IF(rst = ′1′)THEN

        pdbef <= ′0′;

        pdaft <= ′0′;

        ELSE

        pdbef <= din_edge AND clk_i;

        pdaft <= din_edge AND clk_q;

        END IF;

        END PROCESS;

        --完成鑒相功能

        pd_bef_xhdl1 <= pdbef;

        pd_aft_xhdl2 <= pdaft;

        END translated;

        3.3 N分頻器

        對gate_open及gate_close相“或”后,作為分頻器的驅(qū)動(dòng)時(shí)鐘,該時(shí)鐘經(jīng)過N分頻后作為位同步信號(hào)。

        ENTITY controldivfreq IS

        PORT(

        rst:IN std_logic;

        clk200:IN std_logic;

        clk_d1:IN std_logic;

        clk_d2:IN std_logic;

        pd_before:IN bit;

        pd_after:IN std_logic;

        clk_i:OUT std_logic;

        clk_q:OUT std_logic);

        END controldivfreq;

        Architecture translated OF controldivfreq Is

        Signal gate_open:std_logic;

        Signal gate_close:std_logic;

        Signal clk_in:std_logic;

        Signal clki:std_logic;

        Signal clkq:std_logic;

        Signal c:std_logic_vector(2 downtown 0);

        Signal clk_i_xhdl1:std_logic;

        Signal clk_q_xhdl2:std_logic;

        BEGIN

        clk_i <= clk_i_xhdl1;

        clk_q <= clk_q_xhdl2;

        gate_open <=(NOT pd_before)and clk_d1;

        gate_close <= pd_after AND clk_d2;

        clk_in <= gate_open OR gate_close;

        --對gate_open及gate_close相“或”

        后,作為分頻器的驅(qū)動(dòng)時(shí)鐘

        PROCESS

        BEGIN

        wait until(clk200′event and clk200= ′1′)or(rst′ event and rst=′1′);

        IF(rst=′1′)THEN

        c<="000";

        clki<=′0′;

        clkq<=′0′;

        ELSE

        IF(clk_in=′1′)THEN

        c<=c + "001";

        END IF;clki<= NOT c(2);

        clkq<=c(2);

        END IF;

        END PROCESS;

        clk_i_xhdl1<=clki;

        clk_q_xhdl2<=clkq;

        END translated;

        3.4 NCO模塊

        實(shí)例化NCO核,ISE提供的NCO核輸出數(shù)據(jù)最小位寬為10比特,根據(jù)環(huán)路設(shè)計(jì)需求,只取高8比特參與后續(xù)運(yùn)算,在該模塊對輸出的正弦波信號(hào)進(jìn)行處理使得輸出的數(shù)據(jù)與《數(shù)字通信同步技術(shù)的MATLAB與FPGA實(shí)現(xiàn)》(Xilinx/VHDL版)中的數(shù)據(jù)完全一致,以便比較仿真結(jié)果,同時(shí)計(jì)算寄存器“carrier”值,為可變速率設(shè)置變量,開始時(shí)默認(rèn)速度為1Mbps。

        ENTITY DinProduce is

        Port(

        rst:IN std_logic;

        clk200:IN std_logic;

        cosine:IN std_logic_vector(5 downto 0));

        Architecture translated of DinProduce IS

        Signal clk8:std_logic;

        Signal c:std_logic_vector(1 downto 0);

        Signal reset_n:std_logic;

        Signal out_valid:std_logic;

        Signal clken:std_logic;

        Signal carrier:std_logic_vector(29 downto 0);

        Signal cos:std_logic_vector(9 downto 0);

        Begin

        reset_n <= !rst;

        clken <= 1′b1;

        carrier <= 30′d67108864;

        --0.5MHz正弦波,1MHz碼元速率,該數(shù)值變化隨著后續(xù)寄存器所給值,最大為20M。

        u0:cos u0

        port map(

        phi_inc_i => carrier;

        clk => clk8;

        reset_n => reset_n;

        clken =>clken;

        fsin_o => cos;

        out_valid =>out_valid);

        PROCESS

        BEGIN

        wait until(clk200′ event and clk200 = ′1′)or(rst′ event and rst = ′1′);

        IF(rst = ′1′)THEN

        c<="00";

        clk8 <= 0;

        ELSE

        c<=c+"01";

        clk8<= c[1];

        END IF;

        END PROCESS;

        --該過程對輸出的正弦波信號(hào)進(jìn)行處理

        Process

        Begin

        wait until(clk200′ event and clk200 = ′1′)

        if(cose==-6′d13)cost = -6′d12;

        else if(cose==6′d13)cost = 6′d12;

        else if(cose==6′d22)cost = 6′d23;

        else if(cose==6′d29)cost = 6′d30;

        else cost = cose;

        end if;

        end process;

        end translated;

        4 設(shè)計(jì)仿真

        Modelsim仿真波形圖如圖3~圖5所示,其中圖3為鎖相環(huán)自由狀態(tài),該狀態(tài)“out_valid”處于拉低狀態(tài),等待基帶信號(hào)輸入。圖4為相位同步準(zhǔn)備,從波形圖中可以看到,當(dāng)基帶信號(hào)進(jìn)來時(shí)(余弦函數(shù)數(shù)據(jù)),經(jīng)過不到半個(gè)周期的檢測準(zhǔn)備,如圖中黃線標(biāo)識(shí),在時(shí)鐘上升沿?cái)?shù)據(jù)對齊,位同步時(shí)間為一個(gè)碼元周期。圖5鎖相環(huán)相位同步成功,圖6為常規(guī)數(shù)字鎖相環(huán)在碼元速率接近4M時(shí)開始出現(xiàn)失鎖現(xiàn)象,稍后數(shù)據(jù)便完全恢復(fù)不出。經(jīng)改進(jìn)后位同步支持1Kbps~20Mbps,步長以0.5Kbps變化的可變速率。從仿真結(jié)果得到,改進(jìn)后的數(shù)字鎖相環(huán),同步建立時(shí)間短。設(shè)計(jì)選用Xilinx公司推出的Kintex-7系列的XC7K325T來設(shè)計(jì)位同步的信號(hào)提取電路,該FPGA設(shè)計(jì)在28nm節(jié)點(diǎn),同時(shí)提供高DSP率并支持PCIe(為后續(xù)上位機(jī)設(shè)計(jì)提供接口),邏輯單元為162240,即使在無外部DDR輔助條件下,對整個(gè)項(xiàng)目工程代碼存儲(chǔ)依舊游刃有余,同時(shí)可靠性高等優(yōu)點(diǎn)。筆者在后面給出位同步后解調(diào)成功的實(shí)際工程結(jié)果,以供參考。

        圖3 鎖相環(huán)自由狀態(tài)

        圖4 相位同步準(zhǔn)備

        圖5 鎖相環(huán)相位同步成功

        圖6 常規(guī)鎖相環(huán)失鎖

        為保證位同步的成功、達(dá)到預(yù)期的同步速度并且大大降低解調(diào)的誤碼率之前,筆者首先對該數(shù)據(jù)源調(diào)制結(jié)果的正確性也進(jìn)行了驗(yàn)證,將調(diào)制的數(shù)據(jù)源分別進(jìn)行MATLAB仿真和實(shí)際工程中通過chipscope對數(shù)據(jù)進(jìn)行抓取,保證實(shí)驗(yàn)的嚴(yán)謹(jǐn)性和正確性。圖7為調(diào)制數(shù)據(jù)的MATLAB仿真結(jié)果。

        在與仿真具有相同數(shù)據(jù)源前提下,圖8為Chipscop抓取實(shí)際工程數(shù)據(jù)。

        圖7 調(diào)制MATLAB仿真結(jié)果

        圖8 調(diào)制工程實(shí)際結(jié)果

        通過chipscop導(dǎo)出實(shí)際工程結(jié)果的“.prn”文件畫其頻譜圖,圖9為調(diào)制數(shù)據(jù)頻譜,由圖可以看出數(shù)據(jù)的頻譜是落在70M與實(shí)際工程結(jié)果相一致。經(jīng)判定調(diào)制數(shù)據(jù)正確。

        圖9 調(diào)制數(shù)據(jù)頻譜

        圖10為MATLAB仿真解調(diào)后的數(shù)據(jù)與原數(shù)據(jù)源結(jié)果對比值,如圖中標(biāo)識(shí)所示紅色為調(diào)制之前即原數(shù)據(jù)源,藍(lán)色為位同步解調(diào)后數(shù)據(jù),二者數(shù)據(jù)吻合位同步成功。

        圖11為實(shí)際工程中接收端解調(diào)的部分?jǐn)?shù)據(jù),從圖中可以找到數(shù)據(jù)的幀頭為“EB90”。數(shù)據(jù)源格式是嚴(yán)格依據(jù)國軍標(biāo)的要求設(shè)計(jì),為驗(yàn)證接收端數(shù)據(jù)接收正確,位同步成功,在該數(shù)據(jù)源中,加入常值、鋸齒波和正弦波三種形式的數(shù)據(jù)。

        圖10 解調(diào)結(jié)果與原數(shù)據(jù)源對比時(shí)域結(jié)果

        圖11 接收端解調(diào)數(shù)據(jù)

        對比圖12、圖13可知,該數(shù)據(jù)子幀格式為4行12列,第一列和第4列為常數(shù),在圖14中黃線為1、4兩列的常數(shù)值,因?yàn)橄嗤瑪?shù)值,波形重合所以只能看到4一條數(shù)據(jù)線。第三列為鋸齒波數(shù)據(jù),觀察圖12、圖13,以“4C4B4A49”和“B4B3B2B1”為例,數(shù)據(jù)一直變小然后往復(fù)變化。

        圖12 接收端數(shù)據(jù)1

        圖14波形為正弦波,數(shù)據(jù)隨發(fā)送端數(shù)據(jù)源在每一時(shí)刻都在變化,圖12、圖13兩個(gè)時(shí)刻數(shù)值“F3”變到“43”在下一時(shí)刻數(shù)值根據(jù)正弦波規(guī)律,再變化到另一數(shù)值,其他同理,在此不再一一贅述。

        圖13 接收端數(shù)據(jù)2

        圖14 接收端數(shù)據(jù)波形

        5 結(jié)論

        筆者對超前-滯后型數(shù)字鎖相環(huán)方法改進(jìn),進(jìn)行了可變速率快速位同步整體仿真。仿真碼元采用1Kbps20Mbps可變速率碼元,變化步長為0.5Kbps,基帶信號(hào)快速達(dá)到位同步,鎖定相位時(shí)間快、誤差小。該方法在Xilinx 公司Kintex-7系列XC7K325T芯片下得到驗(yàn)證,并成功應(yīng)用到某項(xiàng)目中。

        猜你喜歡
        分頻器碼元鎖相環(huán)
        一種基于0.18μm SiGe工藝的8GHz前置分頻器
        高頻、低相噪、雙模分頻器設(shè)計(jì)
        LFM-BPSK復(fù)合調(diào)制參數(shù)快速估計(jì)及碼元恢復(fù)
        鎖相環(huán)HMC832的設(shè)計(jì)與實(shí)現(xiàn)
        電子測試(2018年14期)2018-09-26 06:04:00
        新型無鎖相環(huán)DSTATCOM直接電流控制方法
        基于極大似然準(zhǔn)則的短猝發(fā)信號(hào)盲解調(diào)
        新型鎖相環(huán)技術(shù)及仿真分析
        電測與儀表(2015年9期)2015-04-09 11:59:28
        DRM/DAB/AM/FM頻率綜合器中吞吐脈沖分頻器的設(shè)計(jì)
        鎖相環(huán)在微機(jī)保護(hù)中的應(yīng)用
        一種碼元同步時(shí)鐘信號(hào)的提取方法及單片機(jī)實(shí)現(xiàn)
        亚洲日韩av无码一区二区三区人| 亚洲综合网一区二区三区| 亚洲中文字幕在线精品2021| 国产黑色丝袜在线看片| 中文字幕久久久人妻无码| 亚洲视频毛片| 日韩精品有码中文字幕在线| 中文有码人妻字幕在线| 天天爽天天爽夜夜爽毛片| 亚洲特黄视频| 国产三级av在线播放| 色婷婷色丁香久久婷婷| 久久精品噜噜噜成人| 人妻少妇不满足中文字幕| 淫秽在线中国国产视频| аⅴ天堂中文在线网| 99久久久无码国产精品试看| 国产欧美日韩图片一区二区| 亚洲综合久久精品少妇av| 亚洲av日韩综合一区久热| 精品人妻系列无码一区二区三区| 宅宅午夜无码一区二区三区| 麻豆国产av在线观看| 国产午夜伦鲁鲁| 91免费永久国产在线观看| 国产91熟女高潮一曲区| 中国久久久一级特黄久久久| 中文成人无码精品久久久不卡 | 国产精品视频久久久久| 久久综合加勒比东京热| 性欧美长视频免费观看不卡| 装睡被陌生人摸出水好爽| 国产成人AV乱码免费观看| 扒开美女内裤舔出白水| 人妻激情另类乱人伦人妻| 久久精品国产亚洲5555| 日本久久大片中文字幕| 亚洲av网一区二区三区| 99re在线视频播放| 精品国产污黄网站在线观看| 成人麻豆日韩在无码视频|