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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于閃爍存儲器的DSP并行引導(dǎo)裝載方法

          基于閃爍存儲器的DSP并行引導(dǎo)裝載方法

          作者: 時(shí)間:2010-11-05 來源:網(wǎng)絡(luò) 收藏

            上電復(fù)位后,TMS320VC5409檢測其MP/MC引腳,如果MP/MC=0,從0xFF80h處開始執(zhí)行片內(nèi)程序。進(jìn)入程序后,如有INT2請求中斷,則進(jìn)入HPI 方式;如有INT3請求中斷,則進(jìn)入EEPROM串行口引導(dǎo)方式;否則就進(jìn)入引導(dǎo)方式。其詳細(xì)引導(dǎo)過程如圖3所示。

            片內(nèi)引導(dǎo)方式前半部件是I/O空間引導(dǎo)方式,我們不采用此方式,程序繼續(xù)運(yùn)行直到從數(shù)據(jù)空間0xFFFFh地址讀入一個(gè)地址數(shù)據(jù),此數(shù)據(jù)為用戶自舉表的入口地址。這時(shí)片內(nèi)引導(dǎo)程序就開始執(zhí)行FLASH中的用戶自舉表,若自舉表的第一個(gè)字是0x10AA,則表示是16位并行引導(dǎo)模式。

            4 FLASH中自舉表(Boottable)的存儲格式

            為了實(shí)現(xiàn)加電自舉,F(xiàn)LASH的數(shù)據(jù)必須按照自舉表的格式“燒寫”。自舉表的作用是:運(yùn)行此表時(shí),首先根據(jù)自舉表中前部分用戶起始地址把后面的用戶程序代碼加載到DSP片內(nèi)程序空間中相應(yīng)的用戶地址區(qū)域(由于FLASH與DSP時(shí)間不匹配,要設(shè)置好SWWR和BSCR寄存器),然后根據(jù)自舉表中的程序入口址,在程序空間相應(yīng)的地址開始運(yùn)行程序。表2為16位并行自舉的代碼結(jié)構(gòu)(自舉表在空間允許的情況下可以放幾個(gè)程序代碼段,為便于說明,在此只說明一個(gè)程序代碼段的情況)。

            表2 并行自舉表的代碼結(jié)構(gòu)

            下面結(jié)合一個(gè)實(shí)例,說明利用hex500命令生成二進(jìn)制數(shù)據(jù)自舉表的。

           ?。?)所編寫的一個(gè)用戶程序名為myblink.C,在編譯鏈接成功后生成的輸出文件名為myblink.out;程序空間的開始地址為0x1400h,程序執(zhí)行的入口地址為0x144Fh。利用hex500工具,生成文件名為myblink.hex的二進(jìn)制數(shù)據(jù),hex500命令后添加如下條件:

            mybilink.out ;要轉(zhuǎn)換的.out文件



          評論


          相關(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); })();