第七周:學習任務教材第六章
了解儲存裝置的型別和特點;重點理解區域性性原理和快取思想在儲存層次結構中的應用
重點練習題:6.2,6.3,6.4,6.8,6.9,6.10,6.11,6.12, 6.13
儲存器層次結構
實際上,儲存器系統是乙個具有不同容量和成本和訪問時間的儲存裝置的層次結構。
cpu暫存器儲存著最常用的資料。
三種常見儲存技術:
ram/rom/磁碟
6.1.1隨機訪問儲存器
隨機訪問儲存器分為兩類:靜態和動態。
靜態ram(sram)比動態ram(dram)更快,但也貴的多。
sram用來作為快取記憶體儲存器,既可以在cpu晶元上,也可以在片下。
dram用來作為主存以及圖形系統的幀緩衝區。
典型地,乙個桌面系統的sram不會超過幾兆位元組,但是dram卻有幾百或幾千兆位元組。
1.靜態ram
sram將每個位儲存在乙個雙穩態的儲存器單元裡。
每個單元是用乙個六晶體電路來實現的。
這個電路有這樣乙個屬性,它可以無期限地保持在兩個不同的電壓配置或狀態之一。其他的任何狀態都是不穩定的——從不穩定狀態開始,電路會迅速地轉移到穩定狀態中的乙個。這樣乙個儲存器單元雷士倒轉的鐘擺。
2.動態ram
dram將每個位儲存為對乙個電容的充電。
這個電容非常小,通常只有大約30毫微微法拉。
dram儲存器可以製造得非常緊密,但是,與sram不同,dram儲存器單元對干擾非常敏感。當電容的電壓唄擾亂之後,就不會恢復了。
暴露在光線下會導致電容電壓的改變。
只要有供電,sram就會保持不變,與dram不同,它需要不斷地重新整理。
sram的儲存比dram快。
sram對諸如光和雜訊這樣的干擾不敏感。
代價是sram單元比dram單元使用更多的電晶體,因而密集度低,而且更貴,功耗更大。
3.傳統的dram
dram晶元中的單元被分成d個超單元,每個超單元都由w個dram單元組成。
乙個dxw的dram總共儲存了dw位資訊。
4.儲存器模組
dram晶元包裝在儲存器模組中,它是插到主機板的擴充套件槽上的。
最常見的包裝包括168個引腳的雙列直插儲存器模組,它以64位為塊傳送資料到儲存控制器和從儲存器傳出資料,還包括72個引腳的單列直插儲存器模組,它以32位為塊傳送資料。
5.增強的dram
每種都是基於傳統的dram單元,並進行了一些優化,改進了訪問基本dram單元的速度。
快頁模式dram:
傳統的dram將超單元的一整行拷貝到它的內部緩衝區中,使用乙個,然後丟棄剩餘的。
擴充套件資料輸出dram:
fpm dram的乙個增強的形式,它允許單獨的cas訊號在實際上靠得更緊密一點。
同步dram:
sdram能夠比那些非同步的儲存器更快地輸出超單元的內容。
雙倍資料速率同步dram:
ddrsdram是對sdram的一種增強,它通過使用兩個時鐘沿作為控制訊號,從而使dram的速度翻倍。
rambus dram:
這是另一種私有技術,它的最大頻寬比ddr sdram的更高。
它用在圖形系統的幀緩衝區中。
6.非易失性儲存器:
如果斷電,dram和sram會丟失它們的資訊,從這個意義來說,它們是易失去的。另一方面,非易失性儲存器即使是在關電之後,也還儲存著它們的資訊。
prom只能被程式設計一次。prom的每個儲存器單元有一種熔絲,它只能用高電流熔斷一次。
7.訪問主存:
資料流通過稱為匯流排的共享電子電路在處理器和dram主存之間來來回回。每次cpu和主存之間來來回回。
每次cpu和主存之間的資料傳送都是通過一系列步驟來完成的,這些步驟稱為匯流排事物。寫事務從cpu傳送資料到主存。
rom有prom,eprom,e2prom,flash。
6.1.2磁碟儲存
磁碟構造:磁碟由碟片構成,表面覆蓋著磁性記錄材料,**有乙個可以旋轉的主軸
,旋轉速率大約為5400-15000每分鐘。磁碟的每個表面是一組稱為磁軌的同心圓組成,每個磁軌被劃分為一組扇區,扇區之間由一些間隙隔開,間隙儲存用來標識扇區的格式化位。
磁碟容量決定因素:
記錄密度(位/英吋):磁軌一英吋的段中可以放入的位數。
邏輯磁碟塊:記憶體可以看成位元組陣列、磁碟可以看成塊陣列
現代大容量磁碟使用一種稱為多區記錄的技術,柱面的集合被分割稱為不相交的子集合,稱為記錄區,每個區包含一組連續的柱面。
磁碟操作:
磁碟用讀/寫頭來讀寫儲存在磁性表面的位,而讀寫頭連線到乙個傳動臂 一端,通過移動轉動臂將讀寫頭定位在磁軌上的機械運動稱為尋道。磁碟以扇區大小的塊來讀寫資料,對扇區的訪問時間有三個主要的組成部分:
轉動臂將讀/寫頭定位到包含目標扇區的磁軌上所需時間。
驅動器等待目標扇區的第乙個位旋轉到讀/寫頭下的時間。最大為
平均旋轉時間是tmax的一半。
邏輯磁碟塊:
現代磁碟將盤面的構造視為乙個b個扇區大小的邏輯塊序列,磁碟控制器維護著邏輯塊號和實際磁碟扇區之間的對映關係。邏輯塊號可識別為乙個盤面、磁軌、扇區三元組,唯一的標識了相對應的物理扇區。記憶體可以看成位元組陣列、磁碟可以看成塊陣列。
連線到i/o裝置:所有的i/o裝置都是通過i/o匯流排連線到cpu和主記憶體。有三種不同型別:
通用序列匯流排:乙個廣泛的使用標準,用於連線各種外圍i/o裝置。
圖形卡(或介面卡):包含硬體和軟體邏輯,代表cpu在顯示器上畫像素。
主機匯流排介面卡: 將乙個或者多個磁碟連線到i/o匯流排,使用乙個特別的主機匯流排介面定義的通訊協議。
訪問磁碟:
cpu使用一種稱為儲存器對映i/o的技術向i/o裝置發出命令,位址空間中為i/o裝置通訊保留的位址稱為i/o埠。
匯流排:資料匯流排、控制匯流排、位址匯流排
6.2 侷限性
乙個編寫良好的電腦程式通常具有良好的區域性性。他們傾向於引用鄰近於其他最近引用過的資料項的資料項,或者最近引用過的資料項本身。這種傾向稱為區域性性原理。
區域性性有兩種不同形式:時間區域性性和空間區域性性。
有良好區域性性的程式比區域性性差的程式執行的更快。
6.2.2 取指令的區域性性
6.3 儲存器層次結構
快取記憶體是乙個小而快速的儲存裝置,作為儲存在更大、也更慢的裝置中的資料物件的緩衝區域。使用快取記憶體的過程稱為快取。
儲存器層次結構的中心思想是:每一層都快取來自較低一層的資料物件。
第k+1層的儲存器被劃分為連續的資料物件片,稱為塊。每個塊都有唯一的位址和名字。類似第k層也被劃分為較少的塊的集合,塊的大小與k+1層是一樣的,第k層的快取包含第k+1層塊的乙個子集的拷貝。
資料總是以塊為傳送單元在兩層之間來回拷貝。不同層次對之間可以有不同的塊大小。
6.4 快取記憶體儲存器
快取記憶體結構(s,e,b,m):快取記憶體組、快取記憶體行、塊
早期的計算機系統的儲存器層次結構:cpu暫存器、dram主儲存器和磁碟儲存
cpu與主存之間插入
- l1快取記憶體:位於cpu暫存器檔案和主存之間,訪問速度2-4個時鐘週期
- l2快取記憶體:位於l1快取記憶體和主存之間,訪問速度10個時鐘週期
- l3快取記憶體:位於l2快取記憶體和主存之間,訪問速度30或40個時鐘週期
一般而言,快取記憶體的結構可以用元組(s,e,b,m)來描述。
快取記憶體的大小(或容量)c指的是所有塊的大小的和。標記位和有效位不包括在內。因此,c=s*e*b.
6.4.2 直接對映快取記憶體
快取記憶體確認乙個請求是否命中,然後抽取出被請求的字的過程,分為三步:
組選擇、行匹配、字抽取
根據e(每個組的快取記憶體行數)快取記憶體被分為不同的類。每個組只有一行的快取記憶體被稱為直接對映快取記憶體。
1.直接對映快取記憶體中的組選擇
2.直接對映快取記憶體中的行匹配和字選擇
3.直接對映快取記憶體中不命中時的行替換
如果快取不命中,那麼需要從儲存器層次結構中的下一層取出被請求的塊,然後將新的塊儲存在組索引位指示的組中的乙個高速緩行中。
替換規則:用新取出的行替換當前的行。
6.4.4 全相聯快取記憶體
乙個全相聯快取記憶體是由乙個包含所有高速緩行的組(e=c/b)組成的。
1.全相聯快取記憶體中的組選擇
2.全相聯快取記憶體中的行匹配和字選擇
儲存器層次結構
sram 靜態隨機訪問儲存器 sram儲存穩定,訪問速度快 具有雙穩定特性,一般作為1,2級快取記憶體。dram 動態隨機訪問儲存器 dram儲存不如sram訪問速度快,相比也沒有sram穩定,一般作為主存 記憶體 和圖形系統幀緩衝區。dram晶元中的乙個單元儲存乙個位,w個單元儲存乙個位元組,w個...
儲存器層次結構
電腦程式的乙個基本屬性 區域性性 儲存器層次結構分類 1 cpu暫存器 放在cpu裡面的記憶體,特點 速度快,高 2 快取記憶體儲存器 主儲存器 磁碟。特點 cpu之外,需要時訪問呼叫,相對較慢 兩類ram 1 sram 靜態 1 更快,更貴。2 作為快取記憶體儲存器,主要負責運算需要 3 雙穩態的...
儲存器層次結構
在簡單模型中,儲存器系統是乙個線性的位元組陣列,而cpu能夠在乙個常數時間內訪問每個儲存器的位置。雖然到現在為止沒有任何乙個有效的模型,可以模仿它的工作方式。實際上,儲存器系統是乙個具有不同容量,成本和訪問時間的儲存裝置的層次結構。cpu暫存器儲存最常用的資料。靠近cpu的小的,快速的告訴快取儲存器...