基于DDS IP核及Nios II的可重構信號源設計
SOPC(System on a Programmable Chip,片上可編程系統)是Altera公司提出的一種靈活、高效的SOC解決方案。它將處理器、存儲器、I/O接口、LVDS、CDR等系統設計需要的功能模塊集成到一個(gè)可編程邏輯器件上,構建一個(gè)可編程的片上系統。它具有靈活的設計方式,軟硬件可裁減、可擴充、可升級,并具備軟硬件在系統可編程的功能。SOPC的核心器件FPGA已經(jīng)發(fā)展成一種實(shí)用技術(shù),讓系統設計者把開(kāi)發(fā)新產(chǎn)品的時(shí)間和風(fēng)險降到最小。最重要的是,具有現場(chǎng)可編程性的FPGA延長(cháng)了產(chǎn)品在市場(chǎng)的存在時(shí)間,從而減小了被新一代同類(lèi)產(chǎn)品淘汰的威脅。本文以全數字頻率合成技術(shù)——直接數字頻率合成技術(shù)(DDS)為理論依據,利用先進(jìn)的片上可編程技術(shù)在一塊FPGA芯片上實(shí)現了DDS IP核功能,并將該DDS IP核與Nios II處理器核以及其它外設封裝到一起,做成一個(gè)片上系統,大大簡(jiǎn)化了電路的設計難度。
本文引用地址:http://dyxdggzs.com/article/189756.htm1 DDS的基本原理
DDS(直接數字頻率合成)是把一系列數字形式的信號通過(guò)DAC轉換成模擬量形式的信號的合成技術(shù)。圖1是DDS的原理框圖。
圖中參考時(shí)鐘由一個(gè)高穩定的晶體振蕩器產(chǎn)生,來(lái)同步整個(gè)頻率合成器的各個(gè)組成部分。相位累加器包含一個(gè)加法器和一個(gè)相位寄存器,每來(lái)一個(gè)時(shí)鐘脈沖,加法器就將頻率控制字與相位寄存器中的數據相加。相位寄存器可以將加法器在上一個(gè)時(shí)鐘作用后產(chǎn)生的新相位數據反饋到加法器的輸入端,使加法器在下一個(gè)時(shí)鐘的作用下繼續將相位數據與頻率控制字相加。這樣,相位累加器在參考時(shí)鐘的作用下進(jìn)行線(xiàn)性相位累加。當相位累加器達到上限時(shí),就會(huì )產(chǎn)生一次溢出,完成一個(gè)周期性的動(dòng)作,這個(gè)周期就是合成信號的一個(gè)周期,累加器的溢出頻率也就是DDS的合成信號頻率。相位控制字用來(lái)設定相位累加器初始時(shí)刻的相位值,相位累加器運行過(guò)程中并不參與加法運算。
在參考時(shí)鐘的控制下,相位累加器受頻率控制字控制輸出相位數據,用相位累加器輸出的相位數據作為相位/振幅變轉換電路的地址對其進(jìn)行查找。相位/振幅轉換電路將相位累加器的相位信息映射成數字振幅信息,將數字振幅數據再經(jīng)過(guò)D/A轉換器得到相應的階梯波,最后經(jīng)低通濾波器對階梯波進(jìn)行平滑處理,即可得到由頻率控制字決定的連續變化的輸出波形。
2 DDS IP核的設計
根據DDS的基本理論,將DDS IP核分為相位累加模塊、DDS控制模塊、波形選擇模塊、波形LPM_ROM模塊。
2.1 相位累加器模塊的設計
相位累加器是DDS IP核設計的關(guān)鍵,它決定著(zhù)頻率的范圍和分辨率,本設計采用的32位的二進(jìn)制累加器,取累加器的高十位作為查表(相幅轉換電路)的地址值。為提高系統的速率,在累加器的設計中采用了7級流水線(xiàn)技術(shù)。其中采用Verilog HDL描述的第一級流水線(xiàn)實(shí)現的關(guān)鍵代碼如下:
類(lèi)似,可完成其余流水線(xiàn)的設計。
2.2 DDS控制模塊設計
為將設計的DDS IP能夠集成到SOPC系統中,本設計在DDS IP的控制模塊定義了兩個(gè)32位的寄存器,如圖2所示。一個(gè)是頻率控制字寄存器,用來(lái)保存上位機軟件發(fā)來(lái)的頻率控制字;另一個(gè)寄存器用來(lái)保存相位控制字和波形選擇位,其中低2位D1、D0用于波形選擇,D2到D11用于保存相位控制字,其余高位保留未用。
評論