基于Simulink的數(shù)控振蕩器性能仿真研究
提高LUTs輸出分辨率對正弦波樣點的幅度值量化影響小,但需要更多的LUTs存儲器。如LUTs輸出分辨率增加1位,由L位增加L+1位,LUTs所需的存儲容量擴大2n。
可見,采用傳統(tǒng)的設計方法要達到無相位截斷,則需要LUT的字長非常長,占用資源非常大,導致NCOs的成本很高,而這在實際實現(xiàn)過程中是不可行的。
2.3相位加抖提高SFDR
通過以上的仿真研究可看出,雖然可以通過增加整數(shù)位和提高LUTs輸出分辨率的方法來提高SFDR,但因它們要占用大量的資源,因而不是經(jīng)濟有效的方法。為有效解決雜波問題,必須考慮其他有效的方法。目前的主要技術手段有:
幅度加抖(Amplitude Dithering):在LUT的輸出中加入低水平的噪聲,以打散原有幅度值量化的噪聲結構。
相位加抖(Phase Dithering):在累加器的輸出中加入低水平的噪聲,以打散原有相位截斷的噪聲結構。
帶通濾波(Bandpass Filtering):在振蕩器輸出端加濾波器濾出毛刺頻率。但該方法很難濾出靠近中心頻率的雜波。
以上的仿真已經(jīng)證明,相位截斷對SFDR的影響量是最大的,是提高SFDR的首選方法。
相位加抖的數(shù)學模型如圖5所示。在LUTs地址字截斷之前,在累加器的輸出中加入低水平的偽隨機噪聲(A Low-level of Pseudo Random Noise),其中抖動的位數(shù)d是可變的。
抖動(Dither)可以通過線性反饋移位寄存器(Linear Feedback Shift Register,LFSR)來實現(xiàn),見圖6。LFSR有帶M個抽頭的移位寄存器,抽頭反饋通常由或門構成,以產(chǎn)生一個周期為2M-1的序列。因此,長偽隨機噪聲序列(Long Pseudo Random Noise Sequences)可以用很少的硬件資源實現(xiàn)。例如,一個由12個元件構成的LFSR能夠生成周期為4 095的PN序列。LFSR可以由M個D觸發(fā)器和很少的組合器件構成。
來自某位的抽頭,可以組合為一個矢量生成該位的抖動。實際實現(xiàn)時,可以采用較長的移位寄存器。移位寄存器越長,則輸出的抖動越接近隨機的性質(zhì)。
下面分析相位加抖數(shù)據(jù)位數(shù)d對SFDR的影響。圖7~圖9分別為d=b-3,b+3,b三種情況的仿真波形,其中b為累加器控制字小數(shù)部分的位數(shù)。
加抖位數(shù)d=6-3時,僅對整數(shù)位產(chǎn)生0~1/8的影響。此時將SFDR提高了1 dB??梢姡黾舆^少位數(shù)的抖動,僅對相位的截斷有很小的影響,對改變雜波極為有限。
加抖位數(shù)d=b+3時,可以對整數(shù)位產(chǎn)生0~8的影響。此時將SFDR提高了9 dB。但同時可以看到,由于增加抖動的位數(shù)過多,雖然消除了雜波,但同時也提高了整個頻譜的噪聲電平。
加抖位數(shù)d=b時,可以對整個整數(shù)位產(chǎn)生0~1影響。此時將SFDR提高到106 dB。同時可以看到,由于增加抖動的位數(shù)恰當,既消除了雜波,又提高了整個頻譜的噪聲電平。
在用FPGA實現(xiàn)NCOs時,通過相位加噪可以提高整個輸出頻率的SFDR性能。但從圖3,圖6比較可以看出,在整個電路中串入了加法器,且關鍵路徑包含了兩個部分Dithering和NCOs的加法器,因而限制了整個設計的最大時鐘頻率。
3結 語
NCOs在數(shù)字通訊中起著非常重要的作用,在FPGA實現(xiàn)時,它可以由一個累加器和一個輸出頻率由步長定義的正弦波查找表的數(shù)字硬件構成。SFDR是表明合成正弦波譜純度性能的參數(shù)。仿真證明,在NCOs累加器輸出的相位中加入抖動,以提高SFDR性能,是一種簡單有效、低成本的方法。
評論