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

多端口高速緩沖存儲器結構的制作方法

文檔序號:6567730閱讀:138來源:國知局
專利名稱:多端口高速緩沖存儲器結構的制作方法
技術領域
本發(fā)明涉及多端口高速緩沖存儲器。特別地,本發(fā)明涉及在N 路組相聯(lián)高速緩沖存儲器中的通路預測。
背景技術
在現(xiàn)有的處理器技術中,將處理器性能和存儲器性能(時鐘速 度)分離的高速緩存是公知的。通常采用組相聯(lián)高速緩沖器來提高高 速緩存的性能。在組相聯(lián)高速緩存中, 一個給定的地址選擇兩個或者 更多個為一組的高速緩存線存儲位置,其被用以存儲由該地址指出的 高速緩存線。 一組中的高速緩存線存儲位置被稱作該組中的通路,并 且具有N條通路的高速緩存被稱作N路組相聯(lián)高速緩存。此時所需 的高速緩存線通過標簽方式選擇。
高速緩存在現(xiàn)代數(shù)字信號處理器(DSP)中有著廣泛的應用。然 而,由于有多個接口同時連接到存儲器的(例如,用于程序指令的一 個接口和用于數(shù)據(jù)存取的兩個接口) DSP的不同結構,高速緩存結 構需要與經(jīng)典處理器結構中的那些結構不同。不變的是,DSP所需 的高速緩存結構是一個雙或者高階哈佛(Harvard)存儲器存取結構。 通常,由于雙哈佛結構的每一循環(huán)存取行為中的兩次轉換,這樣的高 速緩存應當用雙端口存儲塊實現(xiàn)。
圖1圖解了典型的用于包含雙哈佛結構的DSP中的N路組相聯(lián) 高速緩存結構。高速緩沖存儲器100包含連接到例如數(shù)據(jù)總線和命令 總線(圖中未顯示)的兩個輸入端口 101、 103,這兩條總線要求對 存儲器同時訪問。地址X在輸入端口 101輸入,以及地址Y在輸入 端口103輸入,以檢索相關的數(shù)據(jù)和指令。每一地址X和Y都包含 一個標簽(高位)和一個索引(低位)。每一個地址X和Y的標簽 和索引分別通過第一和第二輸入端口 101、 103輸入到各自的標簽存
儲器105、 107中。在查找特定標簽之后,標簽存儲器105、 107輸出 各自的X通路選擇器和Y通路選擇器。并行于標簽存儲器查找,X 和Y地址的每個索引被放在多個雙端口存儲塊109a、 109b、 109c、 109d的輸入端。每一個存儲塊109a、 109b、 109c、 109d均被每一個 X和Y輸入地址的X索引和Y索引訪問以訪問多條通路。用于每個 地址X和Y的通路被輸出到每個存儲塊各自的輸出端口。由X地址 的索引訪問的多條通路被輸出到X通路多路復用器111,由Y地址 的索引訪問的多條通路被輸出到Y通路多路復用器113。
來自標簽存儲器105的X通路選擇器輸出被輸入到X通路多路 復用器111以選擇由X地址索引訪問的多條通路和多個雙端口存儲 塊109a、 109b、 109c、 109d輸出中的一個。與所選的通路相關的數(shù) 據(jù)被放置在高速緩沖存儲器IOO的第一輸出端口 115。以相似的方式, Y通路由Y通路多路復用器113選擇,并且相關的數(shù)據(jù)在高速緩沖 存儲器100的第二輸出端口 117上輸出。
為了能夠實現(xiàn)這樣已知的DSP所要求的同時訪問,需要雙端口 存儲塊。然而,這樣的雙端口存儲塊在面積、時鐘速度和功耗方面相 對較貴。
在深亞微米技術中,由于在深亞微米量級,隨著延遲的增加, 連線延遲是有害的,所以需要保持存儲器和內(nèi)核鄰近連接。這和現(xiàn)代 應用中增長的存儲器需求是有沖突的。通過高速緩存結構可以解決這 種沖突,在這里, 一個小的高速緩沖存儲器放置在內(nèi)核附近,對到遠 端的大存儲器的訪問進行緩沖。通過采用一個統(tǒng)一的存儲器,該存儲 器有兩個和外界相連的分別用于程序指令和數(shù)據(jù)的存儲器接口,這個 問題在現(xiàn)代微控制器中得到解決。然而,對于DSP來講,帶有高速 緩存的雙哈佛結構的結合導致了在這樣的微控制器結構中從未發(fā)現(xiàn) 過的復雜性,也就是存儲空間之間的高速緩存器一致性。在這樣的微 控制器中,由于代碼和數(shù)據(jù)之間的良好的分離,不需要對兩個空間同 時訪問,以及允許數(shù)據(jù)和程序高速緩存的獨立實現(xiàn),因此一致性的缺 乏并不是一個問題。
在有兩個(或更多)數(shù)據(jù)總線連接到同一數(shù)據(jù)存儲器的DSP上,
由于存儲空間上更深入的數(shù)據(jù)共享,導致高速緩存結構必須以更有效 的方式解決非一致性問題。通過采用圖1中所示的有內(nèi)部雙端口存儲 塊以允許一個周期內(nèi)兩次訪問的雙端口高速緩存結構,可以實現(xiàn)這一 目的。這樣可以確保數(shù)據(jù)只是在一個高速緩沖存儲塊內(nèi)出現(xiàn),因而確 定保證一致性。然而,由于雙端口存儲器相比較通常的單端口存儲器 效率偏低,這導致在面積和速度方面會有很大的開銷。
可選的是,取代并行訪問,可以在實際的存儲器訪問之前執(zhí)行
標簽查找。然而,這需要在訪問實際的存儲塊109a-109d之前對標簽 存儲器105、 107執(zhí)行一次額外的存儲器訪問。該額外的訪問會對處 理器的速度和性能都有非常顯著的影響。

發(fā)明內(nèi)容
因此,在不要求一個額外的周期以在進行實際的存儲塊訪問之 前進行標簽存儲器訪問的情況下,本發(fā)明克服了雙端口存儲塊的缺 陷,并在雙端口或者多端口高速緩沖存儲器中采用單端口存儲塊等存 儲塊,該雙端口或多端口高速緩沖存儲器適合于DSP等。
按照本發(fā)明的一個方面,通過提供一個多端口高速緩沖存儲器
可以實現(xiàn)這個目的,該高速緩沖存儲器包括用于輸入多個地址的多 個輸入端口,每個地址的至少一部分對多條通路索引;用于輸出與所 述多個地址每一個相關的數(shù)據(jù)的多個輸出端口;存儲所述多條通路的 多個存儲塊,每一個所述存儲塊包含一個單輸入端口;用以預測哪些 通路將會被所述多個地址的每一個索引的預測器;用以基于預測的通 路索引所述多條通路的裝置;以及選擇所述多條通路之一以使所選通
路的數(shù)據(jù)在所述高速緩沖存儲器相關的輸出端口輸出的裝置。
這樣,單端口存儲塊能夠在多端口高速緩存中得到應用。這就 減少存儲器的面積,增加時鐘速度并降低功耗。由于使用了單端口存 儲塊,所以在每一個周期內(nèi)只允許對每個存儲塊進行一次訪問,也就 是兩個同時訪問必須指向不同的存儲塊。存儲器可以被分成多個較小 的塊。在每個周期內(nèi),只有一個或者兩個較小的塊是起作用的,這樣 更降低功耗。
取代真實的標簽存儲器查找而使用預測,能夠對要被訪問的正 確的存儲塊進行早期選擇。然而,在錯誤預測的情況下,懲罰的出現(xiàn) 和代價都受到限制。在實際的實現(xiàn)中,這可能低至一個時鐘周期。
在很多情況下,應用軟件不會有關于通過兩個數(shù)據(jù)通道進行訪 問的完全隨機行為,所以通路預測是有效的。就像數(shù)據(jù)訪問多多少少 在時間上進行(參照的時間局部性)的一樣,進行在數(shù)據(jù)空間上的訪 問(空間局部性形式)。
此外,在很多情況下,對于兩個同時的訪問,可以假定這些訪 問位于不同的"通路"上,這樣,如果知道哪條"通路"將被尋址, 那么,在和特定的通路沒有沖突的情況下(沖突是兩個空間對同一通 路尋址),存儲器訪問地址能夠被指向正確的通路(和相關的存儲塊)。
優(yōu)選的是,選擇裝置包含用以查找每個相關地址的標簽部分的 多個標簽存儲器,該査找與對所述多條通路進行的索引并行進行。
由于標簽存儲器訪問以并行的方式進行,也就是在真實的通路 存儲器訪問的同一周期內(nèi),只在訪問周期的最后,選擇所有高速緩沖 通路存儲器的正確數(shù)據(jù),這意味著可以防止地址沖突。
利用存在每個數(shù)據(jù)空間的參考局部性這個事實,用最簡單的方 式可以假定下一個存儲器訪問可能要訪問與上一個訪問的同一通路。 這意味著最簡單形式的預測可以被利用,諸如對被訪問地址的標簽部 分和前一地址進行比較并利用比較結果來選擇最有可能的地址和存 儲塊組合。這是相對低成本的不包括例如存儲器訪問的操作。基于該 預測,可以基于與前一訪問相同的通路進行訪問。在錯誤預測的情況 下, 一次訪問仍然能夠被執(zhí)行,另一訪問可能需要一個額外的周期以 執(zhí)行一次附加的訪問。
預測可以在多個不同通路中執(zhí)行,例如,預測器保留最近n次 的訪問歷史紀錄,并檢查歷史紀錄中的趨勢以預測下一條通路,或者, 在每個空間,預測器利用最近N次訪問以預測最多N個不同通路, 其中,N可能等于地址指針的數(shù)目。可選的是,預測器還可能包括這 樣的裝置,所述裝置用以建立一組地址指針內(nèi)的哪一個地址指針執(zhí)行 了請求,并在哪一地址指針執(zhí)行了請求的基礎上預測下一通路。
可選地,由于DSP程序的常規(guī)結構,使得只追蹤雙訪問就足夠
了,假定單訪問以不同的方式被利用(例如,雙訪問進行數(shù)據(jù)和系數(shù) 的存取操作,單訪問是進行結果寫),因此不增加沖突情形的預測。 相比較前一優(yōu)化結果,這樣將會減少要保存在預測單元中的歷史紀錄
本發(fā)明的多端口高速緩沖存儲器可以被合并入用于諸如手機裝
置或者電子手持信息裝置(個人數(shù)字助理,PDA)或者筆記本電腦等 多種不同裝置的數(shù)字信號處理器中。


通過結合附圖,參考以下的詳細描述,本發(fā)明能夠得到更完全 的理解,其中
圖1圖示了已知的用于DSP的N路組相聯(lián)高速緩存結構的簡化 框圖;以及
圖2圖示了根據(jù)本發(fā)明的一個實施例的用于DSP的多端口高速 緩存結構的簡化框圖。
具體實施例方式
參照圖2對本發(fā)明的一個優(yōu)選的實施例進行描述。多端口高速 緩沖存儲器200是一個雙端口 (雙哈佛)結構。雖然這里說明的是雙 端口存儲器,但期望任意數(shù)目端口數(shù)的存儲器都可以實現(xiàn)。為了簡單 起見,參照高速緩存讀操作,對根據(jù)優(yōu)選實施例的高速緩存的操作進 行描述。
以其他的方式對寫操作緩沖或者排隊。
本發(fā)明可以在任何一個包含具有高速緩沖存儲器的(基于雙哈 佛結構的)DSP的應用中實現(xiàn),對于更多的現(xiàn)代DSP結構來講,具 有高速緩沖存儲器是非常典型的結構。實例包括蜂窩電話、音頻設備 (MP3播放器)等等。
本發(fā)明的優(yōu)選實施例的多端口 (雙端口)高速緩沖存儲器200 包含第一輸入端口 201和第二輸入端口 203。每個輸入端口 201、 203
連接到各自的地址解碼器205、 207。
第一地址解碼器205的一個輸出端連接到第一標簽存儲器209 的一個輸入和預測邏輯電路211的輸入。第一解碼器205的另一輸出 端連接到第一標簽存儲器209的另一個輸入以及多個多路復用器 213a、 213b、 213c和213d的第一輸入。
第二地址解碼器207的一個輸出端連接到第二標簽存儲器215 的一個輸入和預測邏輯電路211的另一個輸入端。第二解碼器207 的另一個輸出端連接到第二標簽存儲器215的另一個輸入端以及多 個多路復用器213a、 213b、 213c和213d的第二輸入。
預測邏輯電路211的輸出連接到多個多路復用器213a、 213b、 213c和213d的每一個。每一個多路復用器213a、 213b、 213c和213d 的輸出均連接到單端口存儲塊219a、 219b、 219c.和219d各自的輸入 端口 217a、 217b、 217c和217d。每一單端口存儲塊219a、 219b、 219c 和219d的輸出端口 221a、 221b、 221c和221d均連接到第一和第二 通路多路復用器223和225各自的輸入端。
第一標簽存儲器209的輸出連接到第一通路多路復用器223,第 二標簽存儲器215的輸出連接到第二通路多路復用器225。第一通路 多路復用器223的輸出連接到高速緩沖存儲器200的第一輸出口 227。第二通路多路復用器225的輸出連接到高速緩沖存儲器200的 第二輸出口 229。
與參照圖l所述的現(xiàn)有技術的高速緩沖存儲器的操作相似的是, 每個地址X和Y被分別放到第一和第二輸入端口 201、 203。此時, 這些地址被各自的解碼器205、 207分為標簽部分(高位)和索引(低 位)。標簽部分被放到每個解碼器的一個輸出端并被輸入到各自的標 簽存儲器209、 215。每個地址X和Y的索引也被輸入到各自的標簽 存儲器209、 215。根據(jù)標簽執(zhí)行一次查找,各自的X、 Y通路選擇 器被輸出到他們各自的通路多路復用器223、 225。每個地址X和Y 的標簽也均被輸入預測邏輯電路,以幫助進行下一次通路預測。每個 輸入地址X和Y的每一索引被分別放置在每一個多個多路復用器 213a、 213b、 213c、 213d各自的輸入端。預測邏輯電路211的輸出
選擇哪一個索引要被放置在每一個多個多路復用器213a、213b、213c、 213d的輸出端。所選的索引被放置在每個存儲塊219a、 219b、 219c、 219d各自的輸入端口 217a、 217b、 217c、 217d。
所選的索引訪問在每個存儲塊219a、 219b、 219c、 219d中的高 速緩存線存儲位置或通路,該高速緩存線存儲位置或者通路從每個存 儲塊219a、 219b、 219c、 219d中輸出。此時,每個存儲塊219a、 219b、 219c、 219d的輸出被X、 Y通路選擇器通過第一和第二通路多路復 用器223、 225選中,以便被訪問的數(shù)據(jù)在第一或第二輸出端口 227、 229輸出。
按照該優(yōu)選實施例,以并行的方式執(zhí)行標簽存儲器查找和輸出 査找結果,X、 Y通路選擇器在存儲器訪問結束時選擇正確的輸出。
在訪問周期結束時,預測邏輯211監(jiān)控由標簽存儲器訪問產(chǎn)生 的真實值,以確認選擇結果的正確性。在錯誤預測的情況下,錯誤的 地址會被發(fā)送到一個特定的存儲塊,例如包含Y值的存儲塊要被X 地址尋址。在這種情況下,就必須通過從標簽存儲器(209, 215)確 定的正確地址,而不是通過按照傳統(tǒng)的高速緩存訪問的多路復用器 213a、 213b、 213c、 213d的輸出,來重新執(zhí)行存儲器訪問。
期望預測能夠以多種方式進行。最簡單的方式是僅僅通過假定 下一次訪問與之前的訪問相同來預測下一次訪問。另一種方式將是保 留標簽/通路對的歷史記錄,并且通過檢查歷史記錄中的趨勢,預測 下一條通路。與之前的方法相比較,該方法具有更低的錯誤預測概率。 然而,保留寬泛的歷史記錄需要一個會復制標簽存儲器的存儲器。因 此,更優(yōu)選的方法是在高速寄存器中保留最后幾次訪問的記錄,以提 供更準確的高速預測,這不需要昂貴而且緩慢的更大存儲器資源。
一種更精良的預測機制會在每個空間利用最后N次訪問來預測 N條不同通路(例如,N等于DSP地址指針的數(shù)目)。
利用ISA和編譯器技術來控制通路分配以減少或者甚至消除通 路錯誤預測。通過確認標簽/通路組合以一種更加結構化和可預測的 方式使得預測更加可靠。
可選地,通過在高速緩存犧牲選擇算法中增加智能,以防止通 路存儲器中存在碎片的方式,來執(zhí)行通路預測。下一個被預測的高速 緩存線最可能被帶入和當前線相同的物理存儲塊中。
通常,通路鎖定可能是準動態(tài)地將X、 Y存儲空間分成多個可 配置的扇區(qū)的機制。可以為每一個扇區(qū)分配多條通路,同時還會標示 該部分有沒有通過兩個訪問端口共享。
通過獲得更多的訪問信息可以改善預測準確性,例如,知道一 組指針中的哪一個在執(zhí)行請求。這要求從處理器向預測器傳遞額外的
{曰息。
這樣,可以在多端口高速緩存中使用單端口存儲塊。 雖然通過附圖和上述詳細描述,本發(fā)明系統(tǒng)的一個優(yōu)選實施例 得到圖示說明和描述,但是,應當了解到,本發(fā)明并不局限于公布的 實施例,在不脫離權利要求中所述的本發(fā)明的范圍情況下,可以有很 多的變化和修改。
權利要求
1.一種多端口高速緩沖存儲器,包括多個輸入端口,用于輸入多個地址,每個地址的至少一部分對多條通路進行索引;多個輸出端口,用于輸出與所述多個地址的每一個相關的數(shù)據(jù);多個存儲塊,用于存儲所述多條通路,每一個所述存儲塊均包含一個單輸入端口;預測器,用于預測哪些通路將被所述多個地址中的每一個索引;索引裝置,基于預測的通路對所述多條通路進行索引;以及選擇裝置,選擇所述多條通路中的一條,以使所述被選通路的數(shù)據(jù)在所述高速緩沖存儲器的相關輸出端口上輸出。
2. 按照權利要求1所述的多端口高速緩沖存儲器,其中,所述 選擇裝置包括多個標簽存儲器,該多個標簽器用于并行于對所述多條 通路的索引,査找每個相關地址的標簽部分。
3. 按照權利要求1或者2所述的多端口高速緩沖存儲器,其中, 所述預測器對地址的標簽部分和前一地址的標簽部分進行比較以預 測通路。
4. 按照權利要求1或者2所述的多端口高速緩沖存儲器,其中, 所述預測器保留最近n次訪問的歷史記錄并檢查歷史記錄中的趨勢 以預測下一通路。
5. 按照權利要求1或者2所述的多端口高速緩沖存儲器,其中, 所述預測器在每個空間利用最后N次訪問以預測最多N條不同通路。
6. 按照權利要求5所述的多端口高速緩沖存儲器,其中,N等 于地址指針的數(shù)目。
7. 按照權利要求1或者2所述的多端口高速緩沖存儲器,其中, 所述預測器還包括這樣的裝置,該裝置建立一組地址指針中哪一個執(zhí) 行請求,并在哪一個地址指針執(zhí)行請求的基礎上預測下一通路。
8. —種包含按照任何之前一項權利要求中所述的多端口高速緩沖存儲器的數(shù)字信號處理器。
9. 按照權利要求8所述的數(shù)字信號處理器,其中,多端口高速 緩沖存儲器是雙哈佛結構的雙端口高速緩沖存儲器。
10. 按照權利要求9所述的數(shù)字信號處理器,其中,所述預測器 只追蹤雙訪問。
11. 一種包含按照權利要求8-10中任意一項所述的數(shù)字信號處 理器的移動電話裝置。
12. —種包含按照權利要求8-10中任意一項所述的數(shù)字信號處 理器的電子手持信息裝置。
全文摘要
本發(fā)明涉及一種多端口高速緩沖存儲器結構。多端口高速緩沖存儲器(200)包含用以輸入多個地址的多個輸入端口(201,203),至少每一地址的一部分索引多條通路;用以輸出與所述多個地址的每一個相關的數(shù)據(jù)的多個輸出端口(227,229);用以存儲所述多條通路的多個存儲塊(219a,219b,219c),每個存儲塊均包含一個單獨的輸入端口(217a,217b,217c,217d)并存儲所述通路;用以選擇所述多條通路中的一個以便所選通路的數(shù)據(jù)在所述高速緩沖存儲器(200)的相關輸出端(227,229)上輸出的裝置(209,215,223,225);用以預測哪些通路會被所述多個地址的每一個索引的預測器(211);以及在預測的通路的基礎上索引所述多條通路的裝置(213a,213b,213c,213d)。
文檔編號G06F12/08GK101194236SQ200680020388
公開日2008年6月4日 申請日期2006年6月2日 優(yōu)先權日2005年6月9日
發(fā)明者科內(nèi)利斯·M·穆爾曼, 馬思·萬斯特拉林 申請人:Nxp股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1