DSP技術(shù)及應(yīng)用課件_第1頁(yè)
DSP技術(shù)及應(yīng)用課件_第2頁(yè)
DSP技術(shù)及應(yīng)用課件_第3頁(yè)
DSP技術(shù)及應(yīng)用課件_第4頁(yè)
DSP技術(shù)及應(yīng)用課件_第5頁(yè)
已閱讀5頁(yè),還剩438頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第1章:TMS320LF240x概述1.1TMS320系列DSP概況1.2TMS320LF240x芯片概述1.3TMS320LF240xDSPCPU控制器的功能結(jié)構(gòu)圖1.4TMS320LF240xDSP引腳功能介紹1.5TMS320LF240xDSP存儲(chǔ)器映射圖

1.1TMS320系列DSP概況數(shù)字信號(hào)處理系統(tǒng)框圖

1.1TMS320系列DSP概況1.DSP與DSP技術(shù)☉DSP(DigitalSignalProcessing)數(shù)字信號(hào)處理的理論和方法。☉DSP(DigitalSignalProcessor)用于數(shù)字信號(hào)處理的可編程微處理器。☉DSP技術(shù)(DigitalSignalProcess)是利用專門(mén)或通用數(shù)字信號(hào)處理芯片,通過(guò)數(shù)字計(jì)算的方法對(duì)信號(hào)進(jìn)處理的方法與技術(shù)。

1.1TMS320系列DSP概況2.CPU、MCU、DSP區(qū)別與聯(lián)系

20世紀(jì)70年代微處理器問(wèn)世以來(lái),一直沿著3個(gè)方向發(fā)展。這三類微處理器各有其特點(diǎn)。雖然在技術(shù)上不斷借鑒和交融,但又有各自不同的應(yīng)用領(lǐng)域。☉CPU:微型計(jì)算機(jī)中央處理器。(如:奔騰等)☉MCU:?jiǎn)纹⑿陀?jì)算機(jī)(如MCS-51,MCS-96等)☉DSP:可編程的數(shù)字信號(hào)處理器。

1.1TMS320系列DSP概況3.DSP技術(shù)發(fā)展的兩個(gè)領(lǐng)域☉理論:數(shù)字信號(hào)處理的理論和方法近年來(lái)得到迅速的發(fā)展,為各種實(shí)時(shí)處理的應(yīng)用提供了方法基礎(chǔ)。如:聲音圖像壓縮編碼,加密解密,調(diào)制解調(diào),智能天線。☉應(yīng)用:為了滿足市場(chǎng)需求,隨著微電子科學(xué)與技術(shù)的進(jìn)步,DSP的性能在迅速提高。如:時(shí)鐘頻率達(dá)到1.1GHZ;處理速度每秒90億次,32位浮點(diǎn)運(yùn)算,吞吐率達(dá)到2Gbit/s☉兩者關(guān)系:理論推動(dòng)了應(yīng)用,應(yīng)用促進(jìn)理論的發(fā)展。

1.1TMS320系列DSP概況4.DSP的理論基礎(chǔ)它以眾多的經(jīng)典理論體系作為自己的理論基礎(chǔ),同時(shí)它又是新興學(xué)科理論基礎(chǔ)。經(jīng)典理論體系:微積分,概率統(tǒng)計(jì),隨機(jī)過(guò)程,數(shù)值分析,網(wǎng)絡(luò)理論,通信理論,控制論。新興學(xué)科:人工智能,模擬識(shí)別,神經(jīng)網(wǎng)絡(luò)。

1.1TMS320系列DSP概況5.DSP的實(shí)現(xiàn)方法☉PC機(jī)軟件實(shí)現(xiàn)。☉PC機(jī)+專用處理機(jī)。☉通用單片機(jī)(51、96系列等)☉專用DSP芯片。☉通用可編程DSP芯片。1.1TMS320系列DSP概況6.DSP系統(tǒng)的特點(diǎn)(與模擬信號(hào)處理系統(tǒng)相比)☉接口簡(jiǎn)單、方便☉精度高、抗干擾能力強(qiáng),穩(wěn)定性好☉編程方便、易于實(shí)現(xiàn)復(fù)雜算法☉可程控☉集成方便1.1TMS320系列DSP概況7.DSP芯片的結(jié)構(gòu)特點(diǎn)(1)改進(jìn)的哈佛結(jié)構(gòu)

1.1TMS320系列DSP概況

(2)多總線結(jié)構(gòu)

多總線結(jié)構(gòu)可以保證在一個(gè)機(jī)器周期內(nèi)多次訪問(wèn)程序空間和數(shù)據(jù)空間。如:TMS320C54x內(nèi)部有P、C、D、E4條總線(每條總線又包括地址總線和數(shù)據(jù)總線),可以在一個(gè)機(jī)器周期內(nèi)從程序存儲(chǔ)器取1條指令、從數(shù)據(jù)存儲(chǔ)器讀2個(gè)操作數(shù)和向數(shù)據(jù)存儲(chǔ)器寫(xiě)1個(gè)操作數(shù),大大提高了DSP的運(yùn)行速度。1.1TMS320系列DSP概況

(3)流水線技術(shù)(pipeline)DSP處理器流水線技術(shù)是將各指令的各個(gè)步驟重疊起來(lái)執(zhí)行,而不是一條指令執(zhí)行完成之后,才開(kāi)始執(zhí)行下一條指令。1.1TMS320系列DSP概況

(4)多處理單元

DSP內(nèi)部一般包括多個(gè)處理單元,如算術(shù)邏輯運(yùn)算單元(ALU)、輔助寄存器運(yùn)算單元(ARAU)、累加器(ACC)及硬件乘法器(MUL)等。它們可以在一個(gè)指令周期內(nèi)同時(shí)進(jìn)行運(yùn)算。多處理單元結(jié)構(gòu),特別適用于大量乘加操作的矩陣運(yùn)算、濾波、FFT、Viterbi譯碼等。1.1TMS320系列DSP概況

(5)指令周期短、功能強(qiáng)采用4μmNMOS制造工藝,早期DSP的指令周期約400ns,運(yùn)算速度為5MIPS。采用高性能CMOS制造工藝,其運(yùn)行速度更快。TMS320LF240x運(yùn)行速度可達(dá)30MIPS,使得指令周期縮短到30MHz。TMS320C54x運(yùn)行速度可達(dá)100MIPS。TMS320C6203的時(shí)鐘為300MHz,運(yùn)行速度達(dá)到2400MIPS。

DSP指令功能強(qiáng)大,一條特殊指令可完成十分復(fù)雜的功能。如:TMS320C54x中的FIRS和LMS指令,分別用于系數(shù)對(duì)稱的FIR濾波器和LMS算法。1.1TMS320系列DSP概況

(6)運(yùn)算精度高早期DSP的字長(zhǎng)為8位,后來(lái)逐步提高到16位、24位、32位。為防止運(yùn)算過(guò)程中溢出,有的累加器達(dá)到40位。浮點(diǎn)DSP提供了更大的動(dòng)態(tài)范圍,如TMS320C3x、TMS320C4x等。

1.1TMS320系列DSP概況

(7)豐富的外設(shè)片內(nèi)具有主機(jī)接口(HPI)

直接存儲(chǔ)器訪問(wèn)控制器(DMAC)

外部存儲(chǔ)器擴(kuò)展口串行通信口中斷處理器鎖相環(huán)時(shí)鐘產(chǎn)生器測(cè)繪訪問(wèn)口(實(shí)現(xiàn)符合IEEE1149.1標(biāo)準(zhǔn)在片仿真)1.1TMS320系列DSP概況

(8)功耗低一般DSP芯片功耗為0.5~4W。

采用低功耗技術(shù)的DSP芯片只有0.1W,(電池供電)如:TMS3205510僅0.25mW,特別適用于便攜式數(shù)字終端。

1.1TMS320系列DSP概況DSP最重要的特點(diǎn):特殊的內(nèi)部結(jié)構(gòu)、強(qiáng)大的信息處理能力及較高的運(yùn)行速度。DSP芯片是高性能系統(tǒng)的核心:DSP能實(shí)時(shí)處理大量數(shù)據(jù),特別是在聲音、圖像等不允許時(shí)間延遲領(lǐng)域的應(yīng)用十分理想。如:DSP已成了全球70%數(shù)字電話的“心臟”,同時(shí)DSP在網(wǎng)絡(luò)領(lǐng)域也有廣泛的應(yīng)用。1.1TMS320系列DSP概況8.DSP芯片的分類(1)按用途分類通用型DSP芯片(本課程主要討論的芯片)一般指可以用指令編程的DSP芯片,適合普通的DSP應(yīng)用,如TI公司的一系列DSP芯片屬于通用型DSP芯片。專用型DSP芯片為特定的DSP運(yùn)算而設(shè)計(jì),如數(shù)字濾波、卷積和FFT等,通過(guò)加載數(shù)據(jù)、控制參數(shù)或在管腳上加控制信號(hào)的方法使其具有有限的可編程能力。如Motorola公司的DSP56200。

1.1TMS320系列DSP概況(2)按數(shù)據(jù)格式分定點(diǎn)DSP

數(shù)據(jù)以定點(diǎn)格式工作的DSP芯片稱為定點(diǎn)DSP芯片,該芯片簡(jiǎn)單、成本較低。兩種基本表示方法:

?整數(shù)表示方法:主要用于控制操作、地址計(jì)算和其他非信號(hào)處理的應(yīng)用。

?小數(shù)表示方法:主要用于數(shù)字和各種信號(hào)處理算法的計(jì)算中。定點(diǎn)表示并不意味著一定是整數(shù)表示。1.1TMS320系列DSP概況(2)按數(shù)據(jù)格式分浮點(diǎn)DSP

數(shù)據(jù)以浮點(diǎn)格式工作的DSP芯片稱為浮點(diǎn)DSP芯片,該芯片運(yùn)算精度高、運(yùn)行速度快。浮點(diǎn)數(shù)在運(yùn)算中,表示數(shù)的范圍由于其指數(shù)可自動(dòng)調(diào)節(jié),因此可避免數(shù)的規(guī)格化和溢出等問(wèn)題。但浮點(diǎn)DSP一般比定點(diǎn)DSP復(fù)雜,成本較高。1.1TMS320系列DSP概況9.DSP芯片的發(fā)展及趨勢(shì)

(1)DSP芯片的發(fā)展歷程

☉1978年第一片DSP誕生S2811(Microsystems公司AMI子公司)

☉1986年以來(lái)得到突飛猛進(jìn)的發(fā)展。☉現(xiàn)今:生產(chǎn)DSP廠家80多個(gè),品種300多種。TI公司市場(chǎng)份額:60%;AD公司市場(chǎng)份額:15%;Motorola市場(chǎng)份額:10%;Lucent市場(chǎng)份額:5%;

1.1TMS320系列DSP概況(2)TI公司DSP芯片簡(jiǎn)介

?

第一代:TMS32010及其系列產(chǎn)品(1982年)

?

第二代:TMS32020、TMS320C25/C26/C28

?

第三代:TMS320C30/C31/C32,

?

第四代:TMS320C40/C44,

?

第五代:TMS320C50/C51/C52/C53/C54和集多個(gè)DSP于一體的高性能DSP芯片TMS320C80/C82等

?

第六代:TMS320C62x/C67x等。

1.1TMS320系列DSP概況(3)國(guó)內(nèi)DSP的發(fā)展概況☉1983年引進(jìn)(TMS32010)☉我國(guó)DSP產(chǎn)品主要來(lái)自海外。TI公司的產(chǎn)品約占國(guó)內(nèi)DSP市場(chǎng)的90%,其余為L(zhǎng)ucent、AD、Motorola、ZSP和NEC等公司。☉現(xiàn)狀:DSP開(kāi)發(fā)工具

/DSP硬件平臺(tái)開(kāi)發(fā)

/DSP應(yīng)用軟件開(kāi)發(fā)☉國(guó)內(nèi)較知名的公司:北京“聞亭”、“合眾達(dá)”等。

1.1TMS320系列DSP概況10.DSP芯片的應(yīng)用☉通用數(shù)字信號(hào)處理☉語(yǔ)音識(shí)別與處理☉圖形/圖像處理☉儀器儀表

☉自動(dòng)控制☉醫(yī)學(xué)工程☉家用電器☉通信☉計(jì)算機(jī)☉國(guó)防軍事

1.1TMS320系列DSP概況11.TMS320系列DSP發(fā)展歷程1.1TMS320系列DSP概況1.C1x系列簡(jiǎn)介

?C1x是TMS320系列DSP的首要成員,包括C10、C14、C15、C16和C17五個(gè)版本。

?C1x是市場(chǎng)上最便宜的DSP之一,主要應(yīng)用于防抱死制動(dòng)、音樂(lè)器材、能量測(cè)量、馬達(dá)控制和數(shù)字無(wú)磁帶應(yīng)答機(jī)等領(lǐng)域。1.1TMS320系列DSP概況2.C2x系列簡(jiǎn)介

?C2x系列DSP控制器,具有很好的性能,集成了Flash存儲(chǔ)器、高速A/D、CAN模塊等。

?C2x系列DSP芯片價(jià)格低,具有較高的性能和適用于數(shù)字化控制領(lǐng)域的功能。因此在工業(yè)自動(dòng)化、電動(dòng)機(jī)控制、家用電器和消費(fèi)電子等領(lǐng)域得到廣泛應(yīng)用。1.1TMS320系列DSP概況3.C2xx系列簡(jiǎn)介

?TMS320C2xx系列DSP是C2x的一個(gè)升級(jí)版本,它的指令周期縮減到25~50ns,增加了基于JTAG的仿真,有多達(dá)4.5K的片內(nèi)數(shù)據(jù)/程序RAM。

?主要面向計(jì)算機(jī)、工業(yè)、用戶終端和電話等新的DSP應(yīng)用。1.1TMS320系列DSP概況4.C5x系列簡(jiǎn)介

C5x系列DSP芯片包括C54x和C55x兩大類

?C54x:具有高度的操作靈活性和運(yùn)行速度。其結(jié)構(gòu)采用改進(jìn)的哈佛結(jié)構(gòu),具有專用硬件邏輯的CPU,片內(nèi)存儲(chǔ)器,片內(nèi)外設(shè),以及一個(gè)效率很高的指令集。

16位定點(diǎn)DSP,適應(yīng)遠(yuǎn)程通信等實(shí)時(shí)嵌入式應(yīng)用的需要。1.1TMS320系列DSP概況

?C55x:是C5000系列DSP中的子系列,是從C54x發(fā)展起來(lái)的,并與之原代碼兼容。

C55x工作在0.9V時(shí),功耗低至0.005mW/MIPS。工作在400MHz鐘頻時(shí),可達(dá)800MIPS。和120MHz的C54相比,300MHz的C55x性能提高5倍,功耗為C54系列的1/6。因此,C55x非常適合個(gè)人的和便攜式的應(yīng)用,以及數(shù)字通信設(shè)施的應(yīng)用。

1.1TMS320系列DSP概況5.C6x系列簡(jiǎn)介

TMS320C6x系列是TI公司從1997年推出。采用TI的專利技術(shù)VeloiTI和新的超長(zhǎng)指令字結(jié)構(gòu),性能達(dá)到很高的水平。

?

第一款芯片’C6201,在200MHz鐘頻時(shí),達(dá)到1600MIPS。

?

2000年以后推出的’C64x,在鐘頻1.1GHz時(shí),可以達(dá)到8800MIPS以上,即每秒執(zhí)行近90億條指令。片內(nèi)DMA引擎和64個(gè)獨(dú)立的通道,使其I/O帶寬達(dá)到2GB/s。

1.1TMS320系列DSP概況C6x推出了C62x/C67x/C64x等3個(gè)子系列。

?

C62x是TI公司于1997年開(kāi)發(fā)的一種新型定點(diǎn)DSP芯片??赏瑫r(shí)執(zhí)行8條指令,其運(yùn)算能力可達(dá)2400MIPS。

?

C67x是一種新型浮點(diǎn)DSP芯片??赏瑫r(shí)執(zhí)行8條指令,其運(yùn)算能力可達(dá)1GFLOPS。

?

C64x是C6000系列中最新的高性能定點(diǎn)DSP芯片,可以提供超過(guò)2GB/s的持續(xù)帶寬。與C62x相比,C64x的總性能提高了10倍。1.1TMS320系列DSP概況TMS320C6x系列主要應(yīng)用

1)數(shù)字通信適合于FFT/IFFT,Read-Solomon編解碼,循環(huán)回聲綜合濾波器,星座編解碼,卷積編碼,Viterbi解碼等信號(hào)處理算法的實(shí)時(shí)實(shí)現(xiàn)。如

?ADSL(非對(duì)稱數(shù)字用戶線),

?

線纜調(diào)制解調(diào)器(cablemodem)

?

移動(dòng)通信(移動(dòng)電話基站、3G基站里的收發(fā)器、智能天線、)1.1TMS320系列DSP概況2)圖像處理

C6x系列DSP廣泛地應(yīng)用在圖像處理領(lǐng)域。例如,數(shù)字電視、數(shù)字照相機(jī)與攝像機(jī)、打印機(jī)、數(shù)字掃描儀、雷達(dá)/聲吶及醫(yī)用圖像處理等,在這些應(yīng)用中,DSP用來(lái)做圖像壓縮、圖像傳輸、模式及光學(xué)特性識(shí)別、加密/解密及圖像增強(qiáng)等。

1.2TMS320LF240x芯片概述TMS320LF240x系列是TMS320C2x家族中最新、功能強(qiáng)大的DSP芯片,是為了滿足控制應(yīng)用而設(shè)計(jì)的。高性能、高速度:集成了高性能的DSP內(nèi)核和微處理器的片內(nèi)外設(shè);每秒3000萬(wàn)條指令(30MIPS)的處理速度。高可靠性、可編程性:LF240xDSP的16位定點(diǎn)DSP內(nèi)核為模擬系統(tǒng)的設(shè)計(jì)者提供了一個(gè)不犧牲系統(tǒng)精度和性能的數(shù)字解決方案。1.2TMS320LF240x芯片概述兩個(gè)事件管理器模塊EVA和EVB,為開(kāi)發(fā)者提供完整的、高效的馬達(dá)控制方案,提供所有的PWM和IO,可以控制所有類型的電機(jī)。采用高性能靜態(tài)CMOS技術(shù),使得供電電壓降為3.3V,減少了控制器的損耗;30MIPS的執(zhí)行速度使得指令周期縮短到33ns,從而提高了控制器的實(shí)時(shí)控制能力。片內(nèi)有高達(dá)32K×16位的Flash程序存儲(chǔ)器;高達(dá)2.5K字×16位的數(shù)據(jù)/程序RAM;544字節(jié)雙端口RAM(DARAM);2K字的單口RAM(SARAM)。可擴(kuò)展的外部存儲(chǔ)器總共具有192K×16位的空間,分別為64K字程序存儲(chǔ)器空間、64K字的數(shù)據(jù)存儲(chǔ)空間和64K字的I/O空間。1.2TMS320LF240x芯片概述10位ADC轉(zhuǎn)換器,其特性為:最小轉(zhuǎn)換時(shí)間為500ns、8個(gè)或16個(gè)多路復(fù)用的輸入通道,采集時(shí)間和轉(zhuǎn)換時(shí)間分開(kāi),提高了采樣率和輸入阻抗,并且支持自動(dòng)順序采樣,不需CPU干預(yù)。CAN總線控制器,可以為控制器、傳感器、激勵(lì)源以及其它節(jié)點(diǎn)提供良好的通訊,特別適用于工業(yè)現(xiàn)場(chǎng)和汽車等強(qiáng)噪聲和惡劣的環(huán)境中。5個(gè)外部中斷(兩個(gè)驅(qū)動(dòng)保護(hù)、復(fù)位和兩個(gè)可屏蔽中斷)。1.3TMS320LF240xDSPCPU控制器的功能結(jié)構(gòu)圖1.4TMS320LF240xDSP引腳功能介紹TMS320LF2407控制器具有144個(gè)引腳,如圖1.1所示(p.2)TMS320LF2407控制器是所有240x控制器中的一種功能最全的控制器,有該系列所有的信號(hào)。引腳功能如表1.1所示(p.3)1.5TMS320LF240xDSP存儲(chǔ)器映射圖第2章:TMS320LF240xDSP內(nèi)部資源介紹2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹2.2存儲(chǔ)器和I/O空間2.3系統(tǒng)配置和中斷2.4程序控制

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹中央處理單元(CPU)輸入定標(biāo)器乘法單元中央算術(shù)邏輯單元

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹1、輸入定標(biāo)移位器是一個(gè)16位到32位的滾動(dòng)式左向移位器;能將輸入的16位數(shù)據(jù)的0~15位在本周期內(nèi)向左移位以得到32位的輸出;本操作不需要額外的周期。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹移位器的輸入來(lái)源數(shù)據(jù)讀總線(DRDB),該輸入值來(lái)自指令操作數(shù)據(jù)所引用的數(shù)據(jù)存儲(chǔ)單元;程序讀總線(PRDB),改輸入是指令操作數(shù)給出的常數(shù)。移位量的來(lái)源嵌在指令字中的常數(shù)。把移位量放在指令字中,該程序代碼使用特定的數(shù)據(jù)比例;臨時(shí)寄存器TREG的提位。根據(jù)TREG的值移位,數(shù)據(jù)的定標(biāo)因子是動(dòng)態(tài)確定的,可適應(yīng)不同的系統(tǒng)要求。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹輸入移位器的輸出值最低有效位LSBs段填0;未使用的最高有效位MSBs填0或者根據(jù)狀態(tài)寄存器ST1的SXM位的值來(lái)確定是否需要進(jìn)行符號(hào)擴(kuò)展

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹2、乘法器16×16位的硬件乘法器,在單個(gè)周期內(nèi)產(chǎn)生一個(gè)32位乘積結(jié)果的有符號(hào)或無(wú)符號(hào)數(shù);除了MPYU指令,所有的乘法指令都執(zhí)行有符號(hào)的乘法操作。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹乘法器的輸入16位臨時(shí)寄存器(TREG),在乘法之前把數(shù)據(jù)讀總線的值加載到TREG;數(shù)據(jù)讀總線的數(shù)據(jù)存儲(chǔ)器值和程序讀總線的程序存儲(chǔ)器值。乘法器的輸出兩個(gè)輸入值相乘后的32位結(jié)果保存在乘積寄存器(PREG)中;PREG的輸出連接到32位的乘積定標(biāo)移位器(PSCALE),通過(guò)PSCALE將乘積結(jié)果送到CALU或數(shù)據(jù)存儲(chǔ)器。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹乘法定標(biāo)移位器(PSCALE)輸入:該移位器的32位輸入練到PREG的輸出。輸出:完成移位后,全部32位送到CALU,或?qū)⒔Y(jié)果的16位存到數(shù)據(jù)存儲(chǔ)器。移位模式:該移位器可用4中移位模式,這些模式由狀態(tài)寄存器ST1的乘積移位方式(PM)位確定。注:PREG的內(nèi)容保持不變,其值被復(fù)制到PSCALE中,進(jìn)行移位。PM移位說(shuō)明00不移位乘積結(jié)果沒(méi)有移位地送到CALU單元或數(shù)據(jù)總線01左移1位移去在一次2的補(bǔ)碼乘法運(yùn)算中產(chǎn)生的1位附加符號(hào)位,以得到一個(gè)Q31的乘積10左移4位當(dāng)與一個(gè)13位的常數(shù)相乘時(shí),移去在16×13位的2的補(bǔ)碼乘法運(yùn)算中產(chǎn)生的4位附加符號(hào)位,以生成一個(gè)Q31的乘積11右移6位對(duì)乘積結(jié)果進(jìn)行定標(biāo),以使得運(yùn)行128次的乘積累加器不會(huì)溢出

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹乘法器相關(guān)指令及操作用LT指令將數(shù)據(jù)從數(shù)據(jù)總線載入TREG提供1操作數(shù),MPY指令提供第2個(gè)操作數(shù)或從數(shù)據(jù)總線上得到。使用MPY指令時(shí),可以對(duì)一個(gè)13位的立即數(shù)進(jìn)行操作,每?jī)蓚€(gè)指令周期得到一個(gè)乘積。代碼執(zhí)行多路乘法和乘積求和運(yùn)算時(shí),CPU支持流水線操作。指令操作LT把通過(guò)CALU得到的前次乘積結(jié)果裝載到TREGLTP把PREG的值裝載入ACCLTA把PREG的值加載到ACCDMOV,LTD把PREG的值加到ACC,移位TREG輸入數(shù)據(jù)到數(shù)據(jù)存儲(chǔ)器的下一地址LTS從ACC中減去PREG的值

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹乘法器相關(guān)指令及操作乘且累加并帶動(dòng)數(shù)據(jù)移動(dòng)指令MAC和MACD充分利用了乘法器的計(jì)算寬度,允許兩個(gè)操作數(shù)被同時(shí)處理。無(wú)符號(hào)乘法運(yùn)算MPYU指令執(zhí)行大大方便了用于擴(kuò)展精度的算術(shù)運(yùn)算。平行并累加前次乘積指令SQRA和平方并減去前次乘積指令SQRS傳送相同的數(shù)到乘法器的兩個(gè)輸入端,以對(duì)一個(gè)數(shù)據(jù)存儲(chǔ)器單元的值進(jìn)行平方運(yùn)算。存儲(chǔ)乘積的高字節(jié)指令SPH和低字節(jié)指令SPL,可將裝入PREG的32位乘積結(jié)果傳送到CALU單元或數(shù)據(jù)存儲(chǔ)器。在執(zhí)行中斷服務(wù)程序前必須對(duì)PREG的值進(jìn)行保存。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹3、中央算術(shù)邏輯部分中央算術(shù)邏輯單元(CALU):實(shí)現(xiàn)各種算術(shù)、邏輯功能;32位累加器(ACC):接收來(lái)自CALU的輸出,并可以根據(jù)進(jìn)位位(C)的值來(lái)實(shí)現(xiàn)移位;輸出移位器:將ACC的高位字和低位字在送入數(shù)據(jù)存儲(chǔ)器之前進(jìn)行移位。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹中央算術(shù)邏輯單元(CALU)運(yùn)算功能:16位加、16位減、布爾邏輯操作、位測(cè)試、移動(dòng)和循環(huán)。輸入:一個(gè)由累加器提供,另一個(gè)由乘積定標(biāo)移位器或輸入數(shù)據(jù)定標(biāo)移位器提供。輸出:其結(jié)果送至32位累加器,進(jìn)行移位。相關(guān)狀態(tài)位:符號(hào)擴(kuò)展模式位SXM(ST1第10位)確定CALU是否進(jìn)行符號(hào)擴(kuò)展。SXM=0,抑制符號(hào)擴(kuò)展;SXM=1,進(jìn)行符號(hào)擴(kuò)展。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹累加器(ACC)功能:對(duì)送到ACC的CALU的運(yùn)算結(jié)果進(jìn)行單個(gè)移位和循環(huán)操作。輸入:CALU的運(yùn)算結(jié)果。輸出:ACC的高16位和低16位中任何一個(gè)都可送到輸出定標(biāo)移位器,經(jīng)定標(biāo)移位后存入數(shù)據(jù)存儲(chǔ)器。相關(guān)狀態(tài)位狀態(tài)位狀態(tài)寄存器說(shuō)明進(jìn)位位CST1第9位C=0:減結(jié)果產(chǎn)生借位/加結(jié)果未產(chǎn)生進(jìn)位;C=1:加結(jié)果產(chǎn)生進(jìn)位/減結(jié)果未產(chǎn)生借位;左移或左循環(huán),ACC最高位送至C,否則最低位送至C。溢出方式位OVMST0第11位決定ACC如何反映算術(shù)運(yùn)算的溢出。OVM=1:正溢出,ACC填充最大正數(shù),否則填充最大負(fù)數(shù);OVM=0:正常溢出。溢出標(biāo)志位OVST0第12位ACC未發(fā)生溢出時(shí),OV=0;否則OV=1且被莎存。測(cè)試/控制標(biāo)志位TCST1第11位根據(jù)被測(cè)試位的值,該位被置0或1。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹輸出定標(biāo)移位器將累加器輸出的內(nèi)容左移0~7位,移動(dòng)位數(shù)由存儲(chǔ)器指令指定,然后用SACH或SACL指令將移位器中的高位字或低位字保存到數(shù)據(jù)存儲(chǔ)器中,ACC的內(nèi)容不變。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹4、輔助寄存器算術(shù)邏輯單元(ARAU)在CALU操作的同時(shí)執(zhí)行8個(gè)輔助寄存器(AR7~AR0)上的算術(shù)運(yùn)算。8個(gè)輔助寄存器提供了靈活而有效的間接尋址。通過(guò)把數(shù)值0~7寫(xiě)入狀態(tài)寄存器ST0第3位的輔助寄存器指針(ARP),選擇一個(gè)輔助寄存器作為當(dāng)前AR。當(dāng)前AR存放被訪問(wèn)的數(shù)據(jù)存儲(chǔ)器的地址,根據(jù)指令的需要分別向數(shù)據(jù)讀/寫(xiě)地址總線讀/寫(xiě)數(shù)據(jù),使用完該數(shù)據(jù)后,當(dāng)前AR的內(nèi)容可以被ARAU增減,可實(shí)現(xiàn)無(wú)符號(hào)16位算術(shù)運(yùn)算。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹ARAU可執(zhí)行的操作將輔助寄存器值增、減1,或者增、減一個(gè)變址量(借助任何支持間接尋址的指令)。使輔助寄存器的值加/減一個(gè)常數(shù)(ADRK/SBRK指令),該常數(shù)是指令字的低8位。將AR0的內(nèi)容與當(dāng)前AR的內(nèi)容進(jìn)行比較,并把結(jié)果放入狀態(tài)寄存器ST1的測(cè)試/控制位TC(CMPR指令)。結(jié)果經(jīng)數(shù)據(jù)寫(xiě)總線DWEB傳送到TC。輔助寄存器的用途數(shù)據(jù)存儲(chǔ)器地址存儲(chǔ)器;通過(guò)CMPR指令,使輔助寄存器支持條件分支、調(diào)用及返回;用作暫存單元;用作軟件計(jì)數(shù)器,按需要對(duì)其進(jìn)行加、減。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹5、狀態(tài)寄存器兩個(gè)狀態(tài)寄存器ST0和ST1,含有各種狀態(tài)和控制位;可保存在數(shù)據(jù)存儲(chǔ)器,也可從數(shù)據(jù)存儲(chǔ)器加載,可以保存和恢復(fù)子程序的機(jī)器狀態(tài);加載狀態(tài)寄存器LST指令寫(xiě)ST0和ST1,保存狀態(tài)寄存器SST指令讀ST0和ST1;INTM位不受LST指令的影響;寄存器中每一位均可由SETC和CLRC指令單獨(dú)置位和清0。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹ARB輔助寄存器指針緩沖器:當(dāng)ARP被加載到ST0,除了使用LST指令外,原有的ARP值被復(fù)制到ARB中;當(dāng)通過(guò)LST#1指令加載ARB時(shí),把相同的值復(fù)制到ARP。ARP輔助寄存器指針:ARP選擇間接尋址時(shí)使用的當(dāng)前AR;當(dāng)ARP被加載時(shí),原有的ARP值被復(fù)制到ARB寄存器中;在講解尋址時(shí),ARP可由存儲(chǔ)器相關(guān)指令改變,也可由LARP、MAR和LST指令改變;當(dāng)執(zhí)行LST#1時(shí),ARP也可加載與ARB相同的值。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹OV溢出標(biāo)志位:該位鎖存的值指出CALU是否發(fā)生了溢出;發(fā)生溢出,OV=1,直到復(fù)位、溢出時(shí)條件轉(zhuǎn)移、無(wú)溢出時(shí)條件轉(zhuǎn)移或LST指令執(zhí)行時(shí)才被清0。OVM溢出方式位:該位決定如何管理CALU的溢出。SETC和CLRC指令分別可將該位置1或清0;LST指令也可修改該位;OVM=0,ACC結(jié)果正常溢出;OVM=1,根據(jù)發(fā)生的溢出,把ACC置為最大正值或負(fù)值。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹CNF片內(nèi)DARAM配置位:CNF=0,可配置雙口RAM被映射到數(shù)據(jù)存儲(chǔ)空間;CNF=1,可配置雙口RAM被映射到程序;該位可通過(guò)SETC、CLRC和LST指令修改;RS復(fù)位時(shí)該位清0。TC測(cè)試/控制標(biāo)志位:TC=1,由BIT或BITT指令測(cè)試位為1;利用NORM指令測(cè)試時(shí),ACC的2個(gè)最高有效位“異或”為真;CMRP所測(cè)試的當(dāng)前AR和AR0之間的比較條件成立。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹INTM中斷模式位:該位用來(lái)允許或禁止所有可屏蔽中斷。通過(guò)SETC和CLRC指令置1或清0;該位不影響不可屏蔽中斷RS和NMI;LST指令不影響該位;發(fā)生中斷及復(fù)位時(shí)置1;INTM=0,允許全部沒(méi)有被屏蔽的中斷;INTM=1,禁止全部沒(méi)有被屏蔽的中斷。DP數(shù)據(jù)存儲(chǔ)器頁(yè)指針:當(dāng)指令使用直接尋址方式時(shí),這個(gè)9位的DP寄存器與指令寄存器的低7位一起形成一個(gè)完整的數(shù)據(jù)存儲(chǔ)器16位地址。LST和LDP指令可修改該字段。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹SXM符號(hào)擴(kuò)展模式位:SXM=1數(shù)據(jù)通過(guò)定標(biāo)移位器傳送到累加器時(shí)產(chǎn)生符號(hào)擴(kuò)展,SXM=0抑制符號(hào)擴(kuò)展;該位不影響某些指令的基本操作,如ADDS指令不管SXM位的狀態(tài)如何都抑制符號(hào)擴(kuò)展;通過(guò)SECT、CLRC和LST指令對(duì)該位進(jìn)行置1、清0和加載;復(fù)位時(shí)該位置1。C進(jìn)位位:C=1,加法結(jié)果產(chǎn)生進(jìn)位或減法結(jié)果未產(chǎn)生借位;C=0,反之;移位16位的ADD指令只能使C位置1,SUB指令只能使C位清0,不會(huì)對(duì)C位產(chǎn)生其他影響;移1位、循環(huán)指令、SETC、CLRC和LST指令均影響該標(biāo)志位;條件轉(zhuǎn)移、調(diào)用和返回指令可根據(jù)C的狀態(tài)執(zhí)行;復(fù)位時(shí)該位置1。

2.1TMS320LF240xDSP的CPU內(nèi)部功能模塊介紹XF引腳狀態(tài)位:該位確定通用輸出引腳XF的狀態(tài);通過(guò)SECT、CLRC和LST指令對(duì)該位進(jìn)行置1、清0和加載;復(fù)位時(shí)該位置1。PM乘積移位模式:該位決定PREG的值是送往CALU或數(shù)據(jù)存儲(chǔ)器時(shí)如何移位;SPM和LST指令可以對(duì)該位加載;復(fù)位時(shí)該位清0。

PM=00,乘法器32位乘積不經(jīng)移位送到CALU或數(shù)據(jù)存儲(chǔ)器;

PM=01,送到CALU之前,PREG的輸出左移1位(低位填0);

PM=10,送到CALU之前,PREG的輸出左移4位(低位填0);

PM=11,PREG輸出進(jìn)行符號(hào)擴(kuò)展右移6位。注:PREG的內(nèi)容保持不變,其值被拷貝到乘積移位器中進(jìn)行移位。

2.2存儲(chǔ)器和I/O空間增強(qiáng)的哈佛結(jié)構(gòu),三組并行總線程序地址總線(PAB)數(shù)據(jù)讀地址總線(DRAB)數(shù)據(jù)寫(xiě)地址總線(DWAB)三個(gè)可獨(dú)立選擇的空間程序存儲(chǔ)器(64K字)數(shù)據(jù)存儲(chǔ)器(64K字)I/O空間(64K字)注意:LF240xDSP的所有片內(nèi)外設(shè)的寄存器均映射在數(shù)據(jù)存儲(chǔ)器空間。

2.2存儲(chǔ)器和I/O空間1、程序存儲(chǔ)器保存程序代碼及數(shù)據(jù)表信息和常量尋址范圍為64K,包括片內(nèi)DARAM和片內(nèi)FLASH訪問(wèn)片外程序地址空間時(shí),DSP自動(dòng)產(chǎn)生一個(gè)訪問(wèn)外部程序地址空間的信號(hào)PSLF2407的程序存儲(chǔ)器空間映射圖

2.2存儲(chǔ)器和I/O空間決定程序存儲(chǔ)器的配置兩個(gè)因素CNF位。CNF位是狀態(tài)寄存器ST1的第12位,決定DARAM中的B0塊配置在數(shù)據(jù)存儲(chǔ)器空間,還是配置在程序存儲(chǔ)器空間。CNF=0,256字的B0塊被映射到數(shù)據(jù)存儲(chǔ)器空間。CNF=1,256字的B0塊被映射到程序存儲(chǔ)器空間。

復(fù)位時(shí),CNF=0,B0塊被映射到數(shù)據(jù)存儲(chǔ)器空間。MP/MC引腳。該引腳決定是從片內(nèi)Flash讀取指令,還是從外部程序存儲(chǔ)器讀取指令。MP/MC=0:微控制器方式。此時(shí)訪問(wèn)的是片內(nèi)程序存儲(chǔ)器(片內(nèi)Flash)0000h-7FFFh空間。MP/MC=1:微處理器方式。此時(shí)訪問(wèn)的是片外程序存儲(chǔ)器的0000h-7FFFh空間。注:無(wú)論MP/MC引腳為何值,LF240xDSP都是從程序存儲(chǔ)器空間的0000h單元開(kāi)始執(zhí)行程序。

2.2存儲(chǔ)器和I/O空間2、數(shù)據(jù)存儲(chǔ)器尋址范圍64K字:前32K字(0000h-7FFFh)是內(nèi)部數(shù)據(jù)存儲(chǔ)器空間,包括了DARAM和片內(nèi)外設(shè)的映射寄存器;后32K字(8000h-FFFFh)空間的存儲(chǔ)器為外部數(shù)據(jù)存儲(chǔ)器。片內(nèi)有3個(gè)DARAM塊:B0、B1和B2塊。B0塊:即可為數(shù)據(jù)存儲(chǔ)器,也可配置為程序存儲(chǔ)器。B1、B2塊:只能配置為數(shù)據(jù)存儲(chǔ)器。LF2407的數(shù)據(jù)存儲(chǔ)器空間映射圖

2.2存儲(chǔ)器和I/O空間兩種尋址方式:直接尋址和間接尋址。直接尋址時(shí),128字為一頁(yè)的數(shù)據(jù)塊來(lái)對(duì)數(shù)據(jù)存儲(chǔ)器進(jìn)行尋址。右圖顯示了這些塊是如何被尋址的。全部64K的數(shù)據(jù)存儲(chǔ)器分為512個(gè)數(shù)據(jù)頁(yè),其標(biāo)號(hào)從0-511。當(dāng)前頁(yè)由狀態(tài)寄存器ST0中的9位數(shù)據(jù)頁(yè)指針(DP)值來(lái)確定。因此,當(dāng)使用直接尋址指令時(shí),用戶必須事先指定數(shù)據(jù)頁(yè),并在訪問(wèn)數(shù)據(jù)存儲(chǔ)器的指令中指定偏移量,偏移量為7位。數(shù)據(jù)存儲(chǔ)器頁(yè)

2.2存儲(chǔ)器和I/O空間編程時(shí)要注意,訪問(wèn)下面的數(shù)據(jù)存儲(chǔ)器的地址空間是非法的,并會(huì)對(duì)NMI置位。除了以下地址,任何對(duì)外設(shè)寄存器映射中的保留地址的訪問(wèn)也是非法的。

0080h-00FFh

701Fh-71FFh(CAN內(nèi)部的)

0500h-07FFh

7230h-73FFh(部分在CAN內(nèi)部)

1000h-700Fh

7440h-74FFh

7030h-703Fh

7540h-75FFh

7060h-706Fh

7600h-77EFh

77F4h-7FFFh

7080h-708Fh

2.2存儲(chǔ)器和I/O空間第0頁(yè)數(shù)據(jù)地址映射數(shù)據(jù)存儲(chǔ)器中包括存儲(chǔ)器映射寄存器,它們位于數(shù)據(jù)存儲(chǔ)器的第0頁(yè)(地址0000h-007Fh),下表是對(duì)第0頁(yè)數(shù)據(jù)地址映射的詳細(xì)說(shuō)明。應(yīng)用中必須注意以下幾點(diǎn):以零等待狀態(tài)訪問(wèn)兩個(gè)映射寄存器:中斷屏蔽寄存器(IMR)和中斷標(biāo)志寄存器(IFR)測(cè)試/仿真保留區(qū)被測(cè)試和仿真系統(tǒng)用于特定信息發(fā)送。因此不能對(duì)測(cè)試/仿真地址進(jìn)行操作。地址名稱描述0000h~0003h—保留0004hIMR中斷屏蔽寄存器0005h—保留0006hIFR中斷標(biāo)志寄存器0023h~0027h—保留002Bh~002Fh—保留用作測(cè)試和仿真0060h~007FhB2雙口RAM(DARAMB2)第0頁(yè)數(shù)據(jù)地址映射

2.2存儲(chǔ)器和I/O空間數(shù)據(jù)存儲(chǔ)器配置

CNF位決定B0塊的配置,CNF位是狀態(tài)寄存器ST1的第12位。CNF=0,B0塊被映射為數(shù)據(jù)存儲(chǔ)器空間;復(fù)位時(shí),CNF=0;CNF=1,B0塊被映射到程序存儲(chǔ)器空間;

2.2存儲(chǔ)器和I/O空間3、I/O空間尋址范圍為64K字。I/O空間訪問(wèn)的控制信號(hào)為IS。所有64K的I/O空間均可以用IN和OUT指令來(lái)訪問(wèn)。當(dāng)執(zhí)行IN或OUT指令時(shí),信號(hào)IS*變?yōu)橛行?可作為外部I/O設(shè)備的片選信號(hào)。訪問(wèn)外部I/O端口與訪問(wèn)程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器復(fù)用相同的的地址總線和數(shù)據(jù)總線。數(shù)據(jù)總線的寬度為16位,若使用8位的外設(shè),即可使用高8位數(shù)據(jù)總線,也可使用低8位數(shù)據(jù)總線,以適應(yīng)特定應(yīng)用的需要。當(dāng)訪問(wèn)片內(nèi)的I/O空間時(shí),信號(hào)IS和STRB變成無(wú)效,外部地址和數(shù)據(jù)總線僅僅當(dāng)訪問(wèn)外部I/O地址時(shí)有效。LF2407I/O空間地址映射圖

2.2存儲(chǔ)器和I/O空間下面是使用匯編語(yǔ)言的直接訪問(wèn)I/O空間的實(shí)際例子:IN

DAT2,0AFEEh;從端口地址為AFEEh的外設(shè)

;讀數(shù)據(jù),并存入DAT2寄存器OUT

DAT2,0CFEFh;輸出數(shù)據(jù)存儲(chǔ)器DAT2的內(nèi)容

;到端口地址為CFEFh的外設(shè)下面是訪問(wèn)等待狀態(tài)發(fā)生器的寄存器的實(shí)例:IN

DAT2,0FFFFh;從等待狀態(tài)發(fā)生器讀取數(shù)據(jù)到DAT2寄存器OUT

DAT2,0FFFFh;將DAT2寄存器的數(shù)據(jù)寫(xiě)入等待狀態(tài)發(fā)生器,使用等待狀態(tài)發(fā)生器

2.3系統(tǒng)配置和中斷本節(jié)介紹LF240xDSP的系統(tǒng)配置寄存器和中斷模塊。系統(tǒng)配置:用來(lái)對(duì)DSP片內(nèi)的功能模塊進(jìn)行用戶配置,根據(jù)具體用途來(lái)進(jìn)行模塊定制。中斷模塊:主要包括-中斷優(yōu)先級(jí)和中斷向量表、外設(shè)中斷擴(kuò)展控制器(PIE)、中斷向量、中斷響應(yīng)的流程、中斷響應(yīng)的延時(shí)、CPU中斷寄存器、外設(shè)中斷寄存器、復(fù)位、無(wú)效地址檢測(cè)、外部中斷控制寄存器。

2.3系統(tǒng)配置和中斷1、系統(tǒng)配置寄存器(1)、系統(tǒng)控制和狀態(tài)寄存器1(SCSR1)

SCSR1映射到數(shù)據(jù)存儲(chǔ)器空間的7018h,各位如下:位15:保留位14:CLKSRC,為CLKOUT引腳輸出時(shí)鐘源的選擇位0-CLKOUT引腳輸出CPU時(shí)鐘;1-CLKOUT引腳輸出WDCLK時(shí)鐘。位13、12:LPM1,LPM0,低功耗模式選擇,指明在執(zhí)行IDLE

指令后進(jìn)入哪一種低功耗模式。00-進(jìn)入IDLE1(LPM0)模式;01-進(jìn)入IDLE2(LPM1)模式;1x-進(jìn)入HALT(LPM2)模式。

2.3系統(tǒng)配置和中斷位11-9:CLKPS2-CLKPS0,(PLL)時(shí)鐘預(yù)定標(biāo)選擇位,選擇輸入時(shí)鐘頻率fin的倍頻系數(shù),如下表(P.28)所示。CLKPS2CLKPS1CLKPS0系統(tǒng)時(shí)鐘頻率0004×fin0012×fin0101.33×fin0111×fin1000.8×fin1010.66×fin1100.57×fin1110.5×fin

2.3系統(tǒng)配置和中斷位8:保留位7:ADCCLKEN,ADC模塊時(shí)鐘使能控制位0-禁止ADC模塊時(shí)鐘(節(jié)能)1-使能ADC模塊時(shí)鐘,且正常運(yùn)行位6:SCICLKEN,,SCI模塊時(shí)鐘使能控制位0-禁止SCI模塊時(shí)鐘(節(jié)能)1-使能SCI模塊時(shí)鐘,且正常運(yùn)行位5:SPICLKEN,,SPI模塊時(shí)鐘使能控制位0-禁止SPI模塊時(shí)鐘(節(jié)能)1-使能SPI模塊時(shí)鐘,且正常運(yùn)行

2.3系統(tǒng)配置和中斷位4:CANCLKEN,CAN模塊時(shí)鐘使能控制位0-禁止CAN模塊時(shí)鐘(節(jié)能)1-使能CAN模塊時(shí)鐘,且正常運(yùn)行位3:EVBCLKEN,EVB模塊時(shí)鐘使能控制位0-禁止EVB模塊時(shí)鐘(節(jié)能)1-使能EVB模塊時(shí)鐘,且正常運(yùn)行位2:EVACLKEN,EVA模塊時(shí)鐘使能控制位0-禁止EVA模塊時(shí)鐘(節(jié)能)1-使能EVA模塊時(shí)鐘,且正常運(yùn)行位1:保留位0:ILLADR,無(wú)效地址檢測(cè)位檢測(cè)到無(wú)效地址時(shí),該位置1。置1后需軟件來(lái)清0,即向該位寫(xiě)0即可。復(fù)位時(shí)該位為0。注意:任何無(wú)效的地址會(huì)導(dǎo)致不可屏蔽中斷(NMI)事件發(fā)生。

2.3系統(tǒng)配置和中斷(2)、系統(tǒng)控制和狀態(tài)寄存器2(SCSR2)

SCSR2映射到數(shù)據(jù)存儲(chǔ)器空間的7019h,各位如下:位15-7:保留位6:I/PQUAL,時(shí)鐘輸入限定,它限定輸入到LF240x的CAP1-6、XINT1-2、ADCSOC、PDPINTA/PDPINTB引腳上的最小脈沖寬度。脈沖寬度只有達(dá)到這個(gè)寬度之后,內(nèi)部的輸入狀態(tài)才會(huì)改變。0-鎖存脈沖至少需要5個(gè)時(shí)鐘周期;1-鎖存脈沖至少需要11個(gè)時(shí)鐘周期。如這些引腳作I/O使用,則不使用輸入時(shí)鐘限定電路。

2.3系統(tǒng)配置和中斷位5:WD保護(hù)位,該位可用來(lái)禁止WD工作。該位是—個(gè)只能清除的位,復(fù)位后=1。通過(guò)向該位寫(xiě)1對(duì)其清0。0-保護(hù)WD,防止WD被軟件禁止1-復(fù)位時(shí)的默認(rèn)值,禁止WD工作位4:XMIFHI-Z。該位控制外部存儲(chǔ)器接口信號(hào)(XMIF)。0-所有XMIF信號(hào)為正常驅(qū)動(dòng)模式(非高阻態(tài))1-所有XMIF信號(hào)處于高阻態(tài)

注意:該位僅對(duì)LF2407/LF2407A型號(hào)有效,對(duì)其它型號(hào)為保留位

2.3系統(tǒng)配置和中斷位3:使能位。這位反映了BOOTEN引腳在復(fù)位時(shí)的狀態(tài)。0-使能引導(dǎo)ROM。地址0000h-00FFh被片內(nèi)引導(dǎo)ROM塊占用。禁止用FLash存儲(chǔ)器1-禁止引導(dǎo)ROM。LF2407片內(nèi)Flash程序存儲(chǔ)器映射地址范圍為0000h-7FFFh。位2:MP/MC(微處理器/微控制器選擇)。0-DSP設(shè)置為微控制器方式,片內(nèi)FLASH映射到程序存儲(chǔ)器空間,地址為0000h-7FFFh。1-DSP設(shè)置為微處理器方式,程序空間0000h-7FFFh被映射到片外程序存儲(chǔ)器空間(必須外擴(kuò)外部程序存儲(chǔ)器)位1-0:SARAM的程序/數(shù)據(jù)空間選擇00-地址空間不被映射,該空間被分配到外部存儲(chǔ)器0l-SARAM被映射到片內(nèi)程序空間10-SARAM被映射到片內(nèi)數(shù)據(jù)空間11-SARAM被映射到片內(nèi)程序空間,又被映射到片內(nèi)數(shù)據(jù)空間

2.3系統(tǒng)配置和中斷2、中斷優(yōu)先級(jí)和中斷向量表LF2407DSP具有3個(gè)不可屏蔽中斷和6個(gè)級(jí)別的可屏蔽中斷(INT1-INT6)。對(duì)多個(gè)外設(shè)的中斷需求采用了中斷擴(kuò)展設(shè)計(jì)來(lái)滿足。在每級(jí)可屏蔽中斷(INT1-INT6)中又有多個(gè)中斷源,有唯一的中斷入口地址向量。中斷優(yōu)先級(jí)中斷名稱外設(shè)中斷向量描述1Reset0000h復(fù)位引腳和WD溢出2保留0026h用于仿真3NMI0004h軟件中斷不可屏蔽中斷源的優(yōu)先級(jí)和中斷入口地址向量表

2.3系統(tǒng)配置和中斷中斷優(yōu)先級(jí)中斷名稱外設(shè)中斷向量描述4PDPINTA0020h功率驅(qū)動(dòng)保護(hù)中斷5PDPINTB0019h功率驅(qū)動(dòng)保護(hù)中斷6ADCINT0004h高優(yōu)先級(jí)ADC中斷7XINT10001h高優(yōu)先級(jí)外中斷8XINT20011h高優(yōu)先級(jí)外中斷9SPINT0005h高優(yōu)先級(jí)SPI中斷10RXINT0006h高優(yōu)先級(jí)SCI接收中斷11TXINT0007h高優(yōu)先級(jí)SCI發(fā)送中斷12CANMBINT0040h高優(yōu)先級(jí)CAN郵箱中斷可屏蔽中斷源的優(yōu)先級(jí)和中斷入口地址向量表INT1(級(jí)別1)

2.3系統(tǒng)配置和中斷中斷優(yōu)先級(jí)中斷名稱外設(shè)中斷向量描述13CANMBINT0041h高優(yōu)先級(jí)CAN錯(cuò)誤中斷14CMP1INT0021h比較器1中斷15CMP2INT0022h比較器2中斷16CMP3INT0023h比較器3中斷17T1PINT0027h定時(shí)器1周期溢中斷18T1CINT0028h定時(shí)器1比較溢中斷19T1UFINT0029h定時(shí)器1下溢中斷20T1OFINT0029h定時(shí)器1上溢中斷21CMP4INT0024h比較器4中斷22CMP5INT0025h比較器5中斷23CMP6INT0026h比較器6中斷24T3PINT002Fh定時(shí)器3周期溢中斷25T3CINT0030h定時(shí)器3比較溢中斷26T3UFINT0031h定時(shí)器3下溢中斷27T10FINT0032h定時(shí)器3上溢中斷INT2(級(jí)別2)

2.3系統(tǒng)配置和中斷中斷優(yōu)先級(jí)中斷名稱外設(shè)中斷向量描述28T2PINT002Bh定時(shí)器2周期溢中斷29T2CINT002Ch定時(shí)器2比較溢中斷30T2UFINT002Dh定時(shí)器2下溢中斷31T2OFINT002Eh定時(shí)器2上溢中斷32T4PINT0039h定時(shí)器4周期溢中33T4CINT003Ah定時(shí)器4比較溢中斷INT3(級(jí)別3)

2.3系統(tǒng)配置和中斷中斷優(yōu)先級(jí)中斷名稱外設(shè)中斷向量描述34T4UFINT003Bh定時(shí)器4下溢中斷35T4OFINT003Ch定時(shí)器4上溢中斷36CAP1INT0033h比較器1中斷37CAP2INT0034h比較器2中斷38CAP3INT0035h比較器3中斷39CAP4INT0036h比較器4中斷40CAP5INT0037h比較器5中斷41CAP6INT0038h比較器6中斷INT4(級(jí)別4)

2.3系統(tǒng)配置和中斷中斷優(yōu)先級(jí)中斷名稱外設(shè)中斷向量描述42SPINT0005h低優(yōu)先級(jí)SPI中斷43RXINT0006h低優(yōu)先級(jí)SCI接收中斷44TXINT0007h低優(yōu)先級(jí)SCI發(fā)送中斷45CANMBINT0040h低優(yōu)先級(jí)CAN郵箱中斷46CANERINT0040h低優(yōu)先級(jí)CAN錯(cuò)誤中斷INT5(級(jí)別5)

2.3系統(tǒng)配置和中斷中斷優(yōu)先級(jí)中斷名稱外設(shè)中斷向量描述47ADCINT0004h低優(yōu)先級(jí)ADC中斷48XINT10001h低優(yōu)先級(jí)外中斷49XINT20011h低優(yōu)先級(jí)外中斷INT6(級(jí)別6)

2.3系統(tǒng)配置和中斷3、外設(shè)中斷擴(kuò)展控制器LF240xCPU內(nèi)核提供給用戶:6級(jí)可屏蔽中斷INT1-INT6。每1級(jí)別又包含多個(gè)外設(shè)中斷請(qǐng)求,所以用一個(gè)外設(shè)中斷擴(kuò)展(PIE)控制器專門(mén)來(lái)管理來(lái)自各種外設(shè)或外部引腳的數(shù)十個(gè)中斷請(qǐng)求。外設(shè)中斷擴(kuò)展模塊圖

2.3系統(tǒng)配置和中斷中斷請(qǐng)求層次和結(jié)構(gòu)外設(shè)中斷個(gè)數(shù)很多,用一個(gè)兩級(jí)中斷結(jié)構(gòu)來(lái)擴(kuò)展可響應(yīng)的中斷個(gè)數(shù)。中斷請(qǐng)求/應(yīng)答硬件邏輯和中斷服務(wù)程序軟件都有兩級(jí)層次的中斷。在低層次中斷,從幾個(gè)外設(shè)來(lái)的外設(shè)中斷請(qǐng)求(PIRQ)在中斷控制器處進(jìn)行或運(yùn)算,產(chǎn)生一個(gè)INTn(n=1-6)中斷請(qǐng)求。在高層次中斷,從INTn中斷請(qǐng)求產(chǎn)生一個(gè)到CPU的中斷請(qǐng)求。

2.3系統(tǒng)配置和中斷如果一個(gè)引起中斷的外設(shè)事件發(fā)生且相應(yīng)的中斷使能位被置1,則會(huì)產(chǎn)生一個(gè)外設(shè)到中斷控制器的中斷請(qǐng)求。如果一個(gè)外設(shè)既可產(chǎn)生高級(jí)的中斷請(qǐng)求,又可產(chǎn)生低級(jí)中斷請(qǐng)求(如SCI、SPI、ADC等),對(duì)應(yīng)的中斷優(yōu)先級(jí)位的值也被送到PIE來(lái)進(jìn)行判斷。中斷請(qǐng)求(PIRQ)標(biāo)志位一直保持到中斷應(yīng)答自動(dòng)清除或用軟件將其清除。在高層次中斷,或邏輯運(yùn)算的多個(gè)外設(shè)中斷請(qǐng)求INTn產(chǎn)生一個(gè)到CPU的中斷請(qǐng)求,它是2個(gè)CPU時(shí)鐘脈沖寬的低電平脈沖。當(dāng)多個(gè)外設(shè)同時(shí)發(fā)出中斷請(qǐng)求時(shí),CPU總是響應(yīng)優(yōu)先級(jí)高的中斷請(qǐng)求。注意:外設(shè)中斷請(qǐng)求標(biāo)志位是在CPU響應(yīng)中斷時(shí)自動(dòng)清除,即在高層次中斷時(shí)清0,而不是在低層次中斷時(shí),清0。

2.3系統(tǒng)配置和中斷4、中斷向量當(dāng)CPU接受中斷請(qǐng)求時(shí),它并不知道是哪一外設(shè)事件引起的中斷請(qǐng)求。為了使CPU能夠區(qū)別不同外設(shè)引起的中斷事件,需經(jīng)PIE譯碼,決定哪個(gè)中斷請(qǐng)求被響應(yīng)。某個(gè)外設(shè)的中斷請(qǐng)求有效時(shí),都會(huì)產(chǎn)生唯一的外設(shè)中斷向量,被裝載到外設(shè)中斷向量寄存器(PIVR)。CPU應(yīng)答外設(shè)中斷請(qǐng)求時(shí),從PIVR中讀取相應(yīng)的中斷向量,并產(chǎn)生一個(gè)轉(zhuǎn)到該中斷服務(wù)子程序(GISR)入口的向量。

2.3系統(tǒng)配置和中斷LF240x有兩個(gè)中斷向量表:CPU向量表和外設(shè)向量表CPU向量表用來(lái)得到響應(yīng)中斷請(qǐng)求的一級(jí)通用中斷服務(wù)子程序(GISR)。外設(shè)向量表用來(lái)獲取響應(yīng)某外設(shè)事件的特定中斷服務(wù)子程序(SISR)。在一級(jí)通用中斷服務(wù)子程序GISR中可讀出PIVR中的值,保護(hù)現(xiàn)場(chǎng)后,用PIVR中的值來(lái)產(chǎn)生一個(gè)轉(zhuǎn)到SISR的向量。例如,可屏蔽中斷XINT1(高級(jí)模式級(jí)別為INT1,優(yōu)先級(jí)為7)產(chǎn)生一個(gè)中斷請(qǐng)求,CPU對(duì)其響應(yīng)。這時(shí),0001h(XINT1的外設(shè)中斷向量)被裝載到PIVR中,CPU獲取被裝載到PIVR中的值之后,用這個(gè)值來(lái)判斷是哪一個(gè)外設(shè)引起的中斷,接著轉(zhuǎn)移到相應(yīng)的SISR。將PIVR中的值裝載入累加器時(shí)需先左移,再加上一個(gè)固定的偏移量,然后程序轉(zhuǎn)到累加器指定的地址入口,這個(gè)地址將指向SISR,從而執(zhí)行XINT1的中斷服務(wù)子程序。

2.3系統(tǒng)配置和中斷(1)、假中斷向量如果一個(gè)中斷應(yīng)答被響應(yīng),但沒(méi)有獲得相應(yīng)的外設(shè)的中斷請(qǐng)求,那么就使用假中斷。假中斷向量特性可以保證中斷系統(tǒng)的完整性,從而使中斷系統(tǒng)一直可靠安全地運(yùn)行,而不會(huì)進(jìn)入無(wú)法預(yù)料的中斷死循環(huán)中。以下兩種情況會(huì)產(chǎn)生假中斷:CPU執(zhí)行一個(gè)軟件中斷指令I(lǐng)NTR,使用參數(shù)1-6,用于請(qǐng)求服務(wù)6個(gè)可屏蔽中斷(INT1-INT6)之一。當(dāng)外設(shè)發(fā)出中斷請(qǐng)求,但是其INTn標(biāo)志位卻在CPU應(yīng)答請(qǐng)求之前已經(jīng)被清0。在上述兩種情況下,并沒(méi)有外設(shè)中斷請(qǐng)求送到中斷控制器,因此中斷控制器不知道哪個(gè)外設(shè)中斷向量裝入到PIVR,此時(shí)向PIVR中裝入假中斷向量0000h。從而避免程序進(jìn)入中斷死循環(huán)中。

2.3系統(tǒng)配置和中斷(2)、軟件結(jié)構(gòu)中斷服務(wù)子程序有兩級(jí):通用中斷服務(wù)子程序(GISR)和特定中斷服務(wù)子程序(SISR)。在GISR中保存必要的上下文,從外設(shè)中斷向量寄存器(PIVR)中讀取外設(shè)外設(shè)中斷向量,這個(gè)向量用來(lái)產(chǎn)生轉(zhuǎn)移到SISR的地址入口。程序一旦進(jìn)入特定中斷服務(wù)子程序后,所有的可屏蔽中斷都被屏蔽。外設(shè)中斷擴(kuò)展(PIE)不包括象復(fù)位和NMI這樣的不可屏蔽中斷。

2.3系統(tǒng)配置和中斷(3)、不可屏蔽中斷LF240xDSP無(wú)NMI引腳,在訪問(wèn)無(wú)效的地址時(shí),不可屏蔽中斷(NMI)就會(huì)發(fā)出請(qǐng)求。當(dāng)NMI被響應(yīng)后,程序?qū)⑥D(zhuǎn)到不可屏蔽中斷向量入口地址0024h處

2.3系統(tǒng)配置和中斷5、中斷響應(yīng)的過(guò)程下面介紹某一外設(shè)中斷請(qǐng)求的響應(yīng)過(guò)程。(1)某一外設(shè)發(fā)出中斷請(qǐng)求。(2)如該外設(shè)的中斷請(qǐng)求標(biāo)志位(IF)為1,且該外設(shè)的中斷使能位(IE)為1,則產(chǎn)生一個(gè)到PIE控制器的中斷請(qǐng)求標(biāo)志位(IF)為1的狀態(tài)保持到被軟件清0。(3)如果不存在相同優(yōu)先級(jí)(INTn)的中斷請(qǐng)求,那么PIRQ會(huì)使PIE控制器產(chǎn)生一個(gè)到CPU的中斷請(qǐng)求(INTn),為2個(gè)CPU時(shí)鐘寬度的低電平脈沖。

2.3系統(tǒng)配置和中斷(4)CPU的中斷請(qǐng)求設(shè)定CPU的中斷標(biāo)志寄存器(IFR),如果CPU中斷已被使能,中斷屏蔽寄存器(IMR)CPU會(huì)中止當(dāng)前的任務(wù),將INTM置1,以屏蔽所有可屏蔽的中斷,保存上下文,并且開(kāi)始為高斷請(qǐng)求;如果中斷沒(méi)有被使能,則中優(yōu)先級(jí)的中斷(INTn)執(zhí)行通用中斷服務(wù)子程序(GISR)。CPU自動(dòng)產(chǎn)生一個(gè)中斷應(yīng)答,并向與被響應(yīng)的高優(yōu)先級(jí)中斷的相應(yīng)程序地址總線(PAB)送一個(gè)中斷向量值。例如,如果INT2被響應(yīng)了,它的中斷向量0004h被裝入PAB。(5)外設(shè)中斷擴(kuò)展(PIE)控制器會(huì)對(duì)PAB的值進(jìn)行譯碼,并產(chǎn)生一個(gè)外設(shè)響應(yīng)應(yīng)答,清除與被應(yīng)答的CPU中斷相關(guān)的PIRQ位。外設(shè)中斷擴(kuò)展控制器然后將相應(yīng)的中斷向量(或假中斷向量)載入外設(shè)中斷向量寄存器(PIVR)。當(dāng)GISR已經(jīng)完成了現(xiàn)場(chǎng)保護(hù),然后就可讀入PIVR,并使用中斷向量,使程序轉(zhuǎn)入到特定中斷服務(wù)子程序(SISR)的入口處去執(zhí)行。

2.3系統(tǒng)配置和中斷6、中斷響應(yīng)的延時(shí)導(dǎo)致中斷響應(yīng)延時(shí)的因素包括:外設(shè)同步接口時(shí)間、CPU響應(yīng)時(shí)間、ISR轉(zhuǎn)移時(shí)間。(1)外設(shè)同步接口時(shí)間是指PIE識(shí)別出外設(shè)發(fā)來(lái)的中斷請(qǐng)求,經(jīng)判斷優(yōu)先級(jí)、轉(zhuǎn)換后將中斷請(qǐng)求發(fā)送至CPU的時(shí)間。(2)CPU的響應(yīng)時(shí)間指的是CPU識(shí)別出已經(jīng)被使能的中斷請(qǐng)求、響應(yīng)中斷、清除流水線、并且開(kāi)始捕獲來(lái)自CPU中斷向量的第一條指令所花費(fèi)的時(shí)間。最小的CPU的響應(yīng)時(shí)間是4個(gè)CPU指令周期。(3)ISR轉(zhuǎn)移時(shí)間是指為了轉(zhuǎn)移ISR中特定部分而必須執(zhí)行一些轉(zhuǎn)移所花費(fèi)的時(shí)間。該時(shí)間長(zhǎng)短根據(jù)用戶所實(shí)現(xiàn)的ISR的不同而有所變化。

2.3系統(tǒng)配置和中斷7、CPU的中斷寄存器CPU中斷寄存器包括:(1)中斷標(biāo)志寄存器(IFR);(2)中斷屏蔽寄存器(IMR)。(1)、CPU中斷標(biāo)志寄存器(IFR)

IFR映射到數(shù)據(jù)存儲(chǔ)器空間為0006h。各位意義如下:位15-6:保留位。位5-0:分別為INT6-INT1的中斷標(biāo)志位。0-無(wú)INTn(n=1-6)的中斷掛起,1-表示有INTn(n=1-6)的中斷掛起。

2.3系統(tǒng)配置和中斷中斷標(biāo)志寄存器包含了所有可屏蔽中斷INT6-INT1的標(biāo)志位。當(dāng)一個(gè)外設(shè)發(fā)出可屏蔽中斷請(qǐng)求時(shí),中斷標(biāo)志寄存器的相應(yīng)標(biāo)志位被置1。如果該外設(shè)對(duì)應(yīng)中斷屏蔽寄存器中的中斷使能位也為1,則該中斷請(qǐng)求被送到CPU,此時(shí)該中斷正被掛起或等待響應(yīng)。讀取IFR可以識(shí)別掛起的中斷,向相應(yīng)的IFR位寫(xiě)1將清除已掛起的中斷。CPU響應(yīng)中斷或復(fù)位都能將IFR標(biāo)志清除。

2.3系統(tǒng)配置和中斷在對(duì)IFR操作時(shí)應(yīng)注意以下幾點(diǎn):(1)要想清除某一IFR位,必須向該位寫(xiě)1,而不是0;(2)當(dāng)一個(gè)可屏蔽中斷被響應(yīng)時(shí),只有IFR位被清除,而相應(yīng)的外設(shè)控制寄存器中的中斷請(qǐng)求標(biāo)志位不會(huì)被清除。如果需要清除這些標(biāo)志位,應(yīng)該使用軟件來(lái)清除。(3)當(dāng)通過(guò)INTR指令來(lái)請(qǐng)求中斷,且相應(yīng)的IFR位被置1時(shí),CPU不會(huì)自動(dòng)清除該位,該位必須由軟件來(lái)清除。(4)IFR和IMR控制的是核心級(jí)的中斷,所有外設(shè)在它們各自的配置/控制寄存器都有相應(yīng)的中斷屏蔽和標(biāo)志位。

2.3系統(tǒng)配置和中斷(2)、CPU中斷屏蔽寄存器(IMR)

IMR映射在數(shù)據(jù)存儲(chǔ)器空間中的地址為0004h,各位意義如下:IMR中包含所有可屏蔽中斷級(jí)(INT1-INT6)的屏蔽位,讀IMR可以識(shí)別出已屏蔽或使能的中斷級(jí),而向IMR中寫(xiě),則可屏蔽中斷或使能中斷。為了使能中斷,應(yīng)設(shè)置相應(yīng)的IMR位為1,而屏蔽中斷時(shí)只需將相應(yīng)的IMR位設(shè)為0。位15-6:保留位。位5-0:分別為INT6-INT1中斷的屏蔽位。0-中斷INTn被屏蔽。1-中斷INTn被使能。

2.3系統(tǒng)配置和中斷8、外設(shè)中斷寄存器外設(shè)中斷寄存器包括:外設(shè)中斷向量寄存器(PIVR)、外設(shè)中斷請(qǐng)求寄存器0/1/2(PIRQR0/1/2)、外設(shè)中斷應(yīng)答寄存器0/1/2(PIACKR0/1/2)。外設(shè)中斷請(qǐng)求寄存器和外設(shè)中斷應(yīng)答寄存器都屬于外設(shè)中斷擴(kuò)展模塊用來(lái)向CPU產(chǎn)生INT1-INT6中斷請(qǐng)求的內(nèi)部寄存器。這些寄存器用于測(cè)試目的,非用戶應(yīng)用目的,編程時(shí)可忽略。

2.3系統(tǒng)配置和中斷外設(shè)中斷向量寄存器(PIVR)外設(shè)中斷向量寄存器(PIVR)映射在數(shù)據(jù)存儲(chǔ)器空間中的地址為701Eh,該寄存器的16位V15-V0,為最近一次被應(yīng)答的外設(shè)中斷的地址向量。外設(shè)中斷請(qǐng)求寄存器0(PIRQR0)外設(shè)中斷請(qǐng)求寄存器0(PIRQR0)映射在數(shù)據(jù)存儲(chǔ)器空間中的地址為7010h,寄存器的格式如下:位15-0:外設(shè)請(qǐng)求標(biāo)志位IRQ0.15-IRQ0.00-無(wú)相應(yīng)外設(shè)的中斷請(qǐng)求1-相應(yīng)外設(shè)的中斷請(qǐng)求被掛起注:寫(xiě)入1會(huì)發(fā)出一個(gè)中斷請(qǐng)求到DSP核,寫(xiě)入0無(wú)影響。該寄存器16個(gè)位所對(duì)應(yīng)的外設(shè)如表2.5所示。

2.3系統(tǒng)配置和中斷外設(shè)中斷請(qǐng)求寄存器1(PIRQR1)外設(shè)中斷請(qǐng)求寄存器1(PIRQR1)映射在數(shù)據(jù)存儲(chǔ)器空間中的地址為7011h,該寄存器的格式如下:位15:保留位,讀出為0,寫(xiě)入無(wú)影響。位14-0:外設(shè)請(qǐng)求標(biāo)志位IRQ1.14-IRQ1.00-無(wú)相應(yīng)外設(shè)的中斷請(qǐng)求1-相應(yīng)外設(shè)的中斷請(qǐng)求被掛起注:寫(xiě)入1會(huì)發(fā)出一個(gè)中斷請(qǐng)求到DSP核,寫(xiě)入0無(wú)影響。該寄存器16個(gè)位所對(duì)應(yīng)的中斷如表2.6所示。

2.3系統(tǒng)配置和中斷外設(shè)中斷請(qǐng)求寄存器2(PIRQR2)外設(shè)中斷請(qǐng)求寄存器2(PIRQR2)映射在數(shù)據(jù)存儲(chǔ)器空間中的地址為7012h,寄存器的格式如下:位15:保留位位14-0:外設(shè)請(qǐng)求標(biāo)志位IRQ2.14-IRQ2.00-無(wú)相應(yīng)外設(shè)的中斷請(qǐng)求1-相應(yīng)外設(shè)的中斷請(qǐng)求被掛起注:寫(xiě)1會(huì)發(fā)出一個(gè)中斷請(qǐng)求到DSP核,寫(xiě)0無(wú)影響。該寄存器16個(gè)位所對(duì)應(yīng)的中斷如表2.7所示。

2.3系統(tǒng)配置和中斷外設(shè)中斷應(yīng)答寄存器0(PIACKR0)外設(shè)中斷應(yīng)答寄存器0(PIACKR0)映射在數(shù)據(jù)存儲(chǔ)器空間中的地址為7014h,寄存器的格式如下:位15-0:外設(shè)中斷應(yīng)答位ICK0.15-ICK0.0寫(xiě)入1-引起相應(yīng)外設(shè)的中斷應(yīng)答被插入,將相應(yīng)外設(shè)中斷請(qǐng)求位清0。注:通過(guò)向寄存器寫(xiě)1來(lái)插入中斷應(yīng)答,而非更新PIVR寄存器的內(nèi)容,讀該寄存器的結(jié)果通常為0

該寄存器16個(gè)位所對(duì)應(yīng)的中斷如表2.8所示。

2.3系統(tǒng)配置和中斷外設(shè)中斷應(yīng)答寄存器1(PIACKR1)外設(shè)中斷應(yīng)答寄存器1(PIACKR1)的映射地址7015h,格式如下:位15:保留位位14-0:外設(shè)中斷應(yīng)答位IAK1.14-IAK1.0,作用同PIACKP0一樣。該寄存器各個(gè)位所對(duì)應(yīng)的中斷如表2.9所示。外設(shè)中斷應(yīng)答寄存器2(PIACKR2)外設(shè)中斷應(yīng)答寄存器2(PIACKR2)的映射地址7016h,該寄存器的格式如下:位15-0:外設(shè)中斷應(yīng)答位IAK2.15-IAK2.0,作用同PIACKP0一樣。該寄存器各個(gè)位所對(duì)應(yīng)的中斷如表2.10所示。

2.3系統(tǒng)配置和中斷9、復(fù)位

LF2407DSP器件有兩個(gè)復(fù)位來(lái)源:外部復(fù)位引腳的電平變化引起的復(fù)位;看門(mén)狗定時(shí)器溢出引起的復(fù)位。復(fù)位時(shí),復(fù)位引腳被設(shè)置為輸出方式,且被驅(qū)動(dòng)為低,向外部電路表明LF240x器件正在自己復(fù)位。10、無(wú)效地址檢測(cè)無(wú)效地址是不可執(zhí)行的地址(例如:外設(shè)存儲(chǔ)器映射中的保留寄存器)。LF240x一旦檢測(cè)到對(duì)無(wú)效地址的訪問(wèn),就將系統(tǒng)控制和狀態(tài)寄存器1(SCSRl)中的無(wú)效地址標(biāo)志位(ILLADR)置1,從而產(chǎn)生一個(gè)不可屏蔽中斷(NMI)。無(wú)論何時(shí)檢測(cè)到對(duì)無(wú)效地址的訪問(wèn),都會(huì)產(chǎn)生插入一個(gè)無(wú)效地址條件,無(wú)效地址標(biāo)志位(ILLADR)在無(wú)效地址條件發(fā)生之后被置1,并一直保持,直到軟件將其清除。產(chǎn)生原因:是不正確的數(shù)據(jù)頁(yè)面初始化。

2.3系統(tǒng)配置和中斷11、外部中斷控制寄存器

寄存器XINT1CR和XINT2CR為用來(lái)控制和監(jiān)視XINT1和XINT2兩個(gè)引腳狀態(tài)的兩個(gè)外部中斷控制寄存器。在LF240x中,XINT1和XINT2引腳必須被拉為低電平至少6個(gè)(或12個(gè))CLKOUT周期才能被CPU內(nèi)核識(shí)別。

2.3系統(tǒng)配置和中斷外部中斷1控制寄存器XINT1CR

映射到數(shù)據(jù)存儲(chǔ)器空間的7070h,格式如下:位15:XINT1標(biāo)志位。在XINT1引腳上是否檢測(cè)到一個(gè)所選擇的中斷跳變,無(wú)論中斷是否使能,該位都可被置1。0-沒(méi)有檢測(cè)到跳變;1-檢測(cè)到跳變位14-3:保留位位2:XINT1極性。該讀/寫(xiě)位決定是在XINT1引腳信號(hào)的上升沿還是下降沿產(chǎn)生中斷。0-在下降沿產(chǎn)生中斷;1-在上升沿產(chǎn)生中斷位1:XINT1優(yōu)先級(jí)。該讀/寫(xiě)位決定哪一個(gè)中斷優(yōu)先級(jí)被請(qǐng)求。0-高優(yōu)先級(jí);1-低優(yōu)先級(jí)位0:XINTl使能位。該讀/寫(xiě)位可使能或屏蔽外部中斷XINTl0-屏蔽中斷;1-使能中斷

2.3系統(tǒng)配置和中斷外部中斷2控制寄存器XINT2CR

映射到數(shù)據(jù)存儲(chǔ)器空間的7071h,格式如下:位15:XINT2中斷請(qǐng)求標(biāo)志位。該位表示在XINT2引腳上是否檢測(cè)到一個(gè)中斷請(qǐng)求跳變,無(wú)論該中斷是否使能,該位都可以被置1。當(dāng)XINT2的中斷請(qǐng)求被應(yīng)答時(shí),該位被自動(dòng)清0。0-沒(méi)有檢測(cè)到跳變;1-檢測(cè)到跳變軟件向該位寫(xiě)1(寫(xiě)0無(wú)效)或器件復(fù)位時(shí),該位也被清0位14-13:保留位位2:XINT2極性。該位決定XINT2引腳信號(hào)的上升沿還是下降沿產(chǎn)生中斷。0-在下降沿產(chǎn)生中斷;1-在上升沿產(chǎn)生中斷位1:XINT2的中斷優(yōu)先級(jí)。0-高優(yōu)先級(jí);1-低優(yōu)先級(jí)位0:XINT2的中斷使能位。0-屏蔽該中斷;1-使能該中斷

2.4程序控制程序控制執(zhí)行一個(gè)或多個(gè)指令塊的次序調(diào)動(dòng)通常

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論