新聞中心

        EEPW首頁 > 手機與無線通信 > 基于軟核Nios的寬譜正弦信號發生器設計

        基于軟核Nios的寬譜正弦信號發生器設計

        ——
        作者:指導教師:邵舒淵 參賽學生:李金晶,蔡雪君,劉杰 時間:2006-04-21 來源:電子產品世界 收藏

        摘要:本設計運用了基于Nios II嵌入式處理器的SOPC技術。系統以ALTERA公司的Cyclone 系列FPGA為數字平臺,將微處理器、總線、數字頻率合成器、存儲器和I/O接口等硬件設備集中在一片FPGA上,利用直接數字頻率合成(DDFS)技術、數字調制技術實現所要求波形的產生,用FPGA中的ROM 儲存DDS 所需的波形表,充分利用片上資源,提高了系統的精確度、穩定性和抗干擾性能。使用新的數字信號處理(DSP)技術,通過在Nios中軟件編程解決不同的調制方式的實現和選擇。系統頻率實現1Hz~20MHz可調,步進達到了1Hz;完成了調幅、調頻、二進制PSK、二進制ASK、二進制FSK調制和掃頻輸出的功能。

        關鍵詞:片上可編程系統;Nios II ;數字頻率合成;數字調制技術

        A Wide-band Sine Wave Signal Generator Based on Nios

        This designation uses the SOPC technology based on Embedded Processor of Nios II. The system, using the Cyclone series FPGA as a digital bench, connects the MPU, BUS, DDFS CELL, MEMORY and I/O interface and makes them all into a FPGA chip. It uses the technologies of DDFS, Digital Modulate, and stores the datum of the Sine wave into the On Chip Memory in order to generate the required wave. With full using of the chip’s resources, the precision, stabilization and influence resisting were significantly improved. Using the new technology of DSP, it can carry out and choose the modulation of different mode by software .The programmable frequency synthesis is also carried out. The frequency of the output wave can range from 1Hz to 20MHz,and the frequency step change can reduced to 1Hz.We also achieve the functions all in the development section.eg:AM,FM,2PSK,2ASK, the Sine wave of 1KHz and the binary serials of 10Kbps.Fother,we also achieve the function of 2FSK and frequency sweep.

         

        Keyword:  SOPC ;Nios II;DDFS;digital modulate technology

         

        SOPC(System on a Programmable Chip片上可編程系統)是Altera公司提出來的一種靈活、高效的SOC解決方案。它將一個軟核放入FPGA,占用片上資源少,成本很低;卻擴展了目前世界上最流行的軟核嵌入式處理器的性能。可將處理器、存儲器、I/O口等系統設計需要的功能模塊集成到一個FPGA器件上,構建成一個可編程的片上系統,具有靈活的設計方式,可裁減、可擴充、可升級,并具備軟硬件在系統可編程的功能。在可編程器件內,還具有小容量高速RAM資源和足夠的可編程邏輯資源,用于實現其他的附加邏輯。

        正弦信號發生器以嵌入式處理器Nios II 為核心,將微處理器、總線、外設、數字頻率合成器、存儲器和I/O接口等硬件設備集中在一片FPGA上,創建一個可編程單芯片上系統,實現了一個軟件電開發平臺,并完成五大方面的功能:

        l        控制鍵盤和顯示器;

        l        根據輸入的頻率值,通過數據計算得到頻率控制字;

        l        實現數字頻率合成器;

        l        實現數字調制器;

        l        實現對數模轉換器的控制。

        這種設計方式使用數字信號處理器技術,通過軟件編程實現不同調制方式的選擇,充分利用了FPGA的資源,減少了CPU與外設的接口,在很大程度上提高了系統的速度、可靠性以及系統的成本。其中,片內正弦表ROM傳出的數據經DAC904完成數模轉換,由調制系統完成幅度控制,以及各種調制方式的實現,繼而經過低通濾波器進行濾波,再經過寬帶運算放大器,從而得到任意一種具有一定帶負載能力的所需波形。

        系統總框圖如下:

          

        1  系統總體框圖

        自定義邏輯包括數字頻率合成和數字調制IP核;數字調制部分包括正弦波產生模塊和調制控制模塊;其中調制控制又分為AM控制、FM控制、ASK控制、PSK控制模塊等。以下我們將分別論述其產生的原理。

        {{分頁}}

        1.各模塊實現原理

        1.1 正弦波產生模塊實現原理

        2 正弦波產生框圖

        相位累加器為32位累加器,輸出為0 ~ (232-1),作為正弦查詢表的地址輸入端。正弦表中存放一個周期的正弦波內的232個點的數據,輸出 為一正弦波,其頻率由“頻率控制字”進行調節,輸出頻率:

                                     (1-1)  

         最小頻率分辨率:                                        (2-2)

        其中 為相位累加器的位數,FTW為頻率步進控制字, 為時鐘頻率,輸出信號頻率主要取決于頻率控制字FTW。當FTW增大時, 可以不斷增加,綜合考慮Nyquist采樣定理,最高輸出頻率應小于 。根據實驗所得,實際工作頻率應小于 。

        的取值受D/A轉換速率的限制,由于數模轉換部分采用的是高速DAC904,其轉換速率約為160MHz。則在最高頻率20 MHz時,所產生的波形在一個周期內仍有8個點,經后級處理后效果很好,并無明顯失真。

                                         (1-3)

        所以可以實現1Hz步進,當輸出1Hz時,頻率控制字FTW=1/fmin=26.8435465,在Nios內部浮點運算所占資源太多,所以把浮點運算改為定點運算。則當輸出其他任意頻率 時Nios內部算法為:  

        1.2調制系統實現原理

         

        1.2.1 AM硬件實現原理

         

        圖 3    標準調幅產生硬件框圖

        調制波產生模塊中,在輸入時鐘頻率為256KHz條件下,循環計數器的為數為八,則累加器為數為八,即M=8,根據公式(1-1),當 =256KHz, FTW =1時, =1KHz,且正弦表中存放的是正弦波一個周期的內256個點的數據,即輸出調制波為頻率為1KHz的正弦波。設8位的幅度控制字大小為Am,則經幅值放大后生成的調制頻率表達式為:

           ( = )               (1-4)

        經直流疊加,且與載波信號相乘后,得出已調波為:

                                                         (1-5)

        變換表達式形式:

                        

        幅值放大部分可進行調制度 的調節,則可得到調制度可調,載波可變的調幅波。

         

        1.2.2 FM硬件實現原理

        4    調頻波產生硬件框圖

        頻率調制就是載波信號的瞬時頻率偏移隨調制信號線性變化。根據調頻波的表達式:  

                                                                   (1-6)

             

        瞬時頻率:                                                (1-7)          

        在幅頻變換IP核的參數設計算時有:

                         (1-8)

           令:

                                (1-9)

        為載頻頻率控制字, 為調制頻率頻率控制字, 由輸入載頻計算得出。當最大頻偏 為10K時。

                              (1-10)

        調頻波的瞬時頻率偏移與調制信號的幅度成線性關系。因為累加器對誤差有積累作用,所以為了同時達到精度與速度的要求,我們直接用其幅度去查它所對應的頻偏。由于幅度累加器為8位,且正負對稱。則最小的頻率控制字:

                                           (1-11)

        要實現5KHz最大頻偏時,只要對 進行二分頻即可。這樣,我們就實現了調頻功能。

        {{分頁}}

        1.2.3 ASK硬件實現原理

         

         

        5    二進制ASK硬件框圖

        設計中,二進制基帶序列信號為m序列由八位移位寄存器產生,由于m序列一周期內的碼元數大概相等(“1 ”比“0 ”只多一個),這個特征保證了在擴頻系統中,用m序列作為平衡調制實現擴頻是具有較高的載波抑制度,保證了在后續擴張其它功能的可能性。ASK信號由m序列和載波相乘實現,即移位寄存器輸出為一隨機1、0序列,當mResult(m序列輸出值)為1時,幅值選擇控制器輸出幅值為最大值,當mResult為0時,幅值選擇控制器輸出幅值為0。

        m序列是最長線性移位寄存器序列,它是由帶線性反饋的移位寄存器產生的周期最長的一種序列。一般來說,一個n級的反饋移存器可能產生的最長周期為: ,則8位的移位寄存器能產生的最長周期為127。

        能產生周期最長的線性移位寄存器的結構由其本原多項式決定,該本原多項式應滿足:

        (1)    是既約多項式,即不能再進行因式分解

        (2)    可除盡   ( )

        (3)    整除不盡   ( )

        我們采用八級移位寄存器產生小m序列,由本原多項式 可知移位寄存器的結構為:

         

        16    m序列產生框圖

         

         

        1.2.4 PSK硬件實現原理

         

        FTW[31..0]

        載波頻率控制字

         


        6   PSK硬件框圖

         

        PSK調制信號產生模塊中 m序列產生器輸出為一隨機1、0序列,當mResult為1時,相位選擇控制器輸出0(對應 相位),當mResult為0時,相位選擇控制器輸出 (對應 相位)。在頻率累加器與正弦表查詢之間添加一相位相加器,即可實現m序列輸出為1時,已調波輸出波形與載波波形一致,m序列輸出為0時,輸出波形出現 相位的二進制PSK調制。

         

        1.3 頻率穩定度的實現

         

        我們采用20MHz,頻率穩定度不超過10個PPM的晶振作為頻率參考源,經FPGA內部PLL倍頻后得到160MHz作為系統主頻。因為PLL對波形有提純能力,所以最后頻率穩定度優于 。

         

        1.4 顯示及鍵盤部分實現

         

        顯示及鍵盤部分由ZLG7289芯片驅動。為了提高Nios II處理器的執行效率,需要自定義控制ZLG7289芯片的邏輯指令,減少CPU對鍵盤顯示模塊的操作時間,使整個系統的效率得到了很大的提升。以下是CPU通過自定義邏輯指令讀取鍵盤值的時序圖:

        7    讀取鍵盤時序圖

         

        2 .后級處理電路設計

         

        運算放大器選用低功耗、高速、寬帶運放,其電流反饋型設計使它可以在高增益的條件下保持寬帶特性。由于在設計程控增益放大器時還需要一個寬帶放大器,而 OPA2690恰好是一個雙運算放大器,因此設計時非常方便,也有利于提高電路的穩定性。放大器模塊中一組用于差分放大,將單極性變化為雙極性,另一組用于低通放大,用Multisim8分析得出:截止頻率約為70 ,在20 以內幅度可以平坦輸出。由于它自身具有很強的大電流驅動能力,從實驗結果證明:在1kHz~20MHz范圍內,在 的負載電阻上,電壓峰-峰值達到6V 0.2V。

        8 后級處理電路圖

         

        3、軟件設計

        利用Altera的SOPC Builder系統開發工具和QuartusII5.0設計軟件,通過使用Nios II集成開發環境(IDE),編制了5個功能函數,正弦波發生函數,調幅函數,調頻函數,調相函數,掃頻函數。CPU就可以通過讀取鍵盤值,根據當前狀態執行相應功能。如要產生一個10KHz的正弦波,CPU通過查詢內部狀態寄存器選擇所要執行的函數,再對選擇開關賦值,選取所需的功能模塊,從而把產生正弦波所需的內部硬件接通,最后,CPU把從鍵盤讀入的所需頻率10K經過數據處理轉為相應的頻率命令字,于是我們就在輸出端得到了相應的波形。

        9 軟件流程圖

         

        4.主要元器件請單

         

        類型

        型號

        數量

        FPGA

        EP1C6T144C8

        1片

        D/A轉換器

        DAC904         

        1片

        寬帶放大器

        OPA2690    

        1片

        FPGA配置芯片

        EPCS1SI8

        1片

        有源晶振

        20MHz

        1只

        電壓變換芯片

        TPS767D301

        1片

        穩壓芯片

        LM7806CT 

        1片

        穩壓芯片

        MC7906CD2T(3)

        1片

        電感

         

        5個

        LED指示燈

         

        8個

        電解電容

        100uF

        3個

        電解電容

        47 uF

        2個

        濾波電容

        0.1 uF

        22個

        二極管

        1N4007

        2個

        電阻

        10K

        30個

        電阻

        50

        1個

         

        5、系統測試

         

        51測試使用的儀器與測試方法

         

        ⑴ 測試環境

           在實驗室條件下,環境溫度為常溫25 ,無強電磁干擾,由市電220V供電,通過直流電壓源(型號為DF17432L—3A)轉化為+8V和 V對系統供電。

        {{分頁}}

         

        測試儀器設備

         

        序號

        名稱、型號、規格

        數量

        備注

        1

        示波器   Agilent54622D

        1

        測試正弦波,AM,二進制PSK,二進制ASK等的波形

        2

        頻譜分析儀  AgilentE4411B

        1

        測試FM,二進制 FSK,掃頻輸出

        3

        頻率計  Agilent 531B1A

        1

        測試頻率穩定度

         

        ⑶測試方法

        按照設計要求,我們進行了以下測試:

        采用了進口Agilent54622D示波器對正弦波、AM、PSK、ASK等波形進行了直觀與定量的測量,主要由示波器觀察波形輸出失真程度和負載為 的電壓輸出的峰-峰值。通過示波器截取原波形由圖10 ~圖14所示。

        由于掃頻輸出和FM的最大頻率偏移只能用頻譜分析儀觀察和測量;所以我們采用AgilentE4411B頻譜分析儀,對FM、FSK、掃頻輸出等參數進行的定性與定量測試。通過示波器截取原波形由圖15 ~圖31所示。

        為了準確獲得頻率穩定度的指標,采用了Agilent 531B1A頻率計對頻率穩定度進行了嚴謹科學的定量的測試。當所測信號的輸出比較大時我們通過測頻率的辦法得到系統的頻率穩定度,當系統輸出信號比較小時,我們要通過測周期的辦法先得到系統的周期,再轉換為頻率進而得到系統的頻率穩定度。

         

        5.2 指標測試和測試結果

         

        1)輸出正弦波頻率范圍和穩定度的測試

        標稱

        頻率

        實測頻率

        平均頻率

        頻率穩

        定度

        一次

        二次

        三次

        1 k Hz

        1000.062779

        999.951426

        999.3966824

        999.993676

        0.000006

        10 k Hz

        10000.15396

        10000.15518

        10000.15427

        10000.15447

        0.000015

        50 k Hz

        50000.82914

        50000.83166

        50000.83087

        50000.83056

        0.000017

        100 k Hz

        100001.6685

        100001.6715

        100001.6704

        100001. 6701

        0.000017

        500 k Hz

        500008.4038

        500008.3776

        500008.1788

        500008.3867

        0.000017

        1M Hz

        1000016.878

        1000016.897

        1000016.903

        1000016. 893

        0.000017

        5 M Hz

        5000084.111

        5000084.175

        5000084.232

        5000084.172

        0.000017

        10 M Hz

        10000169.19

        10000169.13

        10000169.28

        10000169.20

        0.000017

        15 M Hz

        15000254.07

        15000254.28

        15000254..32

        15000254.22

        0.000017

        20 M Hz

        20000338.86

        20000338.53

        20000339.74

        20000339.38

        0.000017

         

         

        2)輸出正弦波幅度范圍的測試

         

        頻率

        1  Hz

        100  Hz

        1  k Hz

        10  k Hz

        50  k Hz

        100 k Hz

        幅度(V)

        6.13

        6.13

        6.06

        6.06

        6.06

        6.06

        頻率

        500 k Hz

        1M Hz

        5 M Hz

        10 M Hz

        15 M Hz

        20 M Hz

        幅度(V)

        6.06

        6.00

        6.00

        5.94

        5.81

        5.78

         

        測量結果表明正弦波的頻率輸出范圍可達到1 Hz 20 MHz,步進可以達到1 Hz,且頻率輸出和步進值均可以通過鍵盤設置。輸出信號的頻率穩定度可以通過下式計算:

                            

        其中 為頻率穩定度, 為頻率的平均值, 為標稱頻率。由表中結果可以看道1k Hz 10 MHz的輸出信號的頻率穩定度均達到 ,優于 的要求。

        {{分頁}}

         

        5.3 測試波形截取     

         

        (1)1kHz正弦波波形

        圖10  1K正弦波波形

        低通濾波器相關文章:低通濾波器原理


        存儲器相關文章:存儲器原理


        負離子發生器相關文章:負離子發生器原理
        塵埃粒子計數器相關文章:塵埃粒子計數器原理
        晶振相關文章:晶振原理
        汽車防盜機相關文章:汽車防盜機原理
        頻譜分析儀相關文章:頻譜分析儀原理


        關鍵詞: 通訊 網絡 無線

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 洪湖市| 保康县| 竹北市| 河曲县| 遵化市| 布尔津县| 广南县| 浦北县| 嘉黎县| 满洲里市| 泸州市| 天津市| 修文县| 平昌县| 出国| 宝坻区| 大安市| 休宁县| 侯马市| 禄劝| 金塔县| 思南县| 陆丰市| 开封市| 阳谷县| 建德市| 海宁市| 高阳县| 全州县| 龙江县| 二连浩特市| 延长县| 仙居县| 汽车| 东平县| 德令哈市| 中江县| 平罗县| 凉城县| 宜春市| 辉县市|