機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開(kāi)發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開(kāi)發(fā)
培訓(xùn)信息
贊助商
TMS320F2812代碼運(yùn)行性能的研究
TMS320F2812代碼運(yùn)行性能的研究
 更新時(shí)間:2009-6-5 9:02:41  點(diǎn)擊數(shù):1
【字體: 字體顏色
引 言
    TMS320F2812是目前性能非常優(yōu)秀的32位定點(diǎn)DSP,集成了多種外設(shè)。對(duì)TMS320F2812開(kāi)發(fā)通常利用TI公司的CCS2集成開(kāi)發(fā)環(huán)境,使用JTAG接口仿真器連接目標(biāo)板,可以不占用用戶(hù)資源實(shí)現(xiàn)全速/斷點(diǎn)調(diào)試;仿真調(diào)試完成后對(duì)CMD文件進(jìn)行相關(guān)修改,并用RTS2800_FL04830.LIB替換RTS2800N.LIB,必要時(shí)對(duì)程序中變量與函數(shù)分配的空間做部分調(diào)整后,編譯項(xiàng)目得到輸出文件;在CCS2集成開(kāi)發(fā)環(huán)境中完成下載、加密等操作后,斷電脫離仿真機(jī),成為獨(dú)立運(yùn)行的嵌入式系統(tǒng)。
    然而,相當(dāng)多的應(yīng)用設(shè)計(jì)者常常面臨程序仿真通過(guò),但獨(dú)立運(yùn)行失敗的情況,表現(xiàn)均為程序代碼運(yùn)行性能比估計(jì)的要差很多,以致來(lái)不及處理實(shí)時(shí)數(shù)據(jù)。由于代碼在Flash中運(yùn)行的時(shí)間比在SARAM中仿真的時(shí)間長(zhǎng),有的設(shè)計(jì)試驗(yàn)出現(xiàn)在Flash中運(yùn)行比仿真慢4倍以上的結(jié)果,使設(shè)計(jì)只能停留在仿真通過(guò)的層次上。

1 分析
    TI公司提供的一篇文檔資料spra958e.pdf,描述了在內(nèi)部Flash中運(yùn)行程序的相關(guān)知識(shí),說(shuō)明當(dāng)在RAM中仿真速度為150 MIPS時(shí),相應(yīng)Flash中的執(zhí)行速度可達(dá)90~lOO MIPS;同時(shí)。在此文檔資料中提供了參考實(shí)例,但介紹性文字較多,實(shí)現(xiàn)高性能的具體配置方式描述不夠具體。經(jīng)反復(fù)閱讀TI公司的其他相關(guān)文檔資料,并編程對(duì)比實(shí)驗(yàn),筆者摸索出實(shí)現(xiàn)Flash中運(yùn)行速度達(dá)到RAM中仿真速度的75%左右的方法,與TI指標(biāo)相符合。下面詳細(xì)說(shuō)明試驗(yàn)程序與方法。限于篇幅,只列出與試驗(yàn)過(guò)程密切相關(guān)部分的配置情況。試驗(yàn)程序使用的空間分配如表1所列。

    試驗(yàn)程序如下:

   

   

    下面是CMD文件關(guān)鍵內(nèi)容。因RAM仿真與下載Flash所用CMD文件有差異,故為節(jié)省篇幅,混合寫(xiě)在一起,差異部分參見(jiàn)說(shuō)明。


    試驗(yàn)程序運(yùn)行時(shí),用示波器在TMS320F2812的XF輸出腳可以測(cè)量到重復(fù)脈沖(如圖1所示),表2為對(duì)應(yīng)的測(cè)量結(jié)果。

    函數(shù)InitFlash()設(shè)置了等待參數(shù)。在100 MHz的系統(tǒng)時(shí)鐘條件下,筆者的實(shí)例能保證正常執(zhí)行的最佳參數(shù);而其他設(shè)置會(huì)產(chǎn)生運(yùn)行速度慢,或過(guò)快但運(yùn)行不穩(wěn)定的結(jié)果。觀(guān)察表2的測(cè)量結(jié)果,可以發(fā)現(xiàn)各方式下T1時(shí)間不變,原因?yàn)橹噶睢癮sm(“RPT#248||NOP”)”取指令只執(zhí)行一次,然后在DSP中內(nèi)部循環(huán)執(zhí)行250次,而只有取指令才涉及等待參數(shù)問(wèn)題,所以在試驗(yàn)的4種條件下T1基本相同(畢竟還是存在取指令過(guò)程,每種條件下T1并非完全一致,有微小差別)。因Flash本身訪(fǎng)問(wèn)速度比SARAM要慢,指令需要插入等待周期。
    表2說(shuō)明了下載到Flash中運(yùn)行時(shí)的速度與在SARAM中仿真時(shí)相比,有所下降。T2/T3/T4雖然同為數(shù)據(jù)傳送花費(fèi)時(shí)間,但因分布空間不同,對(duì)應(yīng)匯編指令數(shù)和指令類(lèi)型相應(yīng)有增減,故表現(xiàn)出不同的執(zhí)行時(shí)間,其中數(shù)據(jù)在外部RAM中傳輸比在內(nèi)部SARAM中傳輸要慢。
    表2還顯示出下載到Flash中運(yùn)行,如果同時(shí)對(duì)芯片加密,則應(yīng)當(dāng)特別注意變量分配的空間位置。加密后Flash處于安全模塊中,如果變量分配到HO,那么由于H0是非安全塊,DSP工作時(shí)可以在兩種模塊中動(dòng)態(tài)切換,不需要開(kāi)發(fā)者附加代碼。描述參見(jiàn)TI文檔資料中的CSM章節(jié),但并未說(shuō)明需要額外增加時(shí)間開(kāi)銷(xiāo)。LOL1是安全塊,如果變量分配到L0L1或是沒(méi)有加密,則因不存在安全與非安全模塊的切換時(shí)間開(kāi)銷(xiāo),速度比較快。當(dāng)采用保護(hù)芯片知識(shí)產(chǎn)權(quán)而需要加密Flash時(shí)必須注意分配變量空間,把對(duì)運(yùn)行速度敏感的參數(shù)分配到LOLl中,否則會(huì)發(fā)現(xiàn)程序執(zhí)行速度降低到仿真時(shí)的1/4。由于內(nèi)部SARAM空間有限,應(yīng)用系統(tǒng)往往需要外擴(kuò)RAM,數(shù)據(jù)交換將比在內(nèi)部SARAM執(zhí)行時(shí)有所增多。

2 結(jié)論
   
通過(guò)前面的試驗(yàn),可以得到幾個(gè)在TMS320F2812應(yīng)用開(kāi)發(fā)中,運(yùn)行于Flash中的代碼如何提高性能的指導(dǎo)原則:
    ①根據(jù)系統(tǒng)時(shí)鐘選擇合適的等待參數(shù);
    ②數(shù)據(jù)分配空間從指令類(lèi)型與數(shù)量上影響程序執(zhí)行效率;
    ③Flash加密后,對(duì)執(zhí)行速度有快速性要求的應(yīng)用系統(tǒng),應(yīng)當(dāng)在CMD文件中指定運(yùn)行空間在SARAM的L0L1段,并注意變量分配的段空間。
    設(shè)計(jì)系統(tǒng)如果滿(mǎn)足上面幾個(gè)原則,那么程序執(zhí)行效率就可達(dá)到SARAM仿真時(shí)的70%。

<!--插入廣告JS代碼-->
  • 上一篇: 基于FPGA和DSP的高速瞬態(tài)信號(hào)檢測(cè)系統(tǒng)
  • 下一篇: TMS320C64x的16-bit Flash加載的可行性分析與實(shí)現(xiàn)
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話(huà):0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1