TW219986B - - Google Patents
Download PDFInfo
- Publication number
- TW219986B TW219986B TW080107803A TW80107803A TW219986B TW 219986 B TW219986 B TW 219986B TW 080107803 A TW080107803 A TW 080107803A TW 80107803 A TW80107803 A TW 80107803A TW 219986 B TW219986 B TW 219986B
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- page
- speed
- address
- pages
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
- G06F12/1054—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache the data cache being concurrently physically addressed
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/653—Page colouring
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
^1SS3G A6 B6 五、發明説明() 發明背景 本發明係關於電腦之搡作,特別是關於一棰藉著在一使 用虛構記憶體之霄腦中使用直接映射式高速緩衝儲存器來 模擬一姐關聯式高速緩衝儲存器之功能的方法。 由於處理器速度的提高,在罨腦糸統中使用快速的高速 媛衝儲存器記憶體就成為非常重要。例如說,在本發明人 於1990年j月29日申請之第547,630,號美画專利系中所 指示之形式的高速RISC處理器可構造成M5奄微秒之中央 處理器遇期時間(Cycle TUe)操作·且可在每一週期時間 内執行--指令(因所施行之RISC»念而得)。如果主記憧81 的遇期時間為300奄微秒*刖由現在一般使用之高速媛街 儲存器之打擊率(Cache Hit Rate)可推算出中央處理器將 會花費它的時間的95%來等待記憶體。為使記憧體的性能 更能配合中央處理器*高速媛衝儲存器記憶體被設計成有 階曆性(Hierarchical) *設有主要·次要,甚至在有些情 形下,有第三等级的高速緩衝儲存器。當然高速緩街儲存 器記憧體之速度在合乎經濟條件的情形下會儘可能提高。 但是對這些高速之中央處理器而言*高速嫒銜雔存器之打 擊率亦須提高,以逹成可接受之性能表現。 高速媛衝儲存器可構造成直接映射的结構或是N管道Η 聯式(N-Way Associative)直接映射式高速緩衝器只准許 —給定數據項次讎放在高速緩衢《存器內的一僩位置内* 所Μ打擊率較低。但直接映射式高速媛衡儲存器的優點是 其線路簡軍且速度快。Ν管道闞聯式高速緩街雔存器可准 f請先閱讀背面之注意事項再填窠本百) •Λ· *綠. 甲 4(210X297 公潘) -3- ^^0386_B6 五、發明説明() 許一給定數據項次儲存於高速緩衡儲存器内N届不同位置 中任一個上,這造成較同樣大小之直接映射式高速緩衝儲 存器較高的打擊率。N管道闞賺式高速緩街儲存器之較高 的打擊率是因增加資料在高速緩衡器内置放之彈性而得的 。 由於其速度及構造之簡單,吾人希望能將直接映射式 高速媛衡儲存器懕用於高性能轚腦系統上,但仍能達到N 管道關聯_^:高速媛衝儲存器之較高的高速緩衝儲存器打擊 率0 發明概述 根搛本發明之一具體實例,一具有直接映射式高速媛衡 儲存器之電腦糸統係Μ —種方式搡作,Μ棋擬一姐闞瞄高 速媛衢儲存器之功能。此棰方式在一個使用虚構記憶體形 式作業糸統的中央處理器上是有效的,在此棰作業糸統中 ,數據資料是以頁面格式處理的。而高速埋衡儲存器則是 纆由實際位址取用的。此方法包括偵澜出高速緩衝餚存器 之疏失,然後將主記愤《内包含被偵测到之高速緩衡儲存 器疏失位址的頁面重新映射過,而使得引起«滾現象之記 憶體之指檷能共同存在於高速媛衝儲存器內。二個位於不 同頁面但映射至高速緩衡儲存器内同一位置的記憧體位置 *不會同時存駐於直接映射式高速嫒衢髄存器内;在中央 處理器上所執行之工作在交替地參閲使用這些位址時會造 成翻滾現象。但是如果這些位址之一在主記憶Μ內的位置 被改變後,擁有這些位址的數據項次可同時存在於高速緩 衝儲存器內,而由於翻滾現象將不再存在之故•所Μ其性 ......................................................it..............................ir..............................Sf t請先閏讀背面之注意事項再填寫本页) 甲 4(210X 297公沒) -4- ^^3388 A6 _B6 五、發明説明() 能可顯著地改進。對一個使用虛構記憶體作系統的中央處 理器而言,一頁面的數據或指令可轉移至一不同的實際頁 面,但仍具有相同的虛構位址。這可藉著修改頁面映射表 以反應出該頁面的新實際位置,並將數據自舊頁面抄錄至 新頁面而完成。翻滾現象可藉著閂鎖住高速嫒衝儲存器疏 失之位址•並不斷定期地自該鎖存器上取樣,再將包含在 取樣時所」导位址之頁面重新映射而偵测到,並可動態地修 正之。直接映射式高速緩衝儲存器必須要有足夠大的容董 ,以容納二至三個頁面的資料。對一實質上具有超過四頁 面之高速緩衢儲存器而言,本發明之模擬技巧可造成較一 般將之構築於硬體内之省錢方式為高的闞聯性。 附圖之概述 被考慮成本發明特激的新類特點係說明於所附之申請專 利範圈内。但是本發明自身及其儍點及其它特點可藉著參 閲阐後之特定具體買例詳佃說明•並配合所附圖示而可充 份瞭解。在附圈中: 圓1係一可應用本發明一具《實例之特點的電腦系统的 方塊圔形式之霣路臞。 颺2係一可應用於鼷1中系统内之慮構記憶體棋式的記 憧體映射之麵示。 臞3係一根據本發明應用於臞1中系统之高速緩衝儲存 器記億體的霣路匾。 圈4係當根據本發明一具體實例施行頁面鏞號換作業時 *主記憶體圔一部份的圈示。 {請先閱讀背面之注意事項再填寫本頁) •訂. .線. 甲 4(210X 297 父省) 五、發明説明() A6 B6 圖5a和5b是繪示於高速級衡儲存器位址對時間圖形上之 高速媛衝儲存器疏失圔示*其中一系統係懕用本發明而另 一系统則非。 特定具體實例詳细說明 參閱圖1*其中顯示一霣腦糸統,其可懕用本發明之高 速媛衡儲存器關聯性方法。一中央處理器10經一高速緩衡 儲存器控_^!1器12及一中央處理器匯流排13而聯结至系統匯 流排11。一主記憶體14埋接至系统匯流排11,並可經之而 被取用。一离速緩衝雜存器記憶體15«接至高速緩衝儲存 器控制器12,因而可直接由中央處理器匯流排13取用。中 央處理器10施行一虛構記憶體管理系統(Virtual Memory Management System)·如UNIX或 VAX/NMS 作業系统所提供 者一般|所Μ數據頁面可在由主記憶體14提供之實際記憶 體和磁碟16形式之次要儲存裝置間交換。VAX结構的描述 可見之於 Levy和 Eckhouse合著之"Coaputer Programming a n d A r c h i t e c t u r e : T h e V A X ” 第二版一軎,是 D i g i t a 1 Press公司於1989年發行。其係引用於此供參考。中央 處理器10可Μ是Levy及共同著作人著作之教科書内所揭示 之V A X形式者*或是授與S a n d 〇 r , U h 1 e r及B r 〇 w η而後讓渡與 本發明受讓人 D ί g i t a 1 E ci u i ρ e n t C o r ρ o r a t i ο η 之第 5, 006 * 980號美國專利者,或者最好是本發明人於1990年6 月 2 9 日申請,亦讓渡予 D i g i t a i E q u ί ρ e n t C 〇 r ρ 〇 r a t i ο η 之第547,6 30¾美困專利申講案内所揭示之較先進64位元 RISC形式者。當然中央處理器10亦可為許多可執行虚構記 -6 - ......................................................5t..............................打...............................綠 ί請先《讀背面之注意事項再填寫本页) 甲 4(210Χ 297乂 沒) 218086 A6 B6 五'發明說明() (請先閱讀背面之注意事項再填寫本頁) 憶體管理系統之它棰構造之任一者。 中央處理器10可藉著先形成一個代表匾2内所見由電腦 構造之規格或是作業糸统所允許使用之那部份所定義之整 個位址範圃17内之位址的虛構位址,而後將該虛構位址在 —由主記憶體14之大小所限制之位址圈18上轉換成一實際 位址。此種轉換是以頁面為單位為之*所K一涸位在虚構 記憶體圖17上之頁面19的虛構頁面位址會轉換成一個位在 霣際記憶體圖18上之一頁面的賁際位址19’ 。在記憶體維 持著一頁面表(Page Table),以提供虚構位址與賁際位址 間的轉換,且通常會有麵1中所示之轉換媛衡器 (Translation Buffer)20被包含在中央處理器内,K保存 最後使用之轉換,所以可以不須要在使用數據指檷之前, 先建立一表指欏以得知其間之轉換。在一給定時間時,只 有被現在正在執行之工作(及作業系統本身)所使用之頁面 可能會存在於實際記憶«内;而在頁面表上轉換成位址 19'亦僅有那些實際存在的頁面。當中央處理器1〇欲參閱 之頁面被發現不存在於實際記憶*14内時,頁面錯誤 (Page Fault)就會被執行,K啟動交換作業(Swap Operation),使一賁際記憶體14之頁面與存在於磁碟記憶 體16内之所箱頁面交換。此種交換作業是在作業系統的控 制下進行的。 圖1中之中央處理器10亦可具有内藏式高速嫒衝儲存器 記憧體,包括一指令高速級衝儲存器或工高速媛®儲存器 21,及一數據高緩衢儲存器或D高速級衝髄存器22。此皆 中 4(210X297X^1 A6 B6 五、發明説明()
21998B 描述於前面所提及之第547,630,號專利申請菜内,但均 與本發明之直接映射式高速緩衡器15的作業無闥。因此圔 1中電腦系统所用之記憶體係有等级的,最快速的是内藏 式高速鑀衝儲存器21和22*次快速的是高速緩衝儲存器 15·然後是主記憶體14,最後則是磁碟16内之交換作桊所 使用的空間。最快速度和最慢速度間的差異相差好幾個級 數。内藏式高速緩衝儲存器和高速嫒衝儲存器15可在幾倨 中央處理器週期内被取用•而主記憶雅14可能要在十個至 百個,甚至更多個中央處理器週期才可取用*而將一頁面 交換至磁碟16上需要幾百或幾千個中央處理器遇期方可。 因此系統的性能極依賴於將正在使用之指令及数據存放於 高速緩衝儲存器内。位於實際記憶體14(映射至圈2中之 18)内之數據在某一時間時有一部份是位於高速嫒衝儲存 器15内,而位於高速媛衝儲存器15内之數據有一部份是位 於内藏式高速媛衝儲存器21和22内。 高速媛衝儲存器15是直接映射式*其構造可見於圓3 。 數據則是儲存於記憧«晶片的陣列中•其如钃示為具有數 行24之陣列23,每一行則有許多方塊25。每一方塊25包含 例如說64位元的數據或8個四字元(Quadword)的數據。一 個位在用Μ取用高速媛衡餹存器15(或主記憧《14)之中央 處理器匯流排13上的實際位址26包含一個可在一方塊25内 選取位元(或字元)的低階字段(Low-order Field)27* — 儷可在一行24内選取方塊25的字段28·—俚可選取行的字 段29* Μ及一槱記字段(Tag Field)30。 字段28可應用於 -8 - ......................................................5t..............................iT........................-·…·.终 (請先閑讀背面之注意事項再填窝本頁) 甲 4(210X2971'沒) A6 B6
五*發明說明() 219986 —解碼器31上》Μ在行内選取方塊,而字段29則可應用於 一行解碼器32上,Κ選取將输出至解碼器31上的行。位址 在字段27内的低階位元可應用一解碼器33,Κ在一方塊内 選取位元或字元*而將之聯结至中央處理器匯流排13内之 数據匯流排上。在高速嫒衝儲存器控制器12内•一檷記儲 存装置34亩保存許多有Μ於數字之檷記。(已完成比較); 此額外之步驟在使作業速度減嫒上是有其必要的。 舉一例涵下,假設在圖1之電腦系統上執行之虛構記憧 體系統之頁面大小是U位元•則低階位元位址(二進位)在 每10位元位址值後重覆。同時,假設高速緩衝儲存器15的 規格是2Κ位元•則該高速緩衝儲存器可映射圖2内*際記 憶體圖18上之一部份缌數為2Κ位元的資料*其可包含在任 何給定時間内來自不同頁面的多個方塊•但缌合為二頁面 的資料。一個具有實際位址是由邊界上Μ<1〇:〇>位元•二 進位位址之零開始的數據項次,將總是映射至高速縵街儲 存器15之第一個方塊内。所MS際位址0000\2048\4096等 將映射至高速緩衝儲存器内同一位置上。譬如說•字段 28和29將同樣地包含位址26之位元<10: 4>。因此一俚交替 地取用實際位址〇〇〇〇及2048之工作總會在_3之直接映射 式高速緩衝儲存器15上產生一高速媛衡儲存器疏失。相反 的。在一個二管道W聯式高速嫒衡儲存器(或具更高《明 性之一者)中,此二數據項次可同時保存於高速緩衝健存 器内,所以可藉著重覆交替取用此二實際位址而產生高速 緩衝儲存器打擊。二俚或多個位置不斯地疏失,並從一高 -9- 219336 A6 B6 五、發明说明() 速緩衝儲存器互相置換就稱為”拥滾”現象。 根據本發明*如果高速緩衝儲存器夠大而可在於中央處 理器10上執行之虛構記憶體管理環境内保存Η個頁面•則 該等頁面可重新映射過以造成Ν管道闞聯性的效果。參閲 圖4 ,在jfc例中高速緩衝儲存器15可保存二個1Κ位元之頁 面,所K作業系統可重新映射虛構頁面至記憶體14 (記憶 鮮!圖18)应之實際頁面,以產生所欲之棋擬二管道Μ聯性 之效果。虛構位址0000及2048是在不同的虛構位址頁面上 ,且可映射至二個會映射至高速緩衝儲存器15内同一位置 之實際頁面(例如頁面編號301及303上)。在該種映射的情 形下,當重覆取用虛構位址〇〇〇〇及2048時,直接映射式高 速媛衝器15會產生翻滾現象。不同的虛構至實際映射(如 指定用頁面編號301和302,而非301和303)可使二個頁面同 時存在於2Κ位元高速緩衝儲存器15内,而此高速緩街儲存 器將產生一個二管道W聯式高速緩衡儲存器之功效。在頁 面編號303上的數據會被寫入實際記憶體14上之頁面编號 302內•先前皆映射至高速缓衝儲存器15内同一位置的一 對方塊現在會映射至不同的方塊位置上。代表此二項次之 實際位址的那组位址位元現在將在字段28和29上有一位元 是不相同的。 作業糸統抄錄資料並重新映射那些指定給虚構頁面用之 頁面編號是件簡單的工作(此功能在UNIX及VAX/V MS糸统已 存在,係用Μ重新映射不良記憶體方塊,即有著软錯誤 (Soft Error)或類似狀況者)。但首先須先找出會產生詡 (請先《讀背面之注意事項再填寫本頁) _災· 打_ •線. ___-10- 甲 4 (210X297 公潘) 219336 A6 B6 五、發明説明() 滾現象之数據項次。此等翻滾數據項次的存在自然是依所 用之數據而定,亦阐其所應用之软體而定,所Μ在通算之 前預測此種現象何時會發生實際是不太可能的;而软髁之 另一情形是詡滾情形可能會發生在程式上不同時間及位置 處。所用之钦體必須先測試,方可知是否有此現象存在, 及每一狀況發生之位置。一棰在埋算中間偵测Η滾狀況的 方法是(記憧體上或豳3中之暫存器39上)閂鎖住會產生 高速緩衝儲存器疏失之諸位址的一部份(如六十四者中之 一個,係由一個六位元疏失計數器40所控制),然後再拜 一定時中斷常式重覆地讀取此鎖存器39。基於此種疏失位 址資料流(StreaB)之取樣作業,本文所用之方法可選擇性 地重新映射頁面編號(如圖4所示),Μ減少詡滾現象。而只 取樣疏失位址資料流之一部份的目的是為防止定時中斷常 式發現定時中斷常式自身之位址總是存在於疏失位址鎖存 器39上。疏失位址鎖存器39及計數器40可Μ設計成高速級 衝儲存器控制器12之一部份*或是中央處理器10的一部份 ,也可以只是_结於中央處理器匯流排13上的獮立硬體。 一種可能的重新映射程序是每秒在疏失鎖存器39上選取 100至1000個樣本,並將每一取樣之頁面重新映射至圖4 中所示之不同實際記憧體位置(不同之頁面上)。遘用新頁 面編號可能僅是減少現用之頁面之編號,和增加被置換頁 面之«號。另一種方式是使用實際記憶艚中由作業系統追 蹤之的”未使用頁面(Unallocated Pages)”,亦即將頁面移 ......................................................5t..............................ir..............................α ί請先聞讀背面之注意事項再填寫本頁) 甲 4(210X2977 沒) -11- 219986 A6 B6 五、發明説明() 至一涸未使用的頁面編號上f所Μ就不會有須要交換的被 置換頁面。在新編號指定後,此方法會須要移動一個或二 個頁面至實際記憶體14内之新位置上。正在拥滾的位置會 非常可能在取樣並移動後停止翻滾。而翻滾的頁面(至少 在幾次這樣的移動後)極可能成為相當於硬體Ν管道鼷聯式 高速緩衝儲存器(其中Ν是直接映射高速緩衝儲存器15所可 保存之頁f数量)之格式的格式,且Η滾現象將會減少。 為示範使用本發明方法之效果,在圖5a中繪出未使用本 方法之高速嫒衝儲存器疏失之圈形。此圖形在圈中的座檷 自上而下是時間,自左而右是高速級衝儲存器記憶體位址 ;每一記號代表一個高速緩衝儲存器疏失,所以記號之密 度可用Μ推論翻滾之程度。而最好的情形是無任何記號。 在此例中,一應用程式被執行*顯示出疏失追尋著一儸似 乎會將高速嫒衝儲存器充滿至1個頁面之水準的横式•然 後跌回零,其後再次追尋同樣的横式。高速嫒衝儲存器雖 有第二偁頁面,但在此追尋過程中似乎未被使用。自画 5a中可看見其性能並未《時間而改菩;最開始之棋式似乎 是無止盡地重覆。在圔5b中,不同於此,雖然高速緩衝館 存器之大小是一樣,但是使用本發明之方法。在此,圈形 頂端之第一個模式是相同於匾5a中者,而第二個模就開始 使用高速媛衝儲存器之第二頁面。在程序IB績執行的過程 中,疏失的數置(記號密度)逐漸地減少。直到画形之底部 ’其密度已是非常的少。此圔形之時間自上至下約二秒。 使用本發明之特激是程式的執行會随時間改變;而如果位 -12- ......................................................5t..............................ίτ..............................St (請先《磺背面之注意事項再填寫本頁) 甲 4(210X297 2¾) A6 B6 五、發明説明() 址使用之模式會使詡滾現象因上述討論之情況而發生,則 其性能將可改菩。但在某些程式中,位址之使用是更為皤 楗(Random),所圖5a和5b中所示之情形將不會發生。一 個可產生完全隨機位址之實驗顯示出使用本發明之方法一 點效果也沒有,且因偵測到隨機之詡滾現象後須移動頁面 ,所Μ事實上性能反而會稍受影礬。但是由於環路 (Loop)特,之故,大部份的程式均具有非常非隨機之位址 使用模式*所Μ在使用本發明時,大部份程式的性能都會 «時間而改菩。 本發明方法所提供之改良作業方式使之可使用快速而構 造簡單之直接映射式高速媛衢儲存器記憶體•而得到嫌乎 相當於較慢而複雜之Ν管道闞聯式高速嫒衝儲存器硬雅所 具有之高速媛衡儲存器打擊功能。但是由於沒有闞聯式高 速緩衝儲存器姐本身所具有之硬體遲滯現象(Hardware Delay),就速度之觀點而言,本發明方法之整體性能較使 用一姐關聯式高速媛衝儲存器為佳。 雖然本發明已》著特定之具體實例而描述過,但此描述 並非做為限制之用。前文所揭示之具體實例的各種修改* Μ及本發明之具體實例,對热知此技藝的人而言·在參閲 前文之描述後,都將是顯而易見的。所以在所述之申請專 利範圍將包含任何羼於本發明真實範《的修改及簧例。 ί請先閗"背面之注意事項再填寫本頁) •計. .綠. 甲 4(210X2971'層) -13-
Claims (1)
- A7 B7 C7 D7 經濟部中央標準扃印來 〜、申請專利範面 1 一棰利用横擬高速媛衝暫存器之闞聪性Μ搡作一電腦系 統的方法,包含下列步驟: (a) 在一主記憶體上儲存數頁面供一個在中央處理器上 執行之工作所使用的數據; (b) .將主記懞體内該數頁面數捶的一部份儲放於一直接 映射式高速緩銜儲存器内; (c) Ji執行該工作時,在中央處理器內產生虚構位址; (d) 將該虚構位址轉換成實際位址,Μ取用該高速媛衝 儲存器及主記憶體; (e) 指定給每一頁面的位址一個頁面编號* Κ將該頁面 定位於主記憶體内; (f) 偵測取用記憶體時會在高速媛衝儲存器内造成疏失 之物理位址;以及 (g) 重新指定給造成該高速級衡雔存器疏失之頁面不同 的頁面編號,並依據該不同之頁面編號而將該頁面 在主記憶體内重新定位在一不同的位置上。 2. 根據申請專利範圓第1項之方法,其中該中央處理器執 行一種虛構記憶《8糸統•且頁面是在該主記憶體及一磁 碟記憶體間交換。 a 根據申請專利範画第1項之方法·包含在該直接映射式 高速媛衝儲存器上儲放至少二個頁面。 4. 根據申請專利範匾第1項之方法,其中該偵測步«包含 閂鎖住高速媛衝髄存器疏失之位址。 5. 根據申誚專利範圍第4項之方法,其中該偵测步驟包含 14 甲 4 (210X297公廣) ....................................f ..............St...............................打........I .................線 (請先1¾讀背面之注意事項再填寫本頁) 219338 A7 B7 C7 D7 六、申請專利範明 經濟部中央揉準局印製 不斷定期地自該閂鎖住位址取樣,且該重新指定步驟係 使用得自該定期取樣所得之高速媛衝儲存器疏失位址。 一種利用模擬高速媛街暫存器之闞聃性之霣臞糸統,包 含:. (a) —個可執行一棰虚構記憶《系統的中央處理器; (b) _-個主記憶髓·可在該虛檐記憧體系统下儲存數個 頁面供在該中央處理器上執行之工作所使用的數據 » (c) 一涸直接映射式高速緩銜儲存器,可儲存在主記憶 體上儲放之該數頁面數據的一部份; (d) 該中央處理器在執行該項工作時,會在其上產生虛 構位址; (e) —種装置,可將該虛構位址轉換成實際位址,以取 用該高速缓衝儲存器及主記憶》; (f) 一種装置,可指定給每一頁面的位址一倨頁面編號 ,以將該頁面定位於主記憶體内; (S) —種装置,可偵測在取用記憶體時會在該高速緩衝 儲存器上造成疏失之賁際位址; (h) —種装置,可重新指一不同頁面騙號給會造成該高 速嫒衝儲存器疏失之頁面,並依據該不同之頁面縝 號,將該頁面重新定位於主記憶體内不同之位置上 Ο 7- 根據申諝專利範圃第6項之系铳,其中頁面是在主記憶 —15 — (請先閏讀背面之注意事項再填穹本頁) •打. •線. 肀 4 (210X297公廣) 六、申請專利範® 7 7 7 7 A B c D 體及一磁碟記憶體之間交換。 a 根據申謓專利範圍第6項之系統,其中該高速緩衝儲存 器上可儲放至少二涸頁面。 a 根據申謫專利範圍第8項之糸統,其中該偵測用装置包 含一鎖存器,可保存高速緩銜儲存器疏失之位址。 ία 根據申請專利範圍第9項之系統*其中該偵測用装置包 含一_種裝置*可不斷定期地對該鎖存器取樣,且該重新 指定用裝置會依據該取樣用裝置而動作。 (請先閑讀背面之注意車項再填宵本頁) .装. -訂· .綠· 經濟部中央揉準局印製 甲 4(210X297 公廣)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US71639791A | 1991-06-17 | 1991-06-17 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW219986B true TW219986B (zh) | 1994-02-01 |
Family
ID=24877837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW080107803A TW219986B (zh) | 1991-06-17 | 1991-10-03 |
Country Status (12)
Country | Link |
---|---|
US (1) | US5442571A (zh) |
EP (1) | EP0543991B1 (zh) |
JP (1) | JPH07104816B2 (zh) |
KR (1) | KR960005443B1 (zh) |
AU (1) | AU658914B2 (zh) |
CA (1) | CA2088779C (zh) |
DE (1) | DE69229667T2 (zh) |
IE (1) | IE921691A1 (zh) |
IL (1) | IL102001A (zh) |
MX (1) | MX9202907A (zh) |
TW (1) | TW219986B (zh) |
WO (1) | WO1992022867A1 (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2688612A1 (fr) * | 1992-03-13 | 1993-09-17 | Inst Nat Rech Inf Automat | Dispositif d'antememoire. |
US5732409A (en) * | 1994-03-21 | 1998-03-24 | Legend Research Limited | Caching disk controller implemented by hardwired logic |
US6129458A (en) * | 1994-03-23 | 2000-10-10 | At&T Global Information Solutions Company | Cache optimization method |
US6223255B1 (en) | 1995-02-03 | 2001-04-24 | Lucent Technologies | Microprocessor with an instruction level reconfigurable n-way cache |
US5845106A (en) * | 1996-01-26 | 1998-12-01 | Advanced Micro Devices, Inc. | Method for simulating cache operation |
US5752261A (en) * | 1996-11-07 | 1998-05-12 | Ncr Corporation | Method and apparatus for detecting thrashing in a cache memory |
US6301641B1 (en) * | 1997-02-27 | 2001-10-09 | U.S. Philips Corporation | Method for reducing the frequency of cache misses in a computer |
KR100231707B1 (ko) * | 1997-08-04 | 2000-01-15 | 정선종 | 통신 장비의 디엠에이 처리 방법 및 그 장치 |
US6209062B1 (en) * | 1997-11-24 | 2001-03-27 | Intel Corporation | Method for holding cache pages that are not invalidated within normal time duration for a second access or that are likely to be accessed again soon |
US6446170B1 (en) * | 1999-01-19 | 2002-09-03 | International Business Machines Corporation | Efficient store machine in cache based microprocessor |
US6408368B1 (en) | 1999-06-15 | 2002-06-18 | Sun Microsystems, Inc. | Operating system page placement to maximize cache data reuse |
US6366994B1 (en) * | 1999-06-22 | 2002-04-02 | Sun Microsystems, Inc. | Cache aware memory allocation |
JP2001109661A (ja) | 1999-10-14 | 2001-04-20 | Hitachi Ltd | キャッシュメモリの割当方法及びオペレーティングシステム及びそのオペレーティングシステムを有するコンピュータシステム |
US6523092B1 (en) | 2000-09-29 | 2003-02-18 | Intel Corporation | Cache line replacement policy enhancement to avoid memory page thrashing |
US6947052B2 (en) * | 2001-07-13 | 2005-09-20 | Texas Instruments Incorporated | Visual program memory hierarchy optimization |
GB2381886B (en) * | 2001-11-07 | 2004-06-23 | Sun Microsystems Inc | Computer system with virtual memory and paging mechanism |
US7366871B2 (en) | 2004-11-18 | 2008-04-29 | Sun Microsystems, Inc. | Apparatus and method for determining stack distance including spatial locality of running software for estimating cache miss rates based upon contents of a hash table |
US7373480B2 (en) * | 2004-11-18 | 2008-05-13 | Sun Microsystems, Inc. | Apparatus and method for determining stack distance of running software for estimating cache miss rates based upon contents of a hash table |
JP2007272691A (ja) * | 2006-03-31 | 2007-10-18 | Fujitsu Ltd | プロセッサ装置およびスラッシング回避方法 |
US8806461B2 (en) * | 2007-06-21 | 2014-08-12 | Microsoft Corporation | Using memory usage to pinpoint sub-optimal code for gaming systems |
US9619396B2 (en) * | 2015-03-27 | 2017-04-11 | Intel Corporation | Two level memory full line writes |
US10310811B2 (en) | 2017-03-31 | 2019-06-04 | Hewlett Packard Enterprise Development Lp | Transitioning a buffer to be accessed exclusively by a driver layer for writing immediate data stream |
CN111666230B (zh) * | 2020-05-27 | 2023-08-01 | 江苏华创微系统有限公司 | 在组相联tlb中支持巨页的方法 |
US20220206946A1 (en) * | 2020-12-28 | 2022-06-30 | Advanced Micro Devices, Inc. | Method and apparatus for managing a cache directory |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5119290A (en) * | 1987-10-02 | 1992-06-02 | Sun Microsystems, Inc. | Alias address support |
US5210843A (en) * | 1988-03-25 | 1993-05-11 | Northern Telecom Limited | Pseudo set-associative memory caching arrangement |
JPH02273843A (ja) * | 1989-04-14 | 1990-11-08 | Nec Corp | スワッピング装置 |
US5101485B1 (en) * | 1989-06-29 | 1996-12-10 | Frank L Perazzoli Jr | Virtual memory page table paging apparatus and method |
-
1991
- 1991-10-03 TW TW080107803A patent/TW219986B/zh active
-
1992
- 1992-05-21 AU AU22474/92A patent/AU658914B2/en not_active Ceased
- 1992-05-21 DE DE69229667T patent/DE69229667T2/de not_active Expired - Fee Related
- 1992-05-21 KR KR1019930700415A patent/KR960005443B1/ko not_active IP Right Cessation
- 1992-05-21 WO PCT/US1992/004281 patent/WO1992022867A1/en active IP Right Grant
- 1992-05-21 JP JP5500873A patent/JPH07104816B2/ja not_active Expired - Lifetime
- 1992-05-21 CA CA002088779A patent/CA2088779C/en not_active Expired - Fee Related
- 1992-05-21 EP EP92914461A patent/EP0543991B1/en not_active Expired - Lifetime
- 1992-05-26 IL IL10200192A patent/IL102001A/en not_active IP Right Cessation
- 1992-06-16 MX MX9202907A patent/MX9202907A/es not_active IP Right Cessation
- 1992-07-01 IE IE169192A patent/IE921691A1/en not_active Application Discontinuation
-
1994
- 1994-05-27 US US08/250,315 patent/US5442571A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
AU2247492A (en) | 1993-01-12 |
DE69229667T2 (de) | 2000-02-10 |
WO1992022867A1 (en) | 1992-12-23 |
IL102001A0 (en) | 1992-12-30 |
CA2088779A1 (en) | 1992-12-18 |
AU658914B2 (en) | 1995-05-04 |
EP0543991A1 (en) | 1993-06-02 |
JPH05509189A (ja) | 1993-12-16 |
US5442571A (en) | 1995-08-15 |
IL102001A (en) | 1996-01-31 |
KR960005443B1 (ko) | 1996-04-25 |
JPH07104816B2 (ja) | 1995-11-13 |
DE69229667D1 (de) | 1999-09-02 |
CA2088779C (en) | 1998-09-01 |
MX9202907A (es) | 1993-03-01 |
IE921691A1 (en) | 1992-12-30 |
EP0543991B1 (en) | 1999-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW219986B (zh) | ||
US9921972B2 (en) | Method and apparatus for implementing a heterogeneous memory subsystem | |
Clements et al. | RadixVM: Scalable address spaces for multithreaded applications | |
JP5379358B2 (ja) | データの優先順位付けを用いるマルチレベルのメモリ・アーキテクチャ | |
US9471507B2 (en) | System and device for page replacement control between virtual and real memory spaces | |
Markthub et al. | DRAGON: breaking GPU memory capacity limits with direct NVM access | |
TWI405081B (zh) | 對共享第二層對映快取記憶體對稱配置之方法與系統 | |
US9405703B2 (en) | Translation lookaside buffer | |
KR101139565B1 (ko) | 인-메모리, 인-페이지 디렉토리 캐시 일관성 기법 | |
JP2008515069A5 (zh) | ||
EP3642722A1 (en) | Mechanism for reducing page migration overhead in memory systems | |
JP2020524339A5 (zh) | ||
US11494308B2 (en) | Methods and devices for bypassing the internal cache of an advanced DRAM memory controller | |
CN107710175B (zh) | 存储器模块以及操作系统和方法 | |
JP2007048296A (ja) | 複数のアドレス・キャッシュ・エントリーを無効にする方法、装置およびシステム | |
US10331570B2 (en) | Real time memory address translation device | |
Kamp | You're doing it wrong | |
WO2019118042A1 (en) | Rinsing cache lines from a common memory page to memory | |
US8127082B2 (en) | Method and apparatus for allowing uninterrupted address translations while performing address translation cache invalidates and other cache operations | |
Bakita et al. | Enabling GPU memory oversubscription via transparent paging to an NVMe SSD | |
CN114746848B (zh) | 用于存储装置的高速缓存架构 | |
Kamp | You’re Doing It Wrong: Think you’ve mastered the art of server performance? Think again. | |
US11188238B2 (en) | Information processing apparatus, memory control method, and computer program product | |
Zhang et al. | Memory system support for dynamic cache line assembly | |
Teague | Low-Overhead Migration of Read-Only and Read-Mostly Data for Adapting Applications to Hybrid Memory Systems |