




已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
存儲系統(tǒng)機(jī)制存儲器映射Cache存儲系統(tǒng)機(jī)制存儲器就是用來存儲信息的部件,存儲器是嵌入式系統(tǒng)硬件中的重要組成部分。設(shè)計(jì)嵌入式系統(tǒng)的存儲器時(shí)需要考慮:是否需要擴(kuò)展;整個(gè)嵌入式系統(tǒng)的存儲器是由片內(nèi)和片外兩部分組成。為了解決速度和內(nèi)存容量的問題,在系統(tǒng)中采用虛擬地址空間和高速緩存來提高內(nèi)存的平均性能。存儲管理單元(MMU)進(jìn)行地址轉(zhuǎn)換,它在一個(gè)小的物理內(nèi)存中提供相對較大的虛擬存儲空間。存儲器部件的分類按在系統(tǒng)中的地位分類:(1)主存儲器(Main Memory, 簡稱內(nèi)存或主存)(2)輔助存儲器(Auxiliary Memory,Secondary Memory,簡稱輔存或外存)按存儲介質(zhì)分類:(1)磁存儲器(Magnetic Memory),(2)半導(dǎo)體集成電路存儲器(通常稱為半導(dǎo)體存儲器),(3)光存儲器(Optical Memory),(4)激光光盤存儲器(Laser Optical Disk)按信息存取方式分類:(1)隨機(jī)存取存儲器RAM(2)只讀存儲器ROM存儲器的組織和結(jié)構(gòu)嵌入式存儲器一般采用存儲密度較大的存儲器芯片,典型的嵌入式存儲器系統(tǒng)由ROM、RAM、EPROM等組成。常用的存儲器隨機(jī)存儲器(RAM)(1)靜態(tài)隨機(jī)存儲器(SRAM)(2)動態(tài)隨機(jī)存儲器(DRAM)只讀存儲器(ROM),它在嵌入式系統(tǒng)中非常有用,因?yàn)樵S多代碼或數(shù)據(jù)不隨時(shí)間改變。(1)工廠編程的只讀存儲器(2)現(xiàn)場可編程只讀存儲器存儲器的性能大容量、高速度、低價(jià)格是評價(jià)存儲器性能的三個(gè)主要指標(biāo),也是存儲體系設(shè)計(jì)的主要目標(biāo)。容量:SwWlm。其中W為存儲體的字長(單位為位或字節(jié)),l為單個(gè)存儲體的字?jǐn)?shù),m為并行工作的存儲體個(gè)數(shù)。速度:m個(gè)存儲體并行工作時(shí),可達(dá)到的最大頻率寬度為BmWmTM 。其中TM是連續(xù)起動一個(gè)存儲器所必要的時(shí)間間隔,TMTA。Bm是連續(xù)提供數(shù)據(jù)的速率。價(jià)格:具有SM位的存儲器,每位價(jià)格表示為c=CSm。其中C是總價(jià)格。存儲體系的組成單體單字存儲器單體多字存儲器多體單字交叉存取存儲器多體多字交叉存取存儲器并行主存系統(tǒng):能并行讀出多個(gè)CPU字的單體多字和多體單字及多體多字的交叉存取系統(tǒng)。存儲體系的形式存儲層次結(jié)構(gòu)的組成原則: 每位價(jià)格從上往下依次減少。 存儲容量從上往下依次增加。 存取速度從上往下依次減慢。 CPU的訪問頻度從上往下依次減少??偩€協(xié)議總線是CPU與存儲器和設(shè)備通信的機(jī)制??偩€的一個(gè)主要作用是提供到存儲器的接口。大部分總線協(xié)議的基本構(gòu)件是四周期握手協(xié)議 ??偩€讀寫總線的基本操作是讀和寫。Clock 提供總線組件各部分同步。當(dāng)總線讀時(shí),R/W為1。當(dāng)總線寫時(shí),R/W為0。Address是一個(gè)a位信號束,為訪問提供地址。Data是一個(gè)n位信號束,它可從CPU得到數(shù)據(jù)或向CPU傳送數(shù)據(jù)。Data ready當(dāng)數(shù)據(jù)束上值合法時(shí)發(fā)信號??偩€的時(shí)序圖總線行為以時(shí)序圖說明。時(shí)序圖表示總線上的信號如何隨時(shí)間變化。直接內(nèi)存訪問(DMA)多數(shù)情況下,數(shù)據(jù)的傳輸需要CPU的介入。但是,有時(shí)候某些數(shù)據(jù)傳輸類型無須CPU加入。直接存儲器訪問(DMA)是允許讀寫不由CPU控制的總線操作系統(tǒng)總線配置一個(gè)微處理器系統(tǒng)可能含有多條總線。高速設(shè)備可連到高速總線上,低速設(shè)備連到別的總線上。橋:使總線可以互連的邏輯電路。高速總線通常要更昂貴的電路和連接器,可通過使用較慢、較便宜的總線來降低低速設(shè)備成本。橋允許總線獨(dú)立操作,在I/O操作中可提供某些并行性。橋不僅是高速總線的受控器,而且是低速總線的主控器。橋從高速總線上獲取指令而將它們傳到低速總線,它還將結(jié)果從低速總線傳到高速總線上。橋還可以作為兩橋之間的協(xié)議翻譯器。ARM存儲數(shù)據(jù)類型六種數(shù)據(jù)類型:(1) 8位有符號和無符號字節(jié)。(2)16位有符號和無符號半字。(3)32位有符號和無符號字。ARM指令都是32位的字,必須以字(4字節(jié))為單位邊界對齊。Thumb指令是16位半字,必須以2字節(jié)位單位邊界對齊。在內(nèi)部,所有ARM操作都是面向32位的操作數(shù);只有數(shù)據(jù)傳送指令支持較短的字節(jié)和半字的數(shù)據(jù)類型。當(dāng)從存儲器調(diào)入一個(gè)字節(jié)和半字時(shí),根據(jù)指令對數(shù)據(jù)的操作類型,將其無符號0或有符號“符號位”擴(kuò)展為32位,進(jìn)而作為32位數(shù)據(jù)在內(nèi)部進(jìn)行處理。ARM體系結(jié)構(gòu)所支持的最大尋址空間為4GB(232字節(jié))ARM體系結(jié)構(gòu)將存儲器看作是從零地址開始的字節(jié)的線性組合。從零字節(jié)到三字節(jié)放置第一個(gè)存儲的字?jǐn)?shù)據(jù),從第四個(gè)字節(jié)到第七個(gè)字節(jié)放置第二個(gè)存儲的字?jǐn)?shù)據(jù),依次排列。ARM體系結(jié)構(gòu)可以用兩種方法存儲字?jǐn)?shù)據(jù),稱之為大端格式和小端格式ARM存儲格式數(shù)據(jù)存儲格式有兩種:(1)大端模式:較高的有效字節(jié)存放在較低的存儲器地址,較低的有效字節(jié)存放在較高的存儲器地址。(2)小端模式:較高的有效字節(jié)存放在較高的存儲器地址,較低的有效字節(jié)存放在較低的存儲器地址。ARM存儲周期4種基本類型:空閑周期。非順序周期。順序周期。協(xié)處理器寄存器傳送周期。ARM總線接口信號分類以ARM7為例ARM7TDMI的總線接口信號分成4類:時(shí)鐘和時(shí)鐘控制信號:MCLK、ECLK、nRESET、nWAIT。地址類信號:A31:0、nRW、MAS1:0、nOPC、nTRANS、LOCK、TBIT。存儲器請求信號:nMREQ、SEQ。數(shù)據(jù)時(shí)序信號:D31:0、DIN31:0、DOUT31:0、ABORT、BL3:0。ARM總線接口可以實(shí)現(xiàn)的總線周期總線周期使用nMREQ和SEQ信號編碼。4種不同類型的總線周期。N周期:非順序周期,最簡單的總線周期;存儲控制器必須啟動存儲器訪問來滿足這個(gè)請求;該方式存儲系統(tǒng)常需要長的訪問時(shí)間。S周期:順序周期,實(shí)現(xiàn)總線上的突發(fā)傳送;第一個(gè)周期,地址可與前一個(gè)內(nèi)部周期相同;與非順序訪問相比響應(yīng)更快,訪問時(shí)間更短。I周期:內(nèi)部周期,不要求存儲器訪問;可廣播下一次訪問的地址以便開始譯碼,但存儲控制器不允許進(jìn)行存儲器訪問。C周期:協(xié)處理器寄存器傳遞周期,通過數(shù)據(jù)總線向或從協(xié)處理器傳送數(shù)據(jù);不需存儲周期,存儲控制器不啟動事務(wù);傳送期間,存儲系統(tǒng)不允許驅(qū)動數(shù)據(jù)總線。高速緩存(Cache)的分類1)統(tǒng)一Cache和獨(dú)立的數(shù)據(jù)/程序Cache統(tǒng)一Cache:一個(gè)存儲系統(tǒng)中指令預(yù)取時(shí)使用的Cache和數(shù)據(jù)讀寫時(shí)使用的Cache是同一個(gè)Cache。獨(dú)立的Cache:一個(gè)存儲系統(tǒng)中指令預(yù)取時(shí)使用的Cache和數(shù)據(jù)讀寫時(shí)使用的Cache是各自獨(dú)立的。用于指令預(yù)取的Cache稱為指令Cache。用于數(shù)據(jù)讀寫的Cache稱為數(shù)據(jù)Cache。使用獨(dú)立的數(shù)據(jù)Cache和指令Cache,可以在同一個(gè)時(shí)鐘周期中讀取指令和數(shù)據(jù),而不需要雙端口的Cache。但此時(shí)要注意保證指令和數(shù)據(jù)的一致性。(2)寫通Cache和寫回Cache當(dāng)CPU更新了Cache的內(nèi)容時(shí),要將結(jié)果寫回到主存中。寫通法: write-throught,指CPU在執(zhí)行寫操作時(shí),必須把數(shù)據(jù)同時(shí)寫入Cache和主存。寫回法: write-back,指CPU在執(zhí)行寫操作時(shí),被寫的數(shù)據(jù)只寫入Cache,不寫入主存。僅當(dāng)需要替換時(shí),才把已經(jīng)修改的Cache塊寫回到主存中。(3)讀操作分配Cache和寫操作分配Cache當(dāng)進(jìn)行數(shù)據(jù)寫操作時(shí),可能Cache未命中,這時(shí)根據(jù)Cache執(zhí)行的操作不同。讀操作分配Cache:當(dāng)進(jìn)行數(shù)據(jù)寫操作時(shí),如果Cache未命中,只是簡單地將數(shù)據(jù)寫入主存中。主要在數(shù)據(jù)讀取時(shí),才進(jìn)行Cache內(nèi)容預(yù)取。寫操作分配Cache:當(dāng)進(jìn)行數(shù)據(jù)寫操作時(shí),如果Cache未命中,Cache系統(tǒng)將會進(jìn)行Cache內(nèi)容預(yù)取,從主存中將相應(yīng)的塊讀取到Cache中相應(yīng)的位置,并執(zhí)行寫操作,把數(shù)據(jù)寫入到Cache中。對于寫通類型的Cache,數(shù)據(jù)將會同時(shí)被寫入到主存中,對于寫回類型的Cache數(shù)據(jù)將在合適的時(shí)候?qū)懟氐街鞔嬷小ache的工作原理在Cache存儲系統(tǒng)當(dāng)中,把主存儲器和Cache都劃分成相同大小的塊。主存地址可以由塊號M和塊內(nèi)地址N兩部分組成。同樣,Cache的地址也由塊號m和塊內(nèi)地址n組成。Cache地址映像和變換方式1)直接映像快,造價(jià)低。但由于映射策略簡單,所以有一定的局限性。如果訪問頻繁的塊正好被映射到同一個(gè)塊,就不能充分利用高速緩存的好處。(2)組相聯(lián)映像組相聯(lián)映像由組的個(gè)數(shù)來標(biāo)識,每個(gè)組被實(shí)現(xiàn)為一個(gè)直接映射高速緩存。高速緩存請求同時(shí)廣播到所有的組。如果某組中有這個(gè)單元,該高速緩存便報(bào)告命中。比直接映射慢,命中率較高。(3)全相聯(lián)映像主存中任意一個(gè)塊都可以映射到Cache中的任意一個(gè)塊的位置上。不同的ARM有不同大小的高速緩存和組織結(jié)構(gòu)。Cache的替換算法(1)輪轉(zhuǎn)法維護(hù)一個(gè)邏輯計(jì)數(shù)器,利用該計(jì)數(shù)器依次選擇將要被替換出去的Cache塊。這種算法容易預(yù)測最壞情況下Cache的性能。缺點(diǎn):在程序發(fā)生很小的變化時(shí),可能造成Cache平均性能急劇的變化。(2)隨機(jī)替換算法通過一個(gè)偽隨機(jī)數(shù)發(fā)生器產(chǎn)生一個(gè)偽隨機(jī)數(shù),用新塊將編號為該偽隨機(jī)數(shù)的Cache塊替換掉。算法簡單,易于實(shí)現(xiàn)。沒有考慮程序的局部性特點(diǎn),也沒有利用以前塊地址分布情況,因而效果較差。不易預(yù)測最壞情況下Cache的性能。存儲管理單元MMU存儲管理單元在CPU和物理內(nèi)存之間進(jìn)行地址轉(zhuǎn)換。由于是將地址從邏輯空間映射到物理空間,因此這個(gè)轉(zhuǎn)換過程一般稱為內(nèi)存映射。在ARM系統(tǒng)中,存儲管理單元MMU主要工作:(1)虛擬存儲空間到物理存儲空間的映射。在ARM中采用了頁式虛擬存儲管理。(2)存儲器訪問權(quán)限的控制。(3)設(shè)置虛擬存儲空間的緩沖的特性MMU的頁表頁表是實(shí)現(xiàn)上述功能的一個(gè)重要手段,它實(shí)際上是位于內(nèi)存中的一個(gè)對照表。為了實(shí)現(xiàn)不同層次的管理,系統(tǒng)提供了基于段或頁的存儲器訪問方式1. 段(section):由1MB 的存儲器塊構(gòu)成2. 大頁(large page):由64KB 的存儲器塊構(gòu)成3. 小頁(small page):由4KB 的存儲器塊構(gòu)成4. 極小頁(tiny page):由1KB 的存儲器塊構(gòu)成MMU的頁表續(xù)地址變換條目:頁表的每一行對應(yīng)與虛擬地址空間的一個(gè)頁,該行同時(shí)包含了該虛擬內(nèi)存頁對應(yīng)的物理內(nèi)存頁的地址、該頁的訪問權(quán)限以及緩沖特性等。我們將頁表中的一行稱為地址變換條目。頁表:存放在內(nèi)存中,系統(tǒng)通常有一個(gè)寄存器來保存頁表的基地址。ARM系統(tǒng)中使用的就是CP15的寄存器C2??毂恚簭奶摂M地址到物理地址的轉(zhuǎn)換實(shí)際上就是查詢頁表的過程。由于程序在執(zhí)行過程中具有局部性,即在一段時(shí)間內(nèi)只是局限在少數(shù)幾個(gè)單元,為了加快頁表的查詢速度,在系統(tǒng)中通常使用一個(gè)容量更小、速度更快的存儲器件來保存當(dāng)前需要訪問的地址變換條目,這個(gè)容量小的頁表又稱作快表(TLB)。快表的使用更新:當(dāng)CPU需要訪問內(nèi)存時(shí),首先在TLB中查找需要的地址變換條目。若不存在則在內(nèi)存頁表中查詢,并把查詢的結(jié)果添加到TLB中。清除:當(dāng)內(nèi)存中頁表的內(nèi)容改變或者使用新的頁表時(shí),TLB中的內(nèi)容需要清空。CP15的寄存器8用于完成該功能。鎖定:可以將一個(gè)地址變換條目鎖定在TLB中,以加快訪問速度,CP15的寄存器10用于完成該功能。MMU的存儲訪問過程使能MMU時(shí)存儲訪問過程。C控制位:Cachable,B控制位 :Bufferable禁止MMU時(shí)存儲訪問過程。先要確定芯片是否支持cache和write buffer。如果芯片規(guī)定當(dāng)禁止MMU時(shí)禁止cache和write buffer,則存儲訪問將不考慮C和B控制位。如果芯片規(guī)定當(dāng)禁止MMU時(shí)可以使能cache和write buffer,則數(shù)據(jù)訪問時(shí),C=0,B=0;指令讀取時(shí),如果使用分開的TLB,那么C=1,如果使用統(tǒng)一的TLB,那么C=0。存儲訪問不進(jìn)行權(quán)限控制,MMU也不會產(chǎn)生存儲訪問中止信號。所有的物理地址和虛擬地址相等,即使用平板存儲模式。MMU中的地址變換過程通過兩級頁表實(shí)現(xiàn)。一級頁表:包含以段為單位的地址變換條目,以及指向二級頁表的指針。一級頁表實(shí)現(xiàn)的地址映射粒度較大。以段為單位的地址變換過程只需要一級頁表。二級頁表:包含以大頁和小頁為單位的地址變換條目。以頁為單位的地址變換過程需要二級頁表。ARM支持的存儲塊大小有4種:(1)段(Section):大小為1MB的存儲塊。(2)大頁(Large Pages):大小為64KB的存儲塊。(3)小頁(Small Pages):大小為4KB的存儲塊。(4)極小頁(Tiny Pages):大小為1KB的存儲塊。一級頁表地址變換過程CP15的寄存器C2中存放的是內(nèi)存中頁表的基地址。形成一個(gè)32位的索引值,使用該32位索引值從頁表中找出相應(yīng)的地址變換條目。該條目或者包含一個(gè)一級描述符,或者包含一個(gè)指向二級頁表的指針。一級描述符一級描述符:從頁表中得到的相應(yīng)地址變換條目。它定義了與之相應(yīng)的1M存儲空間是如何映射的。一級描述符類型: 4種格式的一級描述符,由位1:0定義。粗粒度頁表描述符粗粒度頁表描述符:一級描述符的位1:0為0b01(0b代表二進(jìn)制),包含了粗粒度的二級頁表的物理地址。粗粒度頁表描述符獲取二級描述符過程段描述符段描述符:一級描述符的位1:0為0b10。段的地址變換過程細(xì)粒度頁表描述符細(xì)粒度頁表描述符:一級描述符的位1:0為0b11,包含了細(xì)粒度的二級頁表的物理地址。細(xì)粒度頁表描述符獲取二級描述符過程MMU中的存儲訪問權(quán)限控制在MMU中,寄存器C1的R、S控制位和頁表中地址轉(zhuǎn)換條目中的訪問權(quán)限控制位(A、P)聯(lián)合作用控制
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030中國腹腔鏡壓榨機(jī)行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報(bào)告
- 2025至2030中國脫水冷凍水果行業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報(bào)告
- 2025至2030中國膠合板行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報(bào)告
- 2025至2030中國聚醚消泡劑行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報(bào)告
- 2025至2030中國聚光鏡行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報(bào)告
- 基于大數(shù)據(jù)的營銷活動分析報(bào)告
- 2025至2030中國美甲行業(yè)市場發(fā)展現(xiàn)狀及發(fā)展趨勢與投資發(fā)展報(bào)告
- 2025至2030中國羊奶粉行業(yè)市場深度研究及發(fā)展前景投資可行性分析報(bào)告
- 2025至2030中國網(wǎng)絡(luò)動漫行業(yè)營銷模式與投資契機(jī)深度評估報(bào)告
- 2025至2030中國罐式集裝箱行業(yè)發(fā)展研究與產(chǎn)業(yè)戰(zhàn)略規(guī)劃分析評估報(bào)告
- 預(yù)防艾滋病、梅毒和乙肝母嬰傳播相關(guān)報(bào)表、上報(bào)流程和要求
- 《鐵路技術(shù)管理規(guī)程》(普速鐵路部分)-14年新版
- 食用油儲存期品質(zhì)變化的太赫茲光譜無損識別
- 胎盤早剝預(yù)案演練腳本
- 五山文學(xué)全集第一卷
- 聚磷腈功能高分子材料的合成及應(yīng)用
- 中國鐵路總公司《鐵路技術(shù)管理規(guī)程》(高速鐵路部分)2014年7月
- 鈣加維生素Dppt課件(PPT 14頁)
- TRD深基坑止水帷幕施工方案(22頁)
- 八少八素初試甄別試題
- 企業(yè)組織架構(gòu)圖模板
評論
0/150
提交評論