【正文】
are of MATLAB to design the required digital several function design some universal digital filter,get the coefficient of digital filter,prepare the prophase task of design a digital filter base on DSP.(3)Reach the structure and characteristic of TMS320VC5402,according to the particular characteristic of this digital signal processor,disign an rationalization system structure of digital and integrated design the each part of circuit with different function,process the connection of ADC and DAC with Digital Signal a stability hardware system to realize digital filter.(4)According to the basic structure and characteristic of spectrum 5000 digital signal processor of TI,make the best of of the resource on chip,bined with simulate software MATLAB,realized a high performance and high stability digital filter.Key Words: Digital filter DSP(Digital Signals Processor) FIR(Finity Impulse Respons)目 錄1 引 言 12 緒 論 3 數(shù)字濾波器的優(yōu)點(diǎn) 3 數(shù)字濾波器的發(fā)展動態(tài) 4 濾波器的實(shí)現(xiàn)方法 4 本文的研究內(nèi)容 53 數(shù)字濾波器理論研究 6 數(shù)字濾波器的定義和分類 6 FIR數(shù)字濾波器結(jié)構(gòu)5 64 數(shù)字濾波器的計算機(jī)輔助設(shè)計 8 濾波器的表達(dá)方式 8 FIR濾波器的MATLAB輔助設(shè)計 9 MATLAB軟件數(shù)字濾波器仿真結(jié)果 125 數(shù)字濾波器硬件電路設(shè)計 14 基于DSP的數(shù)字濾波器總體硬件設(shè)計方案 14 TMS320VC5402內(nèi)部硬件結(jié)構(gòu) 14 復(fù)位電路設(shè)計 15 時鐘電路設(shè)計 16 電源設(shè)計 16 JTAG接口設(shè)計 17 內(nèi)部存儲單元及外部存儲擴(kuò)展 17 A/D、D/A轉(zhuǎn)換器件與DSP連接設(shè)計 21 PCB設(shè)計中采用的關(guān)鍵技術(shù) 24 硬件平臺的調(diào)試與結(jié)果 246 數(shù)字濾波器的TMS320VC5402定點(diǎn)實(shí)現(xiàn) 26 DSP芯片的定點(diǎn)運(yùn)算 26 系統(tǒng)初始化程序設(shè)計 27 FIR程序設(shè)計 28 軟件開發(fā)環(huán)境及實(shí)現(xiàn)數(shù)字濾波程序設(shè)計流程 29 軟硬件聯(lián)調(diào)與結(jié)論 317 研究結(jié)論 32參考文獻(xiàn) 33致 謝 34附 錄 35351 引 言一個實(shí)際的應(yīng)用系統(tǒng)中,由于設(shè)備或者是外界環(huán)境的原因,總存在各種干擾,使信號中混入噪聲,譬如音頻信號中高頻成分的噪聲使得音樂聽起來刺耳,失去了原有悅耳的音質(zhì)。主要工作如下:(1)研究數(shù)字濾波器的基本理論,以及數(shù)字濾波器的實(shí)現(xiàn)方法。(3)研究TMS320VC5402器件的結(jié)構(gòu)和特性,根據(jù)該數(shù)字信號處理器的獨(dú)特的特點(diǎn),設(shè)計合適的系統(tǒng)架構(gòu),并系統(tǒng)全面的設(shè)計數(shù)字濾波器的各個模塊電路,合理的處理模數(shù)轉(zhuǎn)換和數(shù)模轉(zhuǎn)換芯片與DSP的連接。用可編程DSP芯片實(shí)現(xiàn)數(shù)字濾波可通過修改濾波器的參數(shù)十分方便地改變?yōu)V波器的特性。自20世紀(jì)70年代末80年代初DSP芯片誕生以來,DSP芯片得到了飛速的發(fā)展。在TI公司DSP的產(chǎn)品中,’C1X’C2X’C2XX’C5XX’C54X’C62X等系列是定點(diǎn)運(yùn)算指令系統(tǒng)的DSPs;’C3X、’C4X、’C67X等系列是浮點(diǎn)運(yùn)算指令系統(tǒng)的DSPs;C8X等系列是多DSPs集成系統(tǒng);’AV7100、AV7110等系列是用于視頻、音頻領(lǐng)域的專用數(shù)字壓縮產(chǎn)品。相對于模擬濾波器數(shù)字濾波器具有以下顯著的優(yōu)點(diǎn):精度高:模擬電路中元件的精度很難達(dá)到103以上,而數(shù)字系統(tǒng)17位字長就可以達(dá)到105精度。Tl公司TMS320CS5000系列的DSP芯片采用8條指令并行處理的結(jié)構(gòu),時鐘頻率為l00MHZ的DSP芯片。Kalman濾波推廣到二維,可以用于圖象的去噪。這種濾波方法的優(yōu)點(diǎn),就是能夠保持信號的邊緣不模糊。(3)用通用的單片機(jī)實(shí)現(xiàn)。(6)用FPGA等可編程器件來開發(fā)數(shù)字濾波算法。③研究TI公司TMS320VC5402數(shù)字信號處理器的內(nèi)部結(jié)構(gòu)及片上資源,并研究通信電子線路中各種接口的相互連接關(guān)系,設(shè)計了一個價格低、功耗小、精度高的數(shù)字濾波器系統(tǒng)。隨著數(shù)字技術(shù)的發(fā)展,用數(shù)字技術(shù)實(shí)現(xiàn)濾波器的功能越來越受到人們的注意和廣泛的應(yīng)用。當(dāng)時,即可得到下圖所示的具體結(jié)構(gòu)。MATLAB的信號處理工具箱的兩個基本組成就是濾波器的設(shè)計和實(shí)現(xiàn)以及頻譜分析。在本畢業(yè)設(shè)計中只介紹濾波器的傳遞函數(shù)模型。窗函數(shù)設(shè)計技術(shù)是FIR濾波器設(shè)計的主要方法之一,由于其運(yùn)算方便,物理意義直觀,己成為工程實(shí)踐中應(yīng)用最為廣泛的方法。向量F和M指定濾波器的采樣點(diǎn)的頻率及其幅值。FIR階數(shù)估計(低通、高通、帶通、多頻帶)renezord(),語法格式為[N, Fo,An,W]=remezord(F,A,DEV,F(xiàn)s)返回調(diào)用:remez()函數(shù)需要給定的輸入?yún)?shù)即階數(shù)N,歸一化頻帶邊緣Fo,頻帶幅值A(chǔ)o和權(quán)值W。Chebyshev窗函數(shù)chebwin(),語法格式為chebwin (N)返回一N點(diǎn)Chebyshev窗,其紋波為R(dB),N必須為奇數(shù)。[h,f]=freqz(b)。該DSP具有較快的運(yùn)算速度:運(yùn)算速度最快可達(dá)532MIPS。 TMS320VC5402內(nèi)部硬件結(jié)構(gòu)TMS320VC5402是定點(diǎn)的數(shù)字信號處理器。器片內(nèi)存儲器的種類只要有以下幾種:雙訪問RAM(DARAM),單訪問RAM(SRAM)和ROM。 復(fù)位電路設(shè)計為了確保系統(tǒng)能夠穩(wěn)定的工作,復(fù)位電路是系統(tǒng)中必不可少的電路。自動復(fù)位電路除了具有上電復(fù)位功能外,還具有監(jiān)視系統(tǒng)運(yùn)行并在系統(tǒng)發(fā)生故障或死機(jī)時再次復(fù)位的功能。 DSP時鐘電路原理圖 電源設(shè)計為了降低芯片的功耗,DSP5402芯片采用低電壓供電方式,并且采用內(nèi)核電壓和I/0電壓分開的方式。在本系統(tǒng)的設(shè)計中采用了兩片AMS1117來提供DSP芯片的I/O電源和內(nèi)核電源。 JTAG接口設(shè)計JTAG(Joint Test Action Group)是1985年制定的檢測PCB和IC芯片的一個標(biāo)準(zhǔn),1990年被修改后成為IEEE的一個標(biāo)準(zhǔn)。而仿真器通過仿真接口實(shí)現(xiàn)與DSP之間的數(shù)據(jù)交互。 外部總線及外部存儲器接口通常一個DSP系統(tǒng)除了DSP芯片外,還需要外部的存儲器。擴(kuò)展存儲器引腳信號定義外部接口總線是一組并行接口。 外部總線擴(kuò)展Flash實(shí)現(xiàn)8位并行B00TTMS320VC5402內(nèi)部具有ZK字的BOOT ROM,為脫機(jī)運(yùn)行提供了五種啟動裝載模式:HPI端口啟動模式、標(biāo)準(zhǔn)串口啟動模式、I/O口啟動模式、串口EEPROM啟動模式和并行啟動方式。使用外部并行BOOT時,B00T程序首先讀入外部數(shù)據(jù)區(qū)的FFFEH和FFFFH兩個地址的內(nèi)容,并把它們組裝成一個16為字作為代碼存放的源地址,根據(jù)這個地址,從外部數(shù)據(jù)區(qū)讀入連續(xù)的兩個8位字節(jié),并組裝成一個16位字,如果這個16位字是08AAH,則BOOT程序就知道是外部8位并行BOOT方式,否則是其他BOOT方式。因此,取樣定理規(guī)定了A/D轉(zhuǎn)換的頻率下限。把量化的數(shù)值用二進(jìn)制代碼表示,稱為編碼。常用最低有效位的倍數(shù)表示。其中每個取樣和轉(zhuǎn)換過程需要16個系統(tǒng)工作時鐘,因此只有當(dāng)時,系統(tǒng)才能正常的工作。此外,DA/轉(zhuǎn)換器也可以用能分辨的最小輸出電壓(此時輸入的數(shù)字代碼只有最低有效位為1,其余各位都是0)與最大輸出電壓(此時輸入的數(shù)字代碼各有效位全為1)之比給出。從功能時序圖可以看出該器件包含八個高速的10位。DPS5402的McBSP串口工作于時鐘停止模式時與SPI協(xié)議兼容。如果電路中的信號能夠以要求的時序、持續(xù)時間和電壓幅度到達(dá)接收端,則該電路具有較好的信號完整性。為保證系統(tǒng)的電源完整性,在輸入5V電源、在所有芯片的各個電源管腳處都增加了去禍電容。上電后應(yīng)快速檢測電路板上主要電源芯片的輸出電壓和DSP內(nèi)核電壓,若電壓值不正確應(yīng)立即斷電檢查原因以免損壞電路板上器件。6 數(shù)字濾波器的TMS320VC5402定點(diǎn)實(shí)現(xiàn) DSP芯片的定點(diǎn)運(yùn)算在定點(diǎn)DSP芯片中,采用定點(diǎn)數(shù)進(jìn)行數(shù)值運(yùn)算,其操作數(shù)一般采用整型來表示。那么,DSP芯片是如何處理小數(shù)的呢?應(yīng)該說,DSP芯片本身無能為力。從上表中還可以看出,不同的Q表示的數(shù)不僅范圍不同,而且精度也不相同。DSP5402共有三個控制和狀態(tài)寄存器,對CPU的控制是通過CPU狀態(tài)和控制寄存器來完成的。對寄存器進(jìn)行初始化主要包括:狀態(tài)寄存器ST0、狀態(tài)寄存器ST處理器模式控制寄存器PMST、軟件等待狀態(tài)寄存器SWWSR、組交換控制寄存器BSCR和時鐘模式寄存器CLKMD。為了是McBSP接口工作在所希望的模式下,必須在初始化時多相關(guān)寄存器進(jìn)行正確的配置。輸入數(shù)據(jù)和濾波器系數(shù)均小于1,以Q15表示,將FRCT,標(biāo)志置1,輸入數(shù)據(jù)與濾波器系數(shù)乘完后結(jié)果自動左移一位,和累加器并取高16位輸出。利用TMS32OVC5402的FIRS指令和循環(huán)尋址,可以更簡潔的方法實(shí)現(xiàn)對稱抽頭的FRI濾波器。CCS具有強(qiáng)大的源代碼編輯器,允許編輯C語言源代碼和匯編源代碼,能在C代碼之后顯示與之對應(yīng)的匯編指令。 數(shù)字濾波程序設(shè)計流程下圖是利用DSP實(shí)現(xiàn)數(shù)字濾波的流程圖,說明如下:利用DSP實(shí)現(xiàn)FIR數(shù)字濾波的子程序設(shè)計思路如下:,當(dāng)為1時說明read ready,將DRR11的值讀入AR3所指向的地址,該值為最新的采樣值。中斷矢量表是每個DSP系統(tǒng)必須用到的,對中斷矢量表進(jìn)行初始化是DSP初始化的一個重要的部分。7 研究結(jié)論通過對數(shù)字濾波的理論研究、MATLAB軟件在數(shù)字信號處理的研究、對DSP技術(shù)的學(xué)習(xí)與研究,本畢業(yè)設(shè)計最終設(shè)計并實(shí)現(xiàn)了一種基于TI公司定點(diǎn)數(shù)字信號處理器TMS320VC5402的數(shù)字濾波器系統(tǒng)。⑤研究了如何在定點(diǎn)DSP中實(shí)現(xiàn)數(shù)字濾波器的算法,主要是有限長沖激響應(yīng)數(shù)字濾波器的算法。感謝所有在我學(xué)習(xí)期間,給予我?guī)椭完P(guān)心的同學(xué)和朋友們。⑥研究了TI公司DSP系統(tǒng)開發(fā)工具的應(yīng)用,結(jié)合平時積累的數(shù)字電路調(diào)試經(jīng)驗,利用實(shí)驗室的現(xiàn)有資源對所開發(fā)的系統(tǒng)進(jìn)行了長時間的調(diào)試,使得軟件程序能在硬件平臺上得以穩(wěn)定的運(yùn)行。當(dāng)給系統(tǒng)送入一個包含1k、3k、5k的正弦波模擬信號源作為系統(tǒng)的輸入信號源,并將MATLAB仿真得到的數(shù)字濾波器的系數(shù)帶入所編寫的程序代碼中,編譯運(yùn)行后實(shí)驗結(jié)果符合預(yù)期結(jié)果。本系統(tǒng)的聯(lián)調(diào)過程和實(shí)際結(jié)果如下:①在電腦中設(shè)置本系統(tǒng)軟件開發(fā)環(huán)境的相關(guān)配置,連接DSP仿真器與目標(biāo)測試系統(tǒng)的JTAG接口,給系統(tǒng)上電。并將Y加上200h。在使用CCS調(diào)試工具時能設(shè)置一個或多個斷點(diǎn)。DSP芯片的開發(fā)工具可以分為代碼生成工具和代碼調(diào)試工具兩類。因為采用MAC指令和循環(huán)尋址,所以輸入數(shù)據(jù)和濾波器系數(shù)的存放要安照一定的要求。FIR數(shù)字濾波器每個樣值的計算就是實(shí)現(xiàn)兩數(shù)組對應(yīng)項乘積的累加和。在TMS32OVC5402中,要求每個中斷矢量占4個字,如果跳轉(zhuǎn)指令不夠4個字,可用NOP指令填充,每個NOP占一個字。DSP不同條件和模式下的狀態(tài)都包含ST0和ST1:PMST包含存儲器設(shè)置狀態(tài)和控制信息。相反,Q越小,數(shù)值范圍越大,但精度越低。這就是數(shù)的定標(biāo)。顯然,字長越長,所能表示的數(shù)的范圍越大,精度也越高。③檢測系統(tǒng)的復(fù)位信號是否工作正常,系統(tǒng)在復(fù)位后部分器件會檢測自身的工作狀態(tài),如果復(fù)位信號工作不正常很大程度上會影響整個系統(tǒng)的工作狀態(tài),使系統(tǒng)不能實(shí)現(xiàn)預(yù)期的功能。 硬件平臺的調(diào)試與結(jié)果DSP系統(tǒng)的開發(fā)是一個復(fù)雜的過程,在系統(tǒng)的設(shè)計和調(diào)試中不但需要數(shù)字信號處理方面的理論知識,而且還需要對各種DSP芯片、外圍硬件電路以及DSP開發(fā)工具等都具有豐富的實(shí)際開發(fā)經(jīng)驗。因此PCB設(shè)計過程特別注意了關(guān)鍵信號的走線