獻給初學者-DSP入門教程(共5頁)_第1頁
獻給初學者-DSP入門教程(共5頁)_第2頁
獻給初學者-DSP入門教程(共5頁)_第3頁
獻給初學者-DSP入門教程(共5頁)_第4頁
獻給初學者-DSP入門教程(共5頁)_第5頁
全文預覽已結束

下載本文檔

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

文檔簡介

1、精選優質文檔-傾情為你奉上前言:此資料也是來源于網絡,并不是我們原創,但是希望這些資料能夠給初學DSP的朋友們一點幫助,也希望你們能夠把這里當成是你們學習DSP技術的一個家園,讓我們攜手共建,為更多的朋友創造學習的條件1、TI DSP的選型主要考慮處理速度、功耗、程序存儲器和數據存儲器的容量、片內的資源,如定時器的數量、I/O口數量、中斷數量、DMA通道數等。DSP的主要供應商有TI,ADI,Motorola,Lucent和Zilog等,其中TI占有最大的市場份額。TI公司現在主推四大系列DSP1)C5000系列(定點、低功耗):C54X,C54XX,C55X 相比其它系列的主要特點是低功耗,

2、所以最適合個人與便攜式上網以及無線通信應用,如手機、PDA、GPS等應用。處理速度在80MIPS-400MIPS之間。C54XX和C55XX 一般只具有McBSP同步串口、HPI并行接口、定時器、DMA等外設。值得注意的是C55XX提供了EMIF外部存儲器擴展接口,可以直接使用SDRAM,而C54XX則不能直接使用。兩個系列的數字IO都只有兩條。2)C2000系列(定點、控制器):C20X,F20X,F24X,F24XX ,C28x該系芯片具有大量外設資源,如:A/D、定時器、各種串口(同步和異步),WATCHDOG、CAN總線/PWM發生器、數字IO腳等。是針對控制應用最佳化的DSP,在TI

3、所有的DSP中,只有C2000有FLASH,也只有該系列有異步串口可以和PC的UART相連。3)C6000系列:C62XX,C67XX,C64X 該系列以高性能著稱,最適合寬帶網絡和數字影像應用。32bit,其中:C62XX和C64X是定點系列,C67XX 是浮點系列。該系列提供EMIF擴展存儲器接口。該系列只提供BGA封 裝,只能制作多層PCB。且功耗較大。同為浮點系列的C3X中的VC33現在雖非主流產品,但也仍在廣泛使用,但其速度較低,最高在150MIPS。4)OMAP系列:OMAP處理器集成ARM的命令及控制功能,另外還提供DSP 的低功耗實時信號處理能力,最適合移動上網設備和多媒體家電

4、。 其他系列的DSP曾經有過風光,但現在都非TI主推產品了,除了C3X系列外,其他基本處于淘汰階段,如:C3X的浮點系列:C30,C31,C32 C2X和C5X系列:C20,C25,C50每個系列的DSP都有其主要應用領域.2、設計中如何得到技術參考資料以及如何得到相關源碼原則是碰到問題就去1)在TI網站的搜索中用keyword搜索資料,主要要注意的就是Application Notes,user guides 比如不知道怎樣進行VC5402的McBSP編程,搜McBSP和VC5402 如果不知道如何設計VC5402和TLV320AIC23的接口以及編程,搜TLV320AIC23和VC5402

5、; 這樣可以搜到一堆的資料,這些資料一般均有PDF文檔說明和相應的源程序包提供,download后做少許改動即可2)來DSP交流網,HELLODSP真誠歡迎每一位有需要的朋友3)google搜4)再不濟,找技術支持,碰運氣了3、如何看待TI DSP龐雜的技術文檔新手進行DSP開發學習之時,常常感覺技術文檔太多,哪本都有用,哪本都想看,無從下手。此時原則是只看入門必須的、只看和芯片相關的。根據經驗,如下的資料必看不可:1)講述DSP的CPU,memory,program memory addressing,data memory addressing的資料都需要看、外設資源的資料可以只看自己用到

6、的部分;2)C和匯編的編程指南需要看3)匯編指令和C語言的運行時間支持庫、DSPLIB等資料需要看其他的如:Applications Guide,Optimizing CC+ Compiler User's Guide,Assembly Language Tools User's Guide等資料留待入門之后再去看體會會更深一些。4、如何高效開始TI DSP的硬件開發1)根據應用領域選擇TI推薦的DSP類型2)參考選定的DSP之EVM板,DSK等原理圖,完成DSP最小系統的搭建(包括外擴內存空間、電源復位系統、各控制信號管腳的連接、JTAG口的連接等);3)根據具體應用需要,選

7、擇外圍電路的擴展,一般如語音、視頻、控制等領域均有成熟的電路可以從TI網站得到。外圍電路與DSP的接口可參看EVM或DSK,以及所選外圍電路芯片的典型接口設計原理圖;最好外圍電路芯片也選擇TI的,這樣的話不管硬件接口有現成原理圖、很多連DSP與其接口的基本控制源碼都有。4)地址譯碼、IO擴展等用CPLD或者FPGA來做,將DSP的地址線、數據線、控制信號線如IS/PS/DS等都引進去有利于調試5、如何高效開始TI DSP的軟件開發 如果你不是純做算法,而是在一個目標版上進行開發,需要使用DSP的片上外設,需要控制片外接口電路,那么建議在寫程序前先好好將這個目標版的電路設計搞清楚。最重要的是程序

8、、數據、I/O空間的譯碼。不管是否純做算法還是軟硬結合,DSP的CPU,memory,program memory addressing, data mem.ory addressing的資料都需要看.1)看CCS的使用指南2)明白CMD文件的編寫3)明白中斷向量表文件的編寫,并定位在正確的地方4)運行一個純simulator的程序,了解CCS的各個操作5)到TI網站下相關的源碼,參考源碼的結構進行編程6)不論是C編程還是ASM編程,模塊化是必須的6、選擇C還是選擇ASM進行編程記住一條原則,TI的工程師在不斷改進CCS的C程序優化編譯器,現在C優化的效率可達到手工匯編的90甚至更高。當然有的

9、時候如果計算能力和內存資源是瓶頸,ASM還是有優勢,比如G.729編解碼。但是針對一般的應用開發,C是最好的選擇。 新手編程則選擇C和匯編混合編程更有利一些7、選擇什么仿真器一般來說,買個并口的EPP就夠了,價格便宜又穩定,現在用的比較多的是USB接口的仿真器8、關于TI 54X系列DSP的bootloader過程 請詳細閱讀TI文檔SPRA618A、SPRA571,這些文檔對boot的機制進行了詳細說明同時說明了利用hex500將*.out文件轉化為*.hex文件時,需要編寫的cmd文件的寫法。9。如何選擇外部時鐘? DSP的內部指令周期較高,外部晶振的主頻不夠,因此DSP大多數片內均有PL

10、L。但每個系列不盡相同。 1)TMS320C2000系列: TMS320C20x:PLL可以÷2,×1,×2和×4,因此外部時鐘可以為5MHz40MHz。 TMS320F240:PLL可以÷2,×1,×1.5,×2,×2.5,×3,×4,×4.5,×5和×9,因此外部時鐘可以為2.22MHz40MHz。 TMS320F241/C242/F243:PLL可以×4,因此外部時鐘為5MHz。 TMS320LF24xx:PLL可以由RC調節,因此外部時鐘

11、為4MHz20MHz。 TMS320LF24xxA:PLL可以由RC調節,因此外部時鐘為4MHz20MHz。 2)TMS320C3x系列: TMS320C3x:沒有PLL,因此外部主頻為工作頻率的2倍。 TMS320VC33:PLL可以÷2,×1,×5,因此外部主頻可以為12MHz100MHz。 3)TMS320C5000系列: TMS320VC54xx:PLL可以÷4,÷2,×1-32,因此外部主頻可以為0.625MHz50MHz。 TMS320VC55xx:PLL可以÷4,÷2,×1-32,因此外部主

12、頻可以為6.25MHz300MHz。 4)TMS320C6000系列: TMS320C62xx:PLL可以×1,×4,×6,×7,×8,×9,×10和×11,因此外部主頻可以為11.8MHz300MHz。 TMS320C67xx:PLL可以×1和×4,因此外部主頻可以為12.5MHz230MHz。 TMS320C64xx:PLL可以×1,×6和×12,因此外部主頻可以為30MHz720MHz10。軟件等待的如何使用? DSP的指令周期較快,訪問慢速存儲器或外設時需加

13、入等待。等待分硬件等待和軟件等待,每一個系列的等待不完全相同。 1)對于C2000系列: 硬件等待信號為READY,高電平時不等待。 軟件等待由WSGR寄存器決定,可以加入最多7個等待。其中程序存儲器和數據存儲器及I/O可以分別設置。 2)對于C3x系列: 硬件等待信號為/RDY,低電平是不等待。 軟件等待由總線控制寄存器中的SWW和WTCNY決定,可以加入最多7個等待,但等待是不分段的,除了片內之外全空間有效。 3)對于C5000系列: 硬件等待信號為READY,高電平時不等待。 軟件等待由SWWCR和SWWSR寄存器決定,可以加入最多14個等待。其中程序存儲器、控制程序存儲器和數據存儲器及

14、I/O可以分別設置。 4)對于C6000系列(只限于非同步存儲器或外設): 硬件等待信號為ARDY,高電平時不等待。 軟件等待由外部存儲器接口控制寄存器決定,總線訪問外部存儲器或設備的時序可以設置,可以方便的同異步的存儲器或外設接口。11。仿真工作正常對于DSP的基本要求 1)DSP電源和地連接正確。 2)DSP時鐘正確。 3)DSP的主要控制信號,如RS和HOLD信號接高電平。 4)C2000的watchdog關掉。 5)不可屏蔽中斷NMI上拉高電平。 CCS或Emurst運行時提示“Can't Initialize Target DSP” 1)仿真器連接是否正常?2)仿真器的I/O

15、設置是否正確? 3)XDSPP仿真器的電源是否正確? 4)目標系統是否正確? 5)仿真器是否正常?6)DSP工作的基本條件是否具備。 建議使用目標板測試。 12。為什么CCS需要安裝Driver? CCS是開放的軟件平臺,它可以支持不同的硬件接口,因此不同的硬件接口必須通過標準的Driver同CCS連接。 Driver安裝的常見問題? 請認真閱讀“安裝手冊”和Driver盤中的Readme。 1)對于SEED-XDS,安裝Readme中的步驟,將I/O口設為240/280/320/340。 2)對于SEED-XDSPP,安裝Readme中的步驟,將I/O口設為378或278。3)對于SEED-

16、XDSUSB,必須連接目標板,安裝 Readme中的步驟,將I/O口設為A,USB連接后,主機將自動激活相應的Driver。 4)對于SEED-XDSPCI,安裝Readme中的步驟,將I/O口設為240,PCI接口板插入主機后,主機將自動激活相應的Driver。 5)對于Simulator,需要選擇不同的CFG文件,以模擬不同的DSP。 6)對于C5402 DSK,將I/O口設為請認真閱讀“安裝手冊”和Driver盤中的Readme。 1)對于SEED-XDS,安裝Readme中的步驟,將I/O口設為240/280/320/340。 2)對于SEED-XDSPP,安裝Readme中的步驟,將

17、I/O口設為378或278。注意主機BIOS中并口的型式必須同xds510pp.ini 中一致。 3)對于SEED-XDSUSB,必須連接目標板,安裝Readme中的步驟,將I/O口設為240/280/320/340,USB連接后,主機將自動激活相應的Driver。 4)對于SEED-XDSPCI,安裝Readme中的步驟,將I/O口設為240/280/320/340,PCI接口板插入主機后,主機將自動激活相應的Driver。 5)對于Simulator,需要選擇不同的CFG文件,以模擬不同的DSP。 6)對于C5402 DSK,將I/O口設為378或278。 7)對于C6211/6711 DSK,將I/O口設為378或278。 8)對于C6201/C6701 EVM,將I/O口設為0。13。Link的cmd文件的作用是什么? Link的cmd文件用于DSP代碼的定位。由于DSP的編譯器的編譯結果是未定位的,DSP沒有操作系統來定位執行代碼,每個客戶設計的DSP系統的配置也不盡相同,因此需要用戶自己定義代碼的安裝位置。以C5000為例,基本格式為: -o sample.out -m sample.map -stack 100 sample.obj meminit.obj -l rts.

溫馨提示

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

評論

0/150

提交評論