數(shù)字信號處理DSP08工程設(shè)計講座_第1頁
數(shù)字信號處理DSP08工程設(shè)計講座_第2頁
數(shù)字信號處理DSP08工程設(shè)計講座_第3頁
數(shù)字信號處理DSP08工程設(shè)計講座_第4頁
數(shù)字信號處理DSP08工程設(shè)計講座_第5頁
已閱讀5頁,還剩64頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

數(shù)字信號處理DSP08工程設(shè)計講座2024/3/26數(shù)字信號處理DSP08工程設(shè)計講座DSP芯片的選擇什么是DSP?DSP的應(yīng)用DSP的運算數(shù)據(jù)寬度速度(Speed)存貯的組織開發(fā)的便宜多DSP支持便攜應(yīng)用價格主題概述 DSP工程設(shè)計數(shù)字化設(shè)計模擬混合電路設(shè)計DSPS目標系統(tǒng)設(shè)計DSP外設(shè)的設(shè)計與使用系統(tǒng)軟件開發(fā)工程應(yīng)用注意事項數(shù)字信號處理DSP08工程設(shè)計講座DSP簡介數(shù)字信號處理器(DigitalSignalProcessor,DSP)是專門用于更好實現(xiàn)數(shù)字信號處理應(yīng)用的微處理器。1980年第一個商品化DSP問世;目前眾多新的DSP,為設(shè)計者提供了廣泛的選擇;新的半導(dǎo)體制造廠家不斷進入這個領(lǐng)域,爭取更大的市場分額,設(shè)計者在未來幾年內(nèi)將有更廣的選擇。今天的DSP是具有了強大功能的復(fù)雜器件。下面我們就介紹現(xiàn)在商品化DSP的共同特點,解釋它們之間的區(qū)別,以及設(shè)計者在應(yīng)用時注意的事項。數(shù)字信號處理DSP08工程設(shè)計講座什么是DSP?多數(shù)DSP共有的基本特性:高性能、重復(fù)性、高數(shù)據(jù)量。在單個指令周期內(nèi)完成乘法累加運算(Multiply-And-Accumulate,MAC)的能力這是衡量DSP最常用的性能;在涉及需要點乘的產(chǎn)品中,例如濾波器,MAC運算在算法中是非常有用的。為了完成此功能,DSP在主數(shù)據(jù)通路中集成有乘法器和累加器;另外,為了進行一系列MAC運算而又沒有發(fā)生運算溢出(overflow),DSP通常在累加器中提供額外的比特數(shù),以滿足計算結(jié)果對比特數(shù)增加的要求。數(shù)字信號處理DSP08工程設(shè)計講座什么是DSP?在單個指令周期內(nèi)同時完成幾個存貯器存取的能力這特點允許DSP在讀取指令的同時,獲得此指令所需要的被運算數(shù),或者/和存貯前一指令的運算結(jié)果。通常在單個指令周期內(nèi)完成多個存貯器讀取是有許多客觀限制的。典型之一是存取的存貯器位于片內(nèi),這樣只能某些指令能進行多個存貯器存取。為了支持同時多個存取,DSP提供了多個片內(nèi)(a)總線(On-ChipBus);(b)多個片內(nèi)存貯器以及某些情況下的(c)多個獨立的存貯空間。數(shù)字信號處理DSP08工程設(shè)計講座什么是DSP?尋址方式為了使運算達到最大速度,DSP包含了一個地址產(chǎn)生單元,一旦適當?shù)牡刂芳拇嫫鞅慌渲?,則地址發(fā)生器在后臺運行,形成運算指令所需的并行操作存取地址,地址發(fā)生器是針對DSP而選擇的模式。間接尋址最常用的尋址方式是具有后增量(Post_increment)的間接尋址寄存器,它通常用于連續(xù)存放一系列數(shù)據(jù)。模數(shù)尋址這種尋址簡化了循環(huán)存儲的使用。比特反轉(zhuǎn)(bit_reversed)尋址這種方式更易于編譯快速FFT算法的結(jié)果。數(shù)字信號處理DSP08工程設(shè)計講座什么是DSP?循環(huán)(Looping)因為多數(shù)DSP涉及完成重復(fù)的計算,多數(shù)DSP對更有效的Looping提供了特別支持。通常,對于特殊的循環(huán)或者重復(fù)指令,DSP允許開發(fā)人員完成一個For_Next循環(huán)語句,不用為了更新或檢測循環(huán)計數(shù)器而花費任何指令周期。強大的I/O功能:為了允許低價、高性能的輸入輸出,多數(shù)DSP包含有多個串口或者并口I/O接口。串口并口特殊的I/O處理機制——低層的中斷或者DMA方式數(shù)字信號處理DSP08工程設(shè)計講座DSP的應(yīng)用DSP從雷達分析到消費者電子都有廣泛的應(yīng)用,但沒有一個DSP能滿足所有的或者大多數(shù)的應(yīng)用。因此,對于設(shè)計者首要的任務(wù)是權(quán)衡各種因素,而選擇適合于自己應(yīng)用的DSP。這些因素包括:性能指標、價格、集成度、開發(fā)難易、功耗及其它因素。嵌入系統(tǒng)(embeddedsystem)按市場份額講,最大的應(yīng)用是便宜的、大量的嵌入系統(tǒng)。價格、集成度占首位例如:移動電話、硬盤驅(qū)動器(DSP用語伺服控制)和調(diào)制解調(diào)器(modem)。功耗居首位對于便攜、電池供電的產(chǎn)品,電源功耗非常重要。在這些系統(tǒng)中,性能和開發(fā)難易居次要地位,雖然用戶也開發(fā)自己的DSP軟件和圍繞DSP配置自己的硬件。數(shù)字信號處理DSP08工程設(shè)計講座DSP的應(yīng)用特殊需要—數(shù)據(jù)大、算法復(fù)雜的處理例如:聲納和地震探測。它們的數(shù)量很少,但其算法很復(fù)雜。這樣產(chǎn)品設(shè)計量就很大,而且也很復(fù)雜,結(jié)果是設(shè)計者喜歡選擇高性能、易用且支持多芯片配置的DSP。在某些情況下,設(shè)計者不愿意通過改造已有DSP系統(tǒng),防止產(chǎn)生零亂。他們選擇標準的開發(fā)板,通過調(diào)用他們的已有函數(shù)庫來完成開發(fā)。數(shù)字信號處理DSP08工程設(shè)計講座DSP的應(yīng)用多媒體(multimedia)—新興市場許多廠家正在占領(lǐng)這個新興的市場,包含有DSP的計算機可以提供多媒體功能。Voicemail(語音信箱)、數(shù)據(jù)/傳真Modem、音樂和語音合成及分解、圖象壓縮、電視接收、廣播接收。多媒體對DSP的要求:高性能、低價格、高集成度多媒體除具有嵌入系統(tǒng)的量大、低價、高集成度的特點外,還要求高性能。因為多媒體PC要求DSP同時完成多項功能。多項功能之間更有效的切換多媒體除要求更有效地完成多項功能外,還要求DSP必須具有更有效地切換多項功能的能力。更大的存貯容量例如接MPEG1標準,圖象壓縮每秒鐘設(shè)為1.5MB/s。這樣,多媒體就需要海量存貯。數(shù)字信號處理DSP08工程設(shè)計講座DSP的運算數(shù)的表示:一個可編程DSP的基本特性之一是DSP所采用的運算類型。定點制DSP:一個數(shù)表示為整數(shù)或者+1.0~-1.0之間的函數(shù)。浮點運算:一個數(shù)表示為指數(shù)部分和尾數(shù)部分。尾數(shù)部分通常是+1.0~-1.0之間的小數(shù),而指數(shù)部分表示二進制中小數(shù)點的位置。數(shù)字信號處理DSP08工程設(shè)計講座浮點DSP和定點DSP的比較性能比較—浮點運算是更靈活、更通用的機制更寬的動態(tài)范圍(所能表示的最大最小數(shù)之比)更好的精度易用:在浮點制中,開發(fā)人員不必關(guān)心動態(tài)范圍和精度,而對定點DSP而言,開發(fā)人員要時刻小心各種階段的信號范圍,以確保在有限的動態(tài)范圍和運算精度下達到自己要求的數(shù)值性能。更貴:浮點DSP為了完成浮點運算,需要增加復(fù)雜的電路,這也就意味著一個大的沖模(die)。應(yīng)用比較對于嵌入系統(tǒng),選擇定點DSP。因為嵌入系統(tǒng)對于價格是首位的。開發(fā)人員通過分析和方針,決定他們所需的動態(tài)范圍和運算精度,以及是否需要增加比例因子。大動態(tài)范圍、高精度、開發(fā)容易,選擇浮點DSP。對于不關(guān)心價格,而對動態(tài)范圍和精度有特殊要求的用戶,以及為了開發(fā)容易,可以選擇浮點DSP。DSP的運算數(shù)字信號處理DSP08工程設(shè)計講座定點DSP完成浮點運算浮點在定點DSP中完成通常的浮點運算是可能的。調(diào)用浮點運算仿真程序。但這樣做需要很多個指令周期,得不償失。因此,通用的浮點仿真幾乎不用了。塊浮點運算(Blockfloating-point)定點和浮點運算的折中構(gòu)成了塊浮點運算——一組數(shù)中數(shù)據(jù)具有不同的尾數(shù),但具有唯一的、相同的指數(shù)表示這一數(shù)據(jù)塊。塊浮點運算通常由軟件完成,但有些DSP中也有硬件輔助完成此功能。DSP的運算數(shù)字信號處理DSP08工程設(shè)計講座數(shù)據(jù)寬度(DataWidth)所有的浮點DSP都是32bit數(shù)據(jù)字(DataWord)定點DSP常用16bit數(shù)據(jù)字,但MotoralaDSP5600X系列和Star半導(dǎo)體公司SPROC系列采用24bit字寬,ZoranZR38000采用20bit數(shù)據(jù)字。數(shù)據(jù)字的大小對價格具有重要影響芯片的大小(ChipSize)封裝管腳的數(shù)目(Numberofpackagepins)外部存儲器的大小指令字長和數(shù)據(jù)字長大多數(shù)DSP的指令字長和數(shù)據(jù)字長相等,但也不全是這樣。如AD公司ADSP21XX系列16bit數(shù)據(jù)字長24bit指令字長;Zoran公司ZR3800是20bit數(shù)據(jù)字長32bit指令字長。數(shù)字信號處理DSP08工程設(shè)計講座數(shù)據(jù)寬度(DataWidth)應(yīng)用選擇—字長與開發(fā)復(fù)雜度折中對于開發(fā)者來講,在滿足需要的情況下,應(yīng)選擇最小的DSP,這樣價格才能便宜;對于選擇定點DSP還是浮點DSP,需要對字長和開發(fā)復(fù)雜性進行折中;對于某些24bit才能滿足需要的應(yīng)用,我們在犧牲了復(fù)雜性或程序的基礎(chǔ)上,16bitDSP也能滿足需要。例如對于16bitDSP,通過對指令的適當組合,也能完成雙精度32bit的運算操作。當然雙精度的運算速度比單精度慢。如果你的應(yīng)用中大多數(shù)是單精度運算,只有少部分需要高精度運算,這時你選擇用單精度DSP完成雙精度運算可更意義。反之,則需要更寬比特的DSP。數(shù)字信號處理DSP08工程設(shè)計講座速度(Speed)滿足特殊需要時,對DSP的一個關(guān)鍵測試是運行速度。有許多方法可以測試DSP的速度。最快指令周期時間—執(zhí)行一個DSP最快的指令所需要的時間通常用一秒鐘內(nèi)執(zhí)行多少百萬次指令(Millionsofinstructionspersecond,MIPS)來衡量。若DSP指令周期為20ns~100ns,即執(zhí)行速率為50~10MIPS。問題:不同DSP之間單個指令完成的工作量,變化非常大。例如,早期的DSP在一個指令周期內(nèi)只能完成一次加法或者乘法(兩者不能同時完成)。相反,現(xiàn)在的DSP一個指令周期就可能完成乘法累加功能(MAC)。另外,有的DSP(如Motorala的DSP5600系列)可以對和ALU沒有關(guān)系的數(shù)據(jù)進行并列移動。而有的DSP只支持和ALU有關(guān)的數(shù)據(jù)的并行移動。數(shù)字信號處理DSP08工程設(shè)計講座速度(Speed)基本操作周期為了克服上述問題,用基本操作周期來代替指令操作周期作為衡量DSP速度的標尺。共同的操作是MAC,但不幸的是關(guān)于DSPMAC運算次數(shù)差異這方面的信息很少。現(xiàn)在大多數(shù)DSP都在一個指令周期內(nèi)完成一個MAC操作,并且MAC周期等于指令周期。問題:有的DSP在完成MAC外,還能完成一些其它功能;MAC次數(shù)中沒有考慮控制指令,有時它也對性能產(chǎn)生重要影響。數(shù)字信號處理DSP08工程設(shè)計講座速度(Speed)標準基準(Benchmarks)一個更通用的方法是定義一組標準基準,然后比較各個DSP的運行速度。這個標準基準可能是簡單的“核心”功能(如FIR或IIRDF),或者是某些應(yīng)用的整體或部分。注意事項MOPS和MFLOPS的區(qū)別MOPS—每秒鐘多少百萬次運算(Millionsofoperationspersecond)MFLOPS—每秒鐘多少百萬次浮點運算不同的廠家對由什么構(gòu)成“運算(Operation)”理解不同。時鐘頻率時鐘≥指令周期DSP的輸入時鐘可能和DSP的指令頻率相同,也可能是指令速率的兩倍或者四倍。時鐘頻率<指令速率——倍頻和鎖相技術(shù)例如40MHzDSP56156的MIPS=20MHzADSP-2101的MIPS數(shù)字信號處理DSP08工程設(shè)計講座存貯的組織指令Mem和數(shù)據(jù)Mem的組織DSP存貯中的組織對性能有很大影響。如前所述,MAC是很多DSP的基本運算,快速MAC運算需要獲得一個指令字,同時在同一指令周期內(nèi)從Memory讀取兩個數(shù)據(jù)字??梢杂泻芏喾椒▽崿F(xiàn)這一點:多端口Mem—允許在一個指令周期內(nèi)多哥存貯器存取哈佛結(jié)構(gòu)—獨立的數(shù)據(jù)樹指令Memory指令Cache—從Cache中讀取指令代替從存儲器中數(shù)字信號處理DSP08工程設(shè)計講座存貯的組織存儲器的大小片內(nèi)部、外部總線的數(shù)目定點DSP定點DSP主要面向嵌如系統(tǒng)市場,它要求存貯量小。中小規(guī)模片內(nèi)memmory(256~12KWords),小的外部數(shù)據(jù)總線。例如:ADC,AT&T,Mot,TI的定點DSP都具有16bit的地址總線,這樣就限制了其外部Memory的容量。數(shù)字信號處理DSP08工程設(shè)計講座存貯的組織存儲器的大小片內(nèi)部、外部總線的數(shù)目浮點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ù)字信號處理DSP08工程設(shè)計講座開發(fā)的便宜開發(fā)的難易依賴與你的應(yīng)用。例如在研究中,對于樣機或仿真來講,希望越快越容易的開發(fā)出來。另一方面,對一些公司來講,起為了降低產(chǎn)品的價格,節(jié)省開發(fā)工具的費用,愿意承受艱苦的開發(fā)環(huán)境,但這帶來的負面影響是開發(fā)周期長、產(chǎn)品上市慢。選擇開發(fā)DSP的因素:軟件工具(匯編、鏈接、仿真、編譯、實時操作系統(tǒng))硬件設(shè)計工具(開發(fā)板和仿真器)高級工具(如基于圖形的框圖設(shè)計環(huán)境)數(shù)字信號處理DSP08工程設(shè)計講座開發(fā)的便宜程序設(shè)計語言匯編語言高級語言,如C或Ada高級設(shè)計環(huán)境——基于圖形的框圖設(shè)計如MentorGraphics的DSP工作站DSP5600X系列ComdiscoSystems的SPWTMS320C3X系列調(diào)試仿真工具不管是在高級語言,還是在匯編語言,調(diào)試和硬件仿真工具都是值得特別注意的。開發(fā)板允許開發(fā)人員在完成最終硬件之前實時地運行軟件。數(shù)量少的產(chǎn)品也選擇開發(fā)板作為自己的最終硬件平臺。數(shù)字信號處理DSP08工程設(shè)計講座多DSP支持對于某些大計算量的應(yīng)用(如雷達、聲納等),需要多片DSP,此時,互連的難易—DSP間通信電路的設(shè)計互連的性能—的吞吐量、效率、延遲就成為重要因素。TITMS320C402個完全獨立的地址和數(shù)據(jù)總線(用于連接本片和全局的Mem)。6個8bit的并口,每個并口20Mbytes/s的速率。這些并口非常適合構(gòu)成超立方體和拓撲結(jié)構(gòu)。AD公司ADSP-21060(a)雙向地址和數(shù)據(jù)總線,6個雙向總線請求線。通過精致的總線構(gòu)造,可支持6個DSP互連。(b)6個4bit并口數(shù)字信號處理DSP08工程設(shè)計講座便攜應(yīng)用在許多便攜應(yīng)用中(如移動電話和尋呼、計算機),電源功耗成為主要問題。采取了許多措施來降低電源功耗。減少工作電壓AD、ATQT、Motorola、TI都已有3VDSP。休眠模式許多DSP在等待狀態(tài)時,關(guān)掉DSP中一些部分的時鐘,以減少功耗。蘇醒:內(nèi)部未掩蓋的中斷;特定的外部中心線;其它可編程時鐘新的DSP允許用軟件來改變DSP的工作時鐘頻率,以滿足不同的任務(wù)設(shè)置不同時鐘,節(jié)省電源。外圍設(shè)備控制

有的DSP允許把現(xiàn)在不用的外設(shè)屏蔽掉。數(shù)字信號處理DSP08工程設(shè)計講座價格——應(yīng)用、封裝形式、數(shù)量應(yīng)用DSP的價格主要受訂貨數(shù)量的影響,只要能滿足要求,就應(yīng)選擇最低價格的,雖然它可能缺少靈活性和編程困難。例如:TMS320C16問世于1980年,現(xiàn)在的報價是8美元(1000片時),正因為它報價低現(xiàn)在仍能有定單。PackagingPQFP、TQFP是最便宜的,PGA是最貴的。例:33MHzTMS320C30PGA=2.3PQFP(2.3倍)數(shù)量數(shù)量是決定價格的一個重要因素,如1~1,000~100,000片的價格會有顯著的差異。數(shù)字信號處理DSP08工程設(shè)計講座DSP選擇小結(jié)DSP的選擇:綜合考慮運算(定點、浮點)數(shù)據(jù)寬度速度存儲器組織開發(fā)難易DSP支持電源功耗價格等。正確的DSP依賴于你的應(yīng)用。對于這個應(yīng)用好,對于另一個不一定就好。數(shù)字信號處理DSP08工程設(shè)計講座DSP芯片的選擇什么是DSP?DSP的應(yīng)用DSP的運算數(shù)據(jù)寬度速度(Speed)存貯的組織開發(fā)的便宜多DSP支持便攜應(yīng)用價格主題概述 DSP工程設(shè)計數(shù)字化設(shè)計模擬混合電路設(shè)計DSPS目標系統(tǒng)設(shè)計DSP外設(shè)的設(shè)計與使用系統(tǒng)軟件開發(fā)工程應(yīng)用注意事項數(shù)字信號處理DSP08工程設(shè)計講座(一)數(shù)字化設(shè)計概述數(shù)字信號處理DSP08工程設(shè)計講座TMS320C542A/DA/DFILTERD/ACONTROLLEREPROMRAMFILTER/MUX一個典型DSPSOLUTION設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座設(shè)計要素:數(shù)字化要求模擬混合電路(ADC/DAC)設(shè)計處理需求(DSP運算量)吞吐量需求存儲器需求(SRAM、ROOM、FLASH等)通信口需求其它控制(電源設(shè)計、狀態(tài)控制、時鐘控制、多DSP控制、......)數(shù)字信號處理DSP08工程設(shè)計講座(二)模數(shù)與數(shù)模轉(zhuǎn)換1基帶信號采樣定理

要想連續(xù)信號抽取后能夠不失真地還原出原信號,則抽取頻率必須大于或等于兩倍原信號頻譜的最高頻率。(Nyquist定理)

數(shù)字信號處理DSP08工程設(shè)計講座2帶通采樣定理帶通采樣時采樣頻率不一定要滿足Nyquist準則,帶通采樣的采樣頻率選擇方法為: (1)fs>2f(BW) (2)fs=4fc/(2NZ-1)其中,NZ=1,2,3,…的最大整數(shù)。(二)模數(shù)與數(shù)模轉(zhuǎn)換數(shù)字信號處理DSP08工程設(shè)計講座3量化與量化誤差連續(xù)信號經(jīng)量化處理要產(chǎn)生量化誤差,對于均勻量化,量化誤差的大小為:其中,E為FS電平,us為信號有效電平。對于FS正弦輸入,量化誤差為:(二)模數(shù)與數(shù)模轉(zhuǎn)換數(shù)字信號處理DSP08工程設(shè)計講座4ADC/DAC的選擇(1)ADC的種類:

逐次比較ADC

雙線性ADC FLASHADC -ADC(2)ADC選擇的標準:分辨率、速度、輸入動態(tài)范圍、POWER等(3)DAC的選擇(4)濾波器設(shè)計(二)模數(shù)與數(shù)模轉(zhuǎn)換數(shù)字信號處理DSP08工程設(shè)計講座5、DSP與ADC/DAC的接口(1)對于串型ADC/DAC接口一般使用DSP的串口進行數(shù)據(jù)通信。如C25與11通道的12位ADCTLC2543的接口設(shè)計如下:(二)模數(shù)與數(shù)模轉(zhuǎn)換數(shù)字信號處理DSP08工程設(shè)計講座(二)模數(shù)與數(shù)模轉(zhuǎn)換數(shù)字信號處理DSP08工程設(shè)計講座(2)對于并型ADC/DAC接口一般使用DSP的I/O口進行數(shù)據(jù)通信。如DSP與12位ADCAD678的接口設(shè)計如下:(二)模數(shù)與數(shù)模轉(zhuǎn)換數(shù)字信號處理DSP08工程設(shè)計講座(三)目標系統(tǒng)硬件設(shè)計1、DSP的選擇運算量價格外設(shè)需求其他因素……2、DSP配置DATA存儲器大小PROGRAM存儲器大小存儲器速度要求I/O口配置……數(shù)字信號處理DSP08工程設(shè)計講座3、DSP基本系統(tǒng)設(shè)計與模數(shù)電路接口BOOTLOADER設(shè)計擴展存儲器設(shè)計時鐘設(shè)計中斷設(shè)計外設(shè)的使用電源管理其他…….(三)目標系統(tǒng)硬件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座1)BOOTLOADER設(shè)計MP/*MC=0(片上ROM有效),復(fù)位后程序從FF80開始運行,將跳轉(zhuǎn)到BOOTLOADER代碼開始出。BOOT的流程取決于I/O口FFFF的值(BRS)和INT2*RS后檢測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)(詳細說明見后)xxxxxx01:8bit并行EPROM引導(dǎo)xxxxxx10:16bit并行EPROM引導(dǎo)xxxxxx11:熱引導(dǎo)模式(三)目標系統(tǒng)硬件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座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時分復(fù)用串口TDM(FSX/CLKX作為輸出)xx100100:16bit時分復(fù)用串口TDM(FSX/CLKX作為輸出)(三)目標系統(tǒng)硬件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座(三)目標系統(tǒng)硬件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座2)外部存儲器接口(三)目標系統(tǒng)硬件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座A22-A19A18A17A16A15A14-A0*PS*DS*IS*MSTRBR/*WA16A15A14-A0*OE*CS*WE下面給出一個擴展外部存儲器的例子,重點注意:a、只使用一片128Kx16的RAMb、與內(nèi)部有效的RAM相同的地址,外部RAM無效c、外部RAM的存取速度不能全速運行時,需要根據(jù)速度插入等待狀態(tài)(三)目標系統(tǒng)硬件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座3)系統(tǒng)時鐘設(shè)計與控制

CLKOUTVCCcrystaloscillatorGNDExternalClock3.3V電路的兩種接法:內(nèi)部振蕩器

外部晶振(三)目標系統(tǒng)硬件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座兩種時鐘控制方式a、Hardware-programmablePLL(C541、C542、C543、C545&C546)(三)目標系統(tǒng)硬件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座b、Software-programmablePLL(C541B/C545A/C546A/C548/C549/C5402/C5410/C5420)由時鐘模式寄存器控制(CLKMD):(三)目標系統(tǒng)硬件設(shè)計數(shù)字信號處理DSP08工程設(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)(三)目標系統(tǒng)硬件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座4)中斷處理a、外部中斷引腳連接b、修改中斷向量表c、中斷服務(wù)程序(三)目標系統(tǒng)硬件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座5)外設(shè)的使用計數(shù)器的使用標準SP的使用緩沖SP的使用McBSP的使用TDM的使用HPI的使用與設(shè)計DMA的使用與設(shè)計其它I/O接口信號線(如XF、BIO等)的使用(三)目標系統(tǒng)硬件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座(四)目標板系統(tǒng)軟件設(shè)計1、源程序的編寫在編寫匯編語句時,應(yīng)遵循以下規(guī)則:

語句的開頭只能是標號、空格、星號或分號。

標號是可選項;如果使用,必須從第一列開始。

每個域必須由一個或多個空棵空格來分開。制表符等同于空格。

注釋是可選項。開始于第一列的注釋用星號或分號(*或;)來標明,開始于其它列的注釋必須由分號開頭。一個源語句可以包含四個域,一般格式如下:[label][:]instruction[;comment]數(shù)字信號處理DSP08工程設(shè)計講座2、匯編編譯指令的使用匯編編譯指令用來完成以下任務(wù):將代碼和數(shù)據(jù)匯編進特定的段為未初始化的變量保留存儲器空間控制展開列表的形式存儲器初始化匯編條件塊定義全局變量指定匯編器可以獲得宏的特定庫檢查符號調(diào)試信息(四)目標板系統(tǒng)軟件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座1)程序段定義的匯編指令段定義匯編指令使部分源程序放入適當?shù)亩沃小?bss在.bss段中為未初始化的變量保留空間.data確認.data段中的代碼段。.data段中通常包含了初始化的數(shù)據(jù)(用.int/.word等定義)。.sect定義初始化了的帶命名的段,并將緊接著的代碼或數(shù)據(jù)并入該段。.text該段中包含了可執(zhí)行的代碼。.usect在一個未初始化的有命名的段中保留空間(四)目標板系統(tǒng)軟件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座使用格式和舉例 .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等,請看教程。(四)目標板系統(tǒng)軟件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座2)引用其它文件的匯編指令.copy/.include告訴匯編器開始從其它文件中讀源語句。.def確認一個在當前模塊中定義的且能被其它模塊使用的符號。.global聲明一個外部符號,使其它模塊在連接的時候可以使用它。如果在當前段定義了該符號,那么該符號就可以被其它模塊使用;如果在當前段中沒有定義該符號,則是使用了其它模塊定義的符號。前一種功能與.def相同,后一種功能與.ref相同。.mlib向匯編器提供一個包含了宏定義的文擋庫的名稱。當匯編器碰見了一個在當前庫中沒有定義的宏,就在.mlib確認的宏庫中查找。.ref確認一個在當前段中使用但在其它段中定義的符號。(四)目標板系統(tǒng)軟件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座3)條件匯編指令.if/.elseif/.else/.endif這些指令告訴匯編器根據(jù)表達式的值條件匯編一塊代碼。.if表示一個條件塊的開始,如果條件為真就匯編緊接著的代碼。.elseif是表示如果.if的條件為假,而.elseif的條件為真,就匯編緊接著的代碼。.endif結(jié)束該條件塊。.loop/.break/.endloop這組指令告訴匯編器按照表達式的值循環(huán)匯編一塊代碼。.loopexpression標注一塊循環(huán)代碼的開始。.breakexpression告訴匯編器當表達式為假時,繼續(xù)循環(huán)匯編;當表達式為真時,立刻轉(zhuǎn)到.endloop后的代碼去。.endloop標注一個可循環(huán)塊的末尾。(四)目標板系統(tǒng)軟件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座4)匯編時的符號指令符號指令是使有意義的符號名與常數(shù)值或字符串相等同.asg

該指令規(guī)定一個字符串與一個替代符號相等

.asg“10,20,30,40”,coefficients .bytecoefficients.eval

計算一個表達式的值并把結(jié)果傳送到與一個替代符號等同的字符串中

.evalx+1,x.set/.equ

這兩條指令把一個常數(shù)值等效成一個符號,存放在符號表中且不能被清除。 Cont1.set0190h .intcont1,cont1*2,cont1*4其他符號指令:.label/.struct/.endstruct/.tag(四)目標板系統(tǒng)軟件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座5)其他匯編指令.align

使SPC對準1-word到128-word的邊界。.algebraic

告訴編譯器文件包含了算術(shù)匯編源代碼。.end

結(jié)束編譯。.mmregs

定義存儲器映射寄存器的符號名稱。.emsg/.mmsg/.wmsg用來定義自己的錯誤和警告提示信息。.newblock

對局部標號進行復(fù)位。.sblock

指定幾段為一模塊。.version

決定為之建立指令的處理器。輸出列表格式指令:.drlist/.drnolist/.fclist/fcnolist/……(四)目標板系統(tǒng)軟件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座3、命令文件的編寫命令文件的功能是說明目標文件如何連接到目標板,即裝入存儲器(或重定位)的方法。命令文件包括:1)連接文件說明: a.obj /*Firstinputfilename*/ b.obj /*Secondinputfilename*/ -oprog.out /*Optiontospecifyoutputfile*/ -mprog.map /*Optiontospecifymapfile*/(四)目標板系統(tǒng)軟件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座2)存儲分配說明3)、段的分配與說明(四)目標板系統(tǒng)軟件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座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}(四)目標板系統(tǒng)軟件設(shè)計數(shù)字信號處理DSP08工程設(shè)計講座(五)工程應(yīng)用注意事項電平轉(zhuǎn)換定標流水線沖突指令效率......1、電平轉(zhuǎn)換1)一般DSP有兩個電源:CVCC、DVCC2)如果DVCC=3.3V,則DSP不能承受5V電平,不能驅(qū)動5VCMOS,但可以驅(qū)動5VTTL,3.3VTTL

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論