版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、數(shù)字中頻的基本原理和FPGA的實現(xiàn)1基本原理數(shù)字中頻主要分兩部分,數(shù)字上變頻(DUC)和數(shù)字下變頻(DDC)。它們的主要功能是相反,但原理和實現(xiàn)的方法是十分相似。在R8905項目中由于采用了零中頻技術(shù),數(shù)字上變頻和下變頻有一些差別,數(shù)字上變頻沒有了NCO模塊。另外為了降低輸出信號的峰均比又加入了削峰模塊CFR,而CGC模塊的引入則是補償削峰所引起的功率損失。CPRI接RCFCFRkHBCIC5口處理2倍內(nèi)插2倍內(nèi)插4倍內(nèi)插r3.84M7.68M115.36M1r61.44MCGC圖1數(shù)字上變頻模塊框圖在數(shù)字下變頻中RSSI模塊是信號的功率檢測模塊,它配合AGC電路將信號的輸出功率穩(wěn)定在一定范圍
2、內(nèi)。圖2數(shù)字下變頻模塊框圖在DDC和DUC中主要使用3種濾波器分別是RRC,HB和CIC,它們個自有個自的特點。RRC濾波器一般來講階數(shù)比較多,多用于低頻處。由于它的階數(shù)比較多,所以可以得到比較銳利的帶通特性,但它所用的乘法器比較多。CIC濾波器不需要乘法器,但它的帶內(nèi)不是很平坦,適合用在高頻處。而HB濾波器的特性正好在它們之間,它有約一半的系數(shù)是0可以講乘法器的個數(shù)減少一半。削峰模塊CFR實際上也是一組濾波器,它的功能是將CDMA信號中的峰值信號減小一些,以減小輸出信號的峰均比,使射頻功率放大器的效率更高。削峰的模塊框圖如圖3d=Ja;/I吃de3/Q15:Ciq_enwddI4掃刖卄主1刖
3、_2OFF:ICFRJ|15:0CFRaCFRQ-5OczmzGrr=etq_3-irjfafirj15:C,肝.firadl-5I:rWdd圖3單級削峰削峰的原理是這樣的一個復(fù)信號(I,Q)如果它的模大于某個門限,就將其減去這個門限得到一個復(fù)信號(dI,dQ),否則(dI,dQ)=(0,0)。將(dI,dQ)送到fir濾波器中,fir濾波器是一個低通濾波器將峰值限定在一定的帶寬內(nèi),防止影響臨道。將原信號(I,Q)減去濾波后的信號(fir_i,fir_q)就得到了削峰的值。如果有必要這這樣的削峰可以連續(xù)做幾次,在R8905設(shè)計中削峰用了兩次。2濾波器的設(shè)計由于在濾波的同時還有內(nèi)插和抽取,所以充
4、分利用這一特性可以減少FPGA使用的資源。另外濾波器的系數(shù)一般都是對稱的,可以將頭和尾的數(shù)相加再乘濾波器的系數(shù),這樣可以大大減少乘法器的使用。以R8905中的上變頻RRC為例來說明:設(shè)a(n)為RRC濾波器的系數(shù)而x(n)為3.84M輸入數(shù)據(jù)則考慮了內(nèi)插后的濾波器的數(shù)學(xué)表達(dá)式為示意圖y=a(0)*x(n)+a(1)*0+a(2)*x(n-1)+a(n-1)*0+a(0)*x(0)=a(0)*(x(n)+x(0)+a(2)*(x(n-1)+x(1)其FPGA實現(xiàn)的邏輯框圖如下I1ra::-口rra:2w:i:rIrac:-3scJf1rac:-2rsi:-5:I|也1cc-rO.一卜出Cf:a=
5、aiI:_商:dr|?::|I_kH玄Ih,./.I圖4DUCRR其中使用了4個乘法器和四個RA制這些乘法器和ROM。參考代碼如下/W_:出1疔/_k/Date/Author/Company/Description:/將地址/到最后的結(jié)果/C濾波器實現(xiàn)邏輯圖戈及一個ROM來存數(shù)據(jù)。$RC_CTR_宀:口LI可山汴n.tm:R_6144模塊控:SatJul卩110:5卜512007rc_cr_ti+:duanchenghong_”ttdI|15:IIIIi1iTTil|ZZ:|:zteRRC濾波器用了4個RAM和4個乘法器完成IQ兩路的濾波功能,I,Q的處理方法完全相同。數(shù)據(jù)同時寫入4個RAM中
6、,但讀的地址不同,由于RRC濾波器的系數(shù)是對稱的所以讀RAM的地址也是對稱的,陀型+注對稱的RAM讀出數(shù)相加再和RRC濾波器系數(shù)相成再累加就可以得/modulerrc_ctr_6144(waddr,raddr0,raddr1,raddr2,raddr3,clk,reset,data_en,dat0_out,dat1_out,dat2_out,dat3_out,coef,raddr_coef,ih,il,qh,ql,coef_h,coef_l,mih,mil,mqh,mql,idat,qdat,rrc_en);output5:0waddr;reg5:0waddr;output5:0raddr0;
7、wire5:0raddr0;output5:0raddr1;wire5:0raddr1;output5:0raddr2;wire5:0raddr2;output5:0raddr3;wire5:0raddr3;inputclk;wireclk;inputreset;wirereset;inputdata_en;wiredata_en;input31:0dat0_out;wire31:0dat0_out;input31:0dat1_out;wire31:0dat1_out;input31:0dat2_out;wire31:0dat2_out;input31:0dat3_out;wire31:0da
8、t3_out;input31:0coef;wire31:0coef;output3:0raddr_coef;wire3:0raddr_coef;output16:0ih;reg16:0ih;output16:0il;reg16:0il;output16:0qh;reg16:0qh;output16:0ql;reg16:0ql;output15:0coef_h;wire15:0coef_h;output15:0coef_l;wire15:0coef_l;input32:0mih;wire32:0mih;input32:0mil;wire32:0mil;input32:0mqh;wire32:0m
9、qh;input32:0mql;wire32:0mql;output15:0idat;reg15:0idat;output15:0qdat;reg15:0qdat;outputrrc_en;regrrc_en;assigncoef_h=coef31:16;assigncoef_l=coef15:0;reg3:0cnt;always(posedgeclkornegedgereset)if(reset)waddr=0;elseif(data_en)waddr=waddr+1b1;always(posedgeclkornegedgereset)if(reset)cnt=0;elseif(data_e
10、n)cnt=0;elsecnt=cnt+1b1;assignraddr_coef=cnt3?cnt-3:cnt-1b1;/系數(shù)的地址assignraddr0=cnt3?waddr-23+cnt2:0:waddr-23+cnt2:0-1;assignraddr1=cnt3?waddr-23+cnt2:0+6:waddr-23+cnt2:0+6-1;assignraddr2=cnt3?waddr-cnt2:0-1:waddr-cnt2:0-1;assignraddr3=cnt3?waddr-cnt2:0-6-1:waddr-cnt2:0-6-1;/4個RAM的讀地址always(posedgecl
11、kornegedgereset)if(reset)ih=0;elseih=dat0_out31,dat0_out31:16+dat2_out31,dat2_out31:16;always(posedgeclkornegedgereset)if(reset)il=0;elseil=dat1_out31,dat1_out31:16+dat3_out31,dat3_out31:16;always(posedgeclkornegedgereset)if(reset)qh=0;elseqh=dat0_out15,dat0_out15:0+dat2_out15,dat2_out15:0;always(po
12、sedgeclkornegedgereset)if(reset)ql=0;elseql=dat1_out15,dat1_out15:0+dat3_out15,dat3_out15:0;/為防止相加溢出,補一位wire35:0ex_mih,ex_mil,ex_mqh,ex_mql;assignex_mih=mih32?3b111,mih:3b000,mih;assignex_mil=mil32?3b111,mil:3b000,mil;assignex_mqh=mqh32?3b111,mqh:3b000,mqh;assignex_mql=mql32?3b111,mql:3b000,mql;/為防止
13、累加溢出,補3位reg35:0sum_ih,sum_il,sum_qh,sum_ql;always(posedgeclkornegedgereset)if(reset)sum_ih=0;elseif(cnt2:0=3b001)sum_ih=0;elsesum_ih=sum_ih+ex_mih;always(posedgeclkornegedgereset)if(reset)sum_il=0;elseif(cnt2:0=3b001)sum_il=0;elsesum_il=sum_il+ex_mil;always(posedgeclkornegedgereset)if(reset)sum_qh=0
14、;elseif(cnt2:0=3b001)sum_qh=0;elsesum_qh=sum_qh+ex_mqh;always(posedgeclkornegedgereset)if(reset)sum_ql=0;elseif(cnt2:0=3b001)sum_ql=0;elsesum_ql=sum_ql+ex_mql;always(posedgeclkornegedgereset)if(reset)rrc_en=0;elseif(cnt2:0=3b000)rrc_en=1b1;elserrc_en=0;/產(chǎn)生RRC濾波器輸出數(shù)據(jù)使能信號always(posedgeclkornegedgerese
15、t)if(reset)idat=0;elseif(cnt2:0=3b000)idat13)+1b1)1;always(posedgeclkornegedgereset)if(reset)qdat=0;elseif(cnt2:0=3b000)qdat13)+1b1)1;/產(chǎn)生I,Q兩路數(shù)據(jù)并對末位進(jìn)行四舍五入endmodule如果是半帶濾波器,考慮到內(nèi)插在奇數(shù)拍時有y=a(0)*x(n)+0*0+a(2)*x(n-1)+0*0+a(0)*x(0)=a(0)*(x(n)+x(0)+a(2)*(x(n-1)+x(1)而在偶數(shù)拍有y=a(0)*0+0*x(n-1)+a(2)*0+a(m)x(m)+0.
16、+0;及只有中間項有數(shù),其他各項不是系數(shù)為0,就是數(shù)據(jù)為0,且中間項的系數(shù)一般是0.5,利用這一點可以減少FPGA的資源。HB濾波器的設(shè)計和RRC十分相似,如下圖血1|:匚.:|-t|ic:i_-Lczlcerl-fftilI:I:壬I1bELnii|1已匚SLnii:|1E:CS.:.:r1:=:ef:15:i|I1ffiC|nui;ami呼片rt-Jl3=:15md-ttr5C5c;ingip?iqi_IKU:77:i/:KsJldim:ir3旳(Ll1:h-r(cbti_a(jjlaM5:|ih:lirm:4i:ijElJSF:f11jalJjj:-在CI3設(shè)計圖6cic濾波器設(shè)計框圖主
17、意的是d1,c1k模塊J,它只是為了調(diào)整時序。對時序要求的滿足:代碼設(shè)計后除了要保證仿C濾波器中需要注ise:1可以,”“確同時也要保證電路的時吋能夠滿足設(shè)計的要求。從圖;看到信號的頻率隨著每一次內(nèi)插而變高二那各個濾波器的工作時鐘是不是也要逐步提高呢?實際上比較好的方法是時鐘始終工作在最高頻率pi.44m上而用使能個使能,而當(dāng)速率是7.68M時信號來標(biāo)識數(shù)據(jù)。當(dāng)數(shù)據(jù)的速率是3.84M就每8個61.44M時鐘產(chǎn)生一個使能。這樣整個DUC電路只有一個時鐘,便于時鐘的時序分析。如果我們使用Xilinx的ISE進(jìn)行編譯,建議綜合工具使用synplifyPro而不要使用ISE本身的XST。選用synpl
18、ifyPro的方法如圖7嚴(yán)FKA囹込|上二山匸H曲計9阿曲乎E:iir:X時就每16個61.44M時鐘產(chǎn)生U=Lc?Htf2詁囲唱托刊*|=VSjnr:esfor:Sjr.tbeiiI_ijltr=o:=tL:ifflr:i_ddE礙覽-*zll】11_EW_::Z:4dip11_Mr址J:*i陽:+J?寫hHp.加iscy11O(ZAEpOCfl?7Lt7:rs:inirfcfDi:sE:Y:iiwhHoc.1tsst=iesFifi7|:pn_iD:=r:=ice-ou_LDi=r:=:e_test:?(7|ilJ;ccne!r_fr=ie-cl_r=cair_frsfeI.L_-7|d_
19、i)i_Loi=ri=:e_)p:L-ul_jr:_i:j勺匚少l西上耳-王-觸也勺匚少血遼;-沖::-正辰勺匚少Id上上口-r:MJ王-觸也勺匚少血遼;-沖:-正辰勺匚少Id上上-r:MJ王-觸也習(xí)匚少辰上二-沖::-正辰UEProcessProperties昨17Uptiar.;HL時話Deiic)fticc.:TrijEr+ylac時二:匚m.tFileJ:rs弐orjfC-SgL:f4riwFroc=ss=sPrjct=se=:二洋火TifSoiree-ghevD郎igr.血147IesleilriilitEs壬眷1=ht:曲iiiintsQ聲沖加:甘測iE兀諭:沁E:圖7p:在ISE
20、中選用在-ISE的集成環(huán)境中有兩個地和iSE的UCF約束文件。sdc鞏述厲叱EEl:_synplifyPro方可以對時鐘進(jìn)彳ConstiaintFileOptionshEFiletozrojsc:旦亍約束,分別是synplifyPro的sdc約束文件文件主要通過改變代碼生成的電路來提高速度,而UCF通過布局布線來提高速度,另外用面積約束的方法把相關(guān)模塊放在一起減少布線延時也可以提高速度。點擊synplify界面中紅線圈定的圖標(biāo)可以編輯時鐘約束文件。圖8synplify中加約束文件同樣在ISE中也要加約束文件rocesses:CreeBewSoui-ce-ViewIlesignSuirim:ry
21、DesietliesewSj-mtheeleEepurt_FrocessestE:E:l=lHds:izi0口0口口Stauted:LaurichiirigDesigriSi-uwiauypp-圖9在ISE中加約束文件在ISE中可以添加時序約束和面積約束來提高時序。添加約束的時候可以加入一些過約束,如果你希望時鐘可以跑到1Ons,可以將約束設(shè)為89ns。但無論如何良好的代碼設(shè)計是電路時序的根本保證。如果時序不能滿足,ISE的時序分析工具可以幫助你指出最長延時的路徑,點擊如圖10所示分析關(guān)鍵可以看到關(guān)鍵路徑。4&RoutePlaceSlEontEReportdockRegi.cinRejiort
22、AsT-TLCpLi-ijnonEDelayJieportFad.EeportG口ideReeuItwReportFilFFRResuitsU+ili+iezmteFustFlaceftRouteStaticTimingeFost-IlacebEoutmtaticTiniincFrimetime恥tlietVleEiitFlacedDeeietl(Floorpl:=ltitlerView/EiitRoutedDesign(FFGAEditor)圖10ISE時序分析工具ISE的時序分析工具清楚的告訴你那條路徑時序有問題,如圖11所示NF:|llesiigesiriir.g工?trmintmrS_j.cu_5:n_clk=7ERICDTS_:nc_lecoverO_:11=TS_ix_fp|a_6ln4.4_zli=PERIO巧
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 甲苯精餾塔課程設(shè)計結(jié)論
- 網(wǎng)絡(luò)營銷微信課程設(shè)計
- 醫(yī)院設(shè)備管理制度
- 波浪能發(fā)電裝置課程設(shè)計
- 舞蹈機(jī)構(gòu)古典舞課程設(shè)計
- 用天正暖通進(jìn)行課程設(shè)計
- 會計師工作總結(jié)細(xì)心核算確保賬目準(zhǔn)確無誤
- 數(shù)字時代品牌營銷的新趨勢計劃
- 日常教學(xué)反思與總結(jié)計劃
- 裝修合同簡易版
- 浙江工業(yè)大學(xué)之江學(xué)院《建筑結(jié)構(gòu)選型》2023-2024學(xué)年第一學(xué)期期末試卷
- 倉庫管理培訓(xùn)課件
- 2024年居間服務(wù)合同:律師事務(wù)所合作與業(yè)務(wù)推廣
- 大型活動音響設(shè)備保養(yǎng)方案
- 安全生產(chǎn)專(兼)職管理人員職責(zé)
- 公檢法聯(lián)席會議制度
- 成都大學(xué)《Python數(shù)據(jù)分析》2022-2023學(xué)年期末試卷
- 保險理賠崗位招聘面試題與參考回答(某大型央企)2024年
- 上海市市轄區(qū)(2024年-2025年小學(xué)五年級語文)部編版期末考試(上學(xué)期)試卷及答案
- 第10課《我們不亂扔》(教學(xué)設(shè)計)-部編版道德與法治二年級上冊
- 期末試卷(試題)-2024-2025學(xué)年五年級上冊數(shù)學(xué)人教版
評論
0/150
提交評論