层次结构存储系统
存儲(chǔ)器分類:
按存儲(chǔ)元件分類
半導(dǎo)體存儲(chǔ)器
磁表面存儲(chǔ)器
光盤(pán)存儲(chǔ)器
按讀取方式
隨機(jī)存取存儲(chǔ)器
順序存取存儲(chǔ)器
直接存取存儲(chǔ)器
相聯(lián)存儲(chǔ)器
按信息可更改性
只讀存儲(chǔ)器
讀寫(xiě)存儲(chǔ)器
按斷電后可保存性
非易失性
易失性
按功能分類
高速緩存
主存
輔存
后備存儲(chǔ)器
主存的組成及操作
組成:
地址寄存器
地址譯碼器
記憶單元
地址譯碼器將地址寄存器中的地址在記憶單元中找到,根據(jù)讀寫(xiě)控制信號(hào)和Memory data register中的在指定記憶單元中數(shù)據(jù)讀寫(xiě)
存儲(chǔ)器的主要性能指標(biāo)
讀出時(shí)間
寫(xiě)入時(shí)間
存儲(chǔ)周期
各類存儲(chǔ)器元件特點(diǎn)
只讀芯片ROM
讀寫(xiě)芯片RAM
靜態(tài)讀取SRAM 成本高速度快,無(wú)需刷新和讀后再生 6個(gè)晶體管控制實(shí)現(xiàn)一個(gè)二進(jìn)位
動(dòng)態(tài)讀取DRAM 成本低速度較慢 要刷新和讀后再生, 1個(gè)晶體管實(shí)現(xiàn)一個(gè)二進(jìn)位
FLASH存儲(chǔ)器 比如U盤(pán),可讀可寫(xiě)
存儲(chǔ)器的層次結(jié)構(gòu)
從上到下 速度越來(lái)越慢 容量越來(lái)越大 價(jià)格越來(lái)越低
寄存器
高速緩存
主存
輔存
海量后備存儲(chǔ)
數(shù)據(jù)的交換只能在相連的兩層之間交換
這種設(shè)定的原因:
程序運(yùn)行的時(shí)間局部性和空間局部性
高速緩存cache
引入cache的出發(fā)點(diǎn)
指令的時(shí)間局部性和空間局部性如下右圖展示
循環(huán)具有時(shí)間局部性,
數(shù)組具有空間局部性
程序的局部性對(duì)程序性能的影響舉例
對(duì)于一個(gè)二維數(shù)組,按照行優(yōu)先還是列優(yōu)先索引,會(huì)產(chǎn)生是否能利用cache的問(wèn)題,按照行可以,按照列不可以
cache和主存的關(guān)系
主存的內(nèi)容都是按照塊分割,cache將主存的塊復(fù)制形成映像,但是當(dāng)復(fù)制新的塊時(shí)會(huì)將舊的塊沖掉
cache操作過(guò)程
cpu直接給的是虛擬地址,并不是主存地址
實(shí)現(xiàn)cache需要解決的問(wèn)題
直接映射主存地址劃分
主存標(biāo)記位是最后被剩下來(lái)的
首先根據(jù)地址的中間四位確定槽號(hào)
根據(jù)曹的標(biāo)記和主存標(biāo)記是否相同確定是否在cache中命中
直接映射方式的特點(diǎn)
cache容量的計(jì)算
直接映射方式的特點(diǎn)
直接映射最大的缺點(diǎn)在于不能充分利用cache,效率低
全相聯(lián)映射
在cahce中的查找時(shí)間特別長(zhǎng)。
只能遍歷的對(duì)比標(biāo)記位
用時(shí)間效率的下降換取空間效率的提高
組相聯(lián)映射方式
中和了直接映射和全相聯(lián)映射,時(shí)間效率和空間效率的平衡
組內(nèi)按照全相聯(lián)
組間按照直接映射
cache命中率
cache的關(guān)聯(lián)度
cache替換算法
先進(jìn)先出算法
最近最少用算法
最近最少用算法可能出現(xiàn)顛簸現(xiàn)象,就是總是訪問(wèn)剛剛淘汰的塊
需要一個(gè)計(jì)算記錄塊最近使用的次數(shù)
計(jì)算器兩位就可以
cache舉例
寫(xiě)策略概述
寫(xiě)策略問(wèn)題
cache實(shí)現(xiàn)的幾個(gè)因素
L1 cache 指令和數(shù)據(jù)分開(kāi)
時(shí)間更重要
L2 L3一般位聯(lián)合cache
命中率更重要
cache實(shí)現(xiàn)舉例
cache綜合計(jì)算舉例
總結(jié)
- 上一篇: LSTM 和 GRU
- 下一篇: cache 简单理解