存儲器管理(帶存儲器實例).ppt

存儲器管理(帶存儲器實例).ppt

ID:55595174

大?。?.88 MB

頁數(shù):54頁

時間:2020-05-20

存儲器管理(帶存儲器實例).ppt_第1頁
存儲器管理(帶存儲器實例).ppt_第2頁
存儲器管理(帶存儲器實例).ppt_第3頁
存儲器管理(帶存儲器實例).ppt_第4頁
存儲器管理(帶存儲器實例).ppt_第5頁
資源描述:

《存儲器管理(帶存儲器實例).ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在PPT專區(qū)-天天文庫。

1、桂林電子科技大學(xué),信息通信學(xué)院14.3存儲器管理LPC2400系列芯片使用三種存儲器:片內(nèi)Flash、片內(nèi)RAM和外部擴(kuò)展存儲器。LPC2400系列芯片集成了512KB的片內(nèi)Flash存儲器和64KB的靜態(tài)SRAM(LPC2470沒有片內(nèi)Flash)。片內(nèi)Flash存儲器可以用做代碼和數(shù)據(jù)的固態(tài)存儲。對Flash存儲器的編程可以通過幾種方法來實現(xiàn):通過串口UART0進(jìn)行的在系統(tǒng)編程(ISP),通過調(diào)用嵌入片內(nèi)的固化代碼進(jìn)行的在應(yīng)用編程(IAP)以及通過內(nèi)置的JTAG接口編程。片內(nèi)SRAM支持8位、16位和32位訪問。外部擴(kuò)展存儲器則使用外部存儲器接口進(jìn)行擴(kuò)展,通過外部存儲器控制

2、器(EMC)可以擴(kuò)展兩組共8個Bank的存儲器組(Staticmemorybank0~bank3,Dynamicmemorybank0~bank3)。桂林電子科技大學(xué),信息通信學(xué)院2存儲器映射桂林電子科技大學(xué),信息通信學(xué)院3外設(shè)存儲器映射LPC2400系列處理器的外設(shè)根據(jù)內(nèi)部總線分為AHB和APB外設(shè)兩類。AHB外設(shè)和APB外設(shè)在存儲空間里都占2MB的區(qū)域,可各自分配最多128個外設(shè)。每個外設(shè)空間的規(guī)格都為16KB。所有外設(shè)寄存器不管規(guī)格大小,都按照字地址進(jìn)行分配(32位邊界),且不管字還是半字寄存器都是一次性訪問。例如,不可能對一個字寄存器的最高字節(jié)執(zhí)行單獨的讀或?qū)懖僮?。AH

3、B地址分配見如4.5,APB地址分配間表4.11。桂林電子科技大學(xué),信息通信學(xué)院4桂林電子科技大學(xué),信息通信學(xué)院5LPC2478.h頭文件舉例桂林電子科技大學(xué),信息通信學(xué)院6存儲器重映射(MEMORYREMAP)存儲器映射的基本概念每個存儲器組在存儲器映射中都有一個“物理上的”位置。它是一個地址范圍,該范圍內(nèi)可寫入程序代碼,每個存儲空間的大小是固定的,這樣就不需要將代碼設(shè)計成在不同地址范圍內(nèi)運行。這樣做代碼就可以很方便的移植了。如果向沒有地址映射的存儲空間進(jìn)行讀寫訪問,將引發(fā)預(yù)取指令或數(shù)據(jù)中止異常。桂林電子科技大學(xué),信息通信學(xué)院7關(guān)于BOOTROM片內(nèi)FLASH的最后8KB空間

4、是保留的,里面固化了對FLASH進(jìn)行編程、擦除,程序引導(dǎo)等固件FIRMWARE。在用戶程序運行是可以調(diào)用其中的程序?qū)LASH進(jìn)行在應(yīng)用編程IAP,可以對FLASH進(jìn)行串行編程的程序ISP。處理器在硬件啟動時BOOTROM空間被映射到0x7FFFE000處運行。作用是引導(dǎo)用戶程序運行。桂林電子科技大學(xué),信息通信學(xué)院8存儲器重映射由于ARM7處理器上的中斷向量所處具體位置(地址0x00000000~0x0000001C)與LPC的片內(nèi)存儲器空間有沖突,BootROM和SRAM空間的一小部分空間需要重新映射,來實現(xiàn)在不同操作模式下對中斷的不同使用。這個過程叫存儲器重映射。桂林電子科

5、技大學(xué),信息通信學(xué)院9存儲器重映射存儲器重新映射的部分允許在不同模式下處理中斷。LPC2400共支持3種存儲器映射模式,見表4.13。當(dāng)處理器工作在用戶Flash模式下時,不需要進(jìn)行中斷向量的重新映射,而在其它模式下則需要重新映射。它包括中斷向量區(qū)(32字節(jié))和額外的32字節(jié),一共是64字節(jié)。重新映射的代碼位置與地址0x00000000~0x0000003F重疊,包含在SRAM、Flash和BootBlock中的向量必須包含跳轉(zhuǎn)到實際中斷處理程序的分支或者其它執(zhí)行跳轉(zhuǎn)到中斷處理程序的轉(zhuǎn)移指令。桂林電子科技大學(xué),信息通信學(xué)院10存儲器映射控制寄存器MEMMAP存儲器映射控制寄存器

6、用于改變從地址0x00000000開始的中斷向量的映射。這允許運行在不同存儲器空間中的代碼對中斷進(jìn)行控制。MEMMAP是一個可讀寫寄存器,地址為0xE01FC040,功能為選擇從FlashBootBlock、用戶Flash或RAM中讀取ARM中斷向量。桂林電子科技大學(xué),信息通信學(xué)院11存儲器映射控制寄存器MEMMAPLPC2400的MAP位的硬件復(fù)位值為00。Boot裝載程序會將用戶看到的復(fù)位值更改,該程序總是在復(fù)位后立即運行。存儲器映射控制寄存器MEMMAP只從處理ARM異常(中斷)必需的3個數(shù)據(jù)源(FLASH中斷向量、SRAM中斷向量和BootROM中斷向量,每個64字節(jié))

7、中選擇一個使用。中斷向量:0x00000008實際中斷向量MEMMAP[1:0]=00(boot模式)0x7FFFE008MEMMAP[1:0]=01(Flash模式)0x00000008MEMMAP[1:0]=10(用戶模式)0x40000008桂林電子科技大學(xué),信息通信學(xué)院12設(shè)置MEMMAP程序示例桂林電子科技大學(xué),信息通信學(xué)院13存儲器加速模塊(MAM,MemoryAcceleratorModule)存儲器加速模塊(MAM)可以將需要的下一個ARM指令鎖存,以防止CPU取指暫停。與以

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。