存儲(chǔ)器和IO空間_第1頁(yè)
存儲(chǔ)器和IO空間_第2頁(yè)
存儲(chǔ)器和IO空間_第3頁(yè)
存儲(chǔ)器和IO空間_第4頁(yè)
存儲(chǔ)器和IO空間_第5頁(yè)
已閱讀5頁(yè),還剩13頁(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、第第5 5章章 存儲(chǔ)器和存儲(chǔ)器和I/OI/O空間空間TMSLF240 xDSPTMSLF240 xDSP具有具有1616位位地址線,可訪問(wèn)分別訪問(wèn)這地址線,可訪問(wèn)分別訪問(wèn)這三個(gè)三個(gè)獨(dú)立的地址空間獨(dú)立的地址空間,每個(gè)空間的容量,每個(gè)空間的容量均為均為64K64K字字:(1 1)程序存儲(chǔ)器空間程序存儲(chǔ)器空間64K64K字;字;(2 2)數(shù)據(jù)存儲(chǔ)器空間數(shù)據(jù)存儲(chǔ)器空間64K64K字;字;(3 3)I/OI/O空間空間64K64K字。字。以以“LFLF”為前綴的為前綴的DSPDSP芯片具有芯片具有FlashFlash存儲(chǔ)器,而以存儲(chǔ)器,而以“LCLC”為前綴的芯片,片內(nèi)有為前綴的芯片,片內(nèi)有CMOSCM

2、OS工藝的工藝的ROMROM存儲(chǔ)器。存儲(chǔ)器。5.1 5.1 片內(nèi)存儲(chǔ)器片內(nèi)存儲(chǔ)器5.1.1 5.1.1 雙訪問(wèn)雙訪問(wèn)RAM (DARAM)RAM (DARAM)雙訪問(wèn)雙訪問(wèn)RAMRAM在一個(gè)機(jī)器周期內(nèi)可被訪問(wèn)在一個(gè)機(jī)器周期內(nèi)可被訪問(wèn)2 2次次: :在一個(gè)機(jī)器周期的在一個(gè)機(jī)器周期的主主相相寫(xiě)數(shù)據(jù)到寫(xiě)數(shù)據(jù)到DARAMDARAM;而在該周期的;而在該周期的從相從相從從DARAMDARAM讀出數(shù)據(jù),從讀出數(shù)據(jù),從而大大提高了運(yùn)行速度。而大大提高了運(yùn)行速度。544544字雙訪問(wèn)字雙訪問(wèn)RAMRAM分為三塊分為三塊:B0B0、B1B1和和B2B2,該存儲(chǔ)器空間主要用,該存儲(chǔ)器空間主要用來(lái)保存數(shù)據(jù),但是來(lái)保

3、存數(shù)據(jù),但是B0B0塊也可以用來(lái)保存程序。塊也可以用來(lái)保存程序。B0B0:數(shù)據(jù)空間,:數(shù)據(jù)空間,0200h0200h02FFh02FFh,256256字;字;B1B1:數(shù)據(jù)空間,:數(shù)據(jù)空間,0300h0300h03FFh03FFh,256256字;字;B2B2:數(shù)據(jù)空間,:數(shù)據(jù)空間,0060h0060h007Fh007Fh,3232字;字;B0B0塊配置成數(shù)據(jù)存儲(chǔ)器空間還是程序存儲(chǔ)器空間,要由塊配置成數(shù)據(jù)存儲(chǔ)器空間還是程序存儲(chǔ)器空間,要由ST1.CNFST1.CNF位位來(lái)決定來(lái)決定,CNF=0CNF=0數(shù)據(jù);數(shù)據(jù);CNF=1CNF=1程序程序。( (當(dāng)當(dāng)CNF=1,CNF=1,程序空間程序空間

4、FF00hFF00hFFFFh)FFFFh)5.1.2 5.1.2 單訪問(wèn)單訪問(wèn)RAM (SARAM)RAM (SARAM)片內(nèi)有片內(nèi)有2K2K字字的的單訪問(wèn)單訪問(wèn)RAMRAM(SARAMSARAM), ,映射在映射在數(shù)據(jù)空間數(shù)據(jù)空間,0800h0800h0FFFh0FFFh。SARAMSARAM在一個(gè)機(jī)器周期內(nèi)只能被訪問(wèn)在一個(gè)機(jī)器周期內(nèi)只能被訪問(wèn)1 1次。次。例如例如,如果一條指令,如果一條指令要將累加器的值保存,且裝載一個(gè)新值到累加器,在要將累加器的值保存,且裝載一個(gè)新值到累加器,在SARAMSARAM中,完成這個(gè)任務(wù)需要兩個(gè)時(shí)鐘周期,而在中,完成這個(gè)任務(wù)需要兩個(gè)時(shí)鐘周期,而在DARAMD

5、ARAM中只需要中只需要一個(gè)時(shí)鐘周期。一個(gè)時(shí)鐘周期。利用軟件可將利用軟件可將SARAMSARAM配置成配置成外部存儲(chǔ)器外部存儲(chǔ)器或或內(nèi)部?jī)?nèi)部SARAMSARAM。SCSR2.DON-PONSCSR2.DON-PON:SARAMSARAM的程序的程序/ /數(shù)據(jù)空間選擇數(shù)據(jù)空間選擇 0000- -地址空間不被映射,該空間被分配到外部存儲(chǔ)器地址空間不被映射,該空間被分配到外部存儲(chǔ)器0l0l-SARAM -SARAM 被映射到片內(nèi)程序空間(被映射到片內(nèi)程序空間(8000h8000h87FFh87FFh););1010-SARAM -SARAM 被映射到片內(nèi)數(shù)據(jù)空間(被映射到片內(nèi)數(shù)據(jù)空間(0800h08

6、00h0FFFh0FFFh)1111-SARAM -SARAM 被映射到片內(nèi)程序空間,又被映射到片內(nèi)數(shù)據(jù)空間被映射到片內(nèi)程序空間,又被映射到片內(nèi)數(shù)據(jù)空間 5.1.3 Flash5.1.3 Flash程序存儲(chǔ)器程序存儲(chǔ)器片內(nèi)的片內(nèi)的FlashFlash存儲(chǔ)器映射到程序存儲(chǔ)器空間。存儲(chǔ)器映射到程序存儲(chǔ)器空間。MP/MCMP/MC* *引腳引腳決定是訪問(wèn)片內(nèi)的程序存儲(chǔ)器(決定是訪問(wèn)片內(nèi)的程序存儲(chǔ)器(FlashFlash)還是)還是訪問(wèn)片外的程序存儲(chǔ)器。訪問(wèn)片外的程序存儲(chǔ)器。1.1. FlashFlash程序存儲(chǔ)器程序存儲(chǔ)器使用電擦除的方式多次使用,以便進(jìn)行程序的修改和使用電擦除的方式多次使用,以便進(jìn)

7、行程序的修改和開(kāi)發(fā)。開(kāi)發(fā)。FlashFlash模塊特點(diǎn):模塊特點(diǎn):運(yùn)行在運(yùn)行在3.3V3.3V電壓模式。電壓模式。對(duì)對(duì)FlashFlash編程時(shí)需要在編程時(shí)需要在VCCPVCCP上上有有5V5V電壓供電。電壓供電。FlashFlash有多個(gè)向量,用來(lái)保護(hù)它,有多個(gè)向量,用來(lái)保護(hù)它,防止被擦除防止被擦除。FlashFlash的的編程是由編程是由CPUCPU來(lái)實(shí)現(xiàn)來(lái)實(shí)現(xiàn)的。的。2.Flash2.Flash控制方式寄存器(控制方式寄存器(FCMRFCMR)FlashFlash模塊有模塊有4 4個(gè)寄存器??刂圃趥€(gè)寄存器??刂圃贔lashFlash中的操作。在任意給定的時(shí)間內(nèi),用中的操作。在任意給定的時(shí)

8、間內(nèi),用戶可以訪問(wèn)戶可以訪問(wèn)FlashFlash模塊中的存儲(chǔ)器陣列,也可以訪問(wèn)控制寄存器,但模塊中的存儲(chǔ)器陣列,也可以訪問(wèn)控制寄存器,但不能同時(shí)訪問(wèn)。不能同時(shí)訪問(wèn)。FlashFlash模塊有一個(gè)模塊有一個(gè)FlashFlash控制方式寄存器控制方式寄存器來(lái)選擇兩種訪問(wèn)模式來(lái)選擇兩種訪問(wèn)模式。該寄存器。該寄存器映映射在內(nèi)部射在內(nèi)部I/OI/O空間的空間的FF0FhFF0Fh。該寄存器的功能如下:。該寄存器的功能如下:使用使用OUTOUT指令,可以指令,可以將將FlashFlash模塊置于寄存器訪問(wèn)模式模塊置于寄存器訪問(wèn)模式,被使用的數(shù)據(jù)操作,被使用的數(shù)據(jù)操作數(shù)是無(wú)意義的。例如:數(shù)是無(wú)意義的。例如:

9、 OUT dummy, 0FF0Fh OUT dummy, 0FF0Fh ;選擇寄存器訪問(wèn)方式;選擇寄存器訪問(wèn)方式使用使用ININ指令,可指令,可將將FlashFlash模塊置于存儲(chǔ)器陣列訪問(wèn)模式模塊置于存儲(chǔ)器陣列訪問(wèn)模式,被使用的數(shù)據(jù)操作,被使用的數(shù)據(jù)操作數(shù)是無(wú)意義的。例如:數(shù)是無(wú)意義的。例如: IN dummy, 0FF0Fh IN dummy, 0FF0Fh;選擇存儲(chǔ)器陣列訪問(wèn)方式選擇存儲(chǔ)器陣列訪問(wèn)方式5.2 5.2 程序存儲(chǔ)器程序存儲(chǔ)器程序存儲(chǔ)器空間程序存儲(chǔ)器空間尋址范圍為尋址范圍為64K64K字字,控制信號(hào)控制信號(hào)PSPS* *,包括了片內(nèi),包括了片內(nèi)FlashFlash和和DARA

10、MDARAM。圖圖5.15.1所示為所示為L(zhǎng)F2407ALF2407A的程序存儲(chǔ)器空的程序存儲(chǔ)器空間的映射。間的映射。 圖圖5.1 5.1 程序存儲(chǔ)器映射程序存儲(chǔ)器映射程序存儲(chǔ)器的兩個(gè)決定因素:程序存儲(chǔ)器的兩個(gè)決定因素:(1) (1) MP/MCMP/MC* *引腳狀態(tài);引腳狀態(tài);(2) (2) ST1.12ST1.12,CNFCNF位;位;5.3 5.3 數(shù)據(jù)存儲(chǔ)器數(shù)據(jù)存儲(chǔ)器數(shù)據(jù)空間數(shù)據(jù)空間64K64K字字,控制信號(hào),控制信號(hào)DSDS* *, 32K32K字字是內(nèi)部空間(是內(nèi)部空間(0000h-0000h-7FFFh7FFFh), ,包括了包括了DARAMDARAM和片和片內(nèi)外設(shè)的映射寄存器

11、。內(nèi)外設(shè)的映射寄存器。另外另外32K32K字字空間(空間(8000h-FFFFh8000h-FFFFh)為外部。為外部。 1.1.數(shù)據(jù)空間映射數(shù)據(jù)空間映射內(nèi)部:內(nèi)部:DARAMDARAM(BOBO、B1B1、B2B2););SARAMSARAM;寄存器等;寄存器等;外部:用戶自己外擴(kuò)存儲(chǔ)器。外部:用戶自己外擴(kuò)存儲(chǔ)器。圖圖5.2 5.2 數(shù)據(jù)存儲(chǔ)器映射數(shù)據(jù)存儲(chǔ)器映射2.2.數(shù)據(jù)存儲(chǔ)器頁(yè)面數(shù)據(jù)存儲(chǔ)器頁(yè)面數(shù)據(jù)空間數(shù)據(jù)空間分頁(yè)管理,分頁(yè)管理,整個(gè)整個(gè)64K64K字空間分為字空間分為512512頁(yè)頁(yè),每頁(yè),每頁(yè)128128個(gè)字個(gè)字。頁(yè)地址:頁(yè)地址: 9 9位,位,DPDP(位于(位于ST0ST0中);中

12、);頁(yè)內(nèi)地址:頁(yè)內(nèi)地址:7 7位的偏移量;位的偏移量;兩種尋址方式:兩種尋址方式:直接尋址直接尋址和和間接尋址間接尋址。直接尋址時(shí),在直接尋址時(shí),在當(dāng)前頁(yè)對(duì)當(dāng)前頁(yè)對(duì)128128字的數(shù)據(jù)塊進(jìn)行尋址。用戶必須事字的數(shù)據(jù)塊進(jìn)行尋址。用戶必須事先指定數(shù)據(jù)頁(yè),并在訪問(wèn)數(shù)據(jù)存儲(chǔ)器的指令中指定先指定數(shù)據(jù)頁(yè),并在訪問(wèn)數(shù)據(jù)存儲(chǔ)器的指令中指定偏移量偏移量,偏移量為偏移量為7 7位位。 編程時(shí)要注意編程時(shí)要注意,訪問(wèn)下面的數(shù)據(jù)存儲(chǔ)器的地址空間是非法的,訪問(wèn)下面的數(shù)據(jù)存儲(chǔ)器的地址空間是非法的,并會(huì)對(duì)并會(huì)對(duì)NMINMI置位。除了以下地址,任何對(duì)外設(shè)寄存器映射中置位。除了以下地址,任何對(duì)外設(shè)寄存器映射中的的保留地址保留地

13、址的訪問(wèn)的訪問(wèn)也是非法也是非法的。的。0080h-00FFh0080h-00FFh701Fh-71FFh (CAN701Fh-71FFh (CAN內(nèi)部的內(nèi)部的) )0500h-07FFh0500h-07FFh7230h-73FFh (7230h-73FFh (部分在部分在CANCAN內(nèi)部?jī)?nèi)部) )1000h-700Fh1000h-700Fh7440h-74FFh7440h-74FFh7030h-703Fh7030h-703Fh7540h-75FFh7540h-75FFh7060h-706Fh7060h-706Fh7600h-77EFh7600h-77EFh77F4h-7FFFh77F4h-7F

14、FFh7080h-708Fh7080h-708Fh 5.4 I/O5.4 I/O空間空間I/OI/O空間的尋址為空間的尋址為64K64K字,控制信字,控制信號(hào)號(hào)ISIS* *,圖圖5.35.3 為為L(zhǎng)F2407ALF2407A的的I/OI/O空間映射??臻g映射。圖圖5.3 I/O5.3 I/O空間地址映射空間地址映射I/OI/O空間的訪問(wèn):空間的訪問(wèn):(1)(1)匯編:匯編:ININ,OUTOUTIN DAT, 8000h;IN DAT, 8000h;OUT DAT, 8000h;OUT DAT, 8000h;(2)(2)C C語(yǔ)言語(yǔ)言:ioportioport unsigned int un

15、signed int port8000port8000; ;port8000=0 x80;port8000=0 x80;a=port8000;a=port8000;5.5 5.5 外部存儲(chǔ)器接口信號(hào)說(shuō)明外部存儲(chǔ)器接口信號(hào)說(shuō)明LF240 x DSPLF240 x DSP的外部存儲(chǔ)器接口信號(hào)如下:的外部存儲(chǔ)器接口信號(hào)如下:nA0A0A15A15:16-bit16-bit地址線;地址線;nD0D0D15D15:16-bit16-bit數(shù)據(jù)線;數(shù)據(jù)線;nDSDS* *、PSPS* *、ISIS* *:外部數(shù)據(jù)空間、程序空間、外部數(shù)據(jù)空間、程序空間、I/OI/O空間選通線;空間選通線;nR/WR/W*

16、*、W/RW/R* *:讀讀/ /寫(xiě)信號(hào)、寫(xiě)寫(xiě)信號(hào)、寫(xiě)/ /讀信號(hào),表明數(shù)據(jù)傳輸方向;讀信號(hào),表明數(shù)據(jù)傳輸方向;nRDRD* *、WEWE* *:讀使能、寫(xiě)使能,讀寫(xiě)周期有效;讀使能、寫(xiě)使能,讀寫(xiě)周期有效;nSTRBSTRB* *:外部選通信號(hào);外部選通信號(hào);nREADYREADY:等待信號(hào),低電平使等待信號(hào),低電平使DSPDSP等待;等待;nMP/MCMP/MC* *:微處理器微處理器/ /微控制器方式選擇;微控制器方式選擇;nENA-144ENA-144:1=1=使能外部存儲(chǔ)器接口信號(hào),使能外部存儲(chǔ)器接口信號(hào),0=0=無(wú)外部存儲(chǔ)器;無(wú)外部存儲(chǔ)器;nVIS-OEVIS-OE* *:可視輸出使

17、能,在可視輸出方式下,外部數(shù)據(jù)總線驅(qū)可視輸出使能,在可視輸出方式下,外部數(shù)據(jù)總線驅(qū)動(dòng)為輸出時(shí),為低電平。動(dòng)為輸出時(shí),為低電平。圖圖5.4 5.4 外部存儲(chǔ)器讀時(shí)序外部存儲(chǔ)器讀時(shí)序電子工程師必備知電子工程師必備知識(shí)之三:識(shí)之三:時(shí)序圖時(shí)序圖注意:注意:(1)(1)相關(guān)的信號(hào);相關(guān)的信號(hào);(2)(2)信號(hào)變化順序;信號(hào)變化順序;(3)(3)時(shí)間冗余量;時(shí)間冗余量;5.6 5.6 等待狀態(tài)發(fā)生器等待狀態(tài)發(fā)生器當(dāng)訪問(wèn)速度較慢的外部存儲(chǔ)器或外設(shè)時(shí),當(dāng)訪問(wèn)速度較慢的外部存儲(chǔ)器或外設(shè)時(shí),CPUCPU需要產(chǎn)生等待狀態(tài)。需要產(chǎn)生等待狀態(tài)。等待狀態(tài)等待狀態(tài)是以是以機(jī)器周期機(jī)器周期為單位。為單位。外部等待外部等待:

18、READYREADY信號(hào),硬件等待;信號(hào),硬件等待;內(nèi)部等待內(nèi)部等待:等待狀態(tài)發(fā)生器等待狀態(tài)發(fā)生器WSGRWSGR,軟件等待;,軟件等待;通過(guò)添加等待狀態(tài),可以為通過(guò)添加等待狀態(tài),可以為CPUCPU訪問(wèn)外部存儲(chǔ)器或外設(shè)延長(zhǎng)時(shí)間,訪問(wèn)外部存儲(chǔ)器或外設(shè)延長(zhǎng)時(shí)間,可使可使快速的快速的CPUCPU訪問(wèn)慢速的外部存儲(chǔ)器或外設(shè)訪問(wèn)慢速的外部存儲(chǔ)器或外設(shè)。5.6.1 5.6.1 用用READYREADY信號(hào)產(chǎn)生等待狀態(tài)信號(hào)信號(hào)產(chǎn)生等待狀態(tài)信號(hào)若若CPUCPU所訪問(wèn)的外設(shè)沒(méi)有準(zhǔn)備好,則外設(shè)應(yīng)所訪問(wèn)的外設(shè)沒(méi)有準(zhǔn)備好,則外設(shè)應(yīng)保持保持READYREADY引腳為低,引腳為低,此時(shí)此時(shí)LF240 xLF240 x等待

19、一個(gè)等待一個(gè)CLKOUTCLKOUT周期,并再次檢查周期,并再次檢查READYREADY腳。腳。圖圖5.5 5.5 加入加入1 1個(gè)等待周期個(gè)等待周期的讀時(shí)序的讀時(shí)序READYREADY引腳引腳可用來(lái)產(chǎn)生任意數(shù)目的等待狀態(tài)。可用來(lái)產(chǎn)生任意數(shù)目的等待狀態(tài)。注意:注意:當(dāng)當(dāng)LF240 xLF240 x全速運(yùn)行時(shí),它不能對(duì)第一個(gè)周期作出快速響應(yīng)全速運(yùn)行時(shí),它不能對(duì)第一個(gè)周期作出快速響應(yīng)來(lái)產(chǎn)生一個(gè)基于來(lái)產(chǎn)生一個(gè)基于READYREADY的等待狀態(tài)。為立即得到等待狀態(tài),的等待狀態(tài)。為立即得到等待狀態(tài),應(yīng)先使用片內(nèi)等待狀態(tài)發(fā)生器,然后用應(yīng)先使用片內(nèi)等待狀態(tài)發(fā)生器,然后用READYREADY信號(hào)產(chǎn)生其余信號(hào)產(chǎn)

20、生其余的等待狀態(tài)。的等待狀態(tài)。5.6.2 5.6.2 用等待狀態(tài)發(fā)生器產(chǎn)生等待狀態(tài)用等待狀態(tài)發(fā)生器產(chǎn)生等待狀態(tài)等待狀態(tài)發(fā)生器可以通過(guò)編程為指定的片外空間(數(shù)據(jù)、程序或等待狀態(tài)發(fā)生器可以通過(guò)編程為指定的片外空間(數(shù)據(jù)、程序或I/OI/O)產(chǎn)生等待狀態(tài),產(chǎn)生等待狀態(tài),而與而與READYREADY信號(hào)的狀態(tài)無(wú)關(guān)。信號(hào)的狀態(tài)無(wú)關(guān)。等待狀態(tài)發(fā)生器(等待狀態(tài)發(fā)生器(WSGRWSGR,I/OI/O空間空間地址為地址為FFFFhFFFFh)。)。位位10-910-9:BVISBVIS,總線可視模式,總線可視模式,提供了一種跟蹤內(nèi)部總線活動(dòng)的方式。,提供了一種跟蹤內(nèi)部總線活動(dòng)的方式。00-00-總線可視模式關(guān);總線可視模式關(guān);01-01-總線可視模式開(kāi);總線可視模式開(kāi);10-10-數(shù)據(jù)的地址總線輸出到外部地址總線數(shù)據(jù)的地址總線輸出到外部地址總線 數(shù)據(jù)的數(shù)據(jù)總線輸出到外部

溫馨提示

  • 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)論