用以加速高速緩沖存儲(chǔ)器存取的高速緩沖存儲(chǔ)器填充的關(guān)鍵詞優(yōu)先排序以及相關(guān)基于處 ...的制作方法
【專(zhuān)利說(shuō)明】用以加速高速緩沖存儲(chǔ)器存取的高速緩沖存儲(chǔ)器填充的關(guān)鍵詞優(yōu)先排序以及相關(guān)基于處理器的系統(tǒng)及方法
[0001]優(yōu)先權(quán)主張
[0002]本申請(qǐng)案主張2013年3月7日申請(qǐng)且標(biāo)題為“用以加速關(guān)鍵詞優(yōu)先高速緩存存取的高速緩沖存儲(chǔ)器中的關(guān)鍵詞優(yōu)先排序以及相關(guān)基于處理器的系統(tǒng)及方法(CRITICAL-TORD-FIRST ORDERING IN CACHE MEMORIES TO ACCELERATECRITICAL-ffORD-FIRST CACHE ACCESSES, AND RELATED PROCESSOR-BASED SYSTEMS ANDMETHODS) ”的第61/773,951號(hào)美國(guó)臨時(shí)專(zhuān)利申請(qǐng)案的優(yōu)先權(quán),所述申請(qǐng)案以全文引用的方式并入本文中。
[0003]本申請(qǐng)案還主張2013年6月25日申請(qǐng)且標(biāo)題為“用以加速高速緩沖存儲(chǔ)器存取的高速緩沖存儲(chǔ)器填充的關(guān)鍵詞優(yōu)先排序以及相關(guān)基于處理器的系統(tǒng)及方法(CRITICAL-ffORD-FIRST ORDERING OF CACHE MEMORY FILLS TO ACCELERATE CACHE MEMORYACCESSES, AND RELATED PROCESSOR-BASED SYSTEMS AND METHODS) ” 的第 13/925,874 號(hào)美國(guó)專(zhuān)利申請(qǐng)案的優(yōu)先權(quán),所述申請(qǐng)案以全文引用的方式并入本文中。
技術(shù)領(lǐng)域
[0004]本發(fā)明的領(lǐng)域涉及存取基于處理器的系統(tǒng)中的高速緩沖存儲(chǔ)器。
【背景技術(shù)】
[0005]高速緩沖存儲(chǔ)器可由例如中央處理單元(CPU)等計(jì)算機(jī)處理器使用,通過(guò)存儲(chǔ)來(lái)自頻繁使用的主存儲(chǔ)器位置的數(shù)據(jù)復(fù)本來(lái)減少平均存儲(chǔ)器存取時(shí)間。高速緩沖存儲(chǔ)器通常具有比計(jì)算機(jī)的主存儲(chǔ)器小得多的存儲(chǔ)容量。然而,高速緩沖存儲(chǔ)器還具有比主存儲(chǔ)器低得多的時(shí)延(即,高速緩沖存儲(chǔ)器可由CPU快得多地存取)。因此,只要是對(duì)先前高速緩存的存儲(chǔ)器位置進(jìn)行CPU的大部分存儲(chǔ)器請(qǐng)求,高速緩沖存儲(chǔ)器的使用便將導(dǎo)致相比主存儲(chǔ)器的時(shí)延更接近于高速緩沖存儲(chǔ)器的時(shí)延的平均存儲(chǔ)器存取時(shí)延。高速緩沖存儲(chǔ)器可集成到與CPU自身相同的計(jì)算機(jī)芯片中(即,“片上”高速緩沖存儲(chǔ)器),充當(dāng)CPU與片外存儲(chǔ)器之間的接口。高速緩沖存儲(chǔ)器可經(jīng)組織成多個(gè)高速緩存級(jí)別的分級(jí)結(jié)構(gòu)(例如,L1、L2或L3高速緩存),其中高速緩存分級(jí)結(jié)構(gòu)中的較高級(jí)別包括比較低級(jí)別更小且更快的存儲(chǔ)器。
[0006]雖然較大的片上高速緩沖存儲(chǔ)器可減小對(duì)片外存儲(chǔ)器存取的需求,但片上高速緩沖存儲(chǔ)器大小的增加也導(dǎo)致片上高速緩沖存儲(chǔ)器的互連時(shí)延的增加?;ミB時(shí)延是指歸因于構(gòu)成高速緩沖存儲(chǔ)器的存儲(chǔ)器陣列的物理結(jié)構(gòu)在檢索高速緩沖存儲(chǔ)器的內(nèi)容時(shí)的延遲。舉例來(lái)說(shuō),大的片上高速緩沖存儲(chǔ)器可包括經(jīng)劃分成提供較低互連時(shí)延的“快速分區(qū)”子陣列及需要較高互連時(shí)延的“緩慢分區(qū)”子陣列的存儲(chǔ)器陣列。由于高速緩沖存儲(chǔ)器的物理特性,因此緩慢分區(qū)子陣列中高速緩存的數(shù)據(jù)項(xiàng)的檢索可需要比快速分區(qū)子陣列中存儲(chǔ)的數(shù)據(jù)項(xiàng)的檢索更多的處理器時(shí)鐘脈沖。因此,如果從高速緩沖存儲(chǔ)器請(qǐng)求的數(shù)據(jù)項(xiàng)(即,“關(guān)鍵詞”)位于緩慢分區(qū)子陣列中,那么會(huì)招致額外互連時(shí)延,這對(duì)CPU的性能具有負(fù)面影響。
【發(fā)明內(nèi)容】
[0007]本文中所揭示的實(shí)施例包含用以加速高速緩沖存儲(chǔ)器存取的高速緩沖存儲(chǔ)器填充的關(guān)鍵詞優(yōu)先排序。還揭示了相關(guān)基于處理器的系統(tǒng)及方法。在本文中所揭示的實(shí)施例中,排序多個(gè)數(shù)據(jù)項(xiàng)以使得多個(gè)數(shù)據(jù)項(xiàng)當(dāng)中的關(guān)鍵詞在高速緩存填充期間占據(jù)高速緩存線的第一數(shù)據(jù)項(xiàng)塊。存儲(chǔ)與高速緩存線相關(guān)聯(lián)的高速緩存線排序索引以基于高速緩存線的第一數(shù)據(jù)項(xiàng)塊中排序的關(guān)鍵詞指示高速緩存線中的多個(gè)數(shù)據(jù)項(xiàng)的排序。以此方式,在存取高速緩沖存儲(chǔ)器中的高速緩存線時(shí),咨詢高速緩存線排序索引以基于高速緩存填充已進(jìn)行關(guān)鍵詞優(yōu)先排序來(lái)確定存儲(chǔ)于高速緩存線中的數(shù)據(jù)項(xiàng)的排序。作為非限制性實(shí)例,本文中提供的關(guān)鍵詞優(yōu)先排序可增加緩慢分區(qū)存儲(chǔ)器子陣列中的數(shù)據(jù)項(xiàng)塊命中率,從而降低有效高速緩存存取時(shí)延且改進(jìn)處理器性能。
[0008]就此而言,在一個(gè)實(shí)施例中,提供一種高速緩沖存儲(chǔ)器。高速緩沖存儲(chǔ)器包括數(shù)據(jù)陣列,所述數(shù)據(jù)陣列包括高速緩存線,所述高速緩存線包括經(jīng)配置以存儲(chǔ)多個(gè)數(shù)據(jù)項(xiàng)的多個(gè)數(shù)據(jù)項(xiàng)塊。高速緩沖存儲(chǔ)器還包括高速緩存線排序邏輯。高速緩存線排序邏輯經(jīng)配置以在高速緩存填充期間將多個(gè)數(shù)據(jù)項(xiàng)關(guān)鍵詞優(yōu)先排序到高速緩存線中。高速緩存線排序邏輯還經(jīng)配置以存儲(chǔ)與高速緩存線相關(guān)聯(lián)的高速緩存線排序索引,所述高速緩存線排序索引指示高速緩存線中的多個(gè)數(shù)據(jù)項(xiàng)的關(guān)鍵詞優(yōu)先排序。高速緩沖存儲(chǔ)器進(jìn)一步包括經(jīng)配置以基于用于高速緩存線的高速緩存線排序索引存取高速緩存線中的多個(gè)數(shù)據(jù)項(xiàng)中的每一者的高速緩存存取邏輯。
[0009]在另一實(shí)施例中,提供一種高速緩沖存儲(chǔ)器。高速緩沖存儲(chǔ)器包括用于將多個(gè)數(shù)據(jù)項(xiàng)存儲(chǔ)于高速緩存線中的裝置。高速緩沖存儲(chǔ)器還包括高速緩存線排序邏輯裝置。所述高速緩存線排序邏輯裝置經(jīng)配置以在高速緩存填充期間將多個(gè)數(shù)據(jù)項(xiàng)關(guān)鍵詞優(yōu)先排序到高速緩存線中。高速緩存線排序邏輯裝置還經(jīng)配置以存儲(chǔ)與高速緩存線相關(guān)聯(lián)的高速緩存線排序索引,所述高速緩存線排序索引指示高速緩存線中的多個(gè)數(shù)據(jù)項(xiàng)的關(guān)鍵詞優(yōu)先排序。高速緩沖存儲(chǔ)器進(jìn)一步包括經(jīng)配置以基于用于高速緩存線的高速緩存線排序索引存取高速緩存線中的多個(gè)數(shù)據(jù)項(xiàng)中的每一者的高速緩存存取邏輯裝置。
[0010]在另一實(shí)施例中,提供一種關(guān)鍵詞優(yōu)先排序尚速緩沖存儲(chǔ)器填充的方法。所述方法包括在高速緩存填充期間將多個(gè)數(shù)據(jù)項(xiàng)關(guān)鍵詞優(yōu)先排序到高速緩存線中。所述方法還包括存儲(chǔ)與高速緩存線相關(guān)聯(lián)的高速緩存線排序索引,所述高速緩存線排序索引指示高速緩存線中的多個(gè)數(shù)據(jù)項(xiàng)的關(guān)鍵詞優(yōu)先排序。所述方法進(jìn)一步包括基于用于高速緩存線的高速緩存線排序索引存取高速緩存線中的多個(gè)數(shù)據(jù)項(xiàng)中的每一者。
【附圖說(shuō)明】
[0011]圖1說(shuō)明提供高速緩沖存儲(chǔ)器填充的關(guān)鍵詞優(yōu)先排序以加速高速緩沖存儲(chǔ)器存取的示范性中央處理單元(CPU);
[0012]圖2A及2B為說(shuō)明在高速緩沖存儲(chǔ)器填充的關(guān)鍵詞優(yōu)先排序之前及之后的圖1的CPU的LI及L2高速緩存的內(nèi)容的圖;
[0013]圖3說(shuō)明經(jīng)布置成子陣列的示范性高速緩沖存儲(chǔ)器;
[0014]圖4說(shuō)明展示對(duì)圖3的高速緩沖存儲(chǔ)器的“快速分區(qū)”及“緩慢分區(qū)”子陣列的高速緩存存取的示范性時(shí)鐘循環(huán)圖表;
[0015]圖5為展示用于用以加速高速緩沖存儲(chǔ)器存取的高速緩存填充的關(guān)鍵詞優(yōu)先排序的示范性操作的流程圖;
[0016]圖6A及6B為更詳細(xì)地說(shuō)明用于接收及關(guān)鍵詞優(yōu)先排序用于高速緩存線的高速緩存填充的多個(gè)數(shù)據(jù)項(xiàng)的示范性操作的流程圖;及
[0017]圖7為根據(jù)本文中所描述的實(shí)施例中的任一者的示范性基于處理器的系統(tǒng)的框圖,所述基于處理器的系統(tǒng)可包含用于在高速緩存填充期間關(guān)鍵詞優(yōu)先排序數(shù)據(jù)項(xiàng)以加速高速緩沖存儲(chǔ)器存取的圖3的高速緩沖存儲(chǔ)器。
【具體實(shí)施方式】
[0018]現(xiàn)在參看各圖,描述本發(fā)明的若干示范性實(shí)施例。術(shù)語(yǔ)“示范性”在本文中用于指“充當(dāng)實(shí)例、例子或說(shuō)明”。本文中被描述為“示范性的”任何實(shí)施例不必須被理解為比其它實(shí)施例優(yōu)選或有利。
[0019]本文中所揭示的實(shí)施例包含用以加速高速緩沖存儲(chǔ)器存取的高速緩沖存儲(chǔ)器填充的關(guān)鍵詞優(yōu)先排序。還揭示了相關(guān)基于處理器的系統(tǒng)及方法。在本文中所揭示的實(shí)施例中,排序多個(gè)數(shù)據(jù)項(xiàng)以使得多個(gè)數(shù)據(jù)項(xiàng)當(dāng)中的關(guān)鍵詞在高速緩存填充期間占據(jù)高速緩存線的第一數(shù)據(jù)項(xiàng)塊。存儲(chǔ)與高速緩存線相關(guān)聯(lián)的高速緩存線排序索引以基于高速緩存線的第一數(shù)據(jù)項(xiàng)塊中排序的關(guān)鍵詞指示高速緩存線中的多個(gè)數(shù)據(jù)項(xiàng)的排序。以此方式,在存取高速緩沖存儲(chǔ)器中的高速緩存線時(shí),咨詢高速緩存線排序索引以基于高速緩存填充已進(jìn)行關(guān)鍵詞優(yōu)先排序來(lái)確定存儲(chǔ)于高速緩存線中的數(shù)據(jù)項(xiàng)的排序。作為非限制性實(shí)例,本文中提供的關(guān)鍵詞優(yōu)先排序可增加“緩慢分區(qū)”存儲(chǔ)器子陣列中的數(shù)據(jù)項(xiàng)塊命中率,從而降低有效高速緩存存取時(shí)延且改進(jìn)處理器性能。
[0020]就此而言,在一個(gè)實(shí)施例中