JP3896356B2 - キャッシュラインにアクセスするための方法、システム、コンピュータ使用可能媒体、およびキャッシュラインセレクタ - Google Patents

キャッシュラインにアクセスするための方法、システム、コンピュータ使用可能媒体、およびキャッシュラインセレクタ Download PDF

Info

Publication number
JP3896356B2
JP3896356B2 JP2003365271A JP2003365271A JP3896356B2 JP 3896356 B2 JP3896356 B2 JP 3896356B2 JP 2003365271 A JP2003365271 A JP 2003365271A JP 2003365271 A JP2003365271 A JP 2003365271A JP 3896356 B2 JP3896356 B2 JP 3896356B2
Authority
JP
Japan
Prior art keywords
cache line
cache
displacement
cas
decoding
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2003365271A
Other languages
English (en)
Other versions
JP2004152291A (ja
Inventor
デービッド・アーノルド・ルイック
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2004152291A publication Critical patent/JP2004152291A/ja
Application granted granted Critical
Publication of JP3896356B2 publication Critical patent/JP3896356B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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

本発明は、一般にコンピュータの分野に関し、具体的にはコンピュータシステムにおけるキャッシュメモリに関する。更に特定すれば、本発明は、格納された復号アドレスを用いてキャッシュにアクセスするための改良された方法およびシステムに関する。
コンピューティングシステムにおいて性能向上のためにデータキャッシュを用いることは、周知であり、広く行われている。キャッシュは、システムメモリからの最近用いたデータ(命令を含む)を保持する高速のバッファである。
キャッシュ内のデータは、そのデータのためのシステムメモリアドレスを用いて識別され、位置が特定される。システムメモリアドレスは、アドレスの左部分に最上位ビット(MSB)を含み、右部分に最下位ビット(LSB)を含む。MSBは、論理的には、システムメモリ内の開始位置に対するポインタとして見ることができ、LSBは、MSBと連結されると、アドレスを完成させるためのオフセットを提供する。キャッシュメモリアドレッシングにおいて、MSBは「タグ」と呼ばれ、LSBは「インデックス」と呼ばれる。
各インデックスは、キャッシュメモリのライン(ブロック)を識別する。タグは、そのラインが、システムメモリにおける特定のアドレスからのデータを含むことを確認するために用いられる。すなわち、タグおよびインデックスを連結して、システムメモリアドレスとの比較を行い、キャッシュラインが、システムメモリアドレスを割り当てられたデータを含むことを確認する。
レベル1(L1)キャッシュは、典型的に64から数百という比較的少ないキャッシュラインを有する。各キャッシュラインは、多くのワード(コンピュータが内部で処理可能なデータの最大ビット数で、通常64ビットである)を含む。典型的に、各キャッシュラインは、32ワード(128バイト)を含む。
特定のキャッシュラインにアクセスするために、アドレス発生論理が、一組のイネーブルされた信号を送信し、結果として、特定のキャッシュラインの内容が一組の出力ピンに送信される。キャッシュラインへの信号は、信号を発生させるためにキャッシュラインのインデックスを復号した結果として生じる。すなわち、予め復号した形態のインデックスを、多数(典型的に64)のピンの出力を有するデコーダに入力する。一意の各インデックスによって、デコーダの出力ピンのうちただ1つのみがイネーブル信号を有することになる。
図1は、キャッシュラインを選択するための従来技術の論理の典型的な構成を示す。命令100は、オペランドコード(OPCD)102および変位104を含む。レジスタファイル106は、レジスタA(RA)およびレジスタB(RB)を含む複数のレジスタを含む。RAはベースアドレスを含み、RBは、要求されたデータのベースアドレスに対するオフセットを含む。すなわち、RAは、要求されたデータを含むシステムメモリのブロックに対するポインタを含み、RBは、命令100によって規定され、要求されたデータを含むメモリアドレスを完成させるオフセットを含む。あるいは、RAがベースアドレスを含み、変位104が、要求されたデータのベースアドレスに対するオフセットを直接記述する。
加算器/ALU108は、RAからのベースアドレスと、RBからのオフセットまたは変位106とを結合し、加算結果(アドレス)をターゲットレジスタ(RT)に送信する。L1キャッシュ116において正しいキャッシュラインのワードをオフセット112によって選択するため、RTからインデックス110およびオフセット112が抽出される。デコーダ114は、キャッシュアドレスインデックス110の6ラインを復号し、出力64ウェイラインセレクタ120のピンの1つに信号を出力する。オフセット112は、L1キャッシュ116内で復号されて、64ウェイラインセレクタ120が選択したラインから所望のワードを選択する。
図1に示したシステムでは、キャッシュラインにアクセスするたびに、グループ122に示す論理を用いて、2つのオペランドを加算し、次いでキャッシュアドレスインデックス110を復号することによる遅延が負担となっている。従って、かかる遅延を回避するシステムが必要とされている。
本発明は、レジスタファイルによって格納された、以前に復号されたベースアドレスオフセットビットを用いて、指定されたキャッシュラインにアクセスし、キャッシュアクセス経路において全アドレス復号を実行する必要性を無くし、アドレス発生加算器の多レベル論理を1つのみのレベルの回転装置/マルチプレクサ論理によって置換するための方法およびシステムである。復号ベースレジスタオフセットビットは、指定されたキャッシュラインの直接選択を可能にし、これによって、キャッシュメモリにアクセスするたびにベースレジスタオフセットビットの加算および復号を行う必要を排除する。他のキャッシュラインにアクセスするには、復号ベースアドレスオフセットビットを回転させることによって、別のキャッシュラインを選択する。
符号化(2進)ベースアドレスオフセットビットではなく、復号ベースアドレスオフセットビットを格納することによって、本発明は、従来技術においてキャッシュアクセスごとに復号を行う論理によって生じた不可避の遅延を小さくすることができる。このため、従来技術の図1にグループ122で示す、加算器、ターゲットレジスタ、およびライン選択デコーダを含む多レベル論理は、図3にグループ322で示すような単一レベル論理のマルチプレクサ/回転装置によって置換される。この単一レベル論理によって、キャッシュアクセスに対する純遅延はゼロとなる。
本発明の、上述の、ならびにそれ以外の目的、特徴、および利点は、以下の詳細な説明から明らかになろう。
ここで図2を参照すると、例示的なデータ処理システム200が示されており、これは、プロセッサ205およびメモリシステム230を有し、本発明の実施のための適切な環境を提供する。図示のように、プロセッサ205は、インタフェースシステムバス202、L2キャッシュ204、およびシステムメモリ(メインメモリ)226を含むメモリシステム230に結合されている。プロセッサ205は、以下の機能ユニット、すなわち、固定小数点ユニット(FXU)206、浮動小数点ユニット(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上の全ての機能ユニットにクロック信号を供給する。システムバス202は、双方向バス201を介してPIU220に接続し、更に、バス205を介してCCU218と接続する。L2キャッシュ204は、バス203を介してCCU218と通信し、CCU218はバス209を介してICU214と、バス211を介してDCU216と命令の伝達を行う。CCU218は、バス207を介して、アドレス情報をATU224に供給し、ミスインタフェース信号を受信する。LSU210およびIU212は、ライン229および231を介して、ATU224に対する要求インタフェースを与え、変換状態情報を受信するために利用される。そして、ATU224は、変換されたアドレス情報を、ライン215を介してICU214に供給し、ライン213を介してDCU216に供給する。ICU214は、バス219を介して命令ユニット212に接続する。DCU216は、バス221を介して、FXU206、FPU208、およびLSU210にデータを供給し、一方、IU212は、バス223を介して、FXU206、FPU208、およびLSU210に命令を供給する。LSU210は、バス225を介してDCU216にデータを供給し、FPU208は、LSU210へのバス227を介してDCU216との間でデータを供給および受信する。
ロード/格納ユニット210内のディスパッチャは、命令ユニット212からの命令を、様々な実行ユニットの復号ステージバッファに、更に、好ましくはロード/格納ユニット210と一体化しているロード/格納ユニットパイプラインバッファに、送出する。ロード/格納ユニット210の機能は、ロードおよび格納命令の有効アドレスを、例えば64ビット幅のバス上に発生し、更に、汎用レジスタデータのためのソースおよびシンクとして機能することである。汎用レジスタ(図示せず)は、データ処理システム200内のレジスタであり、プロセッサの設計またはオペレーティングシステムによっていかなる用途にも利用可能である。キャッシュに対する書き込みの間、レジスタはデータおよびアドレスを保持し、有効アドレスは、アドレス変換論理210Aを用いて、アドレス発生ルーチン(AGEN)によって算出される。アドレス変換論理210Aは、好適な実施形態では、回転装置308および310を備える。これらについては、図3を参照して以下で説明する。キャッシュの読み取りの間、キャッシュからのデータはレジスタにラッチされ、汎用レジスタまたは固定小数点ユニット206に送信される。パイプラインバッファの出力は、汎用レジスタおよびアドレス発生加算器を含む、ロード/格納ユニットの復号およびアドレス発生装置すなわちAGENに供給される。デコーダからのデータ出力はデータレジスタおよびデータセレクタに供給される。次いで、AGENのアドレス出力は、実行ステージバッファに供給される。
ここで図3を参照すると、本発明の好適な実施形態による、特定のキャッシュラインを選択するためのキャッシュラインセレクタが示されている。レジスタファイル306は、復号列アドレス選択(CAS)回転データ314、復号行アドレス選択(RAS)データ312、復号RAS回転データ304、および復号CASデータ316を含む。
復号CASデータ316およびRASデータ312は、共に、キャッシュラインを列および行として識別することによって、特定のキャッシュラインの位置を特定するためのインデックスを記述する。例えば、64本のラインを有するキャッシュシステムについて考える。特定のキャッシュラインをプルするために論理の全てにわたって64本のワイヤを張り巡らすのではなく、64本のラインを、8列×8行の形で記述し、結果として64の記述子が生じる。このように、各キャッシュラインは、そのCAS識別子およびRAS識別子によって識別される。
レジスタファイル306に示したRAS/CASファイルの内容は、デコーダ500の出力からのものであり、デコーダ500は、既存のキャッシュレジスタから、または浮動小数点計算等の他の動作ユニットから、それらのユニットの動作遅延を増すことなく、RAS/CASラインを発生した以前の加算器/ALUの動作の結果を復号するものであることを注記しておく。デコーダ500の動作の詳細は、以下で図5を参照して論じる。
特定のキャッシュラインを予め記述するために、レジスタファイル306にあるRAS/CASデータを復号するので、特定のキャッシュラインを決定するための図1のグループ122の論理は、もはや必要ではなく、グループ322の単一レベルの論理によって置換される。これらの要素については、以下で詳細に論じる。
ここで図4を参照して、レジスタファイル306に示すデータの意味について検討する。図4において、ブロック402は、図1に示すシステムが利用するような、通常のレジスタファイルアドレス表現を示す。アドレスラインは、図1におけるレジスタA(RA)に格納されている符号化ベースアドレスを含む。符号化RASおよび符号化CAS、ならびにライン内バイトアドレス(図1のワードセレクタオフセット112)は、図1におけるレジスタB(RB)に格納されている。図1では、符号化RASおよび符号化CASは、インデックス110として合わせて示している。すなわち、符号化RASが3ビットを含み、符号化CASが3ビットを有すると仮定すると、RASおよびCAS符号化ビットを合わせて、6の符号化ビットが生じる。
図4に戻ると、ブロック404は、本発明の好適な実施形態による変更レジスタファイルアドレスのイメージを示す。ベースアドレスおよびライン内バイトアドレスは符号化されたままであるが、RASおよびCASビットは復号形態で格納され、それらは直接、図3に示す、単項加算器(unary adder)として動作するRAS回転装置308およびCAS回転装置310に渡すことができる。ブロック404に示す復号RASビットは、図3に示した復号RAS回転データ304および復号RASデータ312の双方を含み、ブロック404に示す復号CASビットは、図3に示した復号CAS回転データ314および復号CASデータ316の双方を含む。
再び図3に戻ると、復号RAS回転データ304および復号CAS回転データ314は、8ウェイラッチマルチプレクサ/回転装置308および310をそれぞれ制御して、適切なキャッシュラインにRASおよびCAS信号を設定する。RASおよびCASラインは、論理的にAND論理302において組み合わされ、結果として64ラインのキャッシュライン選択がL1キャッシュ116に出力される。64ラインのうち1つだけが論理的に一意(ハイまたはロー)であり、所望のキャッシュラインを選択する。ワードセレクタ312は、図1のオフセット112について説明したのと同様に動作する。
復号RASおよびCASデータ(304、312、314、316)は、図5に示すようなデコーダ500の出力からのものである。例えば、RASデータを記述する符号化2進数「011」がデコーダ500に入力される。デコーダ500からの出力は8ライン(0〜7)である。「011」が入力されると、ライン「3」上の信号が論理的に一意の値(好ましくはハイ)に変わるが、他の全てのライン(7、6、5、4、2、1、0)上の出力はローのままである。
回転装置のキャリーインが生じる場合があるが、かかる場合が発生するのは、通常、時間的に10%未満である。このため、好適な実施形態では、RASおよびCASのためのキャリーイン加算器は用いられない。しかしながら、代替的に、かかるキャリーイン加算器を組み込んで、回転装置308および310への入力のためのキャリーインを発生することができる。しかしながら、好適な実施形態では、図6に示す論理を用いてキャリーインを扱う。図6に示すように、64ラインキャッシュライン選択は、図3を参照して上述したように発生する。しかしながら、CAS’マルチクレプサ/回転装置610は、復号CAS316を1つの追加の位置だけ回転させたCASマルチプレクサ/回転装置310である。この単一の追加の回転が、キャリーインに対応し、結果として適切なキャッシュライン信号が生じる。キャリーインがあるか無いかの判定は、好ましくは、64ラインキャッシュライン選択の判定と同時に行う。従って、キャリーインがあると想定する場合には論理600aを用い、キャリーインが無いと想定する場合には論理600bを用いる。キャリーインがあるか無いかの判定を行ったら、2ウェイ選択バッファ608が、600aからのAND論理302aまたは600bからのAND論理302bのどちらかの出力を選択する。この選択は、キャリーイン選択制御630または632によって制御される。キャリーインがある場合は、左側のキャリーイン選択制御630によりAND論理302aが選択され、キャリーインが無い場合は、右側のキャリーイン選択制御によりAND論理302bが選択される。選択されたAND論理出力は、L1キャッシュアレイ116に出力される。
図6において、2ウェイ選択バッファ608は、好ましくは、物理的にAND論理とL1キャッシュアレイ116とのほぼ中間に位置し、AND論理302は、物理的に回転装置と2ウェイ選択バッファ608とのほぼ中間に配置することを注記しておく。回転装置とL1キャッシュアレイ116との間の距離は、必要な配線距離に固有の配線容量を駆動するためにいずれにしてもドライバが必要であり、これによってキャッシュアレイ116にアクセスする際にAND論理302および2ウェイ選択バッファ608による追加の遅延時間が生じないようなものである。
従って、本発明は、L1キャッシュをインデックスするために用いる下位有効アドレス発生の性質を利用する。この性質は、有効アドレスを形成するためにベースレジスタに加えられるほとんど全ての変位がほとんどの商用の作業負荷では非常に短く、データキャッシュアクセスを開始するために必要なのは、典型的に5または6というごく少数の有効アドレスビットのみである、というポジションを支持するための履歴データを含む。更に、かかる変位は通常、一定であり、特にビットの下位(通常ゼロ)について、ベースレジスタ値は反復性が高く、下位8〜12ビットの有効アドレス加算からのキャリーアウトは極めて予測可能性が高い。このように、(有効アドレスからの)復号キャッシュラインアクセスビットを、上述のように格納し操作して、これによってキャッシュラインにアクセスする際の遅延を小さくする。
本発明の態様について、コンピュータプロセッサおよびソフトウエアに関して説明したが、本発明の少なくとも一部の態様は、代替的に、データ格納システムまたはコンピュータシステムと共に用いるプログラムプロダクトとして実施可能であることは理解されよう。本発明の機能を規定するプログラムを、様々な信号担持媒体を介して、データ格納システムまたはコンピュータシステムに送出することができる。この信号担持媒体には、限定ではないが、書き込み不能格納媒体(例えばCD−ROM)、書き込み可能格納媒体(例えばフレキシブルディスク、ハードディスクドライブ、読み取り/書き込みCD−ROM、光学媒体)、ならびに、イーサネット(登録商標)を含むコンピュータおよび電話ネットワーク等の通信媒体が含まれる。従って、かかる信号担持媒体は、本発明の方法機能を指示するコンピュータ可読命令を担持または符号化している場合、本発明の代替的な実施形態を表すことは理解されよう。更に、本発明は、本明細書中に記載したような、ハードウエア、ソフトウエア、もしくはソフトウエアおよびハードウエアの組み合わせの形態の手段、またはそれらの均等物を有するシステムによって実施可能であることは理解されよう。
本発明について、好適な実施形態を参照して具体的に図示し説明したが、当業者には、本発明の精神および範囲から逸脱することなく、形態および詳細において様々な変更を加え得ることは理解されよう。
従来技術によって教示されるような、キャッシュラインを選択するためのシステムを示す。 本発明によって用いられるデータ処理システムを示す。 格納した復号情報を用いてキャッシュラインを選択するために本発明によって用いられる論理を示す。 本発明に従って復号変位ビットを格納するレジスタの例示的な内容を示す。 本発明によって用いられるデコーダを示す。 キャッシュアドレスを復号する場合にキャリーインを処理するために用いられる論理を示す。

Claims (12)

  1. キャッシュメモリにおいてキャッシュラインにアクセスするための方法であって、
    キャッシュラインを識別する変位を復号するステップと、
    復号変位をレジスタに格納するステップと、
    前記復号変位に従って前記キャッシュラインを選択するステップと、
    を具備する方法。
  2. 前記復号変位を回転させて、別のキャッシュラインにアクセスする別の選択ラインを選択的にイネーブルするステップを更に具備する、請求項1の方法。
  3. 前記復号変位は、復号行アドレス選択(RAS)成分および列アドレス選択(CAS)成分を含むことを特徴とする、請求項1の方法。
  4. 前記キャッシュはレベル1キャッシュメモリである、請求項1の方法。
  5. キャッシュメモリを有するデータ処理システムであって、
    キャッシュラインを識別する変位を復号するための手段と、
    復号変位をレジスタに格納するための手段と、
    前記復号変位に従って前記キャッシュラインを選択するための手段と、
    を具備するデータ処理システム。
  6. 前記復号変位を回転させて、別のキャッシュラインにアクセスする別の選択ラインを選択的にイネーブルするための手段を更に具備する、請求項5のデータ処理システム。
  7. 前記復号変位は、復号行アドレス選択(RAS)成分および列アドレス選択(CAS)成分を含む、請求項5のデータ処理システム。
  8. 前記キャッシュはレベル1キャッシュメモリである、請求項5のデータ処理システム。
  9. キャッシュラインセレクタであって、
    キャッシュラインを識別するための復号変位データを含むレジスタファイルと、
    前記レジスタファイルからの複数の出力ラインと、
    前記複数の出力ラインを介して前記レジスタファイルに結合されたキャッシュメモリと、
    を具備し、前記複数の出力ラインを介して前記キャッシュメモリに前記復号変位データを送信することによって、前記変位データにより前記キャッシュラインのアクセスが選択的に行われるキャッシュラインセレクタ。
  10. 前記復号変位データは、復号行アドレス選択(RAS)成分および列アドレス選択(CAS)成分を含み、前記キャシュラインセレクタは、更に、前記レジスタファイルに結合された第1の回転装置と第2の回転装置を具備し、前記第1の回転装置は、前記RAS成分を回転させ、前記第2の回転装置は前記CAS成分を回転させて、前記キャッシュメモリ内のキャッシュラインを選択する、請求項9のキャッシュラインセレクタ。
  11. 前記RASおよびCAS成分を組み合わせて、前記復号変位に従ってキャッシュラインの選択を行うための論理を更に具備する、請求項10のキャッシュラインセレクタ。
  12. 前記CAS成分を回転させる第3の回転装置であって、キャリーインが生じる場合に備えて、投機的に、前記CAS成分を1つ追加的に回転させるための第3の回転装置と、
    キャリーインが生じたか否かに従って、前記第1および第2の回転装置の出力または前記第1および第3の回転装置の出力を選択するためのセレクタと、
    を更に具備する、請求項11のキャッシュラインセレクタ。
JP2003365271A 2002-10-29 2003-10-24 キャッシュラインにアクセスするための方法、システム、コンピュータ使用可能媒体、およびキャッシュラインセレクタ Expired - Fee Related JP3896356B2 (ja)

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
JP2004152291A JP2004152291A (ja) 2004-05-27
JP3896356B2 true JP3896356B2 (ja) 2007-03-22

Family

ID=32107384

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003365271A Expired - Fee Related JP3896356B2 (ja) 2002-10-29 2003-10-24 キャッシュラインにアクセスするための方法、システム、コンピュータ使用可能媒体、およびキャッシュラインセレクタ

Country Status (4)

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

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101165132B1 (ko) * 2007-01-31 2012-07-12 콸콤 인코포레이티드 멀티-레벨 캐시 계층에서의 캐스트아웃들을 감소시키기 위한 장치 및 방법들
US8108621B2 (en) * 2009-05-27 2012-01-31 Via Technologies, Inc. Data cache with modified bit array
US8533400B2 (en) 2011-01-28 2013-09-10 Freescale Semiconductor, Inc. Selective memory access to different local memory ports and method thereof
US8904109B2 (en) 2011-01-28 2014-12-02 Freescale Semiconductor, Inc. Selective cache access control apparatus 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

Also Published As

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

Similar Documents

Publication Publication Date Title
US20220138329A1 (en) Microprocessor pipeline circuitry to support cryptographic computing
US6496902B1 (en) Vector and scalar data cache for a vector multiprocessor
US8793433B2 (en) Digital data processing apparatus having multi-level register file
EP0381323B1 (en) Method and apparatus for increasing the data storage rate of a computer system
EP0734553B1 (en) Split level cache
US6804799B2 (en) Using type bits to track storage of ECC and predecode bits in a level two cache
US6138209A (en) Data processing system and multi-way set associative cache utilizing class predict data structure and method thereof
US8078828B1 (en) Memory mapped register file
US5778407A (en) Methods and apparatus for determining operating characteristics of a memory element based on its physical location
KR100316505B1 (ko) 프로세서에 데이타를 제공하기 위한 캐시 및 캐시로부터 프로세서에 데이타를 제공하기 위한 방법
US6587927B2 (en) Data processor having cache memory
US5960455A (en) Scalable cross bar type storage controller
US8046568B2 (en) Microprocessor with integrated high speed memory
JP2004070958A (ja) エンディアン非依存モードで動作するシステム及び方法
JP2010097557A (ja) セットアソシアティブ方式のキャッシュ装置及びキャッシュ方法
EP0730228B1 (en) ECC protected memory organization with pipelined read-modify-write accesses
JP3896356B2 (ja) キャッシュラインにアクセスするための方法、システム、コンピュータ使用可能媒体、およびキャッシュラインセレクタ
US5732405A (en) Method and apparatus for performing a cache operation in a data processing system
JPH10143431A (ja) マイクロプロセッサおよびコンピュータシステムにおけるデータのキャッシング方法
US7134000B2 (en) Methods and apparatus for instruction alignment including current instruction pointer logic responsive to instruction length information
EP1596280A1 (en) Pseudo register file write ports
US6507531B1 (en) Cache column multiplexing using redundant form addresses
IE901526A1 (en) Method and apparatus for increasing the data storage rate of¹a computer system having a predefined data path width

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060613

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060911

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060914

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061129

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061218

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091222

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees