www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 嵌入式 > 嵌入式教程
[導讀] 提高DSP代碼運行性能的研究

1 引言
    隨著微控制器技術的發(fā)展,以TI公司TMS320C2000系列為代表的DCS型數字信號處理器DSP應用廣泛。該類型DSP內部集成Flash存儲器,可將二進制代碼同化到其內部的Flash存儲器直接運行。這種運行方式在傳統(tǒng)嵌入式應用設計中很有效,但在一些算法比較復雜、系統(tǒng)響應要求快速、通訊任務比較繁重的嵌入式應用中,這種運行方式會導致控制系統(tǒng)響應遲緩、通訊異常、I/O操作緩慢等問題。針對這些情況,提出一種新的解決方案,來提高DSP代碼運行性能。


2 問題分析及設計方案
    由于應用程序在Flash中運行速度遠低于在RAM中,因此在復雜嵌入式應用中會出現控制系統(tǒng)響應遲緩、通訊異常、I/O操作緩慢等問題。為了避免這些問題,只能讓程序在RAM中運行。TI公司的TMS320C2000系列DSP有2種工作模式:微處理器模式和微控制器模式。當DSP處于微控制器模式時,在RAM中程序運行速度達到峰值,但掉電后程序丟失,系統(tǒng)無法重新自動運行,因此這種程序運行方式僅適用于仿真調試階段。因此,DSP必須工作在微處理器模式下,使用片內Flash作為運行程序的存儲和運行介質,才能保證系統(tǒng)上電后自動運行。但其程序運行效率低。因此必須把這2種工作模式相結合:首先將應用程序固化到片內Flash存儲器,當系統(tǒng)上電后由專門設計的裝載器(Bootloader) 負責將應用程序南Flash搬移到RAM,然后Bootloader將DSP控制權交給應用程序,從而實現DSP運行速度最高和上電后應用程序自動運行,解決了因程序在不同介質的不同效率所導致的系統(tǒng)響應遲緩、通訊異常、I/O操作緩慢等問題。
    以TMS320LF2407 DSP為例進行說明:該DSP具有獨立的數據存儲空間和數據總線,以及程序存儲空間和程序總線。只有程序空間的程序才能被DSP視為是可執(zhí)行程序,數據空間上的程序將被DSP視為操作數據,因此將應用程序直接從片內Flash拷貝到數據空間的RAM后應用程序是不能運行的。若使拷貝后的應用程序能夠被 DSP視為可執(zhí)行程序還必須做一些輔助工作。
    通過對TMS320LF2407的存儲映射結構分析可發(fā)現:程序空間和數據空間的擴展區(qū)域有部分地址可配置成相同存儲介質(Flash或者RAM),通過某種辦法可以實現共享,也就是說DSP可以將從Flash中拷貝到共享RAM的應用程序視為可執(zhí)行代碼。

3 設計方案實施
3.1 TMS320LF2407存儲空間配置及CMD文件編寫
    為實現程序空間與數據空間共享RAM的存儲器配置方案,首先要熟悉C語言7個存儲段對存儲介質的要求,其具體要求如表1所示。

    從表1可以看出:“.bss”、“.sysmem”、“.stack”段的存儲介質必須是RAM,且使用數據空間地址;而“.text”、“. swtich”、“.cinit”段的存儲介質可以是RAM或ROM,但必須使用程序空間地址?!埃畉ext”是用來存放應用程序的可執(zhí)行代碼的專用段,它既可運行在RAM中,也可在Flash中,該段的運行介質決定應用程序是否能夠達到最大性能。根據DSP命令鏈接文件(CMD文件)對匯編段的管理方式可知,“.text”可配置成裝載與運行分離的工作模式。這種模式可以使應用程序存儲在Flash中,運行在RAM中從而實現DSP上電后全速運行。[!--empirenews.page--]
    其次由于存儲空間使用裝載與運行分離的配置模式,因此必須重新設計鏈接文件(CMD文件)。在設計新的CMD文件之前,首先介紹常用的分離配置鏈接命令指示器:“.label”定義一個可重定位代碼段標簽,該標簽表明代碼段內部地址都是相對的,在鏈接時重新定義該段分配的首地址。相應的段地址為“首地址+ 段內偏移地址”。利用該匯編指示器可提供代碼裝載地址?!埃甮lobal”匯編指示器定義全局符號,該符號表示全局地址,鏈接器利用該匯編指示器定義的運行時全局地址,為程序提供在RAM中運行時的人口地址?!埃眳R編指示器表示當前代碼的運行地址,它用來幫助計算運行代碼的長度。在CMD文件中定義可執(zhí)行代碼的運行時首地址標簽_fun_run和代碼長度標簽_fun_len;在存儲空間配置時定義COPYCODE段用來裝載應用程序的可執(zhí)行代碼:在存儲空間配置時定義DATA0段做為應用程序可執(zhí)行代碼段的運行介質。
    具體存儲空間配置及CMD文件編寫代碼如下:


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

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

[!--empirenews.page--]

    這里的硬件結構配合Bootloader裝載器和特別設計的CMD文件實現了DSP運行速度最大和上電后代碼自動運行,解決了在復雜應用情況下控制系統(tǒng)響應遲緩、通訊異常等問題。
    具體Bootloader裝載器設計代碼如下:


4 測試結果
    該方案在某型防空武器火力控制分系統(tǒng)的實踐中表現良好。通過提高DSP程序運行效率成功解決了因控制系統(tǒng)實時多任務所導致的通訊異常問題,避免了不必要的硬件升級。經實驗對比發(fā)現:當系統(tǒng)有5個毫秒級實時任務同時工作時,采用Flash運行方式的 TTCAN通訊接口每毫秒最多可發(fā)送2幀數據,而采用本設計方案每毫秒最多可發(fā)送6幀數據,代碼運行效率提高了3倍。

5 結束語
    該設計方案不僅成功解決了程序在Flash中運行效率低所導致的各種異常問題,同時還避免了不必要的處理器升級所帶來的成本和開發(fā)風險。其設計思想可以推廣到其他類似的應用中,從而最大限度的利用現有硬件基礎提高嵌入式系統(tǒng)的性能。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

成都2022年10月19日 /美通社/ -- 近期,平安養(yǎng)老險積極籌備個人養(yǎng)老金的產品設計和系統(tǒng)開發(fā)工作,發(fā)展多樣化的養(yǎng)老金融產品,推動商業(yè)養(yǎng)老保險、個人養(yǎng)老金、專屬商業(yè)養(yǎng)老保險等產品供給。 搭養(yǎng)老政策東風 ...

關鍵字: 溫度 BSP 東風 大眾

廣東佛山2022年10月19日 /美通社/ -- 空間是人居生活的基礎單元,承載著生存與活動的最基本功能。而對于理想空間的解構意義卻在物理性容器之外,體現出人們對于空間和生活深層關系的思考,同時也塑造著人與空間的新型連接...

關鍵字: 溫度 BSP 智能化 進程

上海2022年10月19日 /美通社/ -- 10月17日晚間,安集科技披露業(yè)績預告。今年前三季度,公司預計實現營業(yè)收入7.54億元至8.33億元,同比增長60.24%至77.03%;歸母凈利潤預計為1.73億...

關鍵字: 電子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市經濟和信息化局發(fā)布2022年度第一批北京市市級企業(yè)技術中心創(chuàng)建名單的通知,諾誠健華正式獲得"北京市企業(yè)技術中心"認定。 北京市企業(yè)技...

關鍵字: BSP ARMA COM 代碼

北京2022年10月18日 /美通社/ -- 10月14日,國際數據公司(IDC)發(fā)布《2022Q2中國軟件定義存儲及超融合市場研究報告》,報告顯示:2022年上半年浪潮超融合銷售額同比增長59.4%,近5倍于...

關鍵字: IDC BSP 數字化 數據中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都銀行集團成立60周年的紀念日。趁著首都銀行集團成立60周年與首都銀行(中國)在華深耕經營12年的“大日子”,圍繞作為外資金融機構對在華戰(zhàn)略的構想和業(yè)...

關鍵字: 數字化 BSP 供應鏈 控制

東京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式會社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團公司上海通運國際物流有限公司(Nipp...

關鍵字: 溫控 精密儀器 半導體制造 BSP

廣州2022年10月18日 /美通社/ -- 10月15日,第 132 屆中國進出口商品交易會("廣交會")于"云端"開幕。本屆廣交會上高新技術企業(yè)云集,展出的智能產品超過140,...

關鍵字: 中國智造 BSP 手機 CAN

實際上函數指針本質也是一個指針,只不過這個指針指向的不是內存中的一段數據而是內存中的一段代碼

關鍵字: 指針 數據 代碼

要問機器人公司哪家強,波士頓動力絕對是其中的佼佼者。近來年該公司在機器人研發(fā)方面獲得的一些成果令人印象深刻,比如其開發(fā)的機器人會后空翻,自主爬樓梯等。這不,波士頓動力又發(fā)布了其機器人組團跳男團舞的新視頻,表演的機器人包括...

關鍵字: 機器人 BSP 工業(yè)機器人 現代汽車

嵌入式教程

6897 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉