《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > TMS320C62x軟件開發方法研究
TMS320C62x軟件開發方法研究
馬君國 付 強
摘要: 闡述了TMS320C62x的系統結構和軟件設計方法,介紹了在TMS320C6201 EVM板上實現寬帶毫米波雷達目標時延神經網絡識別算法。通過程序驗證,取得了比較好的處理效果。
Abstract:
Key words :

  摘  要: 闡述了TMS320C62x的系統結構和軟件設計方法,介紹了在title="TMS320C6201">TMS320C6201 EVM板上實現寬帶毫米波雷達目標時延神經網絡識別算法。通過程序驗證,取得了比較好的處理效果。

  關鍵詞: TMS320C6201  DSP  軟件設計  實時處理  目標識別

 

  數字信號處理(DSP)技術近年來取得了高速發展,目前DSP芯片已經廣泛地應用于通信、圖像處理、語音處理、雷達等領域。TI公司是當今世界DSP芯片的主要供應商之一,其TMS320C6000是TMS320系列產品中的新一代高性能DSP芯片,其中定點系列為TMS320C62x,浮點系列為TMS320C67x。TMS320C6201芯片是定點系列的代表產品,其處理能力高達1600MIP。本文著重介紹TMS320C62x的軟件設計方法,并對TMS320C62x的系統結構以及基于TMS320C62x的軟件設計方法,在TMS320C6201上實現寬帶毫米波雷達目標時延神經網絡識別算法進行闡述。

1 TMS320C62x的系統結構

  TMS320C62x的系統結構如圖1所示,TMS320C62x處理器由三個主要部分組成:CPU內核、外設和存儲器。CPU內核中的8個功能單元可以完全并行運行,功能單元執行邏輯、位移、乘法、加法和數據尋址等操作。TMS320C6000系列芯片的體系結構采用甚長指令字(VLIW)方式,單指令字長為32位,每條32位指令占用一個功能單元。取指令、指令分配和指令譯碼單元每周期可以從程序存儲器到功能單元傳遞8條指令,這8條指令組成一個指令包,總字長為8×32=256位。芯片內部設置了專門的指令分配模塊,可以將每個256位的指令包分配到8個功能單元中,并由8個功能單元并行運行。TMS320C62x芯片的最高時鐘頻率可以達到200MHz,8個功能單元同時運行時,該芯片的處理能力高達1600MIP。

 

 

  TMS320C62x芯片的片內存儲器總容量為1M位,其中2K×256位用于程序內存和程序cache,寬度為256位;64K字節用于數據內存和數據cache,用戶可以訪問8位、16位和32位的數據。TMS320C62x芯片的外設模塊包括多通道緩沖串口、時鐘、外部存儲器接口EMIF、DMA控制器、主機口和Power-down邏輯等,DMA控制器可以在存儲器空間的不同區域間控制轉移數據;外部存儲器接口EMIF可以訪問的片外存儲器最大容量為64MB,數據總線寬度為32位,同時也提供對8位和16位存儲器的讀寫支持;16位寬的主機口HPI可以訪問TMS320C62x的所有存儲空間和設備;多種外設模塊使得TMS320C62x芯片的功能十分強大。

2 TMS320C62x的軟件設計方法

  用戶在開發應用軟件時,首先應當明確應用軟件的功能和性能要求,然后按照代碼開發流程的三個階段進行軟件設計:第一階段是開發C代碼;第二階段是優化C代碼;第三階段是編寫線性匯編代碼。以上的三個階段不是必須經過的,如果在某一階段已經實現了應用軟件的功能和性能要求,那么就不必進入下一個階段。代碼開發流程圖如圖2所示。

 

 

2.1 開發C代碼

  開發C語言代碼需要考慮的要點包括:①數據結構;②分析C代碼性能;③使用查找表;④用整形數(int)表示浮點數。

2.1.1 數據結構

  TMS320C62x編譯器對每種數據結構定義一個尺寸,字符型(char)為8位,短整型(short)為16位,整型(int)為32位,長整型(long)為40位,浮點型(float)為32位,雙精度浮點型(double)為64位。在編寫C代碼時應當遵循的規則是:避免在代碼中將int型和long型作為同樣尺寸處理,因為編譯器對long型數據使用40位操作;對于定點乘法,應當盡可能使用short型數據,這種數據類型可以更有效地使用TMS320C62x的乘法器;對循環計數器應當使用int或者無符號int類型,而不使用short或者無符號short類型,以避免不必要的符號擴展。

2.1.2 分析C代碼性能

  應用調試器的Profile工具可以得到一個關于C代碼中各特定代碼段執行情況的統計表,也可以得到特定代碼段執行所用的CPU時鐘周期數,因此可以找出影響軟件程序總體性能的C語言代碼段來加以改進(通常是循環代碼段影響軟件程序總體性能)。

2.1.3 使用查找表

  在C語言代碼中通過直接計算得到結果的語句或函數可以用查找表或常數數值代替,所以可以提高指令執行速度。

2.1.4 用整型數(int)表示浮點數

  由于TMS320C62x是定點芯片,不支持浮點操作。對于浮點加、減、乘和除運算,應通過TMS320C62x的編譯器,把浮點運算轉化為一系列的定點運算,并由TMS320C62x芯片的功能單元處理這一系列的定點運算。浮點運算是比較費時的,在程序的編寫過程中,應當盡量采用定點的數據結構。對于C語言,應當盡量采用整型(int)的數據結構。在基于TMS320C62x的C語言中,整型數據占用4個字節,其所能表示的最大數據范圍是:-2147483648~+2147483647。因為實際處理的數據通常都是浮點的,所以需要把浮點數據通過定標轉化為整型數據進行處理,以提高應用程序的處理速度。小數位數的選取十分關鍵,既要使轉化后的數據處理精度滿足要求,又要防止在數據處理的過程中出現數據溢出。

2.2 優化C代碼

  優化C代碼包括使用編譯器選項、使用內聯函數、使用字訪問短整型數據和使用軟件流水等。編譯器選項控制著編譯器的操作,其中有些選項可使C代碼優化。

2.2.1 向編譯器指明不相關的指令

  為使指令并行操作,編譯器必須確定指令間的關系或者相關性,即一條指令必須發生在另一條指令之后,只有不相關的指令才可以并行執行。如果編譯器不能確定兩條指令是不相關的,則編譯器認為它們是相關的,將安排它們串行執行。用戶可以通過如下方法指明相關的指令:

  ·關鍵字const可以指定一個目標,const表示一個變量或者一個變量的存儲單元保持不變,使用const可以提高代碼的性能和適應性。

  ·一起使用-pm選項和-03選項可以確定程序優先級。在程序優先級中,所有源文件都被編譯成一個模塊,該模塊通過編譯器進行優化和產生代碼,從而使編譯器更有效地消除相關性。

  ·使用-mt選項向編譯器說明在代碼中不存在存儲器相關性,即允許編譯器在無存儲器相關性的假設下進行優化。

2.2.2 使用內聯函數(intrinsics)

  TMS320C62x編譯器提供的內聯函數是直接映射為內聯的C6000指令的特殊函數,用戶可以用內聯函數來快速優化C代碼。

2.2.3 使用字訪問短整型數據

  內聯函數中有些指令是對存儲在32位寄存器的高16位和低16位字段進行操作。當有大量短整型數據進行操作時,可以使用字(整型數)一次訪問兩個短整型數據,然后使用內聯函數對這些數據進行操作,從而減少對內存的訪問。

2.2.4 使用軟件流水

  軟件流水是采用安排循環指令的方法使循環多次迭代并行執行的一種技術。在編譯時,使用-o2選項和-o3選項,編譯器可對循環代碼實現軟件流水。為填滿軟件流水線,軟件流水結構需要執行的最小循環迭代次數稱為最小循環次數。當編譯器不能確定循環總數與最小循環次數的大小時,就產生了兩種形式的循環:循環總數小于最小循環次數時,執行不流水形式循環;循環總數大于最小循環次數時,執行軟件流水形式循環??梢允褂?ms選項使編譯器根據循環次數僅產生一種循環形式。用戶可以通過系列方法向編譯器傳遞循環次數信息:使用-o3和-pm選項,使優化器訪問整個程序,了解循環次數信息;使用_nassert內聯函數,訪止冗余循環產生。用戶可以使用投機執行(_mh選項)消除軟件流水循環的排空,從而減少代碼尺寸。

  由于在嵌套循環中編譯器僅對最里面的循環執行軟件流水,因此對于執行周期很少的內循環進行循環展開,對外循環進行軟件流水,這樣可以改進C代碼的性能。

  使用軟件流水應當注意的問題有:盡管軟件流水循環可以包含內聯函數,但是不能包含函數調用;在循環中不可以有條件終止指令;在循環體中不可以修改循環控制變量;如果循環體內復雜的條件代碼需要超過5個條件寄存器或者代碼尺寸需要32個寄存器以上,則這個循環不可以進行軟件流水。

2.3 編寫線性匯編代碼

  編寫線性匯編代碼是代碼開發流程的第三個階段。為了提高代碼性能,對影響應用程序速度的關鍵C代碼可以用線性匯編重新編寫,線性匯編文件是匯編優化器的輸入文件。線性匯編代碼類似于通常的C6000匯編代碼,不同的是編寫線性匯編代碼不需要指明使用的寄存器、指令的并行與否、指令的延遲周期和指令使用的功能單元,匯編優化器會根據情況確定這些信息。線性匯編文件使用一些匯編優化器偽指令來區分線性匯編和通常的匯編代碼,.cproc命令和.endpro命令限定了匯編優化器優化的代碼段,.cproc命令放在代碼段的開始,.endproc命令放在代碼段的結尾;.reg命令使匯編優化器為數值,選擇一個寄存器,這個寄存器與對該值進行操作的指令所選擇的功能單元一致;.trip命令指出循環的迭代次數。優化線性匯編代碼的方法包括:為線性匯編指令指定功能單元,使得最后的匯編指令并行執行;使用字訪問短整型數據;使用軟件流水對循環進行優化。

編寫線性匯編代碼的工作量非常大,需要很長的開發周期。而且開發后的匯編代碼不能象C代碼那樣移植在其它的DSP平臺上,因此建議盡量采用第一階段來進行軟件設計。如果仍然不能滿足性能要求,那么再對關鍵的C代碼段編寫線性匯編代碼。

3 在TMS320C6201上實現寬帶毫米波雷達目標時延神經網絡識別算法

  寬帶毫米波雷達目標識別算法對于實時處理的需求是比較苛刻的,例如某種寬帶雷達導引頭目標識別處理時間要求小于1.5ms,即要求目標識別算法在1.5ms內對一組數據完成處理,正確地把目標識別出來。人工神經網絡(ANN)具有并行處理運算能力和網絡信息存儲能力,能滿足寬帶毫米波雷達目標識別系統并行計算和需較小數據存儲空間的要求。ANN技術應用于雷達目標識別極具潛力。在多層前饋感知器神經網絡模型中引入時延單元可以使神經網絡增加記憶功能,由此導出的神經網絡模型適合應用于處理序列數據。寬帶毫米波雷達目標時延神經網絡識別算法的基本原理為:對一維距離像進行非相干平均和自適應門限、等距離間隔峰值下采樣預處理,獲得較穩定的低維樣本后,作為特征矢量提供給時延神經網絡分類器進行自動分類識別。時延神經網絡為三層網絡,網絡輸入層節點數為17,網絡隱層節點數為10,網絡輸出層節點數為3。采用大量的訓練樣本集對時延神經網絡進行訓練,得到時延神經網絡的權值,然后應用TMS320C62x的軟件設計方法,在TMS320C6201 EVM板上實現寬帶毫米波雷達目標時延神經網絡識別算法。

  在程序實現過程中,對于經常用到的兩個函數值1.0/(1.0+exp(-x))和tanh(x)采用查找表的方法來提高程序執行速度。根據對程序的測試,使用整型數(int)表示浮點數,選取整型數的低13位來表示小數。支持TMS320C6201 EVM 板的開發軟件Code Composer Studio(CCS)是一個集編譯、連接、實時調試、跟蹤和分析應用程序于一體的開發軟件包。CCS能夠加快用戶的開發進度,增強用戶的應用程序性能,使用戶可以實時地創建和調試數字信號處理應用程序。在開發軟件CCS的集成開發環境中,綜合應用TMS320C62x的軟件設計方法可以編寫和優化時延神經網絡識別算法的C代碼。

  經過實際測試,在TMS320C6201上實現寬帶毫米波雷達目標時延神經網絡識別算法的程序執行時間為0.850ms,滿足了目標識別算法的實時性需求,取得了比較好的處理效果。

 

參考文獻

1 肖懷鐵.寬帶極化毫米波雷達目標特征信號測量與識別算法研究:[博士論文].國防科技大學,2000

2 TMS320C6x用戶手冊.TI公司

3 任麗香,馬淑芬,李方慧.TMS320C6000系列DSPs的原理與應用.北京:電子工業出版社

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          久久天天躁狠狠躁夜夜爽蜜月| 亚洲人成精品久久久久| 欧美亚洲视频| 老牛影视一区二区三区| 尤物九九久久国产精品的分类| 欧美日韩国产页| 欧美日韩精品免费| 久久久久青草大香线综合精品| 国产精品高潮视频| 亚洲人妖在线| 久久精品国产精品亚洲| 欧美影院在线| 欧美在现视频| 欧美黑人在线播放| 欧美日韩伦理在线| 欧美日韩dvd在线观看| 久久激情视频免费观看| 久久九九国产精品| 99re6热只有精品免费观看| 亚洲欧美精品在线观看| 精品成人a区在线观看| 亚洲欧美综合国产精品一区| 欧美伊人精品成人久久综合97| 国产一区在线观看视频| 精品不卡一区二区三区| 欧美一区二视频在线免费观看| 欧美日韩免费观看一区=区三区| 欧美成人免费va影院高清| 樱桃视频在线观看一区| 女女同性精品视频| 国产一区二区三区高清| 欧美韩日一区二区三区| 你懂的网址国产 欧美| 欧美激情国产高清| 欧美国产免费| 猫咪成人在线观看| 国产日韩欧美中文在线播放| 国产精品99久久不卡二区| 亚洲国产精品小视频| 伊人久久亚洲美女图片| 欧美日韩国产一级片| 亚洲欧美一区二区视频| 国产精品久久婷婷六月丁香| 亚洲电影免费观看高清| 欧美精品在线观看播放| 亚洲欧洲精品一区二区三区波多野1战4| 国产精品久久9| 宅男在线国产精品| 免费不卡亚洲欧美| 日韩视频欧美视频| 欧美成在线观看| 午夜一区二区三区在线观看| 亚洲黄色成人| 久久视频这里只有精品| 在线观看不卡| 亚洲婷婷在线| 99国产一区| 免费日韩视频| 99视频超级精品| 亚洲精品国产品国语在线app| 国产乱码精品| 久久九九免费视频| 久久综合伊人77777尤物| 亚洲性感激情| 日韩亚洲在线| 亚洲精品色婷婷福利天堂| 亚洲视频精选在线| 亚洲一区黄色| 国产精品美女主播在线观看纯欲| 午夜精品在线视频| 亚洲精品在线观| 欧美天堂亚洲电影院在线播放| 国产亚洲激情视频在线| 一区二区三区在线视频观看| 91久久国产精品91久久性色| 欧美国产一区二区| 久久人人97超碰国产公开结果| 欧美偷拍一区二区| 国产日韩在线亚洲字幕中文| 亚洲精品久久久久中文字幕欢迎你| 欧美午夜视频| 99精品视频一区| 亚洲自拍都市欧美小说| 亚洲国产裸拍裸体视频在线观看乱了中文| 好看的av在线不卡观看| 欧美日韩在线视频一区| 激情久久五月| 亚洲性线免费观看视频成熟| 国产字幕视频一区二区| 国产伦理精品不卡| 一区二区在线视频观看| 在线亚洲自拍| 一区二区三区日韩精品视频| 国产精品观看| 欧美电影美腿模特1979在线看| 伊人影院久久| 欧美日韩中国免费专区在线看| 亚洲欧美中文字幕| 国产视频久久| 国产精品亚洲欧美| 国产亚洲精久久久久久| 国产免费成人| 欧美有码在线视频| 好吊妞**欧美| 国产手机视频一区二区| 欧美日韩国产在线播放网站| 亚洲夫妻自拍| 亚洲视频www| 欧美日韩a区| 久久精品国产一区二区三区| 国产日韩在线一区二区三区| 欧美色欧美亚洲高清在线视频| 国产一区二区三区在线观看免费视频| 亚洲娇小video精品| 免费在线国产精品| 国产综合久久| 国产女主播一区二区| 亚洲区中文字幕| 久久久无码精品亚洲日韩按摩| 欧美日韩另类在线| 欧美专区在线播放| 亚洲图色在线| 国产乱理伦片在线观看夜一区| 欧美日产在线观看| 国产欧美日韩一区二区三区| 国产精品高清网站| 国产日韩综合一区二区性色av| 日韩视频精品在线观看| 欧美在线视频免费观看| 久久一区二区三区四区| 久久精品国产一区二区三| 欧美日韩一区三区| 午夜激情综合网| 日韩视频一区二区三区在线播放免费观看| 久久一区激情| 黄色精品一区| 香蕉免费一区二区三区在线观看| 国产日韩精品在线播放| 欧美日韩国产a| 一本色道88久久加勒比精品| 国产精品免费aⅴ片在线观看| 欧美日韩高清在线观看| 亚洲专区在线| 国产午夜精品一区理论片飘花| 日韩视频三区| 欧美视频导航| 欧美成人午夜77777| 国产精品第2页| 91久久久在线| 欧美风情在线| 亚洲欧美日韩国产另类专区| 久久福利精品| 欧美日韩综合在线免费观看| 亚洲一区bb| 91久久线看在观草草青青| 亚洲欧美日韩精品久久亚洲区| 美女脱光内衣内裤视频久久网站| 亚洲欧美日韩国产另类专区| 亚洲日韩欧美视频一区| 久久久国产精品一区二区三区| 亚洲午夜一区二区三区| 欧美三区在线观看| 黑人操亚洲美女惩罚| 午夜欧美理论片| 樱桃视频在线观看一区| 亚洲午夜未删减在线观看| 欧美电影在线播放| 免费成人在线观看视频| 欧美成人资源网| 国产精品久久婷婷六月丁香| 久久久亚洲欧洲日产国码αv| 亚洲国产综合在线| 久久亚洲美女| 国产一区二区三区奇米久涩| 国产精品va在线播放| 国产在线播精品第三| 久久综合激情| 国产伦精品一区二区三区照片91| 一区二区三区国产在线观看| 99国产精品久久久久久久成人热| 韩日欧美一区二区三区| 新狼窝色av性久久久久久| 国产精品久久久久aaaa樱花| 久久成人精品电影| 影音先锋成人资源站| 韩国视频理论视频久久| 性欧美xxxx视频在线观看| 亚洲免费电影在线观看| 亚洲免费在线视频| 久久久无码精品亚洲日韩按摩| 亚洲人成在线观看网站高清| 一区二区三区视频在线观看| 巨胸喷奶水www久久久免费动漫| 亚洲国产精品一区二区第四页av| 国产精品视频免费观看| 欧美一区二区三区在线播放| 欧美精品成人| 亚洲一级高清| 国产欧美日韩另类一区| 亚洲国产精品成人综合| 亚洲一区中文字幕在线观看| 国产性猛交xxxx免费看久久| 国产婷婷色综合av蜜臀av| 欧美精品一区三区| 久久视频精品在线| 亚洲国内欧美| 欧美国产亚洲另类动漫| 樱桃成人精品视频在线播放| 亚洲国产精品久久人人爱蜜臀| 欧美激情一区二区三区在线| 久久在线观看视频| 国产精品日韩专区| 久久美女艺术照精彩视频福利播放| 欧美va日韩va| 怡红院精品视频在线观看极品| 国产午夜精品一区二区三区视频| 久久国产毛片| 美女精品自拍一二三四| 国产日韩欧美在线观看| 国产在线不卡精品| 国产字幕视频一区二区| 国产三级欧美三级| 亚洲韩国日本中文字幕| 欧美日韩精品是欧美日韩精品| 欧美美女视频| 亚洲永久免费观看| 国产精品伊人日日| 欧美电影免费网站| 99热这里只有成人精品国产| 亚洲成人在线视频网站| 99精品国产在热久久下载| 亚洲三级网站| 欧美日韩国产三区| 亚洲欧美www| 国产精品麻豆va在线播放| 亚洲免费影视第一页| 日韩视频在线永久播放| 国产精品区一区二区三| 亚洲人成人一区二区在线观看| 欧美激情国产日韩精品一区18| 欧美在线免费观看亚洲| 国产精品www| 欧美大片网址| 国产欧美一区二区精品性| 亚洲第一黄色网| 亚洲视屏一区| 亚洲欧洲精品成人久久奇米网| 亚洲影视在线播放| 亚洲视频自拍偷拍| 男人的天堂成人在线| 国产农村妇女毛片精品久久莱园子| 亚洲免费视频观看| 欧美视频在线观看| 久久久国产精品一区二区三区| 国语自产精品视频在线看一大j8| 久久久久久国产精品mv| 黄色精品一二区| 欧美在线观看一区二区三区| 欧美在线不卡| 欧美激情性爽国产精品17p| 欧美激情一区二区三区在线视频观看| 日韩视频欧美视频| 在线午夜精品自拍| 狂野欧美性猛交xxxx巴西| 亚洲一区黄色| 亚洲高清色综合| 国产精品午夜av在线| 欧美精品一区三区在线观看| 久久精品亚洲一区二区三区浴池| 国产精品福利在线观看| 午夜精品福利一区二区三区av| 国产亚洲精品一区二区| 亚洲视频www| 久久9热精品视频| 中日韩美女免费视频网站在线观看| 日韩午夜在线视频| 国产精品成人一区二区艾草| 狠狠综合久久av一区二区老牛| 欧美日韩免费一区二区三区视频| 欧美日本在线视频| 久久国产乱子精品免费女| 国产亚洲午夜| 国产午夜亚洲精品不卡| 亚洲黄色小视频| 久久精品视频在线免费观看| 一区二区久久久久| 国产精品毛片在线| 在线观看欧美一区| 午夜一区二区三区不卡视频| 欧美亚洲在线播放| 亚洲三级电影在线观看| 亚洲欧美日韩另类精品一区二区三区| 欧美一区=区| 亚洲第一精品福利| 亚洲欧美三级在线| 韩曰欧美视频免费观看| 99视频一区二区| 国产亚洲在线观看| 欧美激情一二区| 欧美精品久久久久久久| 欧美乱人伦中文字幕在线| 一本色道久久99精品综合| 日韩视频在线永久播放| 久久久噜噜噜久久狠狠50岁| 在线看片一区| 亚洲国产另类精品专区| 在线观看视频免费一区二区三区| 激情久久五月天| 亚洲电影成人| 国产伦精品一区二区三区视频孕妇| 国产日韩1区| 亚洲欧美日韩国产一区二区三区| 欧美日韩1区| 久久精品成人| 欧美日韩免费一区二区三区视频| 国产精品99免视看9| 亚洲欧美视频在线| 欧美在线播放| 欧美日韩日本国产亚洲在线| 午夜国产欧美理论在线播放| 国内精品视频一区| 午夜精品久久久久久久久久久久| 亚洲精品久久嫩草网站秘色| 在线精品亚洲一区二区| 亚洲午夜精品网| 欧美视频中文在线看| 亚洲美女av黄| 香蕉免费一区二区三区在线观看|