阿摩線上測驗 登入

申論題資訊

試卷:106年 - 106 專技高考_電子工程技師:電子計算機原理#66508
科目:計算機概論、大意(資訊科學概論,電腦常識,電子計算機概論)
年份:106年
排序:0

申論題內容

一、在快取記憶體(cache)系統,直接對映(direct mapping)、關聯對映(associative mapping) 及集合關聯對映(set-associative mapping)有何不同?(20 分)

詳解 (共 1 筆)

詳解 提供者:hchungw

在快取記憶體(cache)系統中,直接對映(Direct Mapping)、關聯對映(Associative Mapping)及集合關聯對映(Set-Associative Mapping)是三種不同的快取記憶體映射方法,它們的主要區別在於記憶體塊如何被映射到快取記憶體中的快取行(cache line),以下是這三種方法的詳細解釋:

1. 直接對映(Direct Mapping)

  • 概念

    • 在直接對映中,每個主記憶體塊(memory block)都只能映射到快取記憶體中的一個特定位置,稱為「快取行」。快取行的索引通常由主記憶體地址的一部分決定。
  • 優點

    • 結構簡單,實現成本低。
    • 查找速度快,因為每個記憶體塊都有固定的快取行位置。
  • 缺點

    • 容易發生「衝突失效」(Conflict Miss),即當多個記憶體塊映射到同一個快取行時,後來的記憶體塊會替換之前的內容,可能導致更高的快取失效率。
  • 適用場合

    • 適合於結構簡單、成本敏感的系統。

2. 關聯對映(Associative Mapping)

  • 概念

    • 在關聯對映中,主記憶體中的任何塊都可以映射到快取記憶體中的任何快取行。因此,沒有固定的映射規則,任何快取行都可以用來存放任何記憶體塊。
  • 優點

    • 極大地減少了衝突失效,因為記憶體塊可以存放在任何快取行中。
    • 快取利用率高,能夠最大化存儲效率。
  • 缺點

    • 實現複雜度高,需要複雜的硬體電路來實現全快取查找(全相聯性)。
    • 查找速度慢,因為每次查找都需要比較快取中的每個行。
  • 適用場合

    • 適合於需要高快取命中率的系統,但硬體實現複雜且成本高。

3. 集合關聯對映(Set-Associative Mapping)

  • 概念

    • 集合關聯對映是前兩種方法的折中方案。快取分為若干個「集合」(set),每個集合包含固定數量的快取行。主記憶體塊首先映射到特定的集合,而後可以映射到該集合中的任意快取行。
  • 優點

    • 提供了較好的折衷方案,既降低了衝突失效的概率,又保持了查找效率。
    • 查找過程相對較快,只需查找該集合中的快取行,而不需要查找整個快取。
  • 缺點

    • 複雜度介於直接對映和完全關聯對映之間。
    • 仍有一定的衝突失效,特別是當某集合中的快取行數量不足以容納頻繁訪問的記憶體塊時。
  • 適用場合

    • 適合於要求平衡性能和實現複雜度的系統,是現代快取系統中最常用的映射方法。

總結

  • 直接對映:簡單高效,但容易發生衝突失效。
  • 關聯對映:靈活性最高,但實現複雜且查找速度慢。
  • 集合關聯對映:折中方案,兼顧了性能和實現複雜度,適合大多數應用場合。