# Ch.5 Memory Hierarchy ###### tags: `Computer Organization`, `計算機組織` ## 導讀 Ch.5中會分成四大段落 1. [Memory Hierarchy](https://hackmd.io/@joanne8826/Bkv0RWZ2U) 2. [Cache Basic](https://hackmd.io/@joanne8826/HkAR0VW2L) 3. [Measuring and Improving Cache Performance](https://hackmd.io/@joanne8826/S1eYD-t3L) 4. [Virtual Memory](https://hackmd.io/@joanne8826/HkeW2mXTU) 首先,會先介紹常見的SRAM跟DRAM 然後是memory hierarchy,這是一個影響電腦系統效能很大的因素,可以讓電腦看起來擁有<font color=red>便宜、大容量、高效能</font>的記憶體系統 背後原理的部分會介紹: 1. principle of locality(針對少數<font color=blue>經常被用到</font>的資料處理) 2. the basics of caches(快取記憶體構成要素及運作過程) 3. measuring and improving cache performance(如何評估並改進快取記憶體的效能) - 之後討論vitual memory的部分(若跟OS比較,可發現OS是用軟體的角度出發,而CO是以computer architecture協助OS)。可以在本章節中注意到**軟硬體的合作**,非常重要!! - 然後是common framework for memory hierarchy(達成memory hierarchy的方法)。通常都很相似,如尋找一個許久未用的block將之替換,或修改block時要同步更新。 - 最後是using a finite state machine to control a simple cache(如何設計簡單的cache的controller)跟parallelism and memory hierarchies: cache coherence(多核心如何確保cache的資料一致)。後者是相當重要而困難的問題。