JP3062138B2 - マイクロプロセッサ集積回路で使用するためのキャッシュ・サブアレイの方法および装置 - Google Patents
マイクロプロセッサ集積回路で使用するためのキャッシュ・サブアレイの方法および装置Info
- Publication number
- JP3062138B2 JP3062138B2 JP9293743A JP29374397A JP3062138B2 JP 3062138 B2 JP3062138 B2 JP 3062138B2 JP 9293743 A JP9293743 A JP 9293743A JP 29374397 A JP29374397 A JP 29374397A JP 3062138 B2 JP3062138 B2 JP 3062138B2
- Authority
- JP
- Japan
- Prior art keywords
- cache
- memory
- array
- microprocessor
- cache memory
- 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
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
-
- 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/0893—Caches characterised by their organisation or structure
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7839—Architectures of general purpose stored program computers comprising a single central processing unit with memory
- G06F15/7842—Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
- G06F15/7846—On-chip cache and off-chip main memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/02—Disposition of storage elements, e.g. in the form of a matrix array
- G11C5/025—Geometric lay-out considerations of storage- and peripheral-blocks in a semiconductor storage device
-
- 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/60—Details of cache memory
- G06F2212/601—Reconfiguration of cache memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【0001】
【発明の属する技術分野】本発明は、全般的には集積回
路技術に関し、具体的には、半導体メモリの設計に関す
る。具体的に言うと、本発明は、半導体基板上の高速高
密度キャッシュ・メモリ・セルのアレイの配置に関す
る。さらに具体的に言うと、本発明は、マイクロプロセ
ッサ集積回路用の、可変メモリ・キャッシュ・サイズを
有する効率的な集積回路チップ設計に関する。
路技術に関し、具体的には、半導体メモリの設計に関す
る。具体的に言うと、本発明は、半導体基板上の高速高
密度キャッシュ・メモリ・セルのアレイの配置に関す
る。さらに具体的に言うと、本発明は、マイクロプロセ
ッサ集積回路用の、可変メモリ・キャッシュ・サイズを
有する効率的な集積回路チップ設計に関する。
【0002】
【従来の技術】コンピュータ・システムは、通常は、メ
モリ階層を定義する複数の異なる記憶レイヤを有する。
これらのレイヤには、通常は、中央プロセッサ・ユニッ
ト内のレジスタ、主システム・メモリおよび、ディスク
などの大容量記憶装置が含まれる。これらの異なるレベ
ルの性能は、全く異なる。プロセッサ・レジスタは、シ
ステム・メモリよりはるかに高速であり、システム・メ
モリは、大容量記憶装置へのアクセスよりかなり高速で
ある。
モリ階層を定義する複数の異なる記憶レイヤを有する。
これらのレイヤには、通常は、中央プロセッサ・ユニッ
ト内のレジスタ、主システム・メモリおよび、ディスク
などの大容量記憶装置が含まれる。これらの異なるレベ
ルの性能は、全く異なる。プロセッサ・レジスタは、シ
ステム・メモリよりはるかに高速であり、システム・メ
モリは、大容量記憶装置へのアクセスよりかなり高速で
ある。
【0003】システム性能を改善するために、小容量の
高速メモリからなるキャッシュが、中央プロセッサとシ
ステム・メモリの間で使用される。キャッシュは、コン
ピュータ・プログラム内の参照の局所性の現象を利用し
て、再利用される可能性が高いデータを高速メモリに記
憶する。
高速メモリからなるキャッシュが、中央プロセッサとシ
ステム・メモリの間で使用される。キャッシュは、コン
ピュータ・プログラム内の参照の局所性の現象を利用し
て、再利用される可能性が高いデータを高速メモリに記
憶する。
【0004】空間効率のよい形でのマイクロプロセッサ
・メモリ・チップの配置は、集積回路設計者が追求する
目標である。集積回路、特にマイクロプロセッサの設計
では、マイクロプロセッサとキャッシュ・メモリの間の
処理時間を減らすために、キャッシュ・メモリをできる
限りマイクロプロセッサのコアの近くに保つことが非常
に望ましい。
・メモリ・チップの配置は、集積回路設計者が追求する
目標である。集積回路、特にマイクロプロセッサの設計
では、マイクロプロセッサとキャッシュ・メモリの間の
処理時間を減らすために、キャッシュ・メモリをできる
限りマイクロプロセッサのコアの近くに保つことが非常
に望ましい。
【0005】メモリ・キャッシュは、頻繁に使用される
データ値が高速アクセスのために複製される特殊なメモ
リ・サブシステムである。メモリ・キャッシュには、頻
繁にアクセスされるRAM位置の内容と、そのデータ項
目が記憶されているアドレスが記憶される。プロセッサ
がメモリ内のあるアドレスを参照する時に、メモリ・キ
ャッシュは、そのアドレスを保持しているかどうかを調
べる。そのアドレスを保持している場合、そのデータを
プロセッサに返し、保持していない場合は、通常のメモ
リ・アクセスが行われる。メモリ・キャッシュは、キャ
ッシュ・メモリが必ず主RAMメモリより高速なので、
マイクロプロセッサ速度と比較してRAMアクセスが低
速の時に有用である。
データ値が高速アクセスのために複製される特殊なメモ
リ・サブシステムである。メモリ・キャッシュには、頻
繁にアクセスされるRAM位置の内容と、そのデータ項
目が記憶されているアドレスが記憶される。プロセッサ
がメモリ内のあるアドレスを参照する時に、メモリ・キ
ャッシュは、そのアドレスを保持しているかどうかを調
べる。そのアドレスを保持している場合、そのデータを
プロセッサに返し、保持していない場合は、通常のメモ
リ・アクセスが行われる。メモリ・キャッシュは、キャ
ッシュ・メモリが必ず主RAMメモリより高速なので、
マイクロプロセッサ速度と比較してRAMアクセスが低
速の時に有用である。
【0006】半導体加工技法の進歩と、メモリ・セル設
計の改良によって、1メガ・ビットを超えるますます増
加するメモリ容量を有する半導体RAMチップを製造で
きるようになった。このようなメモリの従来の構造は、
メモリ・セルのロウとカラムの正方形のアレイである。
情報の1ビットをアドレッシングするには、まずロウ・
アドレス・ストローブ信号と共にロウ・アドレスをメモ
リ・チップに送る。このロウ・アドレスがデコードされ
て、メモリ・セルの選択されたロウを横切って延びる
「ワード線」の信号がアサートされる。これに応答し
て、そのロウの各セルが、アレイのセルのカラムに沿っ
て延びるそれぞれのビット線に、記憶された情報の信号
をアサートする。この時間の間に、アドレッシングされ
るビット線を示すカラム・アドレスが、リード信号また
はライト信号と共にメモリ・チップに送られる。リード
動作の場合、情報信号が、アドレッシングされたビット
線から読み取られ、入出力線にアサートされる。ライト
動作の場合、入出力線からの情報信号が、アドレッシン
グされたビット線でアサートされ、アドレッシングされ
たメモリ・セルに書き込まれる。
計の改良によって、1メガ・ビットを超えるますます増
加するメモリ容量を有する半導体RAMチップを製造で
きるようになった。このようなメモリの従来の構造は、
メモリ・セルのロウとカラムの正方形のアレイである。
情報の1ビットをアドレッシングするには、まずロウ・
アドレス・ストローブ信号と共にロウ・アドレスをメモ
リ・チップに送る。このロウ・アドレスがデコードされ
て、メモリ・セルの選択されたロウを横切って延びる
「ワード線」の信号がアサートされる。これに応答し
て、そのロウの各セルが、アレイのセルのカラムに沿っ
て延びるそれぞれのビット線に、記憶された情報の信号
をアサートする。この時間の間に、アドレッシングされ
るビット線を示すカラム・アドレスが、リード信号また
はライト信号と共にメモリ・チップに送られる。リード
動作の場合、情報信号が、アドレッシングされたビット
線から読み取られ、入出力線にアサートされる。ライト
動作の場合、入出力線からの情報信号が、アドレッシン
グされたビット線でアサートされ、アドレッシングされ
たメモリ・セルに書き込まれる。
【0007】マイクロプロセッサ・メモリ・キャッシュ
用の従来のメモリ・アレイ設計の実践では、サブアレイ
の直線のグリッド配置が必要である。このようなサブア
レイは、しばしば鏡像化されるが、回転されることは滅
多にない。図1に、メモリ・チップ用の直線グリッド配
置を示す。直線グリッド10は、直線グリッド10の対
向する領域にサブアレイ12を配置されている。方向マ
ーカー14は、各サブアレイ12の方向を示す。半共用
サポート回路領域16によって、サブアレイ12のグル
ープが互いに分離される。場合によっては、マイクロプ
ロセッサは、チップのフロアプランに単一の大きいオブ
ジェクトを組み込むという問題を軽減するために、その
メモリ・キャッシュを2つないし4つのセクションに分
割される。図2に、マイクロプロセッサ・コア専用の領
域22とメモリ・キャッシュ専用の領域24を有するマ
イクロプロセッサ・フロアプラン20を示す。領域24
は、2つのセクションに分割されている。
用の従来のメモリ・アレイ設計の実践では、サブアレイ
の直線のグリッド配置が必要である。このようなサブア
レイは、しばしば鏡像化されるが、回転されることは滅
多にない。図1に、メモリ・チップ用の直線グリッド配
置を示す。直線グリッド10は、直線グリッド10の対
向する領域にサブアレイ12を配置されている。方向マ
ーカー14は、各サブアレイ12の方向を示す。半共用
サポート回路領域16によって、サブアレイ12のグル
ープが互いに分離される。場合によっては、マイクロプ
ロセッサは、チップのフロアプランに単一の大きいオブ
ジェクトを組み込むという問題を軽減するために、その
メモリ・キャッシュを2つないし4つのセクションに分
割される。図2に、マイクロプロセッサ・コア専用の領
域22とメモリ・キャッシュ専用の領域24を有するマ
イクロプロセッサ・フロアプラン20を示す。領域24
は、2つのセクションに分割されている。
【0008】産業界で一般に利用されてはいるが、図1
および図2に示されたものなどの直線配置は、空間効率
が悪く、低速のメモリ機能がもたらされる。たとえば図
2では、メモリ・キャッシュが、マイクロプロセッサの
近くに配置されてはいるが、2つのメモリ・キャッシュ
・セクションだけに分割される。現在標準的に実践され
ている直線配置を維持するために、図2のマイクロプロ
セッサ設計空間には、選択肢がほとんどない。メモリ・
キャッシュは、より小さい領域に分割できるが、マイク
ロプロセッサ・コア自体は一定のままになるので、直線
のキャッシュ設計を維持しながら実現できるメモリ・キ
ャッシュ配置の数は限られる。固定されたマイクロプロ
セッサ・フロアプランとキャッシュ設計の直線配置を前
提にすると、キャッシュ・サイズの大幅な変更は、達成
が困難である。図2では、主に3つのメモリ・キャッシ
ュ配置が可能である。すなわち、図2に示された設計を
維持するか、2つのメモリ・キャッシュを互いに平行に
配置し、その1側面にマイクロプロセッサ・コアを配置
するか、マイクロプロセッサ・コアを間に挟んでメモリ
・キャッシュを互いに対向するように配置するかのいず
れかである。
および図2に示されたものなどの直線配置は、空間効率
が悪く、低速のメモリ機能がもたらされる。たとえば図
2では、メモリ・キャッシュが、マイクロプロセッサの
近くに配置されてはいるが、2つのメモリ・キャッシュ
・セクションだけに分割される。現在標準的に実践され
ている直線配置を維持するために、図2のマイクロプロ
セッサ設計空間には、選択肢がほとんどない。メモリ・
キャッシュは、より小さい領域に分割できるが、マイク
ロプロセッサ・コア自体は一定のままになるので、直線
のキャッシュ設計を維持しながら実現できるメモリ・キ
ャッシュ配置の数は限られる。固定されたマイクロプロ
セッサ・フロアプランとキャッシュ設計の直線配置を前
提にすると、キャッシュ・サイズの大幅な変更は、達成
が困難である。図2では、主に3つのメモリ・キャッシ
ュ配置が可能である。すなわち、図2に示された設計を
維持するか、2つのメモリ・キャッシュを互いに平行に
配置し、その1側面にマイクロプロセッサ・コアを配置
するか、マイクロプロセッサ・コアを間に挟んでメモリ
・キャッシュを互いに対向するように配置するかのいず
れかである。
【0009】メモリ・キャッシュのサイズを倍にするた
めには、直線のアレイ配置の維持と、適度に正方形のチ
ップを維持することが、マイクロプロセッサ・コア空間
の分裂に繋がる。少なくとも、図2の直線配置でメモリ
・キャッシュを追加または削除すると、マイクロプロセ
ッサ・コア自体の修正が必要になるが、これは高価で時
間を消費する案である。設計者が直面する課題は、メモ
リ・キャッシュ配置の選択肢がはるかに多いマイクロプ
ロセッサ・フロアプランを考案することである。今日ま
で使用されている直線配置では、この課題を克服できな
い。
めには、直線のアレイ配置の維持と、適度に正方形のチ
ップを維持することが、マイクロプロセッサ・コア空間
の分裂に繋がる。少なくとも、図2の直線配置でメモリ
・キャッシュを追加または削除すると、マイクロプロセ
ッサ・コア自体の修正が必要になるが、これは高価で時
間を消費する案である。設計者が直面する課題は、メモ
リ・キャッシュ配置の選択肢がはるかに多いマイクロプ
ロセッサ・フロアプランを考案することである。今日ま
で使用されている直線配置では、この課題を克服できな
い。
【0010】
【発明が解決しようとする課題】本発明の目的は、集積
回路技術を提供することである。
回路技術を提供することである。
【0011】本発明のもう1つの目的は、半導体メモリ
用の設計を提供することである。
用の設計を提供することである。
【0012】本発明のもう1つの目的は、半導体基板上
の高速高密度キャッシュ・メモリ・セルのアレイの配置
を提供することである。
の高速高密度キャッシュ・メモリ・セルのアレイの配置
を提供することである。
【0013】本発明のもう1つの目的は、さまざまなメ
モリ・キャッシュ・アレイを提供する効率的な集積回路
チップ設計を提供することである。
モリ・キャッシュ・アレイを提供する効率的な集積回路
チップ設計を提供することである。
【0014】
【課題を解決するための手段】上記および他の目的は、
次の説明に従って達成される。マイクロプロセッサ集積
回路に使用されるキャッシュ・サブアレイの方法および
装置を説明する。プロセッサ・ユニットが、マイクロプ
ロセッサ集積回路の中央領域内に配置され、周辺領域
が、キャッシュ・メモリ・アレイ領域として指定され、
中央領域を囲み、所定の数のキャッシュ・メモリ・サブ
アレイが、可変サイズ・キャッシュ・メモリ・アレイを
効率的に作成できるように、周辺領域に配置される。キ
ャッシュ・メモリ・サブアレイのそれぞれには、1キャ
ッシュ・ワードのうちの固定された部分が含まれる。マ
イクロプロセッサ集積回路自体は、可変サイズのモジュ
ラー・キャッシュ・メモリ・アレイを有し、プロセッサ
・ユニットをその中に配置された中央領域と、中央領域
を囲むキャッシュ・メモリ・アレイ領域として指定され
た周辺領域と、キャッシュ・メモリ・サブアレイが可変
サイズのモジュラー・キャッシュ・メモリ・アレイを構
成するように周辺領域に配置された所定の数のキャッシ
ュ・メモリ・サブアレイとを含む。
次の説明に従って達成される。マイクロプロセッサ集積
回路に使用されるキャッシュ・サブアレイの方法および
装置を説明する。プロセッサ・ユニットが、マイクロプ
ロセッサ集積回路の中央領域内に配置され、周辺領域
が、キャッシュ・メモリ・アレイ領域として指定され、
中央領域を囲み、所定の数のキャッシュ・メモリ・サブ
アレイが、可変サイズ・キャッシュ・メモリ・アレイを
効率的に作成できるように、周辺領域に配置される。キ
ャッシュ・メモリ・サブアレイのそれぞれには、1キャ
ッシュ・ワードのうちの固定された部分が含まれる。マ
イクロプロセッサ集積回路自体は、可変サイズのモジュ
ラー・キャッシュ・メモリ・アレイを有し、プロセッサ
・ユニットをその中に配置された中央領域と、中央領域
を囲むキャッシュ・メモリ・アレイ領域として指定され
た周辺領域と、キャッシュ・メモリ・サブアレイが可変
サイズのモジュラー・キャッシュ・メモリ・アレイを構
成するように周辺領域に配置された所定の数のキャッシ
ュ・メモリ・サブアレイとを含む。
【0015】
【発明の実施の形態】ここで図面、具体的には図3を参
照すると、本発明に従って利用できるマイクロプロセッ
サのフロアプラン30が示されている。
照すると、本発明に従って利用できるマイクロプロセッ
サのフロアプラン30が示されている。
【0016】キャッシュ32は、複数のサブアレイ34
に編成される。図3に示されたキャッシュ32は、大容
量オンボード・マイクロプロセッサ・キャッシュである
(すなわち、キャッシュが実際にマイクロプロセッサ
「内」に配置される)。キャッシュ32は、主メモリ
(図示せず)と共に、すぐにアドレッシングされる可能
性が最も高いと思われるアドレスにキャッシュの一部を
動的に割り当てる、特殊な高速メモリである。キャッシ
ュ32には、アドレス空間の冗長なコピーを格納でき、
このアドレス空間は、全体を主メモリに格納できる。キ
ャッシュ32は、アソシアティブまたは連想式である、
すなわち、メモリ位置のアドレスが、その内容と共に記
憶される。メモリ位置から直接にデータを読み取るので
はなく、キャッシュは、アドレスを与えられ、要求され
たデータまたはそうでないデータを提供することによっ
て応答する。キャッシュ32は、ヒットを示すことによ
って、正しいデータを提供することを示す。そうでない
場合には、キャッシュはミスを示す。ミスの際には、補
助記憶装置に対してメモリ・アクセスが実行され、キャ
ッシュは、新しいデータを含むように更新される。キャ
ッシュ32は、メモリの最も活動的な部分を保持するこ
とを目的とし、ハードウェアが、主メモリのうちでキャ
ッシュ32に記憶される部分を動的に選択する。キャッ
シュ32が満杯の時には、新しいデータの記憶によっ
て、同じ量の古いデータが削除される。マイクロプロセ
ッサ・コア39は、フロアプラン30内の中央に配置さ
れる。電子「機構」(すなわち、集積マイクロプロセッ
サ・チップ)は、マイクロプロセッサ・コア39に配置
される。キャッシュ32は、本質的には、単純なメモリ
・アレイであるサブアレイ34の集合である。
に編成される。図3に示されたキャッシュ32は、大容
量オンボード・マイクロプロセッサ・キャッシュである
(すなわち、キャッシュが実際にマイクロプロセッサ
「内」に配置される)。キャッシュ32は、主メモリ
(図示せず)と共に、すぐにアドレッシングされる可能
性が最も高いと思われるアドレスにキャッシュの一部を
動的に割り当てる、特殊な高速メモリである。キャッシ
ュ32には、アドレス空間の冗長なコピーを格納でき、
このアドレス空間は、全体を主メモリに格納できる。キ
ャッシュ32は、アソシアティブまたは連想式である、
すなわち、メモリ位置のアドレスが、その内容と共に記
憶される。メモリ位置から直接にデータを読み取るので
はなく、キャッシュは、アドレスを与えられ、要求され
たデータまたはそうでないデータを提供することによっ
て応答する。キャッシュ32は、ヒットを示すことによ
って、正しいデータを提供することを示す。そうでない
場合には、キャッシュはミスを示す。ミスの際には、補
助記憶装置に対してメモリ・アクセスが実行され、キャ
ッシュは、新しいデータを含むように更新される。キャ
ッシュ32は、メモリの最も活動的な部分を保持するこ
とを目的とし、ハードウェアが、主メモリのうちでキャ
ッシュ32に記憶される部分を動的に選択する。キャッ
シュ32が満杯の時には、新しいデータの記憶によっ
て、同じ量の古いデータが削除される。マイクロプロセ
ッサ・コア39は、フロアプラン30内の中央に配置さ
れる。電子「機構」(すなわち、集積マイクロプロセッ
サ・チップ)は、マイクロプロセッサ・コア39に配置
される。キャッシュ32は、本質的には、単純なメモリ
・アレイであるサブアレイ34の集合である。
【0017】図3のサブアレイ34の数は、通常は8、
16または32である。サブアレイ34は、マイクロプ
ロセッサ・コア39の周辺36に配置される。サブアレ
イ34は、ビットスライス論理編成を有することが好ま
しい。アドレッシングは、全体に分配されるが、各サブ
アレイ34には、1キャッシュ・ワードの一部だけが含
まれる。サブアレイ34は、いずれもが論理的にも物理
的にも同一である。サブアレイは、完全に自己完結型
(すなわち、復号回路、マルチプレクサ回路およびセン
スアンプ回路)である。サブアレイ34は、マイクロプ
ロセッサ・コア39の周辺に沿って、直線グリッド配置
ではないさまざまな鏡像および回転の状態で配置され
て、チップの実際の周辺31を形成する。デフォルトの
金属方向は、サブアレイ34上で逆にすることができ
る。方向マーカー37によって、サブアレイ34の向き
を示す。図3のフロアプラン30は、全体的に正方形の
形状に形成されるが、これは、電子集積回路産業で一般
に設計される直線配置とは実質的に異なる。
16または32である。サブアレイ34は、マイクロプ
ロセッサ・コア39の周辺36に配置される。サブアレ
イ34は、ビットスライス論理編成を有することが好ま
しい。アドレッシングは、全体に分配されるが、各サブ
アレイ34には、1キャッシュ・ワードの一部だけが含
まれる。サブアレイ34は、いずれもが論理的にも物理
的にも同一である。サブアレイは、完全に自己完結型
(すなわち、復号回路、マルチプレクサ回路およびセン
スアンプ回路)である。サブアレイ34は、マイクロプ
ロセッサ・コア39の周辺に沿って、直線グリッド配置
ではないさまざまな鏡像および回転の状態で配置され
て、チップの実際の周辺31を形成する。デフォルトの
金属方向は、サブアレイ34上で逆にすることができ
る。方向マーカー37によって、サブアレイ34の向き
を示す。図3のフロアプラン30は、全体的に正方形の
形状に形成されるが、これは、電子集積回路産業で一般
に設計される直線配置とは実質的に異なる。
【0018】サブアレイ34の粒度と個数に応じて、広
範囲のキャッシュ・サイズ設計を、マイクロプロセッサ
・コア・フロアプランのわずかな破壊だけで提供でき
る。たとえば、キャッシュのサイズは、可能なサブアレ
イの数を2倍にし、再配置することによって、マイクロ
プロセッサ・コアの修正を必要とせずに2倍にできる。
この設計は、直線配置に制限されないので、設計空間に
関して広範囲のメモリ・キャッシュ配置を使用できる。
範囲のキャッシュ・サイズ設計を、マイクロプロセッサ
・コア・フロアプランのわずかな破壊だけで提供でき
る。たとえば、キャッシュのサイズは、可能なサブアレ
イの数を2倍にし、再配置することによって、マイクロ
プロセッサ・コアの修正を必要とせずに2倍にできる。
この設計は、直線配置に制限されないので、設計空間に
関して広範囲のメモリ・キャッシュ配置を使用できる。
【0019】図3の配置に対する変形を、図4に示す。
図4には、図3と同一のマイクロプロセッサ・コアの周
辺にサブアレイを配置されたメモリ・キャッシュを含む
マイクロプロセッサの第2のフロアプランが示されてい
る。マイクロプロセッサのフロアプラン40を、図4に
示す(可能なタイリング順列の数は、サブアレイ44が
多数であり、約2:3ないし約3:4の範囲の縦横比を
有する時に、特に多くなる)。図4では、大容量オンボ
ード・マイクロプロセッサ・キャッシュ42が、多数の
サブアレイ44に編成されている。サブアレイ44は、
マイクロプロセッサ・コア49の周辺46に配置され
る。サブアレイ44は、ビットスライス論理編成を有す
る。アドレッシングは、全体に分配されるが、各サブア
レイ44には、1キャッシュ・ワードの一部だけが含ま
れる。サブアレイ44は、いずれもが論理的にも物理的
にも同一である。サブアレイは、完全に自己完結型であ
る。サブアレイ44は、マイクロプロセッサ・コア49
の周辺に沿って、直線グリッド配置ではないさまざまな
鏡像および回転の状態で配置されて、チップの実際の周
辺41を形成する。デフォルトの金属方向は、サブアレ
イ44上で逆にすることができる。方向マーカー47に
よって、サブアレイ44の向きを示す。
図4には、図3と同一のマイクロプロセッサ・コアの周
辺にサブアレイを配置されたメモリ・キャッシュを含む
マイクロプロセッサの第2のフロアプランが示されてい
る。マイクロプロセッサのフロアプラン40を、図4に
示す(可能なタイリング順列の数は、サブアレイ44が
多数であり、約2:3ないし約3:4の範囲の縦横比を
有する時に、特に多くなる)。図4では、大容量オンボ
ード・マイクロプロセッサ・キャッシュ42が、多数の
サブアレイ44に編成されている。サブアレイ44は、
マイクロプロセッサ・コア49の周辺46に配置され
る。サブアレイ44は、ビットスライス論理編成を有す
る。アドレッシングは、全体に分配されるが、各サブア
レイ44には、1キャッシュ・ワードの一部だけが含ま
れる。サブアレイ44は、いずれもが論理的にも物理的
にも同一である。サブアレイは、完全に自己完結型であ
る。サブアレイ44は、マイクロプロセッサ・コア49
の周辺に沿って、直線グリッド配置ではないさまざまな
鏡像および回転の状態で配置されて、チップの実際の周
辺41を形成する。デフォルトの金属方向は、サブアレ
イ44上で逆にすることができる。方向マーカー47に
よって、サブアレイ44の向きを示す。
【0020】図3のサブアレイ34と図4のサブアレイ
44のタイリングの柔軟性によって、マイクロプロセッ
サ・コアの面積およびフォーム・ファクタの変更も提供
される。図3および図4は、同一の縮尺で描かれ、同一
の個数とサイズのサブアレイを有するが、図3の配置で
は、マイクロプロセッサ・コア面積が図4の2.25倍
に大きくなっている。すべてのサブアレイが、同一のス
イッチング活性を有し、電力チップ分配に対するデカッ
プリング・キャパシタンスの依存可能なソースになる。
このソースは、マイクロプロセッサ・コアに非常に近接
しており、多数の並列経路によってマイクロプロセッサ
・コアにリンクされる。
44のタイリングの柔軟性によって、マイクロプロセッ
サ・コアの面積およびフォーム・ファクタの変更も提供
される。図3および図4は、同一の縮尺で描かれ、同一
の個数とサイズのサブアレイを有するが、図3の配置で
は、マイクロプロセッサ・コア面積が図4の2.25倍
に大きくなっている。すべてのサブアレイが、同一のス
イッチング活性を有し、電力チップ分配に対するデカッ
プリング・キャパシタンスの依存可能なソースになる。
このソースは、マイクロプロセッサ・コアに非常に近接
しており、多数の並列経路によってマイクロプロセッサ
・コアにリンクされる。
【0021】好ましい実施例に関して本発明を具体的に
図示し、説明してきたが、当業者であれば、本発明の趣
旨および範囲から逸脱することなく、形態および詳細に
さまざまな変更を加えられることを理解するであろう。
図示し、説明してきたが、当業者であれば、本発明の趣
旨および範囲から逸脱することなく、形態および詳細に
さまざまな変更を加えられることを理解するであろう。
【0022】まとめとして、本発明の構成に関して以下
の事項を開示する。
の事項を開示する。
【0023】(1)マイクロプロセッサ集積回路の中央
領域内にプロセッサ・ユニットを配置するステップと、
前記中央領域を囲む周辺領域をキャッシュ・メモリ・ア
レイ領域として指定するステップと、可変サイズ・キャ
ッシュ・メモリ・アレイを効率的に作成できるように、
前記周辺領域内に所定の個数のキャッシュ・メモリ・サ
ブアレイを配置するステップとを含む、前記マイクロプ
ロセッサ集積回路の配置の方法。 (2)1キャッシュ・ワードのうちの固定された部分を
含むように、前記キャッシュ・メモリ・サブアレイを修
正するステップをさらに含む、上記(1)に記載の方
法。 (3)マイクロプロセッサ・コアを含むように前記プロ
セッサ・ユニットを修正するステップをさらに含む、上
記(2)に記載の方法。 (4)プロセッサ・ユニットをその中に配置された中央
領域と、キャッシュ・メモリ・アレイ領域として指定さ
れた、前記中央領域を囲む周辺領域と、キャッシュ・メ
モリ・サブアレイが可変サイズのモジュラー・キャッシ
ュ・メモリ・アレイを構成するように、前記周辺領域内
に配置される所定の個数の前記キャッシュ・メモリ・サ
ブアレイとを含む、可変サイズのモジュラー・キャッシ
ュ・メモリ・アレイを有するマイクロプロセッサ集積回
路。 (5)前記プロセッサ・ユニットが、マイクロプロセッ
サ・コアを含むことを特徴とする、上記(4)に記載の
マイクロプロセッサ集積回路。 (6)前記キャッシュ・メモリ・サブアレイが、1キャ
ッシュ・ワードの固定された部分を含むことを特徴とす
る、上記(5)に記載のマイクロプロセッサ集積回路。
領域内にプロセッサ・ユニットを配置するステップと、
前記中央領域を囲む周辺領域をキャッシュ・メモリ・ア
レイ領域として指定するステップと、可変サイズ・キャ
ッシュ・メモリ・アレイを効率的に作成できるように、
前記周辺領域内に所定の個数のキャッシュ・メモリ・サ
ブアレイを配置するステップとを含む、前記マイクロプ
ロセッサ集積回路の配置の方法。 (2)1キャッシュ・ワードのうちの固定された部分を
含むように、前記キャッシュ・メモリ・サブアレイを修
正するステップをさらに含む、上記(1)に記載の方
法。 (3)マイクロプロセッサ・コアを含むように前記プロ
セッサ・ユニットを修正するステップをさらに含む、上
記(2)に記載の方法。 (4)プロセッサ・ユニットをその中に配置された中央
領域と、キャッシュ・メモリ・アレイ領域として指定さ
れた、前記中央領域を囲む周辺領域と、キャッシュ・メ
モリ・サブアレイが可変サイズのモジュラー・キャッシ
ュ・メモリ・アレイを構成するように、前記周辺領域内
に配置される所定の個数の前記キャッシュ・メモリ・サ
ブアレイとを含む、可変サイズのモジュラー・キャッシ
ュ・メモリ・アレイを有するマイクロプロセッサ集積回
路。 (5)前記プロセッサ・ユニットが、マイクロプロセッ
サ・コアを含むことを特徴とする、上記(4)に記載の
マイクロプロセッサ集積回路。 (6)前記キャッシュ・メモリ・サブアレイが、1キャ
ッシュ・ワードの固定された部分を含むことを特徴とす
る、上記(5)に記載のマイクロプロセッサ集積回路。
【図1】従来技術のサブアレイの直線グリッド配置を示
す図である。
す図である。
【図2】従来技術のマイクロプロセッサ・フロアプラン
を示す図である。
を示す図である。
【図3】マイクロプロセッサ・コアの周辺に沿って配置
されたサブアレイを有するメモリ・キャッシュを含むマ
イクロプロセッサの第1のフロアプランである。
されたサブアレイを有するメモリ・キャッシュを含むマ
イクロプロセッサの第1のフロアプランである。
【図4】図3と同一のマイクロプロセッサ・コアの周辺
に沿って配置されたサブアレイを有するメモリ・キャッ
シュを含むマイクロプロセッサの第2のフロアプランで
ある。
に沿って配置されたサブアレイを有するメモリ・キャッ
シュを含むマイクロプロセッサの第2のフロアプランで
ある。
【符号の説明】 10 直線グリッド 12 サブアレイ 14 方向マーカー 16 半共用サポート回路領域 20 マイクロプロセッサ・フロアプラン 22 領域 24 領域 30 フロアプラン 31 周辺 32 キャッシュ 34 サブアレイ 36 周辺 37 方向マーカー 39 マイクロプロセッサ・コア 40 フロアプラン 41 周辺 42 キャッシュ 44 サブアレイ 46 周辺 47 方向マーカー 49 マイクロプロセッサ・コア
フロントページの続き (72)発明者 ロバート・ピー・マスリード アメリカ合衆国78758 テキサス州オー スチン ドゥーンズベリー・ドライブ 1400 (72)発明者 ジョン・エス・ミューヒヒ アメリカ合衆国78731 テキサス州オー スチン スピンネーカー・コーブ 4203 (56)参考文献 特開 平4−130655(JP,A) 特開 平6−150031(JP,A) 特開 平8−212185(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 17/50 H01L 21/82 - 21/86 H01L 27/04 - 27/118 G06F 15/78
Claims (8)
- 【請求項1】マイクロプロセッサ集積回路の中央領域内
にプロセッサ・ユニットを配置するステップと、 前記中央領域を囲む周辺領域をキャッシュ・メモリ・ア
レイ領域として指定するステップと、 可変サイズ・キャッシュ・メモリ・アレイを効率的に作
成できるように、前記周辺領域内に所定の個数のキャッ
シュ・メモリ・サブアレイを、該キャッシュ・メモリ・
サブアレイが互いに鏡像又は回転の状態になるように配
置するステップとを含む、前記マイクロプロセッサ集積
回路の配置の方法。 - 【請求項2】1キャッシュ・ワードのうちの固定された
部分を含むように、前記キャッシュ・メモリ・サブアレ
イを修正するステップをさらに含む、請求項1に記載の
方法。 - 【請求項3】マイクロプロセッサ・コアを含むように前
記プロセッサ・ユニットを修正するステップをさらに含
む、請求項2に記載の方法。 - 【請求項4】前記キャッシュ・メモリ・サブアレイは、
2:3乃至3:4の縦横比を有する、請求項2に記載の
方法。 - 【請求項5】プロセッサ・ユニットをその中に配置され
た中央領域と、 キャッシュ・メモリ・アレイ領域として指定された、前
記中央領域を囲む周辺領域と、 キャッシュ・メモリ・サブアレイが、可変サイズのモジ
ュラー・キャッシュ・メモリ・アレイを構成するよう
に、前記周辺領域内に互いに鏡像又は回転の状態になる
ように配置された所定の個数の前記キャッシュ・メモリ
・サブアレイとを含む、可変サイズのモジュラー・キャ
ッシュ・メモリ・アレイを有するマイクロプロセッサ集
積回路。 - 【請求項6】前記プロセッサ・ユニットが、マイクロプ
ロセッサ・コアを含むことを特徴とする、請求項5に記
載のマイクロプロセッサ集積回路。 - 【請求項7】前記キャッシュ・メモリ・サブアレイが、
1キャッシュ・ワードの固定された部分を含むことを特
徴とする、請求項6に記載のマイクロプロセッサ集積回
路。 - 【請求項8】前記キャッシュ・メモリ・サブアレイは、
2:3乃至3:4の縦横比を有する、請求項5に記載の
マイクロプロセッサ集積回路。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/742,221 US5812418A (en) | 1996-10-31 | 1996-10-31 | Cache sub-array method and apparatus for use in microprocessor integrated circuits |
US08/742221 | 1996-10-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10187798A JPH10187798A (ja) | 1998-07-21 |
JP3062138B2 true JP3062138B2 (ja) | 2000-07-10 |
Family
ID=24983951
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9293743A Expired - Fee Related JP3062138B2 (ja) | 1996-10-31 | 1997-10-27 | マイクロプロセッサ集積回路で使用するためのキャッシュ・サブアレイの方法および装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5812418A (ja) |
JP (1) | JP3062138B2 (ja) |
KR (1) | KR100244846B1 (ja) |
TW (1) | TW393602B (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6134172A (en) * | 1996-12-26 | 2000-10-17 | Rambus Inc. | Apparatus for sharing sense amplifiers between memory banks |
KR100558035B1 (ko) * | 1999-12-30 | 2006-03-07 | 주식회사 하이닉스반도체 | 반도체메모리소자 |
US6412038B1 (en) | 2000-02-14 | 2002-06-25 | Intel Corporation | Integral modular cache for a processor |
US6493855B1 (en) * | 2000-02-18 | 2002-12-10 | Hewlett-Packard Company | Flexible cache architecture using modular arrays |
US6765813B2 (en) | 2000-08-14 | 2004-07-20 | Matrix Semiconductor, Inc. | Integrated systems using vertically-stacked three-dimensional memory cells |
US6711043B2 (en) | 2000-08-14 | 2004-03-23 | Matrix Semiconductor, Inc. | Three-dimensional memory cache system |
US6768661B2 (en) * | 2002-06-27 | 2004-07-27 | Matrix Semiconductor, Inc. | Multiple-mode memory and method for forming same |
US7281228B2 (en) * | 2004-02-11 | 2007-10-09 | Infineon Technologies Ag | Configurable memory system for embedded processors |
JP4597640B2 (ja) * | 2004-11-15 | 2010-12-15 | 株式会社エヌ・ティ・ティ・ドコモ | Fdtd演算装置、fdtd演算方法 |
US20060143384A1 (en) * | 2004-12-27 | 2006-06-29 | Hughes Christopher J | System and method for non-uniform cache in a multi-core processor |
US7788240B2 (en) * | 2004-12-29 | 2010-08-31 | Sap Ag | Hash mapping with secondary table having linear probing |
US20080133864A1 (en) * | 2006-12-01 | 2008-06-05 | Jonathan Randall Hinkle | Apparatus, system, and method for caching fully buffered memory |
US8943274B2 (en) | 2012-05-22 | 2015-01-27 | Seagate Technology Llc | Changing power state with an elastic cache |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2246001B (en) * | 1990-04-11 | 1994-06-15 | Digital Equipment Corp | Array architecture for high speed cache memory |
JP2862948B2 (ja) * | 1990-04-13 | 1999-03-03 | 三菱電機株式会社 | 半導体記憶装置 |
US5276832A (en) * | 1990-06-19 | 1994-01-04 | Dell U.S.A., L.P. | Computer system having a selectable cache subsystem |
US5446856A (en) * | 1991-04-29 | 1995-08-29 | Intel Corporation | Circuitry and method for addressing global array elements in a distributed memory, multiple processor computer |
US5498990A (en) * | 1991-11-05 | 1996-03-12 | Monolithic System Technology, Inc. | Reduced CMOS-swing clamping circuit for bus lines |
US5495419A (en) * | 1994-04-19 | 1996-02-27 | Lsi Logic Corporation | Integrated circuit physical design automation system utilizing optimization process decomposition and parallel processing |
US5752260A (en) * | 1996-04-29 | 1998-05-12 | International Business Machines Corporation | High-speed, multiple-port, interleaved cache with arbitration of multiple access addresses |
-
1996
- 1996-10-31 US US08/742,221 patent/US5812418A/en not_active Expired - Lifetime
-
1997
- 1997-04-22 TW TW086105212A patent/TW393602B/zh not_active IP Right Cessation
- 1997-07-15 KR KR1019970032773A patent/KR100244846B1/ko not_active IP Right Cessation
- 1997-10-27 JP JP9293743A patent/JP3062138B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH10187798A (ja) | 1998-07-21 |
KR100244846B1 (ko) | 2000-02-15 |
US5812418A (en) | 1998-09-22 |
TW393602B (en) | 2000-06-11 |
KR19980032225A (ko) | 1998-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5421000A (en) | Memory subsystem having a static row memory and a dynamic RAM | |
JP3062138B2 (ja) | マイクロプロセッサ集積回路で使用するためのキャッシュ・サブアレイの方法および装置 | |
US4937791A (en) | High performance dynamic ram interface | |
JP3277145B2 (ja) | メモリ・アレイ | |
US5226147A (en) | Semiconductor memory device for simple cache system | |
JPH0863958A (ja) | ランダム・アクセス・メモリ・システムおよびランダム・アクセス・メモリ | |
JPH01146187A (ja) | キヤッシュメモリ内蔵半導体記憶装置 | |
US20110205828A1 (en) | Semiconductor memory with memory cell portions having different access speeds | |
US7370151B2 (en) | Method and system for absorbing defects in high performance microprocessor with a large n-way set associative cache | |
Wang et al. | RC-NVM: Enabling symmetric row and column memory accesses for in-memory databases | |
AU648259B2 (en) | Centralized reference and change table for a multiprocessor virtual memory system | |
US5293622A (en) | Computer system with input/output cache | |
US5367655A (en) | Memory and associated method including an operating mode for simultaneously selecting multiple rows of cells | |
US6222786B1 (en) | Dynamic random access memory with write-without-restore and systems and methods using the same | |
EP0535701A1 (en) | Architecture and method for combining static cache memory and dynamic main memory on the same chip (CDRAM) | |
US4594690A (en) | Digital storage apparatus including sections exhibiting different access speeds | |
US6687790B2 (en) | Single bank associative cache | |
JPH04250543A (ja) | コンピューターメモリシステム | |
US6741488B1 (en) | Multi-bank memory array architecture utilizing topologically non-uniform blocks of sub-arrays and input/output assignments in an integrated circuit memory device | |
WO2004010435A2 (en) | A system, apparatus, and method for a flexible dram architecture | |
US6202137B1 (en) | Method and apparatus of arbitrating requests to a multi-banked memory using bank selects | |
US6275901B1 (en) | Computer system having a set associative cache memory with sequentially accessed on-chip address tag array and off-chip data array | |
JPH01124193A (ja) | 半導体記憶装置 | |
JP2001291837A (ja) | メモリ・アーキテクチャの実装方法 | |
US5249277A (en) | Optimized performance memory method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |