1. 程式人生 > 其它 >計算機組成原理筆記 第三章 儲存系統

計算機組成原理筆記 第三章 儲存系統

第三章 儲存系統

1.儲存系統圖基本概念

1.1儲存器的層次結構

1.2儲存器的分類

1.3儲存器的效能指標

2主儲存器的組成

2.1半導體元件的原理

1)儲存矩陣:由大量相同的位儲存單元陣列構成。

(2)譯碼驅動:將來自地址匯流排的地址訊號翻譯成對應儲存單元的選通訊號,該訊號在讀寫電路的配合下完成對被選中單元的讀和寫。(包括譯碼器,驅動器)

(3)讀寫電路:完成讀寫操作。(包括讀出放大器,寫入電路)。

(4)讀/寫控制線:控制晶片是進行讀操作還是寫操作。

(5)片選線:儲存器是由很多這樣的晶片組成的,每個晶片的地址範圍都是總體地址的一部分,片選線就是確定究竟是哪個晶片被選中。

(6)地址線:單向輸入的,位數和儲存字的個數有關。

(7)資料線:雙向的,位數和讀出或寫入的資料位數有關。

資料線和地址線共同反映一個晶片的儲存容量的大小,舉個例子,如果地址線有12根,資料線有16根,那麼這個晶片的容量就是2^12 × 16=8KB。

這只是半導體晶片的基本結構,根據儲存器的儲存資訊原理的不同可以分為SRAM和DRAM。

給電容充電的過程就是寫資料過程 電容充電就是兩電極板 電壓不同 (差別很大) 造成電子移動

放電就是讀資料

2.2儲存晶片的基本原理

晶片中的引腳

定址

3.SRAM和DRAM

雙穩態觸發器 左右BL BLX兩邊分別讀0 或1

​ 寫入時 1 左邊BL加高電平 右邊BLX加低電平

​ 寫入時 0 左邊BL加低電平 右邊BLX加高電平

重新整理

送行列地址

SRAM

SRAM的儲存元(通常把存放一個二進位制位的物理器件稱為儲存元)採用的是雙穩態觸發器(六管MOS)來記憶資訊的,因此即使資訊被讀出後,它仍然會保持其原狀態而不需要再生。當然斷電之後肯定會丟失資訊的,畢竟RAM是易失性的儲存器。SRAM的存取速度快,功耗較大,一般用來做Cache。

DRAM

DRAM與SRAM的原理不同,它是利用儲存元電路中柵極電容上的電荷來儲存資訊的,常見的DRAM的基本儲存電路通常分為三管式和單管式。DRAM採用地址複用技術,地址線是原來的一半,地址訊號分為行和列兩次傳送(這也就是DRAM比SRAM存取速度要慢的因素)。

既然DRAM採用電容上的電荷來儲存資訊,而電容上的電荷不可能不丟失,一般情況下,DRAM電容上的電荷只能維持1至2ms,過了這個時間,電荷就丟了,資訊也就沒了,所以我們要每隔一定時間對其進行重新整理,這個時間通常分為重新整理週期。常用的重新整理方法有以下三種:

(1)集中重新整理:在一個重新整理週期內,利用一段固定的時間,依次對儲存器的所有行逐一再生,在此期間停止對儲存器的讀寫操作,這段時間成為“死時間”,又叫訪存的“死區”。顯然這種方法可以讓讀寫操作不受重新整理工作的影響,但是在死區不能訪問儲存器,CPU只能乾等著。

(2)分散重新整理:把對每一行的重新整理分散到各個工作週期中去。比較生動地解釋就是,原來我的工作只有存取,現在我的工作多了一個,就是在存取完之後順便再“打掃”一行。這樣,一個儲存器的系統工作週期分為兩部分,前半部分有用正常讀、寫或保持,後半部分用於重新整理某一行。這種方法不存在死區,但是增加了系統的存取週期,如果原來存取週期只有0.5us,現在變成了1us,增加的0.5us要重新整理一行。

(3)非同步重新整理:前兩種方法的結合,它可以縮短死時間,又充分利用最大重新整理間隔為2ms的特點。做法是將重新整理週期除以行數,得到每兩次重新整理之間的時間間隔t,邏輯電路每過t就產生一次重新整理請求。這樣就避免了使CPU等待過長時間,還減少了重新整理次數,提高了工作效率。

區別

1、原理上的不同,SRAM原理是雙穩態觸發器,DRAM是柵極電容上的電荷;原理的不同導致SRAM不用重新整理,DRAM要重新整理。

2、DRAM採用地址複用,SRAM不是。具體原因是這樣的,儲存晶片上的內容不是我們想象中的那樣,一個地址對應一個儲存單元,然後它們按照一維那樣子順序排列下去,它是個二維的儲存矩陣,之前的儲存晶片基本結構也提到了,所以它晶片內部定址的時候是分行和列去找的,對於SRAM,它將行列直接傳入進去找到相應儲存單元,但是DRAM通常用作記憶體而不是Cache,它需要比Cache更大的容量而不是速度,所以在容量大的情況下,它的晶片內行數和列數也多,要一起傳入豈不是要很多根地址線,這是不划算的,所以用地址複用,行和列分別傳入。

總結

4.ROM(只讀儲存器 )

(1)隨機儲存器(RAM,Random Access Memory):任何一個儲存單元的內容都可以隨機存取,存取時間與儲存單元的物理位置無關。計算機中的主存往往採用這種隨機儲存器,按照儲存資訊的原理不同可分為靜態RAM(SRAM,原理是觸發器寄存資訊)和動態RAM(DRAM,原理是電容充放電寄存資訊)。

(2)只讀儲存器(ROM,Read Only Memory):顧名思義,儲存器的內容只能隨機讀出而不能寫入。資訊一旦寫入就固定不變了,內容斷電不會丟失。通常用它來儲存固定不變的程式、常數和漢字型檔,甚至用於作業系統的固化。它與RAM可以共同作為主存的一部分,統一構成主存的地址域。

ROM派生出很多儲存器,其中也包含可重複寫入的型別,ROM和RAM的存取方式都為隨機存取,廣義上的只讀儲存器已經可以通過電擦除等方式進行寫入了,“只讀”的概念並沒有保留,只保留了斷電內容保留、隨機讀取的特性,其寫入速度比讀取速度慢很多。

ROM的型別:

掩膜式只讀儲存器(MROM,Masked ROM):它的內容由廠家根據使用者的要求在生產中直接寫入,寫入後任何人都無法改變其中的內容。任何人都不可更改

一次可程式設計只讀儲存器(PROM,Programmable ROM):它可以實現一次性程式設計的只讀儲存器。允許使用者利用專門的裝置寫入自己的 程式,一旦寫入後,內容無法改變。一次之後就不可以更改

可擦除可程式設計只讀儲存器(EPROM,Erasable Programmable ROM):可由使用者對其內容進行多次改寫。需要修改時先將其內容全部擦除,然後再程式設計。EPROM由可以分為兩種,紫外線擦除(UVEPROM)和電擦除(EEPRO)。雖然EPROM可以讀寫,但是寫入時間過長,寫入次數有限,不能代替RAM。

閃速儲存器(Flash Memory): (U盤,和SD卡就是快閃記憶體 ) 每個儲存元只需單個mos管,位密度比RAM高,它是在EPROM和EEPROM的基礎上發展起來的,可以在不加電的情況下長期儲存資訊,又能線上多次快速擦除和重寫,價格比EPROM便宜,擦除重寫速度比EEPROM快。

固態硬碟(SSD,Solid State Drives):用固態電子儲存器晶片陣列製成的硬碟,由控制單元和儲存單元(FLASH晶片)組成

可進行多次快速擦除和重寫

(3)序列訪問儲存器:對儲存單元進行讀寫操作時,需要按照其物理位置的先後順序定址,包括順序存取儲存器(如磁帶)和直接存取儲存器(如磁碟)。需要注意的是這裡的直接存取儲存器是介於順序存取和隨機存取之間的,如對磁碟的讀寫,按照柱面號,盤面號,扇區號找到存放資訊的小區域,再順序存取所需要的資訊。

5.儲存器與CPU的連線

一般的儲存器與CPU連線 暴露出的線

兩種擴充套件

位擴充套件 當資料匯流排寬度>儲存晶片位元組時 需要位擴充套件 也就是把用位數較少的多片儲存器(ROM或RAM)組合成位數更多的儲存器的擴充套件方法。一般是在字數夠用而每個字的位數不能夠用的情況下使用。

字擴充套件 擴充套件主存字數 用多片位寬相同的儲存器(ROM或RAM)晶片擴充套件包含更多儲存器的過程。字擴充套件只擴充套件晶片的容量。

位擴充套件

擴充套件為8bit

字擴充套件

片選訊號 1 0 表示 選中和未選中(工作和不工作)

線選法 侷限性大

優化

增加一個非門

譯碼片選法

字位同時擴充套件

6.雙埠RAM和多模組儲存器

速度上 平均一樣

靈活性 單體多字儲存器更差

7 Cache(快取記憶體)

7.1Cache基本原理及概念

例題

7.2Cache和主存的對映方式

三種方式

全相聯對映

直接對映

組相連對映

7.2.1.全相聯對映

7.2.2.直接對映

7.2.3.組相連對映

7.3 Cache 替換演算法

每次被訪問的主存塊都會被調入(複製)到Cache中 Cache很小 主存很大 如果Cache滿了怎麼辦?------------替換演算法

7.3.1 隨機演算法

7.3.2 先進先出演算法

7.3.3 近期最少使用演算法

7.3.4 最不經常使用演算法(LFU)

7.4 Cache 寫策略

CPU修改了(Cache中的資料副本,)如何確保主存中資料母本的一致性?——Cache與策略

寫回法

全寫法

寫分配法

非寫分配法

多級Cache

8.虛擬儲存器

8.1頁式儲存器

頁內地址的到校取決於頁的大小 1kb=2~10 10位元表示

引入塊表

8.2虛擬儲存器