![數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座_第1頁(yè)](http://file4.renrendoc.com/view12/M0B/13/3F/wKhkGWYCZtWAF5WvAACTtbTJJz8008.jpg)
![數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座_第2頁(yè)](http://file4.renrendoc.com/view12/M0B/13/3F/wKhkGWYCZtWAF5WvAACTtbTJJz80082.jpg)
![數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座_第3頁(yè)](http://file4.renrendoc.com/view12/M0B/13/3F/wKhkGWYCZtWAF5WvAACTtbTJJz80083.jpg)
![數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座_第4頁(yè)](http://file4.renrendoc.com/view12/M0B/13/3F/wKhkGWYCZtWAF5WvAACTtbTJJz80084.jpg)
![數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座_第5頁(yè)](http://file4.renrendoc.com/view12/M0B/13/3F/wKhkGWYCZtWAF5WvAACTtbTJJz80085.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座2024/3/26數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座DSP芯片的選擇什么是DSP?DSP的應(yīng)用DSP的運(yùn)算數(shù)據(jù)寬度速度(Speed)存貯的組織開發(fā)的便宜多DSP支持便攜應(yīng)用價(jià)格主題概述 DSP工程設(shè)計(jì)數(shù)字化設(shè)計(jì)模擬混合電路設(shè)計(jì)DSPS目標(biāo)系統(tǒng)設(shè)計(jì)DSP外設(shè)的設(shè)計(jì)與使用系統(tǒng)軟件開發(fā)工程應(yīng)用注意事項(xiàng)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座DSP簡(jiǎn)介數(shù)字信號(hào)處理器(DigitalSignalProcessor,DSP)是專門用于更好實(shí)現(xiàn)數(shù)字信號(hào)處理應(yīng)用的微處理器。1980年第一個(gè)商品化DSP問世;目前眾多新的DSP,為設(shè)計(jì)者提供了廣泛的選擇;新的半導(dǎo)體制造廠家不斷進(jìn)入這個(gè)領(lǐng)域,爭(zhēng)取更大的市場(chǎng)分額,設(shè)計(jì)者在未來幾年內(nèi)將有更廣的選擇。今天的DSP是具有了強(qiáng)大功能的復(fù)雜器件。下面我們就介紹現(xiàn)在商品化DSP的共同特點(diǎn),解釋它們之間的區(qū)別,以及設(shè)計(jì)者在應(yīng)用時(shí)注意的事項(xiàng)。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座什么是DSP?多數(shù)DSP共有的基本特性:高性能、重復(fù)性、高數(shù)據(jù)量。在單個(gè)指令周期內(nèi)完成乘法累加運(yùn)算(Multiply-And-Accumulate,MAC)的能力這是衡量DSP最常用的性能;在涉及需要點(diǎn)乘的產(chǎn)品中,例如濾波器,MAC運(yùn)算在算法中是非常有用的。為了完成此功能,DSP在主數(shù)據(jù)通路中集成有乘法器和累加器;另外,為了進(jìn)行一系列MAC運(yùn)算而又沒有發(fā)生運(yùn)算溢出(overflow),DSP通常在累加器中提供額外的比特?cái)?shù),以滿足計(jì)算結(jié)果對(duì)比特?cái)?shù)增加的要求。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座什么是DSP?在單個(gè)指令周期內(nèi)同時(shí)完成幾個(gè)存貯器存取的能力這特點(diǎn)允許DSP在讀取指令的同時(shí),獲得此指令所需要的被運(yùn)算數(shù),或者/和存貯前一指令的運(yùn)算結(jié)果。通常在單個(gè)指令周期內(nèi)完成多個(gè)存貯器讀取是有許多客觀限制的。典型之一是存取的存貯器位于片內(nèi),這樣只能某些指令能進(jìn)行多個(gè)存貯器存取。為了支持同時(shí)多個(gè)存取,DSP提供了多個(gè)片內(nèi)(a)總線(On-ChipBus);(b)多個(gè)片內(nèi)存貯器以及某些情況下的(c)多個(gè)獨(dú)立的存貯空間。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座什么是DSP?尋址方式為了使運(yùn)算達(dá)到最大速度,DSP包含了一個(gè)地址產(chǎn)生單元,一旦適當(dāng)?shù)牡刂芳拇嫫鞅慌渲?,則地址發(fā)生器在后臺(tái)運(yùn)行,形成運(yùn)算指令所需的并行操作存取地址,地址發(fā)生器是針對(duì)DSP而選擇的模式。間接尋址最常用的尋址方式是具有后增量(Post_increment)的間接尋址寄存器,它通常用于連續(xù)存放一系列數(shù)據(jù)。模數(shù)尋址這種尋址簡(jiǎn)化了循環(huán)存儲(chǔ)的使用。比特反轉(zhuǎn)(bit_reversed)尋址這種方式更易于編譯快速FFT算法的結(jié)果。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座什么是DSP?循環(huán)(Looping)因?yàn)槎鄶?shù)DSP涉及完成重復(fù)的計(jì)算,多數(shù)DSP對(duì)更有效的Looping提供了特別支持。通常,對(duì)于特殊的循環(huán)或者重復(fù)指令,DSP允許開發(fā)人員完成一個(gè)For_Next循環(huán)語句,不用為了更新或檢測(cè)循環(huán)計(jì)數(shù)器而花費(fèi)任何指令周期。強(qiáng)大的I/O功能:為了允許低價(jià)、高性能的輸入輸出,多數(shù)DSP包含有多個(gè)串口或者并口I/O接口。串口并口特殊的I/O處理機(jī)制——低層的中斷或者DMA方式數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座DSP的應(yīng)用DSP從雷達(dá)分析到消費(fèi)者電子都有廣泛的應(yīng)用,但沒有一個(gè)DSP能滿足所有的或者大多數(shù)的應(yīng)用。因此,對(duì)于設(shè)計(jì)者首要的任務(wù)是權(quán)衡各種因素,而選擇適合于自己應(yīng)用的DSP。這些因素包括:性能指標(biāo)、價(jià)格、集成度、開發(fā)難易、功耗及其它因素。嵌入系統(tǒng)(embeddedsystem)按市場(chǎng)份額講,最大的應(yīng)用是便宜的、大量的嵌入系統(tǒng)。價(jià)格、集成度占首位例如:移動(dòng)電話、硬盤驅(qū)動(dòng)器(DSP用語伺服控制)和調(diào)制解調(diào)器(modem)。功耗居首位對(duì)于便攜、電池供電的產(chǎn)品,電源功耗非常重要。在這些系統(tǒng)中,性能和開發(fā)難易居次要地位,雖然用戶也開發(fā)自己的DSP軟件和圍繞DSP配置自己的硬件。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座DSP的應(yīng)用特殊需要—數(shù)據(jù)大、算法復(fù)雜的處理例如:聲納和地震探測(cè)。它們的數(shù)量很少,但其算法很復(fù)雜。這樣產(chǎn)品設(shè)計(jì)量就很大,而且也很復(fù)雜,結(jié)果是設(shè)計(jì)者喜歡選擇高性能、易用且支持多芯片配置的DSP。在某些情況下,設(shè)計(jì)者不愿意通過改造已有DSP系統(tǒng),防止產(chǎn)生零亂。他們選擇標(biāo)準(zhǔn)的開發(fā)板,通過調(diào)用他們的已有函數(shù)庫(kù)來完成開發(fā)。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座DSP的應(yīng)用多媒體(multimedia)—新興市場(chǎng)許多廠家正在占領(lǐng)這個(gè)新興的市場(chǎng),包含有DSP的計(jì)算機(jī)可以提供多媒體功能。Voicemail(語音信箱)、數(shù)據(jù)/傳真Modem、音樂和語音合成及分解、圖象壓縮、電視接收、廣播接收。多媒體對(duì)DSP的要求:高性能、低價(jià)格、高集成度多媒體除具有嵌入系統(tǒng)的量大、低價(jià)、高集成度的特點(diǎn)外,還要求高性能。因?yàn)槎嗝襟wPC要求DSP同時(shí)完成多項(xiàng)功能。多項(xiàng)功能之間更有效的切換多媒體除要求更有效地完成多項(xiàng)功能外,還要求DSP必須具有更有效地切換多項(xiàng)功能的能力。更大的存貯容量例如接MPEG1標(biāo)準(zhǔn),圖象壓縮每秒鐘設(shè)為1.5MB/s。這樣,多媒體就需要海量存貯。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座DSP的運(yùn)算數(shù)的表示:一個(gè)可編程DSP的基本特性之一是DSP所采用的運(yùn)算類型。定點(diǎn)制DSP:一個(gè)數(shù)表示為整數(shù)或者+1.0~-1.0之間的函數(shù)。浮點(diǎn)運(yùn)算:一個(gè)數(shù)表示為指數(shù)部分和尾數(shù)部分。尾數(shù)部分通常是+1.0~-1.0之間的小數(shù),而指數(shù)部分表示二進(jìn)制中小數(shù)點(diǎn)的位置。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座浮點(diǎn)DSP和定點(diǎn)DSP的比較性能比較—浮點(diǎn)運(yùn)算是更靈活、更通用的機(jī)制更寬的動(dòng)態(tài)范圍(所能表示的最大最小數(shù)之比)更好的精度易用:在浮點(diǎn)制中,開發(fā)人員不必關(guān)心動(dòng)態(tài)范圍和精度,而對(duì)定點(diǎn)DSP而言,開發(fā)人員要時(shí)刻小心各種階段的信號(hào)范圍,以確保在有限的動(dòng)態(tài)范圍和運(yùn)算精度下達(dá)到自己要求的數(shù)值性能。更貴:浮點(diǎn)DSP為了完成浮點(diǎn)運(yùn)算,需要增加復(fù)雜的電路,這也就意味著一個(gè)大的沖模(die)。應(yīng)用比較對(duì)于嵌入系統(tǒng),選擇定點(diǎn)DSP。因?yàn)榍度胂到y(tǒng)對(duì)于價(jià)格是首位的。開發(fā)人員通過分析和方針,決定他們所需的動(dòng)態(tài)范圍和運(yùn)算精度,以及是否需要增加比例因子。大動(dòng)態(tài)范圍、高精度、開發(fā)容易,選擇浮點(diǎn)DSP。對(duì)于不關(guān)心價(jià)格,而對(duì)動(dòng)態(tài)范圍和精度有特殊要求的用戶,以及為了開發(fā)容易,可以選擇浮點(diǎn)DSP。DSP的運(yùn)算數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座定點(diǎn)DSP完成浮點(diǎn)運(yùn)算浮點(diǎn)在定點(diǎn)DSP中完成通常的浮點(diǎn)運(yùn)算是可能的。調(diào)用浮點(diǎn)運(yùn)算仿真程序。但這樣做需要很多個(gè)指令周期,得不償失。因此,通用的浮點(diǎn)仿真幾乎不用了。塊浮點(diǎn)運(yùn)算(Blockfloating-point)定點(diǎn)和浮點(diǎn)運(yùn)算的折中構(gòu)成了塊浮點(diǎn)運(yùn)算——一組數(shù)中數(shù)據(jù)具有不同的尾數(shù),但具有唯一的、相同的指數(shù)表示這一數(shù)據(jù)塊。塊浮點(diǎn)運(yùn)算通常由軟件完成,但有些DSP中也有硬件輔助完成此功能。DSP的運(yùn)算數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座數(shù)據(jù)寬度(DataWidth)所有的浮點(diǎn)DSP都是32bit數(shù)據(jù)字(DataWord)定點(diǎn)DSP常用16bit數(shù)據(jù)字,但MotoralaDSP5600X系列和Star半導(dǎo)體公司SPROC系列采用24bit字寬,ZoranZR38000采用20bit數(shù)據(jù)字。數(shù)據(jù)字的大小對(duì)價(jià)格具有重要影響芯片的大小(ChipSize)封裝管腳的數(shù)目(Numberofpackagepins)外部存儲(chǔ)器的大小指令字長(zhǎng)和數(shù)據(jù)字長(zhǎng)大多數(shù)DSP的指令字長(zhǎng)和數(shù)據(jù)字長(zhǎng)相等,但也不全是這樣。如AD公司ADSP21XX系列16bit數(shù)據(jù)字長(zhǎng)24bit指令字長(zhǎng);Zoran公司ZR3800是20bit數(shù)據(jù)字長(zhǎng)32bit指令字長(zhǎng)。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座數(shù)據(jù)寬度(DataWidth)應(yīng)用選擇—字長(zhǎng)與開發(fā)復(fù)雜度折中對(duì)于開發(fā)者來講,在滿足需要的情況下,應(yīng)選擇最小的DSP,這樣價(jià)格才能便宜;對(duì)于選擇定點(diǎn)DSP還是浮點(diǎn)DSP,需要對(duì)字長(zhǎng)和開發(fā)復(fù)雜性進(jìn)行折中;對(duì)于某些24bit才能滿足需要的應(yīng)用,我們?cè)跔奚藦?fù)雜性或程序的基礎(chǔ)上,16bitDSP也能滿足需要。例如對(duì)于16bitDSP,通過對(duì)指令的適當(dāng)組合,也能完成雙精度32bit的運(yùn)算操作。當(dāng)然雙精度的運(yùn)算速度比單精度慢。如果你的應(yīng)用中大多數(shù)是單精度運(yùn)算,只有少部分需要高精度運(yùn)算,這時(shí)你選擇用單精度DSP完成雙精度運(yùn)算可更意義。反之,則需要更寬比特的DSP。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座速度(Speed)滿足特殊需要時(shí),對(duì)DSP的一個(gè)關(guān)鍵測(cè)試是運(yùn)行速度。有許多方法可以測(cè)試DSP的速度。最快指令周期時(shí)間—執(zhí)行一個(gè)DSP最快的指令所需要的時(shí)間通常用一秒鐘內(nèi)執(zhí)行多少百萬次指令(Millionsofinstructionspersecond,MIPS)來衡量。若DSP指令周期為20ns~100ns,即執(zhí)行速率為50~10MIPS。問題:不同DSP之間單個(gè)指令完成的工作量,變化非常大。例如,早期的DSP在一個(gè)指令周期內(nèi)只能完成一次加法或者乘法(兩者不能同時(shí)完成)。相反,現(xiàn)在的DSP一個(gè)指令周期就可能完成乘法累加功能(MAC)。另外,有的DSP(如Motorala的DSP5600系列)可以對(duì)和ALU沒有關(guān)系的數(shù)據(jù)進(jìn)行并列移動(dòng)。而有的DSP只支持和ALU有關(guān)的數(shù)據(jù)的并行移動(dòng)。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座速度(Speed)基本操作周期為了克服上述問題,用基本操作周期來代替指令操作周期作為衡量DSP速度的標(biāo)尺。共同的操作是MAC,但不幸的是關(guān)于DSPMAC運(yùn)算次數(shù)差異這方面的信息很少?,F(xiàn)在大多數(shù)DSP都在一個(gè)指令周期內(nèi)完成一個(gè)MAC操作,并且MAC周期等于指令周期。問題:有的DSP在完成MAC外,還能完成一些其它功能;MAC次數(shù)中沒有考慮控制指令,有時(shí)它也對(duì)性能產(chǎn)生重要影響。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座速度(Speed)標(biāo)準(zhǔn)基準(zhǔn)(Benchmarks)一個(gè)更通用的方法是定義一組標(biāo)準(zhǔn)基準(zhǔn),然后比較各個(gè)DSP的運(yùn)行速度。這個(gè)標(biāo)準(zhǔn)基準(zhǔn)可能是簡(jiǎn)單的“核心”功能(如FIR或IIRDF),或者是某些應(yīng)用的整體或部分。注意事項(xiàng)MOPS和MFLOPS的區(qū)別MOPS—每秒鐘多少百萬次運(yùn)算(Millionsofoperationspersecond)MFLOPS—每秒鐘多少百萬次浮點(diǎn)運(yùn)算不同的廠家對(duì)由什么構(gòu)成“運(yùn)算(Operation)”理解不同。時(shí)鐘頻率時(shí)鐘≥指令周期DSP的輸入時(shí)鐘可能和DSP的指令頻率相同,也可能是指令速率的兩倍或者四倍。時(shí)鐘頻率<指令速率——倍頻和鎖相技術(shù)例如40MHzDSP56156的MIPS=20MHzADSP-2101的MIPS數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座存貯的組織指令Mem和數(shù)據(jù)Mem的組織DSP存貯中的組織對(duì)性能有很大影響。如前所述,MAC是很多DSP的基本運(yùn)算,快速M(fèi)AC運(yùn)算需要獲得一個(gè)指令字,同時(shí)在同一指令周期內(nèi)從Memory讀取兩個(gè)數(shù)據(jù)字??梢杂泻芏喾椒▽?shí)現(xiàn)這一點(diǎn):多端口Mem—允許在一個(gè)指令周期內(nèi)多哥存貯器存取哈佛結(jié)構(gòu)—獨(dú)立的數(shù)據(jù)樹指令Memory指令Cache—從Cache中讀取指令代替從存儲(chǔ)器中數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座存貯的組織存儲(chǔ)器的大小片內(nèi)部、外部總線的數(shù)目定點(diǎn)DSP定點(diǎn)DSP主要面向嵌如系統(tǒng)市場(chǎng),它要求存貯量小。中小規(guī)模片內(nèi)memmory(256~12KWords),小的外部數(shù)據(jù)總線。例如:ADC,AT&T,Mot,TI的定點(diǎn)DSP都具有16bit的地址總線,這樣就限制了其外部Memory的容量。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座存貯的組織存儲(chǔ)器的大小片內(nèi)部、外部總線的數(shù)目浮點(diǎn)DSP沒有或者很少的片內(nèi)memory,但有很大的外部數(shù)據(jù)總線。例如:AD公司ADSP—21021沒有片內(nèi)Memory,但有32bit外部數(shù)據(jù)地址總線和24bit外部程序地址總線。另外,這些DSP提供的Cache技術(shù),可允許使用較快的外部Memory。TITMS320C30:6K片內(nèi)Memory,24bit外部數(shù)據(jù)總線和13bit外部程序地址總線ADSP—21060:4M片內(nèi)Memory,可以改變片內(nèi)Memory的配置以分配給Data和指令不同的容量。如64K32bitData和40K48bit程序注:Memory的組織、大小、外部總線的數(shù)目非常依賴與應(yīng)用。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座開發(fā)的便宜開發(fā)的難易依賴與你的應(yīng)用。例如在研究中,對(duì)于樣機(jī)或仿真來講,希望越快越容易的開發(fā)出來。另一方面,對(duì)一些公司來講,起為了降低產(chǎn)品的價(jià)格,節(jié)省開發(fā)工具的費(fèi)用,愿意承受艱苦的開發(fā)環(huán)境,但這帶來的負(fù)面影響是開發(fā)周期長(zhǎng)、產(chǎn)品上市慢。選擇開發(fā)DSP的因素:軟件工具(匯編、鏈接、仿真、編譯、實(shí)時(shí)操作系統(tǒng))硬件設(shè)計(jì)工具(開發(fā)板和仿真器)高級(jí)工具(如基于圖形的框圖設(shè)計(jì)環(huán)境)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座開發(fā)的便宜程序設(shè)計(jì)語言匯編語言高級(jí)語言,如C或Ada高級(jí)設(shè)計(jì)環(huán)境——基于圖形的框圖設(shè)計(jì)如MentorGraphics的DSP工作站DSP5600X系列ComdiscoSystems的SPWTMS320C3X系列調(diào)試仿真工具不管是在高級(jí)語言,還是在匯編語言,調(diào)試和硬件仿真工具都是值得特別注意的。開發(fā)板允許開發(fā)人員在完成最終硬件之前實(shí)時(shí)地運(yùn)行軟件。數(shù)量少的產(chǎn)品也選擇開發(fā)板作為自己的最終硬件平臺(tái)。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座多DSP支持對(duì)于某些大計(jì)算量的應(yīng)用(如雷達(dá)、聲納等),需要多片DSP,此時(shí),互連的難易—DSP間通信電路的設(shè)計(jì)互連的性能—的吞吐量、效率、延遲就成為重要因素。TITMS320C402個(gè)完全獨(dú)立的地址和數(shù)據(jù)總線(用于連接本片和全局的Mem)。6個(gè)8bit的并口,每個(gè)并口20Mbytes/s的速率。這些并口非常適合構(gòu)成超立方體和拓?fù)浣Y(jié)構(gòu)。AD公司ADSP-21060(a)雙向地址和數(shù)據(jù)總線,6個(gè)雙向總線請(qǐng)求線。通過精致的總線構(gòu)造,可支持6個(gè)DSP互連。(b)6個(gè)4bit并口數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座便攜應(yīng)用在許多便攜應(yīng)用中(如移動(dòng)電話和尋呼、計(jì)算機(jī)),電源功耗成為主要問題。采取了許多措施來降低電源功耗。減少工作電壓AD、ATQT、Motorola、TI都已有3VDSP。休眠模式許多DSP在等待狀態(tài)時(shí),關(guān)掉DSP中一些部分的時(shí)鐘,以減少功耗。蘇醒:內(nèi)部未掩蓋的中斷;特定的外部中心線;其它可編程時(shí)鐘新的DSP允許用軟件來改變DSP的工作時(shí)鐘頻率,以滿足不同的任務(wù)設(shè)置不同時(shí)鐘,節(jié)省電源。外圍設(shè)備控制
有的DSP允許把現(xiàn)在不用的外設(shè)屏蔽掉。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座價(jià)格——應(yīng)用、封裝形式、數(shù)量應(yīng)用DSP的價(jià)格主要受訂貨數(shù)量的影響,只要能滿足要求,就應(yīng)選擇最低價(jià)格的,雖然它可能缺少靈活性和編程困難。例如:TMS320C16問世于1980年,現(xiàn)在的報(bào)價(jià)是8美元(1000片時(shí)),正因?yàn)樗鼒?bào)價(jià)低現(xiàn)在仍能有定單。PackagingPQFP、TQFP是最便宜的,PGA是最貴的。例:33MHzTMS320C30PGA=2.3PQFP(2.3倍)數(shù)量數(shù)量是決定價(jià)格的一個(gè)重要因素,如1~1,000~100,000片的價(jià)格會(huì)有顯著的差異。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座DSP選擇小結(jié)DSP的選擇:綜合考慮運(yùn)算(定點(diǎn)、浮點(diǎn))數(shù)據(jù)寬度速度存儲(chǔ)器組織開發(fā)難易DSP支持電源功耗價(jià)格等。正確的DSP依賴于你的應(yīng)用。對(duì)于這個(gè)應(yīng)用好,對(duì)于另一個(gè)不一定就好。數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座DSP芯片的選擇什么是DSP?DSP的應(yīng)用DSP的運(yùn)算數(shù)據(jù)寬度速度(Speed)存貯的組織開發(fā)的便宜多DSP支持便攜應(yīng)用價(jià)格主題概述 DSP工程設(shè)計(jì)數(shù)字化設(shè)計(jì)模擬混合電路設(shè)計(jì)DSPS目標(biāo)系統(tǒng)設(shè)計(jì)DSP外設(shè)的設(shè)計(jì)與使用系統(tǒng)軟件開發(fā)工程應(yīng)用注意事項(xiàng)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座(一)數(shù)字化設(shè)計(jì)概述數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座TMS320C542A/DA/DFILTERD/ACONTROLLEREPROMRAMFILTER/MUX一個(gè)典型DSPSOLUTION設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座設(shè)計(jì)要素:數(shù)字化要求模擬混合電路(ADC/DAC)設(shè)計(jì)處理需求(DSP運(yùn)算量)吞吐量需求存儲(chǔ)器需求(SRAM、ROOM、FLASH等)通信口需求其它控制(電源設(shè)計(jì)、狀態(tài)控制、時(shí)鐘控制、多DSP控制、......)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座(二)模數(shù)與數(shù)模轉(zhuǎn)換1基帶信號(hào)采樣定理
要想連續(xù)信號(hào)抽取后能夠不失真地還原出原信號(hào),則抽取頻率必須大于或等于兩倍原信號(hào)頻譜的最高頻率。(Nyquist定理)
數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座2帶通采樣定理帶通采樣時(shí)采樣頻率不一定要滿足Nyquist準(zhǔn)則,帶通采樣的采樣頻率選擇方法為: (1)fs>2f(BW) (2)fs=4fc/(2NZ-1)其中,NZ=1,2,3,…的最大整數(shù)。(二)模數(shù)與數(shù)模轉(zhuǎn)換數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座3量化與量化誤差連續(xù)信號(hào)經(jīng)量化處理要產(chǎn)生量化誤差,對(duì)于均勻量化,量化誤差的大小為:其中,E為FS電平,us為信號(hào)有效電平。對(duì)于FS正弦輸入,量化誤差為:(二)模數(shù)與數(shù)模轉(zhuǎn)換數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座4ADC/DAC的選擇(1)ADC的種類:
逐次比較ADC
雙線性ADC FLASHADC -ADC(2)ADC選擇的標(biāo)準(zhǔn):分辨率、速度、輸入動(dòng)態(tài)范圍、POWER等(3)DAC的選擇(4)濾波器設(shè)計(jì)(二)模數(shù)與數(shù)模轉(zhuǎn)換數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座5、DSP與ADC/DAC的接口(1)對(duì)于串型ADC/DAC接口一般使用DSP的串口進(jìn)行數(shù)據(jù)通信。如C25與11通道的12位ADCTLC2543的接口設(shè)計(jì)如下:(二)模數(shù)與數(shù)模轉(zhuǎn)換數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座(二)模數(shù)與數(shù)模轉(zhuǎn)換數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座(2)對(duì)于并型ADC/DAC接口一般使用DSP的I/O口進(jìn)行數(shù)據(jù)通信。如DSP與12位ADCAD678的接口設(shè)計(jì)如下:(二)模數(shù)與數(shù)模轉(zhuǎn)換數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)1、DSP的選擇運(yùn)算量?jī)r(jià)格外設(shè)需求其他因素……2、DSP配置DATA存儲(chǔ)器大小PROGRAM存儲(chǔ)器大小存儲(chǔ)器速度要求I/O口配置……數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座3、DSP基本系統(tǒng)設(shè)計(jì)與模數(shù)電路接口BOOTLOADER設(shè)計(jì)擴(kuò)展存儲(chǔ)器設(shè)計(jì)時(shí)鐘設(shè)計(jì)中斷設(shè)計(jì)外設(shè)的使用電源管理其他…….(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座1)BOOTLOADER設(shè)計(jì)MP/*MC=0(片上ROM有效),復(fù)位后程序從FF80開始運(yùn)行,將跳轉(zhuǎn)到BOOTLOADER代碼開始出。BOOT的流程取決于I/O口FFFF的值(BRS)和INT2*RS后檢測(cè)INT2是否有效?有效按HPIboot模式引導(dǎo),否則,讀I/O口FFFFh的BRS,決定其他的引導(dǎo)方式。BRS決定的引導(dǎo)方式xxxx1000:8bit并口I/O引導(dǎo)xxxx1100:16bit并口I/O引導(dǎo)xx????00:串口引導(dǎo)(詳細(xì)說明見后)xxxxxx01:8bit并行EPROM引導(dǎo)xxxxxx10:16bit并行EPROM引導(dǎo)xxxxxx11:熱引導(dǎo)模式(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座BRS決定的串口引導(dǎo)說明:xx000000:8bit緩沖串口BSP(FSX/CLKX作為輸出)xx000100:16bit緩沖串口BSP(FSX/CLKX作為輸出)xx010000:8bit緩沖串口BSP(FSX/CLKX作為輸入)xx010100:16bit緩沖串口BSP(FSX/CLKX作為輸入)xx100000:8bit時(shí)分復(fù)用串口TDM(FSX/CLKX作為輸出)xx100100:16bit時(shí)分復(fù)用串口TDM(FSX/CLKX作為輸出)(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座2)外部存儲(chǔ)器接口(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座A22-A19A18A17A16A15A14-A0*PS*DS*IS*MSTRBR/*WA16A15A14-A0*OE*CS*WE下面給出一個(gè)擴(kuò)展外部存儲(chǔ)器的例子,重點(diǎn)注意:a、只使用一片128Kx16的RAMb、與內(nèi)部有效的RAM相同的地址,外部RAM無效c、外部RAM的存取速度不能全速運(yùn)行時(shí),需要根據(jù)速度插入等待狀態(tài)(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座3)系統(tǒng)時(shí)鐘設(shè)計(jì)與控制
CLKOUTVCCcrystaloscillatorGNDExternalClock3.3V電路的兩種接法:內(nèi)部振蕩器
外部晶振(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座兩種時(shí)鐘控制方式a、Hardware-programmablePLL(C541、C542、C543、C545&C546)(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座b、Software-programmablePLL(C541B/C545A/C546A/C548/C549/C5402/C5410/C5420)由時(shí)鐘模式寄存器控制(CLKMD):(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座軟件編程控制時(shí)鐘舉例:(設(shè)置CLKOUT=CLKINx3)
STM#0h,CLKMD;switchtoDIVmodeTstStatu:LDMCLKMD,AAND#01b,A;pollSTATUSbitBCTstStatu,ANEQSTM#0214fh,CLKMD;SetPLLON/OFFwhen;STATUSisDIVmode;PLLMUL=0010,PLLDIV=0;PLLCOUNT=00101000(41)(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座4)中斷處理a、外部中斷引腳連接b、修改中斷向量表c、中斷服務(wù)程序(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座5)外設(shè)的使用計(jì)數(shù)器的使用標(biāo)準(zhǔn)SP的使用緩沖SP的使用McBSP的使用TDM的使用HPI的使用與設(shè)計(jì)DMA的使用與設(shè)計(jì)其它I/O接口信號(hào)線(如XF、BIO等)的使用(三)目標(biāo)系統(tǒng)硬件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座(四)目標(biāo)板系統(tǒng)軟件設(shè)計(jì)1、源程序的編寫在編寫匯編語句時(shí),應(yīng)遵循以下規(guī)則:
語句的開頭只能是標(biāo)號(hào)、空格、星號(hào)或分號(hào)。
標(biāo)號(hào)是可選項(xiàng);如果使用,必須從第一列開始。
每個(gè)域必須由一個(gè)或多個(gè)空棵空格來分開。制表符等同于空格。
注釋是可選項(xiàng)。開始于第一列的注釋用星號(hào)或分號(hào)(*或;)來標(biāo)明,開始于其它列的注釋必須由分號(hào)開頭。一個(gè)源語句可以包含四個(gè)域,一般格式如下:[label][:]instruction[;comment]數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座2、匯編編譯指令的使用匯編編譯指令用來完成以下任務(wù):將代碼和數(shù)據(jù)匯編進(jìn)特定的段為未初始化的變量保留存儲(chǔ)器空間控制展開列表的形式存儲(chǔ)器初始化匯編條件塊定義全局變量指定匯編器可以獲得宏的特定庫(kù)檢查符號(hào)調(diào)試信息(四)目標(biāo)板系統(tǒng)軟件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座1)程序段定義的匯編指令段定義匯編指令使部分源程序放入適當(dāng)?shù)亩沃小?bss在.bss段中為未初始化的變量保留空間.data確認(rèn).data段中的代碼段。.data段中通常包含了初始化的數(shù)據(jù)(用.int/.word等定義)。.sect定義初始化了的帶命名的段,并將緊接著的代碼或數(shù)據(jù)并入該段。.text該段中包含了可執(zhí)行的代碼。.usect在一個(gè)未初始化的有命名的段中保留空間(四)目標(biāo)板系統(tǒng)軟件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座使用格式和舉例 .mmregs .bssx,20,1 .usect“sin-table”,100 …… .text LD#0,A ADDx,A,B …… .sect“cal-sin” LD#lk,A STLA,sin-table RET .data .word1,2,3,4 .int043h,ff08h除.int和.word外還有很多用于常量說明的匯編指令,如.byte/.field/.space/.bes/.fload/.long/.string/.xfload等,請(qǐng)看教程。(四)目標(biāo)板系統(tǒng)軟件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座2)引用其它文件的匯編指令.copy/.include告訴匯編器開始從其它文件中讀源語句。.def確認(rèn)一個(gè)在當(dāng)前模塊中定義的且能被其它模塊使用的符號(hào)。.global聲明一個(gè)外部符號(hào),使其它模塊在連接的時(shí)候可以使用它。如果在當(dāng)前段定義了該符號(hào),那么該符號(hào)就可以被其它模塊使用;如果在當(dāng)前段中沒有定義該符號(hào),則是使用了其它模塊定義的符號(hào)。前一種功能與.def相同,后一種功能與.ref相同。.mlib向匯編器提供一個(gè)包含了宏定義的文擋庫(kù)的名稱。當(dāng)匯編器碰見了一個(gè)在當(dāng)前庫(kù)中沒有定義的宏,就在.mlib確認(rèn)的宏庫(kù)中查找。.ref確認(rèn)一個(gè)在當(dāng)前段中使用但在其它段中定義的符號(hào)。(四)目標(biāo)板系統(tǒng)軟件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座3)條件匯編指令.if/.elseif/.else/.endif這些指令告訴匯編器根據(jù)表達(dá)式的值條件匯編一塊代碼。.if表示一個(gè)條件塊的開始,如果條件為真就匯編緊接著的代碼。.elseif是表示如果.if的條件為假,而.elseif的條件為真,就匯編緊接著的代碼。.endif結(jié)束該條件塊。.loop/.break/.endloop這組指令告訴匯編器按照表達(dá)式的值循環(huán)匯編一塊代碼。.loopexpression標(biāo)注一塊循環(huán)代碼的開始。.breakexpression告訴匯編器當(dāng)表達(dá)式為假時(shí),繼續(xù)循環(huán)匯編;當(dāng)表達(dá)式為真時(shí),立刻轉(zhuǎn)到.endloop后的代碼去。.endloop標(biāo)注一個(gè)可循環(huán)塊的末尾。(四)目標(biāo)板系統(tǒng)軟件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座4)匯編時(shí)的符號(hào)指令符號(hào)指令是使有意義的符號(hào)名與常數(shù)值或字符串相等同.asg
該指令規(guī)定一個(gè)字符串與一個(gè)替代符號(hào)相等
.asg“10,20,30,40”,coefficients .bytecoefficients.eval
計(jì)算一個(gè)表達(dá)式的值并把結(jié)果傳送到與一個(gè)替代符號(hào)等同的字符串中
.evalx+1,x.set/.equ
這兩條指令把一個(gè)常數(shù)值等效成一個(gè)符號(hào),存放在符號(hào)表中且不能被清除。 Cont1.set0190h .intcont1,cont1*2,cont1*4其他符號(hào)指令:.label/.struct/.endstruct/.tag(四)目標(biāo)板系統(tǒng)軟件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座5)其他匯編指令.align
使SPC對(duì)準(zhǔn)1-word到128-word的邊界。.algebraic
告訴編譯器文件包含了算術(shù)匯編源代碼。.end
結(jié)束編譯。.mmregs
定義存儲(chǔ)器映射寄存器的符號(hào)名稱。.emsg/.mmsg/.wmsg用來定義自己的錯(cuò)誤和警告提示信息。.newblock
對(duì)局部標(biāo)號(hào)進(jìn)行復(fù)位。.sblock
指定幾段為一模塊。.version
決定為之建立指令的處理器。輸出列表格式指令:.drlist/.drnolist/.fclist/fcnolist/……(四)目標(biāo)板系統(tǒng)軟件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座3、命令文件的編寫命令文件的功能是說明目標(biāo)文件如何連接到目標(biāo)板,即裝入存儲(chǔ)器(或重定位)的方法。命令文件包括:1)連接文件說明: a.obj /*Firstinputfilename*/ b.obj /*Secondinputfilename*/ -oprog.out /*Optiontospecifyoutputfile*/ -mprog.map /*Optiontospecifymapfile*/(四)目標(biāo)板系統(tǒng)軟件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座2)存儲(chǔ)分配說明3)、段的分配與說明(四)目標(biāo)板系統(tǒng)軟件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座3)命令文件舉例a.objb.objc.obj /*Inputfilenames*/-0prog.out-mprog.map /*Options*/MEMORY /*MEMORYdirective*/{ RAM: origin=100h length=0100h ROM: origin=01000h length=0100h}SECTIONS /*SECTIONSdirective*/{ .text:>ROM .data:>ROM .bss:>RAM}(四)目標(biāo)板系統(tǒng)軟件設(shè)計(jì)數(shù)字信號(hào)處理DSP08工程設(shè)計(jì)講座(五)工程應(yīng)用注意事項(xiàng)電平轉(zhuǎn)換定標(biāo)流水線沖突指令效率......1、電平轉(zhuǎn)換1)一般DSP有兩個(gè)電源:CVCC、DVCC2)如果DVCC=3.3V,則DSP不能承受5V電平,不能驅(qū)動(dòng)5VCMOS,但可以驅(qū)動(dòng)5VTTL,3.3VTTL
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人工拆搬合同范本
- 亞馬遜采購(gòu)合同范例
- 書畫掛牌合同范例
- 醫(yī)療技術(shù)入股合同范本
- 供應(yīng)化糞池銷售合同范本
- 資金入股合同范本
- 2025年度建筑工程施工安全檢測(cè)合同范本
- 商業(yè)房屋全裝修短期租賃合同范本
- 會(huì)務(wù)承包服務(wù)合同范本
- 農(nóng)村股追加合同范本
- 2025年湖南九嶷職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
- 農(nóng)產(chǎn)品貯運(yùn)與加工考試題(附答案)
- 幼兒園開學(xué)教職工安全教育培訓(xùn)
- 學(xué)校財(cái)務(wù)年終工作總結(jié)4
- 生態(tài)安全課件
- 鋼鐵是怎樣煉成的鋼鐵讀書筆記
- 2025年汽車加氣站作業(yè)人員安全全國(guó)考試題庫(kù)(含答案)
- 化工過程安全管理導(dǎo)則安全儀表管理課件
- 中國(guó)高血壓防治指南-解讀全篇
- 2024年監(jiān)控安裝合同范文6篇
- 2024年山東省高考政治試卷真題(含答案逐題解析)
評(píng)論
0/150
提交評(píng)論