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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、信息與通信工程學院多媒體技術中心信息與通信工程學院多媒體技術中心dsp 的選擇和的選擇和設計開發設計開發門愛東教授門愛東教授1n dsp 芯片的選擇芯片的選擇u什么是什么是dsp?dsp?udspdsp的應用的應用udspdsp的運算的運算u數據寬度數據寬度u速度速度( (speed)speed)u存貯的組織存貯的組織u開發的便宜開發的便宜u多多dsp支持支持u便攜應用便攜應用u價格價格主題概述主題概述n dsp 工程設計工程設計u數字化設計數字化設計u模擬混合電路設計模擬混合電路設計udsps目標系統設計目標系統設計udsp外設的設計與使用外設的設計與使用u系統軟件開發系統軟件開發u工程應用

2、注意事項工程應用注意事項2 men aidong, 信息與通信工程學院多媒體技術中心dsp dsp 簡介簡介n 數字信號處理器數字信號處理器( (digital signal processor,dsp)digital signal processor,dsp)是專門用于更好實現數字信號處理應用的微處理器。是專門用于更好實現數字信號處理應用的微處理器。u1980 1980 年第一個商品化年第一個商品化 dsp dsp 問世;問世;u目前眾多新的目前眾多新的 dspdsp,為設計者提供了廣泛的選擇;為設計者提供了廣泛的選擇;u新的半導體制造廠家不斷進入這個領域,爭取更大新的半導體制造廠家不斷進入

3、這個領域,爭取更大的市場分額,設計者在未來幾年內將有更廣的選擇。的市場分額,設計者在未來幾年內將有更廣的選擇。u今天的今天的 dsp dsp 是具有了強大功能的復雜器件。是具有了強大功能的復雜器件。u下面我們就介紹現在商品化下面我們就介紹現在商品化 dsp dsp 的共同特點,解釋的共同特點,解釋它們之間的區別,以及設計者在應用時注意的事項。它們之間的區別,以及設計者在應用時注意的事項。3 men aidong, 信息與通信工程學院多媒體技術中心什么是什么是 dsp ?dsp ?n 多數多數 dsp dsp 共有的基本特性:共有的基本特性:高性能、重復性、高數高性能、重復性、高數據量。據量。n

4、 在單個指令周期內完成乘法累加運算在單個指令周期內完成乘法累加運算( (multiply-and-multiply-and-accumulateaccumulate,mac) mac) 的能力的能力u這是衡量這是衡量 dsp dsp 最常用的性能;最常用的性能;u在涉及需要點乘的產品中,例如濾波器,在涉及需要點乘的產品中,例如濾波器,macmac運算在運算在算法中是非常有用的。為了完成此功能,算法中是非常有用的。為了完成此功能,dspdsp在主數在主數據通路中集成有乘法器和累加器;據通路中集成有乘法器和累加器;u另外,為了進行一系列另外,為了進行一系列macmac運算而又沒有發生運算溢運算而又

5、沒有發生運算溢出出( (overflow)overflow),dspdsp通常在累加器中提供額外的比特通常在累加器中提供額外的比特數,以滿足計算結果對比特數增加的要求。數,以滿足計算結果對比特數增加的要求。4 men aidong, 信息與通信工程學院多媒體技術中心什么是什么是 dsp ?dsp ?n 在單個指令周期內同時完成幾個存貯器存取的能力在單個指令周期內同時完成幾個存貯器存取的能力u這特點允許這特點允許 dsp dsp 在讀取指令的同時,獲得此指令所在讀取指令的同時,獲得此指令所需要的被運算數,或者需要的被運算數,或者/ /和存貯前一指令的運算結果。和存貯前一指令的運算結果。u通常在單

6、個指令周期內完成多個存貯器讀取是有許多通常在單個指令周期內完成多個存貯器讀取是有許多客觀限制的。客觀限制的。f典型之一是存取的存貯器位于片內,這樣只能某些指典型之一是存取的存貯器位于片內,這樣只能某些指令能進行多個存貯器存取。令能進行多個存貯器存取。f為了支持同時多個存取,為了支持同時多個存取,dspdsp提供了多個片內提供了多個片內 ( (a) a) 總線總線( (on-chip bus)on-chip bus); (b) (b) 多個片內存貯器以及某些情況下的多個片內存貯器以及某些情況下的 ( (c) c) 多個獨立的存貯空間。多個獨立的存貯空間。5 men aidong, 信息與通信工程

7、學院多媒體技術中心什么是什么是 dsp ?dsp ?n 尋址方式尋址方式u為了使運算達到最大速度,為了使運算達到最大速度,dsp dsp 包含了一個地址產生包含了一個地址產生單元,一旦適當的地址寄存器被配置,則地址發生器單元,一旦適當的地址寄存器被配置,則地址發生器在后臺運行,形成運算指令所需的并行操作存取地址,在后臺運行,形成運算指令所需的并行操作存取地址,地址發生器是針對地址發生器是針對 dsp dsp 而選擇的模式。而選擇的模式。u間接尋址間接尋址f最常用的尋址方式是具有后增量(最常用的尋址方式是具有后增量(post_incrementpost_increment)的間接尋址寄存器,它通

8、常用于連續存放一系列數據。的間接尋址寄存器,它通常用于連續存放一系列數據。u模數尋址模數尋址f這種尋址簡化了循環存儲的使用。這種尋址簡化了循環存儲的使用。u 比特反轉(比特反轉(bit_reversedbit_reversed)尋址尋址f這種方式更易于編譯快速這種方式更易于編譯快速 fft fft 算法的結果。算法的結果。6 men aidong, 信息與通信工程學院多媒體技術中心什么是什么是 dsp ?dsp ?n 循環(循環(loopinglooping)u因為多數因為多數 dsp dsp 涉及完成重復的計算,多數涉及完成重復的計算,多數 dsp dsp 對更對更有效的有效的 loopin

9、g looping 提供了特別支持。提供了特別支持。u通常,對于特殊的循環或者重復指令,通常,對于特殊的循環或者重復指令,dsp dsp 允許開發允許開發人員完成一個人員完成一個 for_next for_next 循環語句,不用為了更新或循環語句,不用為了更新或檢測循環計數器而花費任何指令周期。檢測循環計數器而花費任何指令周期。n 強大的強大的 i/o i/o 功能:為了允許低價、高性能的輸入輸功能:為了允許低價、高性能的輸入輸出,多數出,多數 dsp dsp 包含有多個串口或者并口包含有多個串口或者并口 i/o i/o 接口。接口。u串口串口u并口并口u特殊的特殊的 i/o i/o 處理機

10、制處理機制低層的中斷或者低層的中斷或者 dma dma 方式方式7 men aidong, 信息與通信工程學院多媒體技術中心dsp dsp 的應用的應用n dsp dsp 從雷達分析到消費者電子都有廣泛的應用,但沒有從雷達分析到消費者電子都有廣泛的應用,但沒有一個一個 dsp dsp 能滿足所有的或者大多數的應用。因此,對能滿足所有的或者大多數的應用。因此,對于設計者首要的任務是權衡各種因素,而選擇適合于自于設計者首要的任務是權衡各種因素,而選擇適合于自己應用的己應用的dspdsp。這些因素包括:性能指標、價格、集成這些因素包括:性能指標、價格、集成度、開發難易、功耗及其它因素。度、開發難易、

11、功耗及其它因素。n 嵌入系統(嵌入系統(embedded systemembedded system)u按市場份額講,最大的應用是便宜的、大量的嵌入系統。按市場份額講,最大的應用是便宜的、大量的嵌入系統。u價格、集成度占首位價格、集成度占首位f例如:移動電話、硬盤驅動器(例如:移動電話、硬盤驅動器(dspdsp用語伺服控制)和調制解調用語伺服控制)和調制解調器(器(modemmodem)。)。u功耗居首位功耗居首位f對于便攜、電池供電的產品,電源功耗非常重要。對于便攜、電池供電的產品,電源功耗非常重要。f在這些系統中,性能和開發難易居次要地位,雖然用戶也開發自在這些系統中,性能和開發難易居次要

12、地位,雖然用戶也開發自己的己的 dsp dsp 軟件和圍繞軟件和圍繞 dsp dsp 配置自己的硬件。配置自己的硬件。8 men aidong, 信息與通信工程學院多媒體技術中心dsp dsp 的應用的應用n 特殊需要特殊需要數據大、算法復雜的處理數據大、算法復雜的處理u例如:聲納和地震探測。它們的數量很少,但其算法例如:聲納和地震探測。它們的數量很少,但其算法很復雜。這樣產品設計量就很大,而且也很復雜,結很復雜。這樣產品設計量就很大,而且也很復雜,結果是設計者喜歡選擇高性能、易用且支持多芯片配置果是設計者喜歡選擇高性能、易用且支持多芯片配置的的 dspdsp。u在某些情況下,設計者不愿意通過

13、改造已有在某些情況下,設計者不愿意通過改造已有 dsp dsp 系系統,防止產生零亂。他們選擇標準的開發板,通過調統,防止產生零亂。他們選擇標準的開發板,通過調用他們的已有函數庫來完成開發。用他們的已有函數庫來完成開發。9 men aidong, 信息與通信工程學院多媒體技術中心dsp dsp 的應用的應用n 多媒體(多媒體(multimediamultimedia)新興市場新興市場u許多廠家正在占領這個新興的市場,包含有許多廠家正在占領這個新興的市場,包含有 dsp dsp 的計算機的計算機可以提供多媒體功能。可以提供多媒體功能。fvoicemailvoicemail(語音信箱)、數據語音信

14、箱)、數據/ /傳真傳真modemmodem、音樂和語音合成及分音樂和語音合成及分解、圖象壓縮、電視接收、廣播接收。解、圖象壓縮、電視接收、廣播接收。u多媒體對多媒體對 dsp dsp 的要求:的要求:f高性能、低價格、高集成度高性能、低價格、高集成度 多媒體除具有嵌入系統的量大、低價、高集成度的特點外,還要求高多媒體除具有嵌入系統的量大、低價、高集成度的特點外,還要求高性能。因為多媒體性能。因為多媒體 pc pc 要求要求 dsp dsp 同時完成多項功能。同時完成多項功能。f多項功能之間更有效的切換多項功能之間更有效的切換 多媒體除要求更有效地完成多項功能外,還要求多媒體除要求更有效地完成

15、多項功能外,還要求 dsp dsp 必須具有更有效必須具有更有效地切換多項功能的能力。地切換多項功能的能力。f更大的存貯容量更大的存貯容量 例如接例如接 mpeg1 mpeg1 標準,圖象壓縮每秒鐘設為標準,圖象壓縮每秒鐘設為1.51.5mb/smb/s。這樣,多媒體就這樣,多媒體就需要海量存貯。需要海量存貯。10 men aidong, 信息與通信工程學院多媒體技術中心dsp dsp 的運算的運算n 數的表示:數的表示:u一個可編程一個可編程 dsp dsp 的基本特性之一是的基本特性之一是 dsp dsp 所采用的運所采用的運算類型。算類型。u定點制定點制 dspdsp:一個數表示為整數或

16、者一個數表示為整數或者 +1.0 +1.0-1.0 -1.0 之之間的函數。間的函數。u浮點運算:一個數表示為指數部分和尾數部分。尾數浮點運算:一個數表示為指數部分和尾數部分。尾數部分通常是部分通常是 +1.0 +1.0-1.0 -1.0 之間的小數,而指數部分表之間的小數,而指數部分表示二進制中小數點的位置。示二進制中小數點的位置。11 men aidong, 信息與通信工程學院多媒體技術中心n 浮點浮點 dsp dsp 和定點和定點 dsp dsp 的比較的比較u性能比較性能比較浮點運算是更靈活、更通用的機制浮點運算是更靈活、更通用的機制f更寬的動態范圍更寬的動態范圍 ( (所能表示的最大

17、最小數之比所能表示的最大最小數之比) )f更好的精度更好的精度f易用易用: : 在浮點制中,開發人員不必關心動態范圍和精度,而對定在浮點制中,開發人員不必關心動態范圍和精度,而對定點點 dsp dsp 而言,開發人員要時刻小心各種階段的信號范圍,以確保而言,開發人員要時刻小心各種階段的信號范圍,以確保在有限的動態范圍和運算精度下達到自己要求的數值性能。在有限的動態范圍和運算精度下達到自己要求的數值性能。f更貴更貴: :浮點浮點 dsp dsp 為了完成浮點運算,需要增加復雜的電路,這也為了完成浮點運算,需要增加復雜的電路,這也就意味著一個大的沖模就意味著一個大的沖模( (die)die)。u應

18、用比較應用比較f對于嵌入系統,選擇定點對于嵌入系統,選擇定點 dspdsp。因為嵌入系統對于價格是首位的。因為嵌入系統對于價格是首位的。開發人員通過分析和方針,決定他們所需的動態范圍和運算精度,開發人員通過分析和方針,決定他們所需的動態范圍和運算精度,以及是否需要增加比例因子。以及是否需要增加比例因子。f大動態范圍、高精度、開發容易,選擇浮點大動態范圍、高精度、開發容易,選擇浮點dspdsp。對于不關心價格,對于不關心價格,而對動態范圍和精度有特殊要求的用戶,以及為了開發容易,可而對動態范圍和精度有特殊要求的用戶,以及為了開發容易,可以選擇浮點以選擇浮點 dspdsp。dsp dsp 的運算的

19、運算12 men aidong, 信息與通信工程學院多媒體技術中心n 定點定點 dsp dsp 完成浮點運算完成浮點運算浮點浮點u在定點在定點 dsp dsp 中完成通常的浮點運算是可能的。中完成通常的浮點運算是可能的。u調用浮點運算仿真程序調用浮點運算仿真程序。但這樣做需要很多個指令周。但這樣做需要很多個指令周期,得不償失。因此,通用的浮點仿真幾乎不用了。期,得不償失。因此,通用的浮點仿真幾乎不用了。u塊浮點運算塊浮點運算( (block floating-point)block floating-point)f定點和浮點運算的折中構成了塊浮點運算定點和浮點運算的折中構成了塊浮點運算一組數一

20、組數中數據具有不同的尾數,但具有唯一的、相同的指數中數據具有不同的尾數,但具有唯一的、相同的指數表示這一數據塊。表示這一數據塊。f塊浮點運算通常由軟件完成,但有些塊浮點運算通常由軟件完成,但有些dspdsp中也有硬件輔中也有硬件輔助完成此功能。助完成此功能。dsp dsp 的運算的運算13 men aidong, 信息與通信工程學院多媒體技術中心數據寬度數據寬度( (data width)data width)n 所有的浮點所有的浮點 dsp dsp 都是都是 32 32bit bit 數據字數據字( (data word)data word)n 定點定點 dsp dsp 常用常用1616bi

21、tbit數據字數據字, ,但但 motorala dsp5600xmotorala dsp5600x系列和系列和 star star 半導體公司半導體公司 sproc sproc 系列采用系列采用 24 24bit bit 字寬,字寬,zoran zr38000 zoran zr38000 采用采用 20 20bit bit 數據字。數據字。n 數據字的大小對價格具有重要影響數據字的大小對價格具有重要影響u芯片的大小芯片的大小( (chip size)chip size)u封裝管腳的數目封裝管腳的數目( (number of package pins)number of package pin

22、s)u外部存儲器的大小外部存儲器的大小n 指令字長和數據字長指令字長和數據字長u大多數大多數 dsp dsp 的指令字長和數據字長相等,但也不全是這的指令字長和數據字長相等,但也不全是這樣。如樣。如adad公司公司adsp21xxadsp21xx系列系列1616bitbit數據字長數據字長 24 24bitbit指令字指令字長長; ;zoranzoran公司公司zr3800zr3800是是2020bitbit數據字長數據字長 32 32bitbit指令字長。指令字長。14 men aidong, 信息與通信工程學院多媒體技術中心數據寬度數據寬度( (data width)data width)

23、n 應用選擇應用選擇字長與開發復雜度折中字長與開發復雜度折中u對于開發者來講,在滿足需要的情況下,應選擇最小的對于開發者來講,在滿足需要的情況下,應選擇最小的 dspdsp,這樣價格才能便宜;這樣價格才能便宜;u對于選擇定點對于選擇定點 dsp dsp 還是浮點還是浮點 dspdsp,需要對字長和開發復需要對字長和開發復雜性進行折中;雜性進行折中;f對于某些對于某些 24 24bit bit 才能滿足需要的應用,我們在犧牲了復雜才能滿足需要的應用,我們在犧牲了復雜性或程序的基礎上,性或程序的基礎上,1616bitdsp bitdsp 也能滿足需要。也能滿足需要。f例如對于例如對于1616bit

24、dspbitdsp,通過對指令的適當組合,也能完成雙精通過對指令的適當組合,也能完成雙精度度 32 32bit bit 的運算操作。當然雙精度的運算速度比單精度慢。的運算操作。當然雙精度的運算速度比單精度慢。u如果你的應用中大多數是單精度運算,只有少部分需要高如果你的應用中大多數是單精度運算,只有少部分需要高精度運算,這時你選擇用單精度精度運算,這時你選擇用單精度 dsp dsp 完成雙精度運算可完成雙精度運算可更意義。反之,則需要更寬比特的更意義。反之,則需要更寬比特的 dspdsp。15 men aidong, 信息與通信工程學院多媒體技術中心速度速度( (speed)speed)n 滿足

25、特殊需要時,對滿足特殊需要時,對 dsp dsp 的一個關鍵測試是運行速的一個關鍵測試是運行速度。有許多方法可以測試度。有許多方法可以測試 dsp dsp 的速度。的速度。n 最快指令周期時間最快指令周期時間執行一個執行一個dspdsp最快的指令所需要最快的指令所需要的時間的時間u通常用一秒鐘內執行多少百萬次指令(通常用一秒鐘內執行多少百萬次指令(millions of millions of instructions per second, mips)instructions per second, mips)來衡量。若來衡量。若 dsp dsp 指令指令周期為周期為 20 20nsns10

26、0ns100ns,即執行速率為即執行速率為 50 501010mipsmips。u問題問題: :不同不同 dsp dsp 之間單個指令完成的工作量,變化非常大。之間單個指令完成的工作量,變化非常大。f例如,早期的例如,早期的 dsp dsp 在一個指令周期內只能完成一次加法或在一個指令周期內只能完成一次加法或者乘法者乘法( (兩者不能同時完成兩者不能同時完成) )。相反,現在的。相反,現在的 dsp dsp 一個指令一個指令周期就可能完成乘法累加功能周期就可能完成乘法累加功能( (mac)mac)。另外,有的另外,有的 dsp(dsp(如如motoralamotorala的的dsp5600ds

27、p5600系列系列) )可以對和可以對和alualu沒有關系的數據進行沒有關系的數據進行并列移動。而有的并列移動。而有的dspdsp只支持和只支持和alualu有關的數據的并行移動。有關的數據的并行移動。16 men aidong, 信息與通信工程學院多媒體技術中心速度速度( (speed)speed)n 基本操作周期基本操作周期u為了克服上述問題,用基本操作周期來代替指令操作為了克服上述問題,用基本操作周期來代替指令操作周期作為衡量周期作為衡量 dsp dsp 速度的標尺。共同的操作是速度的標尺。共同的操作是 macmac,但不幸的是關于但不幸的是關于 dsp mac dsp mac 運算次

28、數差異這方面的信運算次數差異這方面的信息很少。現在大多數息很少。現在大多數 dsp dsp 都在一個指令周期內完成都在一個指令周期內完成一個一個 mac mac 操作,并且操作,并且 mac mac 周期等于指令周期。周期等于指令周期。 u問題問題: :f有的有的 dsp dsp 在完成在完成 mac mac 外,還能完成一些其它功能;外,還能完成一些其它功能;fmac mac 次數中沒有考慮控制指令,有時它也對性能產生次數中沒有考慮控制指令,有時它也對性能產生重要影響。重要影響。17 men aidong, 信息與通信工程學院多媒體技術中心速度速度( (speed)speed)n 標準基準標

29、準基準( (benchmarks)benchmarks) u一個更通用的方法是定義一組標準基準,然后比較各個一個更通用的方法是定義一組標準基準,然后比較各個 dsp dsp 的運行的運行速度。這個標準基準可能是簡單的速度。這個標準基準可能是簡單的“核心核心”功能功能( (如如 fir fir 或或 iir df)iir df),或者是某些應用的整體或部分。或者是某些應用的整體或部分。n 注意事項注意事項umopsmops和和mflopsmflops的區別的區別fmopsmops每秒鐘多少百萬次運算(每秒鐘多少百萬次運算(millions of operations per millions o

30、f operations per secondsecond)fmflopsmflops每秒鐘多少百萬次浮點運算每秒鐘多少百萬次浮點運算f不同的廠家對由什么構成不同的廠家對由什么構成“運算(運算(operationoperation)”理解不同。理解不同。u時鐘頻率時鐘頻率f時鐘時鐘指令周期指令周期 dspdsp的輸入時鐘可能和的輸入時鐘可能和dspdsp的指令頻率相同,也可能是指令速率的兩的指令頻率相同,也可能是指令速率的兩倍或者四倍。倍或者四倍。f時鐘頻率指令速率時鐘頻率指令速率 倍頻和鎖相技術倍頻和鎖相技術 例如例如 40 40mhz dsp56156 mhz dsp56156 的的 mi

31、ps = 20mhz adsp-2101 mips = 20mhz adsp-2101 的的 mipsmips18 men aidong, 信息與通信工程學院多媒體技術中心存貯的組織存貯的組織n 指令指令 mem mem 和數據和數據 mem mem 的組織的組織udspdsp存貯中的組織對性能有很大影響。存貯中的組織對性能有很大影響。u如前所述,如前所述,macmac是很多是很多 dsp dsp 的基本運算,快速的基本運算,快速 mac mac 運算需要獲得一個指令字,同時在同一指令周期內從運算需要獲得一個指令字,同時在同一指令周期內從 memory memory 讀取兩個數據字。讀取兩個數

32、據字。u可以有很多方法實現這一點:可以有很多方法實現這一點:f多端口多端口 memmem允許在一個指令周期內多哥存貯器存取允許在一個指令周期內多哥存貯器存取f哈佛結構哈佛結構獨立的數據樹指令獨立的數據樹指令 memorymemoryf指令指令 cachecache從從 cache cache 中讀取指令代替從存儲器中中讀取指令代替從存儲器中19 men aidong, 信息與通信工程學院多媒體技術中心存貯的組織存貯的組織n 存儲器的大小存儲器的大小 片內部、外部總線的數目片內部、外部總線的數目u定點定點 dspdspf定點定點 dsp dsp 主要面向嵌如系統市場,它要求存貯量小。主要面向嵌如

33、系統市場,它要求存貯量小。f中小規模片內中小規模片內 memmorymemmory(25612kwords)25612kwords),小的外部數小的外部數據總線。據總線。f例如:例如:adcadc,at&tat&t,motmot,titi的定點的定點 dsp dsp 都具有都具有1616bitbit的地址總線,這樣就限制了其外部的地址總線,這樣就限制了其外部 memory memory 的容量。的容量。20 men aidong, 信息與通信工程學院多媒體技術中心存貯的組織存貯的組織n 存儲器的大小存儲器的大小 片內部、外部總線的數目片內部、外部總線的數目u浮點浮點dspdsp

34、f沒有或者很少的片內沒有或者很少的片內memorymemory,但有很大的外部數據總但有很大的外部數據總線。線。 例如:例如:adad公司公司 adsp21021 adsp21021 沒有片內沒有片內memorymemory,但有但有3232bitbit外外部數據地址總線和部數據地址總線和2424bitbit外部程序地址總線。外部程序地址總線。 另外,這些另外,這些dspdsp提供的提供的cachecache技術,可允許使用較快的外部技術,可允許使用較快的外部memorymemory。 ti tms320c30ti tms320c30:6k6k片內片內memorymemory,24bit24b

35、it外部數據總線和外部數據總線和1313bitbit外部程序地址總線外部程序地址總線 adsp21060adsp21060:4m4m片內片內memorymemory,可以改變片內可以改變片內memorymemory的配置以的配置以分配給分配給datadata和指令不同的容量。如和指令不同的容量。如6464k 32bit datak 32bit data和和4040k k 48bit48bit程序程序 注:注:memorymemory的組織、大小、外部總線的數目非常依賴與應用。的組織、大小、外部總線的數目非常依賴與應用。21 men aidong, 信息與通信工程學院多媒體技術中心開發的便宜開發

36、的便宜n 開發的難易依賴與你的應用。開發的難易依賴與你的應用。u例如在研究中,對于樣機或仿真來講,希望越快越容例如在研究中,對于樣機或仿真來講,希望越快越容易的開發出來。易的開發出來。u另一方面,對一些公司來講,起為了降低產品的價格,另一方面,對一些公司來講,起為了降低產品的價格,節省開發工具的費用,愿意承受艱苦的開發環境,但節省開發工具的費用,愿意承受艱苦的開發環境,但這帶來的負面影響是開發周期長、產品上市慢。這帶來的負面影響是開發周期長、產品上市慢。n 選擇開發選擇開發dspdsp的因素:的因素:u軟件工具(匯編、鏈接、仿真、編譯、實時操作系統)軟件工具(匯編、鏈接、仿真、編譯、實時操作系

37、統)u硬件設計工具(開發板和仿真器)硬件設計工具(開發板和仿真器)u高級工具(如基于圖形的框圖設計環境)高級工具(如基于圖形的框圖設計環境)22 men aidong, 信息與通信工程學院多媒體技術中心開發的便宜開發的便宜n 程序設計語言程序設計語言u匯編語言匯編語言u高級語言,如高級語言,如c或或adau高級設計環境高級設計環境基于圖形的框圖設計基于圖形的框圖設計f如如mentor graphics的的dsp工作站工作站 dsp5600x系列系列fcomdisco systems的的spw tms320c3x 系列系列 u調試仿真工具調試仿真工具f 不管是在高級語言,還是在匯編語言,調試和硬

38、件仿不管是在高級語言,還是在匯編語言,調試和硬件仿真工具都是值得特別注意的。真工具都是值得特別注意的。u開發板開發板f允許開發人員在完成最終硬件之前實時地運行軟件。允許開發人員在完成最終硬件之前實時地運行軟件。f數量少的產品也選擇開發板作為自己的最終硬件平臺。數量少的產品也選擇開發板作為自己的最終硬件平臺。23 men aidong, 信息與通信工程學院多媒體技術中心多多 dsp 支持支持n 對于某些大計算量的應用(如雷達、聲納等),需對于某些大計算量的應用(如雷達、聲納等),需要多片要多片 dsp,此時,此時,u互連的難易互連的難易dsp間通信電路的設計間通信電路的設計u 互連的性能互連的性

39、能的吞吐量、效率、延遲就成為重要因素。的吞吐量、效率、延遲就成為重要因素。n titms320c40u2 個完全獨立的地址和數據總線(用于連接本片和全局的個完全獨立的地址和數據總線(用于連接本片和全局的mem)。)。u6 個個 8bit 的并口,每個并口的并口,每個并口20mbytes/s的速率。的速率。u這些并口非常適合構成超立方體和拓撲結構。這些并口非常適合構成超立方體和拓撲結構。n ad公司公司adsp-21060u(a) 雙向地址和數據總線,雙向地址和數據總線,6個雙向總線請求線。通過精致的總線構造,個雙向總線請求線。通過精致的總線構造,可支持可支持 6 個個 dsp 互連。互連。u(

40、b) 6個個4bit并口并口24 men aidong, 信息與通信工程學院多媒體技術中心便攜應用便攜應用n 在許多便攜應用中(如移動電話和尋呼、計算機),電在許多便攜應用中(如移動電話和尋呼、計算機),電源功耗成為主要問題。采取了許多措施來降低電源功耗。源功耗成為主要問題。采取了許多措施來降低電源功耗。u減少工作電壓減少工作電壓fad、atqt、motorola、ti都已有都已有3v dsp。u休眠模式休眠模式f許多許多dsp在等待狀態時,關掉在等待狀態時,關掉dsp中一些部分的時鐘,以減中一些部分的時鐘,以減少功耗。少功耗。f蘇醒:蘇醒:內部未掩蓋的中斷;特定的外部中心線;其它內部未掩蓋的

41、中斷;特定的外部中心線;其它u可編程時鐘可編程時鐘f新的新的 dsp 允許用軟件來改變允許用軟件來改變 dsp 的工作時鐘頻率,以滿足不同的任務設的工作時鐘頻率,以滿足不同的任務設置不同時鐘,節省電源。置不同時鐘,節省電源。u外圍設備控制外圍設備控制f 有的有的 dsp 允許把現在不用的外設屏蔽掉。允許把現在不用的外設屏蔽掉。25 men aidong, 信息與通信工程學院多媒體技術中心價格價格應用、封裝形式、數量應用、封裝形式、數量n 應用應用udsp 的價格主要受訂貨數量的影響,只要能滿足要求,的價格主要受訂貨數量的影響,只要能滿足要求,就應選擇最低價格的,雖然它可能缺少靈活性和編程就應選

42、擇最低價格的,雖然它可能缺少靈活性和編程困難。困難。u例如:例如:tms320c16 問世于問世于1980 年,現在的報價是年,現在的報價是 8 美元(美元(1000片時),正因為它報價低現在仍能有定單。片時),正因為它報價低現在仍能有定單。n packagingupqfp、tqfp是最便宜的,是最便宜的,pga是最貴的。是最貴的。u例:例:33mhz tms320c30 pga = 2.3pqfp(2.3倍倍)n 數量數量u數量是決定價格的一個重要因素,如數量是決定價格的一個重要因素,如11,000100,000片的價格會有顯著的差異。片的價格會有顯著的差異。26 men aidong, 信

43、息與通信工程學院多媒體技術中心 dsp 選擇小結選擇小結n dsp的選擇:綜合考慮的選擇:綜合考慮u運算(定點、浮點)運算(定點、浮點)u數據寬度數據寬度u速度速度u存儲器組織存儲器組織u開發難易開發難易dsp支持支持u電源功耗電源功耗u價格等。價格等。n 正確的正確的 dsp 依賴于你的應用。對于這個應用好,對依賴于你的應用。對于這個應用好,對于另一個不一定就好。于另一個不一定就好。27 men aidong, 信息與通信工程學院多媒體技術中心n dsp 芯片的選擇芯片的選擇u什么是什么是dsp?dsp?udspdsp的應用的應用udspdsp的運算的運算u數據寬度數據寬度u速度速度( (s

44、peed)speed)u存貯的組織存貯的組織u開發的便宜開發的便宜u多多dsp支持支持u便攜應用便攜應用u價格價格主題概述主題概述n dsp 工程設計工程設計u數字化設計數字化設計u模擬混合電路設計模擬混合電路設計udsps目標系統設計目標系統設計udsp外設的設計與使用外設的設計與使用u系統軟件開發系統軟件開發u工程應用注意事項工程應用注意事項28 men aidong, 信息與通信工程學院多媒體技術中心29 men aidong, 信息與通信工程學院多媒體技術中心tms320c542a/d a/dfilterd/acontrollerepromramfilter/mux一個典型一個典型ds

45、p solutiondsp solution設計設計30 men aidong, 信息與通信工程學院多媒體技術中心設計要素:設計要素:n 數字化要求數字化要求n 模擬混合電路(模擬混合電路(adc/dacadc/dac)設計設計n 處理需求(處理需求(dspdsp運算量)運算量)n 吞吐量需求吞吐量需求n 存儲器需求(存儲器需求(sramsram、roomroom、flashflash等)等)n 通信口需求通信口需求n 其它控制(電源設計、狀態控制、時鐘控制、其它控制(電源設計、狀態控制、時鐘控制、多多dspdsp控制、控制、.).)31 men aidong, 信息與通信工程學院多媒體技術中

46、心1 基帶信號采樣定理基帶信號采樣定理 要想連續信號抽取后能夠不失真地還原出原信號,則要想連續信號抽取后能夠不失真地還原出原信號,則抽取頻率必須大于或等于兩倍原信號頻譜的最高頻率。抽取頻率必須大于或等于兩倍原信號頻譜的最高頻率。(nyquistnyquist定理)定理) 32 men aidong, 信息與通信工程學院多媒體技術中心2 帶通采樣定理帶通采樣定理 帶通采樣時采樣頻率不一定要滿足帶通采樣時采樣頻率不一定要滿足nyquist準則,帶通采樣的采準則,帶通采樣的采樣頻率選擇方法為:樣頻率選擇方法為: (1) fs 2 f (bw) (2) fs = 4fc / (2nz-1)其中,其中,

47、nz=1,2,3, 的最大整數。的最大整數。33 men aidong, 信息與通信工程學院多媒體技術中心3 量化與量化誤差量化與量化誤差 連續信號經量化處理要產生量化誤差,對于均勻量化,量化誤差連續信號經量化處理要產生量化誤差,對于均勻量化,量化誤差的大小為:的大小為:eundbsnrenesenelog20677. 4)()2*3/(3/12/222222 其中,e 為 fs 電平,us 為信號有效電平。對于 fs正弦輸入,量化誤差為:ndbsnre676. 1)(34 men aidong, 信息與通信工程學院多媒體技術中心4 adc/dac 的選擇的選擇(1) adc的種類:的種類:

48、逐次比較逐次比較adc 雙線性雙線性adc flash adc - adc(2) adc選擇的標準:分辨率、速度、選擇的標準:分辨率、速度、 輸入動態范圍、輸入動態范圍、power等等(3) dac的選擇的選擇(4) 濾波器設計濾波器設計35 men aidong, 信息與通信工程學院多媒體技術中心5、dsp與與adc/dac的接口的接口(1 1)對于串型)對于串型adc/dacadc/dac接口一般使用接口一般使用dspdsp的串口進行數據通信。如的串口進行數據通信。如c25 c25 與與 11 11 通道的通道的 12 12 位位 adc tlc2543 adc tlc2543 的接口設計

49、如下:的接口設計如下:36 men aidong, 信息與通信工程學院多媒體技術中心37 men aidong, 信息與通信工程學院多媒體技術中心(2 2)對于并型)對于并型adc/dacadc/dac接口一般使用接口一般使用dspdsp的的i/oi/o口進行數據通口進行數據通信。如信。如dspdsp與與1212位位adc ad678adc ad678的接口設計如下:的接口設計如下:38 men aidong, 信息與通信工程學院多媒體技術中心( (三三) ) 目標系統硬件設計目標系統硬件設計1、dsp 的選擇的選擇n 運算量運算量n 價格價格n 外設需求外設需求n 其他因素其他因素2、dsp

50、 配置配置 data 存儲器大小存儲器大小 program 存儲器大小存儲器大小 存儲器速度要求存儲器速度要求 i/o 口配置口配置39 men aidong, 信息與通信工程學院多媒體技術中心3、dsp基本系統設計基本系統設計n 與模數電路接口與模數電路接口n bootloader bootloader 設計設計n 擴展存儲器設計擴展存儲器設計n 時鐘設計時鐘設計n 中斷設計中斷設計n 外設的使用外設的使用n 電源管理電源管理n 其他其他 . .( (三三) ) 目標系統硬件設計目標系統硬件設計40 men aidong, 信息與通信工程學院多媒體技術中心1 1)bootloader boo

51、tloader 設計設計n mp/mp/* *mc=0mc=0(片上片上 rom rom 有效),復位后程序從有效),復位后程序從 ff80 ff80 開始運開始運行,將跳轉到行,將跳轉到 bootloader bootloader 代碼開始出。代碼開始出。n boot boot 的流程取決于的流程取決于i/o i/o 口口 ffff ffff 的值(的值(brsbrs)和和int2int2n * *rs rs 后檢測后檢測 int2 int2 是否有效?有效按是否有效?有效按 hpi boot hpi boot 模式引導,模式引導,否則,讀否則,讀 i/o i/o 口口 ffffh ffff

52、h 的的 brsbrs,決定其他的引導方式。決定其他的引導方式。n brs brs 決定的引導方式決定的引導方式 xxxx1000 xxxx1000:8bit 8bit 并口并口 i/o i/o 引導引導 xxxx1100 xxxx1100:16bit 16bit 并口并口 i/o i/o 引導引導 xx?00 xx?00:串口引導(詳細說明見后)串口引導(詳細說明見后) xxxxxx01xxxxxx01:8bit 8bit 并行并行 eprom eprom 引導引導 xxxxxx10 xxxxxx10:16bit 16bit 并行并行 eprom eprom 引導引導 xxxxxx11xxx

53、xxx11:熱引導模式熱引導模式( (三三) ) 目標系統硬件設計目標系統硬件設計41 men aidong, 信息與通信工程學院多媒體技術中心brs決定的串口引導說明:決定的串口引導說明: xx000000:8bit緩沖串口bsp(fsx/clkx作為輸出) xx000100:16bit緩沖串口bsp(fsx/clkx作為輸出) xx010000:8bit緩沖串口bsp(fsx/clkx作為輸入) xx010100:16bit緩沖串口bsp(fsx/clkx作為輸入) xx100000:8bit時分復用串口tdm (fsx/clkx作為輸出) xx100100:16bit時分復用串口tdm

54、(fsx/clkx作為輸出)( (三三) ) 目標系統硬件設計目標系統硬件設計42 men aidong, 信息與通信工程學院多媒體技術中心( (三三) ) 目標系統硬件設計目標系統硬件設計43 men aidong, 信息與通信工程學院多媒體技術中心2)外部存儲器接口)外部存儲器接口( (三三) ) 目標系統硬件設計目標系統硬件設計44 men aidong, 信息與通信工程學院多媒體技術中心a22-a19a18a17a16a15a14-a0*ps*ds*is*mstrbr/*wa16a15a14-a0*oe*cs*we下面給出一個擴展外部存儲器的例子,重點注意: a、只使用一片 128kx

55、16 的 ram b、與內部有效的 ram 相同的地址,外部 ram 無效 c、外部 ram 的存取速度 不能全速運行時,需 要根據速度插入等待 狀態( (三三) ) 目標系統硬件設計目標系統硬件設計45 men aidong, 信息與通信工程學院多媒體技術中心3)系統時鐘設計與控制)系統時鐘設計與控制 clkout vcc crystal oscillator gndexternal clock3.3v電路的兩種接法: 內部振蕩器 外部晶振( (三三) ) 目標系統硬件設計目標系統硬件設計46 men aidong, 信息與通信工程學院多媒體技術中心兩種時鐘控制方式 a、hardware-p

56、rogrammable pll(c541、c542、c543、 c545 & c546)( (三三) ) 目標系統硬件設計目標系統硬件設計47 men aidong, 信息與通信工程學院多媒體技術中心b、software-programmable pll (c541b/c545a/c546a/c548/ c549/c5402/c5410/c5420) 由時鐘模式寄存器控制(由時鐘模式寄存器控制(clkmd):):( (三三) ) 目標系統硬件設計目標系統硬件設計48 men aidong, 信息與通信工程學院多媒體技術中心軟件編程控制時鐘舉例:軟件編程控制時鐘舉例: ( (設置設置 c

57、lkout = clkin x 3)clkout = clkin x 3) stm #0h, clkmd ;switch to div mode tststatu: ldm clkmd, a and #01b, a ;poll status bit bc tststatu, aneq stm #0214fh, clkmd ;set pllon/off when ;status is div mode ;pllmul=0010, plldiv=0 ;pllcount=00101000(41)( (三三) ) 目標系統硬件設計目標系統硬件設計49 men aidong, 信息與通信工程學院多媒體技

58、術中心4)中斷處理)中斷處理 a、外部中斷引腳連接外部中斷引腳連接 b、修改中斷向量表修改中斷向量表 c、中斷服務程序中斷服務程序( (三三) ) 目標系統硬件設計目標系統硬件設計50 men aidong, 信息與通信工程學院多媒體技術中心5)外設的使用)外設的使用n 計數器的使用計數器的使用n 標準標準 sp sp 的使用的使用n 緩沖緩沖 sp sp 的使用的使用n mcbsp mcbsp 的使用的使用n tdm tdm 的使用的使用n hpi hpi 的使用與設計的使用與設計n dma dma 的使用與設計的使用與設計n 其它其它 i/o i/o 接口信號線接口信號線( (如如 xfx

59、f、bio bio 等)的使用等)的使用( (三三) ) 目標系統硬件設計目標系統硬件設計51 men aidong, 信息與通信工程學院多媒體技術中心(四)目標板系統軟件設計(四)目標板系統軟件設計1、源程序的編寫、源程序的編寫在編寫匯編語句時,應遵循以下規則:在編寫匯編語句時,應遵循以下規則: 語句的開頭只能是標號、空格、星號或分號。語句的開頭只能是標號、空格、星號或分號。 標號是可選項;如果使用,必須從第一列開始。標號是可選項;如果使用,必須從第一列開始。 每個域必須由一個或多個空棵空格來分開。制表符等同于每個域必須由一個或多個空棵空格來分開。制表符等同于空格。空格。 注釋是可選項。開始

60、于第一列的注釋用星號或分號(注釋是可選項。開始于第一列的注釋用星號或分號(* * 或或 ;)來標明,開始于其它列的注釋必須由分號開頭。;)來標明,開始于其它列的注釋必須由分號開頭。u一個源語句可以包含四個域,一般格式如下:一個源語句可以包含四個域,一般格式如下: label : instruction ; commentlabel : instruction ; comment52 men aidong, 信息與通信工程學院多媒體技術中心2、匯編編譯指令的使用、匯編編譯指令的使用匯編編譯指令用來完成以下任務:匯編編譯指令用來完成以下任務:n 將代碼和數據匯編進特定的段將代碼和數據匯編進特定的段n 為未初始化的變量保

溫馨提示

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

評論

0/150

提交評論