第3章DSP新技術(shù)_第1頁(yè)
第3章DSP新技術(shù)_第2頁(yè)
第3章DSP新技術(shù)_第3頁(yè)
第3章DSP新技術(shù)_第4頁(yè)
第3章DSP新技術(shù)_第5頁(yè)
已閱讀5頁(yè),還剩130頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、2022-5-11信息學(xué)科立體化教材1第第3章章 DSPDSP新技術(shù)新技術(shù) 3.1 DSPDSP新技術(shù)概述新技術(shù)概述3.2 DSPDSP開發(fā)設(shè)計(jì)開發(fā)設(shè)計(jì)3.3 DSPDSP新技術(shù)展望新技術(shù)展望X2022-5-11信息學(xué)科立體化教材23.1 DSP DSP新技術(shù)概述新技術(shù)概述3.1.1 平臺(tái)介紹平臺(tái)介紹 3.1.2 DSPDSP開發(fā)環(huán)境及工具開發(fā)環(huán)境及工具 3.1.3 DSPDSP應(yīng)用領(lǐng)域應(yīng)用領(lǐng)域 X2022-5-11信息學(xué)科立體化教材33.1.1 平臺(tái)介紹平臺(tái)介紹 數(shù)字信號(hào)處理分為硬件實(shí)現(xiàn)和軟件實(shí)現(xiàn)兩大類。數(shù)字信號(hào)處理分為硬件實(shí)現(xiàn)和軟件實(shí)現(xiàn)兩大類。 所謂硬件實(shí)現(xiàn)是指采用通用或?qū)S眯酒约八^硬

2、件實(shí)現(xiàn)是指采用通用或?qū)S眯酒约皹?gòu)成滿足數(shù)字信號(hào)處理任務(wù)要求的目標(biāo)系統(tǒng)。構(gòu)成滿足數(shù)字信號(hào)處理任務(wù)要求的目標(biāo)系統(tǒng)。 目前主要目前主要DSPDSP芯片生產(chǎn)商是美國(guó)德州儀器公司(芯片生產(chǎn)商是美國(guó)德州儀器公司(Texas Texas InstrumentsInstruments,TITI),廣泛使用的),廣泛使用的TI DSPTI DSP有三個(gè)系列:有三個(gè)系列:C2000C2000,C5000C5000,C6000C6000。 X2022-5-11信息學(xué)科立體化教材43.1.1 平臺(tái)介紹平臺(tái)介紹TMS320C2000TMS320C2000系列系列 C2000 C2000系列面向量大面廣的工業(yè)產(chǎn)品控制系

3、列面向量大面廣的工業(yè)產(chǎn)品控制, , 高性能低價(jià)位。高性能低價(jià)位。 C24x C24x系列是系列是16bit16bit定點(diǎn)定點(diǎn)DSP, C28xDSP, C28x系列是系列是32 bit32 bit定點(diǎn)定點(diǎn)DSP, C28xDSP, C28x系列具有更高的精度。系列具有更高的精度。 C24x C24x系列的時(shí)鐘在系列的時(shí)鐘在202030MHz30MHz之間之間, , 運(yùn)算能力為運(yùn)算能力為202040MI/s, 40MI/s, C28xC28x的時(shí)鐘可達(dá)的時(shí)鐘可達(dá)150MHz, 150MHz, 運(yùn)算能力也可高達(dá)運(yùn)算能力也可高達(dá)400MI/s400MI/s。 C24x C24x系列片上系列片上RAM

4、RAM最大可達(dá)最大可達(dá)2.52.5千字千字, Flash, Flash最大可達(dá)最大可達(dá)3232千字千字, , C28xC28x系列片上系列片上RAMRAM最大可達(dá)最大可達(dá)1818千字千字, Flash, Flash最大可達(dá)最大可達(dá)128128千字。千字。 C24x C24x系列片上集成有系列片上集成有8 8或或1616通道、通道、10bit10bit的的A/DA/D轉(zhuǎn)換器,轉(zhuǎn)換器,8 81616通道的脈寬調(diào)制器,通道的脈寬調(diào)制器,C28xC28x系列片上集成的系列片上集成的A/DA/D轉(zhuǎn)換器是轉(zhuǎn)換器是12bit12bit,均,均為為1616通道,脈寬調(diào)制器也均為通道,脈寬調(diào)制器也均為1616通

5、道。通道。 C2000 C2000系列片上均有加法器、乘法器、各種寄存器,除了通用系列片上均有加法器、乘法器、各種寄存器,除了通用的定時(shí)器外,還有監(jiān)視定時(shí)器,并具有的定時(shí)器外,還有監(jiān)視定時(shí)器,并具有JTAGJTAG仿真控制器。仿真控制器。 X2022-5-11信息學(xué)科立體化教材53.1.1 平臺(tái)介紹平臺(tái)介紹TMS320C5000TMS320C5000系列系列 C5000 C5000定位于通信類應(yīng)用,在保持高性能的前提下盡可能降低定位于通信類應(yīng)用,在保持高性能的前提下盡可能降低芯片的功耗,從而有利于便攜式通信產(chǎn)品的推出。芯片的功耗,從而有利于便攜式通信產(chǎn)品的推出。 C54x C54x是是16bi

6、t16bit定位定位DSPDSP,時(shí)鐘頻率為,時(shí)鐘頻率為40/50/66/80MHz, 40/50/66/80MHz, 運(yùn)算能運(yùn)算能力為力為40/50/66/80MI/s40/50/66/80MI/s;大部分;大部分C54xC54x產(chǎn)品的產(chǎn)品的I/OI/O口的供電為口的供電為3.3V, 3.3V, CPUCPU核的供電也為核的供電也為3.3V3.3V,最近推出的產(chǎn)品如,最近推出的產(chǎn)品如C5402C5402的核則采用的核則采用1.8V1.8V供電,大大降低了功耗。供電,大大降低了功耗。 C55x C55x是建立在是建立在C54xC54x硬件結(jié)構(gòu)基礎(chǔ)上的,因此也是硬件結(jié)構(gòu)基礎(chǔ)上的,因此也是16bi

7、t16bit定位定位DSPDSP,它的最大特點(diǎn)是在提高,它的最大特點(diǎn)是在提高DSPDSP能力的同時(shí)進(jìn)一步降低了功耗,能力的同時(shí)進(jìn)一步降低了功耗,因?yàn)樗捎昧讼冗M(jìn)的自動(dòng)電源管理技術(shù),對(duì)所有外圍設(shè)備、存儲(chǔ)因?yàn)樗捎昧讼冗M(jìn)的自動(dòng)電源管理技術(shù),對(duì)所有外圍設(shè)備、存儲(chǔ)器陣列、器陣列、CPUCPU的各個(gè)單元進(jìn)行監(jiān)視,暫時(shí)不工作的部分則停止對(duì)的各個(gè)單元進(jìn)行監(jiān)視,暫時(shí)不工作的部分則停止對(duì)其供電。其供電。 X2022-5-11信息學(xué)科立體化教材63.1.1 平臺(tái)介紹平臺(tái)介紹TMS320C6000TMS320C6000系列系列 C6000 C6000系列定位于高檔次的應(yīng)用,如多媒體、圖像及其他超高系列定位于高檔次的

8、應(yīng)用,如多媒體、圖像及其他超高速信號(hào)處理的場(chǎng)合。速信號(hào)處理的場(chǎng)合。 C6000 C6000系列能獨(dú)立地從寄存器文件讀取系列能獨(dú)立地從寄存器文件讀取/ /存儲(chǔ)數(shù)據(jù),而且可以存儲(chǔ)數(shù)據(jù),而且可以實(shí)現(xiàn)實(shí)現(xiàn)8 8個(gè)功能單元并行工作。個(gè)功能單元并行工作。 C62x C62x是是32bit32bit定點(diǎn)定點(diǎn)DSPDSP,支持,支持8/16/328/16/32位數(shù)據(jù)運(yùn)算;位數(shù)據(jù)運(yùn)算;C67xC67x是是32bit32bit浮點(diǎn)浮點(diǎn)DSPDSP,但它具有單精度(,但它具有單精度(3232位)和雙精度(位)和雙精度(6464位)位)IEEEIEEE浮點(diǎn)操作的硬件支持,浮點(diǎn)操作的硬件支持,C64xC64x是是TIT

9、I公司最高性能的公司最高性能的DSPDSP,整體性能,整體性能比比C62xC62x系列提高了近十倍,但是功耗僅是系列提高了近十倍,但是功耗僅是C62xC62x的的1/31/3,并且在軟,并且在軟件上和件上和C62xC62x完全兼容。完全兼容。 X2022-5-11信息學(xué)科立體化教材73.1.1 平臺(tái)介紹平臺(tái)介紹 所謂軟件實(shí)現(xiàn),是指在通用的計(jì)算機(jī)上,用軟件來實(shí)所謂軟件實(shí)現(xiàn),是指在通用的計(jì)算機(jī)上,用軟件來實(shí)現(xiàn)信號(hào)處理的某一方面的理論。現(xiàn)信號(hào)處理的某一方面的理論。 在與處理器無關(guān)的設(shè)計(jì)中,通常采用在與處理器無關(guān)的設(shè)計(jì)中,通常采用C C或或C+C+之類的高之類的高級(jí)語(yǔ)言;處理器相關(guān)軟件需要編寫匯編程序

10、。級(jí)語(yǔ)言;處理器相關(guān)軟件需要編寫匯編程序。 X2022-5-11信息學(xué)科立體化教材83.1.2 DSP DSP開發(fā)環(huán)境及工具開發(fā)環(huán)境及工具 1.1.開發(fā)環(huán)境工具開發(fā)環(huán)境工具CCSCCS 代碼集成開發(fā)環(huán)境代碼集成開發(fā)環(huán)境Code Composer StudioCode Composer Studio(CCSCCS)是開)是開發(fā)發(fā)TI DSPTI DSP的必備軟件平臺(tái),它是一個(gè)完整的的必備軟件平臺(tái),它是一個(gè)完整的DSPDSP集成開發(fā)集成開發(fā)環(huán)境,也是目前使用得最為廣泛的環(huán)境,也是目前使用得最為廣泛的DSPDSP開發(fā)軟件之一。開發(fā)軟件之一。X2022-5-11信息學(xué)科立體化教材93.1.2 DSP

11、DSP開發(fā)環(huán)境及工具開發(fā)環(huán)境及工具 運(yùn)行主窗口運(yùn)行主窗口 Document windowsX2022-5-11信息學(xué)科立體化教材103.1.2 DSP DSP開發(fā)環(huán)境及工具開發(fā)環(huán)境及工具 TI TI的的DSPDSP的開發(fā)環(huán)境和工具主要包括以下三個(gè)部的開發(fā)環(huán)境和工具主要包括以下三個(gè)部分:分: (1 1)代碼生成工具(編譯器,連接器,優(yōu)化)代碼生成工具(編譯器,連接器,優(yōu)化C C編編譯器,轉(zhuǎn)換工具等);譯器,轉(zhuǎn)換工具等); (2 2)系統(tǒng)集成及調(diào)試環(huán)境與工具;)系統(tǒng)集成及調(diào)試環(huán)境與工具;(3 3)實(shí)時(shí)操作系統(tǒng)。)實(shí)時(shí)操作系統(tǒng)。X2022-5-11信息學(xué)科立體化教材113.1.2 DSP DSP開發(fā)

12、環(huán)境及工具開發(fā)環(huán)境及工具 CCSCCS所包含功能有:所包含功能有:(1)(1)集成可視化代碼編輯界面,可直接編寫集成可視化代碼編輯界面,可直接編寫C C、匯編、匯編、.H.H文文件、件、.cmd.cmd文件等。文件等。(2)(2)集成代碼生成工具,包括匯編器、優(yōu)化集成代碼生成工具,包括匯編器、優(yōu)化C C編譯器、連接器等。編譯器、連接器等。(3)(3)基本調(diào)試工具,如裝入執(zhí)行代碼基本調(diào)試工具,如裝入執(zhí)行代碼(.out(.out文件文件) ),查看寄存器,查看寄存器窗口,存儲(chǔ)器窗口,反匯編窗口,變量窗口等,支持窗口,存儲(chǔ)器窗口,反匯編窗口,變量窗口等,支持C C源代碼源代碼級(jí)調(diào)試。級(jí)調(diào)試。(4)(

13、4)支持多支持多DSPDSP調(diào)試。調(diào)試。(5)(5)斷點(diǎn)工具,包括硬件斷點(diǎn)、數(shù)據(jù)空間讀斷點(diǎn)工具,包括硬件斷點(diǎn)、數(shù)據(jù)空間讀/ /寫斷點(diǎn),條件斷點(diǎn)寫斷點(diǎn),條件斷點(diǎn)等。等。(6)(6)探針工具探針工具(probe points)(probe points),可用于算法仿真,數(shù)據(jù)監(jiān)視等。,可用于算法仿真,數(shù)據(jù)監(jiān)視等。X2022-5-11信息學(xué)科立體化教材123.1.2 DSP DSP開發(fā)環(huán)境及工具開發(fā)環(huán)境及工具 (7)(7)剖析工具剖析工具(profile points)(profile points),可用于評(píng)估代碼執(zhí)行的時(shí)鐘,可用于評(píng)估代碼執(zhí)行的時(shí)鐘數(shù)。數(shù)。(8)(8)數(shù)據(jù)的圖形顯示工具,可繪制時(shí)

14、域數(shù)據(jù)的圖形顯示工具,可繪制時(shí)域/ /頻域波形、眼圖、星座頻域波形、眼圖、星座圖、圖像等,并可自動(dòng)刷新。圖、圖像等,并可自動(dòng)刷新。(9)(9)提供提供GELGEL工具,令用戶可以編寫自己的控制面板工具,令用戶可以編寫自己的控制面板/ /菜單。菜單。(10)(10)支持實(shí)時(shí)數(shù)據(jù)交換支持實(shí)時(shí)數(shù)據(jù)交換(RTDX)(RTDX)技術(shù),利用該技術(shù)可在不中斷目技術(shù),利用該技術(shù)可在不中斷目標(biāo)系統(tǒng)運(yùn)行的情況下,實(shí)現(xiàn)標(biāo)系統(tǒng)運(yùn)行的情況下,實(shí)現(xiàn)DSPDSP與其它應(yīng)用程序與其它應(yīng)用程序(OLE)(OLE)實(shí)現(xiàn)數(shù)據(jù)實(shí)現(xiàn)數(shù)據(jù)交換。交換。(11)(11)開放式的插入開放式的插入(plug-ins)(plug-ins)技術(shù),支

15、持其它第三方的技術(shù),支持其它第三方的ActiveXActiveX插件,支持各種仿真器包括軟仿真。插件,支持各種仿真器包括軟仿真。(12)(12)提供提供DSP/BIOSDSP/BIOS工具,利用該工具可增強(qiáng)對(duì)代碼的實(shí)時(shí)分析工具,利用該工具可增強(qiáng)對(duì)代碼的實(shí)時(shí)分析能力。能力。 X2022-5-11信息學(xué)科立體化教材133.1.2 DSP DSP開發(fā)環(huán)境及工具開發(fā)環(huán)境及工具 . .開發(fā)環(huán)境工具開發(fā)環(huán)境工具DSP BuilderDSP Builder DSP BuilderDSP Builder是數(shù)字信號(hào)處理開發(fā)工具之一,可以是數(shù)字信號(hào)處理開發(fā)工具之一,可以實(shí)現(xiàn)基于實(shí)現(xiàn)基于DSP BuilderDSP

16、 Builder的的FPGAFPGA設(shè)計(jì)。該工具實(shí)現(xiàn)了設(shè)計(jì)。該工具實(shí)現(xiàn)了QuartusQuartus II II軟件和軟件和The The MathWorksMathWorks MATLAB/ MATLAB/SimulinkSimulink工工具之間的接口。具之間的接口。 X2022-5-11信息學(xué)科立體化教材143.1.2 DSP DSP開發(fā)環(huán)境及工具開發(fā)環(huán)境及工具DSP BuilderDSP Builder設(shè)計(jì)流程設(shè)計(jì)流程X2022-5-11信息學(xué)科立體化教材153.1.3 DSP DSP應(yīng)用領(lǐng)域應(yīng)用領(lǐng)域DSPDSP芯片的應(yīng)用主要有:芯片的應(yīng)用主要有:(1) (1) 信號(hào)處理信號(hào)處理如數(shù)字

17、濾波、自適應(yīng)濾波、快速傅立葉變換、如數(shù)字濾波、自適應(yīng)濾波、快速傅立葉變換、相關(guān)運(yùn)算、譜分析、卷積、模式匹配、加窗、波形產(chǎn)生等;相關(guān)運(yùn)算、譜分析、卷積、模式匹配、加窗、波形產(chǎn)生等;(2) (2) 通信通信如調(diào)制解調(diào)器、自適應(yīng)均衡、數(shù)據(jù)加密、數(shù)據(jù)壓如調(diào)制解調(diào)器、自適應(yīng)均衡、數(shù)據(jù)加密、數(shù)據(jù)壓縮、回波抵消、多路復(fù)用、傳真、擴(kuò)頻通信、糾錯(cuò)編碼、可縮、回波抵消、多路復(fù)用、傳真、擴(kuò)頻通信、糾錯(cuò)編碼、可視電話、軟件無線電、波形合成器、檢測(cè)等;視電話、軟件無線電、波形合成器、檢測(cè)等;(3) (3) 語(yǔ)音語(yǔ)音如語(yǔ)音編碼、語(yǔ)音合成、語(yǔ)音識(shí)別、語(yǔ)音增強(qiáng)、如語(yǔ)音編碼、語(yǔ)音合成、語(yǔ)音識(shí)別、語(yǔ)音增強(qiáng)、說話人辨認(rèn)、說話人確認(rèn)

18、、語(yǔ)音郵件、語(yǔ)音存儲(chǔ)、三維音頻說話人辨認(rèn)、說話人確認(rèn)、語(yǔ)音郵件、語(yǔ)音存儲(chǔ)、三維音頻合成器、環(huán)繞音效處理、音響效果發(fā)生器等;合成器、環(huán)繞音效處理、音響效果發(fā)生器等;(4) (4) 圖形圖形/ /圖像圖像如二維和三維圖形處理、圖像壓縮與傳輸、如二維和三維圖形處理、圖像壓縮與傳輸、圖像增強(qiáng)、數(shù)碼相機(jī)、動(dòng)畫、模式識(shí)別、三維旋轉(zhuǎn)、機(jī)器人圖像增強(qiáng)、數(shù)碼相機(jī)、動(dòng)畫、模式識(shí)別、三維旋轉(zhuǎn)、機(jī)器人視覺等;視覺等;X2022-5-11信息學(xué)科立體化教材163.1.3 DSP DSP應(yīng)用領(lǐng)域應(yīng)用領(lǐng)域(5) (5) 軍事軍事如保密通信、雷達(dá)處理、聲納處理、導(dǎo)航、導(dǎo)彈如保密通信、雷達(dá)處理、聲納處理、導(dǎo)航、導(dǎo)彈制導(dǎo)等;制導(dǎo)

19、等;(6) (6) 儀器儀表儀器儀表如頻譜分析、測(cè)量設(shè)備、函數(shù)發(fā)生、鎖相環(huán)、如頻譜分析、測(cè)量設(shè)備、函數(shù)發(fā)生、鎖相環(huán)、地震處理等數(shù)字濾波、模式匹配、瞬態(tài)分析等;地震處理等數(shù)字濾波、模式匹配、瞬態(tài)分析等;(7) (7) 自動(dòng)控制自動(dòng)控制如引擎控制、聲控、自動(dòng)駕駛、機(jī)器人控制、如引擎控制、聲控、自動(dòng)駕駛、機(jī)器人控制、磁盤控制、激光打印控制、電動(dòng)機(jī)控制、數(shù)字控制、安全訪磁盤控制、激光打印控制、電動(dòng)機(jī)控制、數(shù)字控制、安全訪問等;問等;(8) (8) 醫(yī)療醫(yī)療如數(shù)字助聽、超聲設(shè)備、診斷工具、胎兒監(jiān)護(hù)、如數(shù)字助聽、超聲設(shè)備、診斷工具、胎兒監(jiān)護(hù)、病人監(jiān)護(hù)等;病人監(jiān)護(hù)等;(9) (9) 家用電器家用電器如高保真

20、音響、音樂合成、音調(diào)控制、玩具如高保真音響、音樂合成、音調(diào)控制、玩具與游戲、數(shù)字電話與游戲、數(shù)字電話/ /電視等。電視等。 X2022-5-11信息學(xué)科立體化教材173.2 DSP DSP開發(fā)設(shè)計(jì)開發(fā)設(shè)計(jì)3.2.1 3.2.1 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 3.2.2 3.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSPDSP設(shè)計(jì)設(shè)計(jì) 3.2.3 3.2.3 用用C C語(yǔ)言和匯編語(yǔ)言混合編程語(yǔ)言和匯編語(yǔ)言混合編程 3.2.4 3.2.4 用用C C語(yǔ)言開發(fā)語(yǔ)言開發(fā)DSPDSP嵌入式系統(tǒng)嵌入式系統(tǒng) 3.2.5 3.2.5 基于基于MatlabMatlab的系統(tǒng)級(jí)的設(shè)計(jì)方法的系統(tǒng)級(jí)的

21、設(shè)計(jì)方法 3.2.6 3.2.6 結(jié)合的設(shè)計(jì)結(jié)合的設(shè)計(jì)X2022-5-11信息學(xué)科立體化教材183.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具1 1集成開發(fā)環(huán)境集成開發(fā)環(huán)境編譯器(編譯器(CompilerCompiler) 包括分析器、優(yōu)化器和代碼產(chǎn)生器,它接收包括分析器、優(yōu)化器和代碼產(chǎn)生器,它接收C/C+C/C+源源代碼并產(chǎn)生代碼并產(chǎn)生TMS320C54xTMS320C54x匯編語(yǔ)言源代碼。匯編語(yǔ)言源代碼。匯編器(匯編器(AssemblerAssembler) 將匯編語(yǔ)言源程序轉(zhuǎn)換成機(jī)器語(yǔ)言目標(biāo)文件,這些目將匯編語(yǔ)言源程序轉(zhuǎn)換成機(jī)器語(yǔ)言目標(biāo)文件,這些目標(biāo)文件都是公共目標(biāo)文件格式(標(biāo)

22、文件都是公共目標(biāo)文件格式(COFFCOFF)。)。鏈接器鏈接器(1 1)根據(jù)鏈接命令文件()根據(jù)鏈接命令文件(. .cmdcmd文件)將一個(gè)或多個(gè)文件)將一個(gè)或多個(gè)COFFCOFF目目標(biāo)文件鏈接起來,生成存儲(chǔ)器映象文件(標(biāo)文件鏈接起來,生成存儲(chǔ)器映象文件(.map.map)和可執(zhí)行)和可執(zhí)行的輸出文件(的輸出文件(.out.out文件)。文件)。(2 2)將段定位于實(shí)際系統(tǒng)的存儲(chǔ)器中,給段、符號(hào)指定實(shí))將段定位于實(shí)際系統(tǒng)的存儲(chǔ)器中,給段、符號(hào)指定實(shí)際地址。際地址。(3 3)解決輸入文件之間未定義的外部符號(hào)引用。)解決輸入文件之間未定義的外部符號(hào)引用。 X2022-5-11信息學(xué)科立體化教材19

23、3.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具2 2用用CCSCCS開發(fā)簡(jiǎn)單的程序開發(fā)簡(jiǎn)單的程序 創(chuàng)建新的工程文件創(chuàng)建新的工程文件 在在CCSCCS的安裝目錄的的安裝目錄的myprojectsmyprojects子目錄下創(chuàng)建一個(gè)子目錄下創(chuàng)建一個(gè)volume1volume1目錄。目錄。 啟動(dòng)啟動(dòng)CCSCCS,在,在ProjectProject菜單中選擇菜單中選擇NewNew項(xiàng),在項(xiàng),在ProjectProject中輸入中輸入volume1volume1,CCSCCS將創(chuàng)建一個(gè)名為將創(chuàng)建一個(gè)名為volume1.pjtvolume1.pjt的工程。的工程。 X2022-5-11信息學(xué)科立體

24、化教材203.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 將文件添加到工程中將文件添加到工程中 在在PROJECTPROJECT菜單中選取菜單中選取ADDADDFiles to Project,Files to Project,可以可以將事先創(chuàng)建的文件添加到將事先創(chuàng)建的文件添加到該工程文件中。該工程文件中。 察看工程的結(jié)構(gòu)。察看工程的結(jié)構(gòu)。 逐層打開工程視窗,雙擊逐層打開工程視窗,雙擊load.asmload.asm或或vectors.asmvectors.asm, ,可以觀察和修改擴(kuò)展名可以觀察和修改擴(kuò)展名為為. .asmasm文件的內(nèi)容。文件的內(nèi)容。工程視窗工程視窗X2022-5

25、-11信息學(xué)科立體化教材213.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 生成和運(yùn)行程序生成和運(yùn)行程序 選擇菜單命令選擇菜單命令ProjectRebuildProjectRebuild All All,對(duì)工程重新編譯、,對(duì)工程重新編譯、匯編和鏈接,主窗口下方的信息窗口將顯示匯編和鏈接,主窗口下方的信息窗口將顯示buildbuild進(jìn)行匯進(jìn)行匯編、編譯和鏈接的相關(guān)信息。編、編譯和鏈接的相關(guān)信息。 選擇菜單命令選擇菜單命令FileLoadFileLoad Program Program,在當(dāng)前目錄的,在當(dāng)前目錄的DebugDebug目錄下選擇目錄下選擇volume1.outvolume

26、1.out并打開,將并打開,將BuildBuild生成的程序加載生成的程序加載到到DSPDSP中。中。 選擇菜單命令選擇菜單命令DebugRunDebugRun或在或在DebugDebug工具欄上單擊工具欄上單擊RunRun按鈕,按鈕,運(yùn)行該程序。運(yùn)行該程序。 X2022-5-11信息學(xué)科立體化教材223.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 改變改變BuildBuild選項(xiàng)并修改程序語(yǔ)法錯(cuò)誤選項(xiàng)并修改程序語(yǔ)法錯(cuò)誤 選擇菜單命令選擇菜單命令ProjectBuildProjectBuild Options Options,彈出,彈出Build Build OptionsOptio

27、ns窗口,選擇窗口,選擇CompilerCompiler標(biāo)簽,在類(標(biāo)簽,在類(CategoryCategory)列)列表中選擇預(yù)處理(表中選擇預(yù)處理(PreprocessorPreprocessor)。在)。在Define SymbolsDefine Symbols域域中鍵入中鍵入FILEIOFILEIO,定義符號(hào),定義符號(hào)FILEIOFILEIO。此時(shí),在命令輸入和顯。此時(shí),在命令輸入和顯示窗口看到示窗口看到- -dFILEIOdFILEIO。 X2022-5-11信息學(xué)科立體化教材233.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具X2022-5-11信息學(xué)科立體化教材243.1

28、.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 斷點(diǎn)和觀察窗口的應(yīng)用斷點(diǎn)和觀察窗口的應(yīng)用 選擇菜單命令選擇菜單命令FileReloadFileReload Program Program,重新加載程序,即,重新加載程序,即加載加載volum1.outvolum1.out。 在工程視圖中雙擊在工程視圖中雙擊volume.cvolume.c,打開源文件編輯窗口,將光,打開源文件編輯窗口,將光標(biāo)放在標(biāo)放在dataIOdataIO()()行上,并按行上,并按F9F9鍵或在工具欄中單擊鍵或在工具欄中單擊“設(shè)置設(shè)置斷點(diǎn)斷點(diǎn)”按鈕。按鈕。 選擇菜單命令選擇菜單命令ViewWatchViewWatch W

29、indow Window,彈出,彈出WatchWatch窗口,可窗口,可觀察結(jié)構(gòu)體變量的值。觀察結(jié)構(gòu)體變量的值。 X2022-5-11信息學(xué)科立體化教材253.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 在在CCSCCS中讀取數(shù)據(jù)和數(shù)據(jù)的圖形顯示中讀取數(shù)據(jù)和數(shù)據(jù)的圖形顯示 . .探點(diǎn)的設(shè)置及從探點(diǎn)的設(shè)置及從PCPC機(jī)文件中讀取數(shù)據(jù)機(jī)文件中讀取數(shù)據(jù) 選擇菜單命令選擇菜單命令FileLoadFileLoad Program Program,選擇,選擇Volume1.outVolume1.out并并打開。打開。 在工程視圖中雙擊在工程視圖中雙擊Volume.cVolume.c,源代碼將顯示

30、在右邊的編輯,源代碼將顯示在右邊的編輯窗口中。窗口中。 將光標(biāo)放在主函數(shù)中的將光標(biāo)放在主函數(shù)中的dataIOdataIO()()那一行上。那一行上。 單擊圖標(biāo),該行旁邊將產(chǎn)生一個(gè)藍(lán)色標(biāo)志,表示設(shè)置了一單擊圖標(biāo),該行旁邊將產(chǎn)生一個(gè)藍(lán)色標(biāo)志,表示設(shè)置了一個(gè)探點(diǎn)。個(gè)探點(diǎn)。 在在FileFile菜單中選擇菜單中選擇File I/OFile I/O,打開,打開File I/OFile I/O對(duì)話框。對(duì)話框。 點(diǎn)擊點(diǎn)擊File InputFile Input標(biāo)簽,然后單擊標(biāo)簽,然后單擊“Add File”Add File”按鈕。按鈕。 選擇選擇sine.datsine.dat文件,單擊文件,單擊“Open

31、”O(jiān)pen”按鈕,出現(xiàn)按鈕,出現(xiàn)sine.datsine.dat文文件控制窗口,可在運(yùn)行程序時(shí)使用這個(gè)窗口來控制數(shù)據(jù)文件控制窗口,可在運(yùn)行程序時(shí)使用這個(gè)窗口來控制數(shù)據(jù)文件的開始、停止、前進(jìn)、后退等操作。件的開始、停止、前進(jìn)、后退等操作。 X2022-5-11信息學(xué)科立體化教材263.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 在在File I/OFile I/O對(duì)話框中,在對(duì)話框中,在AddressAddress域中填入域中填入inp_bufferinp_buffer,在,在LengthLength域中填入域中填入100100,同時(shí)選中,同時(shí)選中Wrap AroundWrap Aro

32、und復(fù)選框。復(fù)選框。 在在File I/OFile I/O對(duì)話框中單擊對(duì)話框中單擊“Add Probe Point”Add Probe Point”按鈕,彈出按鈕,彈出Break/Probe PointsBreak/Probe Points對(duì)話框。對(duì)話框。 在在ConnectConnect域中,單擊下拉箭頭,并從列表中選擇域中,單擊下拉箭頭,并從列表中選擇sine.datsine.dat。 單擊單擊“Replace”Replace”按鈕,按鈕,Probe PointProbe Point列表指示列表指示Probe PointProbe Point已已與與sine.datsine.dat文件相

33、關(guān)聯(lián)。文件相關(guān)聯(lián)。 單擊單擊“確定確定”按鈕。注意,按鈕。注意,F(xiàn)ile I/OFile I/O對(duì)話框?qū)υ捒騊robelProbel欄已變?yōu)闄谝炎優(yōu)镃onnectedConnected,表示文件已連至一個(gè)探點(diǎn)。,表示文件已連至一個(gè)探點(diǎn)。 1313)單擊)單擊“確定確定”按鈕,關(guān)閉按鈕,關(guān)閉File I/OFile I/O對(duì)話框。對(duì)話框。X2022-5-11信息學(xué)科立體化教材273.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 Break/Probe PointsBreak/Probe Points對(duì)話框?qū)υ捒?X2022-5-11信息學(xué)科立體化教材283.1.2 軟件開發(fā)過程及開發(fā)工具

34、軟件開發(fā)過程及開發(fā)工具 .靜態(tài)圖形顯示靜態(tài)圖形顯示 選擇菜單命令選擇菜單命令ViewGraphTime/FrequencyViewGraphTime/Frequency,彈出,彈出Graph Graph PropertyProperty(圖形屬性)對(duì)話框。(圖形屬性)對(duì)話框。 在在Graph PropertyGraph Property對(duì)話框中更改圖形的標(biāo)題、起始地址、緩沖對(duì)話框中更改圖形的標(biāo)題、起始地址、緩沖區(qū)大小、顯示數(shù)據(jù)大小、區(qū)大小、顯示數(shù)據(jù)大小、DSPDSP數(shù)據(jù)類型、自動(dòng)標(biāo)尺屬性及最大數(shù)據(jù)類型、自動(dòng)標(biāo)尺屬性及最大Y Y值。值。 單擊單擊“OK”O(jiān)K”按鈕,將出現(xiàn)按鈕,將出現(xiàn)InputI

35、nput圖形窗口。圖形窗口。 在圖形窗口中右擊,從彈出的菜單中選擇在圖形窗口中右擊,從彈出的菜單中選擇Clear DisplayClear Display,清,清除已有顯示波形。除已有顯示波形。 再次執(zhí)行菜單命令再次執(zhí)行菜單命令ViewGraphTime /FrequencyViewGraphTime /Frequency。這次將。這次將Graph TitleGraph Title改為改為outputoutput,開始地址欄改為,開始地址欄改為out_bufferout_buffer。其他設(shè)。其他設(shè)置不變。置不變。 單擊單擊“OK”O(jiān)K”按鈕,出現(xiàn)一個(gè)顯示按鈕,出現(xiàn)一個(gè)顯示out_buffer

36、out_buffer波形的圖形窗口,波形的圖形窗口,同樣單擊右鍵,從彈出菜單中選同樣單擊右鍵,從彈出菜單中選Clear DisplayClear Display,清除已有顯示,清除已有顯示波形。波形。X2022-5-11信息學(xué)科立體化教材293.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 更改后的更改后的Graph PropertyGraph Property X2022-5-11信息學(xué)科立體化教材303.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 . .動(dòng)態(tài)圖形顯示動(dòng)態(tài)圖形顯示 在在Volume.cVolume.c窗口,將光標(biāo)放在調(diào)用窗口,將光標(biāo)放在調(diào)用dataIOdat

37、aIO行上。行上。 在在ProjectProject工具欄上單擊圖標(biāo)設(shè)置斷點(diǎn),此時(shí)該行有兩種工具欄上單擊圖標(biāo)設(shè)置斷點(diǎn),此時(shí)該行有兩種顏色顯示,表明該行上同時(shí)設(shè)有一個(gè)斷點(diǎn)和一個(gè)探點(diǎn)。顏色顯示,表明該行上同時(shí)設(shè)有一個(gè)斷點(diǎn)和一個(gè)探點(diǎn)。 調(diào)整窗口以便能同時(shí)看到兩個(gè)圖形窗口。調(diào)整窗口以便能同時(shí)看到兩個(gè)圖形窗口。 在在DebugDebug工具欄中單擊工具欄中單擊“Animate”Animate”按鈕或按按鈕或按F12F12鍵。鍵。 X2022-5-11信息學(xué)科立體化教材313.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 代碼執(zhí)行時(shí)間分析(代碼執(zhí)行時(shí)間分析(ProfilerProfiler的使用)

38、的使用) 選擇菜單命令選擇菜單命令FileReload ProgramFileReload Program,重新加載程序,重新加載程序V Volume1.outolume1.out。 選擇菜單命令選擇菜單命令ProfilerStart New SessionProfilerStart New Session,在打開的對(duì)話框中,在打開的對(duì)話框中輸入輸入Volume1_profileVolume1_profile作為代碼分析統(tǒng)計(jì)觀察窗口的名稱,然后單擊作為代碼分析統(tǒng)計(jì)觀察窗口的名稱,然后單擊OKOK按鈕,則打開分析(按鈕,則打開分析(ProfilerProfiler)窗口,單擊)窗口,單擊Func

39、tionsFunctions標(biāo)簽。標(biāo)簽。 X2022-5-11信息學(xué)科立體化教材323.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 在工程視圖中雙擊在工程視圖中雙擊volume.cvolume.c以顯示文件內(nèi)容。以顯示文件內(nèi)容。 程序運(yùn)行約程序運(yùn)行約1 1分鐘后停止,看到如下圖所示的分析結(jié)果。分鐘后停止,看到如下圖所示的分析結(jié)果。 X2022-5-11信息學(xué)科立體化教材333.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 例如,例如,某段程序執(zhí)行時(shí)間分析某段程序執(zhí)行時(shí)間分析 在分析窗口中單擊在分析窗口中單擊RangesRanges標(biāo)簽,在工程視圖中雙擊標(biāo)簽,在工程視圖中雙擊v

40、olume.cvolume.c顯示源程序。顯示源程序。 將將loadload(processingLoadprocessingLoad)行到)行到returnreturn(TRUETRUE)行高亮顯示)行高亮顯示并拖曳至分析窗口。并拖曳至分析窗口。 選擇菜單命令選擇菜單命令ViewDisassemblyViewDisassembly打開打開disassemblydisassembly窗口,在窗口,在disassemblydisassembly窗口中右擊,選擇窗口中右擊,選擇Start AddressStart Address,然后輸入,然后輸入c_int00c_int00作為起始地址。作為起始

41、地址。 在在disassemblydisassembly窗口將窗口將c_int00c_int00下面的四行拖曳到分析窗口,下面的四行拖曳到分析窗口,如下圖所示。如下圖所示。X2022-5-11信息學(xué)科立體化教材343.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 分析窗口的分析窗口的RangesRanges標(biāo)簽標(biāo)簽 X2022-5-11信息學(xué)科立體化教材353.1.2 軟件開發(fā)過程及開發(fā)工具軟件開發(fā)過程及開發(fā)工具 選擇菜單命令選擇菜單命令DebugRestart.DebugRestart.,然后選擇,然后選擇DebugRunDebugRun。程。程序運(yùn)行約序運(yùn)行約1 1分鐘后停止,看到

42、如下圖所示的分析結(jié)果。分鐘后停止,看到如下圖所示的分析結(jié)果。 某段程序執(zhí)行時(shí)間分析結(jié)果某段程序執(zhí)行時(shí)間分析結(jié)果 X2022-5-11信息學(xué)科立體化教材363.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì)1. FIR1. FIR濾波器的濾波器的DSPDSP實(shí)現(xiàn)實(shí)現(xiàn) 數(shù)字濾波是數(shù)字濾波是DSPDSP的最基本應(yīng)用,利用的最基本應(yīng)用,利用MACMAC(乘、累加)指(乘、累加)指令和循環(huán)尋址可以方便地完成濾波運(yùn)算。令和循環(huán)尋址可以方便地完成濾波運(yùn)算。 下面是兩種常用的數(shù)字濾波器:下面是兩種常用的數(shù)字濾波器:FIRFIR(有限沖激響應(yīng))(有限沖激響應(yīng))濾波器和濾波器和IIRIIR(無限沖激響應(yīng))

43、濾波器的(無限沖激響應(yīng))濾波器的DSPDSP實(shí)現(xiàn)。實(shí)現(xiàn)。 設(shè)設(shè)FIRFIR濾波器的系數(shù)為濾波器的系數(shù)為h(0)h(0),h(1)h(1), .,h(N-1)h(N-1),x(nx(n) )表示濾波器在表示濾波器在n n時(shí)刻的輸入,則時(shí)刻的輸入,則n n時(shí)刻的輸出為時(shí)刻的輸出為 10)()()1() 1() 1() 1 ()() 0 ()(NiinxihNnxNhnxhnxhny其對(duì)應(yīng)的濾波器傳遞函數(shù)為其對(duì)應(yīng)的濾波器傳遞函數(shù)為 iNizihzH10)()(X2022-5-11信息學(xué)科立體化教材373.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì) 下圖所示為橫截型(又稱直接型或卷積型)下

44、圖所示為橫截型(又稱直接型或卷積型)FIRFIR數(shù)字濾波數(shù)字濾波器的結(jié)構(gòu)圖。器的結(jié)構(gòu)圖。X2022-5-11信息學(xué)科立體化教材383.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì) 線性緩沖區(qū)法又稱延遲線法。其方法是:對(duì)于線性緩沖區(qū)法又稱延遲線法。其方法是:對(duì)于n=Nn=N的的FIRFIR濾波器,在數(shù)據(jù)存儲(chǔ)器中開辟一個(gè)濾波器,在數(shù)據(jù)存儲(chǔ)器中開辟一個(gè)N N單元的緩沖區(qū),存單元的緩沖區(qū),存放最新的放最新的N N個(gè)樣本;濾波時(shí)從最老的樣本開始,每讀一個(gè)個(gè)樣本;濾波時(shí)從最老的樣本開始,每讀一個(gè)樣本后,將此樣本向下移位;讀完最后一個(gè)樣本后,輸入樣本后,將此樣本向下移位;讀完最后一個(gè)樣本后,輸入最

45、新樣本至緩沖區(qū)的頂部。以上過程,可以用最新樣本至緩沖區(qū)的頂部。以上過程,可以用N=6N=6的線性的線性緩沖區(qū)示意圖來說明,如下圖所示。緩沖區(qū)示意圖來說明,如下圖所示。 X2022-5-11信息學(xué)科立體化教材393.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì) 下圖說明了使用循環(huán)尋址實(shí)現(xiàn)下圖說明了使用循環(huán)尋址實(shí)現(xiàn)FIRFIR濾波器的方法。對(duì)于濾波器的方法。對(duì)于N N級(jí)級(jí)FIRFIR濾波器,在數(shù)據(jù)存儲(chǔ)區(qū)開辟一個(gè)稱為滑窗的具有濾波器,在數(shù)據(jù)存儲(chǔ)區(qū)開辟一個(gè)稱為滑窗的具有N N個(gè)單個(gè)單元的緩沖區(qū),滑窗中存放最新的元的緩沖區(qū),滑窗中存放最新的N N個(gè)輸入樣本值。每次輸入個(gè)輸入樣本值。每次輸入新的

46、樣本時(shí),新的樣本將改寫滑窗中最老的數(shù)據(jù),其他數(shù)據(jù)新的樣本時(shí),新的樣本將改寫滑窗中最老的數(shù)據(jù),其他數(shù)據(jù)則不需要移動(dòng)。則不需要移動(dòng)。 X2022-5-11信息學(xué)科立體化教材403.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì)例例3.1 3.1 用循環(huán)緩沖區(qū)和雙操作數(shù)尋址方法編寫實(shí)現(xiàn)用循環(huán)緩沖區(qū)和雙操作數(shù)尋址方法編寫實(shí)現(xiàn)FIRFIR濾濾波的程序。波的程序。 FIRFIR濾波器設(shè)計(jì)濾波器設(shè)計(jì) 設(shè)計(jì)一個(gè)設(shè)計(jì)一個(gè)FIRFIR低通濾波器,通帶邊界頻率為低通濾波器,通帶邊界頻率為1500Hz1500Hz,通帶波紋小于通帶波紋小于1dB1dB;阻帶邊界頻率為;阻帶邊界頻率為2000Hz2000Hz,阻

47、帶衰減,阻帶衰減大于大于40dB40dB;采樣頻率為;采樣頻率為8000Hz8000Hz。FIRFIR濾波器的設(shè)計(jì)可以濾波器的設(shè)計(jì)可以用用MATLABMATLAB窗函數(shù)法進(jìn)行。窗函數(shù)法進(jìn)行。X2022-5-11信息學(xué)科立體化教材413.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì) 產(chǎn)生濾波器輸入信號(hào)的文件產(chǎn)生濾波器輸入信號(hào)的文件 按照通常的程序調(diào)試方法,先用按照通常的程序調(diào)試方法,先用SimulatorSimulator逐步調(diào)試各逐步調(diào)試各子程序模塊,再用硬件仿真器在實(shí)際系統(tǒng)中與硬件儀器聯(lián)子程序模塊,再用硬件仿真器在實(shí)際系統(tǒng)中與硬件儀器聯(lián)調(diào)。使用調(diào)。使用CCSCCS的的Simulat

48、orSimulator進(jìn)行濾波器特性測(cè)試時(shí),需要輸進(jìn)行濾波器特性測(cè)試時(shí),需要輸入時(shí)間信號(hào)入時(shí)間信號(hào)x(nx(n) )。本例設(shè)計(jì)一個(gè)采樣頻率。本例設(shè)計(jì)一個(gè)采樣頻率FsFs為為8000Hz8000Hz,輸,輸入信號(hào)頻率為入信號(hào)頻率為1000Hz1000Hz和和2500Hz2500Hz的合成信號(hào),通過設(shè)計(jì)的低的合成信號(hào),通過設(shè)計(jì)的低通濾波器將通濾波器將2500Hz2500Hz信號(hào)濾掉,余下信號(hào)濾掉,余下1000Hz1000Hz信號(hào)。信號(hào)。 編寫編寫FIRFIR數(shù)字濾波器的匯編源程序數(shù)字濾波器的匯編源程序X2022-5-11信息學(xué)科立體化教材423.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)

49、計(jì)FIR數(shù)字濾波器匯編程序數(shù)字濾波器匯編程序fir.asm如下如下.mmregs.global start.def start,_c_int00INDEX .set 1KS .set 256 ;輸入樣本數(shù)據(jù)個(gè)數(shù)輸入樣本數(shù)據(jù)個(gè)數(shù)COEF_FIR .sect COEF_FIR “ ;FIR濾波器系數(shù)濾波器系數(shù)N.set 17 ;FIR濾波器階數(shù)濾波器階數(shù).word 0,158,264,-290,-1406,-951,3187,9287,12272.word9287,3187,-951,-1406,-290,264,158,0.dataINPUT .copy firin.inc ;輸入數(shù)據(jù)在數(shù)據(jù)區(qū)輸

50、入數(shù)據(jù)在數(shù)據(jù)區(qū)0 x2400OUTPUT .space 1024 ;輸出數(shù)據(jù)在數(shù)據(jù)區(qū)輸出數(shù)據(jù)在數(shù)據(jù)區(qū)0 x2500X2022-5-11信息學(xué)科立體化教材433.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì)COEFTAB .usect FIR_COEF,NDATABUF .usect FIR_BFR,NBOS.usect STACK,0FhTOS.usect STACK,1 .text.asgAR0,INDEX_P.asgAR4,DATA_P;輸入數(shù)據(jù)輸入數(shù)據(jù)x(n)循環(huán)緩沖區(qū)指針循環(huán)緩沖區(qū)指針.asgAR5,COEF_P;FIR系數(shù)表指針系數(shù)表指針.asg AR6,INBUF_P;模

51、擬輸入數(shù)據(jù)指針模擬輸入數(shù)據(jù)指針.asgAR7,OUTBUF_P ;FIR濾波器輸出數(shù)據(jù)指針濾波器輸出數(shù)據(jù)指針_c_int00X2022-5-11信息學(xué)科立體化教材443.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì)b start nopnopstart: SSBx FRCT ;小數(shù)乘法編程時(shí),設(shè)置小數(shù)乘法編程時(shí),設(shè)置FRCT位位MVPD #COEF_FIR,*COEF_P+STM #INDEX,INDEX_PSTM #DATABUF,DATA_P ;數(shù)據(jù)循環(huán)緩沖區(qū)清零數(shù)據(jù)循環(huán)緩沖區(qū)清零RPTZ A,#N-1STLA,*DATA_P+STM#(DATABUF+N-1),DATA_P ;

52、數(shù)據(jù)循環(huán)緩沖區(qū)指針指向數(shù)據(jù)循環(huán)緩沖區(qū)指針指向xn-(N-1)X2022-5-11信息學(xué)科立體化教材453.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì)STM#COEFTAB,COEF_PSTM #COEFTAB,COEF_P ;將將FIR系數(shù)從程序存儲(chǔ)器移到數(shù)據(jù)存儲(chǔ)器系數(shù)從程序存儲(chǔ)器移到數(shù)據(jù)存儲(chǔ)器RPT #N-1 FIR_TASK:STM#INPUT,INBUF_PSTM #OUTPUT,OUTBUF_P STM#KS-1,BRCRPTBD LOOP-1STM#N,BK ;FIR循環(huán)緩沖區(qū)大小循環(huán)緩沖區(qū)大小LD*INBUF_P+,A ;裝載輸入數(shù)據(jù)裝載輸入數(shù)據(jù)FIR_FILTER:

53、;FIR濾波運(yùn)算濾波運(yùn)算STLA,*DATA_P+% ;用最新的樣本值替代最舊的樣本值用最新的樣本值替代最舊的樣本值X2022-5-11信息學(xué)科立體化教材463.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì)RPTZ A,N-1MAC *DATA_P+0%,*COEF_P+0%,ASTHA,*OUTBUF_P+LOOP:EEND B EEND.endX2022-5-11信息學(xué)科立體化教材473.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì) 編寫編寫FIR濾波器鏈接命令文件濾波器鏈接命令文件對(duì)應(yīng)以上匯編程序的鏈接命令文件對(duì)應(yīng)以上匯編程序的鏈接命令文件fir.cmd如下:如下:f

54、ir.obj-m fir.map-o fir.outMEMORY PAGE 0:ROM1(RIX) :ORIGIN=0080H,LENGTH=100H PAGE 1:INTRAM1(RW) :ORIGIN=2400H,LENGTH=0200H INTRAM2(RW) :ORIGIN=2600H,LENGTH=0100HX2022-5-11信息學(xué)科立體化教材483.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì)INTRAM3(RW) :ORIGIN=2700H,LENGTH=0100H B2B(RW) :ORIGIN=0070H,LENGTH=10H SECTIONS .text :RO

55、M1PAGE 0 .data : INTRAM1 PAGE 1 FIR_COEF : INTRAM2 PAGE 1 FIR_BFR : INTRAM3 PAGE 1 .stack : B2B PAGE 1 X2022-5-11信息學(xué)科立體化教材493.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì) CCSCCS集成開發(fā)環(huán)境下上機(jī)操作過程集成開發(fā)環(huán)境下上機(jī)操作過程 在在CCSCCS上建立上建立firfir工程并運(yùn)行工程并運(yùn)行fir.outfir.out程序程序, ,在在GraphGraph屬性設(shè)屬性設(shè)置窗口置窗口GraphGraph屬性值,如下圖所示。屬性值,如下圖所示。 X2022-5

56、-11信息學(xué)科立體化教材503.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì) 觀察輸入信號(hào)的波形及頻譜。觀察輸入信號(hào)的波形及頻譜。 輸入信號(hào)的時(shí)域波形輸入信號(hào)的時(shí)域波形 輸入信號(hào)的頻譜圖輸入信號(hào)的頻譜圖X2022-5-11信息學(xué)科立體化教材513.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì) 觀察輸出信號(hào)的波形及頻譜。觀察輸出信號(hào)的波形及頻譜。 濾波器濾波器輸出信號(hào)時(shí)域波形輸出信號(hào)時(shí)域波形 濾波器濾波器輸出信號(hào)頻譜圖輸出信號(hào)頻譜圖X2022-5-11信息學(xué)科立體化教材523.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì)例例3.2 3.2 系數(shù)對(duì)稱系數(shù)對(duì)稱FIRFI

57、R濾波器的濾波器的DSPDSP實(shí)現(xiàn)。實(shí)現(xiàn)。 在數(shù)據(jù)存儲(chǔ)器中開辟兩個(gè)循環(huán)緩沖區(qū)。在數(shù)據(jù)存儲(chǔ)器中開辟兩個(gè)循環(huán)緩沖區(qū)。NewNew循環(huán)緩沖區(qū)中存循環(huán)緩沖區(qū)中存放放N/2=4N/2=4個(gè)新數(shù)據(jù)(設(shè)個(gè)新數(shù)據(jù)(設(shè)N=8N=8););OldOld循環(huán)緩沖區(qū)中存放循環(huán)緩沖區(qū)中存放4 4個(gè)老數(shù)據(jù)。個(gè)老數(shù)據(jù)。循環(huán)緩沖區(qū)的長(zhǎng)度為循環(huán)緩沖區(qū)的長(zhǎng)度為N/2N/2。緩沖區(qū)指針。緩沖區(qū)指針AR2AR2指向指向NewNew緩沖區(qū)中最新的緩沖區(qū)中最新的數(shù)據(jù);數(shù)據(jù);AR3AR3指向指向Old Old 緩沖區(qū)中最老的數(shù)據(jù),并在程序存儲(chǔ)器中設(shè)置緩沖區(qū)中最老的數(shù)據(jù),并在程序存儲(chǔ)器中設(shè)置系數(shù)表。系數(shù)表。 (AR2)+(AR3)AH(AR

58、2)+(AR3)AH(累加器(累加器A A的高位)的高位) (AR2)-1AR2 (AR2)-1AR2,(AR3)-1AR3(AR3)-1AR3 將累加器將累加器B B清清0 0,重復(fù)執(zhí)行以下操作,重復(fù)執(zhí)行以下操作N/2N/2次(次(i=0i=0,1 1,2 2,3 3):):(AH)(AH)系數(shù)系數(shù)ai+(B)Bai+(B)B,系數(shù)指針(,系數(shù)指針(PARPAR)加)加1 1(AR2)+(AR3)AH(AR2)+(AR3)AH,AR2AR2和和AR3AR3減減1 1并保存或輸出結(jié)果(結(jié)果在并保存或輸出結(jié)果(結(jié)果在BHBH中)。中)。X2022-5-11信息學(xué)科立體化教材533.2.2 匯編語(yǔ)

59、言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì) 修正數(shù)據(jù)指針。將修正數(shù)據(jù)指針。將AR2AR2和和AR3AR3分別指向分別指向NewNew緩沖區(qū)中最新緩沖區(qū)中最新的數(shù)據(jù)和的數(shù)據(jù)和Old Old 緩沖區(qū)中最老的數(shù)據(jù)。用緩沖區(qū)中最老的數(shù)據(jù)。用New New 緩沖區(qū)最老的數(shù)緩沖區(qū)最老的數(shù)據(jù)替代據(jù)替代Old Old 緩沖區(qū)中最老的數(shù)據(jù),緩沖區(qū)中最老的數(shù)據(jù),Old Old 緩沖區(qū)指針減緩沖區(qū)指針減1 1。 輸入一個(gè)新的數(shù)據(jù)替代輸入一個(gè)新的數(shù)據(jù)替代New New 緩沖區(qū)中最老的數(shù)據(jù),緩沖區(qū)中最老的數(shù)據(jù),重復(fù)重復(fù)執(zhí)行步驟執(zhí)行步驟2 25 5。 X2022-5-11信息學(xué)科立體化教材543.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯

60、編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì)NiiiMiiizazbzH101)()()()(inyainxbnyNiiMii102.2. IIRIIR數(shù)字濾波器的數(shù)字濾波器的DSPDSP實(shí)現(xiàn)實(shí)現(xiàn)IIRIIR數(shù)字濾波器的傳遞函數(shù)數(shù)字濾波器的傳遞函數(shù)H(z)H(z)為:為:其對(duì)應(yīng)的差分方程為:其對(duì)應(yīng)的差分方程為: X2022-5-11信息學(xué)科立體化教材553.2.2 匯編語(yǔ)言程序?qū)崿F(xiàn)匯編語(yǔ)言程序?qū)崿F(xiàn)DSP設(shè)計(jì)設(shè)計(jì) 例如,對(duì)于直接形式的二階例如,對(duì)于直接形式的二階IIRIIR數(shù)字濾波器,其結(jié)構(gòu)數(shù)字濾波器,其結(jié)構(gòu)如下圖如下圖1 1所示,編程時(shí),可以分別開辟四個(gè)緩沖區(qū),存放所示,編程時(shí),可以分別開辟四個(gè)緩沖區(qū),存放輸

溫馨提示

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

評(píng)論

0/150

提交評(píng)論