TWI320141B - Apparatus and system for reducing snoop accesses and method for reductiing snoop accesses performed by an electronic apparatus - Google Patents
Apparatus and system for reducing snoop accesses and method for reductiing snoop accesses performed by an electronic apparatus Download PDFInfo
- Publication number
- TWI320141B TWI320141B TW095123376A TW95123376A TWI320141B TW I320141 B TWI320141 B TW I320141B TW 095123376 A TW095123376 A TW 095123376A TW 95123376 A TW95123376 A TW 95123376A TW I320141 B TWI320141 B TW I320141B
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- processor
- access
- processor core
- page
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
- G06F12/0835—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means for main memory peripheral accesses (e.g. I/O or DMA)
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
1320141 (1) 九、發明說明 【發明所屬之技術領域】 本發明係有關用以減少由一電子設備所實施之窺探存 取的方法。 ' 【先前技術】 • 爲了改善性能,一些電腦系統可包括一或多個快取記 φ 憶體(caches )。快取記憶體通常儲存對應於在他處儲存 或稍早計算好了的原始資料之資料。爲了減少記憶體存取 潛時,一旦資料被儲存於快取記憶體中,未來使用係可藉 由存取經快取的複製而不是重新提取或重新計算原始資料 來予以做成。 由電腦系統所利用之快取記憶體的一種類型爲中央處 理單元(CPU)快取記憶體。由於CPU快取記憶體係較接 近於CPU (例如:係設置於CPU內側或接近CPU),所 φ 以讓CPU能夠以更快速地存取資訊,諸如:最近所使用 的指令及/或資料。因此,CPU快取記憶體之利用可減少 , 與存取設置在電腦系統之他處的主要記憶體相關聯之潛時 。在記憶體存取潛時方面的減少最終改善系統性能。但是 ► ,每當CPU快取記憶體被存取時,相對應的CPU可能進 入一較高的電力利用狀態,以提供快取記憶體存取支援功 能性,例如:維持CPU快取記憶體之相干性。 較高的電力利用可能會增加熱產生。過量的熱可能會 損壞電腦系統的組件。而且,較高電力利用可能會增加電 -4 - (2) 1320141 池消耗,例如:在移動式計算裝置中,其最終降低移動式 裝置在重新充電之前可被使用的時間量》額外的耗電可能 會額外導致必須使用可能會更重之更大的電池。更重的電 池降低移動式計算裝置之可攜性。 • 【發明內容及實施方式】 _ 在以下的說明中,許多特定細節被提出以便提供各種 ^ 實施例的徹底瞭解。但是,本發明之各種實施例可被實行 而無需該等特定細節。在其他情形中,眾所週知的方法、 程序、組件、與電路並未詳述,以便不混淆本發明之特定 實施例。 第〗圖例舉依據本發明實施例之計算系統100的方塊 圖。計算系統100可包括一或多個耦接至互連網路(或匯 流排)1〇4之中央處理單元(CPUs) 102或處理器。處理 器(102)可以是任何適合的處理器,諸如:通用處理器 φ 、網路處理器、等等(包括··精簡指令集電腦(RISC )或 複雜指令集電腦(CISC)處理器)。況且,處理器(102 . )可具有單核心或多核心設計。具有多核心設計之處理器 (102)可整合不同型式的處理器核心於同一個積體電路 (1C )晶粒上。而且,具有多核心設計之處理器102可被 實施爲對稱或非對稱的多處理器。 —晶片組1 0 6亦可耦接至互連網路1 〇 4。晶片組1 〇 6 可包括一記億體控制集線器(MCH ) 1 08 » MCH 1 08可包 括一耦接至記憶體1 1 2之記億體控制器1 1 〇。記憶體n 2 -5- (3) (3)1320141 可儲存由CPU 1 02、或者納入於計算系統1 〇〇之任何其他 裝置所執行的資料與指令序列。於本發明之一個實施例中 ’記憶體Π2可包括一或多個依電性儲存(或記憶體)裝 置,諸如:隨機存取記憶體(RAM )、動態RAM ( DRAM)、同步 DRAM ( SDRAM)、靜態 RAM ( SRAM )、等等。亦可利用諸如硬碟之非依電性記億體。額外的 裝置可被耦接至互連網路104,諸如:多重CPUs及/或多 個系統記憶體。 MCH 108亦可包括一耦接至圖形加速器1 16之圖形介 面114。於本發明之一個實施例中,圖形介面114係可經 由加速圖形埠(AGP)而被耦接至圖形加速器116。於本 發明之一個實施例中,顯示器(諸如:平面顯示器)可透 過例如訊號轉換器而被耦接至圖形介面114,訊號轉換器 將儲存於諸如視頻記憶體或系統記憶體之儲存裝置中的影 像之數位表示翻譯成由該顯示器所解譯及顯示的顯示訊號 。由該顯示裝置所產生的顯示訊號可在由顯示器所解譯及 顯示於該顯示裝置上之前通過各種控制裝置。 一集線器介面118可耦接MCH 108至輸入/輸出控制 集線器(ICH) 120。ICH 120可提供一介面至耦接至計算 系統1〇〇之輸入/輸出(I/O)裝置。ICH 120可透過一週 邊橋接器(或控制器)124,諸如:週邊組件互連(PCI )橋接器、通用串列匯流排(USB )控制器等等而被耦接 至匯流排122。橋接器124可提供CPU 102與週邊裝置之 間的資料路徑。可利用其他類型之形態。又,多個匯流排 -6- (4) ί'320141 可耦接至ICH 1 20,例如:透過多個橋接器或控制器。況 且,於本發明之各種實施例中,耦接至ICH 120之其他週 邊裝置可包括:整合式驅動電子電路(IDE)或小型電腦 系統介面(SCSI )硬碟機、USB埠、鍵盤、滑鼠、並列埠 、串列埠、軟碟機、數位輸出支援(例如:數位視頻介面 ' (DVI ))、等等。 - 匯流排122可耦接至聲頻裝置126、一或多個磁碟機 g 128、與一網路介面裝置130。其他裝置可耦接至匯流排 1 2 2。又,於本發明之一些實施例中,各種組件(諸如·· 網路介面裝置130)可耦接至MCH 108。除此之外,CPU 102與MCH 108可結合而形成單一晶片。此外,於本發明 之其他實施例中,圖形加速器116可被納入於MCH 108 中〇 除此之外,計算系統100可包括依電性及/或非依電 性記憶體(或儲存器)。舉例而言,非依電性記億體可包 φ 括下列之一或多者:唯讀記憶體(ROM )、可程式規劃 ROM ( PROM )、可拭除 PROM ( EPROM )、電氣 _ EPROM ( EEPROM )、磁碟機(例如:128 )、軟碟、小 型碟片ROM(CD-ROM)、數位影音光碟(DVD)、快閃 記憶體 '磁光碟、或適合用來儲存電子指令及/或資料之 其他類型的非依電性機器可讀取媒體。 第2圖例舉係依據本發明之一偃實施例而配置成點對 點(PtP )架構之計算系統200。特別是,第2圖顯示一系 統,其中,處理器、記憶體、與輸入/輸出裝置係藉由許 (5) Ι32Ό141 $點對點介面來予以互連。 第2圖之系統200亦可包括幾個處理器,爲了簡明起 見’僅顯示其中的兩個,即:處理器202與204。處理器 2〇2與204可各自包括一局部記憶體控制器集線器(MCH )206與208以與記憶體210與212相耦接。處理器202 與2〇4可以是任何適合的處理器,諸如:參照第1圖之處 理器102所挑論的那些內容。處理器202與204可分別使 φ 用PtP介面電路216與218而經由一點對點(ptP)介面 214來交換資料。處理器2〇2與204可使用點對點介面電 路226、228、230、與232而經由個別的PtP介面222與 224而各自與晶片組220交換資料。晶片組220亦可使用 PtP介面電路237且經由高性能圖形介面236而與高性能 圖形電路234交換資料。 本發明之至少一個實施例可設置於處理器202與204 之內。但是,本發明之其他實施例可存在於第2圖之系統 φ 200內的其他電路、邏輯單元、或裝置中。此外,本發明 之其他實施例可分佈遍及於第2圖所示的幾個電路、邏輯 單兀、或裝置。 晶片組220可使用PtP介面電路241而被耦接至匯流 排240。匯流排240可讓一或多個裝置與之耦接,諸如: 匯流排橋接器242及I/O裝置243。經由匯流排244,匯 流排橋接器242可耦接至其他裝置,諸如:鍵盤/滑鼠245 、通訊裝置246 (諸如:數據機、網路介面裝置、等等 )、聲頻I/O裝置247、及/或資料儲存裝置248。資料儲 (6) 1320141 存裝置248可儲存可以被處理器202及/或204所執行之 碼 2 4 9。 第3圖例舉計算系統3 00之一實施例。系統3 00可包 括一CPU 302。於一個實施例中,CPU 302可以是任何適 合的處理器,諸如:第1圖之處理器102或第2圖之202-• 204。CPU 302可經由互連網路3 05 (諸如:第1圖之互 - 連1〇4或第2圖之PtP介面2 22與22〇而被耦接至一晶 φ 片組3 〇4。於一個實施例中,晶片組3 04係與第1圖之晶 片組106或第2圖之220相同或類似。 CPU 3 02可包括一或多個處理器核心306 (諸如: 參考第1圖之處理器102或第2圖之202-204所討論者) 。CPU 302亦可包括一或多個快取記憶體308 (其可以 是共用於本發明之一個實施例中),諸如一階層1(L1) 快取記憶體、階層2 ( L2 )快取記憶體、階層3 ( L3 )快 取記憶體、等等,以儲存被系統3 00之一或多個組件所利 φ 用的指令及/或資料。CPU 3 02之各種組件可透過匯流排、 及/或記億體控制器或集線器(例如:第1圖之記億體控 制器110、第1圖之MCH 108、或第2圖之MCH 206-208 )而被直接耦接至快取記憶體3 08。又,於CPU 302內所 " 納入者可以是強調記憶體窺探功能性之操縱的一或多個組 件,如同將參照第4圖所進而論述者。舉例來說,處理器 監視邏輯3 1 0可被納入以監視由處理器核心3 06之記憶體 存取。CPU 3 02之各種組件可被設置於同一個積體電路晶 粒上。 -9 - (7) 1320141 如第3圖所例舉,晶片組3 04可包括一MCH 3 12 (諸 如:第1圖之MCH 108或第2圖之MCH 206-208),其 提供對記憶體3 1 4的存取。因此,處理器監視邏輯3 1 0可 監視由處理器核心3 06至記憶體3 1 4之記億體存取。晶片 組3〇4可另包括一ICH 316,以提供對一或多個I/O裝置 • 318(諸如:參考第1與2圖所論述者)的存取。ICH 316 . 可包括一橋接器,允許透過匯流排319而與各種I/O裝置 φ 318之通訊,諸如:第1圖之ICH 120或耦接至第2圖之 匯流排橋接器2G的PtP介面電路241。於一實施例中, I/O裝置3 18可以是能夠轉移資料往返於記憶體314之區 塊I/O裝置。 又,於晶片組3 04中所納入者可以是強調記憶體窺探 功能性之操縱的一或多個組件,如同將參照第4圖所進一 步論述者。舉例來說,I/O監視邏輯320可被納入以提供 頁窺探命令,其收回快取記憶體308之內的一或多個快取 φ 記憶體線路。I / 〇監視邏輯3 2 0可進一步致能處理器監視 邏輯310,例如:根據來自I/O裝置318之通訊量。因此 _ ’ I/O監視邏輯320可監視往返於I/O裝置318之通訊量 ,諸如:由I/O裝置318至記憶體314之記億體存取。於 一個實施例中’ I/O監視邏輯320可耦接於一記憶體控制 器(例如:第1圖之記憶體控制器110)與一週邊橋接器 (例如:第1圖之橋接器124 )之間。此外,I/O監視邏 輯320可以是在MCH 312之內。晶片組3 04之各種組件 可被設置於同一個積體電路晶粒上。舉例來說,I/O監視 -10- (8) 1320141 邏輯320與記憶體控制器(例如:第1圖之記憶 110)可被設置於同一個積體電路晶粒上。 第4圖例舉用以減少由處理器所實行的窺探 法4 00的實施例。通常,窺探存取係當主記憶體 3 14 )被存取時可被發出至處理器核心3 06,例如 - 記憶體相干性。於一個實施例中,窺探存取可以 • 於第3圖之I/O裝置318的通訊量。舉例來說, φ I/O裝置之控制器(諸如:USB控制器)可週期 記憶體314。由I/O裝置318之各個存取可引動 )窺探存取(例如:由處理器核心3 06 )以判定 的記憶體區域(例如:記憶體314之部分)是否 記憶體3 08之內,舉例而言,以維持快取記憶體 憶體314之相干性。 於一個實施例中,第3圖之系統300的各種 利用來實行參照第4圖所討論的操作。舉例而 φ 402-404與(選用式)410係可由I/O監視邏輯 行。階段406與408係可藉由處理器核心3 06來 。階段416係可藉由MCH 312及/或I/O裝置31 實施。階段412-414與418-420係可藉由處理器 3 1 0來予以實施。 參考第3與4圖兩者,I/O監視邏輯3 20可 一或多個區塊I/O裝置318之記憶體存取請求( I/O監視邏輯3 20可剖析所接收到的請求(402 ) 憶體(例如:於記憶體3 1 4中)之相對應的區域 體控制器 存取之方 (例如: :以維持 歸因於由 用於區塊 性地存取 (invoke 正被存取 係在快取 308與記 組件可被 言,階段 320所實 予以實施 8來予以 監視邏輯 接收來自 402 ) 〇 以判定記 。I/O 監 -11 - (9) 1320141 視邏輯320可發出頁窺探命令(404 ),其識別對應於由 區塊I/O裝置3 1 8之記億體存取的頁位址。舉例而言,頁 位址可識別記憶體3 1 4之內的一區域。於一個實施例中, I/O裝置3 1 8可存取記憶體之4K位元組或8K位元組的連 續區域。 - I/O監視邏輯320可致能處理器監視邏輯310 ( 406 . )。處理器核心306可接收頁窺探(4〇8 )(例如:產生 φ 於階段404 ),且收回一或多個快取記憶體線路(410 )( 例如:於快取記億體3 08中)。於階段41 2,可監視記億 體存取。舉例而言,I/O監視邏輯3 20可監視往返於I/O 裝置318之通訊量,例如:藉由監視於通訊介面(諸如: 第1圖之集線器介面118或第2圖之匯流排240 )上的事 務處理。又,在被致能之後( 406 ),處理器監視邏輯310 可監視由處理器核心306之記憶體存取(412)。舉例而 言,處理器監視邏輯310可監視企圖存取記憶體314之互 φ 連網路3 05上的事務處理。 於階段414,若處理器監視邏輯310判定由處理器核 心3 06之記憶體存取爲至階段404之頁位址,則處理器及 /或I/O監視邏輯(310與320)可被重設於階段416,例 如:藉由處理器監視邏輯310。因此’可停止記憶體存取 之監視(412 )。在階段416之後,方法400可繼續於階 段402。否則,若於階段4 1 4,處理器監視邏輯3 1 0判定 由處理器核心306之記憶體存取並非爲至階段4〇4之頁位 址,則方法400可繼續於階段418。 -12- (10) 1320141 於階段41 8,若I/O監視邏輯320判定由區塊I/O裝 置(318)之記憶體存取爲至階段4 04之頁位址,則記憶 體(314 ) 可被存取(420 ),例如:而沒有產生窺探請 求至處理器核心306。否則,方法400重新開始於階段 4 04以操縱區塊I/O裝置(3 18)之記憶體存取請求至記億 • 體(314)之新區域。即使第4圖例舉該階段414可在階 . 段418之前,階段414可被實施於階段418之後。又,於 φ —個實施例中,階段414與418可被非同步實施。 於一個實施例中,往返於I/O裝置318之資料可以比 更頻繁地被處理器核心306所存取之其他內容更不頻繁地 被載入於快取記憶體3 08中。因而,方法400可減少由處 理器(例如:處理器核心3 06 )所實施之窺探存取,其中 ,記憶體存取係由區塊I/O裝置通訊量所產生至已經從快 取記憶體3 08被收回之頁位址(404 )。如此之實施讓處 理器(例如:處理器核心3 06 )能夠避免留下較低的電力 φ 狀態以實施窺探存取。 舉例而言,遵照ACPI規格(先進架構與電力介面規 、 格,修訂版3.0,西元2004年9月)之實施可讓處理器( 例如:處理器核心3 06 )能夠減少花費在C2狀態的時間 ,C2狀態比C3狀態利用更多的電力。針對各個USB裝置 記憶體存取(其可能發生於每1毫秒,不論記億體存取是 否需要窺探存取),處理器(例如:處理器核心306)可 進入C2狀態以實施窺探存取。在此所論述的實施例(例 如:參照第3與4圖)可限制不必要的窺探存取產生,例 -13- (11) 1320141 如:當區塊I/O裝置存取先前所收回的頁位址( 404,410 ) 。因此,單一窺探存取可被產生( 404 )且相對應之快取 記憶體線路被收回(4 1 0 )以供記憶體(3 1 4 )之共同利用 的區域。降低的電力消耗可造成移動式計算裝置之較長的 電池壽命及/或較不笨重的電池。 • 於各種實施例中,例如:參照第1至4圖,本文所論 . 述的一或多個操作可被實施爲硬體(例如:邏輯電路)、 φ 軟體、韌體、或其組合,其可被提供作爲一電腦程式產品 ,例如:包括具有被使用來程式規劃電腦以實施在此所討 論之程序的指令被儲存於其上的機器可讀取或電腦可讀取 媒體。該機器可讀取媒體可包括任何適合的儲存裝置,諸 如:參照第1至3圖所討論的那些。 除此之外,如此之電腦可讀取媒體可被下載做爲一電 腦程式產品,其中,程式係可經由通訊鏈結(例如:數據 機或網路連接)而自遠端電腦(例如:伺服器)轉移至請 φ 求電腦(例如:客戶端),藉由具體化於載波或其他傳播 媒體中的資料訊號。因此,在此,載波將被視爲包含機器 可讀取媒體。 參考此說明書,“ 一個實施例”或“一實施例”係意 指:與可被納入於至少一實施之實施例相關連所述的特點 、結構或特徵。於說明書的各種位置之片語"於一個實施 例中”的出現係可或不可均參考同一個實施例。 又,於說明書與申請專利範圍中,可使用術語“耦接 ”與“連接”以及其衍生字。於一些實施例中,“連接” -14- (12) 1320141 可被使用來表示二或多個元件係彼此直接實際或電氣接觸 。“耦接”可意指二或多個元件係處於直接實際或電氣接 觸。但是’ ‘‘耦接”亦可意指:二或多個元件爲彼此可非 直接接觸,但仍可彼此合作或互動。 因此’雖然本發明之實施例係已經以特定於結構特徵 及/或方法邏輯動作之語言來做描述,要瞭解的是:所主 . 張之標的可不受限於已述的特定特徵或動作。而是,特定 φ 特徵或動作被揭示作爲實施所主張之標的的樣本形式。 【圖式簡單說明】 參照伴隨的圖式而提出詳細說明。於圖式中,參考符 號之最左數字指示該參考符號首先出現於其中之圖式。不 同圖式之相同參考符號的使用指示類似或相同的項目。 第1至3圖例舉依據本發明一些實施例之計算系統的 方塊圖。 φ 第4圖例舉用以減少由處理器所實施的窺探存取之方 法的實施例。 【主要元件符號說明】 1 0 0 :計算系統 102:中央處理單元(CPUs)(處理器) 104 :互連網路(或匯流排) 1 0 6 :晶片組 108 :記憶體控制集線器(MCH ) -15- (13)1320141 1 1 〇 :記憶體控制器 Π 2 :記憶體 1 1 4 :圖形介面 1 1 6 :圖形加速器 1 1 8 :集線器介面 120:輸入/輸出控制集線器(ICH) 122 :匯流排
124 :週邊橋接器(或控制器) 126 :聲頻裝置 1 2 8 :磁碟機 130 :網路介面裝置 200 :計算系統 202 、 204 :處理器 2 06、2 08 :記憶體控制器集線器(MCH ) 2 1 0、2 1 2 :記憶體
214、222、224、23 6 :點對點(PtP)介面 2 1 6、2 1 8 :點對點(PtP )介面電路 2 2 0 :晶片組 226、228、230、232:點對點(PtP)介面電路 234:高性能圖形電路 236:高性能圖形介面 2 3 7、241 :點對點(PtP )介面電路 2 3 8、2 3 9 :處理器核心 240 、 244 :匯流排 -16- (14) (14)1320141 242·匯流排橋接器 243 : I/O 裝置 245 :鍵盤/滑鼠 246 :通訊裝置 247 :聲頻I/O裝置 248 :資料儲存裝置 249 :碼 3 00 :計算系統
302 : CPU 3 0 4 :晶片組 3 05 :互連網路 3 0 6 :處理器核心 3 08 :快取記憶體 3 1 0 :處理器監視邏輯
3 12: MCH 3 1 4 :記憶體
3 16: ICH 3 1 8 : I/O 裝置 3 1 9 :匯流排 3 20 : I/O監視邏輯 -17-
Claims (1)
1320141 年月曰修正本 十、申請專利範圍 附件< : 第95 1 233 76號專利申請案 中文申請專利範圍替換本 民國98年1〇月和日修正 1·—種用以減少窺探存取之設備,包含: 一處理器核心,用以: 接收一頁窺探命令(snoop command),其識別對應於 由輸入/輸出(I/O )裝置之記憶體存取請求的頁位址;及 收回匹配該頁位址之一或多個快取記憶體線路(cache line);以及 -處理器監視邏輯,監視由該處理器核心之記億體存 取’以判定該處理器核心記憶體存取是否係在該頁位址之 內。 2·如申請專利範圍第1項之設備,其中,該一或多個 快取記憶體線路係在耦接至該處理器核心之快取記憶體中 〇 3. 如申請專利範圍第2項之設備,其中,該快取記憶 體係在和該處理器核心相同的積體電路晶粒上。 4. 如申請專利範圍第1項之設備,其中,該頁位址識 別經由一晶片組而耦接至該處理器核心之記憶體的區域。 5 _如申請專利範圍第4項之設備,其中,該晶片組包 含一 I/O監視邏輯以監視由該I/O裝置之記憶體吞取。 6.如申請專利範圍第5項之設備,其中,該晶片組包 1320141 含一記憶體控制器,且該I/O監視邏輯係耦接在該I/O裝 置與該記憶體控制器之間。 7. 如申請專利範圍第6項之設備,其中,該I/O監視 邏輯係在和該記憶體控制器相同的積體電路晶粒上。 8. 如申請專利範圍第1項之設備,另包含複數個處理 器核心。 9. 如申請專利範圍第8項之設備,其中,該複數個處 理器核心係在單一積體電路晶粒上。 1〇·—種用以減少由一電子設備所實施之窺探存取的 方法,包含: 接收頁窺探命令,其識別對應於由輸入/輸出(I/O ) 裝置之記憶體存取請求的頁位址; 收回匹配該頁位址之一或多個快取記憶體線路; 監視由處理器核心之記憶體存取,以判定該處理器核 心記憶體存取是否係在該頁位址之內》 11. 如申請專利範圍第10項之方法,另包含如果該處 理器核心記憶體存取係在該頁位址之內,則停止該記憶體 存取之監視。 12. 如申請專利範圍第10項之方法,另包含如果I/O 記憶體存取係在該頁位址之內,則存取耦接至該處理器核 心之記憶體。 13. 如申請專利範圍第12項之方法,其中,該記憶體 被存取而並未產生窺探存取。 14. 如申請專利範圍第10項之方法,另包含監視由該 -2- 1320141 I/O裝置之記億體存取。 15. 如申請專利範圍第10項之方法’其中’該 核心記憶體存取對耦接至該處理器核心之記憶體實 或寫入操作。 16. 如申請專利範圍第1〇項之方法’另包含接 該I/O裝置之記憶體存取請求’其中’該記憶體存 識別於耦接至該處理器核心之記憶體的區域。 17. 如申請專利範圍第10項之方法,另包含在 記憶體存取請求之後,致能一處理器監視邏輯監視 理器核心之記憶體存取。 . / 18. —種用以減少窺探存取之系統,包含: 一依電性記憶體,以儲存資料; 一處理器核心,用以: 接收頁窺探命令,其識別對應於由輸入/輸出 裝置至該記憶體之存取請求的頁位址;及 收回匹配該頁位址之一或多個快取記憶體線路 一處理器監視邏輯,監視由該處理器核心至該 之存取’以判定該處理器核心記憶體存取是否係在 址之內。 19. 如申請專利範圍第18項之系統,另包含耦 記憶體與該處理器核心之間的晶片組,其中,該晶 含一 I/O監視邏輯,以監視由該I/O裝置之記憶體若 2 0.如申請專利範圍第18項之系統,其中,該 記憶體爲一RAM、DRAM、SDRAM、或 SRAM。 處理器 施讀取 收來自 取請求 接收該 由該處 (I/O ) :以及 記億體 該頁位 接在該 片組包 :取。 依電性
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US11/169,854 US20070005907A1 (en) | 2005-06-29 | 2005-06-29 | Reduction of snoop accesses |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW200728985A TW200728985A (en) | 2007-08-01 |
| TWI320141B true TWI320141B (en) | 2010-02-01 |
Family
ID=37067630
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW095123376A TWI320141B (en) | 2005-06-29 | 2006-06-28 | Apparatus and system for reducing snoop accesses and method for reductiing snoop accesses performed by an electronic apparatus |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US20070005907A1 (zh) |
| CN (1) | CN101213524B (zh) |
| DE (1) | DE112006001215T5 (zh) |
| TW (1) | TWI320141B (zh) |
| WO (1) | WO2007002901A1 (zh) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8527709B2 (en) | 2007-07-20 | 2013-09-03 | Intel Corporation | Technique for preserving cached information during a low power mode |
| US9436972B2 (en) | 2014-03-27 | 2016-09-06 | Intel Corporation | System coherency in a distributed graphics processor hierarchy |
| US10102129B2 (en) * | 2015-12-21 | 2018-10-16 | Intel Corporation | Minimizing snoop traffic locally and across cores on a chip multi-core fabric |
| US10545881B2 (en) * | 2017-07-25 | 2020-01-28 | International Business Machines Corporation | Memory page eviction using a neural network |
| KR102411920B1 (ko) | 2017-11-08 | 2022-06-22 | 삼성전자주식회사 | 전자 장치 및 그 제어 방법 |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5325503A (en) * | 1992-02-21 | 1994-06-28 | Compaq Computer Corporation | Cache memory system which snoops an operation to a first location in a cache line and does not snoop further operations to locations in the same line |
| AU5854796A (en) * | 1995-05-10 | 1996-11-29 | 3Do Company, The | Method and apparatus for managing snoop requests using snoop advisory cells |
| US6594734B1 (en) * | 1999-12-20 | 2003-07-15 | Intel Corporation | Method and apparatus for self modifying code detection using a translation lookaside buffer |
| US6795896B1 (en) * | 2000-09-29 | 2004-09-21 | Intel Corporation | Methods and apparatuses for reducing leakage power consumption in a processor |
| US7464227B2 (en) * | 2002-12-10 | 2008-12-09 | Intel Corporation | Method and apparatus for supporting opportunistic sharing in coherent multiprocessors |
| US7404047B2 (en) * | 2003-05-27 | 2008-07-22 | Intel Corporation | Method and apparatus to improve multi-CPU system performance for accesses to memory |
| US7844801B2 (en) * | 2003-07-31 | 2010-11-30 | Intel Corporation | Method and apparatus for affinity-guided speculative helper threads in chip multiprocessors |
| US7546418B2 (en) * | 2003-08-20 | 2009-06-09 | Dell Products L.P. | System and method for managing power consumption and data integrity in a computer system |
| US8332592B2 (en) * | 2004-10-08 | 2012-12-11 | International Business Machines Corporation | Graphics processor with snoop filter |
| US7523327B2 (en) * | 2005-03-05 | 2009-04-21 | Intel Corporation | System and method of coherent data transfer during processor idle states |
-
2005
- 2005-06-29 US US11/169,854 patent/US20070005907A1/en not_active Abandoned
-
2006
- 2006-06-28 TW TW095123376A patent/TWI320141B/zh not_active IP Right Cessation
- 2006-06-29 WO PCT/US2006/025621 patent/WO2007002901A1/en not_active Ceased
- 2006-06-29 CN CN2006800237913A patent/CN101213524B/zh not_active Expired - Fee Related
- 2006-06-29 DE DE112006001215T patent/DE112006001215T5/de not_active Withdrawn
Also Published As
| Publication number | Publication date |
|---|---|
| DE112006001215T5 (de) | 2008-04-17 |
| WO2007002901A1 (en) | 2007-01-04 |
| US20070005907A1 (en) | 2007-01-04 |
| CN101213524A (zh) | 2008-07-02 |
| TW200728985A (en) | 2007-08-01 |
| CN101213524B (zh) | 2010-06-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20250053522A1 (en) | Computer Memory Expansion Device and Method of Operation | |
| TWI643125B (zh) | 多處理器系統及快取共用方法 | |
| US6904499B2 (en) | Controlling cache memory in external chipset using processor | |
| TWI360046B (en) | Apparatus and method for preserving cached informa | |
| JP3289661B2 (ja) | キャッシュメモリシステム | |
| US6463510B1 (en) | Apparatus for identifying memory requests originating on remote I/O devices as noncacheable | |
| US6470429B1 (en) | System for identifying memory requests as noncacheable or reduce cache coherence directory lookups and bus snoops | |
| US7475190B2 (en) | Direct access of cache lock set data without backing memory | |
| CN102646446B (zh) | 硬件动态高速缓存电源管理 | |
| US20030046495A1 (en) | Streamlined cache coherency protocol system and method for a multiple processor single chip device | |
| CN103348333B (zh) | 用于分级高速缓存设计中的高速缓存之间的高效通信的方法和装置 | |
| TW417047B (en) | Method for increasing efficiency in a multi-processor system and multi-processor system with increased efficiency | |
| KR101743409B1 (ko) | 메모리 관리 | |
| CN107430554A (zh) | 通过使用数据的可压缩性作为高速缓存插入的标准来提高存储高速缓存性能 | |
| US8359433B2 (en) | Method and system of handling non-aligned memory accesses | |
| BR102013022935A2 (pt) | Dispositivo de memória flash serial de múltiplos fluxos de dados | |
| JP2003281079A5 (zh) | ||
| US6754779B1 (en) | SDRAM read prefetch from multiple master devices | |
| TWI320141B (en) | Apparatus and system for reducing snoop accesses and method for reductiing snoop accesses performed by an electronic apparatus | |
| US6601145B2 (en) | Multiprocessor system snoop scheduling mechanism for limited bandwidth snoopers that uses dynamic hardware/software controls | |
| US7472227B2 (en) | Invalidating multiple address cache entries | |
| CN210155650U (zh) | 一种固态硬盘控制器 | |
| JP6209573B2 (ja) | 情報処理装置および情報処理方法 | |
| US12417179B2 (en) | Adaptive system probe action to minimize input/output dirty data transfers | |
| JPH0962580A (ja) | マルチプロセッサ装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | Annulment or lapse of patent due to non-payment of fees |