




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
數(shù)字信號處理器DigitalSignalProcessor
第三局部TIDSP軟件開發(fā)工具
CCS(CodeComposerStudio)的使用紀震博士Dr.JiZhenShenzhenUniv.-TexasInstrumentsDSPsLab2003.0211CCS集成環(huán)境IDE
(IntegratedDevelopmentEnvironment)不僅僅是代碼生成工具具備根本調(diào)試功能,還具備實時分析的能力支持整個軟件開發(fā)過程:設計代碼生成(工程建立,源程序編寫,配置文件)調(diào)試(語法檢查,探測點,日志log功能)實時分析(實時調(diào)試,實時狀態(tài)顯示,任務切換跟蹤)實時(RealTime)是DSP的靈魂2Dr.JIZHEN1.1CCS集成環(huán)境IDE3Dr.JIZHEN1.1CCS集成環(huán)境IDE的組成4Dr.JIZHEN1.1CCS集成環(huán)境IDE的組成包括主機和目標系統(tǒng)兩局部CCS首先是作為代碼生成工具,作為代碼生成工具有這樣一些輸入:配置工具產(chǎn)生的配置文件,DSP/BIOSAPI的庫函數(shù)。自己的程序文件.c,.h,生成可執(zhí)行文件主機方:最低層是JTAG,上面是調(diào)試器,再上面是CCS的各種插件,包括DSP/BIOS插件〔實時調(diào)試〕,還用RTDX〔實時數(shù)據(jù)交換〕目標系統(tǒng)一方:最底層是硬件和JTAG,向上是DSP/BIOS實時操作系統(tǒng)〔這是可選的也可以沒有操作系統(tǒng),完全自己管理〕,再向上是應用程序.5Dr.JIZHEN1.2CCS代碼生成工具流圖6Dr.JIZHEN1.2CCS代碼生成工具流圖每個白色框代表一種代碼生成工具,條紋框是它的輸入文件類型比方:C編譯器〔C程序〕,匯編優(yōu)化器〔線性匯編程序〕,匯編器〔匯編〕,建庫工具,連接器最后可執(zhí)行文件由調(diào)試器加載目標系統(tǒng)以上的工具時常用和通用的.其它的工具hexconversionutility16進制轉(zhuǎn)換工具,把COFF轉(zhuǎn)換為其它格式文件寫到EPROM中cross-referencelister產(chǎn)生交叉參考列表,它列出定義的symbol,定義symbol的行,以及用到symbol的位置(行),還有symbol的類型,編譯和連接時分配給symbol的值.absolutelister,產(chǎn)生連接后的coff文件的絕對地址列表Archiver:文檔管理工具—打包.7Dr.JIZHENCCS代碼生成工具流圖8Dr.JIZHEN1.3CCS軟件TI公司耗資近2億美元CCS2.0ForC5000系列CCS2.0ForC6000系列CCS2.0ForDSK〔DeveloperStartKit,初學者開發(fā)套件〕CCS2.1升級包9Dr.JIZHEN1.3.1CCS2.0界面(1)10Dr.JIZHEN1.3.1CCS2.0界面(1)CCS提供一個類似VC++的集成開發(fā)環(huán)境,使用比較方便有菜單,工具條,左邊是工程窗口,右邊是代碼編輯窗口(和圖形顯示窗口),下邊是編譯器編譯結果,和變量顯示窗口,和存放器觀察窗口.Project工具條:編譯,連接,設置三種點:斷點、探點〔probe〕、時間分析點〔profile〕調(diào)試工具條:程序step運行〔4種〕,連續(xù)運行〔2種〕,查看變量、存放器、存儲器,調(diào)用堆棧,反匯編窗口Standard工具條:新建,保存,翻開,查找,剪貼,Findinfiles功能比較好用編輯工具條:mark〔大小括號〕查找,縮進〔outdent〕,書簽11Dr.JIZHEN1.3.1CCS2.0界面(2)CCS提供一些類似VC的代碼編輯功能語法高亮顯示,自動縮近,文字查找等等原程序和反匯編同時顯示〔逐條語句對應,但優(yōu)化后是模塊對應〕12Dr.JIZHEN1.3.2CCS2.0工程管理應用程序按工程來管理,按層次以圖形化的方式顯示工程文件(.mak)CMD文件.h頭文件.lib庫文件.c源程序13Dr.JIZHEN1.3.3CCS2.0圖形化設置各種編譯選項〔匯編器選項,連接器選項等〕通過圖形化方式來設置,不需要手工添加選項14Dr.JIZHEN1.3.3CCS2.0圖形化設置15Dr.JIZHEN1.3.4CCS2.0調(diào)試功能(1)斷點設置:多種step方法:singlestep(stepinto);stepover;stepout;runtocursor運行到斷點處自動更新窗口觀察和編輯變量、存放器和存儲器調(diào)用堆棧〔callstack〕,顯示函數(shù)調(diào)用層次關系.補充上電時的工作:$ASM$(simulator,硬件上電復位RESET中斷效勞程序)c_int00_auto_init(C變量初始化)返回后c_int00調(diào)main()函數(shù)….Main()完成后,c_int00調(diào)exit(1),做一些清楚工作,如關閉翻開的文件.exit在調(diào)abort,無限循環(huán)利用探點(probepoint)流入流出(streaminandout)存儲器數(shù)據(jù)16Dr.JIZHEN1.3.4CCS2.0調(diào)試功能(2)圖形化顯示數(shù)據(jù)一維數(shù)據(jù),二維圖象,眼圖等代碼剖析〔Profile〕計算代碼運行時間17Dr.JIZHEN1.3.4CCS2.0調(diào)試功能(3)18Dr.JIZHEN1.3.5CCS2.0
DSP/BIOS操作系統(tǒng)DSP/BIOS是一個實時操作系統(tǒng)RTOS提供通常的RTOS的功能〔任務調(diào)度,任務間通訊〕提供驅(qū)動程序模型,層次化地設計應用程序DSP/BIOS以CCS插件的形式提供一些實時分析工具程序跟蹤:觀察任務的調(diào)度、切換性能監(jiān)視:觀察CPU的負載狀態(tài)統(tǒng)計:對事件做統(tǒng)計提供RTDX〔實時數(shù)據(jù)交換〕,不打斷DSP運行的情況下實現(xiàn)主機和DSP的數(shù)據(jù)交換19Dr.JIZHEN1.3.6CCS2.0
RTDX(1)RTDX,即Real-timeDataExchange提供了一種實時,連續(xù)的觀測手段,不打斷DSP運行〔數(shù)據(jù)可連續(xù)觀測,也可傳回來存儲后觀測〕不打斷DSP運行的情況下,主機和DSP間傳遞數(shù)據(jù)回傳到主機的數(shù)據(jù)可以在“OLE自動化客戶〞中顯示20Dr.JIZHEN1.3.6CCS2.0
RTDX(2)包括Host方和Target方Target方編程接口RTDXtargetAPIHost方編程接口RTDXCOMAPI〔組件對象模型COM是windows下一種編程技術〕21Dr.JIZHEN1.3.7CCS2.0界面(2)主機方的RTDX庫是和CCS集成在一起的主機一方有一個函數(shù)接口,目標方DSP上也有一個函數(shù)接口主機應用程序通過COMAPI發(fā)送數(shù)據(jù)到DSP,或接收數(shù)據(jù),應用程序可以按自己的方式來顯示數(shù)據(jù),RTDX可以脫離DSP/BIOS使用,給用戶靈活性下一張圖是一個例子,用LabView作一個顯示界面,LabView調(diào)用RTDXAPI得到DSP傳來的數(shù)據(jù)22Dr.JIZHEN1.3.7CCS2.0界面(2)這是一個fir濾波的例子.HOST原始數(shù)據(jù)(顯示,左上方)(RTDX)dspfilter(RTDX)HOST(顯示,左下方)左上方:原始的數(shù)據(jù)左下方:濾波后數(shù)據(jù)右上方:dsp的fir濾波后的信號(左下方顯示)的功率譜右下方:Labview對原始信號進行fir濾波后的信號的功率譜(比照)23Dr.JIZHEN1.3.8CCS2.0的文件與環(huán)境變量.mak.lib.obj.out.wks(.wks保存當前CCS中的設置:翻開的變量窗口,顯示的圖形。方便,快捷。)可編輯文件:.c.asm.hd(.sa)三個環(huán)境變量:C6X_A_DIR,C6X_C_DIR,PATH24Dr.JIZHENCCS小結CCS不僅僅是代碼生成工具,對軟件開發(fā)的各個階段都有支持提供底層實時操作系統(tǒng)DSP/BIOS提供RTDX新的實時調(diào)試手段,與CCS集成,不需要自己添加額外的用于調(diào)試的硬件〔但是速率比較低〕25Dr.JIZHEN2簡單程序開發(fā)流程〔1〕建立工程ProjectNew選擇一個目錄,生成一個工程文件test.mak26Dr.JIZHEN2簡單程序開發(fā)流程〔2〕添加文件ProjectAddFilestoProject…添加文件〔.c,.lib,d,.sa,.asm…〕1〕vectors.asm包含匯編指令處理reset中斷效勞程序,跳轉(zhuǎn)到Cc的入口.c_int00.2〕掃描dependence:.h27Dr.JIZHEN2簡單程序開發(fā)流程〔3〕代碼編輯雙擊工程窗口的文件名,開始編輯源程序28Dr.JIZHEN2簡單程序開發(fā)流程〔4〕設置編譯選項ProjectOptions29Dr.JIZHEN2簡單程序開發(fā)流程〔4〕設置編譯選項30Dr.JIZHEN2簡單程序開發(fā)流程〔4〕設置編譯選項31Dr.JIZHEN2簡單程序開發(fā)流程〔5〕Build,DebugProjectBuild32Dr.JIZHEN2簡單程序開發(fā)流程〔6〕Debug加載程序FileLoadProgram…設置斷點,通過WatchWindow觀察變量單步執(zhí)行黃色條代表當前執(zhí)行到那條語句紫色條代表斷點位置33Dr.JIZHEN2簡單程序開發(fā)流程〔7〕Profile〔剖析〕ProfileEnableClock設置profilepoint〔綠色條〕每個綠色條在窗口中對應有一行統(tǒng)計數(shù)字,用來統(tǒng)計profilepoint〔綠色條〕之間的時鐘數(shù)調(diào)試器內(nèi)部有時鐘計數(shù),最后查看每一個觀測點的運行時間34Dr.JIZHEN2簡單程序開發(fā)流程〔7〕總結按工程管理圖形化的編譯選項設置提供各種調(diào)試功能,斷點方式,Profile方式下面介紹一個例子,將學習到probepoint〔用于從文件讀入數(shù)據(jù)〕,圖形顯示,animation等調(diào)試方法35Dr.JIZHEN3算法測試和文件IO〔1〕探點Probe〔探點〕
1)適合于算法的開發(fā),功能驗證 2)可以完成這樣的功能從一個文件中讀入數(shù)據(jù)到一個DSP的緩沖區(qū)將一個DSP的緩沖區(qū)寫到文件中 3)探點類似于斷點,又不同于斷點運行到Probepoint,DSP會停頓下來完成一些動作后〔讀寫文件〕,程序繼續(xù)運行 4)文件輸入輸出的設置:FileFileI/O… 5)Probe的設置:類似斷點的設置〔用工具條〕36Dr.JIZHEN3算法測試和文件IO〔1〕探點37Dr.JIZHEN3算法測試和文件IO〔2〕圖形CCS支持一維圖形,二維圖象〔標準的數(shù)據(jù)格式〕,眼圖等顯示方式有放大、縮小等功能可以方便直觀地判斷算法執(zhí)行的效果38Dr.JIZHEN3算法測試和文件IO〔3〕GELGEL=GeneralExtensionLanguage一種類似C的解釋型語言,可實現(xiàn)循環(huán)等程序結構提供根本的程序控制命令,類似以前emulator提供的命令,GEL_Go(),GEL_Reset()等等可以制作菜單〔可以參加到CCS主菜單〕,對話框,滑動條39Dr.JIZHEN4基于DSP/BIOS程序的調(diào)試〔1〕DSP/BIOS提供“虛擬儀器〞的調(diào)試方法以圖形化的方式觀察程序執(zhí)行的流向,任務如何調(diào)度、切換的以圖形化的方式觀看CPULOAD〔CPU負荷〕,了解CPU還有多大的運算能力應用程序必須是基于DSP/BIOS的程序,DSP/BIOS提供圖形化的界面設置各個模塊的參數(shù)40Dr.JIZHEN4基于DSP/BIOS程序的調(diào)試〔1〕41Dr.JIZHEN4基于DSP/BIOS程序的調(diào)試〔2〕通過RTA設置觀看的內(nèi)容通過ExecutionGraph觀察任務切換通過CPULoadGraph觀察CPU負荷用過STS觀察事件的統(tǒng)計都是DSP/BIOS提供的功能42Dr.JIZHEN4基于DSP/BIOS程序的調(diào)試〔2〕43Dr.JIZHEN5基于RTDX的實時調(diào)試〔1〕可以實時地對DSP進行調(diào)試,不打斷DSP的運行可以在不打斷DSP運行的情況下,在Host和DSP之間傳遞數(shù)據(jù)是一個雙向數(shù)據(jù)通道,既可以用來為主機收集目標系統(tǒng)的數(shù)據(jù),也可以用來調(diào)整目標系統(tǒng)的參數(shù)可以和主機的應用程序集成,實現(xiàn)自己的用戶界面〔而不是在CCS環(huán)境中44Dr.JIZHEN5基于RTDX的實時調(diào)試〔2〕RTDX包括Host和Target兩局部主機應用程序通過COMAPI與RTDX庫通訊,目標系統(tǒng)上也有RTDX的函數(shù)接口主機庫支持兩種接收數(shù)據(jù)模式:連續(xù)、非連續(xù)連續(xù)模式下,RTDX庫只是緩沖數(shù)據(jù),適合只顯示、不存儲的應用程序非連續(xù)模式下,接收的數(shù)據(jù)被寫入一個日志〔LOG〕文件中,適合需要存儲數(shù)據(jù)的應用程序45Dr.JIZHEN6一些調(diào)試經(jīng)驗(1)1)一次新增的調(diào)試代碼不能過長.2)防御式編程:如通信中的等待時間不能過長3)對感興趣的事件做記錄:中斷發(fā)生次數(shù),等待超時計數(shù)4)CCS的運行中添加斷點和運行前添加斷點5)窗口刷新的影響:大量的數(shù)據(jù)更新回影響底層的時序6)隨時關系程序運行時間,過長會影響時序,設置計算器.46Dr.JIZHEN6一些調(diào)試經(jīng)驗(2)7)注意數(shù)組的越界和指針的使用:也是其它編程通常的錯誤,這個錯誤可能其它局部修改,尤其對硬件計數(shù)器
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025貴陽學院輔導員考試試題及答案
- 2025甘肅機電職業(yè)技術學院輔導員考試試題及答案
- 2025白城職業(yè)技術學院輔導員考試試題及答案
- T/ZBH 010-2019中空玻璃用反應型熱熔密封膠
- 浙江嘉興一只怪獸超級健身中心招聘筆試題庫2025
- 安徽航瑞國際滾裝運輸有限公司招聘筆試題庫2025
- 2025年月度績效考核與反饋測試試題及答案
- 2025年職業(yè)衛(wèi)生與環(huán)境管理考試卷及答案
- 2025年演藝與文化管理專業(yè)考研試題及答案
- 2025年網(wǎng)頁設計與前端開發(fā)能力測試試卷及答案
- 2024貴州貴陽農(nóng)商銀行“超享聘旭日”大學生招聘50人筆試歷年典型考題及考點剖析附帶答案詳解
- 上海市徐匯區(qū)2025屆八下物理期末考試試題含解析
- 2025浙江省樂清蒼南永嘉二模聯(lián)考科學試題卷
- 2025年中國鎳合金箔帶材市場調(diào)查研究報告
- 2024年高考江蘇卷生物試題解析版
- 基于BIM的建筑行業(yè)工程項目施工質(zhì)量管理與改進報告
- 2025人教版五年級數(shù)學下冊期末復習計劃
- 2024年河北省井陘縣事業(yè)單位公開招聘警務崗筆試題帶答案
- 2025年政治考研真題及答案
- (三模)合肥市2025屆高三年級5月教學質(zhì)量檢測英語試卷(含答案)
- 福建省莆田市2025屆高三下學期第四次教學質(zhì)量檢測試生物試題(含答案)
評論
0/150
提交評論