亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

探聽過濾器和非包含共享高速緩沖存儲(chǔ)器的制作方法與工藝

文檔序號(hào):11733203閱讀:261來源:國(guó)知局
探聽過濾器和非包含共享高速緩沖存儲(chǔ)器的制作方法與工藝
本發(fā)明涉及數(shù)據(jù)處理系統(tǒng)的領(lǐng)域。更具體來說,本發(fā)明涉及高速緩沖存儲(chǔ)器層次結(jié)構(gòu)和用于支持所述高速緩沖存儲(chǔ)器層次結(jié)構(gòu)內(nèi)的一致性的探聽過濾電路。

背景技術(shù):
已知提供了具有高速緩沖存儲(chǔ)器層次結(jié)構(gòu)的數(shù)據(jù)處理系統(tǒng)。在非包含(non-inclusive)操作模式中,高速緩沖存儲(chǔ)器層次結(jié)構(gòu)進(jìn)行操作以使得保持了緩存行數(shù)據(jù)的單個(gè)拷貝。此單行的緩存數(shù)據(jù)例如可以保持在一級(jí)(L1)、二級(jí)(L2)或三級(jí)(L3),但是不會(huì)保持在多于一個(gè)等級(jí)或者一個(gè)等級(jí)內(nèi)的多于一個(gè)緩存中。此類非包含操作有效利用了緩存層次結(jié)構(gòu)內(nèi)的存儲(chǔ)容量,但是卻有當(dāng)緩存行數(shù)據(jù)未存儲(chǔ)在靠近請(qǐng)求訪問所述緩存行數(shù)據(jù)的事務(wù)處理源的位置時(shí)訪問所述緩存行數(shù)據(jù)較慢的缺點(diǎn)。另一種操作模式為包含(inclusive)模式。在包含操作模式中,可以將緩存行數(shù)據(jù)存儲(chǔ)在緩存層次結(jié)構(gòu)的多個(gè)等級(jí)中和緩存層次結(jié)構(gòu)的一個(gè)等級(jí)內(nèi)的多個(gè)緩存中。此類型的操作可以給請(qǐng)求事務(wù)處理源提供對(duì)給定行的緩存數(shù)據(jù)的更快訪問,但是卻有對(duì)緩存層次結(jié)構(gòu)的存儲(chǔ)資源的利用效率較低的缺點(diǎn)。已知提供了探聽過濾器(snoopfilter)電路,所述探聽過濾器電路用以將探聽標(biāo)簽(tag)值存儲(chǔ)在包含操作模式內(nèi),所述探聽標(biāo)簽值標(biāo)識(shí)哪些高速緩沖存儲(chǔ)器正在存儲(chǔ)給定緩存行數(shù)據(jù)的拷貝,使得探聽請(qǐng)求和訪問可以被指向正在存儲(chǔ)目標(biāo)緩存行數(shù)據(jù)的那些本地高速緩沖存儲(chǔ)器。探聽過濾器電路的缺點(diǎn)在于門數(shù)、功率、面積等方面消耗的資源。

技術(shù)實(shí)現(xiàn)要素:
從一個(gè)方面來看,本發(fā)明提供了用于處理數(shù)據(jù)的設(shè)備,該設(shè)備包括以下部件:多個(gè)事務(wù)處理源,所述多個(gè)事務(wù)處理源中的每一個(gè)具有本地高速緩沖存儲(chǔ)器;共享高速緩沖存儲(chǔ)器,其耦接到所述多個(gè)事務(wù)處理源并配置為在非包含模式下操作,所述共享高速緩沖存儲(chǔ)器存儲(chǔ)追蹤哪些緩存行數(shù)據(jù)被存儲(chǔ)在所述共享高速緩沖存儲(chǔ)器中的共享緩存標(biāo)簽值;和探聽過濾器電路,其配置為存儲(chǔ)用于追蹤哪些緩存行數(shù)據(jù)被存儲(chǔ)在所述本地高速緩沖存儲(chǔ)器中的探聽過濾器標(biāo)簽值;其中響應(yīng)于對(duì)具有目標(biāo)標(biāo)簽值的目標(biāo)緩存行數(shù)據(jù)的事務(wù)處理請(qǐng)求:(i)所述共享高速緩沖存儲(chǔ)器配置為將所述目標(biāo)標(biāo)簽值與所述共享緩存標(biāo)簽值進(jìn)行比較,以檢測(cè)所述目標(biāo)緩存行數(shù)據(jù)是否被存儲(chǔ)在所述共享高速緩沖存儲(chǔ)器中;和(ii)所述探聽過濾器電路配置為將所述目標(biāo)標(biāo)簽值與所述探聽過濾器標(biāo)簽值進(jìn)行比較,以檢測(cè)所述目標(biāo)緩存行數(shù)據(jù)是否被存儲(chǔ)在所述本地高速緩沖存儲(chǔ)器的任一個(gè)中。本技術(shù)提供一種數(shù)據(jù)處理設(shè)備,其具有在非包含模式下操作的共享高速緩沖存儲(chǔ)器(如3級(jí)高速緩沖存儲(chǔ)器)。該數(shù)據(jù)處理設(shè)備還具有探聽過濾電路,其存儲(chǔ)追蹤哪些緩存行數(shù)據(jù)被存儲(chǔ)在本地存儲(chǔ)器中的探聽過濾器標(biāo)簽值。探聽過濾器電路不需要為保持在共享高速緩沖存儲(chǔ)器內(nèi)的緩存行數(shù)據(jù)存儲(chǔ)探聽過濾器標(biāo)簽值(盡管在下文論述的某些情況下,也會(huì)存儲(chǔ)所述標(biāo)簽值),因?yàn)榭梢蕴娲厥褂霉蚕砭彺鏄?biāo)簽值來標(biāo)識(shí)和定位將受到事務(wù)處理請(qǐng)求的目標(biāo)緩存行數(shù)據(jù)。這節(jié)省了探聽過濾器電路內(nèi)的空間。本技術(shù)可以被認(rèn)為提供了一種系統(tǒng),所述系統(tǒng)關(guān)于其數(shù)據(jù)值存儲(chǔ)以非包含形式操作(即,共享高速緩沖存儲(chǔ)器以非包含形式存儲(chǔ)緩存行數(shù)據(jù)),同時(shí)包含性地提供標(biāo)簽存儲(chǔ)(即,存在于共享高速緩沖存儲(chǔ)器和本地高速緩沖存儲(chǔ)器內(nèi)的所有緩存行數(shù)據(jù)的標(biāo)簽被分別存儲(chǔ)在共享高速緩沖存儲(chǔ)器和探聽過濾器電路內(nèi))。這有助于減少所需要的探聽流量,因?yàn)榫彺嫘袛?shù)據(jù)的位置和存在可以從探聽過濾器電路和共享高速緩沖存儲(chǔ)器來確定。探聽過濾器電路可以僅存儲(chǔ)指示緩存行數(shù)據(jù)存在于本地高速緩沖存儲(chǔ)器中的一個(gè)內(nèi)的探聽過濾器標(biāo)簽值,并需要對(duì)所有那些本地高速緩沖存儲(chǔ)器進(jìn)行廣播。然而,一些實(shí)施例可以將事務(wù)處理源標(biāo)識(shí)數(shù)據(jù)存儲(chǔ)在探聽過濾器電路內(nèi),此事務(wù)處理源標(biāo)識(shí)數(shù)據(jù)標(biāo)識(shí)哪些緩存行數(shù)據(jù)被存儲(chǔ)在哪些高速緩沖存儲(chǔ)器中。以此方式,更加可能避免推測(cè)性探聽,因?yàn)榭梢詢H從探聽過濾器電路確定哪些行的緩存數(shù)據(jù)被存儲(chǔ)以及存儲(chǔ)在哪些本地高速緩沖存儲(chǔ)器中。事務(wù)處理源標(biāo)識(shí)數(shù)據(jù)可以用以僅標(biāo)識(shí)單個(gè)本地高速緩沖存儲(chǔ)器,因?yàn)檫@將會(huì)保持存儲(chǔ)容量并且在很多操作環(huán)境下可能已足夠。在其它實(shí)施例中,事務(wù)處理源標(biāo)識(shí)數(shù)據(jù)可以標(biāo)識(shí)事務(wù)處理源的適當(dāng)子集,該子集所具有的數(shù)量被選擇來在所消耗的存儲(chǔ)空間與所實(shí)現(xiàn)的效率增益之間進(jìn)行平衡。單項(xiàng)事務(wù)處理源標(biāo)識(shí)數(shù)據(jù)也可能為不精確的,并且標(biāo)識(shí)一系列的事務(wù)處理源,例如,所有偶數(shù)編號(hào)的事務(wù)處理源或者具有在某一范圍內(nèi)的編號(hào)的所有事務(wù)處理源。探聽過濾器電路的配置可能使得其必須為存儲(chǔ)在本地高速緩沖存儲(chǔ)器內(nèi)的每個(gè)緩存行數(shù)據(jù)存儲(chǔ)探聽過濾器標(biāo)簽值,就這個(gè)意義來說其被約束為嚴(yán)格包含的。然而,每個(gè)存儲(chǔ)的探聽過濾器標(biāo)簽值并不必須要具有存儲(chǔ)在本地高速緩沖存儲(chǔ)器內(nèi)的相應(yīng)緩存行數(shù)據(jù),因?yàn)樵谝恍┖币娗闆r下,可能能夠從本地高速緩沖存儲(chǔ)器去除緩存行數(shù)據(jù),而這沒有在探聽過濾器電路中進(jìn)行追蹤。探聽過濾器電路和共享高速緩沖存儲(chǔ)器二者均將目標(biāo)標(biāo)簽值與其存儲(chǔ)的標(biāo)簽值進(jìn)行比較。如果這些比較中的任一個(gè)產(chǎn)生命中(hit),那么事務(wù)處理請(qǐng)求由本地高速緩沖存儲(chǔ)器中具有匹配的探聽過濾出的標(biāo)簽值的適當(dāng)高速緩沖存儲(chǔ)器或者由具有匹配的共享緩存標(biāo)簽值的共享高速緩沖存儲(chǔ)器來服務(wù)。在一些情形下,可以逐個(gè)緩存行地選擇性超馳共享高速緩沖存儲(chǔ)器的默認(rèn)非包含行為,使得可能在探聽過濾器電路和共享高速緩沖存儲(chǔ)器二者中均出現(xiàn)命中,并且探聽過濾器電路和共享高速緩沖存儲(chǔ)器二者隨后向事務(wù)處理請(qǐng)求提供服務(wù)。如果共享高速緩沖存儲(chǔ)器和探聽過濾器電路配置為并行執(zhí)行其比較操作,那么可以增加操作速度并降低控制復(fù)雜度。在一些實(shí)施例中,共享高速緩沖存儲(chǔ)器和探聽過濾器電路可以配置為當(dāng)并行執(zhí)行訪問時(shí)作為互鎖管線(interlockedpipeline)來操作。如果在共享高速緩沖存儲(chǔ)器和探聽過濾器電路中均未出現(xiàn)命中,那么可以向主存儲(chǔ)器發(fā)起對(duì)目標(biāo)緩存行數(shù)據(jù)的事務(wù)處理。返回的目標(biāo)緩存行數(shù)據(jù)通常將存儲(chǔ)在與事務(wù)處理源相對(duì)應(yīng)的一個(gè)本地高速緩沖存儲(chǔ)器中,而將不會(huì)存儲(chǔ)在共享高速緩沖存儲(chǔ)器中(即,與共享高速緩沖存儲(chǔ)器的默認(rèn)非包含行為一致)。如果隨后從所述本地高速緩沖存儲(chǔ)器中驅(qū)逐出所述目標(biāo)緩存行數(shù)據(jù),那么可以在稍后將其存儲(chǔ)在共享高速緩沖存儲(chǔ)器內(nèi)。當(dāng)共享高速緩沖存儲(chǔ)器和探聽過濾器電路配置為在將標(biāo)簽值在作為探聽過濾器標(biāo)簽值存儲(chǔ)在探聽過濾器電路中與作為共享緩存標(biāo)簽值存儲(chǔ)在共享高速緩沖存儲(chǔ)器中之間以原子方式改變以遵循相應(yīng)緩存行數(shù)據(jù)的存儲(chǔ)位置的改變時(shí),有利地降低了控制復(fù)雜度。這種原子行為導(dǎo)致至少就所進(jìn)行的任何改變的外部可見性而言,當(dāng)進(jìn)行了改變時(shí),則此行為將作為單個(gè)操作來全部完成。因此,隨后的事務(wù)處理將不能觀察到標(biāo)簽值的存儲(chǔ)位置的部分地完成的改變,因?yàn)檫@會(huì)產(chǎn)生需要相當(dāng)大的控制復(fù)雜度來進(jìn)行管理或防止的錯(cuò)誤或無法預(yù)測(cè)的行為。對(duì)標(biāo)簽值的存儲(chǔ)位置以原子方式進(jìn)行改變的實(shí)例是當(dāng)將緩存行從一個(gè)本地高速緩沖存儲(chǔ)器驅(qū)逐到共享高速緩沖存儲(chǔ)器時(shí)或者當(dāng)將緩存行數(shù)據(jù)從共享高速緩沖存儲(chǔ)器召回到一個(gè)本地高速緩沖存儲(chǔ)器時(shí)。如先前所述,共享高速緩沖存儲(chǔ)器可以配置為受到控制以將一個(gè)或多個(gè)緩存行數(shù)據(jù)選擇性地存儲(chǔ)在包含模式下。能夠?qū)е逻@樣切換到緩存行數(shù)據(jù)的包含存儲(chǔ)模式的操作實(shí)例為對(duì)具有一個(gè)或多個(gè)預(yù)定類型中的一種類型的事務(wù)處理請(qǐng)求的響應(yīng)。作為實(shí)例,具有使得事務(wù)處理向本地高速緩沖存儲(chǔ)器讀取緩存行數(shù)據(jù)且隨后不會(huì)修改存儲(chǔ)在該本地高速緩沖存儲(chǔ)器中的該緩存行數(shù)據(jù)這一類型的事務(wù)處理可以例如觸發(fā)/允許該緩存行數(shù)據(jù)的包含存儲(chǔ)。在一些實(shí)施例中,共享高速緩沖存儲(chǔ)器和探聽電路可以配置為存儲(chǔ)針對(duì)與多個(gè)事務(wù)處理源中的一個(gè)事務(wù)處理源相關(guān)聯(lián)的每個(gè)緩存行數(shù)據(jù)的唯一狀態(tài)數(shù)據(jù),其中此唯一狀態(tài)數(shù)據(jù)指示該緩存行數(shù)據(jù)是否存儲(chǔ)在所述多個(gè)事務(wù)處理源中任何其它事務(wù)處理源的本地高速緩沖存儲(chǔ)器中。因此,該唯一狀態(tài)數(shù)據(jù)指示緩存行數(shù)據(jù)是為了單個(gè)事務(wù)處理源而被唯一存儲(chǔ)還是為了多個(gè)事務(wù)處理源而被非唯一存儲(chǔ)。在一些實(shí)施例中,共享高速緩沖存儲(chǔ)器和探聽過濾器電路可以配置為通過如下方式來響應(yīng)從給定事務(wù)處理源接收到命中由不同的事務(wù)處理源存儲(chǔ)在共享高速緩沖存儲(chǔ)器中的緩存行數(shù)據(jù)的非修改讀取事務(wù)處理:將該緩存行數(shù)據(jù)返回到該給定事務(wù)處理源以供存儲(chǔ)在該給定事務(wù)處理源的本地高速緩沖存儲(chǔ)器中,留下該緩存行數(shù)據(jù)存儲(chǔ)在該共享高速緩沖存儲(chǔ)器中,并在共享高速緩沖存儲(chǔ)器和探聽過濾器電路二者中為該緩存行數(shù)據(jù)設(shè)置唯一狀態(tài)數(shù)據(jù),以指示該緩存行數(shù)據(jù)是與多個(gè)事務(wù)處理源相關(guān)聯(lián)地存儲(chǔ)。以此方式,至少就對(duì)于其接收到非修改讀取事務(wù)處理的該緩存行數(shù)據(jù)來說,共享高速緩沖存儲(chǔ)器被切換到在包含模式下操作。在其它實(shí)施例中(包括與上述實(shí)施例相結(jié)合),共享高速緩沖存儲(chǔ)器和探聽過濾器電路可以配置為通過如下方式來響應(yīng)從給定事務(wù)處理源接收到在共享高速緩沖存儲(chǔ)器中未命中而命中存儲(chǔ)在不同事務(wù)處理源的本地高速緩沖存儲(chǔ)器中的緩存行數(shù)據(jù)的非修改讀取事務(wù)處理:將該緩存行數(shù)據(jù)返回到給定事務(wù)處理源以供存儲(chǔ)在該給定事務(wù)處理源的本地高速緩沖存儲(chǔ)器中,留下該緩存行數(shù)據(jù)存儲(chǔ)在所述不同事務(wù)處理源的本地高速緩沖存儲(chǔ)器中,將該緩存行數(shù)據(jù)存儲(chǔ)在該共享高速緩沖存儲(chǔ)器中,并在共享高速緩沖存儲(chǔ)器和探聽過濾器電路二者中為該緩存行數(shù)據(jù)設(shè)置唯一狀態(tài)數(shù)據(jù),以指示該緩存行數(shù)據(jù)是與多個(gè)事務(wù)處理源相關(guān)聯(lián)地存儲(chǔ)。同樣,這將操作切換到針對(duì)所涉及緩存行數(shù)據(jù)的包含模式。當(dāng)響應(yīng)于來自多個(gè)事務(wù)處理源中的一個(gè)事務(wù)處理源的事務(wù)處理請(qǐng)求而從存儲(chǔ)器提取緩存行數(shù)據(jù)時(shí),該緩存行數(shù)據(jù)將被存儲(chǔ)在所述多個(gè)源中的一個(gè)源的本地高速緩沖存儲(chǔ)器中,并且相應(yīng)的探聽過濾器標(biāo)簽值將被存儲(chǔ)在探聽過濾器電路中。如果事務(wù)處理源標(biāo)識(shí)數(shù)據(jù)值也由探聽過濾器電路存儲(chǔ),那么可以將該數(shù)據(jù)同時(shí)寫入。將了解,所述多個(gè)事務(wù)處理源可以具有多種不同的形式。在一種形式下,這些事務(wù)處理源可以包括一個(gè)或多個(gè)處理器核心。本地高速緩沖存儲(chǔ)器可以類似地具有多種不同的形式,例如包括L1高速緩沖存儲(chǔ)器和L2高速緩沖存儲(chǔ)器。所述多個(gè)事務(wù)處理源可以通過基于環(huán)的互連而方便地連接在一起。當(dāng)將多個(gè)事務(wù)處理源或多個(gè)共享高速緩沖存儲(chǔ)器添加到系統(tǒng)時(shí),對(duì)這種基于環(huán)的互連進(jìn)行有效地縮放。從另一個(gè)方面來看,本發(fā)明提供了用于處理數(shù)據(jù)的設(shè)備,該設(shè)備包括以下部件:用于產(chǎn)生事務(wù)處理的多個(gè)事務(wù)處理源裝置,所述多個(gè)事務(wù)處理源裝置中的每一個(gè)具有用于存儲(chǔ)數(shù)據(jù)的本地高速緩沖存儲(chǔ)器裝置;用于存儲(chǔ)數(shù)據(jù)的共享高速緩沖存儲(chǔ)器裝置,所述共享高速緩沖存儲(chǔ)器裝置耦接到所述多個(gè)事務(wù)處理源裝置并配置為在非包含模式下操作,所述共享高速緩沖存儲(chǔ)器裝置存儲(chǔ)追蹤哪些緩存行數(shù)據(jù)被存儲(chǔ)在所述共享高速緩沖存儲(chǔ)器裝置中的共享緩存標(biāo)簽值;和探聽過濾器裝置,其用于存儲(chǔ)用于追蹤哪些緩存行數(shù)據(jù)被存儲(chǔ)在所述本地高速緩沖存儲(chǔ)器裝置中的探聽過濾器標(biāo)簽值;其中響應(yīng)于對(duì)具有目標(biāo)標(biāo)簽值的目標(biāo)緩存行數(shù)據(jù)的事務(wù)處理請(qǐng)求:(i)所述共享高速緩沖存儲(chǔ)器裝置配置為將所述目標(biāo)標(biāo)簽值與所述共享緩存標(biāo)簽值進(jìn)行比較,以檢測(cè)所述目標(biāo)緩存行數(shù)據(jù)是否被存儲(chǔ)在所述共享高速緩沖存儲(chǔ)器裝置中;和(ii)所述探聽過濾器裝置配置為將所述目標(biāo)標(biāo)簽值與所述探聽過濾器標(biāo)簽值進(jìn)行比較,以檢測(cè)所述目標(biāo)緩存行數(shù)據(jù)是否被存儲(chǔ)在所述本地高速緩沖存儲(chǔ)器裝置的任一個(gè)中。從又一個(gè)方面來看,本發(fā)明提供了一種處理數(shù)據(jù)的方法,包括以下步驟:由多個(gè)事務(wù)處理源產(chǎn)生事務(wù)處理;將各自的數(shù)據(jù)存儲(chǔ)在所述多個(gè)事務(wù)處理源中的每一個(gè)的本地高速緩沖存儲(chǔ)器中;將數(shù)據(jù)存儲(chǔ)在耦接到所述多個(gè)事務(wù)處理源的共享高速緩沖存儲(chǔ)器中;使所述共享高速緩沖存儲(chǔ)器在非包含模式下操作;將追蹤哪些緩存行數(shù)據(jù)被存儲(chǔ)在所述共享高速緩沖存儲(chǔ)器裝置中的共享緩存標(biāo)簽值存儲(chǔ)在所述共享高速緩沖存儲(chǔ)器中;將用于追蹤哪些緩存行數(shù)據(jù)被存儲(chǔ)在所述本地高速緩沖存儲(chǔ)器裝置中的探聽過濾器標(biāo)簽值存儲(chǔ)在探聽過濾器電路中;和響應(yīng)于對(duì)具有目標(biāo)標(biāo)簽值的目標(biāo)緩存行數(shù)據(jù)的事務(wù)處理請(qǐng)求:(i)將所述目標(biāo)標(biāo)簽值與所述共享緩存標(biāo)簽值進(jìn)行比較,以檢測(cè)所述目標(biāo)緩存行數(shù)據(jù)是否被存儲(chǔ)在所述共享高速緩沖存儲(chǔ)器中;和(ii)將所述目標(biāo)標(biāo)簽值與所述探聽過濾器標(biāo)簽值進(jìn)行比較,以檢測(cè)所述目標(biāo)緩存行數(shù)據(jù)是否被存儲(chǔ)在所述本地高速緩沖存儲(chǔ)器的任一個(gè)中。從將結(jié)合附圖來閱讀的說明性實(shí)施例的以下詳細(xì)描述,將顯而易見本發(fā)明的以上和其它目的、特征和優(yōu)點(diǎn)。附圖說明圖1示意性地圖示了包括多個(gè)事務(wù)處理源、共享高速緩沖存儲(chǔ)器和探聽過濾器電路的數(shù)據(jù)處理設(shè)備,每個(gè)事務(wù)處理源包括本地高速緩沖存儲(chǔ)器;圖2示意性地圖示了共享高速緩沖存儲(chǔ)器;圖3示意性地圖示了探聽過濾器電路;圖4圖示了由探聽過濾器電路和共享高速緩沖存儲(chǔ)器執(zhí)行的比較操作的并行互鎖管線操作;和圖5示意性地圖示了原子標(biāo)簽維護(hù),其中標(biāo)簽值的存儲(chǔ)位置在探聽過濾器電路與共享高速緩沖存儲(chǔ)器之間改變。具體實(shí)施方式圖1示意性地圖示了包括耦接到主存儲(chǔ)器6的集成電路4上的系統(tǒng)芯片2。片上系統(tǒng)集成電路4包括多個(gè)事務(wù)處理源8、10,每個(gè)事務(wù)處理源包括L2高速緩沖存儲(chǔ)器、兩個(gè)L1高速緩沖存儲(chǔ)器和兩個(gè)處理器核心。每個(gè)事務(wù)處理源8、10內(nèi)的所述L2高速緩沖存儲(chǔ)器和所述兩個(gè)Ll高速緩沖存儲(chǔ)器可以被共同認(rèn)為是針對(duì)所述單獨(dú)的事務(wù)處理源8、10的本地高速緩沖存儲(chǔ)器?;诃h(huán)(ring)的互連12將事務(wù)處理源8、10耦接到探聽過濾器電路14和L3緩存形式的共享高速緩沖存儲(chǔ)器16。存儲(chǔ)器控制器18也耦接到基于環(huán)的互連12,并且如果主存儲(chǔ)器6內(nèi)的數(shù)據(jù)不存在于由共享高速緩沖存儲(chǔ)器16和事務(wù)處理源8、10內(nèi)的本地高速緩沖存儲(chǔ)器形成的緩存層次結(jié)構(gòu)內(nèi),那么允許對(duì)所述數(shù)據(jù)進(jìn)行訪問。當(dāng)處理器核心發(fā)出試圖訪問緩存行數(shù)據(jù)的事務(wù)處理時(shí),確定此緩存行數(shù)據(jù)是否被存儲(chǔ)在與所述處理器核心相關(guān)聯(lián)的本地高速緩沖存儲(chǔ)器中。如果在本地高速緩沖存儲(chǔ)器中未命中,那么將事務(wù)處理通過基于環(huán)的互連12發(fā)送到探聽過濾器電路14和共享高速緩沖存儲(chǔ)器16。探聽過濾器電路14和共享高速緩沖存儲(chǔ)器16執(zhí)行與在基于環(huán)的互連12上發(fā)送的事務(wù)處理相關(guān)聯(lián)的目標(biāo)標(biāo)簽值的并行管線互鎖標(biāo)簽查找。此查找包括將目標(biāo)標(biāo)簽值與存儲(chǔ)在探聽過濾器電路14內(nèi)的探聽過濾器標(biāo)簽值進(jìn)行比較并與存儲(chǔ)在共享高速緩沖存儲(chǔ)器16內(nèi)的共享緩存標(biāo)簽值進(jìn)行比較。如果在共享高速緩沖存儲(chǔ)器16內(nèi)出現(xiàn)命中,那么由共享高速緩沖存儲(chǔ)器16來向事務(wù)處理提供服務(wù)。如果在探聽過濾器電路14內(nèi)出現(xiàn)命中,那么探聽過濾器電路返回信號(hào),所述信號(hào)確認(rèn)所述目標(biāo)緩存行數(shù)據(jù)被存儲(chǔ)在片上系統(tǒng)集成電路4內(nèi)的本地高速緩沖存儲(chǔ)器中的一個(gè)內(nèi)并(使用與探聽過濾器標(biāo)簽值相關(guān)聯(lián)地存儲(chǔ)的事務(wù)處理源標(biāo)識(shí)數(shù)據(jù))標(biāo)識(shí)此本地高速緩沖存儲(chǔ)器。如果在探聽過濾器電路14和共享高速緩沖存儲(chǔ)器16二者中均出現(xiàn)未命中,那么存儲(chǔ)器控制器18對(duì)主存儲(chǔ)器6發(fā)起關(guān)于目標(biāo)緩存行數(shù)據(jù)的芯片外存儲(chǔ)器訪問。從主存儲(chǔ)器6返回的目標(biāo)緩存行數(shù)據(jù)被存儲(chǔ)回到請(qǐng)求所述目標(biāo)緩存行數(shù)據(jù)的事務(wù)處理源的本地高速緩沖存儲(chǔ)器中,并且相應(yīng)的探聽過濾器標(biāo)簽項(xiàng)連同標(biāo)識(shí)哪個(gè)事務(wù)處理源具有存儲(chǔ)所述目標(biāo)緩存行數(shù)據(jù)的本地高速緩沖存儲(chǔ)器的事務(wù)處理源標(biāo)識(shí)數(shù)據(jù)值被寫入到探聽過濾器電路14中,以通過此探聽過濾器標(biāo)簽值來標(biāo)識(shí)存儲(chǔ)回到本地高速緩沖存儲(chǔ)器中的緩存行數(shù)據(jù)的存儲(chǔ)位置。共享高速緩沖存儲(chǔ)器16主要以非包含形式操作,因?yàn)槟J(rèn)行為在于緩存行數(shù)據(jù)將被存儲(chǔ)在共享高速緩沖存儲(chǔ)器16中或存儲(chǔ)在一個(gè)本地高速緩沖存儲(chǔ)器中,但不會(huì)存儲(chǔ)在二者中。在某些情況下,可以超馳(override)此默認(rèn)非包含行為。具體來說,可以識(shí)別尋找目標(biāo)緩存行數(shù)據(jù)的事務(wù)處理的事務(wù)處理類型,并且如果這與一個(gè)或多個(gè)預(yù)定類型匹配,那么可以觸發(fā)關(guān)于所述目標(biāo)緩存行數(shù)據(jù)的包含存儲(chǔ)模式。具體來說,如果事務(wù)處理是隨后不會(huì)修改緩存行數(shù)據(jù)的讀取(readclean),那么如果在共享高速緩沖存儲(chǔ)器16中出現(xiàn)命中,那么目標(biāo)緩存行數(shù)據(jù)可以被返回到請(qǐng)求其的事務(wù)處理源以供存儲(chǔ)在所述事務(wù)處理源的本地高速緩沖存儲(chǔ)器中,同時(shí)保持存儲(chǔ)在共享高速緩沖存儲(chǔ)器16中。探聽過濾器標(biāo)簽值將被寫入到探聽過濾器電路14中,以追蹤事務(wù)處理源內(nèi)目標(biāo)緩存行數(shù)據(jù)的存在。因此,探聽過濾器標(biāo)簽值和共享緩存標(biāo)簽值二者都將追蹤相同的緩存行數(shù)據(jù),并且將指示其在多于一個(gè)地方的存在??梢詫⒎前袨榍袚Q到針對(duì)給定緩存行數(shù)據(jù)的包含行為的另一種情況為,如果進(jìn)行隨后不會(huì)修改緩存行數(shù)據(jù)的讀取事務(wù)處理,并且在共享高速緩沖存儲(chǔ)器16中未命中,但是由探聽過濾器電路14指示為由一個(gè)本地高速緩沖存儲(chǔ)器命中,那么將從存儲(chǔ)有目標(biāo)緩存行數(shù)據(jù)的本地高速緩沖存儲(chǔ)器檢索到所述目標(biāo)緩存行數(shù)據(jù),并且將拷貝放置在共享高速緩沖存儲(chǔ)器16和請(qǐng)求所述目標(biāo)緩存行數(shù)據(jù)的事務(wù)處理源的本地高速緩沖存儲(chǔ)器二者中。在這種情況下,結(jié)果是目標(biāo)緩存行數(shù)據(jù)將存儲(chǔ)在系統(tǒng)內(nèi)的三個(gè)不同位置內(nèi),即,存儲(chǔ)在兩個(gè)本地高速緩沖存儲(chǔ)器內(nèi)和共享高速緩沖存儲(chǔ)器16內(nèi)。關(guān)于所述緩存行切換到包含模式行為可以通過使用關(guān)于被追蹤的每個(gè)緩存行數(shù)據(jù)存儲(chǔ)的唯一/非唯一標(biāo)記(和存儲(chǔ)在探聽過濾器電路14和共享緩存電路16內(nèi)的標(biāo)記值)形式的唯一狀態(tài)數(shù)據(jù)來追蹤。當(dāng)根據(jù)非包含操作模式來存儲(chǔ)緩存行時(shí),那么唯一狀態(tài)數(shù)據(jù)將指示僅存儲(chǔ)此緩存行數(shù)據(jù)的單個(gè)拷貝。當(dāng)將緩存行數(shù)據(jù)保持在包含操作模式下時(shí),那么唯一狀態(tài)數(shù)據(jù)將指示如此。圖2示意性地圖示了共享高速緩沖存儲(chǔ)器16。這包括緩存陣列20和緩存控制器22。緩存陣列20內(nèi)的每個(gè)緩存行24存儲(chǔ)針對(duì)所述緩存行24的共享緩存標(biāo)簽值、緩存行數(shù)據(jù)的有效載荷以及相關(guān)聯(lián)的唯一狀態(tài)數(shù)據(jù)(U/NU)和事務(wù)處理源標(biāo)識(shí)數(shù)據(jù)(RNFID)。存儲(chǔ)在共享高速緩沖存儲(chǔ)器16內(nèi)的RNFID指示事務(wù)處理源8、10中的哪個(gè)引起所述緩存行數(shù)據(jù)的填充出現(xiàn)在共享高速緩沖存儲(chǔ)器中且因此“擁有”所述緩存行數(shù)據(jù)。如果唯一狀態(tài)數(shù)據(jù)指示所述緩存行數(shù)據(jù)由多于一個(gè)本地高速緩沖存儲(chǔ)器保持,那么RNFID字段變?yōu)闊o效,這是因?yàn)槠鋵H能標(biāo)識(shí)單個(gè)事務(wù)處理源。這樣導(dǎo)致的結(jié)果是,隨后退卻到廣播探聽請(qǐng)求,以識(shí)別在接收到事務(wù)處理時(shí)哪個(gè)本地高速緩沖存儲(chǔ)器在存儲(chǔ)哪些緩存行數(shù)據(jù)。在一些實(shí)施例中,可能有更多資源能夠?qū)S糜谑聞?wù)處理源標(biāo)識(shí)數(shù)據(jù),并且可以標(biāo)識(shí)出多個(gè)事務(wù)處理源,直到存在的事務(wù)處理源總數(shù)目的適當(dāng)子集。圖3示意性地圖示了探聽過濾器電路14。探聽過濾器電路14包括過濾器陣列26,該過濾器陣列存儲(chǔ)探聽過濾器標(biāo)簽值以及相關(guān)聯(lián)的唯一狀態(tài)數(shù)據(jù)和事務(wù)處理源標(biāo)識(shí)數(shù)據(jù)。探聽過濾器控制器28控制探聽過濾器14的操作。探聽過濾器標(biāo)簽值指示標(biāo)簽值(在主存儲(chǔ)器6內(nèi)從其讀取緩存數(shù)據(jù)值的存儲(chǔ)地址的一部分)以及唯一狀態(tài)數(shù)據(jù),該唯一狀態(tài)數(shù)據(jù)指示是否為了多個(gè)本地高速緩沖存儲(chǔ)器而保持緩存行數(shù)據(jù)的拷貝。當(dāng)單個(gè)本地高速緩沖存儲(chǔ)器正在存儲(chǔ)所述緩存行數(shù)據(jù)時(shí),事務(wù)處理源標(biāo)識(shí)數(shù)據(jù)(RNFID)標(biāo)識(shí)存儲(chǔ)與探聽過濾器標(biāo)簽值相對(duì)應(yīng)的緩存行數(shù)據(jù)的事務(wù)處理源。當(dāng)多個(gè)本地高速緩沖存儲(chǔ)器正在存儲(chǔ)緩存行數(shù)據(jù)時(shí),那么事務(wù)處理源標(biāo)識(shí)數(shù)據(jù)可能不具有足夠的容量來分別標(biāo)識(shí)這些并且相應(yīng)地變?yōu)闊o效,從而需要執(zhí)行廣播探聽操作。圖4示意性地圖示了探聽過濾器電路14和共享高速緩沖存儲(chǔ)器16響應(yīng)于從基于環(huán)的互連12接收到的事務(wù)處理讀取請(qǐng)求的行為。探聽過濾器電路14和共享高速緩沖存儲(chǔ)器16作為互鎖并行管線執(zhí)行,以發(fā)起并行標(biāo)簽查找。探聽過濾器電路14和共享高速緩沖存儲(chǔ)器16二者隨后均返回命中或未命中指示。如果由探聽過濾器電路14返回命中,那么返回事務(wù)處理源標(biāo)識(shí)符以標(biāo)識(shí)與該命中相對(duì)應(yīng)的本地高速緩沖存儲(chǔ)器(至少當(dāng)僅單個(gè)本地高速緩沖存儲(chǔ)器正在存儲(chǔ)目標(biāo)緩存行數(shù)據(jù)時(shí))。如果由探聽過濾器電路14返回命中,那么標(biāo)識(shí)出的事務(wù)處理源進(jìn)行向該事務(wù)處理提供服務(wù)。如果由共享高速緩沖存儲(chǔ)器16返回命中,那么共享高速緩沖存儲(chǔ)器進(jìn)行向接收到的事務(wù)處理提供服務(wù)。如果探聽過濾器電路14和共享高速緩沖存儲(chǔ)器16二者均命中,那么二者均向接收到的事務(wù)處理提供服務(wù)。如果從探聽過濾器電路14和共享高速緩沖存儲(chǔ)器16二者均返回未命中,那么將事務(wù)處理轉(zhuǎn)發(fā)到存儲(chǔ)器控制器18,存儲(chǔ)器控制器18發(fā)起主存儲(chǔ)器事務(wù)處理,以從主存儲(chǔ)器6提取目標(biāo)緩存行數(shù)據(jù)并將其存儲(chǔ)到如先前所述的請(qǐng)求事務(wù)處理源的本地高速緩沖存儲(chǔ)器中。圖5示意性地圖示了根據(jù)由探聽過濾器電路14存儲(chǔ)的探聽過濾器標(biāo)簽值和由共享高速緩沖存儲(chǔ)器16存儲(chǔ)的共享緩存標(biāo)簽值來執(zhí)行的原子(atomic)標(biāo)簽維護(hù)操作。作為動(dòng)作A,首先響應(yīng)于來自主存儲(chǔ)器的載入將標(biāo)簽值存儲(chǔ)為探聽過濾器標(biāo)簽值。在這個(gè)階段,緩存行數(shù)據(jù)被存儲(chǔ)到請(qǐng)求事務(wù)處理源的本地高速緩沖存儲(chǔ)器中并且未存儲(chǔ)在共享高速緩沖存儲(chǔ)器16內(nèi)。如果本地高速緩沖存儲(chǔ)器用盡了空間,那么其可以驅(qū)逐此緩存行數(shù)據(jù)并將其移動(dòng)到存儲(chǔ)在共享高速緩沖存儲(chǔ)器16內(nèi)。此時(shí),標(biāo)簽值被從作為探聽過濾器標(biāo)簽值存儲(chǔ)在探聽過濾器電路14內(nèi)移動(dòng)到作為共享緩存標(biāo)簽值存儲(chǔ)在共享緩存電路16內(nèi),如由動(dòng)作B所指示。隨后可以將所述緩存行數(shù)據(jù)從共享高速緩沖存儲(chǔ)器16召回到一個(gè)本地高速緩沖存儲(chǔ)器,并且此時(shí)標(biāo)簽被從作為共享緩存標(biāo)簽值存儲(chǔ)在共享標(biāo)簽高速緩沖存儲(chǔ)器16內(nèi)移動(dòng)到作為探聽過濾器標(biāo)簽值存儲(chǔ)在探聽過濾器電路14內(nèi),如由動(dòng)作C所指示。如上所述,在某些情況下可能將緩存行從存儲(chǔ)在非包含模式下切換到存儲(chǔ)在包含模式下。當(dāng)出現(xiàn)這些情況時(shí),動(dòng)作D指示如何在探聽過濾器電路14與共享高速緩沖存儲(chǔ)器16之間復(fù)制標(biāo)簽值而不將其從其原始位置去除。這導(dǎo)致相同的標(biāo)簽值被作為探聽過濾器標(biāo)簽值存儲(chǔ)在探聽過濾器電路14內(nèi)并作為共享緩存標(biāo)簽值存儲(chǔ)在共享高速緩沖存儲(chǔ)器16內(nèi)。這由動(dòng)作D所圖示。片上系統(tǒng)集成電路4可以支持各類型的操作,如部分電源中斷,在這些情況下,可能需要將本地高速緩沖存儲(chǔ)器的內(nèi)容刷新(flush)到共享高速緩沖存儲(chǔ)器16。該緩存維護(hù)操作的執(zhí)行如圖5中的動(dòng)作E所示,其需要將關(guān)于被關(guān)閉的本地高速緩沖存儲(chǔ)器的所有探聽過濾器標(biāo)簽值移動(dòng)到共享高速緩沖存儲(chǔ)器16以伴隨被刷新到共享高速緩沖存儲(chǔ)器16的緩存行數(shù)據(jù)。如上所述,圖5中圖示的作為標(biāo)簽維護(hù)操作的動(dòng)作A、B、C、D和E的操作是以原子方式執(zhí)行。這意味著,如果需要多步驟,那么這些步驟被作為單個(gè)實(shí)體來處理,并且將始終在開始后被完成(即,即使中斷操作,也看不見中間狀態(tài))。盡管在本文中已經(jīng)參照附圖詳細(xì)描述了本發(fā)明的說明性實(shí)施例,但是應(yīng)理解,本發(fā)明并不限于那些精確的實(shí)施例,并且本領(lǐng)域的技術(shù)人員可實(shí)現(xiàn)各種改變和修改而不會(huì)脫離本發(fā)明的由所附權(quán)利要求書限定的范圍和精神。
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1