基于NCO IP core的Chirp函數(shù)實(shí)現(xiàn)設(shè)計(jì)
數(shù)字壓控振蕩器知識(shí)產(chǎn)權(quán)核(Numerically Con-trolled Oscillators Intellectual Property Core,NCO IPCore),通過多種算法(相位累加或者CORDIC算法,在此不一一贅述),實(shí)現(xiàn)了一個(gè)離散幅度和時(shí)間的正弦波信號(hào)輸出。輸入控制字和輸出頻率之間滿足以下方程:
s(nT)=Asin[2π(f0+fFM)nT+ψPM+ψDITH)] (5)
式中:T為該模塊的工作時(shí)鐘;f0是由輸入頻率控制字ψINC決定的初始頻率;fFM是由調(diào)制頻率控制字ψFM決定的調(diào)制頻率;ψPM為該輸出正弦波的調(diào)制相位,ψPM=P/2Pwidth,由輸入控制字P的比特位數(shù)(Pwidth)決定了它的精度;ψDITH為模塊內(nèi)部自身的不穩(wěn)定而引起的相位雜散(噪聲);幅值量A=2N-1,其中N為幅值精度取值在4~32之間。
該設(shè)計(jì)中僅采用通過改變頻率控制字ψINC,以實(shí)現(xiàn)改變頻率輸出的目的,為此式(5)可以簡化為:
式中,f0由給定的頻率控制字ψINC決定,滿足如下方程:
式中:M為累加器精度;fclk為該模塊的輸入時(shí)鐘頻率,單位為Hz。例如:在fclk=100 MHz的情況下,如果需要f0=10 MHz的輸出,ψINC的計(jì)算如下:
通過Altera公司的FPGA編程軟件QuartusⅡ提供的MegaWizard Plug-In Manager功能,在NCO IPCore參數(shù)配置中自動(dòng)對(duì)ψINC的計(jì)算,很容易得出在輸入頻率的條件下所需輸出頻率的ψINC(累加器精度為32 b的情況下)如圖6所示。
本文引用地址:http://butianyuan.cn/article/188505.htm
值得注意的是:在MegaWizard Plug-In Manage中,ψINC的精度只保留到了百位。
評(píng)論