基于TMS320C6455系列DSP的中斷系統(tǒng)的使用,使無線傳輸方面大有作為

時間:2018-09-07

來源:網(wǎng)絡(luò)轉(zhuǎn)載

導(dǎo)語:本文主要是關(guān)于TMS320C6455的相關(guān)介紹,并著重對TMS320C6455系列DSP的中斷系統(tǒng)的使用進(jìn)行了詳盡的闡述。

【中國傳動網(wǎng) 行業(yè)動態(tài)】

本文主要是關(guān)于TMS320C6455的相關(guān)介紹,并著重對TMS320C6455系列DSP的中斷系統(tǒng)的使用進(jìn)行了詳盡的闡述。

TMS320C6455

TMS320C6455是TI公司推出的的一款新型高性能單核定點(diǎn)DSP.它是TI公司基于第三代先進(jìn)VeloviTIVLIW(超長指令字)結(jié)構(gòu)開發(fā)出來的新產(chǎn)品,在通信,醫(yī)療圖像,無線傳輸方面都可以大有作為.TMS320C6455主頻達(dá)到了1GHz,1ns的指令周期.每周期執(zhí)行8條32位指令,最大峰值速度達(dá)到8000MIPS.這意味著.在1G時鐘頻率下,8000個16位“16位的MACs能在1秒鐘發(fā)生.TMS320C6455還帶有Seria/RapidlOfr)總線,互連速率每秒高達(dá)25Gbits,實(shí)現(xiàn)了極高的多處理性能,降低了系統(tǒng)消耗,比此前的外部存儲器接口快12倍,這使得多DSP級連變得十分方便.TMS320CC6455片內(nèi)是基于C64xx內(nèi)核的L1/L2存儲結(jié)構(gòu).片上集成有大量的存儲空間.L1P為32K字節(jié),L1D為32K字節(jié)L2為2M字節(jié)、比此前C64x器的存儲器容量件翻一番,其中L1P和L2都可直接映射到存儲空間。

TMS320C6455的外圍總線包括:一個內(nèi)部集成電路總線(I2C).兩個多路緩沖串口總線fMcBSPs),兩個64位通用定時器(可以配置成4個32位定時器),一個可配置的16位或32位主機(jī)接口(HPI6/HPI32).一個PCI總線,一個16管腳的通用輸入/輸出端口(GPIO),一個10/100/1000M以太網(wǎng)媒體訪問控制器(EMAC)。一個無縫外部存儲器接口(64一bitEMIFA),一個32位DDR2SDRAM接口。

C6455由于自帶千兆EMAC,外接PHY物理層芯片即可實(shí)現(xiàn)一個千兆以太網(wǎng)口。千兆以太網(wǎng)的實(shí)現(xiàn)使得C6455嵌入式處理器與臺式機(jī)等設(shè)備的數(shù)據(jù)傳輸變得異常方便。TI為C6455等處理器提供了NDK(NetworkDevelopKit),通過NDK的使用可以簡化C6455中TCP/IP或者UDP等數(shù)據(jù)傳輸協(xié)議的實(shí)現(xiàn)。

基于TMS320C6455系列DSP的中斷系統(tǒng)的使用

仔細(xì)觀察上圖,可以看出C6455有一下幾種中斷:

1.Reset

2.NMI不可屏蔽中斷

3.EXCEP硬件異常

4.12個普通中斷INT[15:4]

我們使用的最多的也就是普通中斷,所以這也是本文的重點(diǎn)。

接下來,沿著INT[15:4]往后退,看到的是InterruptSelector,它的功能好比一個篩子(shuffle),對所有中斷事件進(jìn)行選擇性映射。如下圖示:

看了這個圖,我們又不難發(fā)現(xiàn),中斷選擇器是一個128--》12的映射,這也就意味著,有116個系統(tǒng)事件被過濾掉了。

接著往回走,可以看到,中斷選擇器有三個輸入,分別是:

RESET

Event[3:0]

Event[127:4]

RESET不看了,硬件重啟。

EVENT[127:4]是系統(tǒng)事件,這個事件的編號根據(jù)芯片的不同而不同,拿6455來說,部分映射情況如下面兩個圖片所示:

不難看出,這些編號都是固定的,基本囊括了芯片上所有模塊的事件。

最后,比較特別的是Event[3:0],它是組合事件,通過下圖的介紹應(yīng)該就一目了然了。

可見,Event0對應(yīng)4-31號事件的組合事件,Event2對應(yīng)32-63號事件的組合事件,以此類推。

那么,怎么組合呢?

這就不得不從寄存器開始說起了。首先,先看如下3個寄存器組:

(注:每組都是4個32位寄存器,每一組的EVTxxx0[3:0]都不使用,故這里不涉及到組合事件)

系統(tǒng)事件發(fā)生時(124個),它們在事件標(biāo)志寄存器中(EVTFLAGx)的對應(yīng)位會被置1,此時可以通過向EVTCLR寄存器中對應(yīng)位寫入1來清除中斷標(biāo)志,然后執(zhí)行中斷服務(wù)程序。若不清除,那么相同事件再次發(fā)生時會產(chǎn)生問題。故,手動清除中斷標(biāo)志是必須的!且只能通過向EVTCLR寄存器中寫入1來清除,不能直接向EVTFLAG寄存器寫入0,因?yàn)镋VTFLAG寄存器是ReadOnly的。

另外,EVTSET寄存器的存在意義就是我們可以手動產(chǎn)生中斷,這一點(diǎn)可以讓我們測試中斷服務(wù)程序的功能。

介紹完上面三個基本的寄存器組,我們可以開始討論組合事件的機(jī)制了。先看下圖:

可以明顯的看出,124個事件被分成了4組。然后經(jīng)過兩個寄存器的運(yùn)算,產(chǎn)生組合事件。

下面介紹EVTMASK和MEVTFLAG兩個寄存器組。

EVTMASK寄存器組用于決定每一個組中的哪些事件被屏蔽掉。默認(rèn)情況下,沒有事件被屏蔽(全0)。

鑒于最終的組合事件EVTx的發(fā)生機(jī)制是對Group中所有事件進(jìn)行或運(yùn)算,即只要Group中有一個事件發(fā)生,就代表組合事件發(fā)生。

舉個例子:

假如EVTMASK3=0x0FFFFFFF,那么代表只有事件124,125,126,127參與組合。其他事件96-123都被忽略。

MEVTFLAG寄存器同EVTFLAG寄存器的值相同,表示事件是否發(fā)生。這樣一旦知道了EVTMASK和MEVTFLAG兩個寄存器的值就可以斷定組合事件EVTx(0《=x《=3)是否發(fā)生了。

通過上面的介紹,應(yīng)該已經(jīng)很清楚C6455的中斷機(jī)制了,再貼一張圖來鞏固一下上面所說的內(nèi)容:

說到這里,我們對上圖中紅色框以及它之前的東西了解的很清楚了,下面就是InterruptSelector的機(jī)制了。

其實(shí)很簡單,為12個中斷分別配置對應(yīng)的事件編號即可。只需要3個寄存器就OK啦。

分別是INTMUX1,INTMUX2,INTMUX3。貼一個圖就應(yīng)該很明了了。

舉個例子:

假設(shè)我要讓INT4映射到GPIO4,那么通過查找前面的圖,發(fā)現(xiàn)GPINT4的事件編號是55,那么只要把INTMUX1的低7位設(shè)置成0x37即可。

可見,INT4優(yōu)先級最高,INT15優(yōu)先級最低

結(jié)語

關(guān)于TMS320C6455的相關(guān)介紹就到這了,希望通過本文能讓你對TMS320C6455有更全面的認(rèn)識。

中傳動網(wǎng)版權(quán)與免責(zé)聲明:

凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

關(guān)注伺服與運(yùn)動控制公眾號獲取更多資訊

關(guān)注直驅(qū)與傳動公眾號獲取更多資訊

關(guān)注中國傳動網(wǎng)公眾號獲取更多資訊

最新新聞
查看更多資訊

娓娓工業(yè)

廣州金升陽科技有限公司

熱搜詞
  • 運(yùn)動控制
  • 伺服系統(tǒng)
  • 機(jī)器視覺
  • 機(jī)械傳動
  • 編碼器
  • 直驅(qū)系統(tǒng)
  • 工業(yè)電源
  • 電力電子
  • 工業(yè)互聯(lián)
  • 高壓變頻器
  • 中低壓變頻器
  • 傳感器
  • 人機(jī)界面
  • PLC
  • 電氣聯(lián)接
  • 工業(yè)機(jī)器人
  • 低壓電器
  • 機(jī)柜
回頂部
點(diǎn)贊 0
取消 0