0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

存儲器的層次結(jié)構(gòu)是怎么樣的

Wildesbeast ? 來源:今日頭條 ? 作者:算法集市 ? 2020-02-15 16:07 ? 次閱讀

存儲技術(shù):不同存儲技術(shù)的訪問時間差異很大。速度較快的技術(shù)每字節(jié)的成本要比速度較慢的技術(shù)高,而且容量小。

一種組織存儲器系統(tǒng)的方法,成為存儲器層次結(jié)構(gòu)(memory hierarchy)。如下圖所示,是一個典型的存儲器層次結(jié)構(gòu)。

一般而言,從高層往底層走,存儲設(shè)備變得更慢、更便宜和更大。

L0是少量快速的CPU寄存器,CPU可以在一個時鐘周期內(nèi)訪問它們。

L1、L2、L3是一個或多個小型到中型的基于SRAM的高速緩存存儲器,CPU可以在幾個時鐘周期內(nèi)訪問它們。

L4是一個大的基于DRAM的主存,CPU可以在幾十到幾百個時鐘周期內(nèi)訪問它們。

L5是慢速但是容量很大的本地磁盤。

L6是一層附加的遠程服務(wù)器上的磁盤,需要通過網(wǎng)絡(luò)來訪問它們。

存儲器層次結(jié)構(gòu)的中心思想是:對于每個k,位于k層的更快更小的存儲設(shè)備作為位于k+1層的更大更慢的存儲設(shè)備的緩存。換句話說,層次結(jié)構(gòu)中的每一層都緩存來自較低一層的數(shù)據(jù)對象。

例如,本地磁盤作為通過網(wǎng)絡(luò)從遠程磁盤取出的文件(如web頁面)的緩存,主存作為本地磁盤上數(shù)據(jù)的緩存,以此類推,直到最小的緩存—CPU寄存器。

如上圖所示,第k層的存儲器被劃分成較少的塊的集合,每個塊的大小與k+1層的塊的大小一樣。在任何時刻,第k層的緩存包含第k+1層塊的一個子集的副本。

當程序需要第k+1層的某個數(shù)據(jù)對象d時,首先在當前存儲在第k層的一個塊中查找d。如果d剛好緩存在第k層,那么就是緩存命中(cache hit)。該程序直接從第k層讀取d,根據(jù)存儲器層次結(jié)構(gòu)的性質(zhì),這要比從第k+1層讀取d更快。另一方面,如果第k層沒有緩存數(shù)據(jù)對象d,即緩存不命中(cache miss)。當發(fā)生緩存不命中時,第k層的緩存從第k+1層緩存中取出包含d的那個塊,如果第k層緩存已經(jīng)滿了,就會覆蓋現(xiàn)存的一個塊。

概況來說,基于緩存的存儲器層次結(jié)構(gòu)行之有效,是因為較慢的存儲設(shè)備比較快的存儲設(shè)備更便宜,還因為程序傾向于展示局部性:

利用時間局部性:由于時間局部性,同一數(shù)據(jù)對象可能會被多次使用。一旦一個數(shù)據(jù)對象在第一次不命中時被復(fù)制到緩存中,我們就會期望后面對該目標有一系列的訪問命中,從而提高訪問速度。

利用空間局部性:塊通常包含有多個數(shù)據(jù)對象,由于空間局部性,我們會期望后面對該塊中其他對象的訪問能夠補償不命中后復(fù)制該塊的花費。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 存儲器
    +關(guān)注

    關(guān)注

    38

    文章

    7521

    瀏覽量

    164093
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10890

    瀏覽量

    212425
  • 存儲技術(shù)
    +關(guān)注

    關(guān)注

    5

    文章

    742

    瀏覽量

    45832
收藏 人收藏

    評論

    相關(guān)推薦

    全面解析存儲器層次結(jié)構(gòu)原理

    靠近 CPU 的小、快速的高速緩存存儲器(cache memory)做為一部分存儲在相對慢速的主存儲器(main memory)中數(shù)據(jù)和指令的緩沖區(qū)域。
    發(fā)表于 12-25 09:21 ?1474次閱讀
    全面解析<b class='flag-5'>存儲器層次</b><b class='flag-5'>結(jié)構(gòu)</b>原理

    stm32存儲結(jié)構(gòu)& 存儲器映射

    問題: 1 什么是存儲器映射?是怎么一個運作過程?2 Stm32總體架構(gòu)3CM3內(nèi)核結(jié)構(gòu)1 STM32系統(tǒng)結(jié)構(gòu) 要想深刻理解STM32的存儲器,需要首先知道STM32的系統(tǒng)
    發(fā)表于 08-14 09:22

    存儲器層次結(jié)構(gòu)及其分類

    目錄【1】存儲器層次結(jié)構(gòu)【2】存儲器的分類【3】SRAM基本原理:結(jié)構(gòu):芯片參數(shù)與引腳解讀:CPU與SRAM的連接方式【4】DRAM基本原
    發(fā)表于 07-29 06:21

    存儲系統(tǒng)的層次結(jié)構(gòu)

    文章目錄存儲系統(tǒng)的層次結(jié)構(gòu)技術(shù)指標層次結(jié)構(gòu)局部性原理主存儲器讀寫
    發(fā)表于 07-29 09:47

    存儲器層次結(jié)構(gòu)主要體現(xiàn)在什么地方?為什么要分這些層次?

    計算機中哪些部件可以用于存儲信息?存儲器層次結(jié)構(gòu)主要體現(xiàn)在什么地方?為什么要分這些層次?存取周期和存取時間的區(qū)別是什么?半導(dǎo)體
    發(fā)表于 09-28 06:38

    存儲器是什么?分為哪幾類呢

    各種各樣的存儲器結(jié)構(gòu)。存儲器分類按存儲器介質(zhì)分類按存儲方式分類按在計算機中的作用分類存儲器
    發(fā)表于 01-19 06:35

    MCP存儲器,MCP存儲器結(jié)構(gòu)原理

    MCP存儲器,MCP存儲器結(jié)構(gòu)原理 當前給定的MCP的概念為:MCP是在一個塑料封裝外殼內(nèi),垂直堆疊大小不同的各類存儲器或非存儲器芯片,
    發(fā)表于 03-24 16:31 ?2358次閱讀

    存儲器層次結(jié)構(gòu)原理圖解分析

    存儲器層次結(jié)構(gòu)原理圖解分析   學習目錄:     理解多級存儲層次的思想及其作用; &nb
    發(fā)表于 04-13 16:16 ?1.3w次閱讀

    51匯編(一):存儲器結(jié)構(gòu)

    文章目錄內(nèi)存結(jié)構(gòu)程序存儲器數(shù)據(jù)存儲器通用寄存區(qū)位尋址區(qū)一般RAM區(qū)特殊功能寄存區(qū)內(nèi)存結(jié)構(gòu)MC
    發(fā)表于 11-23 09:36 ?13次下載
    51匯編(一):<b class='flag-5'>存儲器</b><b class='flag-5'>結(jié)構(gòu)</b>

    系統(tǒng)存儲器層次結(jié)構(gòu)——高速緩存詳解

    ? ? ? 存儲系統(tǒng)的層次結(jié)構(gòu)可以分為5級:寄存組、高速緩存Cache、主存、虛擬存儲器和外部存儲器
    的頭像 發(fā)表于 06-18 20:47 ?6169次閱讀
    系統(tǒng)<b class='flag-5'>存儲器層次</b><b class='flag-5'>結(jié)構(gòu)</b>——高速緩存詳解

    存儲器的工作原理、分類及結(jié)構(gòu)

    存儲器是計算機中的重要組成部分,用于存儲程序、數(shù)據(jù)和控制信息等。根據(jù)存儲信息的介質(zhì)和訪問方式的不同,存儲器可以分為隨機存儲器(RAM)、只讀
    發(fā)表于 09-09 16:18 ?6185次閱讀

    簡述存儲器層次結(jié)構(gòu)及其分層原因

    存儲器層次結(jié)構(gòu)是計算機系統(tǒng)中存儲器層次化組織,分為多個層次,每個
    發(fā)表于 02-05 09:46 ?2249次閱讀

    淺談存儲器層次結(jié)構(gòu)

    通過多級存儲器的設(shè)計,存儲器層次結(jié)構(gòu)能夠在存儲容量和訪問速度之間找到一個平衡點。高速緩存存儲器和主存儲器
    發(fā)表于 02-19 13:54 ?877次閱讀
    淺談<b class='flag-5'>存儲器層次</b><b class='flag-5'>結(jié)構(gòu)</b>

    存儲器層次結(jié)構(gòu)如何解釋?

    存儲器層次結(jié)構(gòu)可以從圖片中清晰的看出來,圖片中共分為六級,越向上的層次,存儲器速度越快,容量更小,造價越高。
    的頭像 發(fā)表于 02-19 14:03 ?1020次閱讀
    <b class='flag-5'>存儲器層次</b><b class='flag-5'>結(jié)構(gòu)</b>如何解釋?

    存儲器層次結(jié)構(gòu)包括哪些

    存儲器層次結(jié)構(gòu)是計算機系統(tǒng)中一個關(guān)鍵且復(fù)雜的部分,它決定了數(shù)據(jù)的存儲、訪問和處理效率。存儲器層次
    的頭像 發(fā)表于 09-10 14:28 ?766次閱讀