亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FLASH的TMS320C6416自啟動實現(xiàn)方法

        2010-09-25 02:29:12冀云
        關(guān)鍵詞:用戶程序應(yīng)用程序入口

        冀云

        (重慶電子工程職業(yè)學(xué)院 重慶401331)

        基于FLASH的TMS320C6416自啟動實現(xiàn)方法

        冀云

        (重慶電子工程職業(yè)學(xué)院 重慶401331)

        介紹了一種通過自己編寫的燒寫FLASH的程序以及二次引導(dǎo)程序?qū)崿F(xiàn)DSP上電自啟動的方法。當(dāng)DSP復(fù)位時內(nèi)部引導(dǎo)裝載程序會裝載位于FLASH的前1KB的二次引導(dǎo)程序。裝載成功后DSP從0x00地址開始執(zhí)行二次引導(dǎo)程序;二次引導(dǎo)程序的作用就是完成加載用戶應(yīng)用程序,并且加載完成后跳到C程序入口點c_int00處,執(zhí)行用戶程序,實現(xiàn)用戶程序的FLASH自啟動。

        FLASH自啟動;TMS320C6416;二次引導(dǎo);燒寫FLASH

        1 引言

        近年來隨著數(shù)字信號處理器(DSP)技術(shù)的迅猛發(fā)展,其越來越廣泛地應(yīng)用于生產(chǎn)生活的各個領(lǐng)域。其中,TMS320C6000系列TI公司推出的最新DSP型號,其性能得到了很大的提升,核心頻率最高達到1GHz。在許多需要進行大量數(shù)字信號處理運算并兼顧高實時性要求的場合得以廣泛應(yīng)用。TI公司的C6x1x產(chǎn)品的內(nèi)部BOOT只能加載1K的程序,如果應(yīng)用程序大于1K則無法實現(xiàn)自啟動。在TMS320C6000系列DSP的系統(tǒng)設(shè)計應(yīng)用過程中,DSP器件的啟動加載設(shè)計是最關(guān)鍵的技術(shù)之一,這就需要用戶自己編寫一個二次引導(dǎo)程序。本文針對這一問題提出一種有效解決的方法。

        2 硬件系統(tǒng)設(shè)計

        2.1 TMS320C6416芯片

        TMS320C6416是TI公司最新推出的高性能定點DSP,其時鐘頻率可達1GHz,采用兩級緩存結(jié)構(gòu),一級緩存 (L1)由128Kbit的程序緩存和128Kbit的數(shù)據(jù)緩存組成,二級緩存 (L2)為8Mbit;有2個擴展存儲器接口(EMIF),一個為 64bit(EMIFA),一個為 16bit(EMIFB),可以與異步存儲器 (SRAM、EPROM)或同步存儲器(SDRAM、SBSRAM、ZBTSRAM、FIFO)實現(xiàn)無縫連接。本系統(tǒng)就是DSP通過外部存儲接口EMIFB來外掛FLASH芯片,F(xiàn)LASH采用的是8位數(shù)據(jù)線接法。

        在通過DSP對FLASH操作編程時,F(xiàn)LASH數(shù)據(jù)寬度為16bit時,DSP地址要左移 1bit;數(shù)據(jù)寬度為 8bit時,DSP地址要左移2Bit。有些FLASH資料已經(jīng)分別將寫操作命令在8位和16位的不同命令時序給出,這種情況下就不需要再進行移位。

        2.2 FLASH芯片AM29LV400BT介紹

        本系統(tǒng)采用的 FLASH芯片是 AMD公司推出的AM29LV400BT,存儲容量是4M Bit。用戶可根據(jù)需求配置成 512K x 8-Bit或者 256K x 16-Bit兩種形式。由于TMS320C64x支持16bit的FLASH讀寫操作,但是只支持8-bit的FLASH加載;為了方便后面燒寫FLASH,本系統(tǒng)采用的是512K x 8-Bit形式。

        DSP通過EMIFB控制FLASH的讀寫和擦除;存儲空間分配在EMIFB的CE1內(nèi),占用DSP內(nèi)部地址范圍是64000000-643FFFFF。其中A0-A19作為地址線,D0-D7作為數(shù)據(jù)線,CE為片選信號,WE是寫選通信號,OE為使能信號,BYTE為8位或16位數(shù)據(jù)模式選擇 (BYTE接地時是8位模式)。

        2.3 接口原理圖

        3 二次引導(dǎo)程序

        如前面所說因為TI公司的C6x1x產(chǎn)品的內(nèi)部BOOT只能加載1K的程序,而用戶的應(yīng)用程序往往遠大于1K,所以必須通過用戶自己編寫二次引導(dǎo)程序才能實現(xiàn)FLASH自啟動。DSP上電后內(nèi)部BOOT自動加載FLASH前1K數(shù)據(jù),用戶要編寫的二次引導(dǎo)程序最終將寫入FLASH的前1K存儲空間,且該空間的剩余部分不能再用來存儲其他程序。二次引導(dǎo)程序的作用就是按照一定的參數(shù)將存儲在FLASH中的其他用戶程序數(shù)據(jù)搬移到DSP內(nèi)存空間,并且搬移完成后,要跳轉(zhuǎn)到用戶程序的C語言的入口地址c_int00處,開始執(zhí)行用戶程序。

        本系統(tǒng)的二次引導(dǎo)程序采用匯編程序編寫,其中主要代碼如下:

        以上程序中0x64000400可根據(jù)自己的FLASH地址而改變;而C語言程序入口地址,各段在RAM中起始地址以及段的字節(jié)長度都可以在用戶工程的MAP文件中得到。

        以下是一個工程的MAP文件部分內(nèi)容:

        上面分別顯示了C語言入口地址以及各段在內(nèi)存中的起始地址和字節(jié)長度。燒寫FLASH的時候需用到這些參數(shù),二次引導(dǎo)程序加載用戶程序的時候也會用到這些參數(shù)。

        4.FLASH的燒寫與擦除

        對FLASH的擦除和寫操作都要按照一定的時序進行,不同的芯片可能稍微有所不同,這里首先按照芯片資料做如下定義:

        以上程序分別定義了擦除燒寫FLASH的命令內(nèi)容以及地址。

        下面定義擦除整片F(xiàn)LASH函數(shù):

        下面是燒寫單字節(jié)到FLASH的函數(shù)內(nèi)容:

        下面是燒寫一段數(shù)據(jù)到FLASH的函數(shù)部分內(nèi)容:

        首先將.boot_load段寫入FLASH的前1k空間,然后在0x400地址處寫用戶應(yīng)用程序的入口地址數(shù)據(jù),最后依次寫數(shù)據(jù)段的長度以及本段在RAM中的起始地址和本段數(shù)據(jù)。如果是多段,則按照第一段規(guī)則依次寫入。需要注意的是,寫FLASH的寫入順序要和二次引導(dǎo)程序相對應(yīng),不同的二次引導(dǎo)程序?qū)?yīng)的寫入順序和內(nèi)容不同。

        5 應(yīng)用程序燒寫方法

        用戶將應(yīng)用程序編寫好后,只要簡單地把編寫的匯編二次引導(dǎo)程序添加到用戶工程,同時要更改工程的CMD文件,將boot_load段編譯到DSP內(nèi)部RAM的前1k空間,即0-0x400內(nèi),然后重新編譯工程即可。

        利用上面燒寫FLASH函數(shù),建立一個工程FlashBurn.prj的工程,其作用是用將用戶工程的內(nèi)容從內(nèi)存中讀出來并燒寫到FLASH中。首先查看前面編譯好的用戶應(yīng)用程序工程里的MAP文件;MAP文件是CCS軟件編譯后產(chǎn)生的有關(guān)DSP用到所有程序、數(shù)據(jù)及IO空間的在內(nèi)存映射文件。按照MAP文件把各需要寫進FLASH的非初始化段的起始地址以及段長度參數(shù)設(shè)置好,然后設(shè)置本工程各代碼以及數(shù)據(jù)段分配的CMD文件。需要注意的是一定要將FlashBurn工程的內(nèi)存空間分配和用戶應(yīng)用程序的內(nèi)存空間分配分開,不能重疊,以免相互覆蓋。設(shè)置完成后編譯工程。

        最后將用戶程序生成的.out文件通過 JTAG下載到DSP內(nèi)部RAM中,但不要運行;接著將FlashBurn.prj的工程的.out文件用同樣的方法下載到DSP內(nèi)部RAM中并運行。這個程序完成的任務(wù)就是將先前載到片內(nèi)RAM的用戶工程數(shù)據(jù)寫進FLASH。寫完成后斷電重啟,DSP就會自動執(zhí)行用戶程序,實現(xiàn)用戶程序自啟動。

        6 結(jié)論

        本文以TMS320C6416為例闡述了用戶自己編寫燒寫FLASH程序?qū)崿F(xiàn)自啟動功能,已經(jīng)在工程中得到了應(yīng)用。TI公司提供了一個燒寫FLASH的工具FlashBurn,但是這種力法的缺點是需要將程序編譯后生成的.out文件再轉(zhuǎn)換成.hex文件;轉(zhuǎn)換過程的同時,需要一個cmd文件。并且 FlashBurn工具運行時需要下載 FBTC(FlashBurn Target Component)到DSP系統(tǒng)中,然后由上位PC機通過仿真器發(fā)送指令和數(shù)據(jù)給下位DSP,具體對FLASH的操作由FBTC執(zhí)行。然而,這個FBTC一般是針對TI公司提供的DSP專門編寫的,與板上使用的FLASH的接口寬度、操作關(guān)鍵字都有關(guān),對用戶自己制作的硬件不一定適合。與FlashBurn工具相比較,本方法更為靈活,只要按照MAP文件更改下FlashBurn.prj工程中各段的參數(shù)就可以適用于其他DSP和工程,并且避免了文件格式轉(zhuǎn)換的繁瑣。

        [1]汪安民,張松產(chǎn),常春藤.TMS320C6000DSP實用計數(shù)與開發(fā)案例[M].北京:人民郵電出版社,2008.

        [2]TMS320C6x Assembly Language Tools User’s Guide.1999

        [3]CreationCreating a Second-Level Bootloader for FLASH.2006

        責(zé)任編輯 王榮輝

        The Self-implementation Method Based on TMS320C6416 of FLASH

        JI Yun
        (Chongqing College of Electronic Engineering,Chongqing 401331,China)

        This paper introduces the self-implementation methods of the secondary bootloader and the flash burning in DSP in detail.After the resetting of DSP,the inner initial program loader would load the secondary bootloader of 1KI in FLASH.And then DSP executes the secondary bootloader from 0x00,which accomplishes the user's application program,after that,it jumps to the entry point c_int00 in C program and executes user program.Finally,the self-implementation f FLASH can be achieved.

        FLASH self-implementation;TMS320C6416;secondary bootloader;flash burning

        TP39

        A

        1674-5787(2010)05-0144-03

        2010-08-22

        冀云,男,重慶電子工程職業(yè)學(xué)院電子信息系,助理工程師。

        猜你喜歡
        用戶程序應(yīng)用程序入口
        基于新一代稱重設(shè)備的入口治超勸返系統(tǒng)分析
        變速箱控制系統(tǒng)Bootloader設(shè)計與實現(xiàn)
        刪除Win10中自帶的應(yīng)用程序
        電腦報(2019年12期)2019-09-10 05:08:20
        秘密入口
        嵌入式設(shè)備遠程升級方案設(shè)計
        作品三
        第九道 靈化閣入口保衛(wèi)戰(zhàn)
        C8051F410單片機BootLoader的實現(xiàn)
        關(guān)閉應(yīng)用程序更新提醒
        電腦迷(2012年15期)2012-04-29 17:09:47
        MCF52223的多用戶在線編程應(yīng)用設(shè)計
        国产精品一区二区久久不卡| 精品成人av人一区二区三区 | 国产精品,在线点播影院| 日韩亚洲一区二区三区在线| 久久天天躁狠狠躁夜夜av浪潮| 少妇性饥渴bbbbb搡bbbb| 国产成人精品三级麻豆| 亚洲免费人成网站在线观看| 亚洲第一网站免费视频| 中文字幕日韩一区二区不卡| 东北无码熟妇人妻AV在线| 国产一区二区三区视频大全| 三级日韩视频在线观看| 亚洲日产乱码在线中文字幕| 亚洲精品国偷拍自产在线| 在教室伦流澡到高潮hgl视频| 中文乱码字幕高清在线观看| 99久久精品人妻一区二区三区 | 午夜精品久久久久久99热| 婷婷综合五月| 国产一区亚洲一区二区| 久久久国产精品| 久久精品国产第一区二区三区| 久久中文字幕日韩精品| 国产自拍视频一区在线| 亚洲人成电影网站色| 艳妇乳肉豪妇荡乳av无码福利| 人妻av一区二区三区高| av在线免费观看网站,| 欧美亚洲色综久久精品国产| av一区无码不卡毛片 | 亚洲国产午夜精品理论片在线播放| 亚洲色图视频在线| 亚洲大片一区二区三区四区| 亚洲av中文无码乱人伦在线观看| 国产成人免费一区二区三区| 久久精品国产72国产精福利| 亚洲中文字幕精品久久a| 最新国产福利在线观看精品| 不卡视频一区二区三区| 风流少妇一区二区三区91|