新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于Simulink的FH/DS混合信號(hào)源的仿真設(shè)計(jì)

基于Simulink的FH/DS混合信號(hào)源的仿真設(shè)計(jì)

作者: 時(shí)間:2008-07-02 來(lái)源:網(wǎng)絡(luò) 收藏

1 引 言

跳頻()和直擴(kuò)()系統(tǒng)都具有很強(qiáng)的抗干擾能力,是使用最多的兩種擴(kuò)頻技術(shù)。跳頻系統(tǒng)在抗選擇性衰落、抗多徑等方面的能力不強(qiáng),直擴(kuò)技術(shù)正好彌補(bǔ)了這一缺點(diǎn);直擴(kuò)系統(tǒng)受"遠(yuǎn)-近"效應(yīng)影響較大,而這正是跳頻技術(shù)的優(yōu)點(diǎn)。這兩種方式都具有自己的獨(dú)到之處,但也存在各自的不足,將兩者有機(jī)地結(jié)合在一起,可以大大改善系統(tǒng)性能。

Matlab/屬于一種通用的科學(xué)計(jì)算和系統(tǒng)語(yǔ)言,Matlab簡(jiǎn)單高效的數(shù)學(xué)語(yǔ)言結(jié)合的圖形化使得從數(shù)學(xué)模型到計(jì)算機(jī)模型的轉(zhuǎn)換非常容易,免除了高級(jí)語(yǔ)言編程的繁瑣。

本文使用中的Communications Blockset和Altera P Builder工具箱對(duì)擴(kuò)頻進(jìn)行了,采用同一PN碼發(fā)生器保證了系統(tǒng)的同步性,并借助Altera公司推出的DSP Builder將核心模塊自動(dòng)轉(zhuǎn)化為VHDL文件,可由QuartusⅡ軟件來(lái)進(jìn)一步完成編譯、綜合以及FPGA芯片的下載調(diào)試。其中,DSPBuilder軟件的使用大大加速了工程從軟件仿真到硬件實(shí)現(xiàn)的進(jìn)程。

2 /DS的原理及組成

2.1的設(shè)計(jì)原理

直擴(kuò)采用偽隨機(jī)碼進(jìn)行擴(kuò)頻,跳頻是用碼序列構(gòu)成跳頻指令來(lái)控制頻率合成器輸出信號(hào)的頻率。

本設(shè)計(jì)采用偽碼發(fā)生器來(lái)作為直擴(kuò)信號(hào)源,并使用同一偽碼發(fā)生器控制直接數(shù)字頻率合成器(DDS)來(lái)產(chǎn)生跳變的頻率,作為跳頻信號(hào)源。這樣可以保證混合信號(hào)源的同步性,在接收端也有利于實(shí)現(xiàn)解擴(kuò)同步處理。圖1是FH/DS混合信號(hào)源的示意圖。

可見(jiàn),DDS技術(shù)和偽碼發(fā)生器是混合擴(kuò)頻信號(hào)源的關(guān)鍵技術(shù)。

2.2 DDS技術(shù)原理及組成

DDS是從相位概念出發(fā)直接合成所需波形的一種新的頻率合成技術(shù),用數(shù)字合成技術(shù)實(shí)現(xiàn)。DDS主要由相位累加器、正弦查詢表、D/A轉(zhuǎn)換器和低通濾波器組成,如圖2所示。

在參考頻率fc的控制下,頻率控制字K控制相位累加器得到相應(yīng)的相位數(shù)據(jù),并在正弦查詢表中查詢相應(yīng)的幅度信息,將相位信息轉(zhuǎn)化成相應(yīng)的正弦幅值,經(jīng)D/A轉(zhuǎn)換器變成模擬信號(hào),再經(jīng)低通濾波器平滑后得到所需的信號(hào)波形。通過(guò)改變頻率控制字K,可得到不同的輸出頻率:


市面上現(xiàn)有的高性能芯片雖可完成DDS功能,但在某些性能指標(biāo)及價(jià)格方面并不能很好的滿足設(shè)計(jì)要求。本次設(shè)計(jì)采用Matlab/Simulink+DSP Builder仿真設(shè)計(jì)DDS模塊,并將模塊自動(dòng)轉(zhuǎn)成VHDL文件,進(jìn)一步使用QuartusⅡ軟件來(lái)完成FPGA芯片的設(shè)計(jì)下載。這樣可以獲得符合自己要求的高性價(jià)比的DDS。

2.3 PN碼發(fā)生器的原理及構(gòu)成

本次仿真設(shè)計(jì)中,PN碼采用易于產(chǎn)生、擁有優(yōu)良自相關(guān)特性的m序列。m序列是由移位寄存器加反饋后構(gòu)成的,其序列生成多項(xiàng)式如下:

對(duì)于r級(jí)反饋移位寄存器,可產(chǎn)生周期為2r-1的m序列。本設(shè)計(jì)中取m=5,產(chǎn)生周期為31的m序列。若有需要,偽碼發(fā)生器也可采用其他碼序列,如GOLD碼、m序列、R-S卷積碼等。

3 FH/DS混合信號(hào)源的Simulink仿真

3.1 系統(tǒng)仿真模型

混合擴(kuò)頻信號(hào)源系統(tǒng)的仿真模型主要由三部分組成:PN_Generator,Random_Integer及DDS,如圖3所示。

信號(hào)流程:PN_Generator產(chǎn)生周期為31的m序列,經(jīng)零階保持器(Hold)后形成碼寬為1的偽碼序列作為直擴(kuò)的信號(hào)源;m序列進(jìn)入Random_Integer,由一列二進(jìn)制碼變成一列十六進(jìn)制碼即隨機(jī)跳變的整數(shù)序列,整數(shù)幅值在[1,15]之間,經(jīng)脈沖(Pulse)采樣(Sample)后產(chǎn)生頻率控制字進(jìn)入DDS,在DDS中將相位信息轉(zhuǎn)化成相應(yīng)的正弦幅值,產(chǎn)生了頻率隨機(jī)跳變(具有15個(gè)跳頻頻率點(diǎn))的正弦波形,作為跳頻的信號(hào)源。通過(guò)示波器(Scope)可以觀察輸出波形。

3.2 PN Generator的仿真設(shè)計(jì)

根據(jù)反饋移位寄存器原理,采用Altera DSP Builder工具箱設(shè)計(jì)的PN_Generator仿真結(jié)構(gòu)如圖4所示,該模塊采用5級(jí)反饋來(lái)產(chǎn)生周期為31的m序列。根據(jù)需要,可對(duì)反饋級(jí)數(shù)作修改。

3.3 Random_Integer的仿真設(shè)計(jì)

該模塊采用Communications Blockset工具箱設(shè)計(jì)完成,其仿真結(jié)構(gòu)如圖5所示。參數(shù)設(shè)置為4,即每4位二進(jìn)制轉(zhuǎn)化成為1位十六進(jìn)制,輸出幅值在[1,15]之間、碼持續(xù)時(shí)間為1 s的隨機(jī)整數(shù)序列。

3.4 DDS的仿真設(shè)計(jì)

按照DDS的組成原理,在Simulink中采用AlteraDSP Builder工具箱建立的DDS仿真結(jié)構(gòu)如圖6所示。

幅值在[1,15]之間、碼持續(xù)時(shí)間為1 s的隨機(jī)整數(shù)序列進(jìn)入DDS,控制相位累加器得到相應(yīng)的相位數(shù)據(jù),并在正弦查詢表(LUT)中查詢相應(yīng)的幅度信息,將相位信息轉(zhuǎn)化成相應(yīng)的正弦幅值,從而得到頻率跳變的正弦波信號(hào)。

由于受存儲(chǔ)器容量和成本限制,正弦查詢表LUT容量有限,采用10位精度,其參數(shù)Matlab Array設(shè)置為:255*sin([0:pi/(2^10):2*pi]),即DDS模塊可獲得fc/210的頻率分辨率。

DDS各點(diǎn)的仿真波形如圖7所示,示波器的采樣時(shí)間設(shè)置為0.01。

3.5 系統(tǒng)仿真結(jié)果

系統(tǒng)仿真步進(jìn)設(shè)置為Variable Step,最大仿真步長(zhǎng)設(shè)置為le-3,仿真時(shí)間設(shè)置為65 s。圖8顯示了FH/DS混合信號(hào)源的仿真波形,示波器的采樣時(shí)間設(shè)置為0.01。

可以看到,該仿真模型輸出了兩路信號(hào):一路是碼周期為31、最小碼寬為1的直擴(kuò)信號(hào),另一路是具有15個(gè)跳頻點(diǎn)的隨機(jī)跳頻信號(hào)。

上述內(nèi)容旨在提出一種完全由Simulink仿真實(shí)現(xiàn)的混合擴(kuò)頻信號(hào)源,而對(duì)于信號(hào)的指標(biāo)沒(méi)有過(guò)高要求。如有需要,通過(guò)修改仿真模型中零階保持器的sample time和Random_Integer的參數(shù),直擴(kuò)碼和跳頻源的頻率可進(jìn)一步提高,跳頻點(diǎn)數(shù)也可進(jìn)一步增加,通過(guò)修改PN_Gener-ator的反饋級(jí)數(shù),直擴(kuò)碼周期可加大。通過(guò)修改參數(shù)以滿足不同需要使得本設(shè)計(jì)具有很大的靈活性。

4核心模塊的FPGA實(shí)現(xiàn)

從前面的分析可以看到,偽碼發(fā)生和DDS是混合擴(kuò)頻信號(hào)源的核心模塊,因此采用了Altera DSP Builder工具箱對(duì)其進(jìn)行仿真設(shè)計(jì)。Altera DSP Builder是DSPBuilder軟件在Simulink生成的工具箱,下面對(duì)DSP Build-er的設(shè)計(jì)流程和上述兩個(gè)模塊的FPGA實(shí)現(xiàn)加以介紹。

4.1 DSP Builder設(shè)計(jì)流程

Altera公司推出的DSP Builder是一個(gè)系統(tǒng)級(jí)(或算法級(jí))設(shè)計(jì)工具,他架構(gòu)在多個(gè)軟件工具之上,并把系統(tǒng)級(jí)(算法仿真建模)和RTL級(jí)(硬件實(shí)現(xiàn))兩個(gè)設(shè)計(jì)領(lǐng)域的設(shè)計(jì)工具連接起來(lái),最大程度地發(fā)揮了兩種工具的優(yōu)勢(shì)。DSP Builder依賴于MathWorks公司的數(shù)學(xué)分析工具M(jìn)atlab/Simulink,以Simulink的Blockset出現(xiàn)??梢栽赟imulink中進(jìn)行圖形化設(shè)計(jì)和仿真,同時(shí)又通過(guò)Signal-Compiler把Matlab/Simulink的設(shè)計(jì)文件(.mdl)轉(zhuǎn)成相應(yīng)的硬件描述語(yǔ)言VHDL設(shè)計(jì)文件(.vhd),以及用于控制綜合和編譯的tcl腳本。而對(duì)后者的處理可以由FPGA/CPLD開(kāi)發(fā)工具QuartusⅡ來(lái)完成。

由于用FPGA設(shè)計(jì)一個(gè)DSP模塊的復(fù)雜性、設(shè)計(jì)的性能(如面積、速度、可靠性、設(shè)計(jì)周期等)對(duì)于不同的應(yīng)用目標(biāo)有不同的要求,涉及的軟件工具也不僅僅是Simulink和QuartusⅡ。DSP Builder針對(duì)不同情況提供了兩套設(shè)計(jì)流程,即自動(dòng)流程和手動(dòng)流程。

自動(dòng)流程包括以下幾個(gè)步驟:

(1)Matlab/Simulink建模;
(2)系統(tǒng)仿真;
(3)DSP Builder完成VHDL轉(zhuǎn)換、綜合、適配、下載;
(4)嵌入式邏輯分析儀實(shí)時(shí)測(cè)試。

手動(dòng)流程包括以下幾個(gè)步驟:

(1)Matlab/Simulink建模;
(2)系統(tǒng)仿真;
(3)DSP Builder完成VHDL轉(zhuǎn)換、綜合、適配;
(4)ModelSim對(duì)TestBench功能仿真;
(5)QuartusⅡ直接完成適配(進(jìn)行優(yōu)化設(shè)置);
(6)QuartusⅡ完成時(shí)序仿真;
(7)引腳鎖定;
(8)下載/配置與嵌入式邏輯分析儀等實(shí)時(shí)測(cè)試;
(9)對(duì)配置器件編程,設(shè)計(jì)完成。

4.2 PN Generator和DDS功能模塊的FPGA實(shí)現(xiàn)

按照?qǐng)D4和圖6所示結(jié)構(gòu)在Simulink中完成仿真模塊的搭建,參數(shù)設(shè)置后進(jìn)行Simulink系統(tǒng)級(jí)仿真。仿真成功后雙擊Signal Complier Block,出現(xiàn)如圖9所示窗口。

對(duì)話框中選定Cyclone系列芯片。通過(guò)點(diǎn)擊1,可把Simulink的模塊文件(.mdl)自動(dòng)轉(zhuǎn)換成硬件描述語(yǔ)言VHDL文件:點(diǎn)擊2,可對(duì)轉(zhuǎn)換好的VHDL文件進(jìn)行綜合;點(diǎn)擊3,QuartusⅡ進(jìn)行編譯適配,生成編程文件。也可以點(diǎn)擊"Execute steps 1,2 and 3"讓Signal Complier自動(dòng)完成上述一系列操作,由QuartusⅡ自動(dòng)進(jìn)行綜合、適配、時(shí)序分析,最終得到可供芯片下載使用的.sof文件。

打開(kāi)QuartusⅡ,選擇Cyclone系列的EP1C6Q240C8芯片,進(jìn)行重新編譯、仿真并下載到芯片,最終可在示波器中驗(yàn)證偽碼發(fā)生和DDS的功能。

5 結(jié)語(yǔ)

本次仿真設(shè)計(jì)充分利用了Matlab/Simulink中DSPBuilder工具箱的圖形化界面建模、系統(tǒng)仿真的功能,既避免了編寫(xiě)繁瑣的硬件描述程序,又區(qū)別于以往完全圖形化的仿真設(shè)計(jì)方法,設(shè)計(jì)思路十分靈活。其中,DSP Builder軟件的使用大大縮短了工程設(shè)計(jì)從軟件仿真到硬件實(shí)現(xiàn)的周期。采用同一偽碼發(fā)生器,能夠同步產(chǎn)生直擴(kuò)所需的偽碼序列和跳頻所需的跳變頻率源,保證了混合擴(kuò)頻信號(hào)源的穩(wěn)定性,對(duì)于接收端的同步解擴(kuò)也十分有利。采用DDS技術(shù),具有分辨率高、頻率變化快、頻率可控等優(yōu)點(diǎn),很好地實(shí)現(xiàn)了跳頻功能。和專用芯片相比,對(duì)多種功能模塊進(jìn)行Simulink仿真,利用DSP Builder快速轉(zhuǎn)換到FPGA硬件設(shè)計(jì),并將多種功能集成在同一FPGA芯片上,這種方法使系統(tǒng)具有較高的性價(jià)比。

負(fù)離子發(fā)生器相關(guān)文章:負(fù)離子發(fā)生器原理


評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉