<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 多核DSP的BootLoader程序的實(shí)現(xiàn)

          多核DSP的BootLoader程序的實(shí)現(xiàn)

          作者: 時間:2008-11-27 來源:網(wǎng)絡(luò) 收藏

          多核DSP的BootLoader程序的實(shí)現(xiàn)

            1.3 16位并行EPROM工作方式Boot表的生成

            所有程序所需的Boot表的數(shù)據(jù)結(jié)構(gòu)都是通過執(zhí)行包含-v548參數(shù)的鏈接命令和Hex500轉(zhuǎn)換命令的程序形成的。在鏈接過程中確定用戶程序和數(shù)據(jù)的存放地址,在Hex500轉(zhuǎn)換過程中定義程序的工作方式和用戶程序執(zhí)行的入口地址等。

            為了生成16位并行EPROM方式的Boot表,首先,在鏈接程序時必須設(shè)置-v548選項(xiàng);然后使用TI公司開發(fā)工具自帶的HEX500.EXE文件,根據(jù)用戶的COFF格式的代碼生成Boot表中的相應(yīng)內(nèi)容。

            HEX500.EXE可執(zhí)行文件一般使用以下幾種參數(shù):

            (1) *.out : 用戶的COFF格式的程序;

            (2) -e  : 確定用戶程序的入口點(diǎn);

            (3) -a  : 以ASCII形式,根據(jù)用戶的*.out文件輸出對應(yīng)的HEX文件;

            (4) -boot: 實(shí)現(xiàn)用戶程序的裝載;

            (5) -bootorg : 確定生成哪種形式的Boot表;

            (6) -memwidth: 確定引導(dǎo)方式的位數(shù);

            (7) -O *.hex : 輸出的HEX文件的名稱。

            例如:

            hex500 ti.out /*根據(jù)ti.out文件生成Boot表*/

            -e 0x4000   /*用戶程序的入口點(diǎn)為0x4000*/

            -a       /*以ASCII形式輸出HEX文件*/

            -boot     /*裝載用戶的程序ti.out*/

            -bootorg PARALLEL

            /*生成并行EPROM方式的Boot表*/

            -memwidth 16  /*生成16位的Boot表*/

            -o ti.hex   /*生成的HEX文件名為ti.hex*/

            執(zhí)行完該HEX500.EXE命令后,系統(tǒng)會創(chuàng)建一個文件名為ti.hex的ASCII文件,然后用戶根據(jù)ti.hex文件內(nèi)容對EPROM進(jìn)行編程就能產(chǎn)生上述的16位并行EPROM工作方式的Boot表。



          關(guān)鍵詞: DSP 多核 BootLoader 上電

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();