第1章-數(shù)字信號處理和DSP系統(tǒng)_第1頁
第1章-數(shù)字信號處理和DSP系統(tǒng)_第2頁
第1章-數(shù)字信號處理和DSP系統(tǒng)_第3頁
第1章-數(shù)字信號處理和DSP系統(tǒng)_第4頁
第1章-數(shù)字信號處理和DSP系統(tǒng)_第5頁
已閱讀5頁,還剩98頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1DSP原理與應(yīng)用課程基礎(chǔ)模擬和數(shù)字電路基礎(chǔ)單片機(jī)原理或微型計算機(jī)原理數(shù)字信號處理基礎(chǔ)理論專業(yè)知識(電子,通信)課程特點(diǎn)DSP簡單說就是高性能信號處理器,本課程的特點(diǎn):理論性——只需對DSP算法作一般了解,主要熟悉數(shù)字信號處理系統(tǒng)的構(gòu)成;學(xué)習(xí)目的——會用,會構(gòu)建基于DSP的軟硬件系統(tǒng);學(xué)習(xí)方法——以實驗實踐為主,邊動手邊學(xué)習(xí)。課程目標(biāo)數(shù)字信號處理課程,主要講授有關(guān)理論和算法,基本上不討論實現(xiàn)技術(shù);DSP芯片廠家的技術(shù)手冊則只介紹產(chǎn)品的功能和性能。兩者比較脫節(jié),都不大利于工程應(yīng)用。我們開設(shè)這門課程的目標(biāo),就是希望將兩者有機(jī)地結(jié)合起來,通過授課、實驗縮短學(xué)習(xí)與開發(fā)DSP系統(tǒng)的時間,培養(yǎng)學(xué)習(xí)者的工程素養(yǎng)和創(chuàng)新能力。課程基本要求會找:充分利用網(wǎng)絡(luò)資源,提高查找資料能力;會看:教材或datasheets(*.pdf文件);會做:軟硬件設(shè)計,實踐出真知,積累設(shè)計技能;會問:同學(xué)討論,教師指點(diǎn),是捷徑;最好的教師是自己:自己動手才有收獲,特別是工程應(yīng)用課程!軟件開發(fā)環(huán)境:熟悉仿真軟件Matlab、CCS等;課程教學(xué)內(nèi)容DSP課程=理論教學(xué)+實驗理論教學(xué)以TMS320C5509為例,學(xué)習(xí)數(shù)字信號處理的方法(硬件結(jié)構(gòu)、指令系統(tǒng)、開發(fā)平臺)實驗基本實驗綜合實驗科研實驗課程參考?TMS320C55xDSP原理及應(yīng)用?汪春梅孫洪波編著?DSP原理及應(yīng)用?李利等編寫?數(shù)字信號處理原理、結(jié)構(gòu)及應(yīng)用基礎(chǔ)》?TMS320F28x?劉和平等編著ICETEK-F2812-A實驗指導(dǎo)書ICETEK-VC5509-A實驗指導(dǎo)書課程體系結(jié)構(gòu)TMS320C55xDSP芯片工作原理:CPU;存儲器;I/O;中斷;尋址方式;指令系統(tǒng);片上外設(shè)(PLL,Timer,EMIF,EHPI,McBSP,GPIO,DMA,I2C,MMC,USB,ADC,RTC,UART)TMS320C55xDSP應(yīng)用開發(fā)系統(tǒng):集成開發(fā)環(huán)境CCS,仿真工具,硬件結(jié)構(gòu)與設(shè)計,程序設(shè)計,算法研究實踐實踐“DSP原理與應(yīng)用”章節(jié)安排第1章數(shù)字信號處理和DSP系統(tǒng)第2章TMS320C55x的硬件結(jié)構(gòu)第3章TMS320C55x的指令系統(tǒng)第4章C55x處理器的軟件設(shè)計第5章TMS320C55x的片內(nèi)集成外設(shè)開發(fā)及測試第6章DSP集成開發(fā)環(huán)境CCS第7章TMS320C55x硬件設(shè)計實例第8章TMS320C55x軟件設(shè)計實例2023年2月1日TMS320C55xDSP原理及應(yīng)用10第1章數(shù)字信號處理和DSP系統(tǒng)

1.1數(shù)字信號處理及應(yīng)用概述1.2實時數(shù)字信號處理技術(shù)的實現(xiàn)方法1.3數(shù)字信號處理器的特點(diǎn)

1.4德州儀器公司的DSP產(chǎn)品1.5DSP芯片的選擇

1.6定點(diǎn)運(yùn)算及定點(diǎn)DSP2023年2月1日TMS320C55xDSP原理及應(yīng)用11第1章數(shù)字信號處理和DSP系統(tǒng)

1.1數(shù)字信號處理及應(yīng)用概述數(shù)字信號處理理論和實現(xiàn)技術(shù)發(fā)展之初,沒有人預(yù)料到它能給世界帶來如此大的變化。其應(yīng)用的廣度還是深度方面,都在快速向前發(fā)展。我們身邊越來越多的數(shù)碼產(chǎn)品運(yùn)用了數(shù)字信號處理的方法。

數(shù)字信號處理器是一種特別適合于進(jìn)行數(shù)字信號處理運(yùn)算的微處理器,其主要應(yīng)用是實時快速地實現(xiàn)各種數(shù)字信號處理算法。數(shù)字信號處理是利用計算機(jī)或?qū)S锰幚碓O(shè)備,以數(shù)字的形式對信號進(jìn)行分析、采集、合成、變換、濾波、估算、壓縮、識別等加工處理,以便提取有用的信息并進(jìn)行有效的傳輸與應(yīng)用。2023年2月1日TMS320C55xDSP原理及應(yīng)用12第1章數(shù)字信號處理和DSP系統(tǒng)

20世紀(jì)60年代以來,隨著信息技術(shù)的不斷進(jìn)步,數(shù)字信號處理技術(shù)應(yīng)運(yùn)而生并得到迅速發(fā)展。80年代以前,數(shù)字信號處理技術(shù)處于理論研究階段,還得不到廣泛的應(yīng)用。在此階段,人們利用“大型計算機(jī)”進(jìn)行算法的研究,以及數(shù)字信號處理系統(tǒng)的模擬和仿真。而將數(shù)字信號處理技術(shù)推向廣泛應(yīng)用的則是實時數(shù)字信號處理技術(shù)的高速發(fā)展。這是DSP器件和理論相互促進(jìn)、協(xié)調(diào)發(fā)展的結(jié)果。

近年來,數(shù)字信號處理的理論和方法得到了迅速的發(fā)展,諸如:語音與圖像的壓縮編碼、識別與鑒別,信號的調(diào)制與解調(diào)、加密和解密,信道的辨識與均衡,智能天線,頻譜分析等各種快速算法都成為研究的熱點(diǎn)、并取得了長足的進(jìn)步,為各種實時處理的應(yīng)用提供了算法基礎(chǔ)。2023年2月1日TMS320C55xDSP原理及應(yīng)用13第1章數(shù)字信號處理和DSP系統(tǒng)

實時數(shù)字信號處理對數(shù)字信號處理系統(tǒng)的處理能力提出了嚴(yán)格的要求,所有運(yùn)算、處理都必須小于系統(tǒng)可接受的最大時延。

典型數(shù)字信號處理系統(tǒng)2023年2月1日TMS320C55xDSP原理及應(yīng)用15典型實時數(shù)字信號處理系統(tǒng)的基本部件包括:抗混疊濾波器(Anti-aliasingfilter)、模/數(shù)轉(zhuǎn)換器(Analog-to-DigitalConverter,ADC)、數(shù)字信號處理、數(shù)/模轉(zhuǎn)換器(Digital-to-AnalogConverter,DAC)和抗鏡像濾波器(Anti-imagefilter)。第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用16第1章數(shù)字信號處理和DSP系統(tǒng)

其中,抗混疊濾波器將輸入的模擬信號中高于奈奎斯特頻率的頻率成分濾掉;ADC將模擬信號轉(zhuǎn)換成DSP可以處理的并行或串行的數(shù)字比特流;數(shù)字信號處理部分完成數(shù)字號信處理算法;經(jīng)過處理的數(shù)字信號經(jīng)DAC轉(zhuǎn)換成為模擬樣值之后,再由低通濾波器完成模擬信號波形的重建。2023年2月1日TMS320C55xDSP原理及應(yīng)用17數(shù)字信號處理器的應(yīng)用(1)基本信號處理:數(shù)字濾波器、自適應(yīng)濾波、FFT、相關(guān)運(yùn)算、譜分析、卷積運(yùn)算、模式匹配、窗函數(shù)、波形產(chǎn)生和變換等。

(2)通信:調(diào)制解調(diào)、自適應(yīng)均衡、數(shù)據(jù)加密、數(shù)據(jù)壓縮、回波抵消、多路復(fù)用、傳真、擴(kuò)頻通信、糾錯編碼等。(3)語音:語音編碼、語音合成、語音識別、語音增強(qiáng)、說話人的辨認(rèn)和確認(rèn)、語音郵件、語音儲存等。第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用18

如果DSP芯片在某時鐘頻率范圍內(nèi)的任何頻率上都能正常工作,除計算速度有變化外,沒有性能的下降,這類DSP芯片一般稱之為靜態(tài)DSP芯片。

例如,TI公司的TMS320系列芯片、日本OKI電氣公司的DSP芯片都屬于這一類芯片。

(4)圖形圖像:二維和三維的圖形處理和圖像的壓縮、傳輸與增強(qiáng)、特征提取、機(jī)器人視覺等。(5)軍事:保密通信、雷達(dá)信號處理、聲吶信號處理、導(dǎo)航、導(dǎo)彈制導(dǎo)等。(6)儀器儀表:頻譜分析、函數(shù)發(fā)生、鎖相環(huán)、地震信號處理等。(7)控制:電機(jī)控制、聲控、自動駕駛、機(jī)器人控制、磁盤控制等。(8)電力:太陽能、風(fēng)能發(fā)電控制、智能電源、電網(wǎng)諧波分析與補(bǔ)償?shù)?。?)醫(yī)療:助聽、超聲設(shè)備、診斷工具、患者監(jiān)護(hù)等。(10)家用電器:音響設(shè)備、智能玩具與游戲、數(shù)字電話、數(shù)字電視,MP3,MP4等。第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用19

1.利用X86處理器完成實時數(shù)字信號處理

隨著CPU技術(shù)的不斷進(jìn)步,X86處理器的處理能力不斷發(fā)展,基于X86處理器的處理系統(tǒng)已經(jīng)不僅局限于以往的模擬和仿真,也能滿足部分?jǐn)?shù)字信號的實時處理要求,而各種便攜式或工業(yè)標(biāo)準(zhǔn)的推出,如PC104、PC104Plus結(jié)構(gòu),以及CPCI總線標(biāo)準(zhǔn)的應(yīng)用,這些都改善了X86系統(tǒng)的抗惡劣環(huán)境的性能,擴(kuò)展了X86系統(tǒng)的應(yīng)用范圍。

第1章數(shù)字信號處理和DSP系統(tǒng)

1.2實時數(shù)字信號處理技術(shù)的實現(xiàn)方法2023年2月1日TMS320C55xDSP原理及應(yīng)用20(1)處理器選擇范圍較寬:X86處理器涵蓋了從386到奔騰系列,處理速度從100MHz到幾GHz,而為了滿足工控等各種應(yīng)用,X86廠商也推出了多款低功耗處理器,其功耗遠(yuǎn)遠(yuǎn)小于商用處理器。(2)主板及外設(shè)資源豐富:無論是普通結(jié)構(gòu),還是基于PC104和PC104Plus結(jié)構(gòu),以及CPCI總線標(biāo)準(zhǔn),都有多種主板及擴(kuò)展子板可供選擇,節(jié)省了用戶的大量硬件開發(fā)時間。(3)有多種操作系統(tǒng)可供選擇:這些操作系統(tǒng)包括Windows、Linux、WinCE等,而針對特殊應(yīng)用,還可根據(jù)需要對操作系統(tǒng)進(jìn)行剪裁,以適應(yīng)實時數(shù)字信號處理要求。(4)開發(fā)、調(diào)試較為方便:X86的開發(fā)、調(diào)試工具十分成熟,使用者不需要很深的硬件基礎(chǔ),只要能夠熟練使用VC、C-Build等開發(fā)工具即可進(jìn)行開發(fā)。第1章數(shù)字信號處理和DSP系統(tǒng)

利用X86系統(tǒng)進(jìn)行實時數(shù)字信號處理有下列優(yōu)點(diǎn):

2023年2月1日TMS320C55xDSP原理及應(yīng)用21

X86進(jìn)行實時信號處理的缺點(diǎn):第1章數(shù)字信號處理和DSP系統(tǒng)

(1)數(shù)字信號處理能力不強(qiáng):X86系列處理器沒有為數(shù)字信號處理提供專用乘法器等資源,尋址方式也沒有為數(shù)字信號處理進(jìn)行優(yōu)化設(shè)計,實時信號處理對中斷的響應(yīng)延遲時間要求十分嚴(yán)格,通用操作系統(tǒng)并不能滿足這一要求;(2)硬件組成較為復(fù)雜:即使是采用最小系統(tǒng),X86數(shù)字信號處理系統(tǒng)也要包括主板(包括CPU、總線控制、內(nèi)存等)、非易失存儲器(硬盤或電子硬盤、SD卡或CF卡)和信號輸入/輸出部分(這部分通常為AD擴(kuò)展卡和DA擴(kuò)展卡),如果再包括顯示、鍵盤等設(shè)備,系統(tǒng)將更為復(fù)雜;(3)系統(tǒng)體積、重量較大,功耗較高:即使采用緊湊的PC104結(jié)構(gòu),其尺寸也達(dá)到96mm×90mm,而采用各種降低功耗的措施,X86主板的峰值功耗仍不小于5W,高功耗則對供電提出較高要求,則需要便攜系統(tǒng)提供容量較大的電池,進(jìn)一步增大了系統(tǒng)的重量;(4)抗環(huán)境影響能力較弱:便攜系統(tǒng)往往要工作于自然環(huán)境當(dāng)中,溫度、濕度、振動、電磁干擾等都會給系統(tǒng)正常工作帶來影響,而為了克服這些影響,X86系統(tǒng)所需付出的代價將是十分巨大的。2023年2月1日TMS320C55xDSP原理及應(yīng)用22

2.利用通用微處理器完成實時數(shù)字信號處理

通用微處理器的種類多,包括51系列及其擴(kuò)展系列,德州儀器公司的MSP430系列,ARM公司的ARM7、ARM9、ARM11、ARMCortex-M0,-M3,-A8,-A9系列,等等,利用通用微處理器進(jìn)行信號處理的優(yōu)點(diǎn)如下:

(1)可選范圍廣:通用微處理器種類多,使用者可從速度、片內(nèi)存儲器容量、片內(nèi)外設(shè)資源等各種角度進(jìn)行選擇,許多處理器還為執(zhí)行數(shù)字信號處理專門提供了乘法器等資源。(2)硬件組成簡單:只需要非易失存儲器,A/D、D/A即可組成最小系統(tǒng),這類處理器一般都包括各種串行、并行接口,可以方便地與各種A/D、D/A轉(zhuǎn)換器進(jìn)行連接。(3)系統(tǒng)功耗低,適應(yīng)環(huán)境能力強(qiáng)。

第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用23利用通用微處理器進(jìn)行信號處理的缺點(diǎn)如下:(1)信號處理的效率較低:以一個兩個數(shù)值乘法為例,處理器需要先用兩條指令從存儲器當(dāng)中取值到寄存器中,用一條指令完成兩個寄存器的值相乘,再用一條指令將結(jié)果存到存儲器中,這樣,完成一次乘法就花費(fèi)了4條指令,使信號處理的效率難以提高。(2)內(nèi)部DMA通道較少:數(shù)字信號處理需要對大量的數(shù)據(jù)進(jìn)行搬移,如果這些數(shù)據(jù)搬移全部通過CPU進(jìn)行,將極大的浪費(fèi)CPU資源,但通用處理器往往DMA通道數(shù)量較少,甚至沒有DMA通道,這也將影響信號處理的效率。8051做16位乘加的速度比TMS320C55x慢數(shù)千倍。(1)位寬,(2)寄存器,(3)傳輸通道,(4)指令,(5)主頻第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用24每條指令可通過片內(nèi)多功能單元完成取指、譯碼、取操作數(shù)和執(zhí)行等多個步驟,實現(xiàn)多條指令的并行執(zhí)行,從而在不提高系統(tǒng)時鐘頻率的條件下減少每條指令的執(zhí)行時間。其過程如圖1.2.3所示。第1章數(shù)字信號處理和DSP系統(tǒng)

針對這些缺點(diǎn),當(dāng)前的發(fā)展趨勢是在通用處理器中內(nèi)嵌硬件數(shù)字信號處理單元,如很多視頻處理器產(chǎn)品都是在ARM9處理器中嵌入H.264、MPEG4等硬件視頻處理模塊,從而取得了較好的處理效果;而另一條路徑是在單片中集成ARM處理器和DSP處理器,類似的產(chǎn)品如德州儀器的OMAP處理器及達(dá)芬奇視頻處理器,它們就是在一個芯片中集成了一個ARM9處理器和一個C55x處理器或一個C64x處理器。2023年2月1日TMS320C55xDSP原理及應(yīng)用253.利用可編程邏輯陣列(FPGA)進(jìn)行實時數(shù)字信號處理隨著微電子技術(shù)的快速發(fā)展,F(xiàn)PGA的制作工藝已經(jīng)進(jìn)入到45nm時期,這意味在一片集成電路當(dāng)中可以集成更多的晶體管,芯片運(yùn)行更快,功耗更低。其主要優(yōu)點(diǎn)如下。(1)適合高速信號處理:FPGA采用硬件實現(xiàn)數(shù)字信號處理,更加適合實現(xiàn)高速數(shù)字信號處理,對于采樣率大于100MHz的信號,采用專用芯片或FPGA是適當(dāng)?shù)倪x擇。(2)具有專用數(shù)字信號處理結(jié)構(gòu):縱觀當(dāng)前最先進(jìn)的FPGA,如ALTERA公司的StratixⅡ、Ⅲ系列、CycloneⅡ、Ⅲ、IV系列,Xilinx公司的Virtex-4、Virtex-5系列都為數(shù)字信號處理提供了專用的數(shù)字信號處理單元,這些單元由專用的乘法累加器組成,所提供的乘法累加器不僅減少了邏輯資源的使用,其結(jié)構(gòu)也更加適合實現(xiàn)數(shù)字濾波器、FFT等數(shù)字信號處理算法。第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用26使用FPGA的缺點(diǎn)如下:(1)開發(fā)需要較深的硬件基礎(chǔ):無論用VHDL還是VerilogHDL語言實現(xiàn)數(shù)字信號處理功能都需要較多的數(shù)字電路知識,硬件實現(xiàn)的思想與軟件編程有著很大區(qū)別,從軟件算法轉(zhuǎn)移到FPGA硬件實現(xiàn)存在著很多需要克服的困難。(2)調(diào)試?yán)щy:對FPGA進(jìn)行調(diào)試與軟件調(diào)試存在很大區(qū)別,輸出的信號需要通過示波器、邏輯分析儀進(jìn)行分析,或者利用JTAG端口記錄波形文件,而很多處理的中間信號量甚至無法引出進(jìn)行觀察,因此FPGA的更多工作是通過軟件仿真來進(jìn)行驗證的,這就需要編寫全面的測試文件,F(xiàn)PGA的軟件測試工作是十分艱巨的。第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用274.利用數(shù)字信號處理器實時實現(xiàn)數(shù)字信號處理

數(shù)字信號處理器(DigitalSignalProcessor,DSP)是一種專門為實時、快速實現(xiàn)各種數(shù)字信號處理算法而設(shè)計的具有特殊結(jié)構(gòu)的微處理器。20世紀(jì)80年代初,世界上第一片可編程DSP芯片的誕生為數(shù)字信號處理理論的實際應(yīng)用開辟了道路;隨著低成本數(shù)字信號處理器的不斷推出,更加促進(jìn)了這一進(jìn)程。90年代以后,DSP芯片的發(fā)展突飛猛進(jìn)。其功能日益強(qiáng)大,性能價格比不斷上升,開發(fā)手段不斷改進(jìn),使DSP芯片迅速成為眾多電子產(chǎn)品的核心器件,DSP系統(tǒng)也被廣泛地應(yīng)用于當(dāng)今技術(shù)革命的各個領(lǐng)域——通信電子、信號處理、自動控制、雷達(dá)、軍事、航空航天、醫(yī)療、家用電器、電力電子,而且新的應(yīng)用領(lǐng)域還在不斷地被發(fā)現(xiàn)、拓展。第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用29利用數(shù)字信號處理器實時實現(xiàn)數(shù)字信號處理的優(yōu)缺點(diǎn):優(yōu)點(diǎn):大規(guī)模集成性、穩(wěn)定性好精度高 可編程性 高速性能 可嵌入性 接口和集成方便缺點(diǎn):成本較單片機(jī)高,甚至高于PC機(jī)DSP技術(shù)更新速度快,開發(fā)和調(diào)試工具需要不斷完善,不如PC機(jī)編程和修改方便。第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用305.專用器件形式

用ASIC芯片實現(xiàn)。隨著專用集成電路ASIC(ApplicationSpecificIntegrated

Circuit)的廣泛使用,可以將DSP的功能集成到ASlC中。這種芯片可采用通用DSP器件中經(jīng)過裁剪的CPU核,再配上所需的存儲器及接口部件,固化專用程序組成用戶的ASIC,也可以配上專用算法的硬件。集成程度高,簡化系統(tǒng)結(jié)構(gòu)。功能單一,一般用于大批量消費(fèi)電子。

第1章數(shù)字信號處理和DSP系統(tǒng)

設(shè)計者要根據(jù)系統(tǒng)的嵌入式、便攜性、功耗、速度、成本、批量、可靠性、使用環(huán)境、開發(fā)周期等情況選擇實現(xiàn)方式。2023年2月1日TMS320C55xDSP原理及應(yīng)用31

1.3.1存儲器及總線結(jié)構(gòu)第1章數(shù)字信號處理和DSP系統(tǒng)

微處理器的存儲器結(jié)構(gòu)分為兩大類:馮·諾伊曼結(jié)構(gòu)和哈佛結(jié)構(gòu)。由于成本的原因,GPP廣泛使用馮·諾伊曼存儲器結(jié)構(gòu)。典型馮·諾伊曼結(jié)構(gòu)的特點(diǎn)是只有一個存儲器空間、一套地址總線和一套數(shù)據(jù)總線;指令、數(shù)據(jù)都存放在這個存儲器空間中,統(tǒng)一分配地址,所以處理器必須分時訪問程序和數(shù)據(jù)空間。通常,做一次乘法會發(fā)生4次存儲器訪問,用掉至少4個指令周期。為了提高指令執(zhí)行速度,DSP采用了程序存儲器空間和數(shù)據(jù)存儲器空間分開的哈佛結(jié)構(gòu)和多套地址、數(shù)據(jù)總線。哈佛結(jié)構(gòu)是并行體系結(jié)構(gòu),程序和數(shù)據(jù)存于不同的存儲器空間,每個存儲器空間獨(dú)立編址、獨(dú)立訪問。因此,DSP可以同時取指令(來自程序存儲器)和取操作數(shù)(來自數(shù)據(jù)存儲器);而且,還允許在程序空間和數(shù)據(jù)空間之間相互傳送數(shù)據(jù)。哈佛讀/寫結(jié)構(gòu)使DSP很容易實現(xiàn)單周期乘法運(yùn)算。GPP(GeneralPurposeProcessors,通用處理器)

1.3數(shù)字信號處理器的特點(diǎn)GPP的Von.Neumann結(jié)構(gòu)取指譯碼讀數(shù)執(zhí)行取指譯碼

???2023年2月1日TMS320C55xDSP原理及應(yīng)用外部I/O數(shù)據(jù)總線外部I/O地址總線數(shù)據(jù)總線數(shù)據(jù)地址總線程序數(shù)據(jù)總線程序地址總線CPUI/O口ROM串行接口RAM并行接口外部存儲器接口哈佛結(jié)構(gòu)外部I/O數(shù)據(jù)總線外部I/O地址總線數(shù)據(jù)總線數(shù)據(jù)地址總線程序數(shù)據(jù)總線程序地址總線第1章數(shù)字信號處理和DSP系統(tǒng)

取指譯碼讀數(shù)執(zhí)行取指譯碼讀數(shù)執(zhí)行取指譯碼讀數(shù)執(zhí)行取指譯碼讀數(shù)執(zhí)取指譯碼讀取指譯

2023年2月1日TMS320C55xDSP原理及應(yīng)用341.3.2流水線

流水線結(jié)構(gòu)將指令的執(zhí)行分解為取指、譯碼、取操作數(shù)和執(zhí)行等幾個階段。在程序運(yùn)行過程中,不同指令的不同階段在時間上是重疊的,流水線結(jié)構(gòu)提高了指令執(zhí)行的整體速度,有助于保證數(shù)字信號處理的實時性。因此,所有DSP均采用一定級數(shù)的流水線,如TMS320C54xDSP采用6級流水線,而TMS320C6xxxDSP采用8級流水線。TMS320C55xDSP的流水線則被分為指令流水線和執(zhí)行流水線兩部分,指令流水線完成訪問地址產(chǎn)生、等待存儲器回應(yīng)、取指令包、預(yù)解碼等工作;執(zhí)行流水線完成譯碼、讀取/修改寄存器、讀操作數(shù)和輸出結(jié)果等工作。

第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用351.3.3硬件乘法累加單元第1章數(shù)字信號處理和DSP系統(tǒng)

由于DSP任務(wù)包含大量的乘法—累加操作,所以DSP處理器使用專門的硬件來實現(xiàn)單周期乘法,并使用累加器寄存器來處理多個乘積的累加;而且?guī)缀跛蠨SP指令集都包含有MAC指令。一般在一個時鐘周期內(nèi)完成。有些DSP有多個硬件乘法累加單元并行處理數(shù)據(jù)。而GPP通常使用微程序?qū)崿F(xiàn)乘法。

DSP常用算法中的乘法與累加常用算法卷積相關(guān)變換級數(shù)算法分析當(dāng)用有限N項之和近似代替無窮求和時,DSP常用算法可歸納為:針對這類N項雙操作數(shù)相乘后乘積求和的通用形式,DSP中從硬件結(jié)構(gòu)上采用了多種先進(jìn)技術(shù),最終實現(xiàn)了N項乘積和主運(yùn)算僅需要N個指令周期。2023年2月1日TMS320C55xDSP原理及應(yīng)用381.3.4具有低開銷或零開銷循環(huán)及跳轉(zhuǎn)的硬件支持

第1章數(shù)字信號處理和DSP系統(tǒng)

DSP算法的特點(diǎn)之一是主要的處理時間用在程序中的循環(huán)結(jié)構(gòu)中,因此多數(shù)DSP都有專門支持循環(huán)結(jié)構(gòu)的硬件。所謂“零開銷”(zerooverhead)是指循環(huán)計數(shù)、條件轉(zhuǎn)移等循環(huán)機(jī)制由專門硬件控制,而處理器不用花費(fèi)任何時間。通常GPP的循環(huán)控制是用軟件來實現(xiàn)的。例如:RPTCSR;下一條指令執(zhí)行CSR+1次MACM*AR3+,*AR4+,AC1

;AC1=AC1+(AR3)*(AR4);AR3=AR3+1,AR4=AR4+12023年2月1日TMS320C55xDSP原理及應(yīng)用391.3.5特殊的尋址方式第1章數(shù)字信號處理和DSP系統(tǒng)

具有在單周期內(nèi)操作的多個硬件地址產(chǎn)生器,為下個指令準(zhǔn)備好數(shù)據(jù)地址。例如:*(ARn+T1)*ARn+*-ARnDSP還支持一些特殊的尋址方式。例如為了降低卷積、自相關(guān)算法和FFT算法的地址計算開銷,多數(shù)DSP支持循環(huán)尋址和位倒序?qū)ぶ?。而GPP一般不支持這些尋址方式。2023年2月1日TMS320C55xDSP原理及應(yīng)用401.3.6高效的特殊指令

第1章數(shù)字信號處理和DSP系統(tǒng)

DSP指令集設(shè)計了一些特殊的DSP指令用于專門的數(shù)字信號處理操作。這些指令充分利用了DSP的結(jié)構(gòu)特點(diǎn),提高了指令執(zhí)行的并行度,從而大大加快了完成這些操作的速度。例如TMS320C55xx中的FIRSADD指令和LMS指令,分別用于對稱結(jié)構(gòu)FIR濾波算法和LMS算法。2023年2月1日TMS320C55xDSP原理及應(yīng)用411.3.7豐富的運(yùn)算類指令第1章數(shù)字信號處理和DSP系統(tǒng)

DSP指令系統(tǒng)中的算術(shù)運(yùn)算類指令的比例很大,明顯高于GPP,對于某一算術(shù)運(yùn)算可明顯減少程序中的指令條數(shù)。完成同樣運(yùn)算功能所需指令少。減少運(yùn)算前準(zhǔn)備指令和運(yùn)算后處理指令。例如:MACM*AR3+,*AR4+,AC12023年2月1日TMS320C55xDSP原理及應(yīng)用421.3.8零開銷移位第1章數(shù)字信號處理和DSP系統(tǒng)

TMS320C55xx的CPU中包含快速移位器,指令系統(tǒng)中很多指令有附加移位操作。定點(diǎn)運(yùn)算的移位操作非常多。例如:ADDAC0<<T0,AC1;AC1=AC1+(AC0<<T0)2023年2月1日TMS320C55xDSP原理及應(yīng)用431.3.9豐富的片內(nèi)外設(shè)第1章數(shù)字信號處理和DSP系統(tǒng)

例如TMS320C55xx中的DARAM支持一個時鐘周期存取兩次數(shù)據(jù)。DSP片內(nèi)集成了眾多類型的硬件設(shè)備:CPU;存儲器(SARAM&DARAM、ROM);PLL,Timer,EMIF,EHPI,McBSP,GPIO,DMA,I2C,MMC,USB,ADC,RTC,UART等等。2023年2月1日TMS320C55xDSP原理及應(yīng)用441.4德州儀器公司的DSP產(chǎn)品按照應(yīng)用領(lǐng)域的要求,DSP器件可以分為三類:

工業(yè)控制領(lǐng)域,這方面的應(yīng)用要求DSP工作穩(wěn)定、可靠、集成度高、成本低,這類芯片一般都在內(nèi)部集成了CAN總線、PWM模塊等適合于工業(yè)控制的專用外設(shè);

低成本嵌入式應(yīng)用系統(tǒng),如手機(jī)、磁盤驅(qū)動器、MP3播放器等,在這些應(yīng)用中,成本、集成度和功耗是最重要的因素;

需要用復(fù)雜算法對大量數(shù)據(jù)進(jìn)行處理的應(yīng)用,如聲吶探測、視頻處理和地震探測等,該類設(shè)備批量小、算法復(fù)雜、對性能要求苛刻,而對成本和功耗并不是特別關(guān)注。

第1章數(shù)字信號處理和DSP系統(tǒng)

在選擇DSP處理器時,要根據(jù)目標(biāo)系統(tǒng)不同要求,綜合考慮性能、成本、集成度、開發(fā)的難易程度及功耗等因素。

2023年2月1日TMS320C55xDSP原理及應(yīng)用45德州儀器公司的DSP產(chǎn)品現(xiàn)已發(fā)展三代:

第一代是以TMS320C10為代表的數(shù)字信號處理器產(chǎn)品;

第二代數(shù)字信號處理器以C2x、C3x和C4x系列為代表,其中C2x為16位定點(diǎn)信號處理器,C3x和C4x為32位浮點(diǎn)信號處理器。

第三代包括主要用于控制領(lǐng)域的C24x和C28x系列、用于便攜消費(fèi)電子產(chǎn)品的低功耗16位定點(diǎn)數(shù)字信號處理器C54x、C55x系列、用于高速信號處理和圖像處理的高性能16位定點(diǎn)數(shù)字信號處理器C62x、C64x系列、用于浮點(diǎn)信號處理的32位浮點(diǎn)信號處理器C67x和TMS320C33。

第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用461.4.1C24x系列和C28x系列C24x系列主要用于電機(jī)控制領(lǐng)域,它可為交流感應(yīng)電機(jī)、直流永磁體電機(jī)和開關(guān)激勵式電機(jī)等提供高效控制,為無刷電機(jī)的變速控制提供了廉價且高可靠性的解決方案。C24x系列處理器采用TMS320C2XX內(nèi)核,該內(nèi)核具有一個32位算術(shù)邏輯單元,一個32位累加器,一個16位×16位乘法器,為了配合算術(shù)邏輯單元工作還提供了輸入和輸出數(shù)據(jù)移位器,為8個輔助寄存器和一個輔助寄存器算術(shù)單元提供了數(shù)據(jù)地址產(chǎn)生電路,還有專用的程序地址產(chǎn)生電路。它們內(nèi)部集成了DSP內(nèi)核和微控制器片上外設(shè),為用戶提供了一種方便的單片解決方案。C24x內(nèi)部集成了DARAM、Flash(或EEPROM)存儲器、16位定時器、脈寬調(diào)制器、A/D轉(zhuǎn)換器、看門狗模塊及CAN總線接口模塊、SPI(SerialPeripheralInterface)和SCI(SerialCommunicationsInterface)等通信接口。

第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用47

C28x系列處理器是德州儀器公司為控制領(lǐng)域的高端應(yīng)用而開發(fā)的系列產(chǎn)品。首先內(nèi)核由C24x系列的16位提升為32位,DSP內(nèi)核提供了2個16位×16位乘法累加器,可以進(jìn)行16位×16位、32位×32位乘法累加運(yùn)算。該系列芯片采用了先進(jìn)芯片制造技術(shù),速度升高到60~150MHz,F(xiàn)lash存儲器的容量最高提升到512KB。C28x系列又分為三個小系列,即C280x、C281x和C2833x,而C2833x系列又為用戶提供了浮點(diǎn)處理能力C280x系列為低價格數(shù)字信號控制器,速度從60MHz到100MHz

C281x系列的速度提高到150MHz,F(xiàn)lash存儲器的容量擴(kuò)展到128KB和256KB,AD轉(zhuǎn)換器的速度提高到12.5MSPS,C2810、C2811還具有代碼兼容和引腳兼容的特點(diǎn)。

第1章數(shù)字信號處理和DSP系統(tǒng)

C2833x系列在C281x的基礎(chǔ)上還集成了一個單精度浮點(diǎn)運(yùn)算單元,外部具有了32/16位EMIF接口,為了便于同外設(shè)進(jìn)行通信還提供了1個6通道DMA控制器,F(xiàn)lash存儲器的容量擴(kuò)展到128KB、256KB和512KB。2023年2月1日TMS320C55xDSP原理及應(yīng)用481.4.2C62x系列和C64x系列

C62x系列是德州儀器公司第一個采用超長指令字的DSP產(chǎn)品,它的內(nèi)部包含6個算術(shù)邏輯單元和兩個16位×16位乘法器,這樣C6000系列可以在一個循環(huán)中完成8次操作。C62x系列處理器的推出具有里程碑式的意義,它為高性能DSP樹立了標(biāo)準(zhǔn)。

C64x系列采用了C64x內(nèi)核,采用了增強(qiáng)型超長指令字結(jié)構(gòu),改進(jìn)了流水線結(jié)構(gòu),支持32位或64位寬度存儲器訪問,最高處理能力已經(jīng)達(dá)到9.6GIPS。

第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用491.4.3C67x系列和C33

C67x和C33是德州儀器公司的浮點(diǎn)數(shù)字信號處理器系列,C67x除了兼容C62x指令集之外,還支持浮點(diǎn)操作,單精度浮點(diǎn)運(yùn)算可達(dá)1GFLOPS,對于雙精度運(yùn)算可達(dá)250MFLOPS。其內(nèi)核包括4個浮點(diǎn)/定點(diǎn)算術(shù)邏輯單元,兩個定點(diǎn)算術(shù)邏輯單元和兩個浮點(diǎn)/定點(diǎn)乘法器,支持單精度和雙精度浮點(diǎn)運(yùn)算。浮點(diǎn):數(shù)的范圍大于定點(diǎn),不易溢出;浮點(diǎn)處理器的編程簡單,32位,影響功耗和速度,成本高

第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用50

1.4.4C54x系列和C55x系列

C54x和C55x系列是德州儀器公司為便攜電子產(chǎn)品推出的低功耗16位定點(diǎn)數(shù)字信號處理器

;

C54x系列針對低功耗應(yīng)用采用了一系列措施,在確保性能的同時保證了DSP的低功耗;

C55x是在C54x基礎(chǔ)上開發(fā)的新型低功耗、高性能數(shù)字信號處理器,它兼容C54x代碼集,乘法器變成兩個,而采用最新芯片制造技術(shù)大幅度提升了DSP的主頻,從而提高了C55x系列處理器的處理能力。第1章數(shù)字信號處理和DSP系統(tǒng)

TMS320VC5509-200PGE(S-PQFP-G144)1.4.5DSP發(fā)展趨勢獨(dú)立的DSP發(fā)展主頻速度、特殊功能、并行能力、特定的外設(shè)

DSP作為輔助技術(shù)協(xié)處理器(或特殊的計算單元)綜合發(fā)展與其他處理器形成混合核,兼顧兩者的優(yōu)點(diǎn)‘C1x‘C2x‘C2xx‘C5x‘C54xx‘C55xxFuture‘C62xx‘C64xx定點(diǎn)DSP‘C3x‘C4x‘C67xFuture浮點(diǎn)DSP‘C8xOMAP‘C57xFuture多處理器其它公司的DSP芯片AD公司的DSP芯片

AT&T公司的DSP芯片

Motorola/Freescale公司的DSP芯片Microchip公司的dsPIC系列DSP芯片

CPU:雙核ARM?Cortex?A57(最高2GHz)和四核A53內(nèi)核,支持64位GPU:Adreno430GPUDSP:HexagonV56DSP(最高800MHz),可讓多種應(yīng)用程序以超低功耗運(yùn)行,如音樂播放程序、增強(qiáng)的音頻效果應(yīng)用程序、計算機(jī)視覺處理應(yīng)用程序以及靜止和視頻圖像增強(qiáng)應(yīng)用程序手機(jī)芯片中的DSP內(nèi)核(以高通驍龍808處理器為例)DSP應(yīng)用系統(tǒng)的開發(fā)工具開發(fā)工具的優(yōu)劣對代碼的長度、代碼的執(zhí)行速度有著關(guān)鍵的作用,開發(fā)工具的功能是否齊全,使用是否方便,在很大程度上將影響DSP系統(tǒng)的開發(fā)周期以及產(chǎn)品上市時間。由于不同廠商、不同系列的DSP都有自己的開發(fā)工具,因此開發(fā)工具的選擇也是重要的一環(huán)。DSP的開發(fā)工具代碼產(chǎn)生工具對用戶開發(fā)的高級語言或匯編語言源代碼進(jìn)行編譯,生成可以在目標(biāo)DSP上運(yùn)行的可執(zhí)行代碼。代碼調(diào)試工具根據(jù)調(diào)試者的命令觀察DSP的狀態(tài),控制DSP代碼的執(zhí)行,進(jìn)行結(jié)果顯示,對用戶的代碼進(jìn)行調(diào)試或性能測試。TI公司的開發(fā)工具TMS320有一系列調(diào)試工具用代替或協(xié)助目標(biāo)系統(tǒng)進(jìn)行軟件評價和開發(fā)?,F(xiàn)有產(chǎn)品:DSK初學(xué)者開發(fā)套件(DSPStarterKit)EVM評估模塊(EvaluationModule)XDS100/XDS560硬件仿真器集成開發(fā)平臺CCS(CodeComposerStudio)DSP開發(fā)流程確定系統(tǒng)性能指標(biāo)核心算法模擬和驗證選擇DSP芯片及其他系統(tǒng)組件軟件設(shè)計和調(diào)試硬件設(shè)計和調(diào)試系統(tǒng)測試、集成2023年2月1日TMS320C55xDSP原理及應(yīng)用631.5DSP芯片的選擇1.5.1運(yùn)算速度

DSP芯片是否符合應(yīng)用要求,運(yùn)算速度是非常關(guān)鍵的。常見的運(yùn)算速度指標(biāo)有如下幾種:(1)指令周期:執(zhí)行一條指令所需的最短時間,數(shù)值等于主頻的倒數(shù);指令周期通常以ns(納秒)為單位。例如,運(yùn)行在200MHz的TMS320VC5510的指令周期為5ns(2)MIPS:每秒百萬條指令數(shù)。(3)MOPS:每秒百萬次操作數(shù)。(4)MFLOPS:每秒百萬次浮點(diǎn)操作數(shù)(5)BOPS:每秒十億次操作數(shù)。(6)MAC時間:一次乘法累加操作花費(fèi)的時間。大部分DSP芯片可在一個指令周期內(nèi)完成MAC操作。(7)FFT執(zhí)行時間:完成N點(diǎn)FFT所需的時間。FFT運(yùn)算是數(shù)字信號處理中的典型算法而且應(yīng)用很廣,因此該指標(biāo)常用于衡量DSP芯片的運(yùn)算能力。第1章數(shù)字信號處理和DSP系統(tǒng)

單周期執(zhí)行時間=1/時鐘頻率

MIPS(MillionInstructionPerSecond)TMS320C5402$6/100MIPS60mwTMS320C5416$39/160MIPS90mwTMS320C55x0.9v0.05mw/MIPS800MHz◎MFLOPS(MillionFloatingPointOperationSecond)TMS320C6701$210/1GFLOPS◎MBPS(MillionBitPerSecond)(主要用來衡量DSP數(shù)據(jù)傳輸能力,是對總線和I/O口數(shù)據(jù)吞吐率的度量,也就是總線和I/O口的帶寬)

例:‘C6000200MHz時鐘32--bit總線則總線數(shù)據(jù)吞吐率為800Mbyte/s或6400MBPS◎MACS(Multiply---AccumulatesPerScond)

2023年2月1日TMS320C55xDSP原理及應(yīng)用661.5.2算法格式和數(shù)據(jù)寬度

DSP算法格式主要分為定點(diǎn)算法和浮點(diǎn)算法兩種。一般而言,定點(diǎn)DSP芯片價格較便宜,功耗較低,但運(yùn)算精度稍低;浮點(diǎn)DSP芯片的優(yōu)點(diǎn)是運(yùn)算精度高,但價格稍貴,功耗也較大。第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用671.5.3存儲器

DSP的內(nèi)部存儲器通常包括Flash存儲器、RAM存儲器等。Flash存儲器通常用來存儲程序及重要的數(shù)據(jù),F(xiàn)lash存儲器是一種非易失存儲器,當(dāng)系統(tǒng)掉電后還能夠保留所存儲的信息,F(xiàn)lash存儲器的缺點(diǎn)是讀/寫速度較慢,而向Flash存儲器寫入數(shù)據(jù)的過程比較煩瑣。DSP中最重要的存儲器是RAM存儲器,例如在TMS320VC5510處理器中就集成了320KB的RAM存儲器。有的DSP片內(nèi)集成了多存取存儲器,允許在一個指令周期內(nèi)對存儲器進(jìn)行多次訪問;也有的DSP片內(nèi)集成了指令緩存,允許從緩存讀取指令,從而將存儲器空閑出來進(jìn)行數(shù)據(jù)讀取。DSP外部總線可以擴(kuò)展多種存儲器,其中既有EPROM、Flash等非易失存儲器,又有SRAM、FIFO等可快速訪問的存儲器,還可以連接SDRAM、DDRSDRAM等大容量存儲器,而外部總線的數(shù)據(jù)寬度也從16位向32位和64位發(fā)展。這些特點(diǎn)也是選擇DSP時可以參考的依據(jù)。第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用681.5.4功耗

由于DSP器件越來越多地應(yīng)用在便攜式產(chǎn)品中,因此功耗是一個重要的考慮因素。下面是一些常見的降低系統(tǒng)功耗的技術(shù)。(1)低工作電壓。目前DSP的工作電壓有5V,3.3V(LVTTL標(biāo)準(zhǔn)),2.5V(SSTL2標(biāo)準(zhǔn)),1.8V等多種。

(2)“休眠”或“空閑”模式。大多數(shù)處理器具有關(guān)斷處理器部分時鐘的功能以降低功耗。第1章數(shù)字信號處理和DSP系統(tǒng)

(3)可編程時鐘分頻器。有的DSP可以在運(yùn)行時動態(tài)編程改變處理器時鐘頻率以降低功耗。

(4)外圍控制。一些DSP器件允許程序中止系統(tǒng)暫時不使用的外圍電路功能。2023年2月1日TMS320C55xDSP原理及應(yīng)用691.5.5開發(fā)工具選擇DSP芯片時,必須注意其開發(fā)工具的支持情況(包括軟件開發(fā)工具、硬件開發(fā)工具)。軟件開發(fā)工具包括編譯器、匯編器、鏈接器、調(diào)試器、代碼模擬器、代碼庫及實時操作系統(tǒng)(RealTimeOperationSystem,RTOS)等,而硬件工具包括評估板和仿真器等。

第1章數(shù)字信號處理和DSP系統(tǒng)

2023年2月1日TMS320C55xDSP原理及應(yīng)用701.6定點(diǎn)運(yùn)算及定點(diǎn)DSP第1章數(shù)字信號處理和DSP系統(tǒng)

1、數(shù)據(jù)格式2、運(yùn)算方法3、定點(diǎn)DSP芯片1、數(shù)據(jù)格式

在定點(diǎn)DSP芯片中,機(jī)器指令采用定點(diǎn)數(shù)進(jìn)行數(shù)值運(yùn)算。不能直接計算浮點(diǎn)數(shù)。如果要快速計算,變量要采用整型數(shù)來表示(int、long型)。

DSP芯片存儲的數(shù)以2的補(bǔ)碼形式表示。-32768,32767(8000h,7FFFh)-1(FFFFh),0+-

-128,127(80h,7Fh)

-1(FFh),0+-0000000000000100采用Q0表示法,2000H為8192采用Q15表示法,2000H為0.25如:Q表示法16進(jìn)制數(shù)2000H小數(shù)點(diǎn)的位置0000000000000100小數(shù)點(diǎn)的位置符號位CPU不認(rèn)為它們有區(qū)別,都是2000H,編程者要記住每個變量的Q值。數(shù)的定標(biāo):一般用Q表示法。浮點(diǎn)數(shù)與定點(diǎn)數(shù)的轉(zhuǎn)換關(guān)系

浮點(diǎn)數(shù)轉(zhuǎn)換為定點(diǎn)數(shù)定點(diǎn)數(shù)轉(zhuǎn)換為浮點(diǎn)數(shù)浮點(diǎn)數(shù)x=0.5,定標(biāo)Q=15,則定點(diǎn)數(shù)=0.5*32768=16384=4000H第1章數(shù)字信號處理和DSP系統(tǒng)

浮點(diǎn)數(shù)的表示指數(shù)部分又稱為階碼,階碼用偏移碼表示。例如:數(shù)125.5,二進(jìn)制原碼為:1111101.1B,亦可表示為:1.1111011*26,6為階碼,6+127=133=10000101B,因此125.5用單精度浮點(diǎn)數(shù)可表示為:

01000010

111110110000000000000000

高字節(jié)低字節(jié)

Q表示S表示十進(jìn)制數(shù)表示范圍Q15S0.15-1≤X≤0.9999695Q14S1.14-2≤X≤1.9999390..................Q1S14.1-16384≤X≤16383.5Q0S15.0-32768≤X≤32767第1章數(shù)字信號處理和DSP系統(tǒng)

定點(diǎn)數(shù)的表示范圍:數(shù)據(jù)類型位寬字節(jié)數(shù)數(shù)值范圍char81-128~+127unsignedchar810~255short162-32768~+32767unsignedshort1620~65535int162-32768~+32767unsignedint1620~65535long324-2147483648~+2147483647unsignedlong3240~4294967295float324±1.175494E-38~±3.402823E+38(數(shù)符加尾數(shù)占24位,指數(shù)符加指數(shù)占8位)double648±1.175494E-38~±3.402823E+38(數(shù)符加尾數(shù)占48位,指數(shù)符加指數(shù)占16位)加法/減法運(yùn)算的C語言定點(diǎn)模擬floatx,y,z;z=x+y;兩個操作數(shù)的定標(biāo)值一樣如果加法/減法的結(jié)果超出16位的表示范圍,則必須保留32位結(jié)果,以保證運(yùn)算的精度z=x+y==定點(diǎn)加法描述:

intx,y,z;longtemp; /*臨時變量*/temp=y(tǒng)<<(Qx-Qy);temp=x+temp;z=(int)(temp>>(Qx-Qz)),若Qx≥Qzz=(int)(temp<<(Qz-Qx)),若Qx≤Qz例子:設(shè)x=0.5,y=3.1,則浮點(diǎn)運(yùn)算結(jié)果為z=x+y=0.5+3.1=3.6;Qx=15,Qy=13,Qz=13,則定點(diǎn)加法為:

x=4000H=16384;y=6333H=25395;temp=25395<<2=101580;temp=x+temp=16384+101580=117964;z=(int)(117964L>>2)=29491;驗算:z=29491/8192=3.6定點(diǎn)加法定點(diǎn)減法

設(shè)x=3.0,y=3.1,則浮點(diǎn)運(yùn)算結(jié)果為z=x-y=3.0-3.1=-0.1;Qx=13,Qy=13,Qz=15,則定點(diǎn)減法為:

x=3.0*213=24576;y=3.1*213=25395;

temp=25395;temp=x-temp=24576-25395=-819;因為Qx<Qz,故z=(int)(-819<<2)=-3276。驗算:由于z的Q值為15,所以定點(diǎn)值z=-3276即為浮點(diǎn)值z=-3276/32768-0.1結(jié)果超過16位表示范圍

設(shè)x的Q值為Qx,y的Q值為Qy,且Qx>Qy,加法結(jié)果z的定標(biāo)值為Qz,則定點(diǎn)加法為:intx,y;

longtemp,z;

temp=y(tǒng)<<(Qx-Qy);

temp=x+temp;z=temp>>(Qx-Qz),若Qx≥Qzz=temp<<(Qz-Qx),若Qx≤Qz

例子:設(shè)x=15000,y=20000,則浮點(diǎn)運(yùn)算結(jié)果為z=x+y=15000+20000=35000,顯然z>32767;Qx=1,Qy=0,Qz=0,則定點(diǎn)加法為:

x=15000*21=30000;y=2000*20=20000;temp=20000<<1=40000;temp=temp+x=40000+30000=70000;z=70000L>>1=35000;結(jié)果超過16位的定點(diǎn)加法

乘法運(yùn)算的C語言定點(diǎn)模擬

z=xy;intx,y,z;longtemp;temp=(long)x;z=(temp×y)>>(Qx+Qy-Qz);z=xy=

=定點(diǎn)乘法

設(shè)x=18.4,y=36.8,則浮點(diǎn)運(yùn)算值為z=18.4×36.8=677.12;Qx=10,Qy=9,Qz=5,所以x=18841;y=18841;

temp=18841L;z=(18841L*18841)>>(10+9-5)=354983281L>>14=21666;因為z的定標(biāo)值為5,故定點(diǎn)z=21666即為浮點(diǎn)的z=21666/32=677.08除法運(yùn)算的C語言定點(diǎn)模擬

z=x/y;intx,y,z;longtemp;temp=(long)x;z=(temp<<(Qz-Qx+Qy))/y;

z=x/y

=

定點(diǎn)除法

設(shè)x=18.4,y=36.8,浮點(diǎn)運(yùn)算值為z=x/y=18.4/36.8=0.5;Qx=10,Qy=9,Qz=15;所以有x=18841,y=18841;temp=(long)18841;z=(18841L<<(15-10+9))/18841=308690944L/18841=16384;因為商z的定標(biāo)值為15,所以定點(diǎn)z=16384即為浮點(diǎn)z=16384/32768=0.5程序變量的Q值確定確定變量的Q值實際上就是確定變量的動態(tài)范圍。設(shè)變量的絕對值的最大值為|max|,取整數(shù)n,使其滿足如果某變量的值在-1至+1之間,即<1,因此n=0,Q=15-n=15

確定變量的絕對值的最大值理論分析法(三角函數(shù)、漢明窗、FIR卷積、自相關(guān)線性預(yù)測編碼等)統(tǒng)計分析法(依據(jù)足夠多的采樣值)2、運(yùn)算方法

通常的是全部以Q15格式表示的小數(shù)或以Q0格式表示的整數(shù)來工作定點(diǎn)乘法定點(diǎn)加法定點(diǎn)除法定點(diǎn)乘法

小數(shù)乘小數(shù)Q15×Q15=Q300.5*0.5=0.250.100000000000000 ;Q15×0.100000000000000 ;Q15 00.010000000000000000000000000000=0.25;Q30LT OP1 ;OP1=4000H(0.5/Q15)MPY OP2 ;OP2=4000H(0.5/Q15)PACSACH ANS,1 ;(ANS)=2000H(0.25/Q15)

定點(diǎn)乘法(續(xù))整數(shù)乘整數(shù)Q0×Q0=Q017×(-5)=-850000000000010001=17×11111111111

溫馨提示

  • 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

提交評論