• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    一種串行I2C方式的DSP引導(dǎo)方法及實(shí)現(xiàn)方案

    2010-09-14 08:58:58丁若愚
    石油管材與儀器 2010年3期
    關(guān)鍵詞:用戶程序存儲器寄存器

    井 靜 丁若愚 胡 強(qiáng)

    (東方地球物理勘探有限責(zé)任公司西安物探裝備分公司 陜西西安)

    一種串行I2C方式的DSP引導(dǎo)方法及實(shí)現(xiàn)方案

    井 靜 丁若愚 胡 強(qiáng)

    (東方地球物理勘探有限責(zé)任公司西安物探裝備分公司 陜西西安)

    通過分析TI公司TMS320VC5502DSP芯片上電后的自動加載原理和模式,詳細(xì)介紹了一種串行I2C方式的DSP引導(dǎo)方法及該方案的硬件實(shí)現(xiàn)和引導(dǎo)表的制作方法。利用代碼轉(zhuǎn)換工具將CCS生成的.out文件轉(zhuǎn)換成.hex文件,實(shí)現(xiàn)了DSP的上電自舉功能。

    DSP芯片;串行I2C方式;代碼轉(zhuǎn)換;上電自舉

    0 引 言

    數(shù)字信號處理(DigitalSignalProcessing,簡稱DSP)是一門涉及多學(xué)科而又廣泛應(yīng)用于多領(lǐng)域的技術(shù),隨著計(jì)算機(jī)和信息技術(shù)的飛速發(fā)展,數(shù)字信號處理技術(shù)也得到迅速的發(fā)展。DSP器件以其卓越的性能、獨(dú)有的特點(diǎn),已經(jīng)成為通信、計(jì)算機(jī)領(lǐng)域的基礎(chǔ)器件。在CCS開發(fā)環(huán)境下,PC機(jī)通過不同類型的JTAG電纜與用戶目標(biāo)系統(tǒng)中的DSP通信,幫助用戶完成調(diào)試工作。當(dāng)用戶在CCS環(huán)境下完成開發(fā)任務(wù),編寫完成程序之后,需要脫離PC的環(huán)境,并要求系統(tǒng)上電后可自行啟動并執(zhí)行用戶軟件代碼,這就需要用到BootLoader技術(shù)將程序代碼存儲在非易失性存儲器中。Boot-Loader即DSP芯片在上電或復(fù)位時,從外設(shè)轉(zhuǎn)移代碼和數(shù)據(jù)到片內(nèi)RAM的過程。這樣既利用了外部的存儲單元擴(kuò)展DSP本身有限的ROM資源,又充分發(fā)揮了DSP內(nèi)部資源的效能,是開發(fā)DSP應(yīng)用系統(tǒng)必須做的重要一步。

    本文以TI公司的TMS320VC5502和外部擴(kuò)展的I2C存儲器CAT24WC256為對象,分析并實(shí)現(xiàn)系統(tǒng)的上電自動加載。

    1 TMS320VC5502BootLoader的模式和基本原理

    TI公司的TMS320VC5502屬于定點(diǎn)數(shù)字信號處理器,最高主頻可達(dá)300MHz,最大處理能力高達(dá)600 MI/s。TMS320VC5502片內(nèi)資源豐富,具有32K×l6 bit的片內(nèi)RAM、16K×l6bit的片內(nèi)ROM、鎖相環(huán)發(fā)生器(PLL)、6個相互獨(dú)立編程的DMA控制器、3個多通道緩沖串口(McBSP)、定時器和32位外部存儲器擴(kuò)展接口(EMIF)等。其中32位的外部存儲器擴(kuò)展接口可實(shí)現(xiàn)與異步存儲器件(SRAM、EPROM)和同步存儲器件(SDRAM、SBRAM)的無縫連接,最大可尋址8M×l6bit的外部存儲空間[1]。

    TMS320VC5502的BootLoader允許用以下的方式加載RAM:HPI(增強(qiáng)主機(jī)接口)、16bit的異步存儲器模式、標(biāo)準(zhǔn)16bit串口模式、串行 EEPROM模式、串行I2C模式、并口模式和通用I/O口模式,選擇這些模式是通過設(shè)置BOOTM[2:0]這三個管腳來完成,BOOTM[2:0]和通用I/O口復(fù)用,具體配置見表1[2]。

    表1 Boot模式選項(xiàng)

    當(dāng)BootLoader開始執(zhí)行之前,必須有一個初始化的過程,見表2[2],在執(zhí)行完這一系列初始化(配置堆棧寄存器、關(guān)閉中斷、程序臨時入口、符號擴(kuò)展、兼容性配置)工作后,根據(jù)預(yù)先配置的自舉模式,通過固化在ROM內(nèi)的Bootloader程序進(jìn)行程序引導(dǎo)。

    表2 BootLoader初始化

    DSP從上電復(fù)位到進(jìn)入工作狀態(tài)前一瞬間的這個階段稱為Boot階段。DSP內(nèi)部ROM空間中固化了一些程序和查找表,如表3所示。當(dāng)上電后,程序指針自動指向ROM中的Bootloader程序,程序會根據(jù)相應(yīng)的環(huán)境選用相應(yīng)的程序加載方法,將外部程序搬移到DSP內(nèi)部的RAM程序區(qū)中,并將程序指針移到執(zhí)行程序的第1行處。Bootloader程序很短,主要完成一些數(shù)據(jù)的搬移和重定位等工作。

    表3 TMS320VC5502片上ROM內(nèi)容

    2 TMS320VC5502串行I2C模式BootLoader的實(shí)現(xiàn)

    本文著重介紹串行 I2C模式下BootLoader的實(shí)現(xiàn),I2C總線是各種總線中使用信號線最少的,電路連接見圖1,使用I2C總線設(shè)計(jì)計(jì)算機(jī)系統(tǒng)十分方便靈活,體積也小,因而在各類實(shí)際應(yīng)用中得到廣泛應(yīng)用,我們選擇CATALYST公司的CAT24WC256做為外部存儲器,它是一個256K位串行CMOSE2PROM,內(nèi)部含有32768個字節(jié)(每字節(jié)為8位),有一個64字節(jié)頁寫緩沖器,100000編程/擦寫周期,可保存數(shù)據(jù) 100年。

    圖1 電路連接圖

    根據(jù)前面的介紹,選擇I2C模式進(jìn)行Bootloader只需設(shè)置BOOTM[2:0]這三個管腳,即 GPIO2、GPIO1、GPIO0的值分別設(shè)為1、1、0即可。

    2.1 引導(dǎo)表的生成

    Bootloader在引導(dǎo)程序時,程序代碼是以引導(dǎo)表格形式加載的。TMS320VC5502的引導(dǎo)表結(jié)構(gòu)中包括了用戶程序的代碼段和數(shù)據(jù)段以及相應(yīng)段在內(nèi)存中的指定存儲位置,此外還包括了程序入口地址、部分寄存器的配置值、可編程延時時間等信息。結(jié)構(gòu)如表4所示[3]。

    表4 TMS320VC55XX引導(dǎo)表結(jié)構(gòu)

    其中,程序入口地址是引導(dǎo)表加載結(jié)束后,用戶程序開始執(zhí)行的地址;寄存器數(shù)目配置決定有多少個寄存器需要配置;延時標(biāo)志是0xFFFF時,延時會被執(zhí)行;延時長度決定在寄存器配置后延時多少個CPU周期;段長度、段起始地址和數(shù)據(jù)為程序中定義的各個段的內(nèi)容,并且可以重復(fù)添加;最后以32個0作為引導(dǎo)表的結(jié)束標(biāo)志。

    下面我們以一個例子來介紹引導(dǎo)表的生成:

    源程序xxx.pjt經(jīng)過CCS的編譯鏈接生成xxx.out文件。編寫一個文件名為test.cmd的CMD文件。在CCS的安裝目錄X: ic5500cgtoolsin下可以找到TI公司的專用代碼轉(zhuǎn)換器hex55.exe這個轉(zhuǎn)換工具。將hex55.exe、xxx.out和test.cmd放在同一個目錄下,在DOS環(huán)境或命令提示符下切換到這個目錄,執(zhí)行命令行:hex55test.cmd,即可得到xxx.hex文件,test.cmd文件如下:

    2.2 Bootloader的實(shí)現(xiàn)

    做完引導(dǎo)表后,只需將xxx.hex文件燒寫進(jìn)I2C器件中去,現(xiàn)在將所有過程列下:

    1)用CCS軟件生成.out格式的文件;

    2)將 GPIO2、GPIO1、GPIO0 分別設(shè)為 1、1、0;(可根據(jù)不同的模式選擇)

    3)在CCS的安裝目錄下,X: ic5500cgtoolsin,找到hex55.exe文件;

    4)做一個cmd連接命令;

    5)把 CCS 編譯生成的.out、cmd、hex55 放在同一個目錄下,進(jìn)入命令提示符,cd命令到這個文件夾,運(yùn)行hex55xxx.cmd,即可轉(zhuǎn)換成.hex文件。

    6)用燒寫器燒寫 I2C即可,在這使用SUPERPRO 280U燒寫器,加載文件后點(diǎn)auto會自動燒寫。

    3 結(jié)束語

    闡述了一種針對TMS320VC5502DSP,使用 I2C方式實(shí)現(xiàn)程序自舉引導(dǎo),通過CCS軟件,利用燒寫程序,能夠正確地將用戶程序燒寫到外擴(kuò)I2C存儲器中,在上電或復(fù)位后,引導(dǎo)程序能準(zhǔn)確地自舉加載到RAM中來,這種引導(dǎo)方式具有穩(wěn)定可靠、簡單實(shí)用、成本低等優(yōu)點(diǎn)。該引導(dǎo)方法對于TMS320VC5502以及其他型號DSP電路的設(shè)計(jì)具有一定的參考價值。

    [1] TexasInstrumentsIncorporated.TMS320VC55x系列DSP的CPU與外設(shè)[M].北京:清華大學(xué)出版,2005

    [2] TexasInstruments.TMS320VC55xDSPCPUReference Guide[J].TexasInstruments,2004(資料)

    [3] TexasInstruments.UsingtheTMS320VC5501/C5502Bootloader[J].TexasInstruments,2004(資料)

    TN911.72

    B

    1004-9134(2010)03-0082-03

    2009-12-04 編輯:劉雅銘)

    井 靜,女,1981年生,助理工程師,2005年畢業(yè)于北京理工大學(xué)信息管理與信息系統(tǒng)專業(yè)。現(xiàn)在東方物探西安分公司從事儀器開發(fā)工作。郵編:710082

    猜你喜歡
    用戶程序存儲器寄存器
    靜態(tài)隨機(jī)存儲器在軌自檢算法
    Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
    變速箱控制系統(tǒng)Bootloader設(shè)計(jì)與實(shí)現(xiàn)
    嵌入式設(shè)備遠(yuǎn)程升級方案設(shè)計(jì)
    分簇結(jié)構(gòu)向量寄存器分配策略研究*
    存儲器——安格爾(墨西哥)▲
    C8051F410單片機(jī)BootLoader的實(shí)現(xiàn)
    基于Nand Flash的高速存儲器結(jié)構(gòu)設(shè)計(jì)
    高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應(yīng)用
    MCF52223的多用戶在線編程應(yīng)用設(shè)計(jì)
    屏边| 闵行区| 玉林市| 梁山县| 江安县| 海伦市| 百色市| 连平县| 云阳县| 中西区| 若尔盖县| 鸡泽县| 太康县| 新营市| 伊川县| 阆中市| 石河子市| 蓬莱市| 昌邑市| 霍邱县| 凌海市| 萍乡市| 建德市| 晴隆县| 托克逊县| 张家川| 蚌埠市| 同仁县| 普安县| 东兴市| 冕宁县| 五大连池市| 福鼎市| 合水县| 万载县| 宁远县| 兴文县| 涪陵区| 独山县| 贵州省| 延边|