西電DSP大作業(yè)報告_第1頁
西電DSP大作業(yè)報告_第2頁
西電DSP大作業(yè)報告_第3頁
西電DSP大作業(yè)報告_第4頁
西電DSP大作業(yè)報告_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上DSP實驗課程序設(shè)計報告學(xué)院:電子工程學(xué)院學(xué)號:姓名:趙海霞指導(dǎo)教師:蘇濤DSP實驗課大作業(yè)設(shè)計一 實驗?zāi)康脑贒SP上實現(xiàn)線性調(diào)頻信號的脈沖壓縮、動目標(biāo)顯示(MTI)和動目標(biāo)檢測(MTD),并將結(jié)果與MATLAB上的結(jié)果進(jìn)行誤差仿真。二 實驗內(nèi)容2.1 MATLAB仿真 設(shè)定帶寬、脈寬、采樣率、脈沖重復(fù)頻率,用MATLAB產(chǎn)生16個脈沖的LFM,每個脈沖有4個目標(biāo)(靜止,低速,高速),依次做2.1.1 脈壓2.1.2 相鄰2脈沖做MTI,產(chǎn)生15個脈沖2.1.3 16個脈沖到齊后,做MTD,輸出16個多普勒通道2.2 DSP實現(xiàn)將MATLAB產(chǎn)生的信號,在visual

2、 dsp中做脈壓,MTI、MTD,并將結(jié)果與MATLAB作比較。三 實驗原理3.1 線性調(diào)頻線性調(diào)頻脈沖壓縮體制的發(fā)射信號其載頻在脈沖寬度內(nèi)按線性規(guī)律變化即用對載頻進(jìn)行調(diào)制(線性調(diào)頻)的方法展寬發(fā)射信號的頻譜,在大時寬的前提下擴(kuò)展了信號的帶寬。若線性調(diào)頻信號中心頻率為,脈寬為,帶寬為,幅度為,為調(diào)頻斜率,則其表達(dá)式如下:;在相參雷達(dá)中,線性調(diào)頻信號可以用復(fù)數(shù)形式表示,即在脈沖寬度內(nèi),信號的角頻率由變化到。3.2 脈沖壓縮原理脈沖雷達(dá)信號發(fā)射時,脈沖寬度決定著雷達(dá)的發(fā)射能量,發(fā)射能量越大, 作用距離越遠(yuǎn);在傳統(tǒng)的脈沖雷達(dá)信號中,脈沖寬度同時還決定著信號的頻率寬度,即帶寬與時寬是一種近似倒數(shù)的關(guān)系

3、。脈沖越寬,頻域帶寬越窄,距離分辨率越低。 脈沖壓縮的主要目的是為了解決信號的作用距離和信號的距離分辨率之間的矛盾。為了提高信號的作用距離,我們就需要提高信號的發(fā)射功率,因此,必須提高發(fā)射信號的脈沖寬度,而為了提高信號的距離分辨率,又要求降低信號的脈沖寬度。 脈沖壓縮網(wǎng)絡(luò)實際上就是一個匹配濾波器網(wǎng)絡(luò),在接收機(jī)中設(shè)置一個與發(fā)射信號頻率相匹配的壓縮網(wǎng)絡(luò),使經(jīng)過調(diào)制的寬脈沖的發(fā)射信號變成窄脈沖,因此保持了良好的距離分辨力。根據(jù)匹配濾波理論,脈壓可以在頻域與時域中進(jìn)行。 頻域脈壓即對回波信號進(jìn)行FFT變換,在頻域中實現(xiàn)回波信號與脈壓系數(shù)相乘,最后將結(jié)果進(jìn)行IFFT轉(zhuǎn)換為時域信號。 時域脈壓即直接對將回

4、波信號與脈壓信號進(jìn)行線性卷積,去掉暫態(tài)點后的數(shù)據(jù)就是脈壓的結(jié)果。3.3 MTI(動目標(biāo)顯示)原理動目標(biāo)顯示(MTI)本質(zhì)含義是:基于回波多普勒信道的提取而區(qū)分運(yùn)動目標(biāo)和固定目標(biāo)(包括低速運(yùn)動的雜波等)。從應(yīng)用上講,該技術(shù)是利用MTI濾波器濾除相應(yīng)雜波,從而提高目標(biāo)檢測性能。雷達(dá)輻射的高頻脈沖能量被各種地形地物等固定物體和飛機(jī)等運(yùn)動物體反射時,由于前者回波信號相對于發(fā)射信號的相位差是固定的,而后者的回波信號相對于發(fā)射信號的相位差是變化的,于是經(jīng)相位檢波后,固定目標(biāo)視頻信號的幅度不變,而運(yùn)動目標(biāo)視頻信號的幅度按多普勒頻率的余弦關(guān)系變化,把視頻信號延時一個重復(fù)周期后,和未延時信號加以對消,就可以消除

5、固定目標(biāo)而只選擇運(yùn)動目標(biāo)。因此,若將同一距離單元在相鄰重復(fù)周期內(nèi)的相檢輸出作相減運(yùn)算,則固定目標(biāo)的回波將被完全對消,慢速雜波也將得到很大程度衰減,只有運(yùn)動目標(biāo)回波得以保留。顯然這樣便可將固定目標(biāo),慢速雜波與運(yùn)動目標(biāo)區(qū)別開來,這就是動目標(biāo)顯示(MTI)的基本原理。最常用的MTI濾波器是抑制地物雜波的濾波器。因為地物雜波多普勒頻移為零或很小,主要集中在0頻附近。在頻率為0處,濾波器頻率響應(yīng)應(yīng)有凹口。所以地物雜波在通過MTI濾波器后將受到很大的抑制。零頻雜波(地雜波)的MTI濾波器應(yīng)在零頻及其周期出現(xiàn)點處形成凹口。最常用的零頻MTI濾波器是二項式濾波器,其中最為典型的是一次和二次相消器。一次相消器(

6、二脈沖對消)輸入數(shù)據(jù)是一個基帶復(fù)數(shù)樣本,這些是同一個距離單元由順序脈沖返回的,形成一個有效的采樣間隔的離散時間序列。其時域方程為:,傳輸函數(shù)為:,它是一個單零點系統(tǒng),零點的位置在,頻率響應(yīng)為:。其在零頻有一凹口,可用來抑制噪聲,但同時把靜態(tài)目標(biāo)也給對消掉,因此用MTI一次相消器檢測不出靜目標(biāo)。3.4 MTD(動目標(biāo)檢測)原理僅對雷達(dá)回波信號進(jìn)行動目標(biāo)顯示(MTI)是不夠的,氣象雜波(如云雨等)和箔條雜波受氣流和風(fēng)力的影響,會相對雷達(dá)而動,其頻譜中心不是固定在0頻附近,而是在某個頻率區(qū)間內(nèi)變化的, 抑制此類雜波用普通的MTI濾波器是不行的,而MTD濾波器則可以抑制此類雜波。如圖1所示: 圖1 動

7、目標(biāo)顯示濾波器和多普勒濾波器組的特性根據(jù)最佳線性濾波理論,在雜波背景下檢測運(yùn)動目標(biāo)回波,除了雜波抑制濾波器外,還應(yīng)串接有對脈沖串信號匹配的濾波器。實際工作中,采用一組相鄰且部分重疊的濾波器組覆蓋整個多普勒頻率范圍,這就是窄帶多普勒濾波器組。N個相鄰的多普勒濾波器組的實現(xiàn)是由N個輸出的橫向濾波器(N個脈沖和N-1根遲延線)經(jīng)過各脈沖不同的加權(quán)并求和后形成的。該濾波器的頻率覆蓋范圍為0到,為雷達(dá)工作重復(fù)頻率。MTD就是用窄帶多普勒濾波器組實現(xiàn)脈沖串信號匹配的一種技術(shù)。下圖給出MTD的實現(xiàn)方法。圖2 橫向濾波器橫向濾波器有N-1根延遲線,每根延遲線的延遲時間為,設(shè)加在第個橫向濾波器的第個抽頭的加權(quán)值

8、為假設(shè)輸入序列為,第個橫向濾波器完成的運(yùn)算是 上式就是DFT的表述式,當(dāng)是2的乘方的時候,便可以使用FFT算法來快速實現(xiàn)。用FFT實現(xiàn)N個濾波器組,F(xiàn)FT算法運(yùn)算量大約在個乘法,而使用橫向濾波器N組橫向抽頭的分別加權(quán)的方法,需要次乘法,在N比較大時,可以明顯節(jié)省運(yùn)算量。利用MTD可分辨不同速度的目標(biāo),其速度分辨力為 其中為多普勒頻率分辨力。若信號的多普勒頻率滿足:,其中,則會出現(xiàn)多普勒頻率模糊現(xiàn)象,即速度模糊。四 實驗步驟以下是該實驗中設(shè)定的幾個參數(shù)BandWidth=2.0e6-帶寬TimeWidth=42.0e-6-脈寬Fs=2.0e6-采樣率PRT=240e-6-脈沖重復(fù)周期Target

9、Distance=3000 8025 8025 11600-目標(biāo)距離TargetVelocity=50 0 -120 213-目標(biāo)速度假設(shè)接收到的回波數(shù)是16個,噪聲為高斯隨機(jī)噪聲。4.1 在MATLAB中產(chǎn)生線性調(diào)頻信號。4.2 根據(jù)目標(biāo)距離得出目標(biāo)回波在時域的延遲量,根據(jù)目標(biāo)速度得出多普勒相移,從而在MATLAB中產(chǎn)生4個目標(biāo)的16個回波串(接收到的回波含噪聲)。4.3 由匹配濾波理論產(chǎn)生對應(yīng)于目標(biāo)回波的濾波系數(shù)(脈壓系數(shù)),在時域中做線性卷積,實現(xiàn)匹配濾波(時域脈壓);在頻域中做回波信號和脈壓系數(shù)的FFT,點乘后作逆FFT,實現(xiàn)頻域脈壓。兩者進(jìn)行比較,討論其差別。4.4 對16個去暫態(tài)點

10、后的脈沖串按接收順序進(jìn)行排列,用一次相消器(一種濾波方式)實現(xiàn)MTI。4.5 做16通道的FFT,實現(xiàn)MTD。4.6 在DSP中對MATLAB產(chǎn)生的回波數(shù)據(jù)和脈壓系數(shù)進(jìn)行處理,實現(xiàn)頻域脈壓。導(dǎo)入DSP的回波數(shù)據(jù)為時域數(shù)據(jù),而脈壓系數(shù)為頻域數(shù)據(jù)。將導(dǎo)入DSP的時域回波數(shù)據(jù)進(jìn)行一次FFT變換到頻域,然后將其與頻域脈壓系數(shù)進(jìn)行點積,得到頻域脈壓結(jié)果。對該結(jié)果再做一次逆FFT,將頻域轉(zhuǎn)換成時域。在這一步中需要調(diào)用庫函數(shù)fft_flp32.asm。該子程序可實現(xiàn)8192點復(fù)數(shù)的FFT功能。由于C語言中無法實現(xiàn)復(fù)數(shù)運(yùn)算,因此,對8192個復(fù)數(shù)按照實部虛部交替的順序進(jìn)行重排列,用長度為16384的數(shù)組來存放

11、時域回波數(shù)據(jù)。頻域相乘后,做乘積結(jié)果的逆FFT,得到脈壓結(jié)果。做逆FFT,仍需調(diào)用庫函數(shù)fft_flp32.asm,此時要通過FFT子程序?qū)崿F(xiàn)逆FFT的功能,要對頻域的數(shù)據(jù)進(jìn)行處理,才能達(dá)到這一目的。4.7 對脈壓后的數(shù)據(jù)按照脈沖號重排,相鄰序列的數(shù)據(jù)相減(滑動對消),實現(xiàn)MTI。4.8 調(diào)用子程序fft_16.asm,做16通道FFT,實現(xiàn)MTD。入口參數(shù)為16通道的脈壓數(shù)據(jù)。五 實驗結(jié)果及討論5.1 脈壓、MTI、MTD結(jié)果分析:5.1.1 脈壓結(jié)果及其分析:由于雷達(dá)在發(fā)射時不能接收,故最大無遮擋距離(閉鎖期)為:,而第一個目標(biāo)的距離為3000m,因此在閉鎖區(qū)內(nèi),被遮擋一部分,所以在目標(biāo)功

12、率相同的情況下,第一個目標(biāo)的回波功率明顯小于另兩個,第一個脈沖的幅度遠(yuǎn)小于另二個脈沖的幅度。第二個脈沖的幅度一直在變化,是因為第二個脈沖是兩個在同一個距離門的兩個回波信號的矢量疊加。第二個脈沖為功率為1的定目標(biāo)與功率為0.25多普勒頻移為雷達(dá)發(fā)射頻率的0.25倍的運(yùn)動信號的疊加,所以可以看到第二個脈沖的幅度以雷達(dá)發(fā)射周期的四倍為周期變化。從圖中可以看出,時頻域脈壓結(jié)果差別很小,相對誤差停留在10量級上。理論上兩者計算結(jié)果應(yīng)該是一樣的,之所以存在誤差主要是由于Visual DSP和MATLAB兩種處理工具的精度不同也導(dǎo)致誤差出現(xiàn)。5.1.2 MTI結(jié)果及其分析雷達(dá)的距離分辨力為。以第一個目標(biāo)為例

13、,對應(yīng)的橫坐標(biāo)為41,由于MATLAB的坐標(biāo)是從1開始的,因此,第一個目標(biāo)對應(yīng)的距離為 圖中一個脈沖第一個是速度50,功率是1,但是第一個脈沖有一部分功率損失在閉鎖期了,故幅度較??;第二個目標(biāo)被對消,因為第二個目標(biāo)的速度為零,而其它目標(biāo)的相減結(jié)果不為零,這是因為運(yùn)動目標(biāo)回波信號是以普勒頻率為頻率的余弦信號,因此相同功率下速度大的目標(biāo)在MTI處理后的結(jié)果幅度較大。第三個是速度120,功率是0.25;第四個是學(xué)號產(chǎn)生的速度213,功率是1。因此,第四個脈沖的幅度最大,其次是第三個脈沖,其次是第一脈沖。5.1.3 MTD結(jié)果及其分析X軸代表多普勒通道,Y軸代表距離單元,Z軸代表做MTD后的幅度信息。

14、由圖可算出各目標(biāo)速度,以第一個目標(biāo)為例:對應(yīng)的縱坐標(biāo)為2,在第二個多普勒通道上,而每個多普勒通道代表的速度是24.888,因此,第一個目標(biāo)對應(yīng)的速度為:2*24.88=49.76。第四個目標(biāo)產(chǎn)生了速度模糊。這是由于其速度為213,大于臨界速度199,故產(chǎn)生速度模糊5.2 模糊分析,改變重頻因為窄帶多普勒濾波器組的頻率覆蓋范圍為0到,所以當(dāng)時,將產(chǎn)生速度模糊,對應(yīng)的多普勒通道將和多普勒頻移為對應(yīng)的多普勒通道相同,因此分辨不清目標(biāo)的真實速度。這時,只要將PRF變大,由 其中為多普勒頻率分辨力,即可計算出合適的PRF。經(jīng)計算,只需將雷達(dá)脈沖重復(fù)周期PRT由240改為196即可解除模糊。5.3 DSP

15、結(jié)果與Matlab結(jié)果對比,誤差分析。5.3.1 MATLAB和DSP脈沖壓縮的結(jié)果分別如下圖所示 由上圖可知,DSP和MATLAB脈壓結(jié)果基本一樣。DSP和MATLAB的脈沖壓縮結(jié)果的誤差(絕對值)數(shù)量級為,脈沖壓縮相對誤差的數(shù)量級為,結(jié)果是正確的,且滿足精度要求5.1.2 MATLAB和DSP 做MTI的結(jié)果分別如下圖所示由圖可知,MATLAB和DSP 做MTI的結(jié)果基本一致DSP做MTI結(jié)果的誤差(絕對值)數(shù)量級為,誤差(相對值)數(shù)量級為,可見DSP做MTI的結(jié)果是正確的,且滿足精度要求。5.1.3 MATLAB和DSP 做MTD的結(jié)果如下圖所示MTD絕對誤差在數(shù)量級上,相對誤差在數(shù)量級

16、上。MATLAB和DSP的MTD結(jié)果稍有差別是由于兩種工具處理數(shù)據(jù)的精度不一樣,MATLAB用CPU處理數(shù)據(jù),DSP則用DSP核處理數(shù)據(jù)。六 實驗思考題及心得6.1 MTI結(jié)果中看不到靜止目標(biāo)從時域角度分析,靜止目標(biāo)在任何時刻產(chǎn)生的多普勒相移都是一樣的,用脈壓串進(jìn)行相減,自然會消掉靜止目標(biāo);從頻域角度來看,一次相消器會抑制零頻響應(yīng),而靜態(tài)目標(biāo)頻率為0,所以經(jīng)MTI濾波后會消失。所以MTI結(jié)果中看不到靜止目標(biāo)。6.2 速度模糊由于多普勒相移以產(chǎn)生周期變化,所以由于雷達(dá)發(fā)射脈沖串頻率較低,間隔較大而測得的同一目標(biāo)相移變化超過時,雷達(dá)無法通過目標(biāo)回波的相移計算準(zhǔn)確的目標(biāo)多普勒速度,產(chǎn)生的速度不定性稱

17、作速度模糊。根據(jù)多普勒速度與相移關(guān)系可算得試驗中雷達(dá)可測的有效的最大速度為=398米/秒<400米/秒,將程序中第四個目標(biāo)速度設(shè)置為400米/秒,則在MTI動目標(biāo)顯示圖中,沒有該目標(biāo),就是產(chǎn)生了速度模糊,而且目標(biāo)在兩個目標(biāo)回波中產(chǎn)生的相移正好為的倍數(shù),則使得雷達(dá)誤認(rèn)為該目標(biāo)為靜止目標(biāo)。6.3 MTD速度/多普勒通道的含義MTD的核心是線性MTI加窄帶多普勒濾波器組,對雷達(dá)回波的處理包括雜波處理和脈沖串信號匹配。MTI實現(xiàn)的功能即是使雜波得到抑制而讓各種速度的運(yùn)動目標(biāo)信號通過,而MTD濾波器則要實現(xiàn)回波脈沖串的相位特性相參積累。而此濾波器應(yīng)為梳齒行濾波器,齒的間隔為脈沖重復(fù)頻率,齒的位置取

18、決于回波信號的多普勒頻移。實際情況中,多普勒頻移不能預(yù)知,因此采用一組相鄰且部分重疊的濾波器組,覆蓋整個多普勒頻率范圍,這就是窄帶多普勒濾波器組,多普勒通道數(shù)目即為該窄帶多普勒濾波器組數(shù)目。實現(xiàn)的功能即是實現(xiàn)回波信號的相參積累,進(jìn)一步濾除氣象雜波等MTI濾波器不能消除的雜波部分。 實驗心得通過這次試驗,我對雷達(dá)信號處理的基本過程和相關(guān)理論以及線性調(diào)頻,匹配濾波,MTI,MTD,多普勒頻移,快、慢時間采樣有了一定程度的理解。對FFT,采樣,頻譜泄露等數(shù)字信號處理技術(shù)有了更感性的認(rèn)識,收獲頗豐。最后非常感謝老師在實驗中的耐心指導(dǎo),讓我順利完成每個實驗,充實度過每個實驗課。大作業(yè)提示:在DSP環(huán)境下

19、編程實現(xiàn)對回波信號的脈壓,MTI和MTD處理。MATLAB程序內(nèi)容:提供了脈壓,MTI,MTD的實現(xiàn)方法,同時生成數(shù)據(jù)文件以供DSP程序中使用。流程說明:做脈壓處理時,導(dǎo)入DSP的回波數(shù)據(jù)應(yīng)為時域數(shù)據(jù),脈壓系數(shù)為頻域數(shù)據(jù)。這些數(shù)據(jù)是在MATLAB程序中生成的。在DSP中,對回波數(shù)據(jù)進(jìn)行FFT處理將其變換到頻域后,將其與頻域系數(shù)進(jìn)行點積,對點乘結(jié)果再做一次逆FFT,將頻域結(jié)果轉(zhuǎn)換到時域,在這一步中需要調(diào)用函數(shù)fft_flp32.asm,其功能是實現(xiàn)輸入數(shù)據(jù)的FFT變換。這里要求同學(xué)們利用FFT程序?qū)崿F(xiàn)IFFT的功能。具體方法請大家自己查找。這個庫函數(shù)的入口參數(shù)包括(輸入數(shù)據(jù),緩存區(qū)1,緩存區(qū)2,

20、輸出結(jié)果)(說明:原庫函數(shù)中的入口參數(shù)比是6個而不是現(xiàn)在的四個,為了方便同學(xué)們調(diào)用,所以庫函數(shù)調(diào)用的時候稍做了修改,希望你們以后再調(diào)庫函數(shù)的時候注意)。所謂緩存就是在程序中再開辟一個存儲空間,和輸入數(shù)據(jù)的大小一樣。所需的程序和旋轉(zhuǎn)因子表都和這個文檔放在同一個文件夾內(nèi)了。在做MTD的時候調(diào)用的函數(shù)是fft_16.asm。程序中的參數(shù)由個人學(xué)號末三位來定,具體說明見matlab程序注釋??梢宰杂筛淖儏?shù),觀察結(jié)果有何不同。本實驗雷達(dá)的距離分辨率為該雷達(dá)的多普勒分辨率為對應(yīng)的徑向速度為:在MATLAB中通過fftshift將零頻移到中間,同時調(diào)整坐標(biāo),使得X軸從0到480,Y軸從-8到8,通道0對應(yīng)

21、速度為0。練習(xí)五 實驗報告一、 實驗?zāi)康木帉慍語言,練習(xí)讀寫數(shù)據(jù)二、 實驗內(nèi)容編寫C程序,產(chǎn)生1000個隨機(jī)浮點數(shù)(隨機(jī)類型和參數(shù)自行確定),建立一個磁盤文件,把所有隨機(jī)數(shù)依序、按照相應(yīng)格式寫入文件;關(guān)閉文件。再打開此文件,從文件中把數(shù)據(jù)讀入,計算其均值、方差,并寫入另一個文件中三、 實驗過程3.1 C語言函數(shù)產(chǎn)生1000個隨機(jī)浮點數(shù)3.2 建立磁盤文件并將隨機(jī)浮點數(shù)依次寫入文件rand.dat,并關(guān)閉文件3.3 打開rand.dat文件,并把數(shù)據(jù)讀入3.4 計算所讀入數(shù)據(jù)的均值及方差3.5 建立新的磁盤文件result.dat并將將所計算均值和方差寫入該文件,關(guān)閉文件。四、 試驗程序如下#i

22、nclude<stdio.h>#include<math.h>#include<stdlib.h>#include<time.h>#define N 1000int i;float mean=0.0;float var=0.0;int dataN;int data1N;FILE *fp;void main() for(i=0;i<N;i+) datai=rand(); fp=fopen("rand.dat","rb"); fread(data1,4,N,fp); fclose(fp); for(i=0

23、;i<N;i+) mean+=data1i; mean=mean/N; for(i=0;i<N;i+) var+=(data1i-mean)*(data1i-mean); var=var/N; fp=fopen("result.dat","w"); fprint(fp,"mean=%fnvar=%fn",mean,var); fclose(fp);五、 問題討論此練習(xí)中,計算機(jī)和DSP各自起什么作用?如果DSP脫離計算機(jī),此程序還能運(yùn)行嗎?答:在DSP中進(jìn)行了文件建立、讀寫操作和數(shù)學(xué)計算,并將數(shù)據(jù)處理結(jié)果送到計算機(jī)終端。對

24、于DSP來說,它并不具備通用微機(jī)的強(qiáng)大的文件系統(tǒng)和人機(jī)界面,所以DSP將數(shù)據(jù)傳回了通用微機(jī)所在的調(diào)試平臺,并在Debug文件建立數(shù)據(jù)文件。所有的文件操作都是有DSP來完成,但是數(shù)據(jù)文件卻是建在微機(jī)上。如果DSP脫離了計算機(jī),DSP創(chuàng)建的文件將沒有終端存放,那么這個程序?qū)o法運(yùn)行。練習(xí)六 實驗報告一、 實驗?zāi)康恼{(diào)試器和EZ-KIT板的性能比較二、 實驗內(nèi)容 把練習(xí)二改為執(zhí)行5次、10次,在軟仿真環(huán)境下運(yùn)行,并用記錄執(zhí)行的時間;然后,再在EZ KIT板上執(zhí)行此程序,記錄執(zhí)行時間。三、 實驗過程3.1 在練習(xí)二程序中主程序加for循環(huán)函數(shù),循環(huán)次數(shù)5次,編譯、運(yùn)行、記錄執(zhí)行時間;3.2 將循環(huán)次數(shù)改

25、為10次,編譯、運(yùn)行、記錄執(zhí)行時間;3.3 連接 EK KIT板,設(shè)置運(yùn)行環(huán)境,程序循環(huán)次數(shù)分別設(shè)置5、10次,編譯后運(yùn)行,分別記錄執(zhí)行時間(通過Cycle Counters);3.4 比較數(shù)據(jù)四、 實驗結(jié)果軟件調(diào)試器時間:程序運(yùn)行5次:22s 程序運(yùn)行10次:41sEK KIT硬件調(diào)試時間(Cycle Counters):程序運(yùn)行5次:程序運(yùn)行前 程序運(yùn)行后 程序運(yùn)行10次:程序運(yùn)行前 程序運(yùn)行后 五、 時間差異比較及原因5.1 EK KIT硬件調(diào)試時間運(yùn)算運(yùn)行5次 (-)*1.67ns=0.85ms運(yùn)行10次 (-)*1.67ns=1.69ms5.2 從運(yùn)行時間比較來看,DSP運(yùn)行硬件環(huán)境

26、EK KIT板子運(yùn)行時間比較軟件調(diào)試器運(yùn)行時間有大幅度減少,節(jié)省了大量時間。5.3 之所以EK KIT比較軟件調(diào)試器速度有這么大的提高,是因為DSP硬件板子是專門用于數(shù)字信號處理的工具,采用數(shù)據(jù)總線、程序總線分離的結(jié)構(gòu)方式,采用流水技術(shù),大大提高了指令的執(zhí)行速度和效率??傊珼SP硬件較之計算機(jī)有更利于指令加快運(yùn)算速度的結(jié)構(gòu)和技術(shù)設(shè)計,所以才有更快的運(yùn)算速度。實驗九 中斷響應(yīng)、標(biāo)志查詢一、 實驗概述VisualDSP Debug中提供了Interrupts來模仿在程序的執(zhí)行過程中產(chǎn)生隨機(jī)外部中斷。Interrupts 模仿在程序的執(zhí)行過程中產(chǎn)生隨機(jī)外部中斷(IRQ03)和可編程I/O(Flag

27、03),這對調(diào)試中斷服務(wù)程序、執(zhí)行條件指令非常有用。對于外部中斷IRQ03采取中斷服務(wù)程序方式,對于可編程I/O采取查詢方式。二、 實驗步驟1編寫C語言程序調(diào)試外部中斷#include <defts201.h>#include <builtins.h>#include <sysreg.h>#include <signal.h>#pragma align 4section ("data2a") float data110 = #include "data1.dat" /讀取文件data1.dat;#pragm

28、a align 4section ("data2a")float data210 = #include "data2.dat" /讀取文件data2.dat;#pragma align 4section ("data2a")float result10; /為計算結(jié)果分配內(nèi)存int n = 0;int en_flag = 0;void initial(void); /聲明函數(shù)void irq0_isr(void); /聲明函數(shù)void main(void)initial(); /初始化寄存器函數(shù) / irq0_isr() 外部IRQ0

29、中斷服務(wù)子程序,在子程序中斷中置en標(biāo)志位interrupt(SIGIRQ0,irq0_isr);/ intR0的中斷使能_builtin_sysreg_write(_IMASKH,0x);/ 打開全局中斷使能_builtin_sysreg_write(_SQCTLST,SQCTL_GIE); while(1)while(en_flag=1) /當(dāng)檢測到標(biāo)志位為1時 en_flag = 0; /標(biāo)志位清0 resultn = data1n + data2n; /兩數(shù)組按順序相加 n+; /數(shù)組下標(biāo)指向下一個數(shù) if(n=10) break; /跳出while循環(huán) void initial()/

30、配置系統(tǒng)配置寄存器SYSCON 外部總線接口寄存器 _builtin_sysreg_write(_SYSCON,0x279e7); /設(shè)置外部中斷觸發(fā)方式為邊沿觸發(fā),關(guān)閉定時_builtin_sysreg_write(_INTCTL,0x0);void irq0_isr()en_flag = 1; /標(biāo)志位置12添加外部中斷IRQ03設(shè)置斷點在while(en_flag=1)內(nèi)4運(yùn)行程序,記錄數(shù)據(jù)5編寫C語言程序調(diào)試可編程I/O#include <sysreg.h>#include <defts201.h>#include <builtins.h>#include <signal.h>void initial(void); /聲明函數(shù)i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論