<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è) > 嵌入式系統 > 設計應用 > 基于FPGA的軟件無(wú)線(xiàn)電高速數字信號處理

基于FPGA的軟件無(wú)線(xiàn)電高速數字信號處理

作者: 時(shí)間:2014-07-04 來(lái)源:電子產(chǎn)品世界 收藏

  摘 要 本文首先建立了單信道的軟件無(wú)線(xiàn)電數學(xué)模型,分析比較了FPGA、ASIC以及DSP設計方式的優(yōu)缺點(diǎn),并深入研究了FPGA技術(shù)在軟件無(wú)線(xiàn)電中的應用。

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

  關(guān)鍵詞

  1 引言

  軟件無(wú)線(xiàn)電的基本思想是:A/D、D/A變換器盡可能地接近天線(xiàn),用軟件來(lái)完成盡可能多的無(wú)線(xiàn)電臺的功能1軟件無(wú)線(xiàn)電的結構大致分為三種:射頻低通采樣數字化結構、射頻帶通采樣數字化結構和寬帶中頻采樣數字化結構。

  對于前兩種方式,由于是對射頻信號直接進(jìn)行采樣,結構簡(jiǎn)潔,并把模擬電路部分減小到最低限度,無(wú)疑是最理想的方式,但這種結構不僅對A/D轉換器的性能如轉換速率、工作帶寬、動(dòng)態(tài)范圍提出了非常高的要求,同時(shí)對后續DSP或ASIC的處理速度要求過(guò)高,以至于無(wú)法實(shí)現;寬帶中頻采樣的軟件無(wú)線(xiàn)電結構與目前的中頻數字化接收機(發(fā)射機)的結構是類(lèi)似的,都采用了多次混頻體制,在適當的中頻位置進(jìn)行數字化,所以它是三種結構中最容易實(shí)現的,對器件的要求也較低,但它離理想軟件無(wú)線(xiàn)電的要求仍有一定距離。

  2 單信道軟件無(wú)線(xiàn)電數學(xué)模型

  單信道軟件無(wú)線(xiàn)電接收機和發(fā)射機的數學(xué)模型如圖1所示。以接收機為例,將數字處理流程分為兩部分:一是數字下變頻部分,包含NCO、混頻器、低通濾波以及抽取濾波器;二是基帶信號處理部分,包含解調、譯碼、自適應均衡、幀調整、比特調整和鏈路去加密等算法。數字下變頻單元的功能一是進(jìn)行頻譜搬移,將射頻信號或中頻信號轉換為零中頻信號;二是降低采樣速率,將滿(mǎn)足射頻或中頻采樣定理的高速采樣信號降低為低速基帶采樣信號。

  

 

  就目前器件的發(fā)展水平,要想實(shí)現完全的射頻數字化,幾乎還不太可能,所以研究的重點(diǎn)往往放在中頻數字化上。根據上面的分析,中頻數字化中基帶信號處理部分由于處在較低速率上,一般采用通用DSP方案實(shí)現,通過(guò)軟件來(lái)實(shí)現各種功能;而對于數字變頻部分,它們過(guò)高的速率使得通用DSP無(wú)能為力,即使像運算速度已高達600 MHz的TMS320C64X也不能解決數字中頻的處理,所以,如何解決A/D采樣后高速信號的處理,依然是中頻以下軟件無(wú)線(xiàn)電的關(guān)鍵。目前,人們已經(jīng)提出了一些解決關(guān)鍵元器件的方法,并已出現了大量的數字中頻產(chǎn)品,尤以Harris公司和Gray公司為代表,像Harris公司的可編程數字 HSP50415、HSP50216等都為軟件無(wú)線(xiàn)電的實(shí)現奠定了良好的基礎。同時(shí),在另一方面,由于FPGA技術(shù)的迅速發(fā)展,超大規模、高速度的 FPGA芯片不斷出現,特別是像Xilinx公司的SpartanII、VirtexII具有獨特的快速邏輯進(jìn)位、DDL功能,為實(shí)現高速數字信號處理提供了可能,這種FPGA加DSP的設計方法為實(shí)現軟件無(wú)線(xiàn)電提供了一種更加靈活的方案,本文的重點(diǎn)正是研究FPGA技術(shù)在軟件無(wú)線(xiàn)電中的應用。

  3 幾種技術(shù)方案的比較

  3.1 FPGA的發(fā)展現狀

  FPGA(Field Programmable Gate Array)是最近10年發(fā)展起來(lái)的新型可編程邏輯器件。由于FPGA器件的功能由邏輯結構的配置數據決定,工作前需要從芯片外部加載配置數據。配置數據存儲在片外的EPROM或其它存儲體上,人們可以控制加載過(guò)程,在現場(chǎng)修改器件的邏輯功能,即所謂現場(chǎng)編程。FPGA與CPLD一起在數字電路中發(fā)揮著(zhù)巨大的作用。FPGA技術(shù)的發(fā)展可以從全球最大的FPGA生產(chǎn)廠(chǎng)商Xillinx公司推出的產(chǎn)品看出,無(wú)論是在規模、處理速度還是功耗上,都得到了長(cháng)足的進(jìn)步,如VirtexII系列XC2V10000:系統邏輯門(mén)為10M,內含專(zhuān)用18(18位乘法器192個(gè),并有Block RAM 3456kbit,內部時(shí)鐘處理速度為420MHz,IO數據速率可達840Mbit/s,核心電壓1.5V。

  3.2 FPGA與ASIC的比較

  下面我們從功耗、體積、成本、現場(chǎng)可編程性以及硅芯片的解決方案等角度分別對高速DSP、ASIC以及FPGA設計方案進(jìn)行比較,如表1所示。

  從表1中可以看出,與ASIC設計方案比較,FPGA具有更大的靈活性。ASIC設計是通過(guò)在FPGA中的模型來(lái)測量,當接近要求時(shí),再轉到小批量ASIC 中測量,這種測量是需要反復進(jìn)行的。設計系統直接使用可重構的FPGA,不但增加了設計的靈活性,而且大大減少了投放市場(chǎng)所需的時(shí)間。

  3.3 FPGA與DSP的比較

  DSP芯片在市場(chǎng)上已有20幾年了,其性能也在不斷地提高,但要達到千兆赫量級的時(shí)鐘速度所要求的功耗仍然較高,并且其串行處理的結構不可能實(shí)現高階的數字濾波器功能(如表2所示)。

  4 FPGA在數字中頻處理中的應用

  根據圖1所示數學(xué)模型,FPGA在軟件無(wú)線(xiàn)電中的應用主要體現在數字上變頻DUC和數字下變頻DDC中。經(jīng)過(guò) A/D采樣后的信息直接送給FPGA,在FPGA中完成本地混頻,把中頻信號搬移到基帶信號,然后經(jīng)過(guò)低通濾波和多級抽取濾波,降低信息的采樣速率,由 FPGA送至通用DSP,實(shí)現基帶信號的調制解調;對于數字上變頻結構,和下變頻有完全對稱(chēng)的結構,所以分析時(shí)僅以接收機為例。

  4.1 本地頻率產(chǎn)生器和混頻器

  DDC結構中第一個(gè)環(huán)節就是要實(shí)現本地數字混頻,主要由兩個(gè)部件完成,一是乘法器,二是數控振蕩器(NCO)。乘法器是數字信號處理中的基本運算單元,在FPGA中設計較為復雜,而且占用資源也比較多,但在具體實(shí)現FIR濾波時(shí),往往不采用這種直接的乘累加的形式,以免占用大量的資源;在實(shí)現混頻時(shí),由于只需兩個(gè)乘法器,而且是在很高的速率下進(jìn)行,所以不考慮資源的限制。在Xilinx公司FPGA產(chǎn)品中,有的已在芯片內部嵌入了乘法器,這種內置乘法器充分結合了芯片硬件特點(diǎn),使得運算速度更高。

  NCO的硬件結構如圖2所示,主要由相位累加器和SIN/COS表構成。相位累加器產(chǎn)生的相位作為地址去查找ROM表,查到的SIN/COS值即本地載波的數字頻率送至乘法器,完成混頻。在實(shí)現NCO時(shí)有以下參數值得注意:

  · NCO產(chǎn)生數字頻率的精度。此參數與SIN/COS 值的位數有關(guān),位數越寬,則精度也就越高,但占用FPGA的資源也就越多。

  · 載波的同步。如果需要本地載波做到嚴格的同步,則需要額外的鎖相環(huán)結構獲取偏移相位,進(jìn)行調整。

  · NCO輸出頻率的噪聲。噪聲的產(chǎn)生與頻率在時(shí)間上量化有關(guān),由于采樣時(shí)刻不一定嚴格對齊載波的相位,所以會(huì )產(chǎn)生噪聲,但構造更大的正弦或余弦表會(huì )減少噪聲分量,這同樣會(huì )增加FPGA的資源占用。

  

 

  4.2 抽樣率變換濾波器組

  下變頻過(guò)程中經(jīng)過(guò)混頻后的信號必須進(jìn)行抽取濾波,以便降低抽樣速率,使得通用的DSP對基帶信號處理時(shí)有充足的時(shí)間完成運算;同樣,在上變頻過(guò)程中,首先要進(jìn)行插值濾波,提高抽樣速率,從而實(shí)現在IF范圍內頻譜的搬移。根據DDC總抽取因子的大小,我們把數字下變頻分為兩類(lèi):即當抽取率大于32時(shí),認為是窄帶下變頻,反之則認為是寬帶下變頻。無(wú)論是寬帶還是窄帶,一般都采用FIR結構實(shí)現抽取濾波器,但對于窄帶下變頻,由于抽取因子較大,所以其抽取濾波器組也更為復雜一些。參考古得曼(Goodman)和開(kāi)萊(Carey)提出的設計多級抽取器和內插器的經(jīng)典模型[3],對窄帶下變頻作如圖3設計,其中CIC濾波器為整系數濾波器,濾波時(shí)無(wú)需乘法運算,而半帶濾波器有一半系數為零,這樣在濾波時(shí)大大減少了計算量。

  

 

  實(shí)現FIR濾波功能的基本元素包括乘法器、加法器、延遲單元以及存儲單元等,其中乘法器的設計最為復雜。用 FPGA技術(shù)作乘累加運算通常有移位相加、加法器樹(shù)、查詢(xún)表和邏輯樹(shù)等設計方法,不管采取哪種方法,要實(shí)現一個(gè)高階的數字濾波器都將占用相當大的資源。相比較來(lái)說(shuō),采用分布式運算(Distributed Arithmetic)的FPGA設計無(wú)論是在邏輯資源占用上,還是處理速度上都具有很大的優(yōu)勢,特別是對于基于SRAM結構的FPGA更加適合于DSP 功能的設計。有關(guān)早期比較著(zhù)名的闡述,是在1974年由Abraham Peled 和Bede Liu在討論數字IIR濾波器和FIR濾波器硬件設計時(shí)涉及到,1975年在IEEE Proceedings中Freeny發(fā)表了一篇關(guān)于DA算法在貝爾實(shí)驗室電話(huà)系統中應用的論文,同時(shí)惠普公司的Kai-Ping Yiu提供了一種有關(guān)符號位的DA設計方法;此后,西門(mén)子H.Schroder以及RICE大學(xué)C. S. Burrus 在提高算法的處理速度方面做了深入的研究。隨著(zhù)大規模集成電路技術(shù)的發(fā)展,特別是可編程邏輯器件的發(fā)展,DA算法在數字濾波器硬件設計中的研究進(jìn)一步加強,SDA(串行DA)算法和PDA(并行DA)算法已成為FPGA實(shí)現DSP功能最為有效的方法。根據DA算法設計的思想,我們進(jìn)行FIR濾波器設計如圖4所示。

  

 

  圖4為FIR濾波器實(shí)現的串行DA形式,其中S-REG為串行移位寄存器,實(shí)現輸入數據的并/串轉換,并由 TSB(Time-Skew Buffer)完成數據的移位緩存,產(chǎn)生訪(fǎng)問(wèn)DALUT的地址;查表后得到的輸 出數據由定標ACC單元完成累加,累加的結果即為濾波后的值。SDA算法處理的速度與抽頭系數的大小無(wú)關(guān),只與輸入信號的數據位數有關(guān),例如當x(n) 的數據寬度為12bit,則需要12個(gè)時(shí)鐘來(lái)完成一個(gè)輸出結果的運算。PDA(并行DA)算法可相應提高信號處理的速度,但它是以犧牲更大的邏輯單元為代價(jià)的。為了實(shí)現較高性能的濾波器指標,往往需要很多個(gè)抽頭,這時(shí)DALUT必然會(huì )占用很大的空間,如每增加一個(gè)抽頭,DALUT的容量就會(huì )增加一倍 (2K),在實(shí)際處理時(shí),通常采用分解級聯(lián)的方法,利用多個(gè)DALUT實(shí)現總的濾波功能。

  4.3 FPGA實(shí)現和實(shí)驗結果

  我們設計了一個(gè)中頻為10.75MHz,帶寬為20kHz的中頻數字化收發(fā)信機,硬件設計如圖5所示。

  如圖5所示,中頻A/D、D/A分別采用AD公司的AD9224和AD9764,其中AD9224分辨率為 12bit,AD9764為14 bit,采樣速率為30.720MHz;DSP選用TI公司的0芯片,最高處理速度為100MIPS;音頻A/D、D/A由 TLV320AIC10實(shí)現。FPGA選用Xilinx公司的SpartanII-200,規模為20萬(wàn)門(mén),最高工作頻率為200MHz,該芯片主要完成抽取率為512的DDC功能和插值率同樣為512的DUC功能,而且是在同一片FPGA中實(shí)現。FPGA單元與DSP接口的數據速率為60kHz。 FPGA開(kāi)發(fā)工具為Xilinx Foundation3.1,編程語(yǔ)言采用VHDL和Schematic混合設計方法,并利用CORE Generator提供的DA FIR濾波器方便地實(shí)現半帶濾波器和整形高階FIR濾波器功能。

  

 

  5 結束語(yǔ)

  本文在建立單信道軟件無(wú)線(xiàn)電數學(xué)模型的基礎上,深入研究了FPGA技術(shù)在軟件無(wú)線(xiàn)電高速數字信號處理中的應用,特別是在DDC和DUC中的應用。研究表明,這種基于FPGA/通用DSP的協(xié)同設計方法,無(wú)論是在性能價(jià)格上,還是在設計的靈活性上,都有很大的優(yōu)勢,非常適合目前軟件無(wú)線(xiàn)電硬件平臺設計。

  參考文獻

  1 Mitola J. The software radio architecture. IEEE Communication Magazine,1995(5)

  2 Cummings M, Haruyama. FPGA in the software radio. IEEE Communications Magazine, 1999,37(2)

  3 R.E.克勞切,L.R拉賓納.多抽樣率數字信號處理.北京:人民郵電出版社,1988

濾波器相關(guān)文章:濾波器原理


dc相關(guān)文章:dc是什么


fpga相關(guān)文章:fpga是什么


西門(mén)子plc相關(guān)文章:西門(mén)子plc視頻教程


濾波器相關(guān)文章:濾波器原理


混頻器相關(guān)文章:混頻器原理
數字濾波器相關(guān)文章:數字濾波器原理
鎖相環(huán)相關(guān)文章:鎖相環(huán)原理


評論


相關(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>