TWI279675B - Method and system for accessing a cache line in a cache memory - Google Patents

Method and system for accessing a cache line in a cache memory Download PDF

Info

Publication number
TWI279675B
TWI279675B TW092120826A TW92120826A TWI279675B TW I279675 B TWI279675 B TW I279675B TW 092120826 A TW092120826 A TW 092120826A TW 92120826 A TW92120826 A TW 92120826A TW I279675 B TWI279675 B TW I279675B
Authority
TW
Taiwan
Prior art keywords
cache
decoding
displacement
component
line
Prior art date
Application number
TW092120826A
Other languages
English (en)
Other versions
TW200413906A (en
Inventor
David Arnold Luick
Original Assignee
Ibm
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 Ibm filed Critical Ibm
Publication of TW200413906A publication Critical patent/TW200413906A/zh
Application granted granted Critical
Publication of TWI279675B publication Critical patent/TWI279675B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/34Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
    • G06F9/355Indexed addressing
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (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

1279675 玖、發明說明: 【發明所屬之技術領域】 本發明一般相關於電腦領域,尤其相關於電腦系統中的快 取記憶體,更特別地,本發明相關於使用所儲存解碼位址存 取一快取線的改良方法及系統。 【先前技術】 使用資料快取記憶體用於電腦系統的效能改良係為人熟 知並廣泛使用,快取記憶體係高速緩衝器用以保持來自系統 記憶體的最近使用資料(包括指令)。 使用用於資料的系統記憶體位址以識別及定位快取記憶 體中的資料,系統記憶體位址分別在該位址的左及右部分包 括最重要位元(MSBs)及最不重要位元(LSBs),邏輯上將 MSBs視為系統記憶體中開始位置的指標,而LSBs在與msBs 連鎖時提供一位移,以完成該位址。在快取記憶體定址中, 稱MSBs為’’標記”,並稱LSBs為,,索引,,。 各索引識別快取兄憶體的一線(區塊)’標記則用以確認該 線包括來自系統記憶體中一特定位址的資料,即結合標記及 索引用於該系統記憶體位址的比較,以確認該快取線包括指 定予該系統記憶體位址的資料。 第一層級(L1)快取記憶體具有較少快取線,通常從64至數 百,各快取線包括許多字(電腦可内部管控的最大資料位元 數通常為64位元),通常各快取線包括32個字(128位元組)。 為存取一特定快取線,位址產生邏輯傳送一組致能信號, 其形成該特定快取線的内容,該特定快取線正傳送至一組輸 O:\86\86855-951129.doc - 5 - 1279675 出接腳,傳至該快取線的信號係該快取線的索引的解碼以產 生該信號的結果’意即將該索引的預解碼形式輸入_解碼 中,該解碼器具有多重(通常為64)接腳的輸出。 各獨特索引形成該解碼器的複數個輸出接腳之—(及唯 一),其具有一致能信號。 圖1說明先前技藝用以選取一快取線的典型配置,一指令 100包括一運算碼(OPCD) 102及一位移1〇4,暫存器樓包 括多個暫存器,包括暫存器A(RA)及暫存器B(RB)。RA包括 基底位址,而RB包括所要求資料的基底位址的位移,意即 RA包括至系統i己憶體區塊的一指標,該系統記憶體包括所 要求資料,而RB包括一位移(由指令1〇〇所界定),其完成包 括所要求資料的記憶體位址。或者,RA包括該基底位址, 而位移1 04直接描述所要求資料的基底位址的位移。 加法器/算術運算單元(ALU) 108結合來自RA的基底位址 及位移(來自RB或位移106),並將加總結果(位址)傳至一目標 暫存器(RT),抽取自RT者係索引110及位移112,用於L1快取 p己隐m 11 6中正確快取線的字(由位移112所選取)。解碼器114 將快取位址索引的六條線解碼’並在輸出64道線選擇器12〇 中的複數個接腳之一上輸出一信號,將位移i丨2在L丨快取記 憶體116内解碼,而從64道線選擇器12〇所選取的線選取想要 的字。 每次使用群組122所示邏輯存取一快取線時,須將兩運算 元加起來,然後將該快取位址索引110解碼所造成的延遲, 對圖1所示系統造成重大負荷,因此需要可避免此一延遲的 O:\86\86855-951129.doc -6 - 1279675 系統。 【發明内容】 因此’本發明係使用先前解碼基底位址位移位元(以暫存 為標儲存)以存取一特定快取線的方法及系統,該暫存器幹 不必在該快取存取路徑執行全位址解碼,並僅用一層級旋轉 器/多工器邏輯取代該位址產生加法器的多層級邏輯。解碼 基底暫存器位移位元致能該特定快取線的直接選取,藉此對 快取記憶體的各存取基底暫存器位移位元消除累加及解碼 的需要,藉由旋轉解碼基底暫存器位移位元存取其他快取線 而造成選取另一快取線的結果。 藉由儲存解碼基底暫存器位移位元(而非編碼(二進位)基 底位址位移位元),本發明可減少先前技藝所需的延遲,其 由解碼各快取存取的邏輯所造成。因此圖丨先前技藝所示群 組122(包括一加法器、目標暫存器及線選擇解碼器)中的多層 級邏輯,由圖3中群組322中所示多工器/旋轉器的一層級邏 輯所取代,此一層級途輯造成快取存取的淨零延遲。 本發明上述以及額外的目的、特徵及棱點在以下詳細書寫 說明中將明朗化。 【實施方式】 茲參照至圖2,其中說明-示範性資料處理系統·,其具 有一處理器2 0 5及記憶體系統2 3 〇,其提供一合適環境用以實 作本發明。如所示,處理器2〇5耦合至記憶體系統23〇,其包 括一介面系統匯流排202、—L2快取記憶體2〇4及一主(或系 統)記憶體226。處理器205包括以下功能單元:一固定點單 O:\86\86855-951129.doc 1279675 元(FXU) 2 06、一浮點單元(FPU) 208、一載入儲存單元(LSU) 210、一指令單元(IU) 212、一指令快取單元(ICU) 214、一 資料快取單元(DCU) 216、一 L2快取控制單元218、一處理 器介面單元(PIU) 220、一時脈分配及控制222及位址轉譯單 元(ATU) 224。如熟諳此藝者所熟知,在多處理器環境中, 數個處理器及其相關聯L2快取記憶體以介面連接至系統匯 流排202,容許共享至主記憶體(亦稱L3記憶體)226的存取。 處理器205的多種不同的功能單元透過資料、位址及或控 制I/O接腳、複數條線及/或複數個匯流排(以下將詳加說明) 而以介面互相連接,應注意一 ”線”可指單一信號線或複數條 信號線的集合(即一匯流排)。通常處理器205的複數個功能單 元如下連通:時脈分配及控制222將複數個時脈信號提供至 處理器晶片205上的所有功能單元;系統匯流排205透過雙向 匯流排201以介面連接至PIU 220,並透過一匯流排205與 CCU 218連接;L2快取記憶體204透過匯流排203與CCU 218 連通,而CCU 218透過匯流排209與ICU 214連通複數個指 令,並透過匯流排211與DCU 216連通;CCU 218將位址資訊 提供至ATU 224,並透過匯流排207接收漏失的介面信號;利 用!^11210及11;212將要求介面提供至八丁11 224,並透過線 229及231接收轉譯狀態資訊;ATU 224按次將轉譯位址資訊 透過線215提供至ICU 214,並透過線213提供至DCU 216; ICU 214透過匯流排219以介面連接至指令單元212,當IU 212透過匯流排223將指令提供至卩又11 206、[?11 208及1^1; 210時,DCU 216並將資料透過匯流排221提供至FXU 206、 O:\86\86855-951129.doc 1279675 FPU 20 8及LSU 210 ; LSU 2 10透過匯流排225將資料提供至 DCU 216,FPU 208透過匯流排227將資料提供及接收至£)(::1; 216及 LSU 210。 載入儲存單元210内的調配程式將指令從指令單元212導 向多種不同執行單元的DECODE級緩衝器,並導向一載入儲 存單元管道緩衝器(其較好與載入儲存單元21〇 一體成型)。載 入儲存單元210的功用在於產生有效位址(例如在64位元寬 匯流排上),用以載入及儲存指令,並作用為通用暫存器資 料的來源及接收點。通用暫存器(未示)係資料處理系統2〇〇 内的暫存器,可適用於任何處理器的設計或作業系統,在寫 入快取記憶體期間,暫存器保持資料及位址,並由一位址產 生常式(AGEN)利用位址轉譯邏輯210a算出有效位址,位址 轉譯邏輯210a在一較佳實例中包括旋轉器308及3 1〇(以下將 參照至圖3加以說明)。在快取讀取期間,將來自快取記憶體 資料閂鎖在一暫存器中,並傳送至通用暫存器或傳至固定點 單元206,將管道緩衝器的輸出提供至載入儲存單元的解碼 及位址產生器(即AGEN),其包括複數個通用暫存器及位址 產生加法器,並將该解碼為的資料輸出提供至一資料暫存器 及一資料選擇器,然後將AGEN的位址輸出提供至一 EXECUTE級緩衝器。 兹參照至圖3,其中根據本發明一較佳實例說明一快取線 選擇器,用以選取一特定快取線,暫存器檔3〇6包括解碼行 位址選取(CAS)旋轉資料314、解碼列位址選取(raS)資料 312、解碼RAS旋轉資料304及解碼CAS資料316。 O:\86\86855-951129.doc 1279675 解碼CAS資料316及RAS資料312 一起說明一索引,用以藉 由將複數條快取線識別為複數個欄及列而定位一特定快取 、、泉例如,考夏具64條線的快取系統,而非具有64條佈線遍 及所有邏輯用以拉出一特定快取線,該64條線描述成具有8 攔的8列中形成64描述符,藉此各快取線由其(:;入8識別符及 其R A S識別符加以識別。 請>王意,暫存器檔306中所示RAS/CAS檔案的内容係來自 一解碼器500的輸出,解碼器5〇〇將前一加法器/ALU操作產生 RAS/CAS線的結果解碼,諒等線來自現存複數個快取暫存 器,或來自其他操作單元(諸如浮點計算等),不用增加該等 單的操作延遲,以下將相關於圖5討論解碼器5〇〇的操作細 /r/r 即 ° 將暫存器檔306中的RAS/C AS資料解碼以預先描述一特定 快取線時,不再需要圖i中群組122的邏輯用以判定該特定快 取線,而代之以群組322中的一層級邏輯(以下將詳細討論其 元件)。 红參照至圖4以提出暫存器樓3 0 6中所示資料的重要性,在 圖4中,方塊402說明常態暫存器檔位址表示法(諸如圖1所示 系統所利用者),位址線包括一編碼基底位址,其在圖丨中儲 存於一暫存器A(RA)中。編碼RAS及編碼CAS,以及該線内 的位元組位址(圖1中的字選擇器位移112)皆儲存於圖1中的 暫存器B(RB),在圖1中,示出編碼RAS及編碼cas結合成索 引110,即假設編碼RAS包括3位元而編碼CAS具有3位元,附 加RAS及CAS編碼位元形成6編碼位元。 O:\86\86855-951129.doc •10- 1279675 再參照至圖4,方塊404說明根據本發明較佳實例的改良暫 存器檔位址影像,當基底位址及位元組位址仍以該線編碼 時,RAS及CAS位元儲存在解碼形式中,而容許直接將它們 傳遞至圖3所示的RAS旋轉器308及CAS旋轉器310(其皆操作 成一元加法器)。方塊404中所示解碼RAS位元包括圖3所示的 解碼RAS旋轉資料304及解碼RAS資料312,而方塊404中所示 解碼CAS位元包括圖3所示解碼CAS旋轉資料314及解碼〇八8 資料3 16。 再參照至圖3,解碼RAS旋轉資料3 04及解碼C AS旋轉資料 3 14分別控制8道閂鎖多工器/旋轉器308及3 10,而將RAS及 CAS信號設定至適當快取線。在and邏輯302中邏輯地結合 RAS及CAS線,形成至L1快取記憶體116的64線快取線選取輸 出’字選擇器312操作方法類似於圖1中說明位移ι12者。 解碼RAS及C AS資料(3 04、3 06、314、3 16)係來自一解碼 器500(諸如圖5所示)的輸出,例如將描述ras資料的編碼二 進位數”011"輸入解碼器500中,來自解碼器5〇〇的輸出為8線 (0-7) ’輸入π〇11”時,在線”3”的一信號改變成邏輯獨特值(較 好疋南的)’而在所有其他線(7、6、5、4、2、1、0)上的輸 出仍保持是低的。 應明白可能有偶發情況,其中旋轉器會有進位,惟此類偶 發情況發生率少於10%,因此,在較佳實例中,並未於RAS 及CAS使用-進位加法器,惟或者,可併用此一進位加法 器,於輸入旋轉器308及310時用以產生一進位。惟在圖6中, 說明在一較隹實例中使用邏輯管控進位,如圖6所示,如上 O:\86\86855-951129.doc -11- 1279675 述參照至圖3而產生64線快取線選取,惟cas的多工器/旋轉 菇610係C AS多工器/旋轉器31〇,其將解碼CAS 316旋轉一額 外位置。此單一額外旋轉適應該進位,形成適當的快取線信 號,較好同時與64線快取線選取的判定作出是否有進位的判 足’因此假設有進位時則使用邏輯6〇〇a,而假設無進位時則 使用邏輯600b。當作出是否有進位的判定時,一 2道選取緩 衝咨608則以”進位”選取控制63 0或,,無進位,,選取控制632所 控制的選取’從6〇〇a的AND邏輯302a,或從600b的AND邏輯 302b選取輸出,並將選取的AND邏輯輸出輸出至以快取陣列 11 6 〇 請注意圖6中較好將2道選取緩衝器608實體地約置於and 邏輯與L1快取陣列11 6間的中途,and邏輯3 02並實體地約朝 向旋轉森與2道選取緩衝器608間的中途。旋轉器與L1快取陣 列116間的距離便於驅動器驅動相關接線距離中固有的接線 電答所需,藉此邏輯AND 3〇2及2道選取緩衝器6〇8未在存取 快取陣列116中添加延遲時間。 本發明因此利用用於將L1快取記憶體編索引的低階有效 位址產生的本質,此本質包括用以支援該位置的歷史性資 料,而令所有加至一基底暫存器以形成有效位址的位移用於 最商業化工作負擔皆非常短,並只需要極少有效位址位元 (通#為5或6),用以開始一資料快取存取。此外,此類位移 通常持續不斷,基底暫存器值高度重複,尤其位元的低階(總 為零)’俾便從低階8_丨2位元有效位址加法來的退位可極高度 預測到。因此,如所述將解碼快取線存取位元(來自有效位 O:\86\86855-951129.doc -12- 1279675 址)加以儲存及操縱,藉此減少存取一快取線時的延遲。 雖然已相關於一電腦處理器及軟體說明本發明的數個概 心但應了解本發明至少有些概念可替代地實作為程式產 w舁貝料儲存系統或電腦系統配合使用,可將界定本發明 功能的複數個程式經由各式各樣信號載送媒體傳送至一資 料儲存系統或電腦系統,該等信號載送媒體包括(但不限於) 非可寫入儲存媒體(如CD-ROM)、可寫入儲存媒體(如軟式磁 碟、硬碟機、讀取/寫入CD_R〇M、光學媒體),及通信媒體(諸 如包括乙太網路的電腦及電話網路等)。因此,應了解此類 仏唬載送媒體將導向本發明方法功能的電腦可讀指令加以 攜帶或編碼時,其即代表本發明的替代實例。此外,應了解 本發明亦可藉由具有如本文所述及硬體、軟體或結合軟硬體 形式的構件的系統實作本發明。 雖;米本發明參照至一較佳實例特別加以描述及說明,但熟 諳此藝者應了解其中不用背離本發明的精神及範疇,亦可: 形式及細節中作出多種不同的變動。 【圖式簡單說明】 後附申請專利範圍中提出本發明的創新特徵可採信特 性,惟配合附圖閱讀時,藉由參照以下說明實例的詳細說 明’將更能了解本發明本身,以及其較佳使用模式及進一步 目的及優點。 圖1說明如先前技藝所教示用以選取-快取線的系統; 圖2說明本發明所使用的資料處理系統; 圖3說明本發明所使用的邏輯,用以使用所儲存解碼資訊 O:\86\86855-951129.doc -13- 1279675 選取一快取線; 的示範内 圖4根據本發明說明一暫存器儲存解碼替換位元 容; 圖5說明本發明使用的解碼器;及 圖6說明解碼快取位址時用以管控進位的邏輯。 【圖式代表符號說明】 114, 500 解碼器 116 L1快取記憶體 120 64道線選擇器 200 資料處理系統 201 雙向匯流排 202 系統匯流排 203, 207, 209, 匯流排 211,219, 221, 223, 225, 227 204 L2快取記憶體 205 處理器 206 固定點單元 208 浮動點單元 210 載入/儲存單元 212 指令單元 213, 215, 信號線 229, 231 214 指令快取單元 O:\86\86855-951129.doc -14- 1279675 216 資料快取單元 218 L2快取控制單元 220 處理器介面單元 222 時脈分配及控制單元 224 位址轉譯單元 226 系統記憶體 230 1己憶體系統 308 RAS旋轉器 310, 610 CAS旋轉器 312 字選擇器 608 2道選取緩衝器 15- O:\86\86855-951129.doc

Claims (1)

1279675 拾、申請專利範園: 1. 一種用以在一 包括: 快取i己憶體中存取 一快取線之方法,該方法 將識別—快取線之位移解碼; 將該解碼位移儲存於一暫存器中;及 根據該解碼位移選取該快取線。 2·如申請專利範圍第之方法,尚包括: 旋轉該解碼位移,以選擇較能另—選 取線。 氏 3·如:請專利範圍^項之方法,其中該解碼位移包括一解碼 列位址U取(ras)分量及一行位址選取(CAS)分量。 4·如申請專利圍第η之方法,其中該快取記憶體係一第— 層(L1)快取記憶體。 種”有取A fe體之資料處理系統,該資料處理系統包 用以將識別一快取線之位移解碼之構件; 用以將该解碼位移儲存於一暫存器之構件;及 用以根據該解碼位移選取該快取線之構件。 6·如申請專利範圍第5項之資料處理系統,尚包括: 用以旋轉該解碼位移以選擇地致能另一選取線存取另 一快取線之構件。 7·如申請專利範圍第5項之資料處理系統,其中該解碼位移包 括一解碼列位址選取(RAS)分量及一行位址選取(CAS)分 量。 O:\86\86855-951129.doc 1279675 8·如申請專利範圍第5項之方法,其中該快取記憶體係一第一 層級(L1)快取記憶體。 9· 一種在處理器之快取記憶體存取快取線之電腦可用媒體, 該電腦可用媒體包括: 用以將識別一快取線之位移解碼之電腦程式碼; 用以將該解碼位移儲存於一暫存器之電腦程式碼;及 用以根據该解碼位移選取該快取線之電腦程式碼。 10·如申請專利範圍第9項之電腦可用媒體,尚包括: 用以旋轉該解碼位移以選擇地致能另一選取線存取另 一快取線之電腦可用媒體。 11·如申請專利範圍第9項之電腦可用媒體,其中該解碼位移包 括解碼列位址選取(RAS)分量及一行位址選取(cas)分 *4* 〇 12.如申請專利範圍第9項之電腦可用媒體,其中該快取記憶體 係一第一層(L1)快取記憶體。 13·—種快取線選擇器,包括: 一暫存器棺’其包括用以識別一快取線之解碼位移資 料; ’、 複數條來自該暫存器檔之輸出線;及 一快取1己憶體,其經由該複數條輸出線摘合至該暫存哭 擒’其中藉由將該解碼位移資料經由該複數條輸出線傳送 土忒快取記憶體,該位移資料選擇地致使該快取線之存取。 14.如申請專利範圍第13項之快取線選擇器,其中該解碼位移 «料包括一基底位址暫存器位移及一旋轉資料,該快取綠 O:\86\86855-951129.doc -2 - 1279675 選擇器尚包括: 第一旋轉器,其耦合至該暫存器檔,其中該第一旋轉 器根據該旋轉資料而旋轉該基底位址暫存器位移,用以在 該快取記憶體中選取一快取線。 申請專㈣狀快韓選㈣,其巾該解碼位移 貝料包括一解碼列位址選取(RAS)分量及一行位址選取 (CAS)分量,該快取線選擇器尚包括: 、二弟二旋轉器,其中該第一旋轉器旋轉該RAS分量,而 该第二旋轉器旋轉該CAS分量。 16·如申4專利範園第14項之快取線選擇器,尚包括根據該解 碼位移用以結合該RAS及CAS分量之邏輯,而造成選取一 快取線之結果。 17·如申請專利範園第14項之快取線選擇器,尚包括: 第二旋轉器,若該CAS分量與^RAS分量邏輯上and 、、、"口時具有一進位,用以推測性將該CAS分量旋轉一額外 位置;及 一選擇器,用以根據是否發生一進位以選取該第一及第 一旋轉咨<輸出,或該第一及第三旋轉器之輸出。 18·如申叫專利範園第14項之快取線選擇器,尚包括: 一乐二旋轉器,若該RAS分量與該CAS分量邏輯上AND 、、口 口時具有一進位,用以推測性將該RAS分量旋轉一額外 位置;及 、I擇w用以根據是否發生一進位以選取該第一及第 -旋轉斋〈輸出,或該第一及第三旋轉器之輸出。 O:\86\86855-951129.doc
TW092120826A 2002-10-29 2003-07-30 Method and system for accessing a cache line in a cache memory TWI279675B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/282,519 US6941421B2 (en) 2002-10-29 2002-10-29 Zero delay data cache effective address generation

Publications (2)

Publication Number Publication Date
TW200413906A TW200413906A (en) 2004-08-01
TWI279675B true TWI279675B (en) 2007-04-21

Family

ID=32107384

Family Applications (1)

Application Number Title Priority Date Filing Date
TW092120826A TWI279675B (en) 2002-10-29 2003-07-30 Method and system for accessing a cache line in a cache memory

Country Status (4)

Country Link
US (1) US6941421B2 (zh)
JP (1) JP3896356B2 (zh)
CN (1) CN100356345C (zh)
TW (1) TWI279675B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI407306B (zh) * 2009-05-27 2013-09-01 Via Tech Inc 快取記憶體系統及其存取方法與電腦程式產品

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101595462B (zh) * 2007-01-31 2012-04-25 高通股份有限公司 用以减少多级高速缓冲存储器层级中的掷出的设备和方法
US8904109B2 (en) 2011-01-28 2014-12-02 Freescale Semiconductor, Inc. Selective cache access control apparatus and method thereof
US8533400B2 (en) 2011-01-28 2013-09-10 Freescale Semiconductor, Inc. Selective memory access to different local memory ports and method thereof
US8756405B2 (en) 2011-05-09 2014-06-17 Freescale Semiconductor, Inc. Selective routing of local memory accesses and device thereof
US9202532B2 (en) 2012-09-13 2015-12-01 Winbond Electronics Corp. Burst sequence control and multi-valued fuse scheme in memory device
US9916252B2 (en) * 2015-05-19 2018-03-13 Linear Algebra Technologies Limited Systems and methods for addressing a cache with split-indexes

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58189738A (ja) * 1982-04-30 1983-11-05 Hitachi Ltd デ−タ処理システム
US4578750A (en) * 1983-08-24 1986-03-25 Amdahl Corporation Code determination using half-adder based operand comparator
US5023776A (en) * 1988-02-22 1991-06-11 International Business Machines Corp. Store queue for a tightly coupled multiple processor configuration with two-level cache buffer storage
US5212778A (en) * 1988-05-27 1993-05-18 Massachusetts Institute Of Technology Message-driven processor in a concurrent computer
JP2504156B2 (ja) * 1989-01-25 1996-06-05 日本電気株式会社 情報処理装置
US5097436A (en) * 1990-01-09 1992-03-17 Digital Equipment Corporation High performance adder using carry predictions
JPH0821003B2 (ja) * 1992-08-07 1996-03-04 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータ・キャッシュ・システム用の加算器/ハッシュ回路
US5659780A (en) * 1994-02-24 1997-08-19 Wu; Chen-Mie Pipelined SIMD-systolic array processor and methods thereof
US6226722B1 (en) 1994-05-19 2001-05-01 International Business Machines Corporation Integrated level two cache and controller with multiple ports, L1 bypass and concurrent accessing
US5829049A (en) * 1994-10-12 1998-10-27 Hewlett-Packard Company Simultaneous execution of two memory reference instructions with only one address calculation
US5532947A (en) 1995-01-25 1996-07-02 International Business Machines Corporation Combined decoder/adder circuit which provides improved access speed to a cache
US5940877A (en) 1997-06-12 1999-08-17 International Business Machines Corporation Cache address generation with and without carry-in
US6161166A (en) 1997-11-10 2000-12-12 International Business Machines Corporation Instruction cache for multithreaded processor
US6415355B1 (en) * 1998-05-11 2002-07-02 Kabushiki Kaisha Toshiba Combined disk array controller and cache control method for parity generation mode and data restoration mode
US6321296B1 (en) 1998-08-04 2001-11-20 International Business Machines Corporation SDRAM L3 cache using speculative loads with command aborts to lower latency

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI407306B (zh) * 2009-05-27 2013-09-01 Via Tech Inc 快取記憶體系統及其存取方法與電腦程式產品

Also Published As

Publication number Publication date
US20040083350A1 (en) 2004-04-29
JP3896356B2 (ja) 2007-03-22
CN1499377A (zh) 2004-05-26
CN100356345C (zh) 2007-12-19
JP2004152291A (ja) 2004-05-27
US6941421B2 (en) 2005-09-06
TW200413906A (en) 2004-08-01

Similar Documents

Publication Publication Date Title
US8078828B1 (en) Memory mapped register file
JP4829541B2 (ja) マルチレベル・レジスタ・ファイルを有するディジタル・データ処理装置
EP1324190B1 (en) Data processing system having a read-modify-write unit
JP6849275B2 (ja) インデックスおよび即値を用いてベクトル置換を実行するための方法および装置
US20070094480A1 (en) System and method for memory array access with fast address decoder
JP2004070958A (ja) エンディアン非依存モードで動作するシステム及び方法
JP2682264B2 (ja) プログラムカウンタ装置
US5717910A (en) Operand compare/release apparatus and method for microinstrution sequences in a pipeline processor
JP3756409B2 (ja) データハザード検出システム
US9015216B2 (en) Fast static rotator/shifter with non two's complemented decode and fast mask generation
TWI279675B (en) Method and system for accessing a cache line in a cache memory
EP0730228B1 (en) ECC protected memory organization with pipelined read-modify-write accesses
JP3990423B2 (ja) データアクセスプログラム命令のコード化
US7380099B2 (en) Apparatus and method for an address generation circuit
JPH0798655A (ja) データアクセス命令解読方法及び装置
US6948053B2 (en) Efficiently calculating a branch target address
JP4613168B2 (ja) 命令整列の方法および装置
US5815697A (en) Circuits, systems, and methods for reducing microprogram memory power for multiway branching
US6965906B1 (en) Converting negative floating point numbers to integer notation without two's complement hardware
JP2017538215A (ja) 逆分離演算を実行するための命令及びロジック
US5276853A (en) Cache system
US7089360B1 (en) Shared cache wordline decoder for redundant and regular addresses
US6922773B2 (en) System and method for encoding constant operands in a wide issue processor
US6507531B1 (en) Cache column multiplexing using redundant form addresses
JP7456570B2 (ja) 権限横断リニアプローブに対する防護のためのシステム、方法および装置

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees