高速緩沖存儲器及其應用方法
【技術領域】
[0001]本發明涉及高速緩存設計技術,尤其涉及一種高速緩沖存儲器及其實現方法。
【背景技術】
[0002]在計算機層次化存儲系統中,高速緩沖存儲器(Cache Memory)通常是一片面積較小、速度較快的靜態存儲芯片(SRAM),位于層次化存儲系統的最頂端,其下端為主存儲器與外部存儲器。根據局部性原理,所述Cache Memory將計算機中的處理器最常用到的數據副本緩存到本地,當Cache命中時,所述處理器無需訪問主存儲器便可直接從Cache Memory中獲取數據,從而有效縮短訪存時間、提升計算機性能。
[0003]由于處理器架構的不斷發展,Cache Memory的結構及其控制邏輯也日趨復雜。多存儲體(Mult1-Bank)結構的Cache Memory便是隨著超標量處理器的發展而逐步提出的。現代超標量處理器可以并行發射多條指令,當多條訪問不同存儲體(Bank)的讀寫指令同時訪問Cache Memory時,具有所述Mult1-Bank結構的Cache Memory可以同時處理多條訪存,這就使得計算機的吞吐率大大提升。
[0004]雖然所述Mult1-Bank結構的Cache Memory能夠較好地避免不同Bank間的訪存沖突,并在Cache命中時有效提高數據吞吐率;但是,所述Mult1-Bank結構的Cache Memory是由復雜的控制電路來控制的,控制電路面積的較大,導致增大了 Cache Memory的設計成本。因此,如何權衡Mult1-Bank結構Cache Memory的性能與成本,已成為亟待解決的一個問題。
【發明內容】
[0005]為解決現有存在的技術問題,本發明實施例提供一種高速緩沖存儲器及其應用方法,能有效平衡具有Mult1-Bank結構Cache Memory的性能與成本的問題。
[0006]本發明的技術方案是這樣實現的:本發明提供了一種高速緩沖存儲器,包括:第一邏輯仲裁單元、與所述第一邏輯仲裁單元連接的標記段存儲單元、與所述標記段存儲單元連接的第二邏輯仲裁單元、以及與所述第二邏輯仲裁單元連接的數據塊存儲單元;所述標記段存儲單元包括N個標記段存儲子單元;所述數據塊存儲單元包括N個數據塊存儲子單元;其中,
[0007]所述第一邏輯仲裁單元通過第一接口與N個標記段存儲子單元連接;所述第二邏輯仲裁單元通過第二接口與N個數據塊存儲子單元連接;
[0008]所述N為大于等于2的正整數。
[0009]上述方案中,所述高速緩沖存儲器還包括:用于接收訪問所述標記段存儲單元的各請求消息的請求單元、以及與所述請求單元連接的分路單元;所述分路單元與所述第一邏輯仲裁單元連接。
[0010]本發明實施例還提供了一種高速緩沖存儲器,包括:N個第一邏輯仲裁單元、與所述N個第一邏輯仲裁單元連接的標記段存儲單元、與所述標記段存儲單元連接的N個第二邏輯仲裁單元、以及與所述N個第二邏輯仲裁單元連接的數據塊存儲單元;所述標記段存儲單元包括N個標記段存儲子單元;所述數據塊存儲單元包括N個數據塊存儲子單元;其中,
[0011 ] 所述N個第一邏輯仲裁單元分別通過N個第一接口與N個標記段存儲子單元一一對應連接;所述N個第二邏輯仲裁單元分別通過N個第二接口與N個數據塊存儲子單元一一對應連接;
[0012]所述N為大于等于2的正整數。
[0013]上述方案中,所述高速緩沖存儲器還包括:用于接收訪問所述標記段存儲單元的各請求消息的請求單元、以及與所述請求單元連接的分路單元;所述分路單元均與所述N個第一邏輯仲裁單元連接。
[0014]本發明實施例還提供了一種高速緩沖存儲器,包括:第一邏輯仲裁單元、與所述第一邏輯仲裁單元連接的標記段存儲單元、與所述標記段存儲單元連接的N個第二邏輯仲裁單元、以及與所述N個第二邏輯仲裁單元連接的數據塊存儲單元;所述標記段存儲單元包括N個標記段存儲子單元;所述數據塊存儲單元包括N個數據塊存儲子單元;其中,
[0015]所述第一邏輯仲裁單元通過第一接口與N個標記段存儲子單元連接;所述N個第二邏輯仲裁單元分別通過N個第二接口與N個數據塊存儲子單元一一對應連接;
[0016]所述N為大于等于2的正整數。
[0017]上述方案中,所述高速緩沖存儲器還包括:用于接收訪問所述標記段存儲單元的各請求消息的請求單元、以及與所述請求單元連接的分路單元;所述分路單元與所述第一邏輯仲裁單元連接。
[0018]本發明實施例還提供了一種高速緩沖存儲器,包括:N個第一邏輯仲裁單元、與所述N個第一邏輯仲裁單元連接的標記段存儲單元、與所述標記段存儲單元連接的第二邏輯仲裁單元、以及與所述第二邏輯仲裁單元連接的數據塊存儲單元;所述標記段存儲單元包括N個標記段存儲子單元;所述數據塊存儲單元包括N個數據塊存儲子單元;其中,
[0019]所述N個第一邏輯仲裁單元分別通過N個第一接口與N個標記段存儲子單元一一對應連接;所述第二邏輯仲裁單元通過第二接口與N個數據塊存儲子單元連接;
[0020]所述N為大于等于2的正整數。
[0021]上述方案中,所述高速緩沖存儲器還包括:用于接收訪問所述標記段存儲單元的各請求消息的請求單元、以及與所述請求單元連接的分路單元;所述分路單元均與所述N個第一邏輯仲裁單元連接。
[0022]本發明實施例還提供了一種高速緩沖存儲器的應用方法,所述高速緩沖存儲器包括:第一邏輯仲裁單元、與所述第一邏輯仲裁單元連接的標記段存儲單元、與所述標記段存儲單元連接的第二邏輯仲裁單元、以及與所述第二邏輯仲裁單元連接的數據塊存儲單元;所述標記段存儲單元包括N個標記段存儲子單元;所述數據塊存儲單元包括N個數據塊存儲子單元;所述方法包括:
[0023]所述第一邏輯仲裁單元接收X個第一請求消息,并將X個第一請求消息均通過第一接口發送至所述N個標記段存儲子單元中的一個或多個;
[0024]各標記段存儲子單元確定自身接收到的第一請求消息中的請求信息與自身的標記段相對應時,根據第一請求消息生成第二請求消息,將第二請求消息發送至所述第二邏輯仲裁單元;
[0025]所述第二邏輯仲裁單元將接收到的各第二請求消息均通過第二接口發送至所述N個數據塊存儲子單元中的一個或多個;
[0026]其中,所述N和X均為大于等于2的正整數。
[0027]本發明實施例還提供了一種高速緩沖存儲器的應用方法,應用于高速緩沖存儲器;所述高速緩沖存儲器包括:N個第一邏輯仲裁單元、與所述N個第一邏輯仲裁單元連接的標記段存儲單元、與所述標記段存儲單元連接的N個第二邏輯仲裁單元、以及與所述N個第二邏輯仲裁單元連接的數據塊存儲單元;所述標記段存儲單元包括N個標記段存儲子單元;所述數據塊存儲單元包括N個數據塊存儲子單元;所述N個第一邏輯仲裁單元分別通過N個第一接口與N個標記段存儲子單元連接;所述N個第二邏輯仲裁單元分別通過N個第二接口與N個數據塊存儲子單元連接;第一邏輯仲裁單元、第一接口以及標記段存儲子單元三者一一對應;第二邏輯仲裁單元、第二接口以及數據塊存儲子單元三者一一對應;所述方法包括:
[0028]各第一邏輯仲裁單元接收第一請求消息,并將第一請求消息通過與自身對應的第一接口發送至與自身對應的標記段存儲子單元;
[0029]各標記段存儲子單元確定自身接收的第一請求消息的請求信息與自身的標記段相對應時,根據接收到的第一請求消息生成第二請求消息,并將第二請求消息發送至第二邏輯仲裁單元;
[0030]各第二邏輯仲裁單元將接收到的第二請求消息分別通過自身對應的第二接口發送至與自身對應的數據塊存儲子單元;
[0031]其中,所述N和X均為大于等于2的正整數。
[0032]本發明實施例還提供了一種高速緩沖存儲器的應用方法,應用于高速緩沖存儲器;所述高速緩沖存儲器包括:第一邏輯仲裁單元、與所述第一邏輯仲裁單元連接的標記段存儲單元、與所述標記段存儲單元連接的N個第二邏輯仲裁單元、以及與所述N個第二邏輯仲裁單元連接的數據塊存儲單元;所述標記段存儲單元包括N個標記段存儲子單元;所述數據塊存儲單元包括N個數據塊存儲子單元;所述N個第二邏輯仲裁單元分別通過N個第二接口與N個數據塊存儲子單元連接;第二邏輯仲裁單元、第二接口以及數據塊存儲子單元三者--對應;所述方法包括:
[0033]所述第一邏輯仲裁單元接收X個第一請求消息,并將X個第一請求消息均通過第一接口發送至所述N個標記段存儲子單元中的一個或多個;
[0034]各標記段存儲子單元確定自身接收到的第一請求消息中的請求信息與自身的標記段相對應時,根據第一請求消息生成第二請求消息,將第二請求消息發送至第二邏輯仲裁單元;
[0035]各第二邏輯仲裁單元將接收到的第二請求消息分別通過自身對應的第二接口發送至與自身對應的數據塊存儲子單元;
[0036]其中,所述N和X均為大于等于2的正整數。
[0037]本發明實施例還提供了一種高速緩沖存儲器的應用方法,應用于高速緩沖存儲器;所述高速緩沖存儲器包括:N個第一邏輯仲裁單元、與所述N個第一邏輯仲裁單元連接的標記段存儲單元、與所述標記段存儲單元連接的第二邏輯仲裁單元、以及與所述第二邏輯仲裁單元連接的數據塊存儲單元;所述標記段存儲單元包括N個標記段存儲子單元;所述數據塊存儲單元包括N個數據塊存儲子單元;所述N個第一邏輯仲裁單元分別通過N個第一接口與N個標記段存儲子單元子連接;第一邏輯仲裁單元、第一接口以及標記段存儲子單元三者--對應;所述方法包括:
[0038]各第一邏輯仲裁單元接收第一請求消息