TW219986B - - Google Patents

Download PDF

Info

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
Application number
TW080107803A
Other languages
English (en)
Original Assignee
Digital Equipment Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Digital Equipment Corp filed Critical Digital Equipment Corp
Application granted granted Critical
Publication of TW219986B publication Critical patent/TW219986B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0864Addressing 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
    • G06F12/1054Address 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/653Page 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)

  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 公廣)
TW080107803A 1991-06-17 1991-10-03 TW219986B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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