DSP原理及應(yīng)用-TMS320DM6437 課件 第六章:TMS320DM6437流水線與中斷_第1頁(yè)
DSP原理及應(yīng)用-TMS320DM6437 課件 第六章:TMS320DM6437流水線與中斷_第2頁(yè)
DSP原理及應(yīng)用-TMS320DM6437 課件 第六章:TMS320DM6437流水線與中斷_第3頁(yè)
DSP原理及應(yīng)用-TMS320DM6437 課件 第六章:TMS320DM6437流水線與中斷_第4頁(yè)
DSP原理及應(yīng)用-TMS320DM6437 課件 第六章:TMS320DM6437流水線與中斷_第5頁(yè)
已閱讀5頁(yè),還剩56頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

DSP原理及應(yīng)用第六章TMS320DM6437的流水線與中斷第六章TMS320DM6437流水線與中斷

6.1流水線6.2DSP的中斷系統(tǒng)6.3實(shí)驗(yàn)及程序?qū)嵗?.1流水線操作6.1.1流水線概述在馮諾依曼結(jié)構(gòu)中,機(jī)器各部件在某些周期內(nèi)進(jìn)行操作,而在某些周期內(nèi)是空閑的,導(dǎo)致機(jī)器各部分的利用率不高。

為了提高計(jì)算機(jī)各功能部件的工作效率和計(jì)算機(jī)的運(yùn)行速度,這就需要流水線(pipeline)技術(shù)。流水線技術(shù)是指在程序執(zhí)行時(shí)多條指令重疊進(jìn)行操作的一種準(zhǔn)并行處理技術(shù)。它是將一個(gè)重復(fù)的過(guò)程分解為若干個(gè)子過(guò)程,每個(gè)子過(guò)程有專(zhuān)門(mén)的功能部件來(lái)實(shí)現(xiàn)。6.1流水線操作流水線中的每個(gè)子過(guò)程及其功能部件稱(chēng)為流水線的級(jí)或段,段與段相互連接形成流水線。流水線的段數(shù)稱(chēng)為流水線的深度。把多個(gè)處理過(guò)程在時(shí)間上錯(cuò)開(kāi),依次通過(guò)各功能段,這樣,每個(gè)子過(guò)程就可以與其他的子過(guò)程并行進(jìn)行。6.1流水線操作對(duì)微處理器的每個(gè)部件來(lái)說(shuō),每隔1個(gè)時(shí)鐘周期即可進(jìn)入一條新指令,這樣在同一時(shí)間內(nèi),就有多條指令交疊在不同部件內(nèi)處理,使CPU運(yùn)算速度提高。但這種流水線工作方式控制較為復(fù)雜,很難全速運(yùn)行。

6.1流水線操作

TMS320DM6437的DSP具有獨(dú)特的特點(diǎn),它可以通過(guò)消除流水線交錯(cuò),簡(jiǎn)化流水線的控制,并通過(guò)增加流水線消除程序提取、數(shù)據(jù)訪問(wèn)和乘法運(yùn)算等傳統(tǒng)結(jié)構(gòu)的瓶頸,提高了單周期的吞吐量。并且利用流水線提供的靈活性可以簡(jiǎn)化編程,提高性能。6.1流水線操作6.1.2.流水線操作

流水線操作以CPU周期為單位,一個(gè)CPU周期是指特定的執(zhí)行包在流水線特定階段的時(shí)間。CPU周期的邊界總是發(fā)生在時(shí)鐘周期的邊界,隨著節(jié)拍代碼流流經(jīng)各個(gè)部件,各個(gè)部件根據(jù)指令代碼進(jìn)行不同處理。一個(gè)指令的取出和執(zhí)行過(guò)程可以分為多個(gè)階段。

TMS320DM6437的DSP指令集流中所有的指令都通過(guò):取指(Fetch),譯碼(Decode),執(zhí)行(Execute)3個(gè)階段,各階段的任務(wù)如下:6.1流水線操作(1)取指

取出一條指令送到指令寄存器;所有指令的取指階段都有4個(gè)節(jié)拍,即PG、PS、PW、PR節(jié)拍,每個(gè)節(jié)拍的具體功能如下:PG程序地址產(chǎn)生:CPU上取指包的地址確定PS程序地址發(fā)送:取指包的地址送至內(nèi)存PW程序訪問(wèn)等待:訪問(wèn)程序存儲(chǔ)空間PR程序取指包接收:取指包送至CPU邊界6.1流水線操作TMS320DM6437的DSP取指階段:①每個(gè)節(jié)拍采用8個(gè)字的取指包。②四個(gè)節(jié)拍從左到右依次進(jìn)行。③

所有的這8個(gè)字同時(shí)通過(guò)PG、PS、PW和PR進(jìn)行取指。④PR取指包有四個(gè)執(zhí)行包,PW和PS各包括兩個(gè)執(zhí)行包,PG包含有八個(gè)指令的一個(gè)執(zhí)行包。圖6-1

流水線取指級(jí)的四個(gè)節(jié)拍功能圖6.1流水線操作(2)譯碼對(duì)指令操作碼進(jìn)行譯碼,讀取操作數(shù);所有指令譯碼階段都包括2個(gè)節(jié)拍,即DP和DC節(jié)拍,每個(gè)節(jié)拍的具體功能如下:DP指令分配

:確定取指包的下一個(gè)執(zhí)行包,并將其送至適當(dāng)?shù)墓δ軉卧獪?zhǔn)備譯碼。DC指令譯碼:指令在功能單元進(jìn)行譯碼。(1)DP階段,取指包被分為執(zhí)行包。執(zhí)行包包括一個(gè)指令或兩到八個(gè)平行指令。在此階段,執(zhí)行包的指令被分配合適的功能單元。(2)DC階段,源寄存器、目標(biāo)寄存器和相關(guān)路徑被解碼,以執(zhí)行功能單元的指令。6.1流水線操作(3)執(zhí)行根據(jù)操作碼的要求,完成指令規(guī)定的操作,并把運(yùn)算結(jié)果寫(xiě)到指定的存儲(chǔ)或緩沖單元中。流水線的執(zhí)行階段節(jié)拍的數(shù)量不同,這取決于指令的類(lèi)型。流水線的執(zhí)行部分被分為5個(gè)節(jié)拍。大多數(shù)DSP指令是單周期的,所以它們只有一個(gè)執(zhí)行節(jié)拍(E1)。只有少數(shù)指令需要多個(gè)執(zhí)行節(jié)拍。不同類(lèi)型的指令需要不同數(shù)量的這些節(jié)拍來(lái)完成執(zhí)行。流水線執(zhí)行級(jí)的5個(gè)節(jié)拍如下:6.1流水線操作1>執(zhí)行節(jié)拍E1①測(cè)試指定執(zhí)行條件及讀取操作數(shù),對(duì)所有的指令適用②對(duì)于讀取和存儲(chǔ)指令,假定指令的條件被評(píng)估為真時(shí),地址產(chǎn)生,其修正值寫(xiě)入寄存器,若指令的條件為假,則指令在E1后不寫(xiě)入任何結(jié)果或進(jìn)行任何流水線操作③對(duì)于轉(zhuǎn)移指令,程序轉(zhuǎn)移目的地址取指包處于PG節(jié)拍④對(duì)于單周期指令,結(jié)果寫(xiě)入寄存器6.1流水線操作1>執(zhí)行節(jié)拍E1⑤對(duì)于雙精度(DP)比較指令、ADDDP和MPYDP等指令,讀取源操作數(shù)的低32位⑥對(duì)于其他指令讀取操作數(shù)⑦對(duì)于雙周期雙精度(DP)指令,結(jié)果的低32位寫(xiě)入寄存器6.1流水線操作2>執(zhí)行節(jié)拍E2①讀取指令的地址送至內(nèi)存,存儲(chǔ)指令的地址和數(shù)據(jù)送至內(nèi)存,對(duì)結(jié)果進(jìn)行飽和處理的單周期指令,若結(jié)果飽和,置SRC的SAT位②

對(duì)于單個(gè)16×16乘法指令、乘法單元和非乘法操作指令,結(jié)果將寫(xiě)入寄存器文件。TMS320C64x的M單元的非乘法操作指令,對(duì)于DP比較指令和ADDDP/SUBDP指令,讀取源操作數(shù)的高32位③

對(duì)于MPYDP指令,讀取源操作數(shù)1的低32位和源操作數(shù)2的高32位,對(duì)于MPYI和MPYID指令,讀取源操作數(shù)6.1流水線操作3>執(zhí)行節(jié)拍E3①進(jìn)行數(shù)據(jù)存儲(chǔ)空間訪問(wèn)②

對(duì)結(jié)果進(jìn)行飽和處理的乘指令在結(jié)果飽和時(shí)置SAT位③對(duì)于MPYDP指令讀取源操作數(shù)1的高32位和源操作數(shù)2的低32位④

對(duì)于MPYI和MPYID指令,讀取源操作數(shù)6.1流水線操作4>執(zhí)行節(jié)拍E4①對(duì)于讀取指令,把所讀的數(shù)據(jù)送至CPU邊界;②對(duì)于乘法擴(kuò)展,結(jié)果將被寫(xiě)入寄存器;③

對(duì)于MPYI和MPYID指令,讀取源操作數(shù);④

對(duì)于MPYDP指令,讀取源操作數(shù)的高32位;⑤

對(duì)于4周期指令,結(jié)果寫(xiě)人寄存器;⑥

對(duì)于INTDP指令,結(jié)果的低32位寫(xiě)入寄存器。6.1流水線操作5>執(zhí)行節(jié)拍E5①對(duì)于讀取指令,把所讀的數(shù)據(jù)寫(xiě)入寄存器②對(duì)于INTDP指令,結(jié)果寫(xiě)入寄存器。TMS320DM6437中所有指令均按照以上3級(jí)流水線運(yùn)行,具體流水線結(jié)構(gòu)如下圖所示:圖6-2

TMS320DM64373級(jí)流水線6.1流水線操作TMS320DM6437流水線流程圖如下圖所示,連續(xù)的各個(gè)取值包都包含8條并行指令,各個(gè)指令包以每個(gè)時(shí)鐘一個(gè)節(jié)拍的方式通過(guò)流水線。圖6-3TMS320DM6437流水線流程圖6.1流水線操作流水線的實(shí)現(xiàn)步驟如下所示:①?gòu)拇鎯?chǔ)器中取出一條指令。②判斷該指令是否支持并行執(zhí)行,如果支持,則執(zhí)行步驟①,不支持執(zhí)行步驟③。③對(duì)指令包中的每一條指令進(jìn)行解析,解析過(guò)程中采用運(yùn)用緩存機(jī)制提高指令的解析效率。④判斷延時(shí)隊(duì)列中是否有指令,如果有指令則執(zhí)行步驟⑤,沒(méi)有則執(zhí)行步驟⑥。6.1流水線操作⑤對(duì)延時(shí)隊(duì)列中每一條指令進(jìn)行如下操作:將指令的延時(shí)間隙減1;此時(shí),如果延時(shí)間隙為0,則執(zhí)行指令在En節(jié)拍的操作。⑥判斷指令包中是否有未執(zhí)行的指令,如果有,則執(zhí)行操作⑦,沒(méi)有則結(jié)束。⑦對(duì)執(zhí)行包中每一條指令進(jìn)行如下操作:如果指令有延時(shí)間隙,則執(zhí)行步驟⑥,如果沒(méi)有執(zhí)行延時(shí),執(zhí)行指令E1節(jié)拍的操作并跳動(dòng)步驟⑥。⑧執(zhí)行指令E1節(jié)拍的操作,指令的延時(shí)間隙減1,將指令加入到延時(shí)隊(duì)列中,并跳到步驟⑥。6.1流水線操作6.13.各類(lèi)指令的流水線執(zhí)行TMS320C64x+系列的DSP的流水線操作執(zhí)行指令分為6種:①單周期指令(single-cycleinstruction)

②雙周期或多周期(two-cycleormultiplyinstruction)

存儲(chǔ)指令(storeinstruction)④擴(kuò)展乘法指令(extendedmultiplyinstructions)⑤加載指令(loadinstructions)⑥跳轉(zhuǎn)指令(branchinstructions)6.1流水線操作下表是六種類(lèi)型指令的每個(gè)執(zhí)行階段中發(fā)生的操作的映射。表6-2

六種類(lèi)型指令的每個(gè)執(zhí)行階段發(fā)生的操作表6.1流水線操作

當(dāng)要將同一指令讀入和存儲(chǔ)到相同的內(nèi)存位置時(shí),有如下規(guī)則(i為周期):(1)在存儲(chǔ)之前執(zhí)行讀入指令,則以前的值被讀入,新的值被存儲(chǔ)。

iLDWi+1STW(2)讀入指令前執(zhí)行存儲(chǔ)指令,則新的值被存儲(chǔ)和讀入。

iSTWi+1LDW6.1流水線操作(3)當(dāng)讀入指令和存儲(chǔ)指令同時(shí)執(zhí)行,以前的值首先被讀入,新的值被存儲(chǔ),但是都在同一節(jié)拍。

iSTWi+1LDW6.1流水線操作CPU運(yùn)行時(shí),每次取八條指令組成一個(gè)指令包,取指包一定在地址的256位邊界定位。每條指令的最后一位是并行標(biāo)志位P,P標(biāo)志位決定本條指令是否與取指包中的下一條指令并行執(zhí)行。CPU從低地址到高地址依次判讀P標(biāo)志位:如果為1,則該指令將與下一條指令并行執(zhí)行;如果為0,則下一條指令要在本指令執(zhí)行完以后才能執(zhí)行。6.1流水線操作如果流水線中的指令相互獨(dú)立,則可以充分發(fā)揮流水線的性能。但在實(shí)際中,指令間可能會(huì)相互依賴(lài),這會(huì)降低流水線的性能。相鄰或相近的兩條指令因存在某種關(guān)聯(lián),后一條指令不能在原指定的時(shí)鐘周期開(kāi)始執(zhí)行,造成流水線中出現(xiàn)“阻塞”的情況。(1)在一個(gè)取指包中有多個(gè)執(zhí)行包的流水線操作一個(gè)FP包含8條指令,可分成1~8個(gè)EP,每個(gè)EP是并行執(zhí)行的指令,每條指令在1個(gè)獨(dú)立的功能單元內(nèi)執(zhí)行。當(dāng)一個(gè)取值包包含多個(gè)執(zhí)行包時(shí),這時(shí)將出現(xiàn)流水線阻塞。6.1流水線操作圖6-4流水線阻塞圖取指包在指令周期1~4時(shí),通過(guò)取指級(jí)的4個(gè)節(jié)拍,同時(shí)1~4的每個(gè)指令周期都有1個(gè)新取指包進(jìn)入PG節(jié)拍;在第5個(gè)指令周期的DP節(jié)拍,CPU掃描FPn的P位,檢測(cè)出有3個(gè)執(zhí)行包EPk~EPk+2,迫使流水線阻塞,允許EPk+1和EPk+2在第6和7個(gè)指令周期進(jìn)入DP節(jié)拍,一旦EPk+2進(jìn)入DC節(jié)拍,流水線阻塞也被釋放;6.1流水線操作FPn+1~FPn+4在第6和7個(gè)指令周期被阻塞,F(xiàn)Pn+5在第6和7個(gè)指令周期也被阻塞,直到第8個(gè)指令周期后才進(jìn)入PG節(jié)拍:第8個(gè)指令周期后流水線將連續(xù)操作,直至又有多個(gè)執(zhí)行包進(jìn)入DP節(jié)拍或有中斷發(fā)生。圖6-4

流水線阻塞圖6.1流水線操作(2)多周期NOP指令對(duì)流水線運(yùn)行的影響單周期NOP指令與其它代碼在一個(gè)執(zhí)行包中。LD、ADD、和MPY指令的結(jié)果在適當(dāng)指令周期是可用的,NOP指令對(duì)執(zhí)行包無(wú)影響。圖6-5NOP與其它代碼在一個(gè)執(zhí)行包6.1流水線操作用一個(gè)多周期NOP5代替單周期NOP指令。NOP5將產(chǎn)生除它的執(zhí)行包內(nèi)部指令操作之外的空操作。在NOP5指令周期完成之前,任何其它指令不能使用LD、ADD、和MPY指令的結(jié)果。圖6-6

用多周期NOP指令代替單周期NOP指令6.1流水線操作跳轉(zhuǎn)指令可以影響多周期NOP指令的執(zhí)行,當(dāng)一個(gè)跳轉(zhuǎn)指令延遲間隙結(jié)束時(shí),多周期NOP指令不管是否結(jié)束,這時(shí)跳轉(zhuǎn)都將廢棄多周期NOP指令。圖6-7

跳轉(zhuǎn)指令對(duì)多周期NOP指令的影響6.1流水線操作6.1.4.存儲(chǔ)器對(duì)流水線性能的影響

TMS320DM6437片內(nèi)為哈佛結(jié)構(gòu),即存儲(chǔ)器分為程序指令存儲(chǔ)空間和數(shù)據(jù)存儲(chǔ)空間,是一種并行體系結(jié)構(gòu)。與兩個(gè)存儲(chǔ)器相對(duì)應(yīng)的是體系中設(shè)置了程序總線和數(shù)據(jù)總線兩條總線,從而使數(shù)據(jù)的吞吐率提高了數(shù)倍。

6.1流水線操作

為了進(jìn)一步提高運(yùn)行速度和靈活性進(jìn)行改進(jìn):(1)允許數(shù)據(jù)存放在程序存儲(chǔ)器中,并被算術(shù)運(yùn)算指令直接使用,增強(qiáng)了芯片的靈活性;(2)將指令暫存在高速緩沖器中,當(dāng)執(zhí)行此指令時(shí),不需要再?gòu)拇鎯?chǔ)器中讀取指令,節(jié)省了取指令周期。由于數(shù)據(jù)讀入和程序取指,內(nèi)存訪問(wèn)被分為多個(gè)階段,這保證了TMS320C64x系列的DSP能進(jìn)行內(nèi)存訪問(wèn)。6.1流水線操作

存儲(chǔ)器對(duì)流水線性能的影響主要為存儲(chǔ)器阻塞。對(duì)于程序存儲(chǔ)器,存儲(chǔ)器阻塞發(fā)生在PW節(jié)拍。對(duì)于數(shù)據(jù)存儲(chǔ)器則發(fā)生在E3節(jié)拍。存儲(chǔ)器阻塞會(huì)使處于該流水線的所有節(jié)拍延長(zhǎng)1個(gè)指令周期以上,從而使執(zhí)行增加額外的指令周期。圖6-8

存儲(chǔ)器阻塞圖6.1流水線操作6.2DSP的中斷系統(tǒng)1.中斷的基礎(chǔ)知識(shí)中斷類(lèi)型和優(yōu)先級(jí)中斷是由硬件或軟件驅(qū)動(dòng)的信號(hào),為使CPU具有對(duì)外界異步事件的處理能力而設(shè)置的。中斷信號(hào)使DSP暫停正在執(zhí)行的程序,接受并響應(yīng)中斷請(qǐng)求,進(jìn)入中斷服務(wù)程序。中斷過(guò)程包括保存當(dāng)前進(jìn)程的上下文、完成中斷任務(wù)、恢復(fù)寄存器和進(jìn)程上下文、恢復(fù)原始進(jìn)程。中斷一旦被正確啟用,CPU將開(kāi)始處理中斷并將程序流重新定向到中斷服務(wù)程序。TMS320DM6437的CPU有3種類(lèi)型中斷,即RESET(復(fù)位)、不可屏蔽中斷(NMI)和可屏蔽中斷(INT4~I(xiàn)NT15)。3種中斷的優(yōu)先級(jí)別不同,復(fù)位具有最高優(yōu)先級(jí)。優(yōu)先級(jí)別見(jiàn)表6-4。表6-4中斷優(yōu)先級(jí)表6.2DSP的中斷系統(tǒng)(1)復(fù)位RESET

具有最高級(jí)別中斷,復(fù)位中斷時(shí)正在執(zhí)行的指令中止,所有的寄存器返回到默認(rèn)狀態(tài)。復(fù)位是低電平有效信號(hào),必須保證低電平10個(gè)時(shí)鐘周期,然后再變高才能正確重新初始化CPU。復(fù)位中斷服務(wù)的取指包必須位于特定設(shè)備的特定地址。復(fù)位中斷不受分支指令的影響。6.2DSP的中斷系統(tǒng)(2)不可屏蔽中斷(NMI)

不可屏蔽中斷優(yōu)先級(jí)為2,它通常用來(lái)向CPU發(fā)出嚴(yán)重硬件問(wèn)題的警報(bào)。出現(xiàn)在NMI線上的請(qǐng)求,不受中斷標(biāo)志位IF的影響,在當(dāng)前指令執(zhí)行完以后,CPU立即無(wú)條件響應(yīng)。為實(shí)現(xiàn)此中斷,在中斷使能寄存器中的不可屏蔽中斷使能位(NMIE)必須置1。NMIE為0時(shí),所有可屏蔽中斷(INT4~I(xiàn)NT15)均都被禁止。6.2DSP的中斷系統(tǒng)(3)可屏蔽中斷(INT4~I(xiàn)NT15)

可被CPU通過(guò)指令限制某些設(shè)備發(fā)出中斷請(qǐng)求的中斷。有12個(gè)可屏蔽中斷,它們被鏈接到芯片外部或片內(nèi)外設(shè),也可由軟件控制或者不用。I/O設(shè)備發(fā)出的所有中斷都可以產(chǎn)生可屏蔽中斷,受標(biāo)志位IF的影響,根據(jù)中斷循環(huán)標(biāo)志的設(shè)置來(lái)判斷CPU是否響應(yīng)中斷請(qǐng)求。中斷發(fā)生時(shí)將中斷標(biāo)志寄存器(IFR)的相應(yīng)位置為1。6.2DSP的中斷系統(tǒng)中斷服務(wù)表(IST)IST是包含中斷服務(wù)代碼的取指包的一個(gè)地址表。當(dāng)CPU開(kāi)始處理一個(gè)中斷服務(wù)時(shí),它要參照IST進(jìn)行。IST包含16個(gè)連續(xù)取指包,每個(gè)中斷服務(wù)取指包都含8條指令。圖6-9給出了IST的地址和內(nèi)容。圖6-9

中斷服務(wù)表6.2DSP的中斷系統(tǒng)中斷服務(wù)取指包(ISFP)當(dāng)中斷服務(wù)程序很小時(shí),可以把它放在一個(gè)單獨(dú)的取指包內(nèi),為了中斷結(jié)束后能夠返回主程序,F(xiàn)P中包含一條跳轉(zhuǎn)到中斷返回指針?biāo)赶虻刂返闹噶?。接著是一條NOP5指令,它使跳轉(zhuǎn)目標(biāo)能夠有效地進(jìn)入流水線的執(zhí)行級(jí)。若無(wú)這條指令,CPU將會(huì)在跳轉(zhuǎn)前執(zhí)行下一個(gè)ISFP中的5個(gè)執(zhí)行包。

圖6-10單獨(dú)的中斷取指包6.2DSP的中斷系統(tǒng)中斷服務(wù)表指針寄存器(ISTP)ISTP用于確定中斷服務(wù)程序在中斷服務(wù)表中的地址。ISTP中的ISTB確定IST的地址的基值,HPEINT確定當(dāng)前響應(yīng)的中斷,并給出這一特定中斷取指包在IST中的位置。6.2DSP的中斷系統(tǒng)圖6-12

ISTP格式描述表6-5ISTP字段描述6.2DSP的中斷系統(tǒng)2.中斷控制寄存器TMS320DM6437芯片控制寄存器組中有下列8個(gè)寄存器涉及中斷控制寄存器:(1)控制狀態(tài)寄存器(CSR)

控制全局使能或禁止中斷。該寄存器用于標(biāo)識(shí)一些狀態(tài),其中包括全局中斷使能、高速緩沖存儲(chǔ)器的控制位和其它各種控制位和狀態(tài)位。在控制狀態(tài)寄存器中包含控制中斷的兩個(gè)域,即GIE和PGIE。全局中斷使能(GIE)允許通過(guò)控制單個(gè)位的值來(lái)使能或禁止所有的可屏蔽中斷。6.2DSP的中斷系統(tǒng)圖6-14CSR格式全局禁用可屏蔽中斷的代碼:MVCCSR,B0;AND-2,B0,B0;MVCB0,CSR;全局使能可屏蔽中斷的代碼:MVCCSR,B0;OR1,B0,B0;MVCB0,CSR;表6-6CSR字段描述(2)中斷使能寄存器(IER)

該寄存器用于標(biāo)識(shí)某個(gè)中斷是使能還是禁止。格式圖6-15所示。圖6-15IER格式使能一個(gè)中斷(INT9)的代碼:MVK200h,B1;MVCIER,B0;ORB1,B0,B0;MVCB0,IER;禁用一個(gè)中斷(INT9)的代碼:MVKFDFFh,B1;MVCIER,B0;ANDB1,B0,B0;MVCB0,IER;6.2DSP的中斷系統(tǒng)該寄存器用于顯示中斷標(biāo)志。給出有中斷請(qǐng)求但尚未得到服務(wù)的中斷,存在于等待中斷的狀態(tài)中,包括INT4-INT15和不可屏蔽中斷的狀態(tài)。圖6-16

IFR格式(3)中斷標(biāo)志寄存器(IFR)、中斷設(shè)置寄存器(ISR)、中斷清除寄存器(ICR)設(shè)置一個(gè)中斷(INT6)并讀標(biāo)志寄存器的代碼:MVK40h,B3MVCB3,ISRNOPMVCIFR,B4清除一個(gè)中斷(INT6)并讀標(biāo)志寄存器的代碼:MVK40h,B3MVCB3,ICRNOP

MVCIFR,B46.2DSP的中斷系統(tǒng)(4)中斷設(shè)置寄存器(ISR)

人工設(shè)置IFR中的標(biāo)志位,使用它手動(dòng)清除IFR中的可屏蔽中斷(INT15-INT4)。該寄存器用于標(biāo)識(shí)是否允許軟件控制來(lái)設(shè)置中斷。圖6-17

ISR格式6.2DSP的中斷系統(tǒng)(5)中斷清零寄存器(ICR)

人工清除IFR中的標(biāo)志位,使用它手動(dòng)完成中斷處理。該寄存器用于標(biāo)識(shí)是否允許軟件來(lái)清除中斷。ICR格式如下圖所示。圖6-18ICR格式另外,ISR和ICR可用程序設(shè)置和清除IFR中的可屏蔽中斷位,設(shè)置和清除操作不影響NMI和復(fù)位。6.2DSP的中斷系統(tǒng)(6)不可屏蔽中斷返回指針寄存器(NRP)NRP保存從不可屏蔽中斷返回時(shí)的指針,該指針引導(dǎo)CPU返回到原來(lái)程序執(zhí)行的正確位置。當(dāng)NMI完成服務(wù)時(shí),為返回到被中斷的原程序中,在中斷服務(wù)程序末尾必須安排一條跳轉(zhuǎn)到NRP指令(BNRP)。從NMI返回的代碼:BNRP;NOP5;延遲間隙6.2DSP的中斷系統(tǒng)(7)可屏蔽中斷返回指針寄存器(IRP)IRP保存從可屏蔽中斷返回時(shí)的指針,該指針引導(dǎo)CPU返回到原來(lái)程序執(zhí)行的正確位置。當(dāng)可屏蔽中斷完成服務(wù)時(shí),為返回到被中斷的原程序中,在中斷服務(wù)程序末尾必須安排一條跳轉(zhuǎn)到NRP指令。從一個(gè)可屏蔽中斷返回的代碼:BIRP;NOP5;延遲間隙6.2DSP的中斷系統(tǒng)(8)中斷—復(fù)位狀態(tài)復(fù)位后,控制寄存器及控制位的中值如下:AMR,ISR,ICR,IFR及ISTP=0h;IER=1h;IRP和NRP未定義;CSR的位15~位0=100h(小終端模式)=000h(大終端模式)表6-7中斷控制寄存器描述6.2DSP的中斷系統(tǒng)3.中斷響應(yīng)過(guò)程根據(jù)TMS320DM6437的中斷機(jī)制,可以把中斷分為三部分:中斷請(qǐng)求、中斷

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論