<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 提高DSP代碼運行性能的研究

          提高DSP代碼運行性能的研究

          作者: 時間:2009-09-03 來源:網(wǎng)絡 收藏

          其次由于存儲空間使用裝載與分離的配置模式,因此必須重新設計鏈接文件(CMD文件)。在設計新的CMD文件之前,首先介紹常用的分離配置鏈接命令指示器:“.label”定義一個可重定位段標簽,該標簽表明段內(nèi)部地址都是相對的,在鏈接時重新定義該段分配的首地址。相應的段地址為“首地址+ 段內(nèi)偏移地址”。利用該匯編指示器可提供裝載地址?!埃甮lobal”匯編指示器定義全局符號,該符號表示全局地址,鏈接器利用該匯編指示器定義的時全局地址,為程序提供在RAM中時的人口地址?!埃眳R編指示器表示當前代碼的運行地址,它用來幫助計算運行代碼的長度。在CMD文件中定義可執(zhí)行代碼的運行時首地址標簽_fun_run和代碼長度標簽_fun_len;在存儲空間配置時定義COPYCODE段用來裝載應用程序的可執(zhí)行代碼:在存儲空間配置時定義DATA0段做為應用程序可執(zhí)行代碼段的運行介質(zhì)。
          具體存儲空間配置及CMD文件編寫代碼如下:

          本文引用地址:http://www.ex-cimer.com/article/152359.htm


          3.2 Bootloader裝載器軟件及硬件設計
          設計Bootloader裝載器時應注意兩點:首先關閉看門狗,否則可能因為搬移時間過長導致被不斷復位,系統(tǒng)無法正常工作;必須定義 Bootloader裝載器的入口標簽_c_int0和出口標簽wfc_int0,實現(xiàn)Bootloader裝載完成搬移工作后順利進入用戶應用程序。
          考慮到上電工作順序:從系統(tǒng)復位指令處跳轉(zhuǎn)至運行時支持代碼;創(chuàng)建C語言運行環(huán)境;用戶程序入口 main();完成用戶初始化及應用代碼。因此負責從Flash將應用程序代碼拷貝到RAM的Bootloader裝載器必須在恰當?shù)臅r間工作,否則應用程序不能上電自動運行。由上電工作順序可以發(fā)現(xiàn),系統(tǒng)上電復位時的復位地址是,固定的但跳轉(zhuǎn)指令所指的地址是由用戶指定的,也就是說,可以讓該復位跳轉(zhuǎn)指令指向所設計的Bootloader裝載器的首地址完成代碼搬移工作(其工作原理見圖1),然后Bootloader裝載器將DSP的控制權(quán)交給運行支持庫,完成C語言環(huán)境建立并進入用戶程序入口main()開始用戶程序。為此必須對運行支持庫做如下修改:
          從運行支持庫rts.rc源文件中提取boot.a(chǎn)sm.將boot.a(chǎn)sm的入口地址_c_int0修改為wfc_int0地址,重新編譯boot. asm生成boot.obj文件,把boot.obj歸檔到C語言運行支持庫rts.2xx.1ib。將修改后的運行支持庫添加到工程中,實現(xiàn)Boot- loader裝載器先于運行支持庫代碼執(zhí)行。

          Bootloader裝載器利用裝載地址、運行地址以及鏈接器提供的代碼長度等信息,使用讀表指令“TBLR”將代碼從程序空間拷貝到數(shù)據(jù)空間,然后跳轉(zhuǎn)到運行支持庫入口地址開始執(zhí)行程序。DSP的這種搬移指令特點僅適合將數(shù)據(jù)表從程序空間拷貝到數(shù)據(jù)空間,要實現(xiàn)全部設計功能必須配合相應的硬件設計,由 TMS320LF2407DSP的存儲器映射結(jié)構(gòu)可以看出程序空間與數(shù)據(jù)空間是物理分離的,即有3個獨立的空間片選信號PS、DS、CS。為實現(xiàn)RAM共享,首先必須將PS和DS信號進行“與“操作,然后將其輸出信號作為共享RAM的片選信號,實現(xiàn)程序空間與數(shù)據(jù)空間的統(tǒng)一編址。根據(jù) TMS320LF2407DSP的存儲器映射結(jié)構(gòu),具體的存儲空間配置如下:0x0000~0x7FFF片上RAM、外設寄存器和保留的地址區(qū),該區(qū)域必須作為數(shù)據(jù)地址使用;利用圖2所示的硬件結(jié)構(gòu)實現(xiàn)0x8000~0xFFFF區(qū)域程序空間和數(shù)據(jù)空間共享RAM。共享RAM配置如下:數(shù)據(jù)區(qū) 0x8000~0xBFFF;程序區(qū)0xC000~0xFFFF。



          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();