新四季網

用於分解操作的高速緩存和體系結構特定功能分層的方法

2023-05-28 18:09:31 1

專利名稱:用於分解操作的高速緩存和體系結構特定功能分層的方法
技術領域:
本發明總體上涉及數據處理系統中的高速緩存控制器,並且尤其涉及對高速緩存和體系結構特定功能進行分層的高速緩存控制器。更進一步,本發明涉及,在高速緩存控制器內,對高速緩存和體系結構特定功能進行分層,以便於允許複雜操作分解為高速緩存和體系結構的操作。
使用二級(L2)高速緩存的數據處理系統典型地包括用於管理影響高速緩存事物處理的高速緩存控制器。這樣的高速緩存控制器通常在功能級上實現,如圖4所示。比如,高速緩存控制器402可以包括維護高速緩存目錄的邏輯404、實現最近最少使用(LRU)替換原則的邏輯406、管理重載緩衝區408的邏輯、以及管理存回緩衝區410的邏輯。在傳統的實現中,高速緩存對這些和其它體系結構功能,即高速緩存控制器所需的典型功能,總體上說是相當可見的。因此,高速緩存控制器設計對專門的處理器,如PowerPCTM、AlphaTM或X86族系列處理器是特定的。
圖4中所描述的基本高速緩存控制器設計支持的操作既可以是簡單的也可以是複雜的。簡單的操作傳遞單個信息片段,而複雜的操作包含不止一個清晰的信息片段。如比較由PowerPCTM支持的READ和READ原子操作。READ操作表示應讀的一個給定的內存位置。READ原子操作表示應讀的一個特定內存位置,以及如果層次中的任何其它設備改變內存位置中的數據,通知啟動此操作的處理器。READ原子操作用於同步。
對於給定體系結構支持的擴展複雜操作不能被分解,支持那個操作的控制器邏輯必須保持相互依賴,複雜操作的邏輯經常是一個支持多種特殊操作事例、處於複雜狀態的機器。這樣的邏輯是複雜的,需要重要的矽區來實現,並且難以同其它支持其它操作的邏輯互鎖。
因此,能夠分解複雜操作,以使得支持操作的邏輯簡單化是所期望的。更為期望的是分解複雜的操作,通過實施更快的執行操作的邏輯,來加快它們的執行速度。
因此,本發明的一個目的在於為數據處理系統提供一個改進的高速緩存控制器。
本發明的另一個目的在於提供一個改進的高速緩存控制器,其具有分層的高速緩存和體系結構特定功能。
本發明還有一個目的在於在高速緩存控制器內使高速緩存和體系結構分層,以允許複雜操作被分解成高速緩存和體系結構的操作。
如現在所描述的,上述目的已經實現。在高速緩存控制器內,高速緩存和體系結構的特定功能分層,以允許複雜操作被分解成等效的簡單操作。這樣,基本操作的體系結構變量可移交給不同的高速緩存和體系結構操作,並單獨處理。支持複雜操作的邏輯因此可被簡單化並且運行得更快。
通過下列詳細的書面描述,本發明上述的和其它的目的、特色和優勢將顯而易見。
被認為能代表本發明的特徵新特性在附加的權利要求書中列出。然而,發明本身、最佳使用模式以及進一步的目的和優點,通過參考下面對示範性實施例的詳細描述,並連同附圖,將可以很好地理解。其中

圖1描述了根據本發明的最佳實施例,用高速緩存控制器設計來實現的數據處理系統;圖2是根據本發明的最佳實施例的、高速緩存控制器設計的框圖;圖3描述了根據本發明的最佳實施例的分解操作過程的高級流程圖;以及圖4是現有技術下的高速緩存控制器的設計。
現在參考附圖,並且尤其參考圖1,描述一個根據本發明最佳實施例的、利用高速緩存控制器設計實現的數據處理系統。數據處理系統100可以包括僅僅一個處理器或包括幾個處理器的對稱多處理機(SMP)系統。在所描述的例子中表示了單個處理器系統。處理器102可以是超標量精簡指令集(RISC)處理器,在處理器內,包括分解的一級指令以及數據高速緩存104和106。PowerTM處理器可用作處理器102。
處理器102連接到二級(L2)高速緩存108上,此為非共享高速緩存。第二個處理器(未畫出)可以加入到此系統,其可以擁有單獨的L2高速緩存或者與處理器102共享L2高速緩存108。L2高速緩存108與用於數據處理系統100的系統總線110連接。如I/O總線橋114一樣,本機內存112也連接到系統總線110上。其它設備,如內存映射圖形適配器116也可以連接到系統總線110上。I/O總線橋114還連接到I/O總線118上,此總線可以連接多種其它設備,如區域網(LAN)適配器120和硬碟驅動器122。
對此技術一般熟練的人員,可以理解圖1中描述的硬體是可以更改的。比如,還可以加入其它外設,如光碟驅動器和類似產品,或用其取代所描述的硬體。所描述的例子並不意味著要對本發明體系結構進行仿效。尤其是,數據處理系統可不必如例子中所表示的,僅局限於單處理器,以從本發明受益。比如,通過使用各帶相應的L2高速緩存的兩個處理器,本發明可以用來提高數據處理系統的性能。
參考圖2,描述了根據本發明最佳實施例的、非共享高速緩存控制器的設計框圖。控制器202在圖1中描述的高速緩存108內實現。控制器202包括連接到上層總線206的總線接口單元204,以用於處理器或更高一級高速緩存;以及連接下層總線210的總線接口單元208,此總線可以是系統總線或連接到另一個高速緩存的總線。上層總線206與下層總線210可以不同;比如,上層總線可以是60X,而下層總線可以是另一種總線。
高速緩存和控制器202中的體系結構的特定功能被分層。這樣,控制器202包括高速緩存控制器212及體系結構控制器214。操作被區別為「高速緩存」或「體系結構」操作。高速緩存控制器212僅處理高速緩存操作,並且只有高速緩存控制器212對高速緩存216操作。體系結構控制器214處理體系結構的操作,並且其操作被高速緩存212看作系統方面的操作。
第三單元,非高速緩存控制器218,也包括在高速緩存控制器202中。非高速緩存控制器218實際上是高速緩存控制器212的副本,其也僅僅處理高速緩存操作。然而,高速緩存控制器212處理指向高速緩存內存單元的高速緩存操作,非高速緩存控制器218處理的高速緩存操作指向沒有映射到高速緩存216的高速緩存內存單元。由於那些對此技術熟練的人員所了解的原因,把系統內存的一部分當成不可高速緩存的是有利的。比如,這樣的內存可以被內存映射器件所使用。高速緩存控制器212對整個高速緩存塊操作,而非高速緩存控制器218對較小的內存段操作,往往小於8-16個字節。而且,非高速緩存控制器218不存貯數據,而高速緩存控制器212保存在高速緩存216中處理的數據副本。
高速緩存操作是那些典型的操作,即讀或寫內存單元的數值,並因此可以修改或檢索內存單元的數據值。其餘操作被定義為體系結構操作。與高速緩存操作不同,體系結構操作通常不改變內存單元的數值。體系結構操作可在高速緩存層次中,把數據移到不同的單元,改變個別內存單元中的數據狀態,或執行其它這樣的功能。然而,體系結構操作通常不直接改變內存單元的數值。
由高速緩存控制器212支持的高速緩存操作,包括了影響系統高速緩存的大多數操作。在由給定處理器支持的完整操作集裡,高速緩存操作可以不從被頻繁地執行並/或消耗絕大部分處理器周期的一部分指令集中導出。然而,忽略指向處理器內部其它功能單元如浮點、定點、或分支單元的指令,高速緩存操作經常集中使用,並使用大部分時間。
影響系統高速緩存的其餘操作--那些用於高速緩存管理、作業系統管理、頁面管理和同步化,等--被結構體系控制器214分層和支持。事實上,所有的處理器體系結構支持如此的操作,其在實時操作中的使用遠少於高速緩存操作。另外,在體系結構操作中的單個操作通常對於不同的被感興趣的處理器,如果不是用完全不同的方式,用區別很大的方式來實現。處理器方面的體系結構操作通過體系結構控制器214到系統總線210上,並作為透明的系統方面的體系結構操作,影響高速緩存控制器212。
不同的設計可以有不同的由高速緩存控制器支持的操作集,並且,在預設模式下,其餘操作被分層以被體系結構控制器支持。然而,由高速緩存控制器支持的增加操作數目功能增加了所需邏輯的複雜性。另外,所選的被高速緩存控制器支持的指令並不被所有被感興趣的處理器支持,高速緩存控制器設計不具備到新控制器設計的直接可轉換性。
一些操作僅僅從控制器202內部的一條路徑傳下--即通過體系結構控制器214或高速緩存控制器212--其它操作被分解並從兩條路徑傳下。高速緩存控制器212使用「轉發」設計,其中在接口220啟動的操作在接口222產生響應,而在接口222啟動的操作在接口220產生響應。
由於高速緩存和體系結構操作在控制器202內被分層,總線事物處理和協議也可以被分層。即可以為控制器212,體系結構控制器214,和非高速緩存控制器218定義類屬接口。這樣,接口220-230包括對總線接口單元204和208的類屬協議接口,它們在可能的程度上,並非是體系結構特定的。這使得高速緩存控制器212的設計從總線206和總線210的特定協議中解耦,以允許高速緩存控制器212的設計可以重複使用。總線接口單元204和208負責管理到總線206和系統總線210的事物處理和協議,把特定總線事物處理轉化為類屬協議接口220-230的協議。通過使用類屬協議接口220-230,控制器212、214和218從特定總線體系結構隔離出來,並可以很容易地複製。
與傳統高速緩存控制器對比,高速緩存控制器212可以以獨立於總線206和210的方式實現,僅對高速緩存操作反應。儘管這樣的高速緩存操作由總線206或210的事物處理啟動,但僅僅某些總線事物處理將在高速緩存控制器212中引起反應。在最佳實施例中,高速緩存控制器212僅對在總線206上取指令操作(IFETCH)、LOAD操作和WRITE操作,以及在總線210上的READ操作、WRITE操作以及傳統的SNOOPS作出反應。這使得了對高速緩存控制器212的設計需求大大簡化。這通過避免覆蓋極不規則(語義上的和臨時性的)體系結構操作和高速緩存操作的常規行動來完成。對體系結構操作和高速緩存操作作出反應的負擔從高速緩存控制器212的設計中解脫出來,並被置入體系結構控制器214中。
每一臺被感興趣的商業處理器,以本質上相同的形式,支持由高速緩存控制器212處理的高速緩存操作。在本發明中的高速緩存控制器212被類屬接口220和222從特定實現解耦出來,在特定實現中僅僅小小的不同便可以把各種被感興趣處理器中的可比較指令區別開來。
通過對所選的高速緩存和體系結構功能進行分層,並實現到總線接口單元204和208的類屬接口,控制器202總體設計的大部分可直接轉換到新的實現。不必大量修改高速緩存操作,可以重新使用高速緩存控制器邏輯。總線接口單元邏輯新部分可以容易地實現,用以處理新的總線協議,以及把高速緩存、體系結構、非高速緩存控制器212、214和218的類屬協議接口220-230轉換成總線206和總線210的接口。實現支持不同處理器設計的主要工作是體系結構控制器所需要的。由於處理器體系結構差別較大,需要對支持體系結構操作邏輯進行單獨設計。總之,不論怎樣,既然僅僅由體系結構控制器214處理的操作語義將會改變,對於不同處理器所作的設計上的努力可以大大節省。
通過對高速緩存和體系結構功能進行分層,使高速緩存控制器212僅對少量基本操作起反應,控制器邏輯在很大程度上被流線型化和簡單化。此外,因為通過分解操作的兩種類別,不同類別操作間交互作用的問題被消除,所以體系結構控制器的邏輯也被簡化。高速緩存和體系結構控制器可設計成獨立的單元。
總線接口單元204分解由本地處理器(未畫出)啟動的複雜操作。重新將PowerPCTM體系結構作為一個例子。
複雜操作典型地具有覆蓋在基本操作上的信息,如READ或者WRITE操作。例如PowerPCTM體系結構支持具有取消操作的數個WRITE變種。包括用於捨去的帶取消的WRITE,用於塊清除的帶取消的WRITE,以及用於使塊無效的帶取消的WRITE。每個描述的變量具有覆蓋在基本WRITE操作上的信息。描述的第一個變種用於捨去的帶取消的WRITE,只需要把高速緩存塊寫到當前的高速緩存等級上。用於塊清除的帶取消的WRITE,要求把塊寫到從當前的高速緩存等級到系統內存的各層次等級上。用於使塊無效的帶取消的WRITE,要求把塊寫到系統內存中,並且使每個高速緩存等級中的塊無效。這樣,複雜的帶取消操作的WRITE包括覆蓋在基本WRITE操作上的、不同的信息元素。
總體上,覆蓋在基本操作上、以形成複雜操作的信息在本質上是體系結構的。換言之,複雜操作一般是基本操作的體系結構變種。因此,一個複雜操作的體系結構特性一般從非體系結構的部分分解出來。那麼體系結構部分被傳遞到體系結構控制器214,而非體系結構部分被傳遞到高速緩存控制器212。因為體系結構控制器214處理複雜操作的體系結構部分並且被從高速緩存控制器212分層,高速緩存控制器212中的邏輯不能覺察如此啟動的基本操作和由分解複雜操作生成的基本操作之間的任何不同。
這樣,複雜操作的基本和體系結構部分被分別處理,儘管以一種協調的方式。複雜操作的體系結構部分不必通過體系結構控制器214傳播,但是可以只是改變體系結構控制器214中引擎的狀態以便於維護操作的語義。READ原子操作是一個這樣的操作。
通過確認複雜操作中的基本操作,複雜操作必須在單獨的基礎上分解。例如用於塊無效操作帶取消的WRITE轉換成一個由高速緩存控制器212處理的WRITE操作和一個由體系結構控制器214處理的FLUSH操作。這一對操作與用於塊無效的帶取消的WRITE一樣取得相同的結果塊被寫到當前高速緩存等級中,然後一直被寫到系統內存中,使在所有較高層次等級中的塊都無效。
被本地處理器啟動的複雜操作轉換成由總線接口單元204啟動的較簡單操作,較簡單的操作被分別發送到體系結構控制器214和高速緩存控制器212。在系統總線210上監聽到的操作一般總是被轉換成簡單的操作(READ和WRITE),並且因此不需要分解。
分解複雜操作和分層高速緩存和體系結構特定功能間的關係有些循環。在設備中如果沒有高速緩存和體系結構特定功能的分層,執行操作,複雜的操作不能被分解。事實上,並不存在分解操作的邏輯上的需要。另一方面,為了成功地分層高速緩存和體系結構特定功能,複雜操作必須被轉換成基本和體系結構部分。
儘管以上描述的、本發明的、示範性的實施例利用了PowerPCTM體系結構,但體系結構的選擇並不意味著對本發明任何限制。複雜操作因體系結構不同而不同。然而,如果那個體系結構的高速緩存和體系結構的特定功能在執行操作的設備中被分層,被大多數體系結構支持的複雜操作應可以被分解。
現在參考圖3,根據本發明的最佳實施例,描述了一個分解操作過程的高級流程圖。本過程從步驟302開始,此步描述在處理器總線上探測操作。過程接著進行到304步,其表示對一個操作是否是複雜操作進行判斷。如果不是,過程繼續到306步,它描述對操作類型(高速緩存或者體系結構)的識別,然後到達308步,它描述把操作傳遞給適當的控制器(高速緩存、非高速緩存的、或者體系結構)。然後過程到達314步,它描述直到另一個操作被檢測出,過程處於空閒狀態。
再次參考304步,如果操作被判斷為是複雜的,過程到達310步,它描述把操作轉換成等效的簡單操作。然後過程到達312步,它描述把簡單操作傳遞給相應的高速緩存或者體系結構控制器,然後到達314步,它描述過程變為如上所述的空閒狀態。
本發明允許在一個對高速緩存和體系結構的特定功能分層的控制器中,複雜操作被分解成等效的簡單操作。這允許支持操作的邏輯簡單化並且運行得更快。
當參考最佳實施例,特別說明和描述本發明時,對此技術熟練的人員將理解只要不脫離本發明的精神和範圍,可以在其中的方式和細節上作各種修改。
權利要求
1.一種在數據處理系統中處理操作的方法,包括在總線上,檢測一個複雜操作;以及執行至少一種簡單操作,其中通過執行所述至少一種簡單操作,達到所述複雜操作的期望結果。
2.一個控制器,包括多個控制器單元,每個控制器單元執行不同類型的簡單操作;以及一個總線接口單元,接收來自總線的操作以及,對接收複雜操作反應,在所述多個控制器單元中啟動至少一種簡單操作,通過執行所述至少一種簡單操作,獲得其中所述複雜操作所期望的結果。
全文摘要
在高速緩存控制器內的高速緩存和體系結構特定功能被分層,以允許複雜操作被分解成等效的簡單操作。這樣,基本操作的體系結構變體被轉換成獨立的高速緩存和體系結構操作,並被分別處理。這樣支持複雜操作的邏輯可以被簡化並且運行得更快。
文檔編號G06F12/08GK1197235SQ98105689
公開日1998年10月28日 申請日期1998年3月23日 優先權日1997年4月14日
發明者拉維·K·阿里米利, 約漢·S·多德森, 傑裡·D·路易斯, 德雷克·E·威廉 申請人:國際商業機器公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀