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