當(dāng)前位置:首頁(yè) > 工業(yè)控制 > 電子設(shè)計(jì)自動(dòng)化

  在數(shù)字信號(hào)處理領(lǐng)域,離散時(shí)間系統(tǒng)的輸出響應(yīng),可以直接由輸入信號(hào)與系統(tǒng)單位沖激響應(yīng)的離散卷積得到。離散卷積在電子通信領(lǐng)域應(yīng)用廣泛,是工程應(yīng)用的基礎(chǔ)。如果直接在時(shí)域進(jìn)行卷積,卷積過(guò)程中所必須的大量乘法和加法運(yùn)算,一定程度地限制了數(shù)據(jù)處理的實(shí)時(shí)性,不能滿(mǎn)足時(shí)效性強(qiáng)的工程應(yīng)用。本文從實(shí)際工程應(yīng)用出發(fā),使用快速傅里葉變換(FFT)技術(shù),探討卷積的高速硬件實(shí)現(xiàn)方法。

  1 卷積算法的原理

  設(shè)線性時(shí)不變系統(tǒng)的沖激響應(yīng)為h(n),則沖激響應(yīng)和輸入δ(n)之間有關(guān)系

  

  假設(shè)該系統(tǒng)的輸入為x(n),輸出為y(n),則根據(jù)線性時(shí)不變系統(tǒng)的定義,有

  

 

  根據(jù)式(3),線性時(shí)不變系統(tǒng)的輸出信號(hào)可以由輸入信號(hào)與單位沖激響應(yīng)的卷積求得。實(shí)際應(yīng)用中,x(n)與y(n)的序列長(zhǎng)度均為有限的,假設(shè)均為N,顯然,求出N點(diǎn)的y(n)需要N2次復(fù)數(shù)乘法,當(dāng)序列長(zhǎng)度大時(shí),所需計(jì)算量是龐大,在需要實(shí)時(shí)處理的系統(tǒng)中,難以滿(mǎn)足實(shí)時(shí)性要求。

  將M點(diǎn)序列x(n),L點(diǎn)序列h(n)分別作擴(kuò)展,構(gòu)造新的序列x’(n),h’(n),使得長(zhǎng)度N滿(mǎn)足如下條件

  

  根據(jù)時(shí)域循環(huán)卷積定理,x(n)與h(n)的線性卷積可以用循環(huán)卷積來(lái)代替。即

  

  根據(jù)式(9),給出了一種基于快速傅里葉變換(FFT)的卷積的實(shí)現(xiàn)方法,如圖1所示。分別對(duì)補(bǔ)零后的z(n)和h(n)進(jìn)行FFT運(yùn)算,得到對(duì)應(yīng)的頻域響應(yīng)X(k)和H(k),將X(k)和H(k)相乘的結(jié)果再做IFFT,即可以得到x(n)和h(n)的卷積結(jié)果y(n)。

  

  2 基于FPGA的高速卷積的實(shí)現(xiàn)

  隨著電子技術(shù)的發(fā)展,現(xiàn)階段FFT硬件實(shí)現(xiàn)的方法主要有ASIC,DSP和FPGA這3類(lèi)。專(zhuān)用FFT處理芯片ASIC,例如PDSPl6510,這類(lèi)芯片的主要特點(diǎn)是技術(shù)簡(jiǎn)單。但是由于此類(lèi)ASIC處理點(diǎn)數(shù)有限,實(shí)現(xiàn)大點(diǎn)數(shù)FFT時(shí),需要多芯片并行工作,會(huì)導(dǎo)致所需的配套控制復(fù)雜、存儲(chǔ)芯片較多,加大了系統(tǒng)實(shí)現(xiàn)難度。使用DSP,如TMS320DSP6416,控制程序設(shè)計(jì)比較簡(jiǎn)單,但由于DSP的串行式軟件工作機(jī)理,當(dāng)點(diǎn)數(shù)較大時(shí),處理速度難以滿(mǎn)足實(shí)時(shí)要求。使用FPGA實(shí)現(xiàn)FFT功能,其并行處理機(jī)制允許FFT運(yùn)算過(guò)程中使用流水線的形式,大大提高處理速度,而且隨著技術(shù)發(fā)展,F(xiàn)FT IP核技術(shù)日臻完善,使得基于FFT IP核的系統(tǒng)在速度、靈活性等方面均展現(xiàn)出優(yōu)越性。本文使用Altera公司的StraTIx II系列芯片EP2S60實(shí)現(xiàn)線性卷積的功能。

  Stratix II是Altera公司生產(chǎn)的一款高性能FPGA器件。它采用臺(tái)積電的90 nm工藝技術(shù)生產(chǎn),等效邏輯單元(LE)最高可達(dá)180 kB,嵌入式存儲(chǔ)器容量最高可達(dá)9 MB。該器件不但具有較高的性能和密度,而且還針對(duì)器件總功率進(jìn)行了優(yōu)化,同時(shí)可以支持高達(dá)l Gb/s的高速差分I/O信號(hào),因而是一款高性能的FPGA。該芯片中所含的高性能嵌入式DSP塊的運(yùn)行頻率高達(dá)370 MHz。另外Stratix II還有12個(gè)可編程PLL,并具有完善的時(shí)鐘管理和頻率合成能力,能滿(mǎn)足高性能系統(tǒng)的需求。

  EP2S60集成了60 440個(gè)等效邏輯單元(LES),內(nèi)嵌M512 RAM模塊329個(gè),M4K RAM模塊255個(gè),M-RAM模塊2個(gè),總存儲(chǔ)單元2 544 192 bit,并集成了DSP模塊36個(gè)、18 bit×18 bit嵌入式硬件乘法器144個(gè),含有2個(gè)增強(qiáng)性鎖相環(huán)和8個(gè)快速鎖相環(huán),可滿(mǎn)足本系統(tǒng)的要求。

  3 FFT IP核的實(shí)現(xiàn)方法

  為了節(jié)省開(kāi)發(fā)時(shí)間,加速產(chǎn)品的投放,本文使用Ahera提供的FFT IP核來(lái)實(shí)現(xiàn)FFT和IFFT功能。Ahera FFT IP核函數(shù)是一個(gè)高性能、參數(shù)化的快速傅里葉變換(FFT)處理器,完全支持Ahera的FPGA系列??梢酝瓿勺儞Q長(zhǎng)度為2m(6≤m≤14)的基2、基4按照頻率抽選的高性能復(fù)數(shù)FFT以及逆FFT運(yùn)算。

  FFT IP核支持3種數(shù)據(jù)流模式,流模式(streaming)、緩沖突發(fā)模式(Buffered Burst)、突發(fā)(Burst)模式。并可以參數(shù)化設(shè)置變換點(diǎn)數(shù)和FFT或IFFT轉(zhuǎn)換方向。表l給出了FFT在Stratix II系列FPGA上使用流模式(Streaming)的性能。

  

 

  為了在整個(gè)轉(zhuǎn)換計(jì)算過(guò)程中保持高信噪比,F(xiàn)FTIP核在定點(diǎn)結(jié)構(gòu)與全浮點(diǎn)結(jié)構(gòu)之間折中,使用塊浮點(diǎn)結(jié)構(gòu)來(lái)表示轉(zhuǎn)換結(jié)果。在定點(diǎn)結(jié)構(gòu)中,數(shù)據(jù)精度需要足夠大,才能充分表示整個(gè)計(jì)算過(guò)程中的所有的中間計(jì)算結(jié)果。在執(zhí)行定點(diǎn)FFT過(guò)程中,經(jīng)常出現(xiàn)數(shù)據(jù)的位數(shù)過(guò)大或精度損失的現(xiàn)象。而在浮點(diǎn)結(jié)構(gòu)中,每個(gè)數(shù)用單獨(dú)的指數(shù)和尾數(shù)來(lái)表示,雖然這樣可以大大提高數(shù)據(jù)精度,但是浮點(diǎn)運(yùn)算需要占用更多的器件資源。塊浮點(diǎn)結(jié)構(gòu)保證了FFT整個(gè)轉(zhuǎn)換過(guò)程中數(shù)據(jù)位數(shù)的有效使用,每次通過(guò)基4-FFT運(yùn)算以后,數(shù)據(jù)位數(shù)最大可能增加倍,根據(jù)前面輸出數(shù)據(jù)模塊動(dòng)態(tài)范圍的測(cè)量進(jìn)行比例換算,換算過(guò)程中累計(jì)的移位次數(shù)被作為整個(gè)模塊的指數(shù)輸出。這種移位方法保證了最低位(LSB)的最小值在乘法運(yùn)算后的輸出進(jìn)行舍入操作之前就被舍棄。實(shí)際上,塊浮點(diǎn)表示法起到了數(shù)字自動(dòng)增益(AGC)的作用,為了在連續(xù)輸出模塊中產(chǎn)生統(tǒng)一的比例,必須用最終的指數(shù)對(duì)FFT函數(shù)輸出進(jìn)行比例換算。

  4 實(shí)際工程中的卷積的實(shí)現(xiàn)

  如圖2所示,給出了一個(gè)實(shí)際應(yīng)用的例子。為了保證I,Q兩路的相位同一性,使用雙通道A/D,選擇Linear公司的LTC2280,LTC2280支持10 bit,105 Ms/s的最大采樣率,并擁有61.6 dB的信噪比(SNR),85 dB的無(wú)雜散動(dòng)態(tài)范圍(SFDR),滿(mǎn)足系統(tǒng)需要。雙通道D/A使用Analog公司的AD9763,AD9763支持10 bit、125 Ms/s的最大采樣率。

  

  首先,需要在PC機(jī)上準(zhǔn)備好h(n)對(duì)應(yīng)的DFT變換結(jié)果H(k),H(k)的處理實(shí)際上有兩種方法,一個(gè)是將h(n)下載到下位機(jī)中,使用下位機(jī)硬件實(shí)現(xiàn)H(k),還有就是將H(k)在上位機(jī)就計(jì)算好,直接將計(jì)算結(jié)果下到下位機(jī)中。由于h(n)在系統(tǒng)工作中是不變的,在PC機(jī)端事先計(jì)算好H(k)更合適,不僅可以減少FPGA的資源占用,而且也方便數(shù)據(jù)的處理。基于以上的考慮,本系統(tǒng)將在PC機(jī)端求出的H(k)通過(guò)422接口下載到下位機(jī)的RAM中,方便使用。

  下位機(jī)系統(tǒng)工作之前,上位機(jī)需要通過(guò)PCI控制板卡將計(jì)算好的數(shù)據(jù)下載到下位機(jī)的RAM中,方便工作過(guò)程中的數(shù)據(jù)使用。在收到外部控制信號(hào)后,下位機(jī)開(kāi)始啟動(dòng),LTC2280開(kāi)始采集I、Q通道數(shù)據(jù)并送入到FPGA中。

  AD輸出的I,Q數(shù)據(jù)直接作為一個(gè)復(fù)數(shù)的實(shí)部和虛部進(jìn)入FFT核進(jìn)行FFT變換。為了加速處理速度,使用基-4四引擎輸出結(jié)構(gòu)。FFT核輸出的結(jié)果X(k)過(guò)指數(shù)調(diào)整以后直接進(jìn)入到一個(gè)硬件復(fù)數(shù)乘法器,與存儲(chǔ)于RAM中計(jì)算好的H(k)對(duì)應(yīng)相乘,同時(shí)乘法器輸出可以直接輸入到IFFT模塊進(jìn)行逆FFT運(yùn)算,IFFT計(jì)算結(jié)果再經(jīng)過(guò)指數(shù)調(diào)整以后即可以直接通過(guò)D/A輸出。

  

  5 性能分析與改進(jìn)

  FPGA的流水線結(jié)構(gòu)決定了速度的瓶頸取決于整個(gè)流程中處理速度最慢的部分。在FFT核速度可以保證的前提下(EP2S60的理論速度可以達(dá)到293.06 MHz),而處理過(guò)程中全部使用FPGA內(nèi)部RAM來(lái)存儲(chǔ)中間數(shù)據(jù),所以在本系統(tǒng)中,F(xiàn)PGA內(nèi)部的理論處理速度達(dá)到200 MHz以上。本系統(tǒng)的處理速度主要局限于A/D和D/A的數(shù)據(jù)轉(zhuǎn)換率,根據(jù)實(shí)際測(cè)試,在100 MHz系統(tǒng)時(shí)鐘下,數(shù)據(jù)吞吐率可達(dá)100 Ms/s,滿(mǎn)足了設(shè)計(jì)技術(shù)指標(biāo)。圖4給出了FPGA的資源占用。為了較好地檢測(cè)整個(gè)使用FFT_IFFT實(shí)現(xiàn)卷積的系統(tǒng)性能,設(shè)計(jì)了一個(gè)初略性能分析測(cè)試結(jié)構(gòu),如圖5所示。

  

  

  在圖5中,由上位機(jī)產(chǎn)生的一組8 192點(diǎn)隨機(jī)復(fù)數(shù)a(t)寫(xiě)入ROM中,作為FFT模塊的信號(hào)輸入,經(jīng)過(guò)FFT后將結(jié)果B(ω)存入RAM中,以方便上位機(jī)讀取并與a(t)使用Matlab計(jì)算出來(lái)的FFT結(jié)果A(ω)進(jìn)行比較;接著將該FFT結(jié)果B(ω)再進(jìn)行IFFT計(jì)算,由數(shù)字信號(hào)處理理論可知,一個(gè)信號(hào)進(jìn)行FFT后再進(jìn)行IFFT的結(jié)果應(yīng)該是信號(hào)本身,所以將B(ω)再進(jìn)行IFFT計(jì)算后得到的結(jié)果b(t)存入RAM,由上位機(jī)讀取并與原始信號(hào)a(t)進(jìn)行比較,可以分析整個(gè)卷積系統(tǒng)的處理誤差。圖6給出了計(jì)算FFT結(jié)果相對(duì)誤差的Matlab相關(guān)程序。

  

  求出A(ω)的最大值max[A(ω)],分別對(duì)B(ω)的實(shí)部和虛部計(jì)算相對(duì)誤差,得到如圖7所示的相對(duì)誤差曲線。由圖6可知,在FFT過(guò)程中,相對(duì)誤差可以保證在0.5%以?xún)?nèi)。對(duì)FFT所得的結(jié)果B(ω)做IFFT得到b(t),分析b(t)與原數(shù)據(jù)a(t)的誤差,得到如圖8所示的相對(duì)誤差曲線。

  

  觀察圖8可知,經(jīng)過(guò)FFT變換和IFFT變換以后的累積相對(duì)誤差保持在±3%以?xún)?nèi),主要原因是FPGA計(jì)算FFT和IFFT過(guò)程中由于精度的要求,進(jìn)行數(shù)據(jù)舍去,造成誤差的產(chǎn)生。這種誤差是由硬件客觀條件限制的,不可避免,但是±3%的誤差精度完全可以滿(mǎn)足實(shí)際應(yīng)用。

  

  本系統(tǒng)由于涉及到高速A/D、高速D/A,所以在PCB設(shè)計(jì)過(guò)程中必須考慮電磁兼容EMC(Electro MagneTIc Compatibility)和抗電磁干擾EMI(Electro Magnetic InteRFerence)性和信號(hào)的完整性。總體來(lái)說(shuō),在進(jìn)行高速PCB設(shè)計(jì)過(guò)程中,不僅要考慮PCB的元器件布局和布線,同時(shí)設(shè)計(jì)中的接地、去耦和旁路同樣重要。例如在A/D部分這種混合信號(hào)PCB設(shè)計(jì)中,由于混合了模擬信號(hào)與數(shù)字信號(hào),只有盡可能減小電流環(huán)路的面積才能降低數(shù)字信號(hào)與模擬信號(hào)之間的相互干擾。一個(gè)可行的方法是將地平面分割,然后在A/D轉(zhuǎn)換器下面將模擬地和數(shù)字地連接在一起。

  在處理FFT和IFFT核的指數(shù)問(wèn)題時(shí),正常做法是在FFT結(jié)束后直接做一次指數(shù)調(diào)整,在IFFT結(jié)束后再做一次指數(shù)調(diào)整。設(shè)經(jīng)過(guò)FFT核后的直接輸出結(jié)果為X’(k)、對(duì)應(yīng)指數(shù)輸出為(-expl),x(n)的真實(shí)結(jié)果為X(k),則有

  

  由式(12)可知,F(xiàn)FT和IFFT的兩次指數(shù)調(diào)整實(shí)際可以在IFFT合為一次,可以減少控制的復(fù)雜程度。兩次調(diào)整指數(shù)的示意圖如圖9所示。一次調(diào)整指數(shù)的示意圖如圖10所示。

  

  

  6 結(jié)束語(yǔ)

  本文基于Altera的FPGA EP2S60F1 020C8,搭建了結(jié)合A/D,D/A等功能的配套處理平臺(tái),完成了對(duì)高速離散卷積的硬件實(shí)現(xiàn),使該系統(tǒng)在100 MHz時(shí)工作正常,滿(mǎn)足了設(shè)計(jì)要求。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉