CPU功能模塊和時(shí)鐘模塊實(shí)用_第1頁(yè)
CPU功能模塊和時(shí)鐘模塊實(shí)用_第2頁(yè)
CPU功能模塊和時(shí)鐘模塊實(shí)用_第3頁(yè)
CPU功能模塊和時(shí)鐘模塊實(shí)用_第4頁(yè)
CPU功能模塊和時(shí)鐘模塊實(shí)用_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

會(huì)計(jì)學(xué)1CPU功能模塊和時(shí)鐘模塊實(shí)用3.1.1輸入定標(biāo)移位器該單元將來自程序/數(shù)據(jù)存儲(chǔ)器的16位數(shù)據(jù)調(diào)整為32位數(shù)據(jù)送到中央算術(shù)邏輯單元(CALU)。因此,輸入定標(biāo)移位器的16位輸入與數(shù)據(jù)總線相連,32位輸出與CALU單元相連。輸入定標(biāo)移位器在算術(shù)定標(biāo)及邏輯操作設(shè)置時(shí)非常有用。輸入定標(biāo)移位器對(duì)輸入數(shù)據(jù)進(jìn)行0-15位左移。左移時(shí),輸出的最低有效位(LSB)為0,最高有效位(MSB)根據(jù)狀態(tài)寄存器ST1寄存器的SXM位(符號(hào)擴(kuò)展方式)的值來決定是否進(jìn)行符號(hào)擴(kuò)展。當(dāng)SXM=1時(shí),則高位進(jìn)行符號(hào)擴(kuò)展;當(dāng)SXM=0時(shí),則高位填0。移位的次數(shù)由包含在指令中的常量或臨時(shí)寄存器(TREG)中的值來指定。第1頁(yè)/共21頁(yè)3.1.2乘法單元乘法單元主要由乘法器、乘積寄存器以及乘積移位寄存器組成。16?16位的硬件乘法器,單個(gè)機(jī)器周期內(nèi)產(chǎn)生一個(gè)32位的有符號(hào)或無符號(hào)乘積。除了執(zhí)行無符號(hào)乘法指令(MPYU)外,所有的乘法指令均執(zhí)行有符號(hào)的乘法操作,即相乘的兩個(gè)數(shù)都作為二進(jìn)制的補(bǔ)碼數(shù),而運(yùn)算結(jié)果為一個(gè)32位的二進(jìn)制的補(bǔ)碼數(shù)。乘法器接收的兩個(gè)乘數(shù),一個(gè)來自16位的臨時(shí)寄存器(TREG),另一個(gè)通過數(shù)據(jù)讀總線(DRDB)取自數(shù)據(jù)存儲(chǔ)器,或通過程序讀總線(PRDB)取自程序存儲(chǔ)器。相乘后,32位的乘積結(jié)果保存在乘積寄存器(PREG)中。乘積移位寄存器對(duì)乘積結(jié)果采用4種移位方式進(jìn)行處理,并將結(jié)果送到CALU。TREG第2頁(yè)/共21頁(yè)3.1.3中央算術(shù)邏輯部分該部分主要由中央算術(shù)邏輯單元CALU、累加器和輸出定標(biāo)移位器組成。1、中央算術(shù)邏輯單元CALUCALU實(shí)現(xiàn)大部分算術(shù)和邏輯運(yùn)算功能,大多數(shù)功能只需一個(gè)時(shí)鐘周期,這些運(yùn)算功能包括:加/減、布爾運(yùn)算、位移位和位循環(huán)等。由于CALU可以執(zhí)行布爾運(yùn)算,因此使得控制器具有位操作功能。CALU的位移位和位循環(huán)在累加器中完成。一旦操作在CALU中執(zhí)行完畢,運(yùn)算結(jié)果會(huì)被傳送到累加器中,在累加器中再實(shí)現(xiàn)如移位等附加操作。CALU有兩個(gè)輸入,一個(gè)由累加器提供,另一個(gè)由乘積移位寄存器或輸入數(shù)據(jù)定標(biāo)移位器提供。第3頁(yè)/共21頁(yè)2累加器(ACC)當(dāng)CALU中的運(yùn)算完成后,其結(jié)果就被送至累加器,并在累加器中執(zhí)行單一的移位或循環(huán)操作。累加器的高位字和低位字中的任意一個(gè)可以被送至輸出數(shù)據(jù)定標(biāo)移位器,在此定標(biāo)移位后,再保存于數(shù)據(jù)存儲(chǔ)器。與累加器有關(guān)的狀態(tài)位和轉(zhuǎn)移指令,位于狀態(tài)寄存器ST0和ST1中。進(jìn)位標(biāo)志位C溢出方式標(biāo)志位OVM溢出標(biāo)志位OV測(cè)試/控制標(biāo)志位TC3輸出數(shù)據(jù)定標(biāo)移位器輸出數(shù)據(jù)定標(biāo)移位器的輸入是累加器輸出的32位數(shù)據(jù),將累加器輸出的內(nèi)容左移0-7位,然后將移位器的高位字或低位字存到數(shù)據(jù)存儲(chǔ)器中(用SACH或SACL指令)。在此過程中,累加器的內(nèi)容保持不變。第4頁(yè)/共21頁(yè)3.1.4輔助寄存器算術(shù)單元(ARAU)ARAU完全獨(dú)立于中央算術(shù)邏輯單元,圖3.2所示為ARAU和相關(guān)的邏輯。ARAU的主要功能是在CALU操作的同時(shí)執(zhí)行8個(gè)輔助寄存器AR7-AR0中的算術(shù)運(yùn)算,8個(gè)輔助寄存器提供了強(qiáng)大而靈活的間接尋址能力。利用ARAU中的16位地址可訪問數(shù)據(jù)存儲(chǔ)器64K字空間的任一單元。圖3.2

輔助寄存器算術(shù)單元ARAU第5頁(yè)/共21頁(yè)ARAU的8個(gè)輔助寄存器提供了強(qiáng)大而靈活的間接尋址能力。利用輔助寄存器中的16位地址可訪問數(shù)據(jù)存儲(chǔ)器64K字空間的任一單元。ARAU除可數(shù)據(jù)存儲(chǔ)器的尋址外,還可用作它用:(1)通過CMPR指令,利用輔助寄存器支持條件轉(zhuǎn)移、調(diào)用和返回;(2)利用輔助寄存器作為暫存單元;(3)利用輔助寄存器進(jìn)行軟件計(jì)數(shù)。根據(jù)需要將其加1或減1。第6頁(yè)/共21頁(yè)3.1.5狀態(tài)寄存器ST0和ST1兩個(gè)狀態(tài)寄存器ST0和ST1包含了DSP運(yùn)行時(shí)的各種狀態(tài)和控制位。ST0和ST1對(duì)控制和編程很重要!ST0ST1兩個(gè)寄存器的內(nèi)容可被讀出并保存到數(shù)據(jù)存儲(chǔ)器(SST指令),或從數(shù)據(jù)存儲(chǔ)器讀出加載到ST0和ST1(LST指令),從而在子程序調(diào)用或進(jìn)入中斷時(shí)實(shí)現(xiàn)CPU各種狀態(tài)的保存。當(dāng)采用SETC指令和CLRC指令時(shí),可對(duì)ST0和ST1中的各個(gè)位單獨(dú)置1或清0。第7頁(yè)/共21頁(yè)ARP(位15-13):輔助寄存器(AR)間接尋址的指針,選擇當(dāng)前的8個(gè)輔助寄存器AR中的一個(gè)。ST0OV(位12):溢出標(biāo)志位。用以指示CALU中是否發(fā)生溢出,如溢出則該位保持為1。OVM(位11):溢出方式標(biāo)志位

=0,累加器中結(jié)果正常溢出。

=1,根據(jù)溢出的情況,累加器被設(shè)定為它的最大正值或負(fù)值。INTM(位9):中斷總開關(guān)位 =1,所有可屏蔽中斷被禁止 =0,所有可屏蔽中斷有效。DP(位8-0):數(shù)據(jù)存儲(chǔ)器頁(yè)面指針,9位的DP與指令中的7位形成16位的數(shù)據(jù)存儲(chǔ)器的直接地址。第8頁(yè)/共21頁(yè)ARB(位15-13):輔助寄存器指針緩沖器,當(dāng)ARP被加載到ST0時(shí),原來的ARP被復(fù)制到ARB中,也可將ARB復(fù)制到ARP中。ST1CNF(位12):片內(nèi)DARAM配置位

=0,片內(nèi)DARAM映射到數(shù)據(jù)存儲(chǔ)器區(qū);

=1,片內(nèi)DARAM映射到程序存儲(chǔ)器區(qū)。TC(位11):測(cè)試/控制標(biāo)志位。根據(jù)被測(cè)試位的值,該位被置1或清0。SXM(位10):符號(hào)擴(kuò)展方式位,決定在計(jì)算時(shí)是否使用符號(hào)擴(kuò)展: =1,數(shù)據(jù)通過定標(biāo)移位器傳送到累加器時(shí)將產(chǎn)生符號(hào)擴(kuò)展;

=0,不產(chǎn)生符號(hào)擴(kuò)展。第9頁(yè)/共21頁(yè)C(位9):進(jìn)位標(biāo)志位,在加法結(jié)果產(chǎn)生進(jìn)位時(shí)被置1,或在減法結(jié)果產(chǎn)生借位是被清0。ST1XF(位4):XF引腳狀態(tài)位,XF是DSP的一個(gè)通用引腳。該位反映XF引腳的狀態(tài),該位的1、0與XF引腳的邏輯高、低電平一致??捎弥噶頢ETC置1,用指令CLRC清0。PM(位1-0):乘積移位方式 00-乘法器的32位乘積不移位,直接入CALU。 01-PREG左移1位后裝入CALU,最低位填0;

10-PREG左移4位后裝入CALU,低4位填0; 11-PREG輸出進(jìn)行符號(hào)位擴(kuò)展,右移6位。第10頁(yè)/共21頁(yè)3.2鎖相環(huán)(PLL)時(shí)鐘模塊和低功耗模式LF240xDSP片內(nèi)集成有鎖相環(huán)(PLL)電路。可從一個(gè)較低頻率的外部時(shí)鐘合成片內(nèi)較高工作頻率的時(shí)鐘。這樣,可以相對(duì)減少印制板級(jí)的電磁干擾,使硬件系統(tǒng)更容易實(shí)現(xiàn),系統(tǒng)性能更好。PLL可以看作為一個(gè)片內(nèi)外設(shè),接在片內(nèi)外設(shè)總線上,為DSP提供所需要的各種時(shí)鐘信號(hào),還可以控制低功耗操作。LF240xDSP有三個(gè)引腳與時(shí)鐘模塊有關(guān):(1)XTAL1/CLKIN:外接的基準(zhǔn)晶體到片內(nèi)振蕩器輸入引腳;如使用外部振蕩器,外部振蕩器的輸出必須接到該引腳。(2)XTAL2:片內(nèi)PLL振蕩器驅(qū)動(dòng)外部晶振的時(shí)鐘輸出引腳;(3)CLKOUT/IOPE0:時(shí)鐘輸出或通用I/O腳。CLKOUT可用來輸出CPU時(shí)鐘或看門狗定時(shí)器時(shí)鐘,這由系統(tǒng)控制狀態(tài)寄存器SCSR1中的位14(CLKSRC)決定。當(dāng)該腳不用于時(shí)鐘輸出時(shí),就可作通用I/O。第11頁(yè)/共21頁(yè)圖3.3鎖相環(huán)的時(shí)鐘模塊電路兩種時(shí)鐘工作方式:(1)內(nèi)部時(shí)鐘:外接基準(zhǔn)晶體+片內(nèi)PLL(鎖相環(huán))電路共同組成系統(tǒng)時(shí)鐘電路。(2)外部時(shí)鐘:一個(gè)獨(dú)立的外部時(shí)鐘接至XTAL1/CLKIN引腳,此時(shí)內(nèi)部時(shí)鐘振蕩器被旁路。XTAL2XTAL1XTALOSCPLLF1PLLF2PLLPLL倍率選擇CLKOUTfinCb1Cb2SCSR1,[11:9]NC外部時(shí)鐘0-3.3V3.2.1鎖相環(huán)(PLL)

1.鎖相環(huán)的時(shí)鐘模塊電路

時(shí)鐘模塊電路如圖3.3所示。第12頁(yè)/共21頁(yè)P(yáng)LL支持從0.54倍輸入時(shí)鐘頻率的倍率,由系統(tǒng)控制狀態(tài)寄存器(SCSR1)的位119來決定。如表3.1所示。CLKPS2CLKPS1CLKPS0倍頻系數(shù)000400120101.3301111000.81010.661100.571110.5表3.1PLL的倍率選擇第13頁(yè)/共21頁(yè)2.外部濾波器電路回路外部濾波器電路用來抑制信號(hào)抖動(dòng)和電磁干擾,使其影響最小。濾波器回路接到PLLF和PLLF2引腳,由R1、C1和C2組成。C1和C2必須是無極性的,參數(shù)根據(jù)振蕩器頻率確定,參考教材表3.3。由于電路中存在大量噪聲,如何使得濾波效果最好,在設(shè)計(jì)時(shí),需通過實(shí)驗(yàn)來確定濾波器回路元件。fc=10MHzVDDVSSPLLVCCA時(shí)鐘模塊PLLF1PLLF2R1C2C1可選的低通濾波回路濾波器回路圖3.4外部濾波電路另外注意事項(xiàng):1)所有連接PLL的PCB導(dǎo)線盡可能短;2)旁路電容(0.01-0.1uF的陶瓷電容),緊連電源。3)可選的低通濾波器,可提高抖動(dòng)性能,減少電磁干擾;4)導(dǎo)線和器件所圍環(huán)路面積要小,減少干擾;第14頁(yè)/共21頁(yè)3.PLL旁路方式可設(shè)置為對(duì)片內(nèi)PLL旁路的工作方式,通過復(fù)位時(shí)拉低TRST、TMS和TMS2引腳來實(shí)現(xiàn)。在這種方式下,不但可以實(shí)現(xiàn)PLL旁路,而且可以實(shí)現(xiàn)PLL時(shí)鐘預(yù)定標(biāo)。在這種工作方式下,改變寄存器SCSR1的位11-9無效。此時(shí)改變系統(tǒng)時(shí)鐘的唯一方法是改變輸入時(shí)鐘頻率,系統(tǒng)的時(shí)鐘與外輸入時(shí)鐘相同。例如,要獲得一個(gè)30MHzCPU時(shí)鐘速度,那么一個(gè)30MHz時(shí)鐘CLKIN必須提供。在這種方式下,外部的濾波器元件是不需要的。PLL旁路方式下的時(shí)鐘規(guī)范如下:(1)使用內(nèi)部時(shí)鐘方式,那么最小和最大的CLKIN頻率分別為4MHz和20MHz。(2)使用外部時(shí)鐘方式,那么最小和最大的CLKIN頻率分別為4MHz和30MHz(對(duì)2407A為40MHz)。第15頁(yè)/共21頁(yè)3.2.2看門狗定時(shí)器時(shí)鐘WDCLK被用來給看門狗提供時(shí)鐘源。WDCLK來自于CPU的CLKOUT,這可以保證即使當(dāng)CPU處于IDLE1或IDLE2模式(低功耗模式,見3.2.3)看門狗定時(shí)器也能持續(xù)計(jì)數(shù)。WDCLK是由看門狗定時(shí)器的外圍器件生成的,其計(jì)算公式為:

WDCLK=CLKOUT/512當(dāng)CPU的掛起信號(hào)有效時(shí),WDCLK將被停止。這可以通過停止時(shí)鐘輸入到時(shí)鐘分頻(由CLKIN獲取WDCLK)來實(shí)現(xiàn)。第16頁(yè)/共21頁(yè)3.2.3低功耗模式LF240x的IDLE(睡眠)指令,可關(guān)閉CPU時(shí)鐘,進(jìn)入睡眠狀態(tài),節(jié)約能耗。CPU退出睡眠狀態(tài):收到一個(gè)中斷請(qǐng)求或復(fù)位。1.時(shí)鐘域LF240x有兩個(gè)時(shí)鐘域:(1)CPU時(shí)鐘域:包含大部分CPU邏輯的時(shí)鐘;(2)系統(tǒng)時(shí)鐘域:包含外設(shè)時(shí)鐘(來自CLKOUT分頻)和用于CPU中斷邏輯的時(shí)鐘。IDLE1模式:CPU時(shí)鐘域停止,系統(tǒng)時(shí)鐘域繼續(xù)運(yùn)行。IDLE2模式:CPU時(shí)鐘域和系統(tǒng)時(shí)鐘域均停止,進(jìn)一步降低功耗。HALT模式:振蕩器(即輸入到PLL的時(shí)鐘)和WDCLK被關(guān)閉。當(dāng)執(zhí)行IDLE指令時(shí),SCSR1的13、12位指明進(jìn)入哪種低功耗模式:

00

-CPU進(jìn)入IDLE1模式

01

-CPU進(jìn)入IDLE2模式

1x

-CPU進(jìn)入HALT模式

功耗第17頁(yè)/共21頁(yè)2.喚醒低功耗模式(1)復(fù)位復(fù)位信號(hào)可使器件退出IDLE模式。(2)外部中斷外部中斷XINTx可使器件退出低功耗模式,但不能退出HALT模式。(3)喚醒中斷有些外設(shè)具有啟動(dòng)器件時(shí)鐘的能力,然后產(chǎn)生一個(gè)中斷去響應(yīng)一定的外部事件。如通信線路上的動(dòng)作。例如,即使沒有時(shí)鐘運(yùn)行,CAN喚醒中斷也可以聲明一個(gè)CAN錯(cuò)誤中斷請(qǐng)求。3.退出低功耗模式外設(shè)中斷可以用來喚醒處于低功耗模式工作的器件。根據(jù)以下幾種情況執(zhí)行喚醒動(dòng)作(和隨后的器件動(dòng)作):請(qǐng)求的外設(shè)中斷是否使能于外設(shè)級(jí)。與請(qǐng)求的外設(shè)中斷相關(guān)的IMR.n位是否已經(jīng)被使能。ST0寄存器INTM位的狀態(tài)。第18頁(yè)/共21頁(yè)3.2.4片

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論