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

        ?

        基于TMS320VC5509A的HPI引導(dǎo)過程的實(shí)現(xiàn)

        2014-04-29 00:44:03謝于晨
        電子世界 2014年21期
        關(guān)鍵詞:程序代碼寄存器應(yīng)用程序

        【摘要】TI的TMS320VC5509A DSP芯片提供了幾種不同的引導(dǎo)配置,不同的配置決定了DSP復(fù)位后的初始化和代碼引導(dǎo)方式。本文就TMS320VC5509A DSP的HPI引導(dǎo)過程進(jìn)行了詳細(xì)的設(shè)計,包括HPI的一級引導(dǎo)和二級引導(dǎo),最后給出了HPI二級引導(dǎo)的軟件和硬件的具體實(shí)現(xiàn)。

        【關(guān)鍵詞】TMS320VC5509A;HPI;引導(dǎo)過程

        Abstract:The TI TMS320VC5509A DSP chip provides several different boot configurations that determine the DSP initialization and boot way in which resetting code is used. This article carried out a detailed designof theTMS320VC5509A HPI boot process, including primary and secondary HPI boot process, and finally gives the software and hardware Implementationof the HPI secondary boot.

        Keywords:TMS320VC5509A;HPI;Boot Process

        1.概述

        TMS320VC5509A的主機(jī)接口HPI(Host Port Interface)是TI公司為了滿足DSP與其他微處理器接口通信而專門設(shè)計的16/32位寬度并行接口。主機(jī)處理器可以通過它直接訪問DSP的整個內(nèi)存空間。

        2.DSP的BOOT引導(dǎo)

        DSP的BOOT引導(dǎo)是指系統(tǒng)加電或復(fù)位時,DSP將一段存儲在外部的非易失性存儲器的程序代碼通過DMA方式拷貝到內(nèi)部的高速內(nèi)存中運(yùn)行。這樣既能擴(kuò)展DSP有限的存儲空間,又能充分發(fā)揮DSP內(nèi)部資源的效能。

        DSP的引導(dǎo)過程[1]為:1)DSP復(fù)位后,通過DMA方式將外部CE1空間的數(shù)據(jù)讀入到內(nèi)部程序空間地址0處,讀入數(shù)據(jù)的多少因芯片而異。 2)DSP推出復(fù)位狀態(tài),開始執(zhí)行內(nèi)部程序空間地址0處的程序,這段程序先將外部主程序數(shù)據(jù)讀入到DSP內(nèi)部程序空間相應(yīng)地址,然后跳轉(zhuǎn)到主程序運(yùn)行。第一步是由芯片自動完成,關(guān)鍵是第二步,用戶需要編寫相應(yīng)的程序,實(shí)現(xiàn)二級引導(dǎo),即用戶主程序的裝載。

        為了適應(yīng)不同系統(tǒng)的需要,TMS320-VC5509A提供了不同的引導(dǎo)方式,比如EMIF接口引導(dǎo)方式、串口引導(dǎo)方式、SPI接口引導(dǎo)方式、HPI引導(dǎo)方式和USB引導(dǎo)方式[1]等等,其中主機(jī)接口(HPI)引導(dǎo)以其操作簡便,硬件接口簡單等優(yōu)點(diǎn)被廣大用戶所選用。

        3.DSP中HPI引導(dǎo)過程

        在我們設(shè)計的系統(tǒng)中,需要用到HPI接口,再用它做為引導(dǎo)方式,以提高系統(tǒng)硬件的利用率,同時避免采用其他引導(dǎo)方式帶來的附加的硬件設(shè)計。

        3.1 DSP一級引導(dǎo)

        實(shí)際上,TMS320VC55x系列DSP的片內(nèi)固化的Bootloader程序中已經(jīng)包含了HPI的一級引導(dǎo)程序。boot通過復(fù)位時設(shè)置引腳BOOTM[3:0]為0101b來實(shí)現(xiàn)HPI引導(dǎo),在這種引導(dǎo)方式中,外部主機(jī)可以直接將代碼和數(shù)據(jù)加載到DSP存儲器。當(dāng)主機(jī)完成應(yīng)用程序的加載后,它將入口點(diǎn)字節(jié)地址和非0等待標(biāo)志值寫到字地址0060h和0061h中.通知CPU開始執(zhí)行,當(dāng)檢測到等待標(biāo)志位為非0值時,CPU從指定的人口點(diǎn)開始執(zhí)行,從而結(jié)束HPI方式的引導(dǎo)過程。

        3.2 DSP二級引導(dǎo)

        一級boot完成后,程序boot-image可以通過一級boot程序進(jìn)行二級boot,這里的代碼和數(shù)據(jù)段地址可以不放DARAM內(nèi)。利用二級引導(dǎo)程序突破16K字的空間限制,HPI允許主機(jī)訪問內(nèi)部DARAM的字地址范圍是000060h-003FFFh,共16K字的空間。一般來說,16K字的空間遠(yuǎn)遠(yuǎn)不夠用,大部分代碼都可能放置在SARAM和片外的程序空間,而這部分空間并不是主機(jī)能夠訪問得到的。DSP程序本身是能夠訪問到所有DSP數(shù)據(jù)空間的,所以主機(jī)可以首先放置一個體積不大于16K的程序到DSP內(nèi),再由該程序和主機(jī)協(xié)作完成超出片內(nèi)DARAM的代碼加載。

        4.HPI二級引導(dǎo)程序的設(shè)計

        二級引導(dǎo)程序的功能就是按照和主機(jī)的某種約定,獲取DSP程序代碼和相應(yīng)地址信息,在DSP所能夠訪問到的存儲器空間生成DSP程序代碼。二級引導(dǎo)需要實(shí)現(xiàn)的功能比較少,代碼量一般都很小,一般來說,我們把boot-image程序轉(zhuǎn)成bin文件進(jìn)行加載。

        如圖2所示為二級引導(dǎo)程序的實(shí)現(xiàn)流程,用DARAM中的某些單元作為DSP和主機(jī)的握手單元來實(shí)現(xiàn)二級引導(dǎo)程序。

        圖1 二級boot程序流程圖

        握手單元功能如下所示:

        0x62:傳輸標(biāo)志,主機(jī)置1表示DSP可讀,置0xffff表示傳輸結(jié)束;

        DSP置0表示主機(jī)可寫,置0xaaaa表示通知主機(jī)開始下載。

        0x66,0x67:當(dāng)前傳輸?shù)臄?shù)據(jù)段的目的起始地址。

        5.HPI二級引導(dǎo)的實(shí)現(xiàn)

        5.1 HPI二次引導(dǎo)軟件的實(shí)現(xiàn)

        加載成功一級boot后,首先要啟動一級boot程序,之后開始加載二級boot。這里寫出主要代碼部分。

        1)Load二級boot。

        讀取boot-image bin文件字節(jié)總數(shù),將所有字節(jié)寫入到REG_BOOT_DATA寄存器中。寫一個字的數(shù)據(jù),發(fā)送一條CONFIGURE命令到命令寄存器中。

        temp_len=file_size;

        temp_len>>=1;

        for(i=0;i

        {

        fread(temp_buf,1,2,boot_file_fp);

        temp_data=temp_buf[0];

        temp_data<<=8;

        temp_data+=temp_buf[1];

        temp_addr=BOOT_DATA_ADDR;

        write_addr_reg(temp_addr);

        write_data_reg(&temp_data,1);

        send_dsp_cmd(CMD_CONFIGURE);

        }

        2)寫入校驗(yàn)數(shù)據(jù)

        將校驗(yàn)數(shù)據(jù)BOOT_CHECK寫入REG_BOOT_DATA寄存器,并發(fā)送CONFIGURE命令到命令寄存器REG_DSP_CMD來完成二級boot的檢驗(yàn)工作,

        temp_addr=BOOT_DATA_ADDR;

        write_addr_reg(temp_addr);

        write_data_reg(BOOT_CHECK);

        send_dsp_cmd(DSP_CMD_CONFIGURE);

        3)啟動程序

        寫PROGRAM_START_ADDR寄存器,將值0x01寫入該寄存器中,然后發(fā)送COMM START命令到命令寄存器來完成程序啟動。

        temp_addr=PROGRAM_START_ADDR;

        write_addr_reg(temp_addr);

        temp_data=0x1;//啟動boot-image

        write_data_reg(temp_data);

        send_dsp_cmd(0x0B);

        5.2 HPI引導(dǎo)過程在硬件上的實(shí)現(xiàn)

        在這里用的硬件是at91sam9260 arm芯片作為主CPU[2],與Ti公司的TMS320VC- 5509A dsp芯片[3],其硬件連接圖如圖2所示。

        圖2 ARM9260與DSP 5509A的HPI硬件連接

        圖3 HPI引導(dǎo)過程顯示打印說明圖

        具體實(shí)現(xiàn)分為兩步:

        1)編寫轉(zhuǎn)換工具具把COFF文件轉(zhuǎn)換成二進(jìn)制(BIN)文件。首先在PC機(jī)上調(diào)試好二級引導(dǎo)程序和DSP應(yīng)用程序(COFF格式),然后從COFF格式文件中提取有用信息,將其轉(zhuǎn)換成BIN文件,并將這些文件存放到主機(jī)的Flash中。

        2)利用主機(jī)程序?qū)IN格式的文件下載到DSP存儲器中。系統(tǒng)啟動后.主機(jī)從Flash中獲取二次引導(dǎo)程序的BIN數(shù)據(jù),通過(下轉(zhuǎn)第21頁)(上接第19頁)HPI將其下載到DSP的DARAM存儲區(qū)內(nèi),下載完成后通知DsP啟動運(yùn)行二級引導(dǎo)程序;然后主機(jī)從其Flash中獲取DSP應(yīng)用程序的BIN數(shù)據(jù),通過HPI將其分段放入DSP的DARAM存儲區(qū)內(nèi);二級引導(dǎo)程序根據(jù)主機(jī)寫入的段數(shù)、目的地址和長度,最終完成DSP應(yīng)用程序的正確定位;最后啟動DSP應(yīng)用程序。

        這里以一個簡單的例子為例,二級boot為一個電燈程序采用超級終端顯示加載成功的文字顯示,見圖3,完成加載后,可以在DSP段的XF(101腳)引腳發(fā)送一個方波信號,通過示波器檢測,發(fā)現(xiàn)二級boot程序啟動成功。

        6.結(jié)論

        對于DSP引導(dǎo)方式,用戶可以根據(jù)自己工作中DSP目標(biāo)系統(tǒng)的需求,靈活選用。這個系統(tǒng)中,我們采用HPI引導(dǎo)方式,提高系統(tǒng)硬件利用率,程序代碼的編寫不再受DSP空間的限制,可采用二級boot的方式,通過主機(jī)進(jìn)行讀寫,方便,可靠,這種方法在很多系統(tǒng)中都已經(jīng)得到應(yīng)用,使用效果非常不錯。

        參考文獻(xiàn)

        [1]TIUsing the TMS320VC5503/C5506/C5507/C5509/C5509ABootloader,2008.

        [2]寧可慶.DSP HPI口與ARM9總線接口的WINCE下設(shè)計實(shí)現(xiàn)[J].信息系統(tǒng)工程,2010.

        [3]黨瑞榮.TMS320系列DSP原理、結(jié)構(gòu)及應(yīng)用[M].機(jī)械工業(yè)出版社,2012.

        [4]王在淵,田玉敏,李申鵬.HPI在DSP程序引導(dǎo)中的應(yīng)用[J].國外電子測量技術(shù),2008 (5).

        [5]趙洪亮.TMS320C55x DSP應(yīng)用系統(tǒng)設(shè)計(第2版)[M].北京航空航天出版社,2010.

        作者簡介:謝于晨(1983—),女,碩士,現(xiàn)供職于江西科技學(xué)院,主要研究方向:嵌入式開發(fā),移動通信等。

        猜你喜歡
        程序代碼寄存器應(yīng)用程序
        Lite寄存器模型的設(shè)計與實(shí)現(xiàn)
        刪除Win10中自帶的應(yīng)用程序
        電腦報(2019年12期)2019-09-10 05:08:20
        計算機(jī)網(wǎng)絡(luò)信息安全未來發(fā)展趨勢
        分簇結(jié)構(gòu)向量寄存器分配策略研究*
        基于圖元裝接模式由程序流程圖自動生成源代碼
        軟件工程(2016年11期)2017-01-17 16:56:57
        關(guān)閉應(yīng)用程序更新提醒
        電腦迷(2012年15期)2012-04-29 17:09:47
        高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應(yīng)用
        一種可重構(gòu)線性反饋移位寄存器設(shè)計
        三星電子將開設(shè)應(yīng)用程序下載商店
        微軟軟件商店開始接受應(yīng)用程序
        中文人妻无码一区二区三区| 一本一道波多野结衣av中文| 日韩少妇人妻精品中文字幕| 青青草视频在线观看网| 国产美女主播视频一二三区| 中文字幕在线日亚州9| 欧美性xxxx极品高清| 鲁鲁鲁爽爽爽在线视频观看| 熟妇人妻无码中文字幕| 亚洲欲色欲香天天综合网| 国产女人91精品嗷嗷嗷嗷| 国产aⅴ丝袜旗袍无码麻豆 | 亚洲成a人片在线播放观看国产| 国产在线观看精品一区二区三区| 麻豆av在线免费观看精品| 国产丝袜美腿中文字幕| 国产91传媒一区二区三区| 精品国产综合区久久久久久| 国产午夜福利小视频合集| 成人精品国产亚洲欧洲| 一区二区视频网站在线观看| 亚洲人成伊人成综合久久| 人妻av有码中文字幕| 人妻夜夜爽天天爽三区麻豆av网站| 久久亚洲sm情趣捆绑调教| 国产精品1区2区| 丝袜美女美腿一区二区| 区一区二区三区四视频在线观看| 人妻少妇精品视频三区二区一区| 99久久er这里只有精品18| 亚洲成人福利在线观看| 欧美亚洲国产丝袜在线| 国产在线播放免费人成视频播放 | 国产av无码专区亚洲a∨毛片| 女局长白白嫩嫩大屁股| 亚洲熟伦熟女新五十路熟妇| 国产成人啪精品视频免费网 | 国产精品爽爽v在线观看无码| 猫咪免费人成网站在线观看| 久久精品无码一区二区2020| 亚洲一区二区三区免费av|