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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > HPI方式自舉在TMS320VC5402 DSP芯片上的實現(xiàn)

          HPI方式自舉在TMS320VC5402 DSP芯片上的實現(xiàn)

          作者: 時間:2009-03-19 來源:網(wǎng)絡(luò) 收藏

          對于PC機插卡的系統(tǒng),該框圖更可以省略掉以右的部分,而直接使用PC機的CPU和硬盤作為相應(yīng)的控制和只讀存儲器件。這樣,僅需要為配備RAM即可使其正常運行。

          4.2 Kernel程序設(shè)計

          按照前面所說,kernel程序的作用是用于突破 4K片內(nèi)RAM空間限制的中間程序,其功能無非就是按照和HOST CPU的某種約定,獲取程序代碼和相應(yīng)地址信息,在所能夠訪問到的存儲器空間(片內(nèi)和片外)生成DSP程序代碼。由于 Kernel的功能比較少,故其可以做得非常小。其中關(guān)鍵的生成DSP程序代碼部分的代碼如下:

          ...

          .bss addr,1 ;程序代碼目的地址

          .bss length,1 ;程序代碼長度

          .bss codedata,20 ;接收程序代碼緩沖區(qū)

          ...

          .text

          START:

          ...

          MOVE:

          STM #addr,AR4 ;獲取程序代碼目的地址

          LD *AR4,A

          STM #codedata,AR3 ;獲取程序代碼

          MVDM #length,AR5 ;獲取程序代碼長度

          NOP

          MAR *+AR5(#-1)

          RPT *(AR5) ;定位

          WRITA *AR3+

          ...

          ENDLOAD:

          B app_start ;啟動

          ...

          4.3 運行流程

          按照前述的系統(tǒng)構(gòu)成,首先將PC機上調(diào)試好的Kernel程序和DSP應(yīng)用程序(一般為COFF格式)轉(zhuǎn)換成HEX文件,并通過串口將這些文件存放到CPU的Flash中,在存放過程中應(yīng)將HEX文件原樣保存,以保留其中所有的信息。在系統(tǒng)啟動后,CPU從Flash中獲取Kernel的HEX數(shù)據(jù),通過將其在中組合出Kernel運行程序并啟動。然后,CPU從其Flash中獲取DSP應(yīng)用程序的HEX數(shù)據(jù),通過將其分塊放入,并和已經(jīng)開始運行的Kernel程序最終完成DSP引用程序的正確定位工作。最后啟動DSP應(yīng)用程序。

          在實踐中發(fā)現(xiàn),雖然HPI的設(shè)計初衷是為了和低速8位機接口進行數(shù)據(jù)交換,但是HPI本身的工作速度非常高。通過HPI加載一段不小于130K的DSP應(yīng)用程序代碼所需要的時間不超過3秒鐘。

          TI系列DSP提供了如此豐富的應(yīng)用,無疑給DSP系統(tǒng)開發(fā)者帶來了極大的方便。


          上一頁 1 2 3 下一頁

          評論


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