基于SOPC的DDS信號(hào)發(fā)生器設(shè)計(jì)

相關(guān)專題: 芯片

摘 要:直接數(shù)字頻率合成技術(shù)是一種新型的信號(hào)產(chǎn)生方法,是現(xiàn)代信號(hào)源的發(fā)展方向。該系統(tǒng)由FPGA 控制模塊、鍵盤、LED 顯示組成,結(jié)合DDS 的結(jié)構(gòu)和原理,采用SOPC 和DDS 技術(shù),設(shè)計(jì)出具有頻率設(shè)置功能的多波形信號(hào)發(fā)生器。以Altera 公司的CycloneⅡ的核心器件EP2C35 為例,NIOS ⅡCPU 通過(guò)讀取按鍵的值,實(shí)現(xiàn)任意步進(jìn)、不同波形的輸出顯示功能。

0 引 言

直接數(shù)字頻率合成( Dir ect Dig ital Frequency Synthesis,DDS) 是一種新型的頻率合成技術(shù),它把信號(hào)發(fā)生器的頻率穩(wěn)定度、準(zhǔn)確度提高到與基準(zhǔn)頻率相同的水平,并且可以在很寬的頻率范圍內(nèi)進(jìn)行精細(xì)的頻率調(diào)節(jié)。在現(xiàn)代通信領(lǐng)域中,DDS 的應(yīng)用極其廣泛。實(shí)現(xiàn)DDS 常用的方法是采用專用的DDS 芯片,控制部分采用獨(dú)立的MCU ,這樣設(shè)計(jì)出來(lái)的系統(tǒng)的集成度和擴(kuò)展性不盡人意。隨著大規(guī),F(xiàn)場(chǎng)可編程門陣列的推出,SOPC 的不斷發(fā)展,設(shè)計(jì)人員可以在FPGA 的嵌入式軟核處理器上設(shè)計(jì)各種系統(tǒng),滿足用戶需求。本文基于SOPC 技術(shù)設(shè)計(jì)直接數(shù)字頻率合成器,選用A ltera公司的新一代FPGA( Cyclone Ⅱ) 為核心,利用FPGA的邏輯單元實(shí)現(xiàn)相位累加等數(shù)字邏輯功能,在ROM 中分別放入正弦表、方波表、三角波表、鋸齒波表,用軟核CPU 做控制,實(shí)現(xiàn)頻率、相位、波形選擇等。這樣可以大大減小處理器外圍擴(kuò)展電路數(shù)目,還提高了系統(tǒng)的穩(wěn)定性和抗干擾能力,節(jié)省了內(nèi)部資源。

1 系統(tǒng)方案設(shè)計(jì)

系統(tǒng)采用SOPC 設(shè)計(jì)方案。整體系統(tǒng)框圖如圖1所示,它由頻率預(yù)置電路、波形選擇、波形頻率控制、累加器、存儲(chǔ)波形數(shù)據(jù)的存儲(chǔ)器和D/ A 轉(zhuǎn)換電路、濾波電路組成。累加器模塊由10 位加法器與10 位寄存器級(jí)聯(lián)而成。波形存儲(chǔ)器中放入正弦波、方波、三角波、鋸齒波的數(shù)據(jù)。

圖1 整體系統(tǒng)框圖

1. 1 DDS 基本工作原理

DDS 的基本原理是利用采樣定理,通過(guò)查表法產(chǎn)生波形。一個(gè)完整DDS 結(jié)構(gòu)圖如圖2 所示。

圖2 DDS 結(jié)構(gòu)圖

相位累加器在每一個(gè)時(shí)鐘上升沿與頻率控制字K累加一次,當(dāng)累加器計(jì)數(shù)大于2N 時(shí),相位累加器相當(dāng)于進(jìn)行一次取模運(yùn)算。在每一個(gè)時(shí)鐘周期內(nèi),根據(jù)送給ROM 的地址,取出ROM 中與該地址相對(duì)應(yīng)的波形的數(shù)據(jù),讀取出ROM 中的數(shù)據(jù)后通過(guò)D/ A 轉(zhuǎn)換器,將數(shù)字量轉(zhuǎn)換成模擬量,通過(guò)低通濾波電路,可輸出一個(gè)平滑的波形。

假設(shè)頻率為f c 的載波,它的時(shí)域表達(dá)式為:

其相位表達(dá)式為:

輸出頻率f 0 與時(shí)鐘頻率f clk之間的關(guān)系滿足:

當(dāng)K = 1 時(shí),DDS 有最小頻率輸出,因此DDS 的步長(zhǎng)為f clk / 2N ,最大輸出頻率為f clk / 2。在本設(shè)計(jì)中,將N 設(shè)定為10 位,M 設(shè)定為12 位,相位累加器在時(shí)鐘的控制下,以步長(zhǎng)K 進(jìn)行累加,輸出N 位二進(jìn)制碼,并以其作為波形ROM 的地址,對(duì)波形存儲(chǔ)器ROM 尋址,波形存儲(chǔ)器ROM 輸出的數(shù)據(jù)經(jīng)過(guò)D/ A 轉(zhuǎn)換成階梯波后,經(jīng)過(guò)低通濾波器平滑后,便得到合成后的波形了,合成后的波形形狀取決于波形選取和ROM 中的數(shù)據(jù)。

1. 2 D/ A 轉(zhuǎn)換器

從DDS 核輸出的是一個(gè)數(shù)字信號(hào),需要將數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào),才能便于觀察。DAC 有電壓和電流輸出兩種,其輸出的信號(hào)并不能真正連續(xù)可變,而是以其絕對(duì)分辨率為最小單位,所以它的輸出實(shí)際上是一個(gè)階梯模擬信號(hào),所以需要將D/ A 輸出的信號(hào)通過(guò)低通濾波器平滑后得到純凈的模擬信號(hào)。在該設(shè)計(jì)中用到型號(hào)為AD9742 的D/ A 轉(zhuǎn)換器,AD9742 是具有12 位、低功耗、轉(zhuǎn)換速度可達(dá)到100 Mb/ s 的D/ A 轉(zhuǎn)換器。

1. 3 基于SOPC 的硬件架構(gòu)

系統(tǒng)開(kāi)發(fā)包括硬件部分和軟件部分,而硬件部分是由SOPC 開(kāi)發(fā)工具搭建而成。SOPC Builder 生成NIOS 嵌入式處理器,NIOS 嵌入式處理器開(kāi)發(fā)工具允許用戶配置多個(gè)CPU ,在標(biāo)準(zhǔn)庫(kù)中添加外圍電路,也可以由用戶自定義外設(shè),綜合處理自定義系統(tǒng),這樣使設(shè)計(jì)變得更加靈活。

打開(kāi)SOPC Builder 后分別添加CPU,PIO 輸入( 10 個(gè)按鍵用作頻率字的輸入、1 個(gè)按鍵用作確認(rèn)、4 個(gè)按鍵用作波形的選擇) ,存儲(chǔ)器( FLASH,SRAM 和SDRAM) ,PIO 輸出( 10 位作為ROM 的地址、2 位作為ROM 塊的選擇、7 位為L(zhǎng)ED 段碼、1 位為L(zhǎng)ED 的選通端) 和定時(shí)器。所有組件添加完后的硬件架構(gòu)圖如圖3 所示。

圖3 SOPC 硬件架構(gòu)圖

SOPC Builder 生成之后,在Quartus 軟件中可以添加生成之后的CPU 模塊,而DDS 模塊是用VHDL 語(yǔ)言編寫而成,DDS 模塊圖如圖4 所示。其中的ROM 大小為12 1 024,共設(shè)置4 塊ROM 分別存儲(chǔ)正弦波、方波、三角波、鋸齒波。波形數(shù)據(jù)是由Mat lab軟件計(jì)算出來(lái)的,并將數(shù)據(jù)以. mif 文件格式存儲(chǔ)。累加器的輸出為波形存儲(chǔ)器的地址,進(jìn)行波形的相位 幅值轉(zhuǎn)換后,作為輸出的波形的幅值。10 位的尋址ROM 相當(dāng)于將一個(gè)周期的信號(hào)進(jìn)行離散化,形成具有1 024 個(gè)樣值的序列。累加器產(chǎn)生的地址通過(guò)波形的地址分配讀取不同存儲(chǔ)器中的數(shù)據(jù),然后將讀出來(lái)的數(shù)據(jù)經(jīng)過(guò)D/ A 轉(zhuǎn)換器,轉(zhuǎn)換成模擬信號(hào)輸出。

2 軟件設(shè)計(jì)

NIOS 完整的開(kāi)發(fā)環(huán)境是NIOS 處理器與用戶的接口界面。使用NIOS IDE 可以完成所有的軟件開(kāi)發(fā)任務(wù),包括程序的編輯,編譯和調(diào)試。硬件提取層( HAL) 支持通用I/ O 器件,可以通過(guò)編寫標(biāo)準(zhǔn)C 程序訪問(wèn)硬件,HA L 減少了對(duì)硬件寄存器的訪問(wèn),直接與外圍器件進(jìn)行通信或控制。不同的外圍硬件需要不同程度的HAL 的支持,需要運(yùn)行HAL 的軟件驅(qū)動(dòng)器。DDS 系統(tǒng)控制在NIOS IDE 環(huán)境下用標(biāo)準(zhǔn)C 語(yǔ)言實(shí)現(xiàn),通過(guò)編寫代碼、編譯、鏈接、調(diào)試、下載幾個(gè)步驟完成整個(gè)設(shè)計(jì)。

打開(kāi)IDE 開(kāi)發(fā)環(huán)境后,第一步需要做的就是新建一個(gè)工程,將SOPC Builder 生成的. ptf 添加之后,系統(tǒng)根據(jù)該硬件的地址分配情況自動(dòng)生成相應(yīng)的頭文件,該頭文件定義了各個(gè)組件的基地址。當(dāng)SOPC 系統(tǒng)發(fā)生變化,IDE 將在用戶編譯和運(yùn)行應(yīng)用程序時(shí)重新對(duì)HAL 進(jìn)行編譯。整個(gè)軟件編寫的流程圖如圖5 所示。

圖5 軟件流程圖

來(lái)源:電源技術(shù)應(yīng)用


微信掃描分享本文到朋友圈
掃碼關(guān)注5G通信官方公眾號(hào),免費(fèi)領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費(fèi)領(lǐng)取《中國(guó)移動(dòng):5G網(wǎng)絡(luò)AI應(yīng)用典型場(chǎng)景技術(shù)解決方案白皮書(shū)
  • 2、回復(fù)“5G6G”免費(fèi)領(lǐng)取《5G_6G毫米波測(cè)試技術(shù)白皮書(shū)-2022_03-21
  • 3、回復(fù)“YD6G”免費(fèi)領(lǐng)取《中國(guó)移動(dòng):6G至簡(jiǎn)無(wú)線接入網(wǎng)白皮書(shū)
  • 4、回復(fù)“LTBPS”免費(fèi)領(lǐng)取《《中國(guó)聯(lián)通5G終端白皮書(shū)》
  • 5、回復(fù)“ZGDX”免費(fèi)領(lǐng)取《中國(guó)電信5GNTN技術(shù)白皮書(shū)
  • 6、回復(fù)“TXSB”免費(fèi)領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費(fèi)領(lǐng)取《中國(guó)移動(dòng)算力并網(wǎng)白皮書(shū)
  • 8、回復(fù)“5GX3”免費(fèi)領(lǐng)取《R1623501-g605G的系統(tǒng)架構(gòu)1
  • 本周熱點(diǎn)本月熱點(diǎn)

     

      最熱通信招聘

    業(yè)界最新資訊


      最新招聘信息