<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > 基于FPGA的載波調制系統

基于FPGA的載波調制系統

作者: 時(shí)間:2009-02-01 來(lái)源:網(wǎng)絡(luò ) 收藏

電力線(xiàn)(PLC)通信作為電力系統特有的通信方式,廣泛用于電力系統的調度通信、生產(chǎn)指揮、行政業(yè)務(wù)通信以及其他各種信息的傳輸。隨著(zhù)數字通信技術(shù)的發(fā)展,采用電力線(xiàn)上網(wǎng)、進(jìn)行多媒體通信也具有寬闊的前景,電力線(xiàn)通信已經(jīng)成為當今研究熱點(diǎn)之一。

本文引用地址:http://dyxdggzs.com/article/192167.htm


線(xiàn)路調制單元是電力線(xiàn)機中關(guān)鍵部件之一。為了提高頻帶的利用率,線(xiàn)路調制一般采用單邊帶調制方式。使用數字化處理方法來(lái)實(shí)現線(xiàn)路的單邊帶調制,能夠克服模擬電路的諸多缺陷。線(xiàn)路調制需要完成正交變換、濾波和頻譜搬移等處理,運算量與采樣率直接相關(guān)。高采樣率導致了高的運算量,低成本DSP芯片無(wú)法滿(mǎn)足運算需求。可用于實(shí)現DSP運算處理單元,達到實(shí)時(shí)完成數字信號處理功能的目的,它為線(xiàn)路調制單元的數字化實(shí)現提供了一條性?xún)r(jià)比較高的途徑。本文將介紹線(xiàn)路調制的實(shí)現,包括:線(xiàn)路調制單元數字化實(shí)現的總體設計,CIC和FIR濾波器的實(shí)現以及載波發(fā)生器單元的設計。


線(xiàn)路調制解調實(shí)現方案
電力線(xiàn)載波通信標準要求的信號頻率為40~500kHz,頻帶寬度為4kHz。根據奈奎斯特定理,采樣頻率不能小于1MHz。采用數字化處理方式實(shí)現調制就是將信號的頻譜搬移過(guò)程轉化為數字域的數值計算過(guò)程。單邊帶信號可以表示為x(n)cos(wn)±x^(n)sin(wn),式中x(n)為基帶信號,x^(n)為基帶信號的正交信號,w為載波頻率。由該式可知,完成單邊帶調制需要信號的正交變換、載波信號的產(chǎn)生、信號與載波的乘加等數值運算。希爾伯特變換是一種便于采用FPGA實(shí)現的正交變換方法,它可由系數具有奇對稱(chēng)特性的FIR濾波器實(shí)現。


基帶信號的頻率較低,相應應以較低的采樣率采樣,而調制信號的頻率較高,應以較高的采樣率采樣。因此在調制過(guò)程中必須進(jìn)行采樣率的提升,內插技術(shù)可以實(shí)現采樣率的變換。調制單元調制部分的數字化實(shí)現的邏輯結構如圖1所示。


由圖1可見(jiàn),調制單元由正交變換、內插和調制三部分組成。完成正交變換的Hilbert濾波器為系數奇對稱(chēng)的FIR濾波器,延遲保持了正交信號與原始信號的時(shí)間同步。載波發(fā)生器,乘法器和加法器完成單邊帶調制。載波發(fā)生器由查表法實(shí)現,地址為13位,字長(cháng)為16位,可以產(chǎn)生所需要的各種載波頻率。內插完成采樣率的提升,再用低通濾波器濾除無(wú)用頻率分量。在設計中,通過(guò)內插將信號采樣率由8kS/s提升至8.192MS/s,內插率I=1024。分兩級完成:第一級內插率I=8,該級內插采用128階系數偶對稱(chēng)FIR濾波器濾波。第二級內插率I=128,該級內插采用3級級聯(lián)的CIC(積分梳狀)濾波器。


由上述方案可見(jiàn),合理設計FIR、CIC濾波器和載波發(fā)生器電路是線(xiàn)路調制單元數字化實(shí)現的關(guān)鍵,線(xiàn)路調制單元和其他的組件進(jìn)行數據交換,控制和接口電路在此不作一一贅述。

濾波器的FPGA設計
線(xiàn)路調制解調需要用到FIR和CIC兩種濾波器,這兩種濾波器的共同特點(diǎn)是,具有線(xiàn)性相位,非常適合應用需求。但這兩種濾波器對FPGA資源耗費較大,因此必須采用合理的結構減少FPGA資源的開(kāi)銷(xiāo)。


1 CIC濾波器的設計
設計CIC濾波器時(shí),首先要考慮濾波器的增益,防止溢出。內插均選用三級級聯(lián)的CIC濾波器,傳遞函數為H(z)=((1-z-128)/(1-z-1))3。由傳遞函數可以求出濾波器的增益為1283,增加的字長(cháng)為log2(128)3=21位,輸入信號寬度為13位,實(shí)現時(shí)必須預留21+13=34位防止溢出。將內插器與濾波器結合起來(lái)并對其實(shí)現如圖2所示。

圖2 cic內插


程序設計采用VHDL語(yǔ)言,用Quartus II 3.0綜合后CIC濾波器耗費資源350個(gè)LE(Logic Element)。根據Hogenaur的剪除理論在每一級輸出時(shí)都可以剪除掉最后的若干位。通過(guò)信噪比的計算,可確定剪除位數,設計中積分部分每級可以剪除6位,分別取22、28和34位,梳狀部分每級剪除1位,分別取14、15和16位,濾波器的輸出為13位。采用剪除理論后,消耗的資源為240個(gè)LE,資源消耗減少了32%。


2 FIR濾波器的設計
FIR濾波器階數高,如果按其級聯(lián)結構實(shí)現時(shí)資源的利用率非常低,須加以改進(jìn)。一種方法是提高時(shí)鐘速度,重復利用乘法器和加法器。這種方法程序設計比較復雜,時(shí)鐘提升也導致功耗增加,額外資源的消耗較多。另一種方法是利用FIR濾波器的分布式結構進(jìn)行設計,這是一種高效的方法。信號x(n)通過(guò)N抽頭,n位的FIR濾波器可以用下式表示,其中h(n)是濾波器系數,y為輸出信號。

輸入信號x(n)采用補碼的形式,可表示為

重新對上式求和如下:

簡(jiǎn)寫(xiě)形式如下:

 

由上式可看出,把輸入信號每位的值xb作為地址,將濾波器系數h(n)的值和xb的每一位xb(n)乘積疊加,并將結果存入ROM中,就可以通過(guò)查表并移位相加而得到最終內積的結果。整個(gè)濾波器的實(shí)現無(wú)須乘法器,節省了FPGA片內資源。實(shí)驗證明按照級聯(lián)結構進(jìn)行設計時(shí),128階FIR濾波器需要占用3000個(gè)LE以上,提高時(shí)鐘重復利用乘法器后為1500LE,而采用分布式的結構資源消耗僅為900多個(gè)LE。希爾伯特濾波器由于階數較低,消耗的資源更少。假定數據h(n)為B位,FIR的階數為N,則需要的地址空間為2N,當N較大時(shí)實(shí)現會(huì )有困難。通過(guò)將128階的濾波器分割為8塊16階的方法,有效減少了存儲容量。該結構既節省資源又靈活。利用線(xiàn)性相位FIR濾波器的對稱(chēng)性,還可以節省一半存儲量。


3載波發(fā)生器的實(shí)現
電力線(xiàn)路中影響衰減特性的因素很多,這就要求電力線(xiàn)載波機線(xiàn)路調制單元的載波頻率可變。NCO可以產(chǎn)生不同頻率的正弦信號抽樣值。如圖3所示,預先存儲一張正弦信號ROM表,表中放有8192個(gè)抽樣點(diǎn)的值。假設所需的載波頻率為300kHz,NCO從ROM表中每隔300個(gè)點(diǎn)取出一個(gè)值,即可得到頻率為300kHz正弦信號的抽樣值。在實(shí)現中正弦信號ROM表的是通過(guò)對頻率為1Hz的正弦信號在一個(gè)周期內進(jìn)行8192次等間隔采樣得到的。由于頻率分辨率為1kHz,所以根據需要載波頻率的不同,NCO改變抽取點(diǎn)間的間隔,就能在一定范圍內得到任何1kHz整數倍頻率的正弦信號抽樣值。

圖3 NCO內部原理圖

圖4 NCO設計流程


正弦信號具有重復性,因此設計時(shí)只需存放四分之一個(gè)周期的值,即2048個(gè)抽樣值。這樣節約了大量的ROM空間和存儲單元。NCO的流程如圖4所示。


正弦信號和余弦信號僅僅是相位上偏差了90°,因此每次從ram中取正弦信號抽樣值的時(shí)候,將地址指針延遲四分之一周期就能取出與之嚴格同步的余弦信號值。設計時(shí)NCO采用了雙時(shí)鐘結構,CLK為低頻時(shí)鐘,CLK1為高頻時(shí)鐘。在低頻時(shí)鐘內使用一個(gè)地址指針控制提取兩路載波的地址,在高頻時(shí)鐘內根據地址依次提取正弦和余弦抽樣值。低頻時(shí)鐘控制地址指針的變換,在時(shí)鐘上升延到來(lái)時(shí)變更指針。CLK經(jīng)過(guò)一個(gè)周期的時(shí)間內,CLK1經(jīng)過(guò)6個(gè)周期:前三個(gè)周期空等待,等待地址指針m的刷新;而后的三個(gè)周期依次根據地址取出正弦余弦的抽樣值,并作同步輸出。

性能測試與分析
采用本文中方案所設計的語(yǔ)音信號調制單元,通過(guò)一次變頻的方式完成單邊帶調制,除了在體積和可靠性具有無(wú)可比擬的優(yōu)勢外,其他性能指標也有了很大的改進(jìn)。通過(guò)實(shí)測,其主要性能指標如表1所示。

結論
滿(mǎn)足設計的芯片有多種,例如,Atlera公司的Cyclone芯片EP1C12Q240C8、EP2C5Q208C8、EP1C12Q240C8等。從成本和實(shí)用角度考慮,在地設計中采用芯片EP1C6Q240C8,實(shí)現了完整的單邊帶線(xiàn)路調制單元,經(jīng)過(guò)測試性能良好。僅用一片FPGA芯片,通過(guò)數字化的方式來(lái)實(shí)現線(xiàn)路調制,和以往的模擬實(shí)現方法相比,是一種技術(shù)的革新和進(jìn)步。采用數字化的實(shí)現方法后,整機的體積減小、成本低,可靠性有了很大的提高。用FPGA實(shí)現線(xiàn)路調制是一種有效的方法,為電力線(xiàn)載波機增加了相當的市場(chǎng)競爭力。



關(guān)鍵詞: FPGA 載波 調制系統

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>