【摘要】DSP(Digital Signal Processor)技術(shù)已滲透到各種工業(yè)應(yīng)用的技術(shù)中,并已經(jīng)成為了21世紀(jì)初各種新技術(shù)的共同基礎(chǔ)。因此,DSP技術(shù)在教學(xué)實(shí)踐應(yīng)用中具有重要意義。本文以TI公司的TMS320C5515芯片為基礎(chǔ),為了滿足實(shí)驗(yàn)教學(xué)的需要,擴(kuò)展并開發(fā)了一個(gè)實(shí)驗(yàn)系統(tǒng)。
【關(guān)鍵詞】DSP;教學(xué);實(shí)驗(yàn)
一、實(shí)驗(yàn)項(xiàng)目
本文針對(duì)電子信息類的《DSP原理及應(yīng)用教材》,根據(jù)應(yīng)用型院校學(xué)生的學(xué)情,專門設(shè)置了DSP實(shí)驗(yàn)教學(xué)項(xiàng)目。該項(xiàng)目以CCS(Code Composer Studio)軟件為基礎(chǔ),使用C語(yǔ)言或匯編語(yǔ)言編程。
(一)指令系統(tǒng)類實(shí)驗(yàn)
指令系統(tǒng)類實(shí)驗(yàn)主要包括加、減、乘、乘加運(yùn)算,均可用匯編程序和C程序編碼。在編程中,減法指令中加入了條件減法指令,匯編的乘法指令都是高位相乘,因此需要左移16位。在調(diào)試中,如若調(diào)試結(jié)果不正確,可以執(zhí)行單步運(yùn)行尋找問題。同時(shí)Debug執(zhí)行后可在View里選擇Registers查看寄存器,選擇CPU Registers進(jìn)行查看指令執(zhí)行情況。
(二)I/O接口與中斷類實(shí)驗(yàn)
(1)GPIO實(shí)驗(yàn)
C5515較之前的C55x系列更為復(fù)雜,在這里主要用到1C06H的IODIR1和1C0AH的IODATAOUT1,該裝置包括兩個(gè)寄存器,用于控制GPIO是否被設(shè)置為通用輸入或者輸出。使用GPIO方向寄存器(IODI1和IODIR2)將GPIO引腳設(shè)置為輸入或輸出。給這些位寫一個(gè)“1”配置引腳作為輸出,并寫入“0”配置引腳作為輸入。
(2)PLL實(shí)驗(yàn)
DSP使用軟件可編程鎖相環(huán)產(chǎn)生CPU所需的頻率,PLL的參考時(shí)鐘是從CLKIN pin或RTC片上獲取的。簡(jiǎn)單來說,輸入時(shí)鐘的存在就是作為“參考源”,鎖相環(huán)并不是為了單純的產(chǎn)生同頻同相信號(hào),而是一般集成進(jìn)某種“頻率綜合電路”,產(chǎn)生一個(gè)不同頻但鎖相的信號(hào)。
(3)定時(shí)器實(shí)驗(yàn)
定時(shí)包括4個(gè)寄存器即定標(biāo)計(jì)數(shù)寄存器PRSC,主計(jì)數(shù)寄存器TIM,主周期寄存器PRD和定時(shí)器控制寄存器TCR。其中TDDR和PRD是用于記錄周期的寄存器;PRSC由輸入時(shí)鐘驅(qū)動(dòng)并在每個(gè)輸入時(shí)鐘周期減1,當(dāng)其減到0時(shí),TIM減1;當(dāng)TIM減到0,定時(shí)器會(huì)向CPU發(fā)送一個(gè)中斷請(qǐng)求TINT或者向DMA控制器發(fā)送同步事件。定時(shí)器發(fā)送中斷信號(hào)或同步事件信號(hào)的頻率TINT頻率=輸入時(shí)鐘頻率/(TDDR+1)*(PRD+1) 。
(4)A/D實(shí)驗(yàn)
A/D轉(zhuǎn)換中還需對(duì)SARCTRL寄存器重新賦值,其最高位是start轉(zhuǎn)換,只有將其置1,才能開始數(shù)據(jù)傳遞。SAR A/D模塊可以在2 MHz(500納秒)的最大時(shí)鐘速率下工作,并且需要32個(gè)時(shí)鐘周期轉(zhuǎn)換值,這導(dǎo)致最大采樣率為64 kbps。下列方程描述A/D可編程控制寄存器之間的關(guān)系:SAR A/D時(shí)鐘頻率=(系統(tǒng)時(shí)鐘頻率)/(System Culk+ 1)小于2 MHz;SAR A/D轉(zhuǎn)換時(shí)間=(SAR A/D時(shí)鐘周期* 32)
(5)中斷實(shí)驗(yàn)
C5515芯片擁有數(shù)個(gè)寄存器,在程序運(yùn)行前還需對(duì)其進(jìn)行賦值,DSP的中斷矢量指針(IVPD)指向256字節(jié)的中斷向量表,這些中斷向量供DSP專用。實(shí)驗(yàn)中,需導(dǎo)入中斷向量表即vector.asm文件。當(dāng)定時(shí)器達(dá)到指定時(shí)間時(shí)自動(dòng)跳轉(zhuǎn)到中斷,中斷控制GPIO并使LED燈不斷閃爍。
(三)算法類實(shí)驗(yàn)
算法類實(shí)驗(yàn)主要包括無限沖激響應(yīng)濾波器(IIR)實(shí)驗(yàn)、有限沖激響應(yīng)濾波器(FIR)實(shí)驗(yàn)和快速傅里葉變換(FFT)實(shí)驗(yàn)。
(1)FIR濾波器實(shí)驗(yàn)
實(shí)驗(yàn)之前先要了解FDATOOL,它是MATLAB用來處理圖形化濾波器的一款工具,同時(shí)也能設(shè)計(jì)和分析FIR或IIR等數(shù)字濾波器,如分析濾波器的幅度和相位響應(yīng)及零極點(diǎn)圖。本實(shí)驗(yàn)中數(shù)字濾波器的設(shè)計(jì)過程如下:首先使用FDATOOL設(shè)計(jì)濾波器,然后得到濾波器系數(shù),第三步在CCS中設(shè)計(jì)FIR和IIR濾波器程序,最后輸出波形觀察數(shù)據(jù)。
(2)IIR濾波器實(shí)驗(yàn)
IIR濾波器的設(shè)計(jì)也是利用FDATOOL來獲取系數(shù),不同的是IIR存在反饋回路。因而,其不僅與輸入有關(guān),還與過去時(shí)刻的輸出有關(guān),所以在FDATOOL中需要獲取兩個(gè)系數(shù)。在仿真中按照設(shè)計(jì)的階數(shù)不同,濾波器的效果也隨之不同。
(3)FFT實(shí)驗(yàn)
假定序列x(n)的點(diǎn)數(shù)N是2的冪,按照DIF FFT算法可將其分為偶序列和奇序列。以同樣的方式進(jìn)行抽取可求得N/4點(diǎn)的DFT,重復(fù)抽取過程可使N點(diǎn)的DFT用2點(diǎn)的 DFT來計(jì)算。每一個(gè)2點(diǎn)FFT稱為蝶形,隨著N的不斷增大,F(xiàn)FT的運(yùn)算效率就會(huì)越來越明顯。同時(shí)FFT可將時(shí)域轉(zhuǎn)化為頻域,故而產(chǎn)生了尖峰信號(hào)。調(diào)試過程:在TOOL中選擇Graph中的Dual Time,點(diǎn)擊Run,然后暫停,可查看結(jié)果。
三、總結(jié)
本文主要對(duì)DSP課程中的實(shí)驗(yàn)內(nèi)容,根據(jù)難易程度從三個(gè)層次進(jìn)行了歸納和設(shè)計(jì)。其中指令類和中斷類實(shí)驗(yàn)主要是驗(yàn)證性的,使學(xué)生加深對(duì)理論知識(shí)的理解。而算法類實(shí)驗(yàn)是設(shè)計(jì)性的,促使學(xué)生通過將理論與實(shí)踐結(jié)合起來,達(dá)到學(xué)以致用的目的。
參考文獻(xiàn)
[1]趙洪亮,卜凡亮,黃鶴松.TMS320C55x DSP應(yīng)用系統(tǒng)設(shè)計(jì)(第3版)[M].北京:北京航空航天大學(xué)出版社,2014.
[2]Texas Instruments.TMS320C55x DSP Library Programmers Reference,2013.
作者簡(jiǎn)介:趙艷麗(1986.10—),女,漢族,寧夏固原人,碩士,寧夏理工學(xué)院,助教,研究方向:無線通信技術(shù)。