《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于DSP TMS320F206的仿真調試
基于DSP TMS320F206的仿真調試
摘要: TMS320F206(以下簡稱F206)是C2XX系列DSP中的一個產品,其獨有的片內32KB的閃速存儲器FLASH使其仿真調試與眾不同。F206帶有程序、數據和I/O三個相互獨立的存儲空間,每個存
Abstract:
Key words :

 TMS320F206(以下簡稱F206)是C2XX系列DSP中的一個產品,其獨有的片內32KB的閃速存儲器FLASH使其仿真調試與眾不同。F206帶有程序、數據和I/O三個相互獨立的存儲空間,每個存儲空間均為64K×16位,其中片內雙訪問RAM為544字(288字用于數據,另256字可用于程序/數據),片內FLASH為32K字,片內單訪問RAM為4.5K字,其具體分布如表1所示。
F206的仿真調試
● F206仿真調試的特點
    F206的仿真調試器沒有采用傳統的插入仿真的方法,而是通過仿真器與DSP芯片上的幾個仿真引腳間通信實現,F206具有符合IEEE1149.1標準的JTAG邏輯掃描電路,掃描仿真不僅克服了因仿真電纜過長而引起的信號失真,而且克服了傳統單片機“插入式”仿真方式脫機運行時就出錯的缺點。利用聞亭公司生產的EPP_XDS510仿真器進行系統的在線仿真調試,其一端與計算機的并口相連,另一端通過一雙列14腳的仿真插頭與F206通信。
● 問題的提出
    如果所要進行仿真的硬件裝置沒有外部存儲器,此種情況下如何實現仿真呢?若將程序完全定位至8000H開始的片上SARAM內,則與F206中斷向量表應該定位至0000H相矛盾,從而中斷進一步程序將不可能正確運行;若將程序完全定位至0000H開始的FLASH內,雖保證了中斷進一步程序可以正確運行,但是由于在FLASH內無法設置斷點,所以此種情況下不能順利進行仿真調試;若將中斷向量表定位至0000H的FLASH內,將程序的其他部分定位至8000H內,可以保證中斷進一步程序的正確執行,也可以在SARAM內設置斷點,似乎是一種可行的方法,但是程序每改動一點,也就意味著中斷向量表也要做相應的修改,即要再次將中斷向量表燒寫到FLASH內,不僅麻煩而且對FLASH也有損傷。
● 問題的解決
    針對以上種種方案存在的弊端,筆者提出了一種行之有效的解決辦法,那就是將中斷向量表和程序都定位至8000H開始的SARAM內,而在0000H燒寫進一定的跳轉語句,這樣既保證了中斷的正確執行,程序斷點的調試,同時對FLASH也只要進行一次燒寫即可。
    首先完成跳轉語句的燒寫。F206的FLASH燒寫必須具備如下幾個前提:FLASH燒寫工作只能在WIN98操作系統下完成,在WIN2000操作系統下將會顯示窗口初始化失敗,被強行關閉;時鐘頻率必須為20MHz。
    相應的CMD文件為:
    MEMORY
    { PAGE 0: VECB :org= 0000h,length=40h
    ......
    PAGE 1:
    ......
    }
    SECTIONS
    { vectorb : {} > VECB PAGE 0
    ......
    }
    相應的vectorb的程序為如下。
    *File: vectorb.h *
    *File defines Interrupt vector labels *
    .global _c_int0
    .global _c_int1
    .global _c_int2
    .global _c_int3
    .sect "vectorb"
    b 8000h ;硬件復位c_int0
    b 8002h ;外部中斷1 /INT1
    b 8004h ;外部中斷2 INT2/INT3
    b 8006h ;定時器中斷
    nop
    nop
    b 8000h
    b 8000h ;保留
    b 8000h ;保留
    b 8000h ;保留
    nop
    nop
    b 8000h
    b 8000h
    b 8000h
    b 8000h
    假設燒寫程序在E:\LOADEPP\目錄下,則將上述工程編譯并建立形成的TZ.OUT文件也復制到同樣的E:\LOADEPP\目錄下,然后執行如下燒寫語句。
    E:\LOADEPP\>PRG2XXPP -P 280 -M 0X0006 -S 0X4007 -W 6 -E SRC\C2XX_SPX.OUT TZ.OUT即可。
    在跳轉語句的燒寫完成后,即可將中斷向量表和程序都定位至8000H開始的SARAM內,這樣在SARAM內既可很方便設置斷點,同時已經燒寫進FLASH的跳轉語句又能保證中斷的正確執行,且每次對程序修改后無需再次對FLASH燒寫,只要重新生成.OUT文件,然后執行CCS的FILE菜單下的LOAD PROGRAM即可。
  相應的CMD文件如下。
   MEMORY
   { PAGE 0:
   VEC :org=8000h,length=40h
    PROG :org=8050h,length=0600h
    PAGE 1:
    RAM_B2 :org=60h,length=20h
    RAM_B0 :org=0200h,length=0100h
    RAM_B1 :org=0300h,length=0100h
    DATAS :org=11ffh,length=0600h
    }
    SECTIONS
    { .data : {} > RAM_B0 PAGE 1
    .stack: {}> DATAS PAGE 1
    .bss : {}>DATAS PAGE 1
    /******************************************/
    vectors : {} > VEC PAGE 0
    .text : load > PROG, PAGE 0
    .mirro : {} > PROG PAGE 0
    .cinit : {} > PROG PAGE 0
    }
    相應的vectors中斷向量表的程序如下。
    * File: vector.h *
    * File defines Interrupt vector labels *
    .global _c_int0
    .global _c_int1
    .global _c_int2
    .global _c_int3
    .sect "vectors"
    b _c_int0 ;硬件復位c_int0
    b _c_int1 ;外部中斷1 /INT1
    b _c_int2 ;外部中斷2 INT2/INT3
    b _c_int3 ;定時器中斷
    nop
    nop
    b _c_int0
    b _c_int0 ;保留
    b _c_int0 ;保留
    b _c_int0 ;保留
    nop
    nop
    b _c_int0
    b _c_int0
    b _c_int0
    b _c_int0
結語
    針對具有片內FLASH的DSP芯片TMS320F206,在沒有片外RAM的情況下如何方便有效的進行仿真調試,本文提出了一種行之有效的解決辦法,以期對各位致力于DSP研究開發的同仁有所幫助。
 

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 精品欧美一区二区精品久久| 18以下岁毛片在免费播放| 最近高清日本免费| 女人是男人的未来1分29| 亚洲免费黄色网| 类似爱情1未删减版视频| 国产成人精品一区二区三在线观看| а√天堂资源8在线官网在线| 日韩在线一区二区三区免费视频| 亚洲精品成人区在线观看| 色哟哟www视频在线观看高清| 国产精品一区二区久久不卡| japonensisjava野外vt| 日本在线色视频| 亚洲最大看欧美片网站| 精品国产污污免费网站入口 | 亚洲国产日韩在线一区| 精品久久久无码中字| 国产在线看片网站| 4480yy苍苍私人| 女人18岁毛片| 中文字幕视频在线| 最近免费中文字幕大全高清大全1| 亚洲视频精品在线| 综合网日日天干夜夜久久| 国产在线视频www色| 18岁女人毛片| 外国毛片在线观看| 三级在线看中文字幕完整版| 日韩一区二紧身裤| 亚洲国产第一区| 狠狠色欧美亚洲狠狠色www| 国产精品视频你懂的| 一本色道久久88综合亚洲精品高清| 日韩中文字幕免费观看| 亚洲国产精品第一区二区| 王雨纯脱得一点不剩| 午夜欧美精品久久久久久久| 韩国公和熄三级在线观看| 国产真实乱子伦精品视| 91精品成人福利在线播放|