• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于CCS5.5的TMS320C6000程序Flash上電自舉設(shè)計及三種固化方法對比

      2017-07-10 07:21:39郇鉦汪慶武趙錦君王宇
      電腦知識與技術(shù) 2017年14期
      關(guān)鍵詞:用戶程序存儲器啟動

      郇鉦+汪慶武+趙錦君+王宇

      摘要:該文針對TMS320C6000系列支持的啟動方式之一——EMIF boot啟動,固化程序在片外Flash。解決了TMS320C6713B片內(nèi)無非易失存儲器,上電需從外部加載程序并啟動的問題。介紹了基于CCS5.5平臺,Bootload啟動函數(shù)和Flash燒寫程序的設(shè)計編制。整理總結(jié)了三種燒寫Flash的方式方法,并進(jìn)行了優(yōu)缺點的對比。

      關(guān)鍵詞:DSP;TMS320C6713;CCS5.5;EMIF;Flash;軟件固化;引導(dǎo)加載

      中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2017)14-0094-03

      TMS320C6713B(以下簡稱C6713)是11公司推出的高性能浮點運算DSP,采用超常指令字(VLIW)結(jié)構(gòu)。TMS320C67 13B支持Host boot/Emulation boot/EMIF boot。EMIF作為C6713與外部存儲器之間的接口,可支持與各種外部器件無縫連接。EMIF存儲器映射由4個(CEO-CE3)空間組成,這4個空間彼此獨立,實現(xiàn)不同訪問控制。C67 13包含從0×00000000地址開始的256KB內(nèi)部RAM,但其內(nèi)部無非易失性存儲器,需要外擴Flash或ROM等非易失性存儲器。

      CCS(Code Composer Studio)的是TI公司提供的開放的集成軟件開發(fā)平臺,根據(jù)安裝不同的硬件接口驅(qū)動可開發(fā)不同的器件。CCS5.5集成開發(fā)環(huán)境基于Eclipse開發(fā)平臺,在開發(fā)過程中能夠完成對工程的配置、建立、調(diào)試、跟蹤和分析,能夠加速開發(fā)進(jìn)程,提高工作效率,支持JTAG加密功能、提供全覆蓋的DSP代碼跟蹤、加強了統(tǒng)計分析及在小窗口繪制圖形的性能。目前,TI已對CCS4、CCS5和CCS6免費開放,供用戶開發(fā)使用。

      1 TMS320C6713B與Flash的硬件連接

      以AMD公司的AM29LV160DB為例,該Flash具有2Mx8bifflMxl6bit的存儲空間,16位數(shù)據(jù)總線,支持程序?qū)?、擦除和懸掛。為最快的啟動程序,?shù)據(jù)吞吐量設(shè)置為最大,將AM29LV160DB的BYTE=1,設(shè)置為16位數(shù)據(jù)寬度。

      遵照TI對C6713的內(nèi)置啟動設(shè)定,需將支持EMIF接口的Flash掛載CE1空間。HD[4:3]=“10”設(shè)定DSP處于16bit異步外部ROM boot方式。

      其硬件連接原理示意如圖1所示。

      在當(dāng)前配置下,C6713上電或復(fù)位時,位于外部存儲空間CE1的FLASH中的1KB代碼通過EDMA被拷貝到片內(nèi)RAM地址0處,這就是片上Boot一次引導(dǎo)。然而,大多數(shù)的DSP程序并不僅限于1KB代碼,因此需要開發(fā)用戶引導(dǎo)程序?qū)]有拷貝的代碼拷貝到DSP的片內(nèi)RAM。此用戶引導(dǎo)程序即稱為二級Bootloader。

      該二級Bootloader程序?qū)嶋H在運行時,是在C6713的0×0000~0×4000地址空間,從0地址開始執(zhí)行。從通用化角度,每次修改后,重新燒寫的用戶程序,只是程序長度發(fā)生變化,因此,只要將搬運長度獨立出來,那么Bootloader程序就無需其他更改。為此,將C6713的片內(nèi)地址空間劃分開來,如表1所示。

      3 TMS320C6713B用戶程序的燒寫到外部Flash

      目前,常用的燒寫C6713方法有三種,分別是:TI公司提供的FlashBurn軟件燒錄法、二次下載燒錄法、程序bin鏡像燒錄法。

      3.1 FlashBurn軟件燒錄法

      通過TI公司提供的FlashBurn軟件來對Flash存儲器進(jìn)行燒寫。將FlashBurn與CCS、HEX文件轉(zhuǎn)換工具以及FBTC程序(即通過一定的編程命令序列來控制FLASH的工作方式)配合使用,可以快速地將用戶數(shù)據(jù)與程序?qū)懭隖lash存儲器。Flash-Burn采用圖形化界面,使用方便,用戶只需要簡單配置幾個操作參數(shù),即可實現(xiàn)對FLASH存儲器進(jìn)行擦除、燒寫和查看內(nèi)存內(nèi)存儲器進(jìn)行操作。

      需要注意的是,F(xiàn)lashBurn軟件需要與CCS版本匹配才能正常使用,F(xiàn)lashBurn 4才支持CCS4~CCS6。雖然FlashBurn有免費版本,但是僅能對DSK開發(fā)板進(jìn)行燒錄。要對自己的定制電路板燒寫,需購買其收費版本。

      3.2兩次下載燒錄法

      基于CCS開發(fā)環(huán)境,編譯鏈接生成的用戶程序為*out文件,該文件為COFF格式,不能在DSP的RAM中直接運行。

      兩次下載法的實質(zhì)為在設(shè)計調(diào)試過程中用仿真器下載進(jìn)DSP的RAM區(qū)的程序,已經(jīng)是程序的可執(zhí)行機器碼(該程序需包含boot函數(shù))。因此,可以通過再編寫一個Flash燒寫程序,并下載進(jìn)DSP運行,將RAM中的用戶程序機器碼寫入Flash對應(yīng)的空間,特別是Boot函數(shù)燒寫到Flash的前1KB空間,即可完成燒錄過程。

      簡言之,所謂“兩次下載法”就是通過仿真器對DSP進(jìn)行兩次加載運行來完成用戶程序的燒寫。其實質(zhì)是將用戶程序當(dāng)作“數(shù)據(jù)”寫人Flash。

      該方法的核心搬移函數(shù)如下:

      需要注意的是宏“CODE_LEN”,對應(yīng)BootLoad的空間定義,該處定義了用戶程序所占用的字節(jié)長度。該長度可由用戶程序map文件查詢計算得到。

      采用該方法的優(yōu)點是,在用戶程序調(diào)試正常后,接著加載Flash燒錄程序即可將程序固化。其中最復(fù)雜的操作也僅僅是查詢下用戶程序map文件計算下程序的大小,修改下宏“CODE_LEN”而已。

      但是,采用該方法需要注意的是用戶程序與Flash燒寫程序在內(nèi)存空間分配時不能重疊,即防止Flash燒寫程序在下載時,修改或覆蓋已經(jīng)在DSP的RAM中的程序。而且當(dāng)用戶程序與Flash燒寫程序的總大小大于RAM空間時,該方法就無法使用了。

      3.3程序bin鏡像燒錄法

      3.3.1基于CCS5.5置快速生成bin文件

      上節(jié)已經(jīng)提到CCS編譯出的文件為*.out文件無法直接使用,但是TI公司在CCS安裝包中同時也提供了Hex6x.exe等轉(zhuǎn)換工具,可將*.out可配置的轉(zhuǎn)換為*.hex和*.bin文件,其中*.bin文件內(nèi)容即是DSP執(zhí)行的機器碼。

      在CCS5.5中,提供了在程序編譯結(jié)束后繼續(xù)執(zhí)行其他操作的接口,如圖2所示。

      采用該方法可完全不必考慮用戶程序和Flash燒錄程序的空間重疊問題,也完全不必考慮RAM空間大小,只要Flash足夠大可以裝載用戶程序即可,也完全不用查詢計算用戶程序的字節(jié)長度,燒錄程序可自行計算并燒寫到對應(yīng)位置,因此,采用此種燒錄方法唯一要注意的就是用戶程序*.bin的文件名和所在的PC系統(tǒng)路徑。

      4結(jié)束語

      本文針對TMS320C6713B的EMIF boot方式進(jìn)行啟動,固化程序在片外Flash?;贑CS5.5平臺,設(shè)計編制Boofload啟動函數(shù)和Flash燒寫程序。整理總結(jié)了三種燒寫Flash的方法,并進(jìn)行了優(yōu)缺點的對比。

      猜你喜歡
      用戶程序存儲器啟動
      靜態(tài)隨機存儲器在軌自檢算法
      變速箱控制系統(tǒng)Bootloader設(shè)計與實現(xiàn)
      嵌入式設(shè)備遠(yuǎn)程升級方案設(shè)計
      霧霾來襲 限產(chǎn)再次啟動
      安發(fā)生物啟動2017
      西部最大規(guī)模云計算中心啟動
      俄媒:上合組織或9月啟動擴員
      存儲器——安格爾(墨西哥)▲
      C8051F410單片機BootLoader的實現(xiàn)
      基于Nand Flash的高速存儲器結(jié)構(gòu)設(shè)計
      阳高县| 司法| 安顺市| 虎林市| 吉水县| 拜城县| 琼海市| 赣榆县| 九江县| 镇远县| 宁武县| 溧水县| 商水县| 庆云县| 海安县| 保山市| 印江| 泸水县| 林甸县| 宜良县| 保亭| 普兰县| 尖扎县| 汉中市| 麻阳| 巴南区| 遵义县| 县级市| 福建省| 灵寿县| 沁阳市| 融水| 久治县| 南召县| 鄂伦春自治旗| 莎车县| 四川省| 湘乡市| 徐水县| 象山县| 黄山市|