JPH10333982A - 2サイクルのキャッシュ・アクセスの間にメモリの行の冗長性を再マッピングするための回路、システム、および方法 - Google Patents

2サイクルのキャッシュ・アクセスの間にメモリの行の冗長性を再マッピングするための回路、システム、および方法

Info

Publication number
JPH10333982A
JPH10333982A JP10121403A JP12140398A JPH10333982A JP H10333982 A JPH10333982 A JP H10333982A JP 10121403 A JP10121403 A JP 10121403A JP 12140398 A JP12140398 A JP 12140398A JP H10333982 A JPH10333982 A JP H10333982A
Authority
JP
Japan
Prior art keywords
memory
address
row
defective
circuit
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.)
Pending
Application number
JP10121403A
Other languages
English (en)
Inventor
Patrick W Bosshart
ダブリュ.ボスハート パトリック
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
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 Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of JPH10333982A publication Critical patent/JPH10333982A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/84Masking faults in memories by using spares or by reconfiguring using programmable devices with improved access time or stability
    • G11C29/848Masking faults in memories by using spares or by reconfiguring using programmable devices with improved access time or stability by adjacent switching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】 従来技術の各種の欠陥を改善する。 【解決手段】 マイクロプロセッサを動作させる方法。
タグ・メモリ(18)に対して第1のアドレスを発行す
る(52)。第1のアドレスはタグ・メモリに対応する
情報メモリの1つの行をアドレスするために1つの状態
に設定される。第1のアドレスによってアドレスされる
べき情報メモリの行が欠陥行であるかを判定(58)す
る。欠陥行であると、2つの段階を実行する。まず、第
1のアドレスを異なる第2のアドレスに変換(60)す
る。第2にタグ・メモリの中のヒットの検出に応答し
て、第2のアドレスによって情報メモリをアドレスする
(66)。第1のアドレスによってアドレスされるべき
情報メモリの中の行が欠陥行でないと判定した場合、タ
グ・メモリの中のヒットに応答して第1のアドレスによ
って情報メモリをアドレスする。最後に、タグ・メモリ
のミスの検出に応答して、第1のアドレスに応答して異
なる情報メモリをアドレスし、その異なる情報メモリ
は、そのメモリ構成のメモリ階層の中でその情報メモリ
より高いレベルにある。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本実施形態はメモリ構成に関
する。本発明の1つのグループにおいては、それらはマ
イクロプロセッサに関し、特に2サイクルのキャッシュ
・アクセス中にオリジナル・アドレスを予備行のアドレ
スに変換することによって、メモリの行の冗長性を再マ
ッピングするための回路、システム、および方法を備え
るマイクロプロセッサに向けられている。本実施形態の
別のグループにおいては、それらはメモリのカラムの冗
長性を再マッピングするための回路、システム、および
方法に関する。
【0002】ディジタル・メモリの技術においては、メ
モリが構築された後、メモリの1つまたはそれ以上の行
が欠陥の行であると分かる可能性が、或る程度の統計的
確率で存在することは知られている。言い換えれば、行
は所定の或るビット数の情報を記憶するように構築され
たが、製造された後、その行が何らかの理由で動作不可
能であり、したがって、元々意図されていたように情報
を記憶できないことが判定される。この確率を前提とし
て、メモリは1つまたはそれ以上のいわゆる冗長性の、
すなわち、予備の行を含み、元々その行に記憶されてそ
こから読み出されることになっていた情報が、その予備
の行に記憶されてそこから読み出されるようにされる。
【0003】上記の予備行の冗長性を前提として、1つ
の従来技術の方法においては、そのメモリの中の各行
が、対応している行を活性化することができるかどうか
を決定する行のイネーブル用ヒューズも含んでいる。さ
らに、予備の各行は対応している行を活性化するための
アドレスをデコードするための、デコーダのヒューズの
グループを含んでいる。したがって、1つの行が欠陥行
であることが分かった場合、その行をイネーブルするた
めのヒューズはその欠陥行が活性化されない(すなわ
ち、ディスエーブルされる)ように構成される。さら
に、次に、その予備行の1つに対するデコーダのヒュー
ズがその欠陥行に対して意図された到来アドレスを、そ
の予備行を代わりにアドレスするようにデコーダがデコ
ードするように構成される。この方法はよく使われてい
るが、各種の欠陥がある。たとえば、ヒューズを作り込
むことによってその製造プロセスがより複雑となる可能
性がある。また、別の例として、ヒューズは集積回路上
の面積を多く使う必要がある。これらのことを前提とし
て、さらに上記の従来技術に対して必要なヒューズの数
に注意する。詳しく言えば、必要なヒューズの合計数は
行の数にそのメモリに対する1つのアドレスをデコード
するためのビット数の合計×予備行の数と各予備行に対
して1つのイネーブル・ビットを加えた数に等しい。た
とえば、2つの独立の予備行を備えている256ライン
のメモリの場合、合計で274個のヒューズ(256個
の行イネーブル用ヒューズ+2*(8個のデコード・ヒ
ューズ+1個のイネーブル・ヒューズ))が必要であ
る。さらに、これらのヒューズの大多数は1つの場所に
あるのではなく、各行に沿って配置される。これらの欠
点および他の欠点はこの分野の技術に熟達した人によっ
て理解される。
【0004】ディジタル・メモリの技術における行の実
装に関する上記の観察を前提として、メモリのカラムに
関しても同様に、メモリが製造された後、そのメモリの
1つまたはそれ以上のカラムが欠陥カラムであることが
分かる、或る程度の統計的確率が存在することは知られ
ている。したがって、カラムは情報のビットを出力、入
力、あるいは入力および出力の両方を可能にするように
製造されたが、製造後にそのカラムが何らかの理由で動
作不能であり、したがって、元々意図されていたように
情報を通信することができないことがテストによって判
定される。この確率を前提として、メモリは1つまたは
それ以上のいわゆる冗長の、すなわち、予備のカラムを
含んでいることが多く、そして元々その欠陥カラムに記
憶されてそこから読み出される筈であった情報が、何ら
かの理由でその予備のカラムの1つに記憶されてそこか
ら読み出されるようになる。
【0005】上記の予備カラムの冗長性を前提として、
後で詳細に説明される1つの従来技術の方法において
は、それらの各カラムは1つまたはそれ以上のマルチプ
レクサによって外部カラムに接続され、そしてそれらの
マルチプレクサはそのマルチプレクサに対する次々の制
御入力の間に固定されたヒューズによって制御される。
したがって、1つのカラムが欠陥カラムであることが分
かった場合、その欠陥カラムが通信する筈であったマル
チプレクサを制御しているヒューズが、入力の場合には
情報を受け取ることができず、あるいは出力の場合には
情報を出力することができないように構成される(すな
わち、ディスエーブルされる)。この方法は使われる可
能性があるが、それにも各種の欠点がある。たとえば、
いくつかの構成においては2つ以上のカラムが欠陥であ
ると識別された場合、この従来技術の方法はそれ自身不
十分である。というのは、1つのカラムだけをそのメモ
リ構成の外部接続に達しないようにすることができるだ
けだからである。もう1つの例として、この従来技術の
方法によって必要とされるヒューズの個数は出力カラム
の数より1だけ大きく、したがって、大規模メモリの場
合、多数のヒューズがそれに対応して必要となる。もう
1つの例として、ヒューズは普通はメモリ構成の出力カ
ラム間に物理的に配置され、したがって、メモリ構成の
カラムに関してかなりのスペースを必要とすることに留
意されたい。
【0006】上記の観点において、以下に説明される本
発明の実施形態によって実現されるような、従来技術の
各種の欠陥に対処し、従来技術の方法を改善するための
ニーズが発生している。
【0007】
【課題を解決するための手段】1つの実施形態の方法に
おいては、メモリ構成を動作させる1つの方法がある。
その方法はタグ・メモリに対して第1のアドレスを発行
する。この第1のアドレスはそのタグ・メモリに対応し
ている情報メモリの中の1つのカラムをアドレスするた
めの状態に設定される。また、その方法は第1のアドレ
スによってアドレスされるべき情報メモリの中の行が欠
陥行であるかどうかも判定する。第1のアドレスによっ
てアドレスされるべき情報メモリの中の行が欠陥行であ
ることの判定に応答して、その方法は2つの段階を実行
する。まず最初に、第1のアドレスをその第1のアドレ
スとは異なる第2のアドレスに変換する。次に、タグ・
メモリの中のヒットの検出に応答して、その第2のアド
レスによってその情報メモリをアドレスする。代わり
に、第1のアドレスによってアドレスされるべき情報メ
モリの中の行が欠陥行でないということを判定した場
合、タグ・メモリの中のヒットの検出に応答して、第1
のアドレスによって情報メモリを代わりにアドレスす
る。最後に、タグ・メモリの中のミスの検出に応答し
て、第1のアドレスに応答して異なる情報メモリをアド
レスする。その場合、その異なる情報メモリはメモリ構
成のメモリ階層の中でその情報メモリより高いレベルの
層にあるメモリである。他の回路、システム、および方
法も開示され、特許請求される。
【0008】
【発明の実施の形態】上記の背景を前提として、次の詳
細説明によって各種の実施形態を示す。読者を支援する
目的で、ただし、それらの実施形態およびそのような実
施形態の多くの特徴の範囲に本発明の範囲を限定するこ
となしに、次の目次はその詳細説明の中の特定のトピッ
クを識別するための4つの部分的表題を示す。
【0009】
【表1】 目次 部分表題 セクション メモリ行の冗長性 1 メモリ・カラムの冗長性 2 メモリ行およびメモリ・カラムの冗長性の組合せ 3 マイクロプロセッサの構成 4 結論 5
【0010】<1. メモリ行の冗長性>図1は本発明
によるマイクロプロセッサのメモリ・システム10のブ
ロック図を示している。システム10は各種のタイプの
マイクロプロセッサ構造の内部に含めることができ、そ
してそのような構造の一例が図21に関連して以下に詳
細に説明される。しかし、ここでは図1のメモリ・コン
ポーネントに関連したこと以外のそのようなマイクロプ
ロセッサに関連した詳細事項については、本発明の説明
を単純化するために図示されず、また、説明もされな
い。代わりに、そのような説明は以下の図21の詳細説
明まで延期される。
【0011】図1に示されているブロックを参照する
と、システム10は従来技術において知られている方法
でのメモリ階層、すなわち、最低次の記憶システムから
最高次の記憶システムへの順序で情報を読み書きする階
層を含む。そのようなシステムの最低レベルにおいて、
図1の中でL1キャッシュ回路12として示されてい
る、レベル1のキャッシュ回路がある。この「L1」は
従来の技術において知られているようなメモリ階層の構
造を示している。詳しく言うと、低い数字で示されてい
るキャッシュ回路は後で説明されるL2キャッシュ回路
などの高い数字で示されているキャッシュ回路に比較し
て、マイクロプロセッサ(図示せず)の実行ユニットに
対して、より近い位置にある。さらに、キャッシュ回路
の数値的指示は特定のキャッシュから読み出すとき、あ
るいはそのキャッシュに対して書き込むときのいずれか
において、命令のパイプライン(図示せず)のステージ
によってそのキャッシュがアクセスされる順序を昇順に
示している。したがって、そのようなアクセスはまず最
初にL1キャッシュ回路に対して発生し、そしてそのキ
ャッシュに対するキャッシュ・ミスが発生した場合、そ
の次にL2キャッシュ回路に対するアクセスが続き、以
下同様にキャッシュまたは他のメモリ構造の中でヒット
が見つかるまで、メモリ階層を順に昇っていく。さら
に、図1のシステム10はL1キャッシュ回路12をそ
の最低レベルにおいて示しているが、以下の図21に示
されているようないくつかのマイクロプロセッサは、そ
れよりさらに低いレベルのキャッシュをさらに含むこと
ができ、したがって、それはL0キャッシュと呼ばれ
る。しかし、本発明の場合、図1のキャッシュ回路は以
下に説明される各種の発明の態様を示すためのベースを
確立するのに十分である。
【0012】システム10はバス16を経由してL1キ
ャッシュ回路12に対して接続されているL2キャッシ
ュ回路14をさらに含む。ここでも、「L2」という名
称はこのキャッシュがL1キャッシュ回路12に比較し
てメモリ階層の中のより高い場所にあることを示す必要
があって付けられている。この好適な実施形態におい
て、L2データ・キャッシュ回路14はL1キャッシュ
回路12より大規模であることが好ましい。たとえば、
この2つのキャッシュの相対的なサイズの一例として
は、L1キャッシュ回路12が合計8Kバイトの情報を
格納することができ、一方、L2キャッシュ回路14は
合計で64Kバイトの情報を格納することができるよう
なものが考えられる。さらに、L2キャッシュ回路14
の出力容量はL1キャッシュ回路12の容量より大きい
ことが好ましい。一例として、L2キャッシュ回路14
は256ビット(すなわち、32バイト)を一度に出力
し、一方、L1キャッシュ回路12は128ビット(す
なわち、16バイト)を一度に出力することができるよ
うな構成が考えられる。L2キャッシュ回路14は別の
タグ・メモリ18およびデータ・メモリ20を含む。こ
の分野の技術において知られているように、タグ・メモ
リ18はこの分野の技術においてその用語が使われてい
るキャッシュのアドレス・タグを格納するように動作
し、さらにそれらのタグを到来するアドレスに対して比
較するように動作する。また、この分野の技術において
知られているように、入って来たタグがタグ・メモリ1
8の中の1つのタグにマッチした場合、キャッシュ・ヒ
ットが発生し、そしてその入って来たアドレスに対応し
ている情報がデータ・メモリ20においてアクセスされ
る。データ・メモリ20は「データ」メモリと呼ばれて
いるが、このドキュメント全体を通じて、データ・メモ
リは実際には情報メモリであること、すなわち、それは
データ、命令、および/またはアドレス変換テーブルな
どの各種のタイプの情報を格納することができることを
理解されたい。しかし、その用語に現在の技術との首尾
一貫性を持たせるために、詳細説明におけるこれ以降の
部分において、このメモリはそのような呼称が他のタイ
プの情報を格納しているメモリに対して限定されないと
いうことが理解された上で、データ・メモリと呼ばれ
る。いずれにしても、データ・メモリ20にアクセスす
るプロセスが以下にさらに詳細に説明される。しかし、
その説明に入る前に、好適な実施形態のL2キャッシュ
回路14はアドレス変換回路22をさらに含むことにも
留意されたい。簡単に言えば、アドレス変換回路22も
入って来たアドレスを受け取り、データ・メモリ20に
対して対応しているアドレスを提供する。以下に詳細に
説明されるように、アドレス変換回路22は、その入っ
て来たアドレスがデータ・メモリ20の中の欠陥行であ
ることが分かっている記憶行に対して向けられているも
のであるかどうかに基づいて、入って来たアドレスと同
じ実効アドレスをデータ・メモリ20に対して出力する
か、あるいはそれを別のアドレスに変換するかのいずれ
かを行う。
【0013】図1についての説明を完了すると、L1キ
ャッシュ回路14はバスBに接続されているバス・イン
ターフェース・ユニット(「BIU」)26の方法によ
ってさらに接続されている。バスBはシステム10を含
むマイクロプロセッサから外部へ延びており、したがっ
て、システム10とマイクロプロセッサの外部の他のエ
レメントとの間の通信を実行することができる。他のエ
レメントとしては、L2キャッシュ回路14より高いメ
モリ階層の中にある(そしてもちろん、L1キャッシュ
回路12より高い)外部メモリが含まれる。この点で、
説明を単純化するために、マイクロプロセッサの外部の
追加エレメントについては詳細は説明されず、そのよう
なエレメントの例は以下の図21の説明まで延期され
る。
【0014】図1の回路の動作は以下の図3および図4
に示されている追加の態様の詳細説明の後でより良く理
解される。しかし、それらの態様の他に、本発明の実施
形態はマイクロプロセッサの連続したクロック・サイク
ルに関して好ましいタイミングに従って動作することが
好ましく、そしてその好ましい動作はまず最初に従来技
術に関するいくつかの追加の観察を探索することによっ
てより良く理解される。したがって、図1のアドレス変
換回路22の好ましいタイミングを理解するための背景
として図2は図1に関連して一般的に示されているもの
と同等なマルチレベル・キャッシュ・アーキテクチャの
ための従来技術のキャッシュ・アクセス(すなわち、ア
ドレス変換回路22のないもの)のタイミング図を示し
ている。詳しく言うと、図2は低レベルのキャッシュ・
ミスが発生した結果、L2キャッシュ回路14に対する
キャッシュ・アクセスが行なわれている、クロック・サ
イクルt1〜t3における連続したイベントを示してい
る。図2の特定のクロック・サイクルを参照すると、t
1においてL1キャッシュ回路12においてミスを発生
しているアクセスが示されており、これはL1キャッシ
ュ回路12がアドレスが与えられて、そのアドレスにお
いて求められた情報がそのキャッシュの中にはなかった
ことを意味している。それに応答して、そして或るタイ
プのアービトレーション回路(図示せず)の制御下で、
そのミスが検出され、t2において次の段階が発生す
る。特に、t2の間、アクセスはL2キャッシュ回路1
4に対して行なわれる。しかし、上記から、L2キャッ
シュ回路14はL1キャッシュ回路12より容量がかな
り大きいことが好ましいことに留意されたい。結果とし
て、1つの既知の方法は第1のクロック・サイクルにお
いてL2キャッシュ回路14のタグ・メモリ18にアク
セスし、キャッシュ・ヒットが発生した場合、次の連続
したクロック・サイクルにおいてL2キャッシュ回路1
4のデータ・メモリ20にアクセスする方法である。こ
の動作がt2およびt3に示されている。この場合、タ
グ・メモリ18においてt2の間にヒットが発生し、そ
してL2キャッシュ回路14のデータ・メモリ20から
情報がt3の間に読み出される。この2サイクルのプロ
セスは電力を節約するため、すなわち、L2キャッシュ
回路14のデータ・メモリ20のすべてがキャッシュ・
ミスのイベントにおいてアクセスされるのを防止するた
め、あるいは、キャッシュ・ヒットのイベントにおいて
アクセスされるべきL2キャッシュ回路14のデータ・
メモリ20の一部だけを或る瞬間にイネーブルするため
に、よく行なわれることに留意されたい。
【0015】図2についての上記の説明を前提として、
本発明の発明者はメモリ行の冗長性のコンテキストにお
いて2クロック・サイクルにわたるキャッシュのアクセ
スの動作がいかに有利に行なわれるかを認識している。
この点において、本発明の発明者は本発明の適用範囲の
態様を示している各種の実施形態を以下に提供し、そし
てそれはメモリの冗長性に関連して追加のアクティビテ
ィに対して図2に示されている2つのクロック・サイク
ルのうちの最初のサイクルを使うのが好ましい。詳しく
言えば、そしてイントロダクションとして、この2つの
クロック・サイクルのうちの最初のサイクルにおける追
加のアクティビティは、以下でより良く理解されるよう
に、図1のアドレス変換回路22のコンテキストにおい
て実行される。これが発生すると、次にこの追加のアク
ティビティの結果が図2に示されている2つのクロック
・サイクルのうちの第2のサイクルの間に使われて、そ
の前のクロック・サイクルの間に発生した追加のアクテ
ィビティの利点を備えているデータ・メモリのアクセス
が実行されるようになる。
【0016】図3は上記の図1の情報メモリ20のより
詳細なブロック図を示している。データ・メモリ20は
一般的に28において示されている複数の記憶行を含
む。この分野の技術において知られているように、行2
8のそれぞれは所定の数のビットを記憶するように動作
し、そしてその数はその実装によって広い範囲にわたる
(たとえば、8ビットから256ビット以上まで)。以
下でさらに明快になる理由のために、行28は2つのグ
ループの行に分離され、一次行のグループ30と予備行
のグループ32から構成されている。
【0017】一次行のグループ30は各行が上記のビッ
ト数の情報を記憶するように動作することを意図して作
られているが、それらの行の1つが作られた後に欠陥行
であることが発見される可能性があることはさらに理解
される。好適な実施形態においては、一次行のグループ
30は2R 個の行を含み、ここでRは実装に基づいて選
択することができる。このための一例および次の図を提
示する目的で、Rが8に等しいと仮定する。したがっ
て、一次グループ30は256個の行(すなわち、28
=256)を含む。さらに、256個の行の例を使って
いる或る行に対する行アドレスが、以下でさらに明らか
になる理由のために図3に示されている。
【0018】予備行のグループ32は一次行のグループ
30の中の1つまたはそれ以上の行が欠陥行であること
が分かった場合に、予備として動作するように作られて
いる1つまたはそれ以上の行を含む。現在の説明では、
その予備行のグループ32は単独の行だけを含むと仮定
し、後で説明される他の実施形態においては、2つ以上
の行がある予備グループを備えている。一次行のグルー
プ30の他に予備行のグループ32があることを前提と
して、その予備行のアドレスは一次行のグループ30に
おける最も大きなアドレスより1だけ大きいことが好ま
しいことに留意されたい。したがって、現在の例におい
ては、グループ30の中の最大のアドレスは28 −1で
あるので、予備グループ32の中の行のアドレスは
R 、すなわち、現在の例では28 である。この好まし
いアドレッシング・フォーマットの利点は以下に明らか
になる。
【0019】データ・メモリ20は一般的に34におい
て示されている複数のデコーダを含む。ここで各デコー
ダは28個の行のそれぞれ1つに対応している。さら
に、以下に詳細に説明されるように各種の違いをさらに
示すために、デコーダ34も2つのグループ、すなわ
ち、一次行のグループ30に対応している一次デコーダ
・グループ36、および予備行のグループ32に対応し
ている予備のデコーダ・グループ38に分けられてい
る。したがって、行とデコーダとの間の一対一の対応の
ために、一次行のグループ30の中に256個の行があ
った場合、その一次デコーダ・グループ36は256個
のデコーダを含む。同様に、予備行のグループ32の中
に1個の行があった場合、予備のデコーダ・グループ3
8は1個のデコーダを含む。グループ36および38の
各デコーダは異なるアドレスに応答するように作られて
いる。言い換えれば、データ・メモリ20に対して与え
られるアドレスはそのデコーダの1つだけに対応し、し
たがって、その対応している行だけがそのアドレスに応
答して活性化される。したがって、従来の技術とは異な
り、予備行に対応しているデコーダは一次行の1つにあ
るデコーダと同じアドレスをデコードしない。さらに、
好適な実施形態においては、各行デコーダは別々のイネ
ーブル用ヒューズを含まないことにも留意されたい。さ
らに、一次デコーダ・グループ36の中のデコーダは従
来技術の原理に従って作ることができるが、この場合
も、以下に説明される理由のために不必要である追加の
ディスエーブル用ヒューズなどの装置がなくなっている
ことにも留意されたい。最後に、一次グループ36の中
の各デコーダは合計2R +1の異なる行を区別しなけれ
ばならないことに留意されたい。結果として、各デコー
ダはR+1ビットのアドレスをデコードするように構成
される。たとえば、R=8の場合、データ・メモリ28
は合計で257個の行(すなわち、256の一次行およ
び1個の予備行)を含む。したがって、一次デコーダ・
グループ36の中の各デコーダには合計9ビットが必要
である。予備のデコーダ・グループ38の中のデコーダ
の構造は後で詳細に説明される。
【0020】図4は上記の図1のアドレス変換回路22
のブロック図をより詳細に示している。アドレス変換回
路22は図1に示されている入力アドレスを受け取るた
めの入力40を備えている。入力40はラッチなどの記
憶装置42に対して接続されていることが好ましい。デ
ータ・メモリ20の一次行のグループ30の中の2R
の行の参照を使って、入力アドレスのビット数はRであ
ることに留意されたい。したがって、これらのビットの
うちの最初のものが0番目のビットであった場合、記憶
装置42の中に格納されるアドレスは図に示されている
ようにビット0〜ビットR−1から構成されることにな
る。記憶装置42の出力はコンパレータ44の第1の入
力に接続され、そしてアドレス出力の記憶装置46の下
位の部分46aにも接続されている。アドレス変換回路
22は欠陥行識別子回路48も含む。それは以下に詳細
に説明されるように、一次行のグループ30の中に欠陥
行が1つあった場合、その欠陥行の識別情報を格納す
る。1つの好適な実施形態においては、識別子回路48
の中の欠陥行の符号化は従来の技術におけるアドレスの
デコードおよび行のイネーブリングにおいて使われてい
るヒューズの技術と同様な方法でヒューズを使って設定
される。たとえば、Rビットのアドレスの場合、識別子
回路48はR個のヒューズを含み、それは一次行のグル
ープ30の中の1つの欠陥行のアドレスを示すように構
成する(たとえば、レーザによって切断する)ことがで
きる。行識別子回路48を形成するために他の構成を使
うこともできることに留意されたい。たとえば、複数ビ
ットのレジスタ、あるいは単独ビットのレジスタの組合
せを使って以下に説明される符号化機能を提供すること
ができる。別の例とし、ランダム・アクセス・メモリま
たは電気的に消去可能なプログラマブルな読出し専用メ
モリなどの他の記憶装置またはメモリ・タイプを使うこ
とができる。さらにもう1つの方法として、再プログラ
ム可能な記憶構造と永久的な記憶構造との組合せも行識
別子回路48のために使える。このことに関して、テス
ト時にその再プログラム可能な装置が符号化されるべき
適切な値を決定するために使われ、そして一度その値が
知られると、その値を符号化するために永久的な記憶構
造が使われ、その後、行識別子回路48の機能を実行す
る。いずれにしても、欠陥行識別子回路48の出力はコ
ンパレータ44に対する第2の入力として接続される。
さらに、コンパレータ44はイネーブル回路49から制
御信号を受け取る。好適な実施形態においては、イネー
ブル回路49は一次行のグループ30の中に欠陥行が見
つかったかどうかを示す単独のヒューズも含む。言い換
えれば、一次行のグループが作られた後、その行のうち
の1つが欠陥行であるかどうかを知るために、既知の技
法を使ってテストされる。そうであった場合、そして以
下により明確になる理由のために、コンパレータ44の
比較および結果の動作をイネーブルすることが望まし
い。結果として、このイベントにおいて、イネーブル回
路49の単独のヒューズが、欠陥行が識別されたことを
示すために1の状態に構成され(たとえば、この場合も
レーザによってヒューズが切られ)、したがって、コン
パレータ44の機能をイネーブルする。この機能をイネ
ーブルすることは各種の技法によって実現できることに
留意されたい。たとえば、比較の結果は比較がイネーブ
ルされたときにセットされる信号と論理的にANDが取
られるようにすることができる。結果として、比較がイ
ネーブルされなかったとき、その出力は論理ANDに対
するロー入力によってマスクされることになる。いずれ
にしても、欠陥行が見つからなかった場合、イネーブル
回路49のヒューズは欠陥行が識別されなかったことを
示すために反対の状態に構成される。したがって、この
場合、コンパレータ44の機能はイネーブルされない。
いずれの場合でも、コンパレータ44の出力はMATC
H信号としてアドレス出力記憶装置46の上位の部分4
6bに対して接続される。図4の実施形態においては、
この上位の部分46bは下位の部分46aに対して連結
されている単独のビットから構成され、したがって、図
4の中のビットRとして示されている。最後に、出力記
憶装置46の全体に記憶されているアドレス(すなわ
ち、上位部分と下位部分46bおよび46aの両方)が
アドレス変換回路22によって出力され、図1に示され
ているようにデータ・メモリ20に対して接続される。
さらに、図3から分かるように、このビット0〜Rのア
ドレスはデータ・メモリ20のデコーダ34に接続され
ている。
【0021】図5はそれらの回路のさらに詳細が与えら
れている図1の回路に対する動作50の方法のフローチ
ャートを示している。簡単に言えば、方法50の段階を
見る前に、方法50はL1キャッシュ回路12とは反対
にL2キャッシュ回路14のアドレッシングだけを扱っ
ていることに留意されたい。したがって、L1キャッシ
ュ回路12に対するアクセスおよびそのキャッシュの中
での結果のミスの説明は方法50の中では提示されず、
同じ情報がL1キャッシュ回路12の中で見つかった場
合(すなわち、キャッシュ・ヒットがL1キャッシュ回
路12の中で発生した場合)、究極的に情報はL2キャ
ッシュ回路14から読み出される必要はないことが理解
される。このイントロダクションを前提として、方法5
0の段階が以下に説明される。それはL1キャッシュ回
路12の中でのミスを仮定し、そしてその次に本発明の
実施形態に従ってそれらの段階の適用をさらに示すため
の例が続く。
【0022】方法50は段階52から始まる。その段階
において、メモリ・システム10を含むマイクロプロセ
ッサがメイン・メモリの中に記憶されている情報に対す
るアドレスを発行し、それは定義によって、キャッシュ
・メモリの1つのレベルの中に格納されている可能性も
ある。このアドレスを区別する目的で、それはこれ以降
ではオリジナル・アドレスとして呼ばれる。したがっ
て、上記で示唆されたように、このオリジナル・アドレ
スはL1キャッシュ回路12の中ではヒットを発生しな
いことが仮定され、したがって、次の説明はL2キャッ
シュ回路14のアクセスに対して行われる。方法50は
段階54へ続く。ここでは2つの同時並行アクションが
発生する。1つのアクションとして、段階54はオリジ
ナル・アドレスをL2キャッシュ回路14のタグ・メモ
リ18に対して印加する。これはこの分野の技術におい
てよく知られている原理に従って発生することができ
る。しかし、別のアクションとして、段階54はオリジ
ナル・アドレスをアドレス変換回路22にも印加する。
そこではオリジナル・アドレスが記憶回路42(図4参
照)へ格納される。オリジナル・アドレスを記憶回路4
2に置くことによって、そのオリジナル・アドレスは出
力記憶装置46の下位部分46aにもコピーされること
に留意されたい。
【0023】段階56において、アドレス変換回路22
はコンパレータ44がイネーブルされるかどうかを決定
する。言い換えれば、アドレス変換回路22は一次行の
グループ30の中に欠陥行が識別された場合に追加の機
能を実行するために、コンパレータ44をイネーブルす
る何らかのメカニズム(たとえば、ヒューズ)を含んで
いるイネーブル回路49を含むことを上記から思い出さ
れたい。したがって、段階56から、コンパレータ44
がイネーブルされた場合、方法50は段階58へ継続す
る。他方、コンパレータ44がイネーブルされない場合
(すなわち、一次行のグループ30の中に欠陥行がない
場合)、方法50は以下に説明される段階62へ継続す
る。
【0024】上記から、段階58は有効な欠陥行の識別
子が回路48の中に格納されている場合にのみ実行され
ることに留意されたい。この例では、段階58におい
て、コンパレータ44は記憶回路42の中のオリジナル
・アドレスが、回路48の中に格納されている欠陥行の
識別子にマッチするかどうかを判定する。マッチが発生
した場合、方法50は段階60へ継続する。他方、マッ
チが発生しなかった場合、方法50は以下に説明される
段階62へ継続する。
【0025】オリジナル・アドレスが欠陥行の識別子に
対してマッチしたために到達する段階60は、上位部分
のビット46bをハイ状態にセットするMATCH信号
を断定する。段階54から、下位部分46aはオリジナ
ル・アドレスのコピーとして既に設定されていることを
思い出されたい。したがって、この点で、MATCH信
号を使って46bの部分のビットをセットすることによ
って、そしてこのセットされたビットが下位部分46a
と組み合わされるとき、最上位ビットとして連結される
ので、この段階は上位46bと下位部分46aとの組合
せによって表される出力記憶装置46の中の新しいアド
レスへ、オリジナル・アドレスを実効的に変換すること
に留意されたい。代わりに、段階58によって段階60
がバイパスされた場合(すなわち、オリジナル・アドレ
スと欠陥行の識別子との間のマッチが発生しなかった場
合)、MATCH信号は断定されず、そして上位部分4
6bのビットはロー状態のままになる。したがって、オ
リジナル・アドレスと欠陥行の識別子との間のマッチが
発生しなかった場合はアドレス変換は実効的には発生せ
ず、オリジナル・アドレスだけが出力記憶装置46の中
に残っている。
【0026】段階62はオリジナル・アドレスに応答し
てタグ・メモリ18の中でヒットが発生したどうかを判
定する。ヒットが発生しなかった場合(すなわち、タグ
・メモリ18においてミスが発生した場合)、方法50
は段階64へ継続する。他方、ヒットが発生した場合、
方法50は段階66へ継続する。
【0027】段階64および66の代替アクションを説
明する前に、マイクロプロセッサの連続したクロック・
サイクルに関して方法50の段階のタイミングにさらに
留意されたい。詳しく言えば、上記の図2がマイクロプ
ロセッサの連続したクロック・サイクルおよびそれらの
サイクルを前提として昇順のキャッシュ構造のアクセス
の概念を導入したことを思い出されたい。この図から、
本発明の発明者は或る種のキャッシュ構造(たとえば、
L2キャッシュ回路14)の場合、情報が究極的にその
ようなキャッシュから読み出されるときには2つの連続
したクロック・サイクルが必要であり、最初のクロック
は一般にタグ・メモリにアクセスし、その次の第2の連
続したクロックは一般にデータ・メモリにアクセスする
ためにあることを認識していることに留意されたい。図
2の中ではこれらの2つのクロック・サイクルはt2お
よびt3として示されている。このコンテキストを前提
として、図5の段階52、54、および62は図2のt
2のタグ・メモリ・アクセスに相当するものであること
に留意されたい。したがって、図5において、段階62
の後に点線が示されており、その線のすぐ上の部分はそ
の線より上の段階が第1のクロック・サイクルの間に発
生することが好ましいことを示している。しかし、段階
56、58、および60もこの同じサイクルの間に発生
することに留意されたい。言い換えれば、そして以下に
説明される例からより良く理解されるように、L2キャ
ッシュ回路14のタグ・メモリ18がヒットに対してチ
ェックされるのと同じクロック・サイクルの間に、段階
56、58、および60のアドレス変換も、必要があれ
ば発生する可能性がある。したがって、点線より下で
は、次の連続したクロックが発生し、その次の段階はそ
の連続したクロック・サイクルの間に発生することが好
ましい。
【0028】段階64にはL2キャッシュ回路14のタ
グ・メモリ18の中でヒットがなかったときに入ること
を思い出されたい。したがって、従来の技術の方法にお
いては、段階64はオリジナル・アドレスを使うことに
よってマイクロプロセッサのメモリ構造における、次に
高いレベルにある記憶装置をアドレスする。たとえば、
この次の高いレベルにある記憶装置は追加のキャッシュ
回路である可能性がある。代わりに、この記憶の次の上
位レベルは図1に示されているバスBに結合されている
外部メモリなどのメイン・メモリである可能性もある。
したがって、いずれの場合でも、オリジナル・アドレス
にある情報は究極的に見つけられ、その情報を求めてい
る回路によって使われるために適切なバス上に置かれ
る。
【0029】段階64に対する代替段階として、L2キ
ャッシュ回路14のタグ・メモリ18においてヒットが
あったときには段階66に入ることを思い出されたい。
この例においては、段階66はL2キャッシュ回路14
のデータ・メモリ20をアドレスし、そのアドレスされ
た情報を出力する。さらに、段階66は出力記憶装置4
6からのアドレスを使ってデータ・メモリ20をアドレ
スすることに留意されたい。データ・メモリ20が出力
記憶装置46からのアドレスによってアドレスされると
して、段階66に先行している段階の代替アクションを
仮定して、上記のプロセスに関して観察されるいくつか
の事項に留意されたい。たとえば、アドレス変換が行な
われない場合、(すなわち、コンパレータ44がイネー
ブルされなかったか、あるいはMATCH信号が断定さ
れなかったかのいずれかのために、ビット46bがロー
状態のままになっている場合)、出力記憶装置46の中
のアドレスはアドレッシングの目的としてはオリジナル
・アドレスと違っていない。言い換えれば、この例の場
合、出力記憶装置46の中のアドレスはその先頭部分が
新しく0になっている(すなわち、上位部分46bか
ら)、それは先頭の0がない場合と同じロケーションを
アドレスする。したがって、実効的に、オリジナル・ア
ドレスがデータ・メモリ20に接続され、データ・メモ
リ20はオリジナル・アドレスによってアドレスされる
一次行アドレス30の中の1つの行からその情報を出力
する。しかし、これと反対に、アドレス変換が行なわれ
る場合を次に考える。詳しく言えば、オリジナル・アド
レスと欠陥行の識別子との間のマッチをコンパレータ4
4が見つけたために、上位部分46bをハイにセットす
ることによってそのような変換が発生した。言い換えれ
ば、オリジナル・アドレスは変更されなければ、データ
・メモリ20の一次行のグループ30の中の欠陥行をア
ドレスした筈である。しかし、最上位ビットがセットさ
れたために、新しいアドレスが出力記憶装置46の中に
生成され、それはデータ・メモリ20の一次行のグルー
プ30の中の欠陥行をアドレスせず、その代わりに、以
下に詳しく説明されるように、予備のグループ32の中
の行をアドレスするように再マッピングされる。
【0030】上記を前提として、この分野の技術に熟達
した人であれば、欠陥行に対して向けられたオリジナル
・アドレスが変換されると、その最上位ビット(すなわ
ち、Rの位置にあるビット)が論理1の状態になること
が分かる。この効果を認識しながら、次に図3に戻っ
て、特にその図の予備デコーダ38に注目する。予備の
デコーダ38は2R のアドレスの行に対応することを思
い出されたい。したがって、従来の設計においては、予
備のデコーダ38は行2R −1のアドレスより1だけ大
きいアドレスをデコードするように設定されることにな
る。たとえば、上記で提案されたR=8を使って、予備
のデコーダ38は100000000のアドレスをデコ
ードするように設定される。さらに、その同じ決まりの
下に、予備のデコーダ38はR+1ビットのアドレスを
デコードするように構成されることになる。しかし、上
記の説明から、この分野の技術に熟達した人であれば、
最上位ビット(「MSB」)が1であるいずれの場合に
も、2R のアドレスの行が予備として使われるべくアド
レスされることが分かる。言い換えれば、MSB以外の
すべてのビットは予備行をアドレスする目的には無関係
である。というのは、MSBがセットされていた場合、
予備行32がアドレスされることが分かるからである。
結果として、予備のデコーダ38はビット0〜R−1を
無視するように構成することができ、そしてMSB(す
なわち、ビットR)が1に等しい場合にだけ応答する。
この例では、アドレスの変換がビットRを1にするよう
に設定されるように発生すると、その変換されたアドレ
スはオリジナル・アドレスとは異なるものとして検出さ
れる。というのは、Rが1になっており、したがって、
その変換されたアドレスはオリジナル・アドレスによっ
てアドレスされることになった筈の欠陥行ではなく、予
備行32をアドレスするように再マッピングされるから
である。
【0031】上記の原理をさらに詳しく示すために、1
つの例がここで提示される。その場合、オリジナル・ア
ドレスはデータ・メモリ20の中の欠陥行をアドレスす
ることを求めるので変換される。したがって、データ・
メモリ20を製造した後、一次グループ30の中のアド
レス00001111の行が欠陥行であると判定された
と仮定する。したがって、イネーブル回路49はアドレ
スの変換をイネーブルするように設定され、そして欠陥
行のアドレス(すなわち、00001111)が欠陥行
識別子回路48の中に記憶される。次に、マイクロプロ
セッサがオリジナル・アドレスとしてアドレス0000
1111を発行すると仮定し、そしてそのアドレスがL
1キャッシュ回路12の中でミスを発生すると仮定す
る。したがって、このオリジナル・アドレスはL2キャ
ッシュ回路14に対して発行され、次にさらに評価され
るように、方法50の段階が開始される。最初のクロッ
ク・サイクルの間に、段階54は00001111のア
ドレスをタグ・メモリ18に印加する。同じクロック・
サイクルの間に、アドレスの変換がイネーブル回路49
によってイネーブルされるので、00001111のオ
リジナル・アドレスがコンパレータ44によって欠陥行
識別子回路48の中の識別子に対して比較される。現在
の例の仮定を前提として、オリジナル・アドレスと欠陥
行のアドレスとの間にマッチがあり、したがって、コン
パレータ44はMATCH信号を断定し、それにより、
オリジナル・アドレスに対して新しくセットされたMS
Bが連結され、実効的にそれを00001111から1
00001111に変換する。次に、そのオリジナル・
アドレスがタグ・メモリ18の中でヒットを発生するこ
とも仮定した場合、次のクロック・サイクルにおいてそ
の変換されたアドレスがデコーダ34に印加される。そ
のアドレスは変換されているので、欠陥行のアドレスの
00001111に対応しているデコーダはその対応し
ている行を活性化しない。というのは、その変換された
アドレスはその欠陥行のアドレスにはマッチしなくなっ
ているからである。代わりに、変換されたアドレスの中
のMSBがセットされているので、予備行32に対応す
るデコーダが活性化され、それによってアドレスされた
情報を出力するためにその予備行にアクセスする。
【0032】上記の原理をさらに説明するために、前の
例のアドレスの00001111がここでふたたび方法
50に適用されるが、そのオリジナル・アドレスはデー
タ・メモリ20の中の欠陥行をアドレスしないので、オ
リジナル・アドレスが変換されない場合の例が示され
る。したがって、ここでは、データ・メモリ20が製造
された後で1つの欠陥行が識別されたとふたたび仮定
し、そしてさらに、そのアドレスが00000011で
あると仮定する。したがって、ふたたびイネーブル回路
49がアドレスの比較をイネーブルするためにセットさ
れ、そしてその欠陥行のアドレス(すなわち、0000
0011)が欠陥行識別子回路48の中に記憶される。
次に、マイクロプロセッサがオリジナル・アドレスとし
てアドレス00001111を発行すると仮定し、そし
てL1キャッシュ回路12の中でのミスを仮定する。し
たがって、第1のクロック・サイクルにおいては、段階
54がコンパレータ44以外にタグ・メモリ18に対し
て00001111のアドレスを印加する。それに応答
して、00001111のオリジナル・アドレスが欠陥
行識別子回路48の中に記憶されている0000001
1の欠陥行の識別アドレスと比較される。したがって、
そのオリジナル・アドレスと欠陥行のアドレスとの間に
はマッチがなく、コンパレータ44はMATCH信号を
断定しない。結果として、00001111のオリジナ
ル・アドレスは妨害されないままに残る。というのは、
それは0に等しい新しいMSBと連結されるだけで、結
果の実効アドレッシング信号は000001111とな
る。次にオリジナル・アドレスがタグ・メモリ18の中
でヒットを発生させることも仮定して、変更されていな
い実効アドレスが次のクロック・サイクルにおいてデコ
ーダ34に対して印加される。そのアドレスは変換され
ていないので、000001111の行アドレスに対応
しているデコーダが一次グループ30の中の適切な行を
活性化し、それによってそのアドレスされた情報を出力
するためにその一次行にアクセスする。
【0033】上記の説明によって、この分野の技術に熟
達した人であれば、本発明の実施形態から従来の技術に
比べて各種の利点が発生することが分かる。たとえば、
欠陥行のアドレスを符号化するために必要なヒューズ
(または他の類似の装置)の個数は、一次行当たりに1
つを必要とするほかに、到来するアドレスを予備行にデ
コードするための追加のヒューズを必要とする従来技術
の構成で必要となる数よりはるかに少なくなる。もう1
つの例として、ヒューズ(または他の同様な装置)の場
所は各行に沿ってではなく、共通の場所に置くことがで
き、それによって構造および設計の諸事項が改善され
る。さらに他の利点がこの分野の技術に熟達した人によ
って理解される。それは本発明の範囲内での各種の他の
柔軟性のある方法および代替案を含み、そのいくつかは
追加の実施形態の中で以下に示される。
【0034】図6は上で紹介されたアドレス変換および
行アドレッシングの概念に関連して、2つ以上の予備行
を使うことができる他の実施形態を示している。さらに
詳しく言えば、図6は図4および3の中にあるようなア
ドレス変換回路22およびデータ・メモリ20をそれぞ
れ示しているが、複数の予備行を収容するためにそれら
の回路の各種の態様をさらに変更する。したがって、前
の図と同様なエレメントが使われる場合は、その共通の
参照番号が使われる。しかし、機能が異なるために、以
下に示されているように図6の中に異なる参照番号が導
入されている。
【0035】図6の中のデータ・メモリ20を参照し
て、ここで一般的に68で示されている複数の記憶行を
ふたたび含んでいることに留意されたい。これらの行は
一次行のグループ30および予備行のグループ70を含
む。この実施形態においては、予備行のグループ70
は、前の実施形態での1つだけの代わりに2つの行を含
む。したがって、以下の説明から理解されるように、2
つまでの欠陥行を一次行のグループ30の中で識別する
ことができ、それらのうちの各1つをグループ70の中
の2つの予備行のうちの1つに対して再マッピングする
ことができる。また、データ・メモリ20も一般的に7
2に示されている複数のデコーダを含み、ここでも予備
の記憶行68のそれぞれに対して単独のデコーダがあ
る。さらに、そのデコーダはやはり2つのグループに分
けられており、一次デコーダ・グループ36は一次行の
グループ30に対応しており、予備デコーダのグループ
74は欠陥行の70に対応している。グループ36の構
造は上記と同じ構造になっている。グループ72の中の
デコーダについては後で説明される。
【0036】図6の中のアドレス変換回路22を眺める
と、それは記憶回路42に対してオリジナル・アドレス
を接続するための入力40をやはり含んでいる。図6に
おいて、記憶回路42の出力はアドレス出力記憶装置7
6の第1の部分76aに接続されている。さらに、記憶
回路42の出力は2つの別々のコンパレータ44aおよ
び44bの入力に接続されている。コンパレータ44a
は第2の入力から欠陥行の識別子48aからの第1の欠
陥行の識別子を受け取るように接続されており、一方、
コンパレータ44bは欠陥行識別子回路48bから第2
の欠陥行の識別子を第2の入力から受け取るように接続
されている。さらに、44aおよび44bの各コンパレ
ータは対応しているイネーブル回路49aおよび49b
にそれぞれ応答して、その比較機能をイネーブルするよ
うに接続されている。コンパレータ44aおよび44b
の出力はORゲート78の入力に接続されている。OR
ゲート78の出力はMATCH信号を提供するためにア
ドレス出力記憶装置76の第2の部分76bに接続され
ている。さらに、コンパレータ44aの出力もアドレス
出力記憶装置76の第3の部分76cの入力に接続され
ている。最後に、この実施形態においては、アドレス出
力記憶装置76の第1および第2の部分76aおよび7
6bだけがそれぞれデコーダのグループ36に接続され
ており、そして第2および第3の部分76bおよび76
cだけが、以下でさらに明確になる理由によって、それ
ぞれ予備デコーダのグループ74に接続されている。
【0037】図6の動作は以下に説明される追加の文章
に沿って、図5の方法50をふたたび参照することによ
って理解することができる。したがって、読者は上記の
説明について良く理解していると仮定され、図3および
図4と対照されたとき、図6の追加の、あるいは他の態
様に次の注意を集中することになる。動作において、図
6の回路は一般に方法50に従うが、オリジナル・アド
レスは2つの予備行のうちの1つに再マッピングするこ
とができる。ふたたび、オリジナル・アドレスがレジス
タ42にロードされ、そしてここではそれは記憶装置7
6の第1の部分76aへコピーされる。次に、そのオリ
ジナル・アドレスが識別子回路48aおよび48bの中
の対応している欠陥行の識別子に対するコンパレータ4
4aおよび44bのいずれか、またはその両方によって
比較され、その場合、44aおよび44bの各コンパレ
ータは対応しているイネーブル回路49aおよび49b
によってイネーブルされると仮定されている。上記を前
提として、この分野の技術に熟達した人であれば、図6
のデータ・メモリ20が製造された後、第1の欠陥行が
識別される可能性があり、そのアドレスが回路48aに
記憶され、そして比較がコンフィギュレーション・イネ
ーブル回路49aによってイネーブルされることが分か
る。さらに、第2の欠陥行が識別される可能性があり
(ふたたび既知の技法を使って)、そのアドレスは回路
48bに記憶され、そしてその比較がコンフィギュレー
ション・イネーブル回路49bによってイネーブルされ
る。コンパレータ44aまたは44bのいずれかがMA
TCH信号を断定した場合、ORゲート78の出力が断
定され、それによってアドレス出力記憶装置76の中の
第2の部分76bが設定される。上記から、第1および
第2の部分76aおよび76bは次にデータ・メモリ2
0に接続されていることを思い出されたい。結果として
(そして、タグ・マッチを仮定して)、ふたたび一次行
のグループ30の中の行の1つにアクセスするために、
変っていないオリジナル・アドレスが接続されるか、あ
るいはそのオリジナル・アドレスが再マッピングされた
場合には欠陥行をアドレスしないように接続されるかの
いずれかとなる。次に予備行をアドレスする追加の態様
が以下に説明される。
【0038】上記から、第2の部分76b(すなわち、
ビットR)は一次デコーダのグループ36、あるいは対
応している行が現在のアドレスによってアクセスされる
べきである予備デコーダのグループ74のいずれかに対
する指示として実効的に動作する。詳しく言えば、上記
の例において、第2の部分76bがセットされなかった
場合、一次デコーダのグループ36の中のデコーダがそ
の対応している行を活性化し、一方、第2の部分76b
がセットされた場合、予備デコーダのグループ74の中
の1つのデコーダがその対応している行を活性化する。
図4の実施形態においては、この単独の追加ビットが単
独の予備行をアドレスするためのベースを提供してい
た。しかし、図6の実施形態においては、2つの予備行
があり、したがって、オリジナル・アドレスが欠陥行に
対して向けられたものであることが判定されたときに、
どの予備行がアドレスされるべきであるかを示すため
に、少なくとも1つの追加の指示が必要である。したが
って、この好適な実施形態においては、記憶装置76の
第3の部分76cがこの追加の指示を提供し、したがっ
て、その予備行のうちの1つをアドレスするための「ア
ドレス」の部分である信号であるとみなされる。さらに
詳しく言えば、上記から第2の部分76bおよび第2の
部分76cは両方共予備のデコーダのグループ74に接
続されていることを思い出されたい。したがって、それ
らの2つのビットの組合せに基づいて、予備行のグルー
プ74の中の2つの行の中の1つを、対応しているデコ
ーダによってアドレスすることができる。たとえば、1
つの方法は次の表に示されているようになる。
【0039】
【表2】 表1
【0040】したがって、表1が与えられて、予備のデ
コーダのグループ74をそのグループの各デコーダが2
つのビットだけ(すなわち、第2および第3の部分76
bおよび76c)を受け取り、それらのビットをデコー
ドして図に示されているように適切な予備行をアドレス
するような構造にすることができる。この例の場合、第
2の部分76bがセットされているいずれの場合におい
ても、MATCH信号が断定されており、したがって、
2つの予備行のうちの1つがアドレスされることにな
る。さらに、第2の部分76bがセットされている場
合、第3の部分の値によってアドレス2R の行またはア
ドレス2R +1の行のいずれかが活性化されることにな
る。したがって、いずれの場合でも、オリジナル・アド
レスは2つの予備行のアドレスのうちの1つに対して再
マッピングされる。
【0041】図6の上記の代替実施形態は、この分野の
技術に熟達した人によって合計2つまたはそれ以上の整
数個の予備行を含むようにさらに修正することができ、
その整数S個の予備行として表される。さらに詳しく言
えば、各予備行に対して、識別子回路48、コンパレー
タ44、イネーブル回路49、およびデコーダを追加す
ることができる。したがって、そのような代替実施形態
はS個の識別子回路48、S個のコンパレータ、S個の
イネーブル回路49、およびS個のデコーダを予備デコ
ーダのグループ74の中に含む。さらに、S個のコンパ
レータ44のそれぞれの出力は論理ORゲート78の入
力に接続される。したがって、これに関して、S個のコ
ンパレータ44のどれかがマッチを検出した場合、MA
TCHは第2の部分76bがセットされるように断定さ
れ、それによってオリジナル・アドレスが、元々それが
アドレスすることを意図していた一次行のグループの中
の行をアドレスしないように再マッピングする。したが
って、予備行の数Sを2より大きい値に拡張することに
よって、オリジナル・アドレスが再マッピングされると
きに、その適切な予備行を選択するための追加の技法が
必要であることにさらに留意されたい。したがって、1
つの方法においては、S個のコンパレータ44の各出力
をS個の対応している予備デコーダの1つに接続するこ
とができる。したがって、ビットRがセットされた場
合、対応しているコンパレータ44から断定された出力
を受け取っている予備のデコーダは、その対応している
予備行を活性化することになる。代わりに、S個のコン
パレータのそれぞれの出力を符号化して1つの信号に
し、それが次に予備デコーダのすべてによってデコード
されて、そのデコードされた信号に応答して、対応して
いる適切な予備行だけが活性化されるようにすることが
できる。したがって、いずれの場合でも、この分野の技
術に熟達した人であれば、与えられたメモリ構造に対し
て1つ、2つ、あるいはそれ以上の予備行に対して上記
の実施形態をどのように実装することができるかが分か
る。
【0042】図7はさらにもう1つの代替実施形態のブ
ロック図を示しており、この中で行の1つのブロックの
中の1つの欠陥行を予備行のブロックの中の予備行の1
つに再マッピングすることができる。さらに詳しく言え
ば、上記の実施形態の場合と同様に、以前の図からの類
似のエレメントが使われる場合、図7において共通の参
照番号が使われている。しかし、異なる特徴に対して
は、以下に説明されるように異なる参照番号が導入され
ている。
【0043】図7のデータ・メモリ20を参照して、ふ
たたび一般的に2R 個の行のある一次行のグループ8
0、および1つの予備行のグループ82をそれが含んで
いることに留意されたい。しかし、図7の実施形態にお
いては、一次行のグループ80は論理的に840 〜84
B で示されたいくつかの行のグループにまとめられてい
る。説明の目的で、Rはふたたび8に等しい(すなわ
ち、256個の一次行がある)と仮定し、そしてさらに
各ブロック84には4つの行があると仮定する。したが
って、一次行のグループ80は64個のブロックを含
み、各ブロックには4つの一次行がある。さらに、予備
行のグループ82も一次行のグループ80の中のブロッ
クと同じ数の行を備えているブロックによって構成され
ていることにさらに留意されたい。この例に対してさら
に、予備行のグループ82は単独のブロック(すなわ
ち、4つの予備行)だけを含むが、代替実施形態におい
ては、この分野の技術に熟達した人によって理解される
ように、2つ以上のブロックを含むこともできる。最後
に、一次行のグループ80および予備行のグループ82
の各グループに1つずつのデコーダ・グループが対応し
ており、それによって一次デコーダのグループ86およ
び予備デコーダのグループ88がそれぞれ提供されるこ
とに留意されたい。各デコーダのグループの中には、以
下に詳細に説明される理由のために、そのグループの中
の各行に対して単独のデコーダがあることが好ましい。
【0044】図7のアドレス変換回路22を参照して、
それは2つの点で図4のアドレス変換回路22と異なっ
ていることに留意されたい。まず最初に、図7において
は、アドレス変換回路22は上記の単独の行識別子では
なく、コンパレータ44に対する第2の入力として出力
される欠陥ブロック識別子回路90を含む。第2に、記
憶装置42からの2つの下位ビット以外のすべてのビッ
トがコンパレータに対する第1の入力として接続され、
一方、記憶装置42からのすべてのビットが図4の中の
コンパレータ44に接続されている。これらの違いの目
的および利点は、以下に説明される動作説明から理解さ
れる。
【0045】図7のコンポーネントの動作は多くの点に
おいて上記の各種の態様と同等であり、そして読者は前
の説明を良く理解していると仮定される。しかし、一般
に図7の実施形態は、上記のように単独の行のベースで
はなく、ブロックのベースで欠陥行を再マッピングする
ことができることに留意されたい。言い換えれば、デー
タ・メモリ20が製造された後、ブロック840 〜84
B のどれかの中の1つの行が欠陥行であるかが判定され
る。この場合、そのブロックの識別子が欠陥ブロック識
別子回路90の中に記憶される。ふたたび、その識別は
図4の識別子回路48の場合と同様にヒューズの方法に
よって実現することができる。しかし、この場合、単独
の行ではなく、行のブロックが使われているので、ブロ
ックのアドレスは1つの行のアドレスより少ない数のビ
ットで済む。4つの行があるこの例のブロックの場合、
ブロック識別子はその2つの下位ビット以外の欠陥行の
アドレスであることが好ましい。たとえば、一次行のグ
ループ80の中のアドレス00001111の行が欠陥
行であることが発見された場合、000011のブロッ
ク・アドレスが欠陥ブロック識別子回路90の中に記憶
される。さらに、上記の実施形態と同様に、イネーブル
回路49がセットされてアドレス比較をイネーブルす
る。次に、入力のアドレスが記憶装置42の中に受け取
られたとき、そのブロック・アドレス、すなわち(ビッ
ト[R−1:2])が回路90の中のブロック識別子と
比較される。ふたたび、マッチが見つかった場合、MA
TCH信号が断定され、それによって出力記憶装置46
の中のビットRがセットされる。したがって、出力記憶
装置46からの全体のアドレスがデータ・メモリ20に
対して接続されるとき、それは欠陥がなければアドレス
した筈であったその欠陥行をアドレスしないように再マ
ッピングされる。
【0046】図7についての上記の説明を前提として、
その中に説明されているデータ・メモリ20に関連して
いくつかの追加のコンポーネントがデコーディングに関
して必要となる。一次デコーダ・グループ86に関し
て、上記の実施形態と同様に、そのグループの各デコー
ダは既知の技法を使って作ることができ、R+1ビット
のアドレスを一次行のグループ86の中の2R 個の行の
1つに対してデコードすることができる。しかし、予備
デコーダのグループ88に関しては1つのブロックの行
の内部の個々の行をアドレスする必要があるので、図3
に関連して説明された追加のデコーディングが必要であ
ることに留意されたい。より詳しく言えば、図4と同様
に、図7の実施形態においても予備の各デコーダは出力
記憶装置46からビットRを受け取る。しかし、その他
に、予備の各デコーダは予備行のグループ82の中の予
備行の適切な1つを活性化するために十分な情報を受け
取らなければならない。1つの実施形態においては、こ
の情報は出力記憶装置46からの整数Lの下位ビットの
方法によって与えられる。ここでLはlog2 (1つの
ブロックの中の行の数)である。したがって、現在の例
においてはLはlog 2 (4)、すなわち、2に等し
く、したがって、出力記憶装置46からビット[1:
0]も各予備デコーダに対して接続されている。したが
って、出力記憶装置46からのビットRは、予備の各デ
コーダによってデコードされて入力アドレスが予備行の
ブロックに対して再マッピングされ、そしてL個の下位
ビットが予備ブロックのグループ82の中の行のうちの
選択された1つに対してデコードされることを示す。こ
の機能を前提として、既知のデコード構造を作って適切
な制御を実行することができる。他の実施形態として、
L個の各ビットを単独のデコーダに接続し、次にそのデ
コーダが予備行の1つに対して信号を出力し、そのデコ
ーダに対するL個の入力ビットの可能な組合せに基づい
て、その行を活性化するようにすることができる。
【0047】図7についての上記の説明を前提として、
この分野の技術に熟達した人であれば、本発明の適用範
囲は予備行に対する欠陥行のブロック指向の再マッピン
グも含むことが分かる。この代替案は上記の実施形態か
らの各種の利点を提供する他に、ある種の追加の利点を
提供することに留意されたい。たとえば、図7の実施形
態は4つの欠陥行のすべてが同じグループの行の中にあ
った場合、単独の行に対してだけではなく、4つまでの
欠陥行に対して1つの予備行に再マッピングすることが
できる。別の例として、図7の実施形態を4つの行以外
のブロック・サイズに拡張することができる。さらに、
図6は図4の回路を少し変更して複数の行を実装するこ
とができる方法を示していることを思い出されたい。同
様に、図7についてのそれらの説明を組み合わせること
によって、この分野の技術に熟達した人であれば、図7
を少し変更して、同様に2つ以上の予備ブロックに対し
て再マッピングすることができる。さらに追加の利点お
よび実施形態もこの分野の技術に熟達した人によって確
認される。
【0048】図8aは本発明の範囲内でのさらに他の代
替実施形態を示しており、それは上記の各種の実施形態
と各種の原理を共有する。しかし、その複雑性およびい
くつかの違いのために、図8aの中では新しい参照番号
が使われ、一方、この分野の技術に熟達した人であれ
ば、上記の各種の実施形態と共通の態様を共有するアイ
テムを次の用語以外にその接続から理解することができ
る。次に図8aを参照すると、キャッシュ回路の中に含
めることができて、ふたたびL2キャッシュ回路14に
関して図1の中で示されていたような方法で、アドレス
変換回路94からアドレスを受け取るためのデータ・メ
モリ92が一般的に示されている。しかし、より複雑で
はあるが有用であることの多い1つの実施形態として、
データ・メモリ92はBANK0〜BANK3で示され
ている4つの異なるメモリ・バンクを含む。さらに、各
バンクの内部では、記憶行は異なる「ウェイ」(この用
語はこの技術分野において知られている)に分離されて
いる。この例においては、そのような各BANKは4つ
のそのようなウェイに分類されているので、データ・メ
モリ92は4ウェイの連想メモリと呼ばれる。
【0049】データ・メモリ92の各BANKは、各B
ANKを別々にアドレスできるように、異なるデコーダ
によって同様な方法で一般的に作られる。したがって、
全体としてその複数のBANKは単独のBANKの中に
格納される情報の量の4倍を格納する。各BANKにつ
いての同様なエレメントをより良く理解するために、同
様な参照番号が各BANKに対して使われており、その
添字はその参照されたアイテムが所属するバンクを示し
ている。したがって、各バンクがどのように作られてい
るかの一例としてBANK0を眺めると、それはこの分
野の技術において知られているようなセンス・アンプの
ライン960 によって分離されている上部半分と下部半
分とを含む。センス・アンプのライン960 はBANK
0の上部または下部の半分のいずれかの指定されたウェ
イから情報を読み出すように活性化することができ、そ
れによってデータ・メモリ92からその情報を出力する
ことができる。しかしさらに、この既知の構成の他に、
回路は上記の実施形態と矛盾しない。詳しく言えば、B
ANK0の半分は一次行のグループと予備行のグループ
とを含む。したがって、BANK0の上部の半分は一次
行のグループ98T0を含み、一方、BANK0の下部の
半分も一次行のグループ98B0を含む。この好適な実施
形態においては、各一次行のグループは128個の行を
含み、各行は512ビット(すなわち、64バイト)の
情報を格納するように動作することができる。同様に、
BANK0の上部の半分は予備行のグループ100T0
含み、一方BANK0の下部の半分も予備行のグループ
100B0を含む。この好適な実施形態においては、各予
備行のグループは単独の行を含むが、上記で示されたよ
うに、その数はこの分野の技術に熟達した人によって増
やすことができる。最後に、BANK0は行デコーダの
カラム1030 を含み、それは図示せずが、各行に対す
る別々のデコーダを含み、したがって、一次および予備
行のそれぞれに対する別々のデコーダを含む。上記のよ
うに、データ・メモリ92の残りのバンクはBANK0
と同じ方法で作られ、したがって、この分野の技術に熟
達した人であれば、同様な参照番号(添字が異なってい
る)からそれらのバンクの各種のコンポーネントの関係
も容易に理解することができる。
【0050】アドレス変換回路94は一般に上記の実施
形態のいくつかと共通の態様を共有し、その中で、デー
タ・メモリ92に対して意図されているアドレスを、そ
のオリジナル・アドレスが欠陥行に対するものであった
場合に、オリジナル・アドレスから再マッピングされた
アドレスに変換することができる。しかし、アドレス変
換回路94の特徴および複雑性以外に、この共通の態様
をより良く理解するために、データ・メモリ92のメモ
リ・バンクの構成を前提として、アドレス変換回路によ
って受け取られるようなアドレスの好ましいフォーマッ
トを評価することがまず理解に役立つ。これに関して、
図8bはそのようなアドレスのフォーマットを示してい
る。次に図8bを参照して、示されているアドレスは3
2ビット信号であり、5つの部分を含むことに留意され
たい。各部分は次の通りである。そのアドレスの第1の
部分はバイト・オフセットであり、それはデータ・メモ
リBANKの1つの行の中のバイトの1つをアドレスす
ることができる。各行は64個のバイトを格納すること
を思い出されたい。したがって、この第1の部分は6ビ
ット幅(すなわち、26 =64バイト)である。そのア
ドレスの第2の部分はバンク識別(「i.d.」)であ
る。データ・メモリ92は合計4個のバンクを含むこと
を思い出されたい。したがって、この第2の部分は2ビ
ット幅(すなわち、22 =4バンク)である。そのアド
レスの第3の部分は、与えられたバンクに対して、その
アドレスがそのバンクの上部の半分に対応しているか、
あるいはその下部の半分に対応しているかを示す。した
がって、その指示は2つの可能性のうちの1つだけであ
るので、この第3の部分は1ビット幅(すなわち、21
=2個の可能な半分)である。そのアドレスの第4の部
分はライン・アドレスである。データ・メモリ92の各
BANKの各半分は合計128個の一次行を含むこと、
そしてそれらの行は4つの異なるウェイの中に分離され
ていることを思い出されたい。したがって、この第4の
部分は5ビット幅(すなわち、25 =32行*4ウェイ
=128行)である。そのアドレスの第5の部分はタグ
・アドレスであり、それはそのアドレスの残りの17ビ
ットを含む。このタグ・アドレスはデータ・メモリ92
に対応しているタグ・メモリ(図示せず)をアドレスす
るために使われ、それは上記の好ましいタイミングに従
って行なわれ、以下に説明されるようなアドレス変換回
路94の動作と同じクロック・サイクルの間に実行する
ことができる。さらに、この分野の技術において知られ
ているように、そのタグ比較に応答してヒットが発生し
た場合、どの「ウェイ」がヒットしているかの指示がタ
グ・メモリから出力される。この例は4つの可能なウェ
イを含んでいるので、この指示は2ビット幅(すなわ
ち、22 =4ウェイ)となる。次の説明に対して、この
指示はWAY[1:0]と略され、これは問題にしてい
る特定のウェイを示している2ビットの信号を示す。最
後に、次の説明に対して、アドレスのビットはADDR
[x:y]の決まりによって示されることに留意された
い。これは図8bからのアドレスからのビットのグルー
プを意味している。ここでxはそれらのビットのうちの
最上位ビットであり、そしてyはそれらのビットのうち
の最下位ビットである。たとえば、ADDR[7:6]
はビット7およびビット6のアドレス・ビット(すなわ
ち、バンクi.d.)に対応する。
【0051】アドレス変換回路94はビットWAY
[1:0]以外に、ビットADDR[13:6]を含む
アドレス入力記憶装置102を含む。アドレス入力記憶
装置102の出力はアドレス出力記憶装置104の下位
部分104aに接続されており、そしてその出力からの
ビットADDR[13:9]およびWAY[1:0]は
コンパレータ106の第1の入力にも接続されている。
コンパレータ106の第2の入力は欠陥行識別子ブロッ
ク108からの出力を受け取るように接続されている。
欠陥行識別子ブロック108は8個までの欠陥行識別子
108R1〜108R8を含み、そしてそれらの各識別子に
はイネーブル・ビット108EB1 〜108EB 8 が対応し
ている。各行識別子108R1〜108R8はヒューズなど
によって表される7つのビットを含み、データ・メモリ
92の中の欠陥行のアドレスを識別することが好まし
い。より詳しく言えば、それぞれが別々にアドレス可能
な上部および下部の半分を備えている4つのバンクの構
成は一次行のグループの8つの異なる集合を発生するこ
とを思い出されたい。したがって、これらのバンクの半
分のそれぞれに対して1つまでの欠陥行を8個の欠陥行
識別子108R1〜108R8で表すことができる。さら
に、欠陥行が識別されて行識別子108R1〜108R8
1つに符号化されると(たとえば、ヒューズを切ること
によって)、対応しているイネーブル・ビット108
EB1 〜108EB8 はその対応している行識別子が1つの
欠陥行を示していることを示すように構成される。最後
に、コンパレータ106の出力はアドレス出力記憶装置
104の上位部分104bに対してMATCH信号を提
供するように接続されている。
【0052】図8aの回路の動作が以下に説明される。
ここでふたたび読者は上記の例および実施形態について
熟知していると仮定され、したがって、図5の方法50
の段階と同等な段階が図8aに対して適用されることを
容易に理解することができると仮定される。したがっ
て、図8aの回路は方法50に一般的に従うが、1つの
バンクの与えられた半分の中の一次行に対して向けられ
たオリジナル・アドレスを、そのオリジナル・アドレス
が欠陥の一次行に対するものであることが判定されたと
きに同じバンクに対する1つの予備行に対して再マッピ
ングされるようにするオプションが可能になっている。
したがって、動作においては、第1のクロック・サイク
ルの間に、タグ・メモリがアドレスされ、そしてその同
じクロック・サイクルの間に図に示されているアドレス
およびウェイの部分がレジスタ102の中にロードされ
る。さらに、これらのアドレスおよびウェイの部分は記
憶装置104の下位部分104aにコピーされる。同じ
クロック・サイクルの間にビットADDR[8:6]が
欠陥行識別子ブロック108に接続される。図8bか
ら、これらのビットはバンクi.d.および問題として
いる行アドレスが識別されたバンクの上半分または下半
分のいずれから来ているかの両方を示すことに留意され
たい。応答において、欠陥行の識別子ブロック108は
1つの欠陥行が以前にそのバンクのその半分の中で識別
されていたと仮定して、アドレスされているそのバンク
の半分の中の欠陥行のアドレスと一緒にイネーブル信号
をコンパレータ44に対して出力する。次に、記憶装置
102からのオリジナル・アドレスの部分が、その識別
された欠陥行に対してコンパレータ106によって比較
される。ふたたび、コンパレータ106がその比較され
る信号間にマッチを見つけた場合、コンパレータはMA
TCH信号を断定し、それによってアドレス出力記憶装
置104の中の上位部分104bをセットする。結果と
して、コンパレータ106がマッチを見つけなかった場
合(すなわち、対照としているバンクの半分に対して識
別された欠陥行がなかったのでイネーブルされなかった
場合)、MATCH信号は断定されず、そして出力記憶
装置104の中のアドレスは実効的に不変のままになっ
ている。上記から、そのとき下位部分と上位部分104
aおよび104bがデータ・メモリ92に接続されるこ
とを思い出されたい。結果として(そしてタグ・マッチ
を仮定して)それに続くクロック・サイクルにおいて、
オリジナル・アドレスがその欠陥行をアドレスしないよ
うに再マッピングされて、その識別されたバンクのアド
レスされた半分に対する予備行をアドレスするようにな
るか、あるいは、一次行のグループのうちの1つの中の
行の1つにアクセスするために、オリジナル・アドレス
がそのまま接続されるかのいずれかとなる。
【0053】したがって、図8aおよび図8bについて
の上記の説明から、この分野の技術に熟達した人であれ
ば、本実施形態は連想メモリおよびそれらのメモリのバ
ンキングも含むことができることが分かる。ふたたび、
欠陥行を識別するためのヒューズなどの装置の個数は、
予備行を活性化するために1つのアドレスをデコードす
るための追加のヒューズ以外に各一次行についてのヒュ
ーズを含んでいる従来技術で必要な数よりもはるかに少
なくなる。さらに、そのヒューズの場所を集中化するこ
とができ、メモリ構造をより効率的な方法で構築するこ
とができる。さらに、図8aの実施形態はオリジナル・
アドレスが正しく動作している行に対して向けられてい
る場合において不変のままにされるか、あるいは欠陥行
であると識別された行に対して向けられている場合には
予備行に対して再マッピングすることができるように、
他のアドレッシング・フォーマットを修正できることを
さらに示している。
【0054】図8aの実施形態は上記のような追加の機
能および利点を提供するが、それは以下に説明されるタ
イミングの問題を発生させること、そしてそれがさらに
追加の本発明の実施形態によって対処されることにさら
に留意されたい。詳しく言えば、アドレス変換回路94
はその入力の一部としてWAY[1:0](すなわち、
ウェイ・ビット)を受け取ることを思い出されたい。ま
た、回路94のアドレス比較および変換の機能はそれら
のウェイ・ビットが作り出されるのと同じクロック・サ
イクルの間に、すなわち、その対応しているタグ・メモ
リ(たとえば、図1のタグ・メモリ18)に関するアド
レス比較と同じクロック・サイクルの間に行なわれるこ
とが好ましい。したがって、タグ・メモリの比較はその
ウェイ・ビットを出力するので、アドレス変換回路94
の比較動作は一見してそれらのビットを待たなければな
らない。このタイミングの問題に対する1つの方法は、
タグ比較が発生するクロック周期を十分に長く取って、
第1のイベントとして、ウェイ・ビットを出力し、そし
て次に、第2のイベントとして、アドレス比較を開始
し、アドレス変換回路94が、与えられたアドレスに対
して必要であれば、その変換を行うことができるように
する方法である。しかし、このイベント(すなわち、タ
グ比較)が完了した後、必要に応じて続く第2のイベン
ト(すなわち、ウェイ・ビットを使ってアドレス変換の
ための比較を開始する)を必要とせずに、この問題に対
処する追加の方法が以下に提供される。
【0055】アドレス変換回路94のアドレス比較に関
連したウェイ・ビットの上記タイミングの問題に対する
第1の方法として、上記の図7の実施形態に部分的に似
させるように図8aを変更することができることに留意
されたい。特に、図7の実施形態によって行のブロック
を欠陥ブロック識別子回路90によって識別することが
でき、到来するアドレスがその識別されたブロックの内
部のどれかの行に対して向けられていた場合、そのアド
レスが予備行のブロックに対して再マッピングされるよ
うにすることを思い出されたい。したがって、それと同
様な方法で、図8aの実施形態を変更してBANKの上
部または下部の半分の欠陥行の各指示がBANKの上部
または下部の半分の中の4行の1つの欠陥ブロックを代
わりに識別し、それらの4つの行が4つのウェイのそれ
ぞれに対応しているようにすることができる。この例に
おいて、到来するアドレス(すなわち、ADDR[1
3:6])が受信されると、そのアドレスが4つのウェ
イのブロックの中の4つの行の1つの中に入るかどうか
を判定するだけでよい。したがって、ウェイ・ビットは
欠陥ブロックの識別子に対して比較される必要はない。
言い換えれば、図7の中のアドレス変換回路22の記憶
装置42のように、図8aのアドレス変換回路94の中
の記憶装置102からの値に基づいて、比較のために必
要なビット数は2個少なくなる。図8aに対するこの変
更の例において、その比較から取り除かれる2つのビッ
トはビットWAY[1:0]となる。したがって、この
代替例においては、そのウェイ・ビットは比較のために
は不要なので、その変更されたアドレス変換回路94は
ADDR[13:6]のビットが受け取られるとすぐ
に、そしてそのウェイ・ビットを待つ必要なしに、直ち
に比較を開始することができる。結果として、上記のタ
イミングの問題は解消される。
【0056】アドレス変換回路94のアドレス比較に関
連したウェイ・ビットのタイミングの問題に対する第2
の方法として、ビットADDR[13:6]を使って欠
陥ブロックの対応しているビットに対して予備的な比較
を行い、そしてその後、ウェイ・ビットが利用できるよ
うになったとき、ビットADDR[13:6]からの予
備比較の結果を前提としてそれらを使うことができる。
これに関して、図9は図8aのデータ・メモリ92との
対話のために機能を実装するための他のアドレス変換回
路94aの回路図を示している。図9と図8aの同等性
を示すために、同様なアイテムに対しては同様な参照番
号が使われており、そして同等である回路94aの中の
それらの回路に対する参照番号に対して文字「a」が付
加されているが、図8aの中の回路94のそれに対応す
る部分とは異なっていることに留意されたい。回路94
aを参照すると、ここでもビットADDR[13:6]
は入力されるが、ここでは入力記憶装置106に接続さ
れており、それは図8aの記憶装置102が受け取って
いたビットWAY[1:0]を受け取らない。記憶装置
102aはビットADDR[13:9]をコンパレータ
106aに対して出力し、ビットADDR「13:6]
を出力記憶装置110の第2の部分110bに対して出
力する。また、アドレス・ビット[8:6]はアドレス
変換回路94aに対して入力され、そして図8aの中と
同じ方法で欠陥行識別ブロック108に対して接続され
ている。ふたたび、欠陥行識別ブロック108は8個の
行を備え、各行はここでは1つの欠陥行の7ビットのア
ドレスおよび対応しているイネーブル・ビットを格納す
るように動作し、その各欠陥行は図8aのデータ・メモ
リ92の中の複数のBANKのうちの異なるバンクの、
異なる上部または下部の半分にある。
【0057】欠陥行識別子ブロック108の出力の接続
に関して、それらは図8aの接続と異なっていることに
留意されたい。詳しく言えば、図9においては、各欠陥
アドレスの5つの最上位ビット(DA[6:2]として
示されている)がコンパレータ106aに接続されてい
る。しかし、各欠陥アドレスの2つの下位ビット(DA
[1:0]として示されている)は2‐4デコーダ11
2に接続されている。以下でより良く理解されるよう
に、これらの2つの下位ビットDA[1:0]は、欠陥
行識別子ブロック108によって識別された欠陥行が存
在している4つのウェイのうちの1つを識別する。2‐
4デコーダ112はデコーディングの技術において知ら
れているように動作する。すなわち、異なる各2ビット
入力に対してユニークな4ビット出力を作り出す。さら
に、その2ビットの入力は4つのウェイのうちの1つを
識別するので、ユニークな各4ビットの出力は以下に示
されるようにこれらのウェイのうちの1つに対応するこ
とにさらに留意されたい。残りの説明をし易くするため
の規約を設定するために、以下の表2が2‐4デコーダ
112に対する各2ビット入力に対応している4ビット
の出力を示している。
【0058】
【表3】 表2
【0059】2‐4デコーダ112の4つの出力はそれ
ぞれANDゲート1140 、114 1 、1142 、およ
び1143 の第1の入力に接続されている。首尾一貫性
のために、これらのANDゲートのそれぞれの添字は、
表2からDA[1:0]のビットによって識別される4
つのウェイのうちの1つに対するANDゲートに関連し
ていることに留意されたい。たとえば、ビットDA
[1:0]が00に等しい場合、それらはウェイ0を識
別しており、ANDゲート1140 がハイの入力を受け
取る。別の例として、ビットDA[1:0]が11に等
しい場合、それらはウェイ3を識別しており、ANDゲ
ート1143 がハイの入力を受け取る。ANDゲート1
140 、1141 、1142 および1143 のそれぞれ
の第2の入力は、コンパレータ106aによって出力さ
れるMATCH信号に接続されている。上記の表2が与
えられて、この分野の技術に熟達した人であれば、MA
TCHが断定されたハイ、4つのANDゲート11
0 、1141 、1142 、および1143 のうちの1
つがハイの信号を出力し、一方その残りのANDゲート
は行の信号を出力することが分かる。もちろん、MAT
CHが断定されていない場合、4つのANDゲート11
0 、1141 、1142 、および1143 の出力はす
べてローのままになっている。これらの結果の出力の目
的は、以下でより良く理解される。
【0060】また、アドレス変換回路94aは対応して
いるタグ・メモリから結果として4ウェイのそれぞれに
対するHIT信号を入力として受け取る。したがって、
図9の中ではこれらの信号はウェイ0〜3に対してW0
〜W3が名前として付けられている。より詳しく言え
ば、到来するアドレスと記憶されているタグ・アドレス
のうちの1つとの間のマッチをタグ・メモリが検出した
場合、それは4つの信号W0〜W3のうちの1つにHI
Tを断定する。これらの各信号がANDゲート11
0 、1161 、1162 、および1163 の第1の入
力にそれぞれ接続されており、そしてふたたび、首尾一
貫性のために、これらの各ANDゲートはそれが関連付
けられているウェイに対するANDゲートに関連してい
る。たとえば、ANDゲート1160 はW0入力からH
IT信号を受け取ることができ、ANDゲート1161
はW1入力からHIT信号を受け取ることができ、以下
同様である。ANDゲート1160 、1161 、116
2 、および1163 のそれぞれの第2入力はANDゲー
ト1140 、1141 、1142 、および1143 のそ
れぞれの出力に接続されている。
【0061】ANDゲート1160 、1161 、116
2 、および1163 に接続する他に、ウェイのHIT信
号を提供するための4つの入力は4‐2エンコーダ11
8に対する入力としても接続されている。エンコーダ1
18は上記の2‐4デコーダ112とは逆の方法で動作
する。すなわち、それが4つのウェイのうちの1つの中
のヒットを示している4ビットの信号を受け取った場
合、それに応答してどのウェイがヒットしているかを符
号化しているユニークな2ビットの信号を出力する。ふ
たたび、以下の説明のための決まりを設定するために、
下の表3は4から2ビットへのエンコーダ118に対す
る各4ビットの入力とその結果の2ビットの出力を示し
ている。
【0062】
【表4】 表3
【0063】エンコーダ118の2ビットの出力は出力
記憶装置110の第1の部分110aに接続されてい
る。
【0064】ANDゲート1160 、1161 、116
2 、および1163 は4入力のORゲート120の入力
に接続されている。ORゲート120の出力は出力記憶
装置110の第3の部分110cに接続されている。し
たがって、この分野の技術に熟達した人であれば、AN
Dゲート1160 、1161 、1162 、および116
3 のどれかがそれらの出力を断定した場合、ORゲート
120もその出力を断定し、それによって出力記憶装置
110の中のビットRを設定することが分かる。このビ
ットRの設定によって、図8aの実施形態の場合のよう
に、到来するアドレスがデータ・メモリ92の中の1つ
の予備行に対して再マッピングされることになる。
【0065】動作において、アドレス変換回路94aは
図8aのデータ・メモリ92に対してアドレスを提供
し、図8aのアドレス変換回路94のように、到来する
アドレスが欠陥行として識別された行に対して向けられ
ている場合はその到来したアドレスを再マッピングする
か、あるいは到来したアドレスが欠陥行に対して向けら
れていなかった場合は、データ・メモリ92の中の一次
行をそれがアドレスできるように実質的にその入って来
たアドレスを変化させないかのいずれかが行なわれる。
しかし、最初において、図9の実施形態が、アドレス変
換動作と、データ・メモリ92に対応しているタグ・メ
モリの4ウェイのうちの1つの中にヒットがあったこと
の判定との間のタイミングの問題を緩和したことも思い
出されたい。このイントロダクションを前提として、ア
ドレス変換回路94aの動作がふたたび開始され、到来
するアドレスを受け取り、ビットADDR[13:6]
が入力記憶装置102aに接続され、そしてビットAD
DR[8:6]が欠陥行識別子ブロック108に接続さ
れる。ADDR[13:6]に応答して、ビットADD
R[13:9]がコンパレータ106aの1つの入力に
接続され、そしてビットADDR[13:6]が出力記
憶装置110の第2の部分110bに接続される。AD
DR[8:6]に応答して、欠陥行識別子ブロック10
8の1つの行がアドレスされる。到来したアドレスがそ
の到来したアドレスによってアドレスされるBANKの
半分の中の欠陥行を有しているメモリのBANKに対応
している場合、欠陥行識別子ブロック108はイネーブ
ル・ビットと一緒にコンパレータ106aの第2の入力
に対してDA[6:2]を出力し、次の比較段階をイネ
ーブルし、そしてまた、DA[1:0]を2‐4デコー
ダ112に対して出力する。他方、到来したアドレスが
その到来したアドレスによってアドレスされている半分
の中の欠陥行のあるメモリのBANKに対応していなか
った場合、欠陥行識別子ブロック108からは欠陥アド
レスは出力されず、比較はイネーブルされない(たとえ
ば、イネーブル・ビットに行を出力することによっ
て)。したがって、究極的には入って来たアドレスが変
えられることなしにデータ・メモリ92に対して出力さ
れる。しかし、回路94aの残りの動作を詳細に説明す
るために、到来したアドレスによって比較イネーブル・
ビットおよび記憶された欠陥行のアドレスが出力され
て、それによって以下に説明される追加の動作が発生す
ると仮定する。
【0066】識別子ブロック108によって出力される
欠陥行のアドレスに応答して、2つの異なるアクション
が発生する。1つのアクションとしては、DA[1:
0]に応答して、2‐4デコーダ112は上記の表2に
従って4つのビットを出力する。現在の例の場合、DA
[1:0]はウェイ1に対応すると仮定し、したがっ
て、2‐4デコーダ112はビット・シーケンス001
0をANDゲート1143〜1140 に対してそれぞれ
出力する。もう1つのアクションとして、DA[6:
2]に応答して、コンパレータ106aがこれらのビッ
トを入って来たアドレスからのビットANDゲート[1
3:9]と比較する。そのウェイ・ビットはまだ比較さ
れていないので、コンパレータ106aによる比較は入
って来たアドレスからの現在比較されているビットが4
つの行(すなわち、4ウェイ)の1つが欠陥行である4
つの行のブロックに対して向けられているかどうかを判
定することに留意されたい。対応が見つからなかった場
合、ロー信号がANDゲート1143 〜1140 のそれ
ぞれに対するコンパレータ106aから接続され、した
がって、それらのANDゲートのそれぞれがロー信号を
出力する。この場合、ANDゲート1163 〜1160
のそれぞれがORゲート120に対してロー信号を必要
に応じて出力し、ORゲート120はそれに応答して出
力記憶装置110の第3の部分110cの中のRビット
をセットしない。したがって、以前の実施形態と同様
に、最上位ビット(すなわち、ビットR)がセットされ
ない場合、究極的に入って来たアドレスがデータ・メモ
リ92に対して実質的に変えられることなしに出力さ
れ、その入って来たアドレスによってアドレスされるデ
ータ・メモリ92の中の一次行が、その変えられなかっ
たアドレスを使ってアクセスされる。他方、DA[6:
2]とADDR[13:9]との間の対応が見つかった
場合、MATCHが断定され、以下に説明されるような
効果を生じる。
【0067】断定されたMATCH信号はANDゲート
1143 〜1140 のそれぞれの第1入力に対して論理
のハイを接続する。また、2‐4デコーダ112がその
出力の1つにおいて論理の1を出力していたことを思い
出されたい。したがって、このハイがANDゲート11
3 〜1140 の第2の入力の1つに対して接続され、
一方、他の3つのそれらのANDゲートのそれぞれがそ
のそれぞれの第2入力において論理の行を受け取る。現
在の例においては、デコーダ112からの論理のハイは
ウェイ1に対応することを思い出されたい。したがっ
て、ANDゲート1141 がその入力の両方において論
理のハイを受け取り、一方、他の3つのANDゲート1
140 、1142 、および1143 のそれぞれが1つの
入力において論理のハイ(すなわち、断定されたMAT
CH)を受け取り、別の入力において論理のローを受け
取る。これらの入力信号に基づいて、ANDゲート11
1はハイの信号を出力し、一方、1140 、11
2 、および1143 の各ANDゲートはロー信号を出
力する。ANDゲート1140 〜1143 からの各出力
信号はそれぞれ対応しているANDゲート1160 〜1
163 の1つの第1入力に対してさらに以下に説明され
るように接続される。
【0068】上記を前提として、入って来たアドレスが
ブロック108によってそれらの行のうちの1つが欠陥
行であるとして識別される4つの行(それぞれが異なる
ウェイに対応している)のグループに対して向けられて
いた場合、ANDゲート1160 〜1163 のうちの1
つに対する第1入力は論理のハイとなる。現在の例にお
いては、この第1の入力はANDゲート1161 に対す
る入力である。というのは、ウェイ1がビットDA
[1:0]によって識別される欠陥行を有していて、デ
コーダ112によってデコードされるからである。ここ
で、ウェイの各HIT信号は、ANDゲート1160
1163 のうちの対応している1つの第2入力にそれぞ
れ接続されていることを思い出されたい。したがって、
HIT信号の値が利用できる必要があるのは、現在説明
されている動作段階の中のこのポイントにおいてだけで
ある。言い換えれば、ANDゲート1160 〜1163
の動作に先行している段階はタグ・メモリが4つのウェ
イの1つに対応しているHIT信号の1つを発生してい
るのと同じときに実行される。結果として、上記の図8
aの説明の後で説明されたタイミングの問題は、アドレ
ス比較回路94aの動作を開始するためにはそのウェイ
・ビットが不要であるということによって大幅に緩和さ
れる。これらのウェイ・ビットが利用できるとき、それ
らはANDゲート1160 |1163 によって論理AN
Dゲート1140 〜1143 からの結果と論理的にAN
Dが取られる。入って来たアドレスが欠陥行として識別
された行のある4つの行のグループに対して向けられて
いた場合、これらのANDゲートのうちの1つがハイに
なる。
【0069】論理ANDゲート1160 〜1163 のそ
れぞれの動作の結果によって、入って来たアドレスがブ
ロック108によって識別された欠陥行に対するもので
あったかどうかが最終的に判定される。詳しく言えば、
最大でも論理ANDゲート1140 〜1143 の1つの
出力だけがハイであることを思い出されたい。したがっ
て、論理ANDゲート1160 〜1163 のどれかの出
力がハイとなる場合、それは論理ANDゲート1140
〜1143 の1つからの1つのハイ出力と、そしてウェ
イW0〜W3の1つに対応している断定されたHIT信
号も両方共受け取らなければならない。したがって、こ
の例を続けると、ANDゲート1140、1142 、お
よび1143 のそれぞれの出力はローである。したがっ
て、対応している論理ANDゲート1160 、11
2 、および1163 の出力もローである。しかし、論
理ANDゲート1161 に関しては、それが論理AND
ゲート1141 から受け取る論理のハイがW1のHIT
入力とANDが取られる。したがって、W1のHITが
断定された場合、すなわち、入って来たアドレスがウェ
イ1をアドレスしている場合、論理ANDゲート116
1 の出力もハイである。他方、入って来たアドレスがウ
ェイ1をアドレスしていなかった場合、W1におけるH
IT信号は断定されず、したがって、論理ANDゲート
1161 の出力はローである。
【0070】上記から、この分野の技術に熟達した人で
あれば、動作のこのポイントにおいて、論理ANDゲー
ト1160 〜1163 のすべての出力がローであるか、
あるいは最高でも、それらの出力のうちの1つがハイで
あることが分かる。この後者のイベントはその以前の各
判定が肯定的であるとテストされた後、すなわち、入っ
て来たアドレスがブロック108によって識別された欠
陥行に対して向けられていることが判定されたときに発
生する。また、これらの以前の肯定的な判定を前提とし
て、論理ANDゲート1160 〜1163 のうちの1つ
から論理ハイの出力があり、そしてそれによって論理O
Rゲート120の出力もハイになり、それによって出力
記憶装置110の第3の部分110cの中のビットRが
セットされる。反対に、この現在の例の中で入って来た
アドレスに対してW1以外のウェイがアドレスされた場
合の効果にも留意されたい。この場合、ANDゲート1
161 がその入力の1つにおいてANDゲート1141
からハイを受け取っていたが、その入力の他のものは論
理のローを受け取ることになる。したがって、ANDゲ
ート1161 の出力はローになり、ORゲート120の
出力がローになる。したがって、出力記憶装置110の
中のビットRはセットされない。
【0071】W0〜W3のHIT信号に基づいた論理A
NDゲート1160 〜1163 の動作の他に、これらの
信号は例を示す方法によって表3に従って4‐2エンコ
ーダ118によって符号化されることにも留意された
い。したがって、ウェイ1がアドレスされている現在の
例においては、エンコーダ118は01の値を出力す
る。2ビットの符号化を完了すると、この出力値は出力
記憶装置110の第1の部分110aに接続される。し
たがって、エンコーダ118の出力は到来するアドレス
の下位2ビットに対応する。
【0072】上記の各段階が実行されると、ふたたび出
力記憶装置110の中の全体のアドレスがデータ・メモ
リ92へ接続される。したがって、図8aの方法の場合
と同じように、そのアドレスは適切なメモリのBANK
の適切な半分に対する予備行のアドレスに対して再マッ
ピングされたものである。また、図8aの方法の場合と
同様に、ビットRがセットされない場合、そのアドレス
は実効的に変えられておらず、そして適切なメモリのB
ANKの適切な半分の中の予備でない行をアドレスする
ことになる。
【0073】図9の実施形態によって提供される改善の
理解を前提として、図10aおよび図10bは図9の各
種の概念を実装している回路図を提供し、さらに追加の
利点も提供する。図10aおよび図10bの構造の詳細
を説明する前に、いくつかのイントロダクションのコメ
ントが理解に役立つ。データ・メモリの中の行をアドレ
スするとき、Nビットのアドレスを受け取ってそれを2
N 個の行にデコードするために各種のデコーディング技
法が現れている。たとえば、256個の行が与えられた
場合、1つの方法は各行に対して8個のアドレス・ビッ
トのそれぞれが接続される必要のあるトランジスタ回路
網を含めることである。ここでその回路網は各行におい
て直列に接続された8個のトランジスタを必要とする。
より効率的な代替案として、この分野の技術においては
多数の行(たとえば、256)を備えている行のアレイ
に対して各行におけるデコーディングのレベルが増加す
るのを避けるために、与えられたレベルにおいて複数の
デコーダを使うことができることが知られている。した
がって、256個の行の例を続けると、第1のレベルは
3つのデコーダを含むことができ、最初のデコーダは2
‐4デコーダであり、そして第2および第3のデコーダ
は3から8へのデコーダである。したがって、その3つ
のデコーダを通過することによって、1つのアドレスが
256個のロケーションのうちの1つに究極的には到着
することができる。この複数のデコーダ技法を前提とし
て、図10aおよび図10bの回路図は図9からの各種
の概念を1つのそのようなデコーダの内部に含め、それ
によってその対応しているデータ・メモリ(たとえば、
図1の中のデータ・メモリ20)以外にアドレス変換回
路94aの両方に関してタイミングの問題をさらに改善
できる方法をさらに示している。
【0074】図10aおよび図10bを参照すると、一
般的に122において示されている3から8へのデコー
ダが提供されている。デコーダ122の上部を横断し
て、PD0 〜PD7 と名付けられている8個の出力があ
り、それらは1つの一次行に対応している。言い換えれ
ば、3ビットの信号を8個の可能性のうちの1つに対し
てデコードする際、1つの一次行がアドレスされるべき
動作において、これらの8個の出力のうちの1つが断定
される。しかし、さらに、デコーダ122はPD SP1
よびPDSP2 で表されている2つの予備行も含んでい
る。以下に示されるように、1つの予備行がアドレスさ
れるとき、一次行の出力の1つではなく、これらの予備
行の出力のうちの1つまたは他の出力が断定される。さ
らに、デコーダ122は3から8へのデコーダであるの
で、それを他のデコーダと組み合わせて合計で256個
の行(あるいは何らかの他の8の倍数の行)をアドレス
することができる。
【0075】デコーダ122をより詳細に眺めると、入
力の状態の3つのレベルはA0およびその補数/A0、
W0〜W3、およびS0〜S3を含んでいる。以下にさ
らに明確になる理由のために、W0〜W3は図9からの
信号と同じ名前の信号、すなわち、タグ・メモリから入
ってくるHIT信号に対応している。また以下に説明さ
れる理由のために、S0〜S3は図9の論理ANDゲー
ト1140 〜1143の出力に対応し、したがって、現
在入ってきているアドレスがその欠陥行を含んでいる行
のブロックをアドレスしている場合に、その記憶された
欠陥行の識別子によって識別されるウェイの指示を表
す。最後に、A0およびその補数は単純に、対象として
いるいくつかの第3のアドレスを表す。現在の例の場
合、A0 はADDR[8]に対応し、したがって、入っ
てきているアドレスが図8aのデータ・メモリ92の中
のBANKメモリの与えられた1つの上部半分または下
部半分に向けられているかどうかを示す。したがって、
出力PD0 〜PD3 を活性化してそれらのBANKメモ
リのうちの1つの上部半分をアドレスすることができ、
一方、PD4 〜PD7 を活性化してそれらのBANKメ
モリのうちの1つの下部半分をアドレスすることができ
る。したがって、これに関して、PDSP1 は同様にそれ
らのBANKメモリの1つの上部半分に対する予備行を
アドレスするために活性化され、一方、PDSP2 は同様
にそれらのBANKメモリの1つの下部半分に対する予
備行をアドレスするために活性化されることになる。
【0076】デコーダ122はダイナミック論理回路と
して構築されており、したがって、最初のフェーズにお
いてプリチャージされてからその最初のフェーズに続く
第2のフェーズの間に評価する(すなわち、条件によっ
て放電する)。これに関して、各出力は1つの対応して
いるプリチャージ・ノードPNを備え、それは対応して
いるクロックされたプリチャージ・トランジスタPTに
よってVDDへチャージされ、そして対応しているインバ
ータINVに接続される。その図を単純化するために、
そのような各ノード、プリチャージ・トランジスタ、お
よびインバータはその対応している出力と同じ添字を使
っている。各PNは3つのトランジスタに接続されてい
る。それらのトランジスタはすべてが導通している場
合、PNを放電用トランジスタDTに接続する。したが
って、1つのDTはハイのクロック信号のために導通
し、PNはPNをDTに接続している3つのトランジス
タのそれぞれが導通している場合にグラウンドに接続さ
れる。
【0077】PNをDTに接続する3つのトランジスタ
のうちの上側の2つをユニークに識別するために、その
2つのトランジスタのそれぞれがそのトランジスタに対
する入力信号に対応している大文字と文字「T」とを組
み合わせることによって、そしてまた、その直列の接続
を経由してトランジスタが接続されている出力に対応し
ている添字を含めることによって、その2つのトランジ
スタのそれぞれが示されている。さらに明確化するため
に、いくつかのトランジスタの名前はその識別子の上に
水平のバーを付けて示され、その場合、そのトランジス
タに対する信号入力は、その識別子の上に水平のバーを
含んでいない別のトランジスタの補数である。これらの
決まりを示すために、出力PD0 からDTへ追跡する次
の例を考える。したがって、PD0 は同様な添字の付い
たインバータ、すなわち、INV 0 を通じて接続されて
いる。INV0 に対する入力はこれらのトランジスタを
経由してDTに接続することができる。これらのトラン
ジスタのうちの最初のものが/TS0 (入力はSであっ
て、その入力の補数がそのトランジスタTS0 に対して
使われている)である。これらのトランジスタのうちの
第2のものはTW0(入力がWである)である。最後
に、この第2のトランジスタはトランジスタ/TA0に
接続されている。トランジスタ/TA0はそれの入力信
号の識別子と「T」を組み合わせ、そしてトランジスタ
TA0に対してその入力の補数が使われているので、同
じ名前の上に水平のバーを含めることによって命名され
ている。
【0078】図10aおよび図10bの中で使われてい
る識別子の決まりを紹介した後、一次行の出力はそれに
対応している「W」および「A]の入力がハイである場
合にハイになるが、対応している「S」入力は、一次行
の入力に対する各放電径路の中のトランジスタのゲート
に接続している「S」信号の補数であるのでローでなけ
ればならない。たとえば、プリチャージ・ノードPN3
に関しては、それはトランジスタ/TS3を通じて、ト
ランジスタTW3を通じて、そしてトランジスタ/TA
0を通じて、トランジスタDTに対して接続することが
できる。したがって、DTも導通している場合、TN3
はグラウンドに対して放電される。したがって、逆に、
2つの予備行の出力のいずれかがハイになるためには、
ふたたびそれの対応している「W]および「A」の入力
が、対応している「S」入力がハイでなければならない
のと同様に、ハイでなければならない。たとえば、プリ
チャージ・ノードPNSP1に関して、それはトランジ
スタDTに対してハイのSおよびWの対応している信号
が入力されている一対のトランジスタのどれかを通じて
導通する可能性がある。したがって、DTも導通してい
る場合、PNSP1はグラウンドに対して放電される。
【0079】デコーダ122の動作は次の通りであり、
以下の説明は以前の実施形態についての理解を仮定して
いる。プリチャージ・フェーズの間、図10aおよび1
0bに示されているCLOCK信号はローであり、した
がって、示されている10個のPNのそれぞれが論理の
ハイ信号(すなわち、VDD)に対してプリチャージす
る。結果として、図10aおよび10bの上部を横断し
ている10個の各出力が論理のローとなる。評価フェー
ズの間に、CLOCK信号はハイに遷移し、それによっ
て各PNをVDDから切り離し、その間DTも導通させて
いる。この点において、デコーダ122へ与えられた入
力信号に対応して、PNのうちの1つだけが放電する。
この動作をよりよく示すために、2つの例を仮定する。
その第1の例は欠陥行を含んでいる行のブロックの内部
にない行をアドレスする例であり、第2の例は予備行を
アドレスする。それぞれが以下に詳細に説明される。
【0080】デコーダ122の最初の動作例の場合、一
次行(予備行ではなく)がアドレスされる。したがっ
て、プリチャージ・フェーズの間の入力の次の特性に留
意されたい。第1に、4つのウェイ・ビットW0〜W3
のうちの1つが断定されるのと同時に、A0またはその
補数のいずれかが断定される。第2に、そのアドレスさ
れている行は欠陥行を含んでいる行のブロックの中には
ないので、MATCHは図9においては断定されない。
結果として、S0〜S3の各値(すなわち、ANDゲー
ト1140 〜1143 の各出力)は行である。したがっ
て、図10aおよび10bにおいて、/TS0 〜/TS
7 の各トランジスタが導通する。上記を前提として、A
0がハイであって、ウェイ1が入力アドレスによってア
ドレスされている(すなわち、W1がハイであって、一
方W0、W2およびW3が行である)例を仮定する。結
果として、評価フェーズの間に、次の4つのトランジス
タ、すなわち、(1)DT;(2)TA0;(3)TW
5 ;および(4)/TS5 が導通する。したがって、応
答において、PN5 が放電し、そして出力PD5 はデコ
ーダ122の残りの出力がローにとどまっている間にロ
ーからハイへ遷移する。したがって、この出力を次に直
接使って、あるいは他のデコーダの動作と組み合わせ
て、データ・メモリ92の中の適切な一次行を活性化す
ることができる。
【0081】デコーダ122の第2の動作例の場合、欠
陥行がアドレスされる。したがって、プリチャージ・フ
ェーズの間の入力の次の特性に留意されたい。まず最初
に、4つのウェイ・ビットW0〜W3のうちの1つが断
定されるのと同時に、A0またはその補数のいずれかが
断定される。第2に、アドレスされている行が欠陥行を
含んでいる行のブロックの内部にあるので、MATCH
が図9の中で断定される。結果として、S0〜S3のう
ちの1つがハイで、S0〜S3の他の3つが行である。
したがって、図10aおよび10bにおいて、8個のト
ランジスタTS 0 〜TS7 のうちの2つが導通する。上
記を前提として、/A0がハイ、ウェイ2が到来してい
るアドレスによってアドレスされていて、記憶されてい
る欠陥行のアドレスは、その欠陥行がウェイ2である
(すなわち、S2がハイである)ことも同様に示してい
ることを仮定する。結果として、評価フェーズの間に次
の4つのトランジスタ、すなわち、(1)DT;(2)
/TA0;(3)TW2 ;および(4)TS2 が導通す
る。したがって、応答においては、PNSP1 が放電し、
出力PDSP1 はデコーダ122の残りの出力が行にとど
まっている間に行からハイへ遷移する。したがって、次
にこの出力を直接に、あるいは他のデコーダの動作と組
み合わせて使ってデータ・メモリ92の中の適切な予備
行を活性化することができる。さらに、上記の直前の例
はウェイHIT(すなわち、W2)がその記憶されてい
る欠陥のウェイ(すなわち、S2が断定されている)に
マッチしていることを仮定している。しかし、その動作
をさらに詳しく説明するために、上記と同じ信号を仮定
するが、さらに入って来ているアドレスがウェイ3に対
するウェイHIT(すなわち、W3が断定されている)
を生じ、一方、欠陥の識別された行がふたたびウェイ2
の中にある(すなわち、S2が断定されている)と仮定
する。したがって、この場合、予備行以外の一次行がア
ドレスされるべきである。この目的に向かって、そして
これらの入力信号を前提として、ふたたび断定されてい
るS2が予備行をアドレスするために接続されているT
2 (およびTS6 )を導通させる。しかし、W2が断
定されていない(代わりに、W3が断定されている)の
で、そのときはTW2 は導通せず、したがって、PN
SP1 とグラウンドとの間には放電径路は生じない。した
がって、PDSP1 の出力は行のままになっている。代わ
りにS2およびW3が断定されていることをふたたび前
提として、出力PD3 からグラウンドへの放電径路が生
成される。というのは、次のトランジスタ、すなわち、
(1)DT;(2)/TA0;(3)TW3 ;および
(4)/TS3 が導通しているからである。したがっ
て、この例では、次にPD3 の出力が直接的に、あるい
は他のデコーダの動作と組み合わせて使われ、データ・
メモリ92の中の適切な一次行を活性化する。
【0082】デコーダ122の利点の最終のデモンスト
レーションとして、図11は対照的な従来技術の3‐8
デコーダ124を示している。この分野の技術に熟達し
た人によって理解されるように、デコーダ124に対す
る3つの入力は信号A、B、およびCである。したがっ
て、これらの入力信号の組合せに基づいて、DTがイネ
ーブルされていると、8個の出力PD0 〜PD7 のうち
の1つが断定される。言い換えれば、放電時に、プリチ
ャージ・ノードPN0 〜PN7 のうちの1つが放電さ
れ、そしてその放電されたノードが対応しているインバ
ータINV1 〜INV7 の1つによってインバートさ
れ、それによって対応している出力が行からハイへ遷移
する。この動作を前提として、任意の有効な出力に対す
る放電径路の長さは4トランジスタであり、すなわち、
放電は4つのトランジスタを含む直列接続径路の導通に
応答してのみ発生する。
【0083】図11に従来技術のデコーダ124が示さ
れているが、ここで図10aおよび図10bの本発明の
デコーダ122の放電径路も4つのトランジスタを含む
直列接続を必要とすること、したがって、本発明の実施
形態のデコーダ122は従来技術のデコーダ124とほ
ぼ同じ遅延時間で動作することに留意されたい。この同
等程度のスピードはデコーダ122が予備行を潜在的に
活性化する追加の機能を提供しながら達成されることに
留意されたい。言い換えれば、アドレスをデコードして
適切なワード・ラインを活性化するための好適な実施形
態のデコーダ122の遅延時間は、上記の行の冗長性機
能を実装することによってはそれほど増加しない。最後
に、予備デコーダのノード(すなわち、PDSP1 または
PDSP2のいずれか)を放電するためのデコーダ122
の動作のタイミングに関して、それらの予備行のノード
のそれぞれの接続は4個までのnチャネル・トランジス
タであり、一方、デコーダ124の各プリチャージ・ノ
ードは単独のNチャネル・トランジスタだけに接続する
ことに留意されたい。したがって、前者はこの余分のダ
イオード容量のために、遅延時間が僅かに長くなる可能
性がある。しかし、この遅延時間はそれ以降の予備行の
デコーダ(予備でない行のデコーダではなく)の高速応
答のために十分相殺される。というのは、以前に説明さ
れたように、予備行のデコーダは予備でない行のデコー
ダに比べて評価のための合計ビット数が少なくて済むか
らである。
【0084】上記から、上記の例はメモリの行の冗長性
を改善するための各種の代替方法を提供することが理解
できる。上記から多くの利点が示され、あるいは明らか
になっている。さらに、上記の例はメモリの行から情報
を読み出すために、そのメモリ行をアドレスすることに
関連して説明されているが、この分野の技術に熟達した
人によって確認されるように、僅かな変更で、その行に
対して情報を書き込む目的のためのメモリ行のアドレッ
シングにも上記と同じ多くの実施形態および原理が等し
く提供されることに留意されたい。したがって、この代
替例も明らかに本発明の適用範囲内にある。したがっ
て、本発明の実施形態が詳細に示され、また各種の置換
え、修正、または変更も提示されてきたが、さらに細か
い変形を、本発明の適用範囲から離れることなしに、上
記の記述に対して行うことができる。
【0085】<2. メモリ・カラムの冗長性>上記の
背景の中で述べられているように、メモリの中のカラム
の冗長性を実装するために従来技術においてはヒューズ
が使われている。それに関して次の発明の実施形態に対
するさらに追加のイントロダクションとして、図12は
一般的に300で表されている従来の技術のメモリ構成
を示している。構成300は従来技術で知られている各
種の技法に従って構築できるメモリ行のグループを含め
るための行アレイ302を含む。したがって、動作にお
いて、そのメモリ行の1つがその行をアクセスするため
に活性化され、そしてその活性化された行からの情報が
一連のメモリ・カラムに沿って出力される。さらに、そ
のメモリ・カラムはそのメモリの内部に含まれているセ
ンス・アンプからのカラム・ビット出力を単に表現して
いるに過ぎないことに留意されたい。実際には、メモリ
はいくつかの複数のカラム出力ビットである多数の物理
的カラムを含むことが多い。たとえば、256個の物理
的カラムを備えたメモリはそれらの物理的カラムをマル
チプレクサによって接続し、それらの256個の物理的
カラム上の64ビットだけが一度にセンス・アンプによ
って出力されるようにすることができる。もちろん、そ
の他の例も従来技術によって知られている。いずれの場
合でも、このドキュメントの目的のために、メモリ・カ
ラムという用語はそのメモリの実際の物理的カラムに対
応する意味でのメモリからのいくつかのビットの出力を
表現しており、ここでそれらの物理的カラムは普通はそ
れらのビットを出力するためのセンス・アンプに接続さ
れている。この背景を前提として、図12の例において
は、C0 〜C4 で表されている合計5個のそのようなメ
モリ・カラムがある。実際には、メモリ・カラムの実際
の数は5より大幅に大きい(たとえば、257、51
3、あるいはそれ以上の)可能性があるが、図および説
明を単純化するために、現在の例においては5個だけが
含まれている。以下により良く理解されるように、動作
においてこれらのメモリ・カラムの1つを除くすべてか
らのディジタル信号が、その後、構成300から出力さ
れ、その1つのメモリ・カラムは欠陥カラムであるの
で、普通は情報が出力されない(あるいは、何らかの他
の理由のために出力から除外される)カラムである。
【0086】構成300からのディジタル情報出力はメ
モリのカラム数より1だけ少ない一連の出力カラム番号
に沿って提供され、OC0 〜OC3 で表されている。各
出力カラムは対応している2入力のマルチプレクサM1
〜M4 の出力に接続されている。M1 〜M4 の各マルチ
プレクサの2つの入力は、マルチプレクサM1 の入力に
接続されている連続したメモリ・カラムC0 およびC1
の最初のペアから始まる連続したメモリ・カラムのペア
に接続されており、それぞれ昇順の番号が付けられたマ
ルチプレクサが次々のメモリ・カラムのペアに接続さ
れ、その連続したメモリ・カラムのペアはそのメモリ・
カラムの先行するペアの、より高い順序番号の出力カラ
ムを共有する。たとえば、マルチプレクサM1 の後の昇
順のマルチプレクサはM2 であり、そしてM2 の入力は
メモリのカラムC1 およびC2 へ接続されている(C1
およびC0 のカラム・ペアのうちC1 の方が上位の先行
するペアである)。この分野の技術に熟達した人であれ
ば、この接続パターンはマルチプレクサM4 にまで継続
し、マルチプレクサM4 の入力がメモリ・カラムC3
よびC4 に接続されることが分かる。最後に、M1 〜M
4 の各マルチプレクサの動作についての以下の説明をし
易くするために、各マルチプレクサの図の中に「0」と
「1」が示され、それによってそのマルチプレクサの制
御入力が論理のハイ(すなわち、論理1)の場合、その
マルチプレクサが図の中の「1」の側の入力を選択し、
一方、そのマルチプレクサの制御入力が論理のロー(す
なわち、論理0)の場合は、マルチプレクサは図の中で
「0」の側の入力を選択することを表すことが意図され
ている。たとえば、マルチプレクサM1 の制御入力に論
理0が加わると、それはメモリ・カラムC0 から入力を
選択し、したがって、その入力からの信号を出力カラム
OC0 へ出力する。
【0087】構成300はカラムの冗長性を実装するた
めにヒューズによる追加の接続を含む。これらのヒュー
ズはレーザのコンフィギュレーション・ヒューズまたは
それと同様なヒューズであることが好ましく、アレイ3
02およびその出力カラムがテストされた後、以下に詳
細に説明されるように欠陥カラムを分離するようにそれ
らのヒューズを構成することができる。そのヒューズを
見ると、構成300はマルチプレクサM1 の制御入力と
グラウンドとの間に接続されている第1のヒューズF1
を含む。ヒューズF1 の後に、連続した各マルチプレク
サの制御入力の間に追加のヒューズが接続されている。
たとえば、ヒューズF2はマルチプレクサM1 の制御入
力とマルチプレクサM2 の制御入力との間に接続されて
いる。また、このパターンはマルチプレクサM3 の制御
入力とマルチプレクサM4 の制御入力との間に接続され
ているヒューズF4 まで継続する。さらに、追加のもう
1つのヒューズF5 がマルチプレクサM4 の制御入力と
或る電圧源(図12においてVDDとして示されている)
に接続されている抵抗器Rとの間に接続されている。最
後に、抵抗器Rが図12の中に示されているが、ヒュー
ズF1 〜F5 の1つが切断される前、あるいはヒューズ
1 〜F5 のどれもが切断される必要がないと判定され
た場合のいずれかにおいて静的な電力を消費するのを避
けるために、普通はさらに複雑な回路が実装されること
に留意されたい。いずれにしても、抵抗の機能は次の説
明に特に密接に関係しているわけではなく、したがっ
て、図12の中の単独の抵抗器として単純化されてい
る。
【0088】カラムの冗長性におけるコンテキストにお
ける構成300の動作は次の通りである。まず最初に、
構成300が構築された後、出力カラムOC0 〜OC3
からアクセス可能な各メモリ・カラムが、既知の技法を
使ってテストされ、それらのメモリ・カラムのうちのど
れか1つが元々意図されているような情報を転送するこ
とができないかどうかを判定する。以下のさらに明確な
目的のために、メモリ・カラムC4 は冗長性のカラムで
あり、それによってメモリ・カラムC0 〜C3がこれに
関してテストされるようにしている。第2に、テストさ
れるメモリ・カラムの1つが欠陥カラムであると判定さ
れた場合、ヒューズの1つが切断され(すなわち、構成
され)そのメモリ・カラムの1つをその情報を対応して
いる出力カラムOC0 〜OC3 の1つに接続しないよう
に除外するか、あるいはそれが欠けているものとする。
この段階をより良く理解するために、まず最初にメモリ
・カラムC0 〜C3 のうちの1つが欠陥カラムであると
判定された場合の例を考える。応答において、その欠陥
のメモリ・カラムに入力が接続されている各マルチプレ
クサがその出力を欠陥カラムでないメモリ・カラムに接
続されている入力に対して接続するように、1つのヒュ
ーズが切断される。たとえば、テストの後、メモリ・カ
ラムC1 が欠陥カラムであることが分かったと仮定す
る。したがって、C1 からの構成300の外部接続に対
する電気的な通信を除外するために、ヒューズF2 がデ
ィスエーブルされる。応答において、マルチプレクサM
2 はヒューズF3 、F4 、およびVDDに対する抵抗器R
を経由しているその接続のために、その制御入力に論理
のハイ信号を受け取ることに留意されたい。結果とし
て、マルチプレクサM2 はメモリ・カラムC2 を選択
し、それを出力カラムOC1 に接続する。同様に、マル
チプレクサM1 はそのF1 を通じてのグラウンドへの接
続のために、その制御入力に論理のロー信号を受け取る
ことに留意されたい。結果として、マルチプレクサM1
はメモリ・カラムC0 を選択してそれを出力カラムOC
0 に対して出力する。結果として、メモリ・カラムC1
は2つのマルチプレクサM1 およびM2 を経由する通信
から除外され、そしてその信号は、何かあった場合で
も、構成300に対する外部接続には到達しない。
【0089】上記を前提として、この分野の技術に熟達
した人であれば、図12全体を通して他の例をたどり、
1 〜F5 のうちの1つを切断することによって1つの
メモリ・カラムが除外されることを識別することができ
る。そのような各ヒューズの上記の切断を詳細に説明す
る代わりに、ヒューズの切断のバリエーションとそれに
対応していてそのようなアクションの結果として除外さ
れる対応しているメモリ・カラムが以下の表4に示され
ている。最後に、表4はどのヒューズも切断されなかっ
た場合の結果を最後の行に示している。
【0090】
【表5】 表4
【0091】表4の最後のカラムは、どのヒューズも切
断されない場合に、メモリ・カラムC4 が除外されるこ
とを示している。というのは、各マルチプレクサM1
4の制御入力が論理ローを受け取るからである。した
がって、欠陥カラムに対するテストを行なう前には、ヒ
ューズはどれも切断されておらず、メモリ・カラムC 0
〜C3 はそれぞれOC0 〜OC3 の1つに接続されてい
ることに留意されたい。したがって、メモリ・カラムC
4 は冗長のカラムであり、上記のように初期テストの後
で冗長でないメモリ・カラムのうちの1つが欠陥カラム
であることが分かった場合に使うことができるカラムで
ある。
【0092】また、上記の構成はテストの段階において
1つまたはそれ以下の欠陥カラムが識別される場合にの
み使えることに留意されたい。詳しく言えば、2つ以上
のカラムが欠陥カラムであるとして識別された場合、構
成300そのものでは不十分である。というのは、構成
300の外部接続に達するのを除外できるカラムは1つ
だけだからである。さらに、テストによって、C1 〜C
5 のメモリ・カラムのどれもが欠陥カラムでないと判定
された場合において、構成300はそれらの5つのカラ
ムのうちの4つだけの情報を出力することに留意された
い。この例では、ヒューズはどれも切断されず、その場
合はC4 が除外される。さもなければ、メモリ・カラム
のうちのどれかを除外されるべきメモリ・カラムとして
選択されるようにすることが考えられる。この例では、
ふたたび表4がその選定されたメモリ・カラムを除外す
るように適切なヒューズを構成することを示している。
【0093】上記を前提として、図12の従来技術の構
成300は各種の利点を提供する。それはその構成を含
んでいるシステムに対して誤った情報を出力することを
避けるために、少なくとも1つの欠陥カラムを除外する
ことができる。しかし、本発明の発明者はその各種の欠
点も認識している。たとえば、構成300によって識別
されるヒューズの数は出力カラムの数より1だけ大き
い。この数値は図12の例においては5に過ぎないが、
出力カラムが数百にも及ぶもっと普通の例においては、
同様に数百個のヒューズを必要とすることになる。別の
例として、ヒューズは普通は図12の中の回路図の形式
で示されているように物理的に並べられていて、したが
って、構成300のカラムおよび他の構造に対して相対
的に多くの空間が必要となる。この分野の技術に熟達し
た人によって確認できる他の欠点以外に、これらの欠点
の観点から、本発明の発明者はこれらの欠点を改善し、
追加の利点も提供する各種の本発明の実施形態を以下に
提供する。
【0094】図13は一般的に304において示されて
いるメモリ構成の最初の発明の実施形態の電気的な図を
示している。構成304は或る意味において上記の図1
2に示されている構成と同じであり、したがって、共通
のエレメントが使われている場所では図12からの共通
の参照番号が付けられている。簡単にそれらの共通のエ
レメントを挙げれば、構成304はC0 〜C4 で表され
ている一連のメモリ・カラムに沿って、活性化されたと
きに情報を通信する任意の数の行を備えている行アレイ
302を含むことに留意されたい。ふたたび、行の数お
よび/またはカラムの数の両方が特定の実施形態におい
ては変わる可能性があり、カラムに関しては、図を単純
化するために、そして上記の従来技術との各種の対照を
表すために、現在の例においては5つだけが含められて
いる。ふたたび、これらのメモリ・カラムの動作におい
て、除外されるメモリ・カラム以外のすべてのメモリ・
カラムからのディジタル情報が究極的に構成304から
出力され、その除外されているメモリ・カラムについて
はその情報は出力されず、それは欠陥のメモリ・カラム
であるのが普通である。また、図12と同様に、図13
の構成304はメモリ・カラムの数より1だけ少ない数
で、OC0 〜OC3 として表されている一連の出力カラ
ムに沿って1つのカラムを除くすべてのカラムの出力を
出力する。最後に、図12の方法で、図13の中の各出
力カラムは対応している2入力のマルチプレクサM1
4 の出力に接続され、M1 〜M4 の各マルチプレクサ
がの2つの入力は連続したメモリ・カラムのペアに接続
され、連続したメモリ・カラムC0 およびC1 の最初の
ペアがマルチプレクサM1 の入力に接続され、そして各
昇順の番号のマルチプレクサが連続した次のペアのカラ
ムに接続されている。ここでこの昇順の次のペアはそれ
に先行しているカラム・ペアのより高い順序番号の出力
カラムを共有する。
【0095】構成304の従来技術に対する共通点を指
摘した上で、従来技術に対して対照的な図13の本発明
の実施形態の特徴を以下に説明する。詳しく言えば、図
13の中のM1 〜M4 の各マルチプレクサがの制御入力
は上記のように対応しているヒューズのペアの間には接
続されていない。それと対照的に、M1 〜M4 の各マル
チプレクサがの制御入力は代わりに温度計デコーダ回路
306の出力に接続されている。温度計デコーダ回路3
06は、以下により明確になる理由のために、そのよう
に名付けられている。温度計デコーダ306の入力は欠
陥カラム識別子エンコーダ308の出力に接続されてい
る。このエンコーダは以下に詳細に説明されるように、
カラムC0 〜C4 の中のカラムのどれか1つが欠陥カラ
ムであると分かった場合に、その欠陥カラムの識別子を
格納する。代わりに、欠陥カラム識別子エンコーダ30
8はこれも以下に説明されるように、特定のコードを出
力することによって、どのメモリ・カラムも欠陥カラム
でないことの指示を提供することができる。好適な実施
形態においては、識別子エンコーダ308の中の欠陥カ
ラムの符号化は一連の二値状態を出力するためにヒュー
ズを使って設定される。ふたたび、それは既知の技法を
使ってそれらのヒューズを構成することによって行なわ
れる。しかし、以下でより明確になる理由のために、欠
陥カラム識別子エンコーダ308は上記の図12の従来
技術の実施形態で必要となるヒューズの個数に比べて、
欠陥カラムを除外するためのヒューズの個数がはるかに
少なくて済む。最後に、温度計デコーダ回路306はそ
れの機能に関して後で説明されることを前提として、こ
の分野の技術に熟達した人であれば、構築することがで
きる。
【0096】構成304の動作は次の通りである。格納
されているデータを読み出すために行アレイ302がア
クセスされるとき、その中の行の1つが活性化され、カ
ラムC0 〜C4 のそれぞれに対して情報を通信するため
に接続される。次に、M1 〜M4 の各マルチプレクサが
温度計デコーダ回路306によって制御され、カラムC
0 〜C4 のうちの1つがそのデータ(もしあれば)を出
力しないように除外される。言い換えれば、それらの5
つのカラムのうちの4つだけがデータをカラムOC0
OC3 に対して出力するために通信する。さらに詳しく
言えば、この制御を提供するために、温度計デコーダ回
路306は以下に詳細に説明されるようにエンコーダ3
08の中の欠陥カラムに基づいて、M1 〜M4 の各マル
チプレクサに対して制御ビットを提供する。その説明に
入る前に、エンコーダ308の中の欠陥カラムの識別に
よっていくつかのビットが温度計デコーダ回路306に
対して出力され、そこでそれらのビットはメモリ・カラ
ムC0 〜C4 の中に欠陥カラムがあれば、それがどのカ
ラムであるかを示す。以下でより明確になる理由のため
に、エンコーダ308の中の欠陥カラムの識別は次の式
1によって定義されるビット数の出力だけを定義すれば
よい。
【0097】
【数1】 出力ビット数=fCEILING {log2 (N+1)} 式1 但し、Nは行アレイ302からの出力カラムの個数であ
り、したがって、N+1はメモリ・カラムの個数であ
る。そして、fCEILING はlog2 (N+1)の値が整
数であればその値を取り、あるいはそのlog2 (N+
1)の値が整数でない場合は、その次の大きい整数値に
その値を丸める関数である。
【0098】したがって、現在の例においては、エンコ
ーダ308の中の欠陥カラムの識別は3ビット(すなわ
ち、
【数2】fCEILING {INT(log2 (4+1)}=
CEILING {2.23}=3) を出力する。
【0099】欠陥カラム識別子エンコーダ308の出力
ビット数が与えられて、各マルチプレクサを制御するた
めの温度計デコーダ回路306によって提供される出力
が次の表5に示されている。
【0100】
【表6】 表5
【0101】表5が与えられて、最初のカラムの中の表
5からの3つの符号化ビットは実際には合計8種類の可
能なシーケンス(すなわち、23 =8シーケンス)を発
生することに留意されたい。しかし、それらの8種類の
可能なシーケンスのうちの5個だけが必要であり、した
がって、他の3つのシーケンスは無関係である。
【0102】表5に示されているマルチプレクサの制御
信号にアクセスすることによって、この分野の技術に熟
達した人であれば、それらの制御信号によって、欠陥カ
ラム識別子エンコーダ308が識別した欠陥カラムが出
力カラムOC0 〜OC3 との通信からどのように除外さ
れるかを理解することができる。たとえば、行アレイ3
02が製造された後の或る種の既知のテストによって、
メモリ・カラムC1 が欠陥カラムであると判定された場
合を考える。したがって、表5の第2行(上からの)は
そのような場合におけるメモリ構成304のセットアッ
プおよび動作を示している。このセットアップおよび動
作を詳細に調べることによって、まず最初に、欠陥カラ
ム識別子エンコーダ308がメモリ・カラムC1 を識別
するユニークなビット・シーケンス(たとえば、00
1)を出力することによって、メモリ・カラムC1 が欠
陥カラムであることを示す。応答におて、温度計デコー
ダ回路306が対応しているマルチプレクサM4 〜M1
に対して表5の第2行に示されているビット列を出力す
る。図13に戻って、マルチプレクサM4 、M3 、およ
びM2 のそれぞれがその制御入力において論理1を受け
取っているとき、それは図13に示されているように、
そのマルチプレクサの左側へ向かう入力を選択する。そ
れによって、この例においては、メモリ・カラムC4
2 が出力カラムOC3 〜OC1 とそれぞれ通信するこ
とに留意されたい。しかし、マルチプレクサM1 はその
制御入力に論理0を受け取り、したがって、それは図1
3に描かれているようにそのマルチプレクサの右側へ向
かう入力を選択する。したがって、M1 はメモリ・カラ
ムC0 が出力カラムOC0 と通信するようになる。この
4つのマルチプレクサの動作によって、メモリ・カラム
1 はメモリ構成304から出力として除外される。最
後に、上記の信号は例を示す方法によるものであり、こ
の分野の技術に熟達した人には理解されるように、コン
プリメンタリ信号および補数された制御信号をマルチプ
レクサM1 〜M4 において使うことによって、同じ機能
を実現することができる。
【0103】すぐ前の例および上記の説明が与えられ
て、この分野の技術に熟達した人であれば、メモリ・カ
ラムC0 〜C4 のそれぞれを温度計デコーダ回路306
に対する3ビットの信号によってユニークに識別するこ
とができる方法、および次に温度計デコーダ回路306
が表5に示されている値を出力してその指定された欠陥
カラムを出力カラムOC0 〜OC3 からの出力として除
外する方法を理解することができる。さらに、「温度計
デコーダ」という名前を選択した理由は表5から理解す
ることができる。詳しく言えば、表5のボトムからトッ
プへの次々の各行に対して、論理0の個数の各行に対す
る増分、およびそのページの右から左への行の中での現
われ方に留意されたい。言い換えれば、表5の中で論理
0の存在しないトップの行から出発して、そのすぐ下の
行にはその右端に論理0が1個あり、その次の下の行に
はその右側2つのエントリに2つの論理0があり、以下
同様になっている。別の言い方をすれば、各行の右から
始まる論理0の個数は欠陥カラムの符号化によって表さ
れる二進数値に等しいことに留意されたい(たとえば、
011の場合、それは二進数値の3であり、表5の中の
関連している行の右から開始して3個の論理0があ
る)。したがって、いずれにしても、温度計に相当する
方法で、目盛りの一端から他端へ増加する形でヌル値
(たとえば、1がない値)から最大のしきい値(すべて
1)へ向かって調整する目盛りがある。提供されている
ディジタルの実施形態においては、この目盛りはビット
のシーケンスによって表されている。言い換えれば、そ
の極端な場合の目盛りはすべて0であり、他の極端な値
はすべて1である。それらの2つの極端な値の間では、
その目盛りはシーケンスの一端から或る中間のビットま
でが論理1であり、そしてそのシーケンスの他端からそ
の中間のビットの次のビットまでが論理0である。さら
に、この温度計のパターンのために、除外される可能性
のあるN+1個のメモリ・カラムのそれぞれに対して異
なるシーケンスが発生されることにも留意されたい。し
たがって、これらの可能なシーケンスの各1つから選択
するために、欠陥カラム識別子エンコーダ308の二進
出力はN+1個までの組合せを出力するように動作しな
ければならず、それによって上記の式1によって設定さ
れるような個数のヒューズ(あるいは二進信号を表すこ
とができる他の装置)が全体として必要になる。
【0104】上記の説明および例は一般的にメモリ・カ
ラムC0 〜C3 のうちの1つがテスト後に欠陥カラムで
あることが分かると仮定している。しかし、欠陥カラム
がない場合でも、それらのメモリ・カラムのうちの1つ
が出力としては除外される必要がまだある。したがっ
て、1つの方法として5つのメモリ・カラムのうちの1
つを任意に選択し、そのコード(すなわち、表5の第1
カラムの中で識別されている)を欠陥カラム識別子カラ
ム304の中で符号化することができる(技術的にはそ
のカラムは欠陥カラムでない場合であっても)。代わり
に、ヒューズが切断されない場合、その符号化信号は0
00となり、それは表5のトップの行に示されている。
したがって、そのコードによってメモリ・カラムC0
出力として除外される。さらに、他の代替案がこの分野
の技術に熟達した人によって理解される。
【0105】メモリ構成304の構造および動作につい
ての詳細説明が示されたところで、従来技術に比べての
その利点のいくつかを示す。第1に、温度計デコーダは
ヒューズを含まず、そして従来技術のようにマルチプレ
クサ制御のそれぞれの間のヒューズは不要である。した
がって、そのようなヒューズに関連する複雑性(たとえ
ば、設計、使用面積)が解消される。さらに、図13の
本発明の実施形態を実装するために必要なヒューズ(あ
るいは他の符号化装置)の個数は図12の従来技術の場
合に比べてはるかに少なくなっていることに留意された
い。与えられている例においては、欠陥カラム識別子エ
ンコーダ308は合計の識別子の必要な個数を表すため
のヒューズは3個だけで済む(たとえば、5個の識別子
の場合、メモリ・カラムC1 〜C4 のそれぞれに対して
1つ)。一方、図12の方法では5個のヒューズが必要
である。さらに、図12および図13はメモリ・カラム
が5個だけしかないメモリの単純化された例を示してい
る。現在の技術においては、より普通の例は257個の
メモリ・カラムの程度の数を含む可能性がある。したが
って、図12の従来技術の方法では、合計257個のヒ
ューズが必要である。それに対照的に、図13の本発明
の実施形態を257個のメモリ・カラムに拡張した場
合、欠陥カラム識別子エンコーダ308の中で必要とな
るヒューズは9個(すなわち、
【数3】fCEILING {log2 (257)}−f
CEILING {8.01}=9) で済むことになる。さらに、そのヒューズの場所は従来
技術の場合よりさらに集中化できることに留意された
い。さらに別の例として、そして以下に説明されるよう
に、図13の実施形態はメモリのバンクおよび/または
各種の行冗長性技法と関連してさらに実装することがで
き、従来技術に比べてさらに追加の改善を提供する。さ
らに他の利点がこの分野の技術に熟達した人によって確
認される。
【0106】図14は一般的に310において示されて
いるメモリ構成の他の発明の実施形態を示している。メ
モリ構成310は以前のセクションで説明された図8a
の中と同じ方法で、BANK0〜BANK3で示されて
いる4つの異なるバンクのメモリを含む。情報構成31
0の各BANKは一般的に同様な方法で作られ、デコー
ダが異なっていて各BANKを別々にアドレスできるよ
うになっている。したがって、合計で、BANKは単独
のBANKの中に格納される情報の量の4倍を格納す
る。各BANKの同様なエレメントをより良く理解する
ために、各BANKに対して同様な参照番号が使われ、
その参照されるアイテムが所属するバンクを示している
添字が付けられている。したがって、各バンクがどのよ
うに構築されているかの一例としてBANK0を見る
と、それは上部半分の312T0および下部半分の312
B0を含み、各バンクの半分は図13の行アレイ302の
方法と同様に、1つのメモリ行アレイを表している。さ
らに、バンクの半分は従来技術において知られているよ
うに、センス・アンプのライン3140 によって分けら
れている。センス・アンプのライン3140 はBANK
0の上部または下部の半分のいずれかの行から情報を読
み出すために活性化することができ、それによって究極
的に構成310からアドレスされた情報が出力される。
さらに詳しく言えば、センス・アンプ3140 は上部半
分の312T0または下部半分の312B0のいずれかの中
の行がデコーダ・グループ3160 の適切な1つによっ
て活性化された後、行から各カラム上にデータをセンス
する。現在の実施形態の場合、そして例を示す方法によ
ってだけ、究極的には256個のそれぞれの出力カラム
に沿って合計256ビットのデータを出力することが望
ましい。したがって、カラムの冗長性を実現するには、
各バンクの半分が1つの追加のカラムを含み、合計で2
57個のメモリ・カラムを提供し、ここでそれらのカラ
ムのうちの1つまでを欠陥カラムとして検出することが
でき、そしてそれ以降、以下に説明される方法で出力と
しては除外される。その説明に入る前に、1つのバンク
の半分の中で単独の行の活性化に応答して、257個の
カラムのそれぞれに沿ってすべての257個のデータ信
号がセンス・アンプのライン3140 によってセンスさ
れ、トライステート・バッファ3180 へ出力され、ア
クティブのとき、その257個のデータ・ビットをバス
Bへ接続することに留意されたい。最後に、どれかのバ
ンクの中の行のどれか1つを、図8bに関連して上で詳
細に説明されたようなアドレスによってアドレスするこ
とができる。そのさらに詳細についてはその図の説明を
参照されたい。現在の実施形態の目的のために、4つの
バンクの1つに対するアドレスは、4つのバンクのうち
の1つを指定するための少なくとも2つのビットと、選
択されたバンクの上部または下部の半分のいずれかを指
定するための単独の追加ビットを含むことになる。図8
bにおいては、これらのビットはADDR[8:6]で
あり、したがって、首尾一貫性のために、ただし、それ
に限定することなしに、それらの同じビットが現在の例
に関して使われている。
【0107】構成310は以下に説明されるように、上
記の図13の方法における各種の方法に関して動作する
複数のアレイ回路320をさらに含む。さらに詳しく言
うと、バスBを経由してのトライステート・バッファ3
180 〜3183 のそれぞれからの257ビットの出力
がマルチプレクサ・アレイ回路320の入力に対して接
続されていることに留意されたい。マルチプレクサ・ア
レイ回路320はBANK0〜BANK3のそれぞれの
中のメモリ・カラムの数より1だけ少ない数のマルチプ
レクサを含み、したがって、現在の例においてはM1
256 として示されている256個のマルチプレクサを
含む。さらに、バスBからのカラム・データのビット
は、図13の中のマルチプレクサM1 〜M4 に対してカ
ラム・データが接続されているのと同じ方法で、マルチ
プレクサM1 〜M256 のそれぞれに接続されている。し
たがって、M1 〜M256 の各マルチプレクサの2つのデ
ータ入力はマルチプレクサM1 の入力に接続されている
連続したメモリ・カラムC0およびC1 の第ペアから始
まって、連続したメモリ・カラムのペアに接続され、そ
して昇順に番号付けられた各マルチプレクサは連続した
メモリ・カラムの次のペアに接続され、そこでこの次の
ペアは昇順のそれより高い番号の出力カラムのペアを共
有し、したがって、このパターンはメモリ・カラムC
255 およびC256がマルチプレクサM256 に対する入力
として接続されるように、マルチプレクサ・アレイ回路
320の中で継続する。最後に、M1 〜M256 の各マル
チプレクサの出力は対応している出力カラムOC0 〜O
255 を提供し、それによって構成310からの出力デ
ータに対して動作することができる。
【0108】マルチプレクサ・アレイ回路320の25
6個のマルチプレクサは温度計デコーダ回路322から
のそれぞれの制御信号によって制御される。さらに詳し
く言えば、温度計デコーダ回路322は図13の温度計
デコーダ回路306と同じ方法で構築されるが、図13
の温度計デコーダ回路306は4つのマルチプレクサだ
けで制御され、図14の温度計デコーダ回路322はマ
ルチプレクサ・アレイ回路320の256個のマルチプ
レクサを制御する。結果として、温度計デコーダ回路3
22は256個の制御信号を出力し、それぞれ1つずつ
がマルチプレクサ・アレイ回路320の各マルチプレク
サに対応している。さらに、上記の表5から、この分野
の技術に熟達した人であれば、提供される制御信号は上
記のような温度計パターンの257種類の可能な組合せ
の1つを表すこと、すなわち、すべて論理1が続いた後
にすべて論理0が続くように、中間のパターンはそのパ
ターンの中の或る点まで論理1を表し、それとそのパタ
ーンの残りの部における論理0と組み合わせられること
は理解される。
【0109】温度計デコーダ回路322は欠陥カラム識
別子エンコーダ324から1つの入力(現在の例では9
ビット)を受け取る。欠陥カラム識別子エンコーダ32
4に関して、それは8個までの異なる欠陥カラムを記憶
することに留意されたい。この場合、それらの各カラム
は構成310の4つのバンクのうちの異なる1つの異な
る上部または下部の半分の中にある。この態様をさらに
説明するために、8つの行がメモリの4つのバンクの中
の行の各半分の下部から上部へ対応して欠陥カラム識別
子エンコーダ324の中に示されている。たとえば、欠
陥カラム識別子エンコーダ324の中のボトムの行はB
ANK0の下部の半分312B0の中の欠陥カラム(もし
あれば)の識別子に対応している。別の例として、欠陥
カラム識別子エンコーダ324の中のトップの行はBA
NK3の上部の半分312T3の欠陥カラム(もしあれ
ば)の識別子に対応している。ビットADDR[8:
6]は以下の動作説明で詳しく示されるように、8個の
行のうちの1つを選択するために欠陥カラム識別子エン
コーダ324に対する入力として接続されていることに
留意されたい。最後に、欠陥カラム識別子エンコーダ3
24の中の8個の各エントリは図13の欠陥カラム識別
子エンコーダ308に類似した方法で識別子を提供する
が、欠陥カラム識別子エンコーダ308は5つの可能な
欠陥メモリ・カラムのうちの1つを符号化していた。し
かし、欠陥カラム識別子エンコーダ324の中の8個の
各エントリは、257個の可能な欠陥メモリ・カラムの
うちの1つを符号化していることに留意されたい。した
がって、上記の式1を適用して、欠陥カラム識別子エン
コーダ324の中の8個の各エントリは、その長さが9
ビット(すなわち、
【数4】fCEILING log{257}=9) となることに留意されたい。
【0110】構成310の動作は次の通りである。最初
に、到来するアドレスはBANK0〜BANK3のうち
の1つの中の行の1つをアドレスするために受け取られ
る。この到来するアドレスを各種の既知の技法に従っ
て、あるいはこのドキュメントの中で以前に説明された
本発明の実施形態と矛盾しないようにデコードすること
ができる。いずれにしても、デコーダ3160 〜316
3 のうちの少なくとも1つがその到来するアドレスによ
ってアドレスされる行を活性化する。説明し易くするた
めに、到来するアドレスはBANK3の下部半分312
B3の中の1つの行をアドレスすると仮定する。したがっ
て、アドレスされるBANK3に対応しているセンス・
アンプのライン3143 は、その活性化された行の25
7個の各メモリ・カラムからのデータをセンスし、そし
てそのデータがトライステート・バッファ3183 を経
由してバスBへ出力される。この同じ時刻において、ビ
ットADDR[8:6]が欠陥カラム識別子エンコーダ
324に接続されることにも留意されたい。したがっ
て、現在の例においては、これらのビットは現在ADD
Rされている行がBANK3の下部半分の312B3の中
にあることを示している。応答において、欠陥カラム識
別子エンコーダ324はBANK3の下部半分312B3
の中の欠陥カラムの9ビットの識別子を出力し、この出
力が温度計デコーダ回路322に接続される。9ビット
の識別子によって、温度計デコーダ回路322は256
ビットの温度計パターン・シーケンスをマルチプレクサ
・アレイ回路320に対して出力し、それによってマル
チプレクサ・アレイ回路がBANK3の下部半分312
B3のメモリ・カラムC0 〜C256 のうちの1つを、出力
カラムOC0 〜OC255 によって提供される出力から除
外する。たとえば、BANK3の下部半分312B3の中
のメモリ・カラムC40が欠陥カラムであると仮定する。
したがって、温度計デコーダ回路322は256ビット
のパターンをマルチプレクサ・アレイ回路320に対し
て提示し、それによってマルチプレクサM256〜M41
それぞれの制御入力において論理1を受け取り、一方、
マルチプレクサM40〜M1 はそれぞれの制御入力におい
て論理0を受け取る。結果として、上記の説明を前提と
して、この分野の技術に熟達した人であれば、BANK
3の下部半分312B3のメモリ・カラムC40からのデー
タが除外され、一方、データの残りのメモリ・カラムが
出力カラムOC0 〜OC255 へ渡されることが理解され
る。
【0111】メモリ構成310の構造および動作につい
て詳しく説明したところで、それは上記図13の利点を
提供し、それ以外にさらに追加の利点を提供することに
留意されたい。たとえば、複数BANKのメモリを使う
ことによって、各バンクは冗長性カラムを含むことがで
き、それによってそれらのカラムを除外するための機能
を依然として維持しながら、欠陥カラムとなるカラムの
個数をより大きくすることができる。さらに、バンクの
半分(あるいは他の何らかの形式の分離)で各バンクを
アドレスすることによって、冗長性の量はさらに増える
可能性がある。さらに、もう1つの例として、図14の
実施形態は本発明の範囲の各種の態様を異なるサイズの
メモリに対して適用できることを示している。また、さ
らに別の例として、以前のセクションで関連付けられた
各種のタイミングの問題は現在の実施形態には適用され
る必要がないこと、したがって、キャッシュ構造を含ん
でいる各種のメモリ構造に対してもこれらの実施形態を
適用することができるが、それには限定されないことに
留意されたい。最後に、上記の例はメモリからの情報の
読出しに関連して説明されたが、それ以外にメモリの内
部の行に対して情報を書き込むためにも同様な方法でカ
ラムを除外できることにも留意されたい。
【0112】図15は一般的に326で示されているメ
モリ構成の本発明の代替実施形態を示している。メモリ
構成326は現在の実施形態においては4つのメモリ・
セクション3280 〜3283 に論理的に、あるいは物
理的のいずれかで分離されているメモリ・アレイ328
を含む。分離の技法の如何にかかわらず、現在の実施形
態においては、メモリ・アレイ328の全体に沿って1
つの行が一度にアクセスされる。たとえば、メモリ・セ
クション3283 の最下部の行がアクセスされる場合、
セクション3282 、3281 、および3280 の最下
部の行も同時にアクセスされる。各メモリ・セクション
は3300 〜3303 として示されているそれぞれの一
次カラム・グループを含む。これらのグループは上記の
行で使われている用語と同じ意味で「一次」と呼ばれ
る。すなわち、ここでは行ではなくカラムであるデータ
転送エレメントが普通に期待された動作をするが、欠陥
のエレメントであることが発見される可能性があり、そ
の場合に予備のエレメントが代わりにデータを転送する
ために使われることを意味する。例を示す方法によっ
て、各一次カラム・グループは64個のカラムを含むと
仮定する。さらに、各メモリ・セクションは3320
3323 として示されている単独の予備カラムをさらに
含む。
【0113】したがって、上記から、3280 〜328
3 の各メモリ・セクションは合計で65個のメモリ・カ
ラムを含む。これらの各メモリ・カラムは3340 〜3
34 3 で示されている、対応しているマルチプレクサ・
アレイ回路に接続されているように示されている。図1
5を単純化するために詳細には示されていないが、33
0 〜3343 の各マルチプレクサ・アレイ回路は上記
の図14のマルチプレクサ・アレイ回路の320などの
前記の実施形態と首尾一貫性した方法で作られることは
理解される筈である。しかし、図14のマルチプレクサ
・アレイ回路320は合計257個のメモリ・カラム入
力を含み、3340 〜3343 の各メモリ・アレイは合
計64個のマルチプレクサに対して接続されている合計
65個のメモリ・カラム入力を含み、そしてそれらの6
4個の各マルチプレクサは1つの出力カラムを提供す
る。たとえば、マルチプレクサ・アレイ回路3340
関しては、その64個のマルチプレクサは出力カラムO
0 〜OC63を提供する。残りの3つのマルチプレクサ
・アレイ回路はそれぞれ図15において示されたのと同
様に、そしてこの分野の技術に熟達した人によって理解
されるように、64個の出力カラムを同様に提供する。
【0114】上記に加えて、メモリ構成326は欠陥カ
ラム識別子エンコーダ336を含む。現在の実施形態に
おいては、欠陥カラム識別子エンコーダ336は328
0 〜3283 の各メモリ・グループに対応している1つ
の欠陥カラムに対するコードを格納する。したがって、
欠陥カラム識別子エンコーダ336は3360 〜336
3 で示されている合計4つのコードを格納する。そこ
で、それぞれが現在の実施形態においては、上記の図1
4の欠陥カラム識別子エンコーダ324または図13の
欠陥カラム識別子エンコーダ308と同様な方法によっ
て表されている。さらに、各メモリ・グループは合計6
5個のカラムを含むので、記憶される対応している各コ
ードの長さは上記の式1に従って7(すなわち、
【数5】fCEILING {INT(log2 (64+1)}
=fCEILING {6.02}=7) となることに留意されたい。最後に、以下の説明を容易
にするために、欠陥カラム識別子エンコーダ336の中
の各欠陥カラムのコードに対する添字は、対応している
メモリ・グループの添字にマッチしていることに留意さ
れたい。たとえば、欠陥カラム3360 はメモリ・グル
ープ3280 に対応し、欠陥カラム・コード3361
メモリ・グループ3281 に対応し、以下同様に他の2
つの欠陥カラムがメモリ・グループに対応する。
【0115】メモリ構成326は欠陥カラム識別子エン
コーダ336からの4つの各欠陥カラム・コードを受け
取るための温度計デコーダ回路338も含んでいる。こ
こでは詳細には示されていないが、その温度計デコーダ
回路328は3340 〜3343 の各マルチプレクサ・
アレイ回路の中の各マルチプレクサに対して制御信号を
提供するように接続されていることに留意されたい。し
たがって、温度計デコーダ回路338は64個の各温度
計制御信号の4つの別々の集合を3340 〜3343
各マルチプレクサ・アレイに対して提供する。
【0116】メモリ構成326の動作は本発明の前の実
施形態についての理解を前提としており、したがって、
読者は以前の説明について熟知していると仮定して示さ
れる。しかし、詳しくは説明されないが、次のことに留
意されたい。最初に、1つの行アドレスがメモリ・アレ
イ328をアドレスするために使われ、したがって、3
280 〜3283 の各グループに沿う同じ行がそのアド
レスに対応して活性化される。応答においては、センス
・アンプ(図示せず)が合計260個のメモリ・カラム
に沿ってデータを出力する。3280 〜3283 の各メ
モリ・グループが65個のそれらのメモリ・カラムに貢
献している。しかし、次に、3280 〜3283 の各メ
モリ・グループに対して、3340 〜3343 の各マル
チプレクサ・アレイ回路の中のマルチプレクサを制御す
るために、温度計エンコーダ338によってそれに対応
している欠陥カラム・コードが符号化される。より詳し
く言えば、その欠陥カラムのコードに応答して、温度計
エンコーダ338は上記の表5の方法で1つのパターン
を提供するが、ここではその出力64個の論理0、64
個の論理1、あるいは、それらの極端な値の中間の或る
温度計パターンを提供し、そのパターンの一部分は論理
0が連続しており、そのパターンの他の部分は論理1が
連続している。4つの各64ビット・パターンに応答し
て、対応しているマルチプレクサ・アレイ回路はその6
5個の入力メモリ・カラムのうちの1つをその出力カラ
ムから除外する。したがって、そのアクセスの終了時
に、合計256ビットのデータがメモリ構成326から
出力される。
【0117】メモリ構成326の構造および動作につい
ての説明が提示されたところで、この構成は本発明の以
前の実施形態からの各種の利点を提供し、そしてさらに
追加の利点も提供することに留意されたい。たとえば、
メモリを論理的な、あるいは物理的なグループに分離す
ることによって、各グループに対する、対応している予
備カラムを備えることができ、それによって欠陥カラム
の数をより多く許容することができ、それらのカラムを
除外する機能も維持しているようにすることができる。
別の例として、図15の実施形態はふたたび異なるサイ
ズのメモリに対して本発明の範囲の各種の態様を適用で
き、そして各種のメモリ構造に対してふたたび適用でき
ることを示している。
【0118】図16は一般的に340において示されて
いる本発明のメモリ構成のさらに他の実施形態の電気的
な図を示している。メモリ構成340の詳細説明に入る
前に、上記の説明はメモリ構成のカラムからのデータの
読出しのコンテキストにおいて行なわれたことにまず留
意されたい。しかし、本発明の原理の多くはメモリ構成
に対してデータを書き込むためにも適用され、したがっ
て、図16の実施形態はそれらの原理のあるものの応用
を示しており、その次に本発明の適用範囲内でのメモリ
構成に対する書込みの態様をさらに示している追加の実
施形態が続く。このイントロダクションを前提として、
メモリ構成340は図13のメモリ構成304の同じエ
レメントのいくつかを共有し、したがって、そのような
エレメントが現われる場所では、同様な番号および/ま
たは文字が使われている。次にそれらの同様なエレメン
トを参照すると、メモリ構成340は一連のメモリ・カ
ラムC0 〜C4 に沿って情報を通信する任意の数の行を
備えている行アレイ302を含む。
【0119】図13のメモリ構成304と対照的に、図
16のメモリ構成340はデータを行アレイ302の内
部の行に入れることができるように、そのメモリ・カラ
ムに対して情報を書き込む場合の構成である。この目的
のために、メモリ構成340はIC0 〜IC3 で示され
ている複数の入力カラムを含む。本発明の前の実施形態
での出力カラムの場合と同様に、入力カラムの数はメモ
リ・カラムの数より1だけ少なく、したがって、現在の
例においては5つのメモリ・カラムのうちの4つに対し
てデータを書き込むために4つの入力カラムが存在す
る。また、メモリ構成340は選択されたメモリ・カラ
ムに対して入力カラムのデータの書込みを制御するため
の複数のマルチプレクサも含む。このコンテキストにお
いて、マルチプレクサの個数は入力カラムの個数より1
だけ少ない。したがって、メモリ構成340の中では、
MI1 、MI2 、およびMI3 でそれぞれ示されている
3つのマルチプレクサが示されている。これらのマルチ
プレクサの接続に関して、それらが入力カラムのうちの
最も外側の1つ(すなわち、IC0 およびIC3 )に接
続されているか、あるいはそれらの最も外側のカラムの
間のカラムのペアに対してだけ接続されているかどうか
によって特徴付けられることに留意されたい。まず最初
に、最も外側の入力カラムを眺めると、それぞれの最も
外側のメモリ・カラムに対して直接に接続されている。
たとえば、IC0 はC0 に直接接続されている。また、
最も外側の入力カラムに関しては、それぞれがマルチプ
レクサの1つの入力に接続されている。たとえば、IC
0 はマルチプレクサMI1 の1つの入力にも接続されて
いる。ここで最も外側の入力カラムの間にある入力カラ
ムを見ると、それぞれが第1の入力マルチプレクサの入
力および第2の入力マルチプレクサの入力に接続されて
おり、第1のマルチプレクサは入力カラムと同じ添字の
メモリ・カラムにその出力が接続されており、そして第
2のマルチプレクサはその入力カラムの添字より大きい
添字のメモリ・カラムに対してその出力が接続されてい
ることに留意されたい。たとえば、IC1 は最も外側の
入力カラムの間にある入力カラムであり、したがって、
IC1 はその出力がC1 に接続されているMI1 に接続
されており、そしてIC1 は出力がC2 に接続されてい
るMI2にも接続されている。この例で、最も外側の入
力カラムの間にある他の入力カラムIC2 は同様にMI
2 およびMI3 に接続されている。さらに、図16の実
施形態はその最も外側の入力カラム間にある入力カラム
を2つだけしか含んでいないが、この分野の技術に熟達
した人であれば、このパターンを最も外側の入力カラム
間にある入力カラムの数が任意である構成に対して複製
できることが分かる。最後に、前の実施形態の場合と同
様に、ここでも0または1の制御信号にそれぞれ基づい
て「0」または「1」のいずれかの側のデータの選択を
表すために各マルチプレクサの図において「0」および
「1」の両方の決まりが示されている。
【0120】図16のメモリ構成340はそれに関連付
けられた温度計デコーダ回路306以外に、図13の中
と同様な欠陥カラム識別子エンコーダ308も含んでい
る。しかし、温度計デコーダ回路306に関して、それ
は図13の実施形態の中の4つの制御ビット(すなわ
ち、M1 〜M4 の各マルチプレクサに対して1つ)を出
力することを思い出されたい。しかし、図16の実施形
態においては、マルチプレクサはM1 〜M3 の3つだけ
しかない。それにかかわらず、以下に証明されるよう
に、データの読出しの目的で欠陥カラムを除外するため
にマルチプレクサM 1 〜M4 を制御するための温度計デ
コーダ回路306からのと同じ出力のサブセット(すな
わち、図13)を、データの書込みの目的のために欠陥
カラムを除外するために図16の中で使うことができ
る。後で示されるように、サブセットは最初または最後
のマルチプレクサに対応しているもの以外の温度計デコ
ーダ回路306からのすべての制御ビットから構成され
る。言い換えれば、M1 〜M3 に対する制御ビットのい
ずれも使えるが(それによって最後のマルチプレクサM
4に対応しているビットを使わない)、あるいは代わり
に、M2 〜M4 に対する制御ビットを使うことができる
(それによって最初のマルチプレクサM1 に対応してい
るビットを使わない)。したがって、図16の中の例で
示されているように、MI1 〜MI3 に対する制御ビッ
トがM1 〜M3 をそれぞれ制御するために使われる。
【0121】マルチプレクサM1 〜M3 に接続されてい
る欠陥カラム識別子エンコーダ308の出力ビットが与
えられて、各マルチプレクサを制御するために温度計デ
コーダ回路306によって提供される出力が次の表6に
示されている。
【0122】
【表7】 表6
【0123】表6の中の「x」はその制御ビットがドン
ト・ケアであること、すなわち、それはどのバイナリ状
態が示されても無関係であることを示す。さらに、表6
の信号をいくつか追加すると、図16の実施形態を理解
するのに役立ち、したがって、そのような例が以下に提
供される。
【0124】表6に与えられている構成340の動作の
最初の例として、C0 が欠陥カラムであると判定された
と仮定する。したがって、IC0 〜IC3 からのデータ
をC 1 〜C4 に対してそれぞれ書き込むことが望まし
い。したがって、ここでもC0は欠陥カラム識別子エン
コーダ308の中で符号化され、温度計デコーダ回路3
06からの出力として表6のトップの行が発生される。
詳しく言えば、この例に対する制御の出力は111であ
る。図16の中のマルチプレクサの動作に関して、この
制御出力はMI1 〜MI3 の各マルチプレクサが図16
に示されているように、そのマルチプレクサの右側の入
力カラムをその出力に接続するようにさせる。したがっ
て、MI1 はIC0 をC1 に、MI2 はIC1 をC
2 に、そしてMI3 はIC2 をC3 に接続する。さら
に、IC3 は既に直接にC4 に接続されていることに留
意されたい。したがって、この構成における書込みサイ
クルにおいて、データは各入力カラムから欠陥のないメ
モリ・カラムに対して書き込むことができる。最後に、
0 は欠陥カラムであっても、それはIC0 からデータ
をやはり受け取ることに留意されたい。しかし、これは
データの完全性には無関係である。というのは、IC0
からのデータは欠陥のないカラム、すなわち、C1 に対
しても提供されているからである。
【0125】表16に与えられている構成340の動作
の第2の例では、C2 が欠陥カラムであると判定された
と仮定する。したがって、IC0 からC0 へ、IC1
らC 1 へ、IC2 からC3 へ、そしてIC3 からC4
書き込むことが望ましい。したがって、欠陥カラム識別
子エンコーダ308の中でのC2 の符号化を前提とし
て、温度計デコーダ回路306は表6の第3行の温度計
パターン、すなわち、1x0の値を出力する。この信号
はその中央にドント・ケアを含むことに留意されたい。
したがって、適切な出力値は110または100、すな
わち、xに対して1または0を置き換えた値となる可能
性がある。これらの代替案の可能性がその動作を通じて
ここで追跡され、そのいずれもが表6の中に示されてい
るように受入れ可能であることを示す。まず最初に11
0の制御パターンに関して、まず最初に欠陥のないメモ
リ・カラムにその出力が接続されているマルチプレクサ
に対応する制御パターンの中の制御ビットに着目するこ
とによって、その効果を理解することがおそらく最も易
しいことに留意されたい。したがって、現在の例におい
ては、MI1 およびMI3 が欠陥のないメモリ・カラム
に対してその出力が接続されている(一方、MI2 はそ
の出力が欠陥カラムC2 に接続されている)。MI1
関して、その制御入力に0が与えられると、IC1 から
のデータがC1に接続され、それによってIC0 からの
データはC0 に接続される。さらに、MI3 に関しては
その制御入力が1であると、IC2 からのデータがC3
に接続され、それによってIC3 からのデータがC4
接続されるようになる。これらの適切な接続を前提とし
て、MI2 の制御は現在のケースにおいては無関係であ
ることに留意されたい。110の温度計パターンに対す
るケースのようにMI2 に対する制御入力が1であった
場合、MI2 はIC1 からのデータを選択し、それをC
2 に接続する。しかし、このアクションはIC1 からの
データもMI1 を経由してC1 に接続されているので、
無関係である。さらに、C2 が欠陥カラムであるので、
データの書込み時にそれをIC1 に接続しても害は発生
しない。これらの結果が与えられて、この分野の技術に
熟達した人であれば、この例において、MI2 に対する
制御入力が100の温度計パターンに対するケースのよ
うに0であった場合、MI2 はIC2 からのデータを選
択してそれをC2 に接続するが、ここでもこれは無関係
である。というのは、IC2 からのデータは既にMI3
を経由してC3 にも接続されているからである。したが
って、この場合にはパターン110または100のいず
れも適しており、したがって、中間のビットはドント・
ケアであって表6の中央の行に示されているように結果
として1x0となる。
【0126】表6からの制御ビットの印加の上記の例を
前提として、この分野の技術に熟達した人であれば、メ
モリ構成340の動作を追跡して表6の残りの行を確認
することができる。したがって、それらの各場合に対し
ては詳細な説明は示されない。それにもかかわらず、メ
モリ・カラムへデータを書き込む目的のために、表6の
中の制御ビットの有効性をここで示したことにより、カ
ラムのデータの読出しに関して思い出す上記の表とのそ
の共通性にさらに留意されたい。詳しく言えば、表6の
中のドント・ケアを前提として、表5の最初の3つまた
は最後の3つのカラムのいずれもが表6に示されている
ものに対応する適切なデータを提供することに留意され
たい。結果として、表5から最も右のカラムまたは最も
左のカラムのいずれかを消去することによって、残りの
ビットを使って表6の制御ビットを提供することができ
る。したがって、図16に示されているデータの書込み
のためのマルチプレクサに関して、それらを図13の中
のデータの読出しのために使われるマルチプレクサが接
続されているのと同じ温度計デコーダ回路306の出力
に接続することができる。ただし、制御ビット・パター
ンの最上位または最下位のビットのいずれかはメモリ・
カラムに対するデータの書込みに関連するマルチプレク
サに対する接続においては使われない。
【0127】上記から、この分野の技術に熟達した人で
あれば、現在の各種の実施形態がメモリ・カラムのグル
ープからのデータの複数の出力カラムへの読出し、また
は複数の入力カラムからメモリ・カラムのグループへの
データの書込みのいずれにも適用されることが分かる。
この実施形態が読出しまたは書込みのいずれであるかに
は無関係に、上記の実施形態によって、メモリ・カラム
の1つが欠陥カラムである場合におけるこの動作が可能
となる。図17は図13の中のデータの読出しに対し
て、および図16の中のデータの書込みに対して示され
ているように、4つのメモリ・カラムの例をふたたび使
って、読出しおよび書込みの両方に対するこの共通の属
性を図式的な形式でさらに示している。したがって、同
じメモリ・カラムC0 〜C4 が図17の最上部を横断し
て示されている。それらのカラムの選択されたものから
のデータの読出し、またはそれらのメモリ・カラムの選
択されたものへのデータの書込みのいずれに関しても、
図13および16の入力および出力のカラムは組み合わ
せられて入/出力カラム(I/Oと略記される)を形成
し、したがって、カラムI/O0 〜I/O3 を提供す
る。I/Oカラムとメモリ・カラムとの間には双方向の
矢印が示されており、それは1つのI/OカラムとI/
Oカラム当たりの2つの可能なメモリ・カラムの1つと
の間の通信の可能な電気的径路を示している。最後に、
各I/Oカラムに対してその対応している2つの双方向
の矢印がその対応しているI/Oカラムに対する添字と
「T」を組み合わせることによって示されている温度計
コードからの制御ビットを伴って示されている。T信号
およびその補数が示されており、T(たとえば、T0)
の値が第1の状態にある場合、その補数の指示のない対
応している矢印(すなわち、図17の中のI/O0 の左
向きの矢印)はそのI/Oカラムとメモリ・カラムとの
間の接続を表し、一方、Tの値が第2の状態、すなわ
ち、第1の状態の補数の状態(たとえば、/T0)、そ
の補数の指示の付いた対応している矢印(すなわち、図
17の中のI/O0 の右への矢印)はそのI/Oカラム
とメモリ・カラムとの間の接続を表すことに留意された
い。この決まりは以下に与えられる例において使われ
る。
【0128】図17の構成を前提として、ここでデータ
の読出しまたは書込みのいずれの場合でも、上記の実施
形態は各種の概念を共有することに留意されたい。まず
最初に、メモリ・カラムの欠陥カラムが符号化回路によ
って識別される。第2に、温度計パターンがその符号化
された識別に基づいて発生される。第3に、その温度計
パターンに応答して、データがメモリ・カラムとI/O
カラムとの間で通信され、少なくともその欠陥のメモリ
・カラム以外の各メモリ・カラムがI/Oカラムのそれ
ぞれの1つに接続される。前の文章の中で「少なくと
も」各メモリ・カラムがそのような方法で接続されると
いうことが述べられていることに留意されたい。このク
オリフィケーションは以下のデータの読出しおよび書込
みの説明からより良く理解される。
【0129】データを読み出す場合、欠陥カラムはI/
Oカラムのどれにも結合されないように完全に排除され
る。したがって、欠陥カラムがあった場合、その信号は
読まれない。たとえば、C3 が欠陥カラムであると仮定
する。したがって、それを読出しに対して除外するため
に、T3〜T0に対する温度計コードは1000に等し
い。したがって、I/O3 はC4 と通信し、I/O2
2 と通信し、I/O 1 はC1 と通信し、そしてI/O
0 はC0 と通信する。したがって、C3 はどのI/Oカ
ラムにも接続されない。結果として、データを読み出す
場合、欠陥のメモリ・カラム以外のメモリ・カラムだけ
がそれぞれのI/Oカラムに接続される。結果として、
上で述べたように、欠陥のメモリ・カラム以外の少なく
とも各メモリ・カラムがそれぞれのI/Oカラムの1つ
に接続されることは確かである。しかし、他のメモリ・
カラム(すなわち、欠陥カラムのメモリ・カラム)はI
/Oカラムには接続されないことも確かである。
【0130】データを書き込む場合、上記で与えられた
マルチプレクサの実施形態は、ふたたび欠陥のメモリ・
カラム以外の各メモリ・カラムがI/Oカラムのそれぞ
れの1つに確かに接続されることに留意されたい。しか
し、その他に、それらは実際にI/Oカラムの1つから
欠陥カラムがデータを受け取ることができるようにもす
る。それにもかかわらず、この結果はデータの完全性に
は無関係である。というのは、これが起こったとして
も、図示されているマルチプレクサの使用によって欠陥
のメモリ・カラムに接続されているのと同じデータが欠
陥のないメモリ・カラムにも接続されることがさらに確
保されるからである。マルチプレクサの実施形態につい
てのこの結果を前提として、書込みに対して本発明の実
施形態のより広い表現において、図17の矢印はふたた
び上記の温度計パターンによって制御される、そして欠
陥のないメモリ・カラムに対してだけ通信する双方向の
転送ゲートを表すことができることにさらに留意された
い。特に、欠陥カラム以外のメモリ・カラムに書き込む
ために、欠陥のメモリ・カラムに対する矢印を切断すし
(すなわち、転送ゲートがディスエーブルされ)、欠陥
のメモリ・カラムがどのI/Oカラムとも通信しないよ
うにすることができる。応答において、欠陥のメモリ・
カラム以外のメモリ・カラムだけがそれぞれのI/Oカ
ラムに接続される。たとえば、C2 が欠陥カラムであっ
て、書込みが行なわれると仮定する。したがって、書込
みに対してC2 を除外するために、T3〜T0に対する
温度計のコードは1100に等しい。したがって、I/
3 はC4 と通信し、I/O2 はC3 と通信し、I/O
1 はC1 と通信し、そしてI/O0 はC0 と通信する。
したがって、C2 はどのI/Oカラムにも接続されない
ことに留意されたい。結果として、図17の表現はデー
タの書込みの場合においても欠陥のメモリ・カラム以外
のメモリ・カラムがそれぞれのI/Oカラムに接続され
るようにすることができる。
【0131】最後に、図17に関して、以前の実施形態
と同様にこの実施形態は本発明の原理を読出しのみ、書
込みのみ、あるいは読出しと書込みとの組合せのための
システムに適用できることをさらに示している。したが
って、本発明の適用範囲を示す目的で、I/Oカラムは
実際のメモリ・カラムに関して外部データを通信し、そ
の通信が読出し、書込み、またはその両方であってもよ
いことを意味している或るタイプのデータ・カラムを表
すことに留意されたい。
【0132】ここで図16に戻って、それは対応してい
る欠陥のないメモリ・カラムに対してすべての入力カラ
ムからの書込み機能を有する1つの実施形態を提供する
ことを思い出されたい。この態様を前提として、本発明
の実施形態によって解決されるもう1つの問題が、バイ
ト書込みの機能のコンテキストによって発生する。詳し
く言えば、この分野の技術におけるほとんどのメモリは
1バイト(すなわち、8カラム)よりかなり大きい数の
合計の入力カラムを含む。しかし、これらのメモリのい
くつかはいわゆるバイト書込み機能を有し、その場合、
入力カラムのうちの1バイトだけに単独の瞬間において
書き込むことができる。実際に、この機能は単独のバイ
トに対して常に限定されるわけではなく、任意のサイズ
のグループのビットに適用できる。たとえば、128の
カラムのメモリにおいては、32ビットを一度にそのメ
モリに書き込むことができる。したがって、この例で
は、書込みのグループ・サイズは32ビットである。し
たがって、このドキュメントの目的に対して、このグル
ープは書込みユニットと呼ばれ、それによってそのユニ
ットが、上記の例の場合は8または32ビットのいずれ
かが提供されているが、任意の数のビットを含むことが
できることが理解される。書込みユニットに対するこの
イントロダクションを前提として、現在の実施形態をさ
らに修正して以下に説明されるように書込みユニットの
書込みができるような機能を含めることができることに
さらに留意されたい。
【0133】書込みユニットの機能を提供するための最
初の方法として、図16の行アレイ302およびその関
連付けられた回路を複数回繰り返すことができ、したが
って、各繰返しの構造が4ビットの長さの書込みユニッ
トを提供するようにすることができることに留意された
い。言い換えれば、行アレイ302の各繰返しのインス
タンスは4つの入力カラムおよび5つのメモリ・カラム
を提供することになり、そして各繰返しのインスタンス
に別々に書き込むことができ、それによって4ビットの
書込みユニットを提供し、一方上記のカラムの冗長性の
態様をさらに提供することができる。さらに、上記のよ
うに、行アレイ302は4つの入力カラムに限定される
必要はない。したがって、行アレイ302を繰り返す実
施形態において、各繰り返された構造も4つの入力カラ
ムに限定される必要はない。たとえば、各構造は8個の
入力カラムを含むことができ、それによって各繰り返さ
れた構造に対して8ビットの書込みユニットを提供する
ことができる。しかし、或るメモリに対しては、そのよ
うな方法は望ましくない可能性があることに留意された
い。たとえば、その8ビットの構造が繰り返されて25
6ビットのデータ・ラインを形成する場合、そのデータ
・ラインは合計32の構造(すなわち、8ビット*32
構造=256ビットのデータ・ライン)を含むことにな
る。しかし、そのような方法は32個の冗長カラムを含
むことになり、そしてそれは必要以上に冗長性が多い可
能性がある。したがって、別の方法がすぐ次に提供され
る。
【0134】書込みユニットの機能を提供するための第
2の方法として、図18がもう一度図16のメモリ構成
340を示すが、書込みユニットの機能を実現するため
に追加の回路を含む。図18の例の場合、書込みユニッ
トの長さは2ビットであり、したがって、書込み動作の
間に、入力カラムのペアの1つまたは両方がメモリ・カ
ラムの対応している1つのペアまたは2つのペアに対し
て書き込まれる可能性がある。もちろん、必要であれ
ば、各書込みユニットは同時に書き込まれ、すべての書
込みが同時並行的に行われるようにすることができる。
したがって、図18の例においては4つの入力カラムか
らのデータが4つのメモリ・カラムに対して接続される
ことになる。ここで図18の詳細を見るとして、上記の
図16から受け継がれている特徴は詳しくはここでは説
明されず、代わりに、読者はそのような構造およびその
動作についての以前の説明を参照されたい。図18の追
加された回路を見ると、メモリ構成340は2つの書込
みユニットに対する書込みイネーブル信号を含み、それ
らの信号はWE0およびWE1として示されている。信
号WE0は書込みイネーブル回路3420 に対する制御
信号として接続されている。書込みイネーブル回路34
0 はこの分野の技術において既知の機能を提供し、そ
れによってその制御信号が断定されたとき、それが接続
されているカラムがイネーブルされ、それらのカラムが
書込みイネーブルに対するデータ入力によって書き込ま
れる。そのような機能は、たとえば、そのカラムと直列
に接続されたnチャネル・トランジスタのソースとドレ
インを接続し、そして制御信号を受け取るためにそのゲ
ートを使って実装することができる。この実装またはこ
の分野の技術に熟達した人によって選択される他の実装
において、WE0が断定されると、回路3420 をイネ
ーブルするためのデータ入力はメモリ・カラムC0およ
びC1 をそれぞれ通過する。この動作のために、イネー
ブル回路3420 を通る点線が示されており、制御入力
が断定されるとイネーブル回路3420 に対するデータ
信号入力がそれを通過することを図式的に示している。
信号WE1はWE0と同じ方法で接続されるが、それ自
身の関連付けられた書込みイネーブル回路3421 に対
して接続される。書込みイネーブル回路3421 は書込
みイネーブル回路3420 と同じ方法で動作するが、こ
こではメモリ・カラムC3 およびC4 について動作す
る。したがって、WE1が断定されると、書込みイネー
ブル回路3421 に対する入力データはメモリ・カラム
3 およびC4 を通過する。
【0135】図18のメモリ構成340は第3の書込み
イネーブル回路3420-1 も含む。ここでその添字はこ
の書込みイネーブル回路が、書込みイネーブル回路34
0と書込みイネーブル回路3421 とに対応している
メモリ・カラムの間にあるメモリ・カラム(すなわち、
2 )に対する書込みをイネーブルすることを示すため
に使われている。書込みイネーブル回路3420-1 に対
する制御信号はマルチプレクサM0-1 から出力され、そ
のマルチプレクサの2つのデータ入力はWE0およびW
E1に接続されていて、そのマルチプレクサの制御入力
は以下において理解される理由のために、MI2 を制御
するのと同じ信号に接続されている。
【0136】図18のメモリ構成340の動作は次の通
りである。イントロダクションとして、この動作によっ
てWE0とWE1の値に基づいて1つまたはそれ以上の
2ビットの書込みユニットに対して書き込むことができ
ることに留意されたい。したがって、これらの値のうち
の1つだけが断定された場合、4つの入力カラムのうち
の2つからのデータがメモリへ書き込まれ、一方、2つ
の値の両方が断定された場合、4つの入力カラムのすべ
てにおいてデータが書き込まれる。しかし、いずれの場
合においても、現在の実施形態はメモリ・カラムのうち
の1つが欠陥カラムであり得ることを考えていることを
さらに思い出されたい。結果として、書込みイネーブル
機能は以下に示されるようにこの可能性も考慮に入れな
ければならず、図18の実施形態はこの目標を適切に達
成する。一般に、書込みイネーブル3420 および34
1 によって、WE0がC0 およびC1 と関連付けら
れ、そしてWE1はC3 およびC4 と関連付けられる。
言い換えれば、WE0が断定された場合、C0 およびC
1 が書き込まれ、そしてWE1が断定された場合、C 3
およびC4 が書き込まれる。しかし、カラムC0
1 、C3 、またはC4 のうちの1つが欠陥カラムであ
った場合、現在の実施形態によって書込みユニットの一
部をC2 に接続することがさらにできる。これに関し
て、C2 へ渡されるデータはM0-1 に対する制御入力に
よって決定されるように、W0またはW1のいずれかに
よって制御されることに留意されたい。次に、どのメモ
リ・カラムが欠陥カラムであるかによって、他の制御が
行なわれる。たとえば、C0 およびC1には欠陥がな
く、IC0 およびIC1 の2ビットの書込みユニットか
らのデータを書き込む必要があると仮定する。したがっ
て、WE0が断定されてC0 およびC1 がIC0 および
IC1 からのデータをそれぞれ受け取る(上記の温度計
パターンを使って)。しかし、ここでC1 が欠陥カラム
であると仮定する。したがって、普通であればC1 に対
してデータを渡すことができるように意図されている書
込みイネーブル制御信号(すなわち、WE0)は、代わ
りに欠陥のないカラム(すなわち、C2 )へデータを渡
すことができるようにするために使われ、それはその温
度計パターンのためにIC1 からのデータを受け取る。
以下に詳細に説明されるように、マルチプレクサM0-1
が動作してこの結果を得る。言い換えれば、現在の例の
場合、マルチプレクサM0-1 はWE0を書込みイネーブ
ル回路3420-1 に対して結合し、そしてそうする際
に、IC0 およびIC1 からの2ビットの書込みユニッ
トがC0 およびC2 に対してそれぞれ書き込まれるよう
に、C2 に対してデータが書き込まれるようにする。
【0137】上記の例を前提として、与えられた書込み
の間に、書き込まれる各メモリ・カラムは書込みイネー
ブル信号、すなわち、WE0またはWE1のいずれか)
に応答して書き込まれることに留意されたい。しかし、
上で示されたように、欠陥カラムが存在することによっ
てどのメモリ・カラムがこの方法で関連付けられるべき
であるかが影響を受ける。したがって、下の表7は各メ
モリ・カラムに対してそのメモリ・カラムに対する書込
みを許すのに使われる、対応している書込みイネーブル
信号を、欠陥のメモリ・カラムが指定された場合に示し
ている。
【0138】
【表8】 表7
【0139】表7をより良く理解するために、直ぐ下で
行なわれるように、そのいくつかの行を通して追跡する
ことが役に立つ。
【0140】表7の指示の最初の例として、C4 が欠陥
カラムであると仮定し、したがって、表7の最下部の行
が書き込イネーブル信号の必要な使われ方を示してい
る。この表7の行を詳細に説明する前に、上記の図16
の説明から、C4 に欠陥がある場合の温度計パターンは
IC0 からのデータをC0 へ、IC1 からのデータをC
1 へ、IC2 からのデータをC2 へ、そしてIC3 から
のデータをC3 へ向かわせる。したがって、4つのビッ
ト全体において、これはそれぞれ2つのビットがある2
つの書込みユニットの書込みを表す。それより低い順序
番号の書込みユニット(すなわち、IC0 および1
1 )を見ると、その回路を通る径路はWE0によって
制御される必要がある。詳しくは、この書込みユニット
の中の2つのビットのそれぞれの径路に留意されたい。
まず最初に、IC0 からのデータは書込みイネーブル回
路3420 に対して直接に接続され、WE0が断定され
たことに応答して、C0 へ通過する。第2に、IC1
らのデータはM1 を通して書込みイネーブル回路342
0 へつながり、そしてWE0が断定されているのに応答
して、C1 へ通過する。ここでそれより順序番号の高い
書込みユニット(すなわち、IC2 およびIC3 )を考
慮して、その回路を通る径路はWE1によって制御され
る必要があり、したがって、この書込みユニットの中の
2つのビットのそれぞれを考える。IC2 にあるデータ
に着目して、C4 が欠陥カラムである場合、このデータ
はMI2 によってC2 に向けられることを思い出された
い。したがって、現在の例においては、表7の最下部の
行の中央のエントリに示されているように、C2 はWE
1によってイネーブルされる必要がある。これに関し
て、上記の表6から、C4 が欠陥カラムである場合の現
在の例の場合、制御M0-1 に対しても接続されているM
2 に対する制御信号は0に等しいことを思い出された
い。したがって、図18の構成に基づいて、0の制御信
号によってM0-1 がその入力の1つからWE1を選択
し、それを書込みイネーブル回路3420-1 に対して出
力する。結果として、WE1が、表7で示されているよ
うにC2 への書込みを制御するために使われる。最後
に、IC3 のデータを見て、C4 が欠陥カラムである場
合、このデータはMI3 によってC3 に向けられること
を思い出されたい。C3 が書込みイネーブル回路342
1 に接続されるので、それは図18の中で示されている
ようにWE1によって制御され、したがって、表7の指
示と合っている。
【0141】表7の指示の第2の例として、C0 が欠陥
カラムであり、したがって、表7の中のWEの指示のト
ップの行が書込みイネーブル信号のために必要であると
仮定する。まず最初に上記の図16の説明から、C0
欠陥カラムである場合の温度計パターンはIC0 からの
データをC1 へ、IC1 からのデータをC2 へ、IC 2
からのデータをC3 へ、そしてIC3 からのデータをC
4 へ向けることを思い出されたい。より低い順序の書込
みユニット(すなわち、IC0 およびIC1 )を見て、
その回路を通る径路はWE0によって制御される必要が
ある。これに関して、まず最初にIC0 からのデータが
MI1 を通って書込みイネーブル回路3420 へつなが
り、そして、WE0が断定されているのに応答して、C
1 へ通過する。しかし、第2に、IC1 からのデータが
MI2 を通って書込みイネーブル回路3420-1 へつな
がる。したがって、表7に基づいて、この場合は書込み
イネーブル回路3420-1 はWE0によって制御される
必要がある。これに関して、上記の表6から、C0 が欠
陥カラムである現在の例の場合、M0-1 を制御するため
にも接続されているMI2 に対する制御信号は1に等し
い。したがって、その1の制御信号によってM0-1 がそ
の入力の1つからWE0を選択し、それを書込みイネー
ブル回路3420-1 に対して出力する。結果として、表
7に示されているように、C2 の書込みを制御するため
にWE0が使われる。ここでそれより高い順序の書込み
ユニット、すなわち(IC2 およびIC3 )を考える
と、その回路を通る径路はWE1によって制御される必
要があり、したがって、この書込みユニットの中の2つ
のビットのそれぞれについて考える。IC2 におけるデ
ータを見て、C0 が欠陥カラムである場合、このデータ
はMI3 によってC3 へ向けられることを思い出された
い。したがって、現在の例においては、C3 はWE1に
よってイネーブルされる必要があり、そしてこれはWE
1の書込みイネーブル回路3421 への接続のために発
生する。最後に、IC3 のデータを見て、それは書込み
イネーブル回路3421 に直接接続されていることを思
い出されたい。したがって、それは図18に示されてい
るようにWE1によって制御され、したがって、表7の
指示と合っている。
【0142】上記の2つの例が提示されたところで、こ
の分野の技術に熟達した人であれば、表7によって示さ
れている残りの例を追跡して図18のメモリ構成340
の書込みユニットの動作が適切であることを確認するこ
とができる。さらに、上記の2つの例はMI2 を制御す
るのと同じビットがMI0-1 をも制御する方法を示して
いることに留意されたい。この結論はさらに表6および
表7の中の制御情報の中央のカラムを比較することによ
ってさらに確かめられる。詳しく言えば、表6の2つの
行から、1の制御値はC0 が欠陥行であるか、あるいは
1 が欠陥行であるかのいずれかの場合にMI2 へ出力
され、表7のトップの2行から、そのような値によって
WE0がそれらの場合にC2 を書込みイネーブルにする
ことは明らかである。同様に、表6の最下部の2行か
ら、C3 が欠陥カラムであるか、あるいはC4 が欠陥カ
ラムであるかのいずれの場合に、0の制御値がMI2
出力され、そして表7の最下部の2つの行から、そのよ
うな値によってそれらの場合にWE1がC2 を書込みイ
ネーブルすることになることは同様に明らかである。し
たがって、各場合において、入力カラムからのデータは
メモリ・カラムへ正しく回送され、そして書込みユニッ
トのイネーブルが許可される。
【0143】図19は一般的に342に示されているメ
モリ構成を示している。構成342は図18からの書込
みイネーブルの原理の別の例を示しているが、図18の
中で提供されている例とは異なるサイズのアーキテクチ
ャに対して各種の現在の概念が適用できることを、この
分野の技術に熟達した人に対して示すために、異なるサ
イズのアーキテクチャにおいて示している。しかし、図
19を単純化するために、システム全体のためのコンテ
キストを提供するためのいくつかのマルチプレクサが示
されているが、メモリ・カラムが欠陥カラムであること
に基づいてデータを回送するための各入力カラムに対し
て接続されている各マルチプレクサは含まれていない。
次に、構成342を見ると、それはIC0 〜IC255
示されている合計256個の入力カラムを含み、ふたた
びその図を単純化するために、これらの入力カラムのう
ちのいくつかだけが示されている。以下でより良く理解
されるように、これらの256個の入力カラムは4つの
書込みユニットに分割されており、各ユニットは64個
のビットから構成されている。したがって、上記の説明
との首尾一貫性を保つために、この4つの書込みユニッ
トのうちの任意の1つまたはそれ以上に同時に書き込む
ことができる。構成342のレイアウトは最も外側のカ
ラムから最も内側のカラムへと構造を観察することによ
って、そして書込みユニットのコンテキストにおいてお
そらく最も直接的である。したがって、それぞれが以下
に説明される。
【0144】構成342の最も外側の入力カラムを見
て、それらが第1の書込みユニットを形成するための入
力カラムIC0 〜IC63、および第4の書込みユニット
を形成するための入力カラムIC192 〜IC255 を含ん
でいることに留意されたい。これらの2つの書込みユニ
ットの接続は、そのような各書込みユニットについての
次の説明から理解されるように、構成342の内部で一
般的に対称的になっている。IC0 〜IC63の第1の書
込みユニットを見ると、そして図18に示されているよ
うに、IC0 はデータをメモリ・カラムC0 に対して直
接に、あるいはマルチプレクサMI1 を通じてメモリ・
カラムC0 へ渡すことができるように接続されている
が、一方、第1の書込みユニットに対する残りの入力カ
ラム(すなわち、IC1 〜IC63)は、MI1 〜MI63
のグループの内部の2つの連続したマルチプレクサのデ
ータ入力に接続されている。MI1 〜MI63のそれぞれ
の出力は単独の書込みイネーブル・ユニット3440
接続されている。書込みイネーブル・ユニット3440
は断定されたWE0制御信号に応答して、その入力にあ
るデータをその出力に接続し、それはメモリ・カラムC
0 〜C63に接続される。IC192 〜IC255 の第4の書
込みユニットを見ると、IC255 はそれがメモリ・カラ
ムC256 に向かって直接に、あるいはマルチプレクサM
255 を通してC256 へ向かって渡すことができるよう
にIC255 が接続されており、その第1の書込みユニッ
ト(すなわち、IC192 〜IC254 )に対する残りの入
力カラムはMI193 〜MI255 のグループの内部の2つ
の連続したマルチプレクサのデータ入力に接続されてい
る。MI193 〜MI255 のそれぞれの出力は単独の書込
みイネーブル・ユニット3443 に接続されている。書
込みイネーブル・ユニット3443 は断定された制御信
号WE3に応答してその入力におけるデータをその出力
に接続し、その出力はメモリ・カラムC193 〜C256
接続されている。
【0145】構成342の最も内側のカラムを見て、そ
れらが第2の書込みユニットを形成するための入力カラ
ムIC64〜IC127 を含み、そして第3の書込みユニッ
トを形成するための入力カラムIC128 〜IC191 を含
むことに留意されたい。これらの2つの書込みユニット
の接続も、そのような各書込みユニットについての次の
説明から理解されるように、構成342の内部では一般
的に対称的になっている。IC64〜IC127 の第2の書
込みユニットを見ると、IC64が2つの連続したマルチ
プレクサのデータ入力に接続されている。しかし、それ
らのマルチプレクサの1つ、すなわち、MI64に関し
て、それの他の入力は隣接する書込みユニットからの入
力カラムに対して接続されていることに留意されたい。
言い換えれば、MI64の第2の入力はIC63に接続され
ており、それは隣接する第1の書込みユニットの部分で
ある。したがって、MI64の出力(すなわち、C64)は
2つの隣接する書込みユニットの間の境界のカラムを形
成する。図18の実施形態についての上記の動作および
図19に対するその共通性を前提として、この分野の技
術に熟達した人であれば、C64は2つの隣の書込みユニ
ットのいずれかからデータを提示することができるこ
と、すなわち、それは第1の書込みユニットのIC63
ら、あるいは第2の書込みユニットのIC64からのデー
タを提示することができ、それはメモリ・カラムC0
256 の中での欠陥カラムの位置によって変わることが
理解される。IC128 〜IC191 の第3の書込みユニッ
トを見ると、IC128 は連続した2つのマルチプレクサ
のデータ入力にも接続されており、ふたたび、そこでは
それらのマルチプレクサのうちの1つ、すなわち、MI
128が隣の書込みユニットからの入力カラムに対して接
続されている。ここでは、MI128 の1つのデータ入力
は第3の書込みユニットの一部であるIC128 に接続さ
れているが、もう1つのデータ入力は第2の書込みユニ
ットの一部であるIC 127 に接続されている。したがっ
て、MI128 の出力(すなわち、C128 )は隣の第2と
第3の書込みユニットの間の境界のカラムを形成する。
したがって、C 128 は第2または第3の書込みユニット
のいずれかからのデータを提示することができ、そのど
ちらになるかはメモリ・カラムC0 〜C256 の中の欠陥
カラムの位置によって変わる。最後に、第3の書込みユ
ニットのIC191 も境界カラムに接続されることに留意
されたい。詳しく言えば、IC191 はMI192 のデータ
入力に接続され、MI192 は第4の書込みユニットの一
部であるIC192 に対してもう1つのデータ入力が接続
されている。したがって、MI192 の出力(すなわち、
192 )は隣り合わせの第3および第4の書込みユニッ
トの間の境界カラムを形成する。したがって、C192
第3または第4の書込みユニットからのデータを提示す
ることができる。そのいずれになるかはメモリ・カラム
0 〜C256の中での欠陥カラムの位置によって変わ
る。
【0146】識別された境界カラム以外に上記の接続を
前提として、欠陥カラムおよび書込みユニットの機能が
与えられて構成342がデータを適当に回送するために
必要な接続を含むことにさらに留意されたい。詳しく言
えば、各境界カラムC64、C 128 、およびC192 は書込
みユニットの制御の目的のために、対応している書込み
イネーブル回路3440-1 、3441-2 、および344
2-3 に接続されていることに留意されたい。図18に示
されているように、これらの書込みイネーブル回路のそ
れぞれのハイフンで連結された添字は、各回路が2つの
書込みイネーブル信号のうちの1つによってイネーブル
されることを示している。たとえば、境界カラムC192
に対応している書込みイネーブル回路3442-3 はWE
2およびWE3のいずれかによってイネーブルされる可
能性がある。これらの2つの書込みイネーブル信号のい
ずれかが制御を提供することができるようにするため
に、1つの境界カラムに関連付けられている各書込みイ
ネーブル回路に対する制御入力は、今説明された関係を
示すために、同じ添字を共有している対応しているマル
チプレクサの出力に対して接続されている。たとえば、
境界カラム192を見ると、その書込みイネーブル回路
3442-3 は、WE2およびWE3がデータに入ってい
るマルチプレクサM2-3 の出力に接続されている。最後
に、マルチプレクサM2-3 の制御入力は対応している境
界カラムに対してデータを出力するマルチプレクサを制
御するのと同じ信号に接続されている。現在の例におい
ては、MI128 はデータを境界からのC192 に対して出
力し、したがって、その温度計パターン(図19におい
て「TP」と略記されている)からの制御ビットもM
2-3を制御するために接続されている。書込みイネーブ
ル回路3442-3 についての直前の説明は他の書込みイ
ネーブル回路3440-1 および3441-2 およびそれぞ
れの対応している境界カラムC64およびC128 にも適用
されることに留意されたい。したがって、書込みイネー
ブル回路3440-1 はWE0またはWE1のいずれかに
よって制御されるように接続されており、そしてそれら
の2つの書込みイネーブル信号は、境界カラムC64に対
してデータを提供するマルチプレクサMI64に対応して
いる温度計パターンのビットによって制御されるマルチ
プレクサM0-1 によって提供されている。同様に、書込
みイネーブル回路3441-2 はWE1またはWE2のい
ずれかによって制御されるように接続されており、そし
てそれらの2つの書込みイネーブル信号は境界カラム1
28に対してデータを提供するマルチプレクサMI128
に対応している温度計パターンのビットによって制御さ
れるマルチプレクサM1-2 によって提供される。
【0147】構成342の動作は一般的に図18の構成
340に対する動作と同じであり、したがって、読者は
上記を参照されたい。しかし、その違いは回路のディメ
ンジョンに関係する。言い換えれば、図18の中での4
個までの入力カラムに対して、図19の中では256個
までの入力カラムに書き込むことができる。さらに、図
18における2つまでの書込みユニットに対して、図1
9の中では4つまでの書込みユニットに書き込むことが
できる。しかし、その共通性を前提として、この分野の
技術に熟達した人であれば、その残りの動作を理解する
筈である。それにもかかわらず、各種の原理をさらに示
すための1つの例として、メモリ・カラムC10が欠陥カ
ラムであり、IC0 〜IC16からのデータで1つの書込
みユニットに書き込む必要がある場合を仮定する。この
例においては、その適切な温度計パターンは表6から外
挟することができる。たとえば、温度計パターンについ
て、各行の右から始まる論理0の個数は欠陥カラムの符
号化によって表される二進数に等しいこと、そしてその
パターンの最下位または最上位のいずれか以外のすべて
のビットがその入力マルチプレクサを制御するために使
えることを思い出されたい。したがって、そのパターン
の最上位ビットを無視して、欠陥カラムC10に対する入
力マルチプレクサに対するパターンはMI1 〜MI0
制御するためのその右側から始まる10個の論理0と、
それ以降のMI11〜MI255 を制御するための245個
の論理1を持つことになる。したがって、境界カラムC
64に対応しているマルチプレクサMI64は書込みイネー
ブル回路3440-1 を制御するためにWE0とWE1と
の間で選択するマルチプレクサM1-0 と同様に、その制
御入力において論理1(すなわち、245個の論理1の
うちの1つ)を受け取る。したがって、応答において、
1-0 はWE0を選択してそれを書込みイネーブル回路
3440-1 を制御するために接続し、それによってIC
63からのデータがC64に対して正しく渡されるようにす
ることができる。
【0148】上記から、上記の実施形態がメモリ・カラ
ムの冗長性を改善するための各種の代替案を提供するこ
とを理解することができる。多くの利点が上記から説明
され、あるいは明らかになっている。たとえば、上記の
各種の態様を、カラムのうちの1つが欠陥カラムである
場合のカラムのグループからの読出し、あるいはカラム
の1つが欠陥カラムである場合のカラムのグループに対
する書込み、あるいはその両方に対して適用することが
できる。もう1つの例として、この実施形態を修正して
2つ以上の冗長カラムを提供することができる。さらに
もう1つの例として、書込みユニットの機能も現在の実
施形態の内部で実装することができる。さらに、図21
のマイクロプロセッサは上記の技法から利点を提供する
が、他の各種のマイクロプロセッサも同様に利点を提供
する。したがって、現在の実施形態が詳細に説明されて
きた。また、各種の修正または変更も提案されてきた
が、さらに他の変形版も本発明の適用範囲から離れるこ
となしに上記の説明に対して行なうことができる。
【0149】<3. メモリの行およびメモリのカラム
の冗長性の組合せ>上記のセクションでメモリの行およ
びメモリのカラムの冗長性の構成の両方が詳細に説明さ
れてきたが、図20は上記のタイプの冗長性の両方から
の多くの概念を組み合わせているメモリ構成346を示
している。これに関して、以前の図からの共通のエレメ
ントが使われている場合、共通の参照番号が図20に対
して受け継がれている。さらに、読者は以前の説明を熟
知していると仮定され、したがって、次の説明は346
によって例示されているような技術の組合せについて簡
単に要約する。
【0150】メモリ構成346はふたたびメモリの4つ
のBANKを含んでいるデータ・メモリ92に対してそ
こからデータを読み出すか、あるいはそれにデータを吹
き込むかのいずれかの目的のためにADDRESSを受
け取る。図20を単純化するために、これらのBANK
は一般的に名前が付けられているが、図8aに示されて
いるような追加の詳細は図20の中では示されていな
い。ここで示されているように、読出しまたは書込みの
動作は行およびカラムの冗長性の両方に関連して発生す
る。詳しく言えば、ADDRESSは入力記憶装置10
2aによって受け取られ、そして特に、現在の実施形態
においてはアドレスのビットADDR[13:6]が受
け取られている。この受け取られたアドレスによって欠
陥行または欠陥カラムのいずれかまたは両方がアドレス
されているかどうかを判定するために、ビットADDR
[8:6]が欠陥行識別ブロック108および欠陥カラ
ム識別子エンコーダ324の両方に接続されている。し
たがって、ふたたび、ビットADDR[8:6]は現在
のADDRESSに対する問題の4つのBANKのうち
の1つを識別し、そしてさらにそのBANKの上部また
は下部の半分のいずれがアドレスされているかどうかを
示す。ビットADDR[8:6]に応答して、そしてア
ドレスされたBANKの半分が欠陥カラムの行を含んで
いると仮定して、欠陥カラム識別子ブロック108は欠
陥行のアドレス「DA」を出力し、特に、ビットDA
[6:2]がコンパレータ106aに対して出力され、
一方ビットDA[1:0]が2‐4デコーダ112に対
して出力される。また、ビットADDR[8:6]に応
答して、そしてアドレスされているBANKの半分が欠
陥カラムを含んでいると仮定して、欠陥カラム識別子エ
ンコーダ324は欠陥カラム(もしあれば)の9ビット
の識別子を温度計デコーダ回路322に対して出力す
る。追加の動作はまず最初に行の冗長性に関してその動
作を調べることによって、そして次に、カラムの冗長性
に関してその動作を調べることによって以下において理
解される。
【0151】行の冗長性に関しては、コンパレータ10
6aはビットADDR[13:9]をビットDA[6:
2]に対して比較し、その現在のADDRESSが、欠
陥行を含んでいる行のブロック(すなわち、4つの異な
るウェイを含んでいる)に対して向けられているかどう
かを判定する。そうであれば、MATCH信号が断定さ
れ、そうでない場合はMATCH信号は断定されない。
さらに、ビットDA[1:6]は2‐4デコーダによっ
て上記の表3に示されているような4ビットのシーケン
スのうちの1つにデコードされ、そしてそのシーケンス
がANDゲート1140 〜1143 へ出力される。AN
Dゲート1140 〜1143 の出力はここではビットS
0 〜S3 としてそれぞれ示されていることに留意された
い。言い換えれば、これらの信号を図10aおよび図1
0bに示されているようなメモリ・デコーダに対してア
ドレスの一部として渡すために直接接続することができ
る。実際に、ビットADDR[13:6]はこのアドレ
スの一部を形成し、それらのビットも図10aおよび図
10bの中で示されているのと同様な1つまたはそれ以
上のメモリ・デコーダに対して渡されることに留意され
たい。最後に、ウェイのHIT信号W0〜W3もアドレ
スの一部を形成し、したがって、それらも図20の中に
示されていることを思い出されたい。実際に、データ・
メモリ92のアドレッシングを一般的に示すために、図
20はデータ・メモリ92へ渡される全体のアドレスと
して、ビットADDR[13:6]、S0 〜S3 、およ
びビットW0〜W3を単に組み合わせる。したがって、
行の冗長性の動作を締めくくると、記憶回路102aに
よって受け取られるADDRESSが欠陥のない行に対
して向けられている場合、ビットADDR[13:6]
とW0〜W3がS0 〜S 3 のそれぞれに対して0の値を
伴ってそれと一緒に渡され、それによって欠陥のない行
がアドレスされる。対照的に記憶回路102aによって
受け取られたADDRESSが欠陥行に対して向けられ
たものであった場合、ビットADDR[13:6]とW
0〜W3がふたたびデータ・メモリへ渡される。しか
し、ここではS0 〜S3 の1つに対して1つの値と組み
合わされ(他の3つの値は0である)、それによって実
効的に異なるアドレスを生成し、欠陥行ではなく、予備
行がアドレスされることになる。いずれの場合でもBA
NK0〜3のうちの1つの中の行の1つが、4つの双方
向性バッファ3480 〜3483 の対応している1つを
経由してバス350に結合される。したがって、この点
から、カラムの冗長性の動作が以下に説明されるように
発生される。
【0152】バス350上のデータの257個のカラム
はスイッチされる回路352の対応しているカラムC0
〜C257 に接続され、それは一般に図17と同じフォー
マットを使って示されているので、この分野の技術に熟
達した人によって確認され得る他の代替案以外に、上記
のマルチプレクサの各種の構成を使って構築することが
できる。いずれにしても、図17についての以前の説明
を前提として、図20の目的の場合、温度計のパターン
が温度計デコーダ回路322からスイッチされる回路3
52に対して向けられ、そしてそのパターンに応答して
データを257個のメモリ・カラムと256個の入力/
出力カラムとの間に選択的に結合することができ、それ
によって現在受信されているADDRESSが与えられ
て欠陥カラムがある場合、誤りの結果を禁止する。ふた
たび、データ・メモリ92から読み出す場合、欠陥のメ
モリ・カラムは入力/出力カラムに対してデータを提供
することから単に除外され、一方データ・メモリ92へ
の書込みの場合、欠陥のメモリ・カラムはデータを受け
取るが、その同じデータが別の欠陥のないカラムにも書
き込まれ、したがって、それは後で正しく呼び出すこと
ができる。
【0153】上記を前提として、この分野の技術に熟達
した人であれば、このドキュメントの中で記述されるメ
モリの行およびカラムの概念を、本発明の内容と首尾一
貫したさらに他の実施形態を形成するために組み合わせ
ることができる。したがって、欠陥行識別子ブロック1
08および欠陥カラム識別子エンコーダ324の両方に
対してヒューズが使われる場合、欠陥行およびカラムの
両方を識別するために総合的な記憶タイプの構造を形成
する単独の領域をこの構成の中に形成することができ
る。さらに、図20は前に説明された2つの特定の実施
形態だけの組合せを示しているが、明らかに、この分野
の技術に熟達した人であれば、上記の他の代替案を組み
合わせることもできる。いずれにしても、改善された行
およびカラムの冗長性システムが提供されている。
【0154】<4. マイクロプロセッサの構成>上記
の実施形態が説明された後、図21は上記の実施形態を
組み込むことができるマイクロプロセッサの実施形態の
ブロック図を示している。図21は好適な実施形態が実
装され、説明されるスーパスカラのパイプライン型マイ
クロプロセッサ410の一例を含んでいる、説明的なデ
ータ処理システム402を示している。システム402
およびマイクロプロセッサ410のアーキテクチャはこ
こでは例を示す方法だけによって記述されており、本発
明の実施形態は各種のアーキテクチャのマイクロプロセ
ッサの中で利用できることが考えられることは理解され
るべきである。したがって、この分野における技術を普
通に理解できる人であれば、この明細書を参照すること
によって、そのような他のマイクロプロセッサ・アーキ
テクチャの中に本発明の実施形態を組み込むことが容易
にできることは考えられる。また、本発明はシングルチ
ップのマイクロプロセッサおよびマイクロコンピュータ
において、あるいはマルチチップの実装において実現す
ることができ、シリコン・サブストレート、シリコン・
オン・インシュレータ、ガリウム砒素、および他の製造
技術に従って、そしてMOS、CMOS、バイポーラ、
BiCMOS、あるいは他の装置実装を使って実現でき
ることがさらに考えられる。
【0155】図21に示されているように、マイクロプ
ロセッサ410はバスBの方法によってシステムの他の
装置に接続されている。この例においてはバスBは単独
のバスとして示されているが、バスBはPCIローカル
・バス・アーキテクチャを利用している従来のコンピュ
ータにおいて知られているように、スピードおよびプロ
トコルの異なる複数のバスを表していてもよいと考えら
れる。ここで示されている単独のバスBは例を示す方法
によってのみ、そしてその単純性のためにここで示され
ている。システム402は通信ポート403(モデム・
ポートおよびモデム、ネットワーク・インターフェー
ス、などを含んでいる)、グラフィックス・ディスプレ
イ・システム404(ビデオ・メモリ、ビデオ・プロセ
ッサ、グラフィックス・モニタを含んでいる)、普通は
ダイナミック・ランダム・アクセス・メモリ(DRA
M)の手段によって実装され、スタック407を含んで
いるメイン・メモリ・システム405、入力装置406
(キーボード、ポインティング装置、およびそのための
インターフェース回路を含んでいる)、およびディスク
・システム408(ハード・ディスク・ドライブ、フロ
ッピー・ディスク・ドライブ、およびCD‐ROMドラ
イブを含んでいてもよい)などの従来型のサブシステム
を含んでいる。したがって、図21のシステム402は
現在この分野の技術において普通である従来型のデスク
・トップ・コンピュータまたはワークステーションに対
応することが考えられる。もちろん、マイクロプロセッ
サ410の他のシステム実装も本発明の実施形態から、
この分野の技術を普通に理解している人によって認識さ
れるように利点を提供することができる。
【0156】マイクロプロセッサ410はバスBに接続
されているバス・インターフェース・ユニット(「BI
U」)412を含み、それはマイクロプロセッサ410
とシステム内の他のエレメント402との間の通信を制
御して実行する。BIU412はこの機能を実行するた
めの適切な制御回路およびクロック回路を含み、その中
には、動作速度を増加させるための書込みバッファ、マ
イクロプロセッサの動作の結果をバスBのタイミングの
制約と同期化させるためのタイミング回路などが含まれ
ている。また、マイクロプロセッサ410はクロック発
生および制御回路420も含み、それはこの説明的なマ
イクロプロセッサ410においては、バスBからのバス
・クロックに基づいて内部クロック・フェーズを発生
し、その内部クロック・フェーズの周波数は、この例に
おいては、バス・クロックの周波数の倍数として選択的
にプログラムすることができる。
【0157】図21において明らかなように、マイクロ
プロセッサ410は3レベルの内部キャッシュ・メモリ
を備えており、その最高レベルのものはレベル2のキャ
ッシュ414であり、それはBIU412に接続されて
いる。この例においては、レベル2のキャッシュ414
は一体化されたキャッシュであり、BIU412を経由
して、バスBからキャッシュ可能なデータおよびキャッ
シュ可能な命令をすべて受け取るように構成され、マイ
クロプロセッサ410によって提示されるバス・トラフ
ィックの多くがレベル2のキャッシュ414を経由して
実行される。もちろん、マイクロプロセッサ410は或
る種のバス読出しおよび書込みを「キャッシュ不可能」
として扱うことによって、レベル2のキャッシュ414
の回りのバス・トラフィックを実行することもできる。
図21に示されているように、レベル2のキャッシュ4
14は2つのレベル1のキャッシュ416に接続されて
いる。レベル1のデータ・キャッシュ416dはデータ
専用であり、一方、レベル1の命令キャッシュ416i
は命令専用である。マイクロプロセッサ410によって
消費される電力はレベル1のキャッシュ416のうちの
適当な1つのキャッシュ・ミスの発生時のみレベル2の
キャッシュ414にアクセスすることによって最小化さ
れる。さらに、データ側では、マイクロキャッシュ41
8が、この例においては完全デュアル・ポート型のキャ
ッシュであるレベル0のキャッシュとして用意されてい
る。
【0158】図21に示されているように、そして上記
のように、マイクロプロセッサ410はスーパスカラ型
のマイクロプロセッサである。この例においてはマイク
ロプロセッサ410の内部には複数の実行ユニットが用
意されており、4つまでの命令を並列に単独の命令ポイ
ンタ・エントリに対して同時に実行することができる。
これらの実行ユニットは、条件付き分岐、整数および論
理演算を処理するための2つのALU4420 、442
2 、浮動小数点ユニット(FPU)430、2つのロー
ド・ストア・ユニット4400 、4401 、およびマイ
クロシーケンサ448を含む。2つのロード・ストア・
ユニット440はマイクロキャッシュ418に対する2
つのポートを利用してそれに対する真の並列アクセスを
行い、レベル1のキャッシュ116dおよび116iに
対して以外、レジスタ・ファイル439の中のレジスタ
に対してロードおよびストアの動作も実行する。従来の
方法によって論理データ・アドレスを物理アドレスに変
換するためにデータ・マイクロトランスレーション・ル
ックアサイド・バッファ(μTLB)438が用意され
ている。
【0159】これらの複数の実行ユニットはそれぞれ7
段のライト・バック機能付きの複数のパイプラインの方
法によって制御される。そのパイプラインのステージは
次の通りである。
【0160】F フェッチ:このステージは命令のアド
レスを発生し、その命令を命令キャッシュまたはメモリ
から読み出す。 PD0 プリデコード・ステージ0:このステージは3
つまでのフェッチされたx86タイプの命令の長さおよ
び開始位置を決定する。 PD1 プリデコード・ステージ1:このステージはx
86の命令バイトを抽出し、デコードのためにそれらを
固定長のフォーマットの中に記録する。 DC デコード:このステージはx86の命令を原子演
算(AOps)に変換する。 SC スケジュール:このステージは4つまでのAOp
sを適切な実行ユニットに対して割り当てる。 OP オペランド:このステージはAOpsによって指
示されるレジスタおよび/またはメモリのオペランドを
取り出す。 EX 実行:このステージはAOpsおよび取り出され
たオペランドに従って実行ユニットを動作させる。 WB ライト・バック:このステージは実行の結果をレ
ジスタの中またはメモリの中に格納する。
【0161】図21に戻って、上記のパイプライン・ス
テージはマイクロプロセッサ410の内部の各種の機能
ブロックによって実行される。フェッチ・ユニット42
6はレベル1の命令キャッシュ116iに対して印加す
るための、論理命令のアドレスを従来の方法で物理アド
レスに変換する命令マイクロトランスレーション・ルッ
クアサイド・バッファ(μTLB)422の手段によっ
て、命令ポインタから命令のアドレスを発生する。命令
キャッシュ116iはフェッチ・ユニット426に対す
る命令データのストリームを発生し、フェッチ・ユニッ
ト426はさらにその命令コードを必要なシーケンスで
プリデコード・ステージに対して提供する。推論的な実
行は種としてフェッチ・ユニット426によって制御さ
れる。
【0162】命令のプリデコードはマイクロプロセッサ
410の中では2つの部分、すなわち、プリデコード0
ステージ428およびプリデコード1ステージ432に
分かれている。これらの2つのステージは別々のパイプ
ライン・ステージとして動作し、一緒になって3つまで
のx86命令をロケートし、そしてその同じものをデコ
ーダ434に対して印加するように動作する。そのよう
に、マイクロプロセッサ410の中のパイプラインのプ
リデコード・ステージの幅は3命令である。上記のよう
に、プリデコード0ユニット428は3つまでのx86
命令(それはもちろん可変長である)のサイズおよび位
置を決定し、そしてそれ自体3つの命令の認識回路から
構成されており、プリデコード1ユニット432はデコ
ーディングを容易にするために、複数バイトの命令を固
定長のフォーマットの中に記録する。
【0163】この例の中ではデコード・ユニット434
は4つの命令デコーダを含み、それぞれがプリデコード
1ユニット432から固定長のx86命令を受け取り、
1から3個の原子演算(AOps)を発生することがで
きる。AOpsは実質的にRISC命令と等価である。
4つのデコーダのうちの3つは並列に動作し、9個まで
のAOpsをデコード・ユニット434の出力にあるデ
コード9の中に入れてスケジューリングを待たせ、第4
のデコーダは特殊ケースのために予約されている。スケ
ジューラ436は4個までのAOpsをデコード・ユニ
ット434の出力にあるデコード・キユーから読み出
し、これらのAOpsを適切な実行ユニットに割り当て
る。さらに、オペランド・ユニット444は実行のため
のオペランドを受け取って準備する。図21に示されて
いるように、オペランド・ユニット444はマルチプレ
クサ445を経由して、スケジューラ436から、そし
て命令の実行において使うためにロード/ストア・ユニ
ット4400 および/または4401 を経由してレジス
タ・オペランド、および/またはメモリ・オペランドを
フェッチする。さらに、この例に従って、オペランド・
ユニット444は格納される準備ができているレジスタ
に対して結果を送るためにオペランドの提供を実行し、
ロードおよびストアのタイプのAOpsのためのアドレ
ス発生も実行する。
【0164】マイクロシーケンサ448は、マイクロコ
ードROM446と組み合わさって、マイクロコード・
エントリAOpsの実行においてALU442およびロ
ード/ストア・ユニット440を制御する。そのAOp
sは一般に1サイクルで実行するための最後のAOps
である。この例においては、マイクロシーケンサ448
はマイクロコードROM446の中に格納されているマ
イクロ命令を通してシーケンスし、それらのマイクロコ
ード化されたマイクロ命令に対するこの制御を実行す
る。マイクロコード化されたマイクロ命令の例として
は、マイクロプロセッサ410の場合、複雑な、あるい
はほとんど使われないx86命令、セグメント・レジス
タまたは制御レジスタを変更するx86命令、例外およ
び割り込みの処理およびマルチサイクル命令(たとえ
ば、REP命令、およびすべてのレジスタをPUSHお
よびPOPする命令など)などがある。
【0165】マイクロプロセッサ410はJTAGのス
キャン・テストの動作、および或る種の内蔵型自己診断
機能テストを制御するための回路424も含んでいて、
製造の完了時に、そしてリセット時および他のイベント
の発生時にマイクロプロセッサ410の動作の有効性を
確保している。
【0166】上で説明された各種のレベルのキャッシュ
を前提として、マイクロプロセッサ410はそのキャッ
シュ・メモリの1つまたはそれ以上の中に、このドキュ
メントの以前のセクションにおいて説明された行の冗長
性およびカラムの冗長性の構成のいずれかまたはその両
方を含めることができることにさらに留意されたい。し
たがって、図1〜図20についての上記の説明から、こ
の分野の技術に熟達した人であれば、図21に関連して
これらのコンポーネントの動作を理解することができ
る。さらに、各種の関連の機能を図21の中の適切な回
路によってさらに実行することができる。
【0167】<5. 結論>上記から、上記の実施形態
は従来技術に比べて数多くの利点を提供することが理解
できる。たとえば、各種のタイプのメモリ構成を、行の
冗長性、カラムの冗長性、あるいは行およびカラムの冗
長性の両方を提供するように形成することができる。さ
らに、冗長性を実装するために必要なヒューズの数が多
くなり、アーキテクチャを横断するような中央集中的で
ない方法でそれらのヒューズを配置する従来技術の欠点
がほとんど解消されている。さらに、前のセクションの
マイクロプロセッサは以前に説明されている冗長性のメ
モリの構成を実装することができるアーキテクチャの一
例を示しているが、さらに他のアーキテクチャも同様に
利点を提供することができる。さらに、多くの他の利点
が上で説明され、そしてこの分野の技術に熟達した人に
よってさらに確認される。結果として、本発明の実施形
態が詳細に記述されてきたが、以下に述べられる請求項
によって定義される本発明の適用範囲から離れることな
しに、上記の説明に対して各種の置き換え、修正または
変更が可能である。以上の説明に関してさらに以下の項
を開示する。
【0168】(1)メモリ構成を動作させる方法であっ
て、第1のアドレスをタグ・メモリに対して発行し、前
記第1のアドレスが、前記タグ・メモリに対応している
情報メモリの中の1つの行をアドレスするための1つの
状態に設定される段階と、前記第1のアドレスによって
アドレスされるべき情報メモリの中の前記行が欠陥行で
あるかどうかを判定する段階と、前記第1のアドレスに
よってアドレスされるべき情報メモリの中の前記行が欠
陥行であると判定されたことに応答して、前記第1のア
ドレスを、前記第1のアドレスとは異なる第2のアドレ
スに変換する段階と前記タグ・メモリの中のヒットの検
出に応答して、前記第2のアドレスによって前記情報メ
モリをアドレスする段階と、前記第1のアドレスによっ
てアドレスされるべき情報メモリの中の前記行が欠陥行
でないことの判定に応答して、前記タグ・メモリの中の
ヒットの検出に応答して前記第1のアドレスによって前
記情報メモリのアドレッシングを行う段階と、前記タグ
・メモリの中のミスの検出に応答して、前記第1のアド
レスに応答して前記メモリ構成のメモリ階層の中の前記
情報メモリより高いレベルにある、異なるメモリをアド
レスする段階とを含む方法。
【0169】(2)第1項の方法において、連続したク
ロック・サイクルにわたって前記メモリ構成を動作させ
る段階をさらに含み、前記発行および変換の段階が前記
連続のクロック・サイクルのうちの第1のサイクルの間
に発生し、前記第2のアドレスによる前記情報メモリの
アドレッシングの段階または、前記第1のアドレスによ
る前記情報メモリのアドレッシングの段階のいずれかが
前記連続したクロック・サイクルの第1のサイクルの直
後の、連続したクロック・サイクルのうちの第2のサイ
クルの間に発生する方法。
【0170】(3)第1項記載の方法において、前記発
行および判定の段階の前に、欠陥行を識別するために情
報メモリをテストする段階をさらに含む方法。
【0171】(4)第3項の方法において、前記発行お
よび判定の段階の前に、そして前記テストの段階の後
に、前記テストの段階によって識別された欠陥行に対応
している欠陥行のアドレスを前記メモリ構成の中に符号
化する段階をさらに含む方法。
【0172】(5)第4項の方法において、前記第1の
アドレスによってアドレスされるべき前記情報メモリの
中の前記行が欠陥行であるかどうかを判定する段階が、
前記第1のアドレスを前記欠陥行のアドレスに対して比
較する段階を含む方法。
【0173】(7)第4項の方法において、前記符号化
の段階が前記メモリ構成の中のヒューズを前記欠陥行を
表すように構成する段階を含む方法。
【0174】(8)第3項記載の方法において、発行お
よび判定の段階の前に、そしてテストの段階の後に、前
記テストの段階によって識別された欠陥行に対応してい
る欠陥行のアドレスをメモリ構成の中に符号化する段階
と、前記欠陥行が識別されていることを示しているイネ
ーブル・インジケータをメモリ構成の中にセットする段
階とをさらに含む方法。
【0175】(9)第8項記載の方法において、前記第
1のアドレスによってアドレスされるべき情報メモリの
中の前記行が欠陥行であるかどうかを判定する段階が、
前記欠陥行が識別されたことを示すために、前記イネー
ブルインジケータがセットされているかどうかを検出す
る段階と、前記欠陥行が識別されていることを示すため
にイネーブル・インジケータがセットされていることを
検出したことに応答して、前記第1のアドレスを前記欠
陥行のアドレスに対して比較する段階とを含む方法。
【0176】(10)第1項記載の方法において、前記
発行および判定の段階の前に、複数の欠陥行を識別する
ために情報メモリをテストする段階をさらに含む方法。
【0177】(11)第10項記載の方法において、発
行および判定の段階の前に、そしてテストの段階の後
に、複数の欠陥行のアドレスをメモリ構成の中に符号化
し、複数の欠陥行のアドレスのそれぞれが前記のテスト
の段階によって識別された複数の欠陥行の1つに対応す
る方法。
【0178】(12)第11項記載の方法において、前
記第1のアドレスによってアドレスされるべき前記情報
メモリの中の前記行が欠陥行であるかどうかを判定する
段階が、前記第1のアドレスを前記複数の欠陥行のアド
レスに対して比較する段階を含む方法。
【0179】(13)第1項記載の方法において、前記
発行および判定の段階の前に、少なくとも1つの欠陥行
を含む行のブロックを識別するために、情報メモリをテ
ストする段階をさらに含む方法。
【0180】(14)第13項記載の方法において、前
記発行および判定の段階の前に、そして前記テストの段
階の後に、前記テストの段階によって識別された行の欠
陥ブロックに対応している欠陥ブロックのアドレスをメ
モリ構成の中に符号化する段階をさらに含む方法。
【0181】(15)第14項記載の方法において、前
記第1のアドレスによってアドレスされるべき情報メモ
リの中の行が欠陥行であるかどうかを判定する段階が、
前記第1のアドレスを含むブロック・アドレスを前記欠
陥ブロックのアドレスに対して比較する段階を含む方
法。
【0182】(16)第1項記載の方法において、前記
情報メモリが複数のバンクを含み、前記複数のバンクの
それぞれが別々のアドレスできる上部半分および下部半
分を含み、前記別々にアドレス可能な上部半分および下
部半分が複数のメモリ・ウェイを含む方法。
【0183】(17)第16項記載の方法において、前
記第1のアドレスは前記複数のバンクのうちの1つの中
の1つの行を識別しているバンク識別子の部分を含む方
法。
【0184】(18)第17項記載の方法において、前
記第1のアドレスは前記複数のバンクのうちの1つの上
部半分か、あるいは下部半分かのいずれかの中の行を識
別しているバンクの半分の識別子部分を含む方法。
【0185】(19)第18項記載の方法において、前
記発行および判定の段階の前に、複数の欠陥行を識別す
るために前記情報メモリをテストする段階をさらに含
み、前記複数の欠陥行のそれぞれが前記複数のバンクの
うちの異なるものの上部半分および下部半分の異なる1
つの中に存在する方法。
【0186】(20)第19項記載の方法において、前
記発行および判定の段階の前に、そして前記テストの段
階の後に、前記テストの段階によって識別された複数の
欠陥行のそれぞれに対応している欠陥行のアドレスをメ
モリ構成の中に符号化する段階をさらに含む方法。
【0187】(21)第20項記載の方法において、前
記第1のアドレスによってアドレスされるべき前記情報
メモリの中の前記行が欠陥行であるかどうかを判定する
段階が、前記第1のアドレスと1つのウェイ・アドレス
を、前記ウェイ・アドレスと同じウェイ・アドレスを有
し、そして前記第1のアドレスと同じバンク識別子部分
を有し、そして前記第1のアドレスと同じバンク半分の
識別子部分を有する行に対する欠陥行のアドレスに対し
て比較する段階を含む方法。
【0188】(22)第1項記載の方法において、前記
第1のアドレスは整数のR個のビットから構成され、そ
して前記第1のアドレスを第2のアドレスに変換する段
階が前記整数のR個のビットに対して追加の1つのビッ
トを連結する段階を含み、前記追加のビットの状態は前
記第1のアドレスによってアドレスされるべき前記行が
欠陥行であることを示すようになっている方法。
【0189】(23)第1項記載の方法において、前記
第2のアドレスによって前記情報メモリをアドレスする
段階、あるいは前記第1のアドレスによって前記情報メ
モリをアドレスする段階のいずれかが、前記情報メモリ
の中のデータをアドレスする段階を含む方法。
【0190】(24)第1項記載の方法において、前記
第2のアドレスによって前記情報メモリをアドレスする
段階、あるいは前記第1のアドレスによって前記情報メ
モリをアドレスする段階のいずれかが、前記情報メモリ
の中の命令をアドレスする段階を含む方法。
【0191】(25)第1項記載の方法において、前記
第2のアドレスによって前記情報メモリをアドレスする
段階、あるいは前記第1のアドレスによって前記情報メ
モリをアドレスする段階のいずれかが、前記情報メモリ
の中のアドレス変換テーブルをアドレスする段階を含む
方法。
【0192】(26)第1項記載の方法において、前記
情報メモリが複数のメモリ・ウェイを含み、前記複数の
メモリ・ウェイのそれぞれが対応しているウェイ・アド
レスを有していて、前記第1のアドレスによってアドレ
スされるべき前記情報メモリの中の前記行が欠陥行であ
るかどうかを判定する段階が、第1に、前記第1のアド
レスを1つの欠陥ブロックのアドレスと比較する段階を
含み、前記欠陥ブロックのアドレスが前記複数のメモリ
・ウェイの1つにそれぞれ対応している行のブロックに
対応し、そして前記行のブロックの内部の行の1つが欠
陥行であって、欠陥のウェイ・アドレスを有していて、
第2に、前記第1のアドレスに対応しているウェイ・ヒ
ット・アドレスを前記欠陥のウェイ・アドレスに対して
比較する段階を含み、前記第1のアドレスによってアド
レスされるべき前記情報メモリの中の前記行が欠陥行で
あることを判定する段階が、前記第1のアドレスが前記
欠陥ブロックのアドレスにマッチしていて、前記ウェイ
・ヒット・アドレスが前記欠陥のウェイ・アドレスにマ
ッチしていることに応答して発生する方法。
【0193】(27)第1項記載の方法において、前記
第1のアドレスが前記第1のアドレスに対応して前記情
報メモリの中の前記行をアドレスするために、ダイナミ
ック論理トランジスタ回路網の第1の放電径路に沿って
放電を生じさせる複数のビットを含む方法。
【0194】(28)第27項記載の方法において、前
記第1のアドレスを第2のアドレスに変換する段階が、
前記複数のビットのうちの少なくとも1つを変更し、前
記ダイナミック論理トランジスタ回路網の第2の放電径
路に沿って放電を生じさせるようになっている方法。
【0195】(29)マイクロプロセッサであって、タ
グ・メモリと、前記タグ・メモリに対応している情報メ
モリと、第1のアドレスを前記タグ・メモリに対して発
行し、前記第1のアドレスは前記タグ・メモリに対応し
ている前記情報メモリの中の1つの行をアドレスするた
めの1つの状態に設定されている回路と、前記第1のア
ドレスによってアドレスされるべき前記情報メモリの中
の前記行が欠陥行であるかどうかを判定するための回路
と、前記第1のアドレスによってアドレスされるべき前
記情報メモリの中の前記行が欠陥行であることを判定す
るための回路に応答して、前記第1のアドレスを前記第
1のアドレスとは異なる第2のアドレスに変換する段階
と、前記タグ・メモリの中のヒットに応答して前記第2
のアドレスによって前記情報メモリをアドレスする段階
とを実行するための回路と、前記第1のアドレスによっ
てアドレスされるべき前記情報メモリの中の前記行が欠
陥行でないことを、判定のための回路が判定したことに
応答して、前記タグ・メモリの中のヒットに応答して前
記第1のアドレスによって前記情報メモリをアドレスす
るための回路とを含むマイクロプロセッサ。
【0196】(30)第29項記載のマイクロプロセッ
サにおいて、前記情報メモリの中の1つの行が欠陥行で
あるかどうかを示すためのインジケータをさらに含むマ
イクロプロセッサ。
【0197】(31)第30項記載のマイクロプロセッ
サにおいて、前記情報メモリの中の1つの欠陥行を識別
するための1つの識別子をさらに含んでいて、前記イン
ジケータが所定の状態にあることを、判定のための回路
が判定したことに応答して、前記識別子に対して前記第
1のアドレスを比較するための回路を含むマイクロプロ
セッサ。
【0198】(32)第31項記載のマイクロプロセッ
サにおいて、前記識別子は複数のヒューズを含むマイク
ロプロセッサ。
【0199】(33)第31項記載のマイクロプロセッ
サにおいて、前記識別子は複数のレジスタ記憶ビットを
含むマイクロプロセッサ。
【0200】(34)第29項記載のマイクロプロセッ
サにおいて、連続したクロック・サイクルにわたって前
記マイクロプロセッサを動作させるための回路をさらに
含んでいて、前記発行のための回路が前記第1のアドレ
スを発行し、そして前記変換の段階を実行するための回
路が前記第1のアドレスを、前記連続したクロック・サ
イクルのうちの第1のサイクルの間に変換し、前記第2
のアドレスによって前記情報メモリをアドレスするため
の前記回路、または前記第1のアドレスによって前記情
報メモリをアドレスするための前記回路のいずれかが、
前記連続したクロック・サイクルの前記第1のサイクル
のすぐ次の、前記連続したクロック・サイクルのうちの
第2のサイクルの間に動作するマイクロプロセッサ。
【0201】(35)第29項記載のマイクロプロセッ
サにおいて、前記情報メモリの中の対応している行が欠
陥行であるかどうかを示すための複数のインジケータ
と、前記複数のインジケータに対応している複数の識別
子とを含み、前記インジケータのそれぞれが前記情報メ
モリの中の対応している欠陥行を識別するためのもので
あり、判定のための前記回路が前記第1のアドレスを、
前記所定の状態にある対応しているインジケータを有し
ている複数のインジケータのうちのそれぞれに対して比
較するための回路を含むマイクロプロセッサ。
【0202】(36)第29項記載のマイクロプロセッ
サにおいて、少なくとも1つの欠陥行を含む前記情報メ
モリの中の行のブロックに対応している欠陥ブロックの
アドレスを識別するための回路をさらに含むマイクロプ
ロセッサ。
【0203】(37)第36項記載のマイクロプロセッ
サにおいて、前記第1のアドレスによってアドレスされ
るべき前記情報メモリの中の前記行が欠陥行であるかど
うかを判定するための前記回路が、前記欠陥ブロックの
アドレスに対して前記第1のアドレスを含むブロック・
アドレスを比較するための回路を含むマイクロプロセッ
サ。
【0204】(38)第29項記載のマイクロプロセッ
サにおいて、前記情報メモリが複数のバンクを含み、前
記複数のバンクのそれぞれが、別々にアドレスすること
ができる上部半分と下部半分とを含み、前記別々にアド
レス可能な上部半分と下部半分は複数のメモリ・ウェイ
を含むマイクロプロセッサ。
【0205】(39)第38項記載のマイクロプロセッ
サにおいて、前記第1のアドレスが前記複数のバンクの
うち1つの中の1つの行を識別しているバンク識別子の
部分を含むマイクロプロセッサ。
【0206】(40)第39項記載のマイクロプロセッ
サにおいて、前記第1のアドレスが前記複数のバンクの
うちの1つの上部半分または下部半分のいずれかの中の
1つの行を識別しているバンク半分の識別子部分を含む
マイクロプロセッサ。
【0207】(41)第40項記載のマイクロプロセッ
サにおいて、複数の欠陥行のそれぞれに対応している複
数の欠陥行のアドレスを識別するための回路をさらに含
んでいて、前記複数の欠陥行のそれぞれが前記複数の異
なるバンクの中の上部半分および下部半分の異なるもの
の中にあるようになっている回路をさらに含むマイクロ
プロセッサ。
【0208】(42)第41項記載のマイクロプロセッ
サにおいて、前記第1のアドレスによってアドレスされ
るべき前記情報メモリの中の前記行が欠陥行であるかど
うかを判定するための回路が、前記第1のアドレスおよ
び1つのウェイ・アドレスを、前記ウェイ・アドレスと
同じウェイ・アドレスを有し、そして前記第1のアドレ
スと同じバンク識別子部分を有し、そして前記第1のア
ドレスと同じバンク半分の識別子を有している行に対す
る前記欠陥行のアドレスに対して比較するための回路を
含むマイクロプロセッサ。
【0209】(43)第29項記載のマイクロプロセッ
サにおいて、前記第1のアドレスが整数のR個のビット
から構成され、そして前記第1のアドレスを第2のアド
レスへ変換する前記段階を実行するための前記回路が、
前記整数のR個のビットに対して1つの追加ビットを連
結するための回路を含み、前記追加ビットの状態は前記
第1のアドレスによってアドレスされるべき前記行が欠
陥行に対応していることを示すようになっているマイク
ロプロセッサ。
【0210】(44)第29項記載のマイクロプロセッ
サにおいて、前記情報メモリが複数のメモリ・ウェイを
含み、前記複数のメモリ・ウェイはそれぞれが対応して
いるウェイ・アドレスを有し、前記第1のアドレスによ
ってアドレスされるべき前記情報メモリの中の前記行が
欠陥行であるかどうかを判定するための前記回路が、ま
ず第1に、前記第1のアドレスを欠陥ブロックのアドレ
スに対して比較し、前記欠陥ブロックのアドレスは前記
複数のメモリ・ウェイの1つにそれぞれ対応している行
のブロックに対応し、そして前記行のブロックの中の前
記行のうちの1つが欠陥行であって、欠陥のウェイのア
ドレスを有している、比較のための回路と、第2に、前
記第1のアドレスに対応しているウェイ・ヒット・アド
レスを前記欠陥のウェイ・アドレスに対して比較するた
めの回路とを含み、前記第1のアドレスが前記欠陥ブロ
ックのアドレスにマッチしていて、前記ウェイ・ヒット
・アドレスが前記欠陥のウェイ・アドレスにマッチして
いることに応答して、前記第1のアドレスによってアド
レスされるべき前記情報メモリの中の前記行が欠陥行で
あることの判定が発生するマイクロプロセッサ
【0211】(45)第29項記載のマイクロプロセッ
サにおいて、前記第1のアドレスが複数のビットを含ん
でいて、前記第1のアドレスによって前記情報メモリを
アドレスするための前記回路が整数のN個の複数のビッ
トを受け取るように動作するダイナミック論理トランジ
スタ回路網を含み、整数N個の直列に接続されたトラン
ジスタをイネーブルすることによって第1の放電径路の
形成に応答して前記情報メモリがアドレスされ、前記第
1の放電径路が1つの放電トランジスタを通じて放電す
るためにさらに接続されているマイクロプロセッサ。
【0212】(46)第45項記載のマイクロプロセッ
サにおいて、前記第1のアドレスを第2のアドレスに変
換する段階を実行するための前記回路が、前記ダイナミ
ック論理トランジスタ回路網の第2の放電径路に沿って
放電を生じさせるために複数のビットのうちの少なくと
も1つを変更するための回路を含み、前記第2のアドレ
スによって前記情報メモリをアドレスするための回路
が、整数N個の複数のビットを受け取るように動作する
ダイナミック論理トランジスタ回路網を含んでいて、整
数N個の直列に接続されたトランジスタをイネーブルす
ることによって第2の放電径路の形成に応答して、前記
情報メモリがアドレスされ、前記第2の放電径路が前記
放電トランジスタを通じて放電するようにさらに接続さ
れているマイクロプロセッサ。
【0213】(47)メモリ構成であって、タグ・メモ
リと、前記タグ・メモリに対応している情報メモリと、
前記タグ・メモリに対して提供される第1のアドレスを
受け取るための回路であって、前記タグ・メモリに対応
している前記情報メモリの中の1つの行をアドレスする
ための状態に前記第1のアドレスが設定されている回路
と、前記第1のアドレスによってアドレスされるべき前
記情報メモリの中の前記行が欠陥行であるかどうかを判
定するための回路と、前記第1のアドレスによってアド
レスされるべき前記情報メモリの中の前記行が欠陥行で
あることを、判定のための回路が判定したことに応答し
て、前記第1のアドレスとは異なる第2のアドレスに前
記第1のアドレスを変換する段階と、前記タグ・メモリ
の中のヒットに応答して前記第2のアドレスによって前
記情報メモリをアドレスする段階とを実行するための回
路と、前記第1のアドレスによってアドレスされるべき
前記情報メモリの中の前記行が欠陥行でないことを、判
定のための回路が判定したことに応答して、前記タグ・
メモリの中のヒットに応答して前記第1のアドレスによ
って前記情報メモリをアドレスするための回路とを含む
メモリ構成。
【0214】(48)メモリ構成であって、タグ・メモ
リと、前記タグ・メモリに対応していて、複数の行を含
む情報メモリと、前記タグ・メモリに対応している前記
情報メモリの中の1つの行をアドレスするために1つの
状態に設定される、前記タグ・メモリに対する第1のア
ドレスを発行するための回路と、前記第1のアドレスに
よってアドレスされるべき前記情報メモリの中の前記行
が欠陥行であるかどうかを判定するための回路と、前記
第1のアドレスによってアドレスされるべき前記情報メ
モリの中の前記行が欠陥行であることを、判定のための
回路が判定したことに応答して、前記第1のアドレスを
前記第1のアドレスと異なるアドレスに変換する段階
と、前記タグ・メモリの中のヒットに応答して前記第2
のアドレスによって前記情報メモリをアドレスする段階
とを実行する回路と、複数のメモリ・カラムがあって、
前記複数の各行が前記複数のメカニズムに沿って複数の
信号を通信し、そして前記複数のメモリ・カラムのそれ
ぞれがメモリ・カラム出力を提供する複数のメモリ・カ
ラムと、複数のデータ・カラムがあって、前記複数のデ
ータ・カラムのそれぞれが前記メモリ構成に関して外部
のデータ信号を通信するように動作する複数のデータ・
カラムと、前記複数のメモリ・カラムのうちの識別され
た1つを識別するためのエンコーダ回路と、前記エンコ
ーダ回路によって識別された複数のメモリ・カラムのう
ちの識別された1つに応答して、前記複数のメモリ・カ
ラムのうちの選択されたカラムを前記データ・カラムの
うちの対応しているものに結合するためのデコーダ回路
とを含み、前記データ・カラムのうちの対応しているも
のが、前記複数のメモリ・カラムのうちの前記識別され
たカラム以外の複数のメモリ・カラムのうちの少なくと
も1つを含むメモリ構成。
【0215】(49)マイクロプロセッサを動作させる
方法。その方法はタグ・メモリ(18)に対して第1の
アドレスを発行する(52)。この第1のアドレスはそ
のタグ・メモリに対応している情報メモリの中の1つの
行をアドレスするために1つの状態に設定される。ま
た、その方法は第1のアドレスによってアドレスされる
べき情報メモリの中の行が欠陥行であるかどうかを判定
(58)する。第1のアドレスによってアドレスされる
べき情報メモリの中の行が欠陥行であるという判定に応
答して、その方法は次の2つの段階を実行する。まず最
初に、それは第1のアドレスをその第1のアドレスとは
異なる第2のアドレスに変換(60)する。第2にその
方法はタグ・メモリの中のヒットの検出に応答して、第
2のアドレスによって情報メモリをアドレスする(6
6)。代わりに、第1のアドレスによってアドレスされ
るべき情報メモリの中の行が欠陥行でないと判定した場
合、それは代わりに、タグ・メモリの中のヒットの検出
に応答して第1のアドレスによって情報メモリをアドレ
スする。最後に、タグ・メモリの中のミスの検出に応答
して、その方法は第1のアドレスに応答して異なる情報
メモリをアドレスし、その異なる情報メモリは、そのメ
モリ構成のメモリ階層の中でその情報メモリより高いレ
ベルにある。
【0216】<関連出願に対する相互参照>本出願は、
本発明と同じ出願者および同じ日付で出願されていて、
引用によって本明細書の記載に援用する、「メモリのカ
ラムの冗長性を再マッピングするための回路、システ
ム、および方法」(整理番号TI‐24606P)と題
する、同時係属出願の米国仮特許出願第60/044,
415号に関連している。
【図面の簡単な説明】
【図1】L1およびL2のキャッシュ回路を含むメモリ
階層方式の本発明の一実施形態のブロック図であり、こ
こで、L2のキャッシュ回路は、欠陥行を指定していた
元のアドレスを予備行に対して再マッピングするための
アドレス変換回路をさらに含む。
【図2】L1キャッシュ回路におけるミスに続いて2つ
の連続したサイクルにおいてL2キャッシュ回路にアク
セスするための従来技術のシステムのタイミング図であ
る。
【図3】図1のL2キャッシュ回路のデータ・メモリの
詳細なブロック図である。
【図4】図1のL2キャッシュ回路のアドレス変換回路
の詳細なブロック図である。
【図5】図1、図3および図4の回路の動作方法のフロ
ーチャートである。
【図6】データ・メモリの中の2つまでの欠陥行を2つ
の予備行の1つに対して再マッピングすることができ
る、本発明の代替実施形態のブロック図である。
【図7】データ・メモリの中の行の1つのブロックの中
の4つまでの欠陥行を予備行のブロックに対して再マッ
ピングすることができる、本発明の代替実施形態のブロ
ック図である。
【図8】aは、データ・メモリがいくつかのバンクを含
んでいて、各バンクが上位半分および下位半分を含んで
いて、各半分は各種の集合を含んでおり、そしてそのバ
ンクの半分の中の1つの欠陥行を再マッピングすること
ができる1つの予備行を備えている、本発明の代替実施
形態のブロック図であり、bは、図8aの実施形態に対
するアドレスのフォーマットである。
【図9】数個のバンクを備えているデータ・メモリをア
ドレスするための本発明の一実施形態のブロック図であ
り、ここで、図9の図は到来するアドレスを欠陥のアド
レスに対して連続の段階において比較し、第1の段階は
入って来たアドレスの一部分をブロック・アドレスに対
して比較し、そして第2の段階は入って来たアドレスに
対応しているウェイ・アドレスを欠陥行のアドレスのウ
ェイ・アドレスに対して比較する。
【図10】aおよびbは、図9のブロック図の各種の特
徴を実装するための動的な論理デコード回路である。
【図11】図10aおよび図10bの本発明の動的論理
デコード回路の追加の利点と対象させるための、従来技
術の3‐8デコード回路である。
【図12】従来技術のメモリ構成の電気的な図であり、
その構成は単独の冗長カラムを含む一連のカラムに沿っ
てデータ信号を出力する1つの行アレイを備えており、
その行アレイはメモリ・カラムのうちの1つの欠陥カラ
ムが出力とならないようにその構成から除外するため
の、各マルチプレクサに対応しているヒューズによって
制御されるマルチプレクサ構成をさらに含む。
【図13】1つの行アレイを備えている本発明の一実施
形態のメモリ構成の電気的な図であり、その行アレイは
単独の冗長カラムを含む一連のカラムに沿ってデータ信
号を出力し、その一連のカラムはそのメモリ・カラムの
中の1つの欠陥カラムが出力されないようにその構成か
ら除外するために、温度計デコーダによって制御される
マルチプレクサ構成をさらに含む。
【図14】本発明の1つの代替実施形態の電気的な図で
あり、ここで、別々にアドレスすることができる半分ず
つの部分をそれぞれ備えている複数のバンク・メモリに
メモリを分離することによって、カラムの冗長性が増加
され、各半分がバンク・メモリ当たりの冗長性の追加の
1つのカラムを提供する。
【図15】本発明の1つの代替実施形態の電気的な図で
あり、ここで、複数のメモリ・グループにメモリを分離
することによってカラムの冗長性が増加されており、そ
のメモリ・グループは各グループの同じ行が同時にアド
レスされるが、各グループは冗長性の追加の1つのカラ
ムを提供する。
【図16】本発明の1つの代替実施形態の電気的な図で
あり、ここで、メモリ構成に対してデータを書き込む目
的のためのカラムの冗長性が組み込まれており、そのメ
モリ構成からデータを読み出す目的に使われるのと同じ
各種のエレメントを実装することができるように、カラ
ムの冗長性が組み込まれている。
【図17】本発明による入力または出力のカラムのいず
れかと通信するためのメモリ・カラムのカップリングを
図で説明している。
【図18】書込みユニットの機能を実行するための追加
の回路を備えた図16の電気的な図である。
【図19】4つの64ビット書込みユニットに対する書
込みユニット機能を提供するための代替メモリ構成の電
気的な図である。
【図20】メモリの行およびメモリのカラムの冗長性の
両方に関して上記の各種態様を組み合わせている電気的
な図である。
【図21】上記の実施形態を組み込むことができる説明
的なマイクロプロセッサである。
【符号の説明】
10 メモリ・システム 12,14 キャッシュ回路 16 バス 18 タグ・メモリ 20 データ・メモリ 22,94 アドレス変換回路 34,122 デコーダ 38 予備のデコーダ 42,46,102 記憶装置 44,106 コンパレータ 48 識別子回路 49 イネーブル回路 76 アドレス出力記憶装置 78 論理ORゲート 90 欠陥ブロック識別子回路 92 データ・メモリ 104,110 出力記憶装置 108 欠陥行識別子ブロック 114,116 論理ANDゲート 118,308,324 エンコーダ 306,322,338 温度計デコーダ回路 320 マルチプレクサ・アレイ回路 328 メモリ・アレイ 410 マイクロプロセッサ 426 フェッチ・ユニット 432 プリデコード1ステージ 434 デコード・ユニット 436 スケジューラ 444 オペランド・ユニット 446 マイクロコードROM 448 マイクロシーケンサ

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 メモリ構成を動作させる方法であって、 第1のアドレスをタグ・メモリに対して発行し、前記第
    1のアドレスが、前記タグ・メモリに対応している情報
    メモリの中の1つの行をアドレスするための1つの状態
    に設定される段階と、 前記第1のアドレスによってアドレスされるべき情報メ
    モリの中の前記行が欠陥行であるかどうかを判定する段
    階と、 前記第1のアドレスによってアドレスされるべき情報メ
    モリの中の前記行が欠陥行であると判定されたことに応
    答して、 前記第1のアドレスを、前記第1のアドレスとは異なる
    第2のアドレスに変換する段階と前記タグ・メモリの中
    のヒットの検出に応答して、前記第2のアドレスによっ
    て前記情報メモリをアドレスする段階と、 前記第1のアドレスによってアドレスされるべき情報メ
    モリの中の前記行が欠陥行でないことの判定に応答し
    て、前記タグ・メモリの中のヒットの検出に応答して前
    記第1のアドレスによって前記情報メモリのアドレッシ
    ングを行う段階と、 前記タグ・メモリの中のミスの検出に応答して、前記第
    1のアドレスに応答して前記メモリ構成のメモリ階層の
    中の前記情報メモリより高いレベルにある、異なるメモ
    リをアドレスする段階とを含む方法。
  2. 【請求項2】 マイクロプロセッサであって、 タグ・メモリと、 前記タグ・メモリに対応している情報メモリと、 第1のアドレスを前記タグ・メモリに対して発行し、前
    記第1のアドレスは前記タグ・メモリに対応している前
    記情報メモリの中の1つの行をアドレスするための1つ
    の状態に設定されている回路と、 前記第1のアドレスによってアドレスされるべき前記情
    報メモリの中の前記行が欠陥行であるかどうかを判定す
    るための回路と、 前記第1のアドレスによってアドレスされるべき前記情
    報メモリの中の前記行が欠陥行であることを判定するた
    めの回路に応答して、 前記第1のアドレスを前記第1のアドレスとは異なる第
    2のアドレスに変換する段階と、 前記タグ・メモリの中のヒットに応答して前記第2のア
    ドレスによって前記情報メモリをアドレスする段階とを
    実行するための回路と、 前記第1のアドレスによってアドレスされるべき前記情
    報メモリの中の前記行が欠陥行でないことを、判定のた
    めの回路が判定したことに応答して、前記タグ・メモリ
    の中のヒットに応答して前記第1のアドレスによって前
    記情報メモリをアドレスするための回路とを含むマイク
    ロプロセッサ。
  3. 【請求項3】 メモリ構成であって、 タグ・メモリと、 前記タグ・メモリに対応している情報メモリと、 前記タグ・メモリに対して提供される第1のアドレスを
    受け取るための回路であって、前記タグ・メモリに対応
    している前記情報メモリの中の1つの行をアドレスする
    ための状態に前記第1のアドレスが設定されている回路
    と、 前記第1のアドレスによってアドレスされるべき前記情
    報メモリの中の前記行が欠陥行であるかどうかを判定す
    るための回路と、 前記第1のアドレスによってアドレスされるべき前記情
    報メモリの中の前記行が欠陥行であることを、判定のた
    めの回路が判定したことに応答して、 前記第1のアドレスとは異なる第2のアドレスに前記第
    1のアドレスを変換する段階と、 前記タグ・メモリの中のヒットに応答して前記第2のア
    ドレスによって前記情報メモリをアドレスする段階とを
    実行するための回路と、 前記第1のアドレスによってアドレスされるべき前記情
    報メモリの中の前記行が欠陥行でないことを、判定のた
    めの回路が判定したことに応答して、前記タグ・メモリ
    の中のヒットに応答して前記第1のアドレスによって前
    記情報メモリをアドレスするための回路とを含むメモリ
    構成。
JP10121403A 1997-04-29 1998-04-30 2サイクルのキャッシュ・アクセスの間にメモリの行の冗長性を再マッピングするための回路、システム、および方法 Pending JPH10333982A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US044414 1987-04-30
US4441497P 1997-04-29 1997-04-29

Publications (1)

Publication Number Publication Date
JPH10333982A true JPH10333982A (ja) 1998-12-18

Family

ID=21932264

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10121403A Pending JPH10333982A (ja) 1997-04-29 1998-04-30 2サイクルのキャッシュ・アクセスの間にメモリの行の冗長性を再マッピングするための回路、システム、および方法

Country Status (3)

Country Link
US (1) US6223248B1 (ja)
JP (1) JPH10333982A (ja)
KR (1) KR100529987B1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7174418B2 (en) 2003-04-30 2007-02-06 Hynix Semiconductor Inc. Semiconductor memory device for enhancing refresh operation in high speed data access
US7363460B2 (en) 2003-04-30 2008-04-22 Hynix Semiconductor Inc. Semiconductor memory device having tag block for reducing initialization time
JPWO2008155805A1 (ja) * 2007-06-20 2010-08-26 富士通株式会社 キャッシュメモリ装置、演算処理装置及びその制御方法
JP2016522936A (ja) * 2013-05-08 2016-08-04 クアルコム,インコーポレイテッド データアクセスの前のメモリ内の不完全データエントリから冗長データエントリへのデータのリダイレクトならびに関連するシステムおよび方法

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000010860A (ja) * 1998-06-16 2000-01-14 Hitachi Ltd キャッシュメモリ制御回路及びプロセッサ及びプロセッサシステム及び並列プロセッサシステム
KR100418524B1 (ko) * 2001-10-06 2004-02-11 삼성전자주식회사 디지털 제어 내부클럭 발생회로 및 그에 따른 내부클럭발생방법
US6807114B2 (en) 2003-01-17 2004-10-19 Micron Technology, Inc. Method and system for selecting redundant rows and columns of memory cells
KR100464936B1 (ko) * 2003-04-30 2005-01-06 주식회사 하이닉스반도체 리페어회로의 동작 마진을 향상시킬 수 있는 반도체메모리 장치
US8598990B2 (en) * 2008-06-30 2013-12-03 Symbol Technologies, Inc. Delimited read command for efficient data access from radio frequency identification (RFID) tags
KR101635395B1 (ko) * 2010-03-10 2016-07-01 삼성전자주식회사 멀티포트 데이터 캐시 장치 및 멀티포트 데이터 캐시 장치의 제어 방법
KR101603004B1 (ko) * 2011-03-16 2016-03-11 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 미세 단위 메모리 스페어링을 위한 방법 및 시스템
US9715424B1 (en) * 2013-08-23 2017-07-25 Rambus Inc. Memory device and repair method with column-based error code tracking
US10229047B2 (en) * 2016-08-06 2019-03-12 Wolley Inc. Apparatus and method of wear leveling for storage class memory using cache filtering
US11989106B2 (en) * 2019-12-11 2024-05-21 Intel Corporation Inline buffer for in-memory post package repair (PPR)
US12315583B1 (en) * 2024-01-26 2025-05-27 Elite Semiconductor Microelectronics Technology Inc. Repairable semiconductor memory device

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4740971A (en) * 1986-02-28 1988-04-26 Advanced Micro Devices, Inc. Tag buffer with testing capability
US5325504A (en) * 1991-08-30 1994-06-28 Compaq Computer Corporation Method and apparatus for incorporating cache line replacement and cache write policy information into tag directories in a cache system
KR100296850B1 (ko) * 1992-05-28 2001-10-24 썬 마이크로시스템즈, 인코포레이티드 캐시램용다수의뱅크열용장성초기화제어기
EP0675436B1 (en) * 1994-03-31 1999-10-27 STMicroelectronics, Inc. Recoverable set associative cache
US5577050A (en) * 1994-12-28 1996-11-19 Lsi Logic Corporation Method and apparatus for configurable build-in self-repairing of ASIC memories design
KR960030021A (ko) * 1995-01-09 1996-08-17 정강환 디펙트(defect)가 있어 수리 불가능한 반도체를 사용하기 위한 구조와 방법
DE19507312C1 (de) * 1995-03-02 1996-07-25 Siemens Ag Halbleiterspeicher, dessen Speicherzellen zu einzeln adressierbaren Einheiten zusammengefaßt sind und Verfahren zum Betrieb solcher Speicher
US5933852A (en) * 1996-11-07 1999-08-03 Micron Electronics, Inc. System and method for accelerated remapping of defective memory locations

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7174418B2 (en) 2003-04-30 2007-02-06 Hynix Semiconductor Inc. Semiconductor memory device for enhancing refresh operation in high speed data access
US7363460B2 (en) 2003-04-30 2008-04-22 Hynix Semiconductor Inc. Semiconductor memory device having tag block for reducing initialization time
JPWO2008155805A1 (ja) * 2007-06-20 2010-08-26 富士通株式会社 キャッシュメモリ装置、演算処理装置及びその制御方法
JP4595029B2 (ja) * 2007-06-20 2010-12-08 富士通株式会社 キャッシュメモリ装置、演算処理装置及びその制御方法
US8700947B2 (en) 2007-06-20 2014-04-15 Fujitsu Limited Cache memory apparatus, execution processing apparatus and control method thereof
JP2016522936A (ja) * 2013-05-08 2016-08-04 クアルコム,インコーポレイテッド データアクセスの前のメモリ内の不完全データエントリから冗長データエントリへのデータのリダイレクトならびに関連するシステムおよび方法

Also Published As

Publication number Publication date
US6223248B1 (en) 2001-04-24
KR19980081831A (ko) 1998-11-25
KR100529987B1 (ko) 2006-01-27

Similar Documents

Publication Publication Date Title
US6055204A (en) Circuits, systems, and methods for re-mapping memory column redundancy
US5568415A (en) Content addressable memory having a pair of memory cells storing don't care states for address translation
JPH10333982A (ja) 2サイクルのキャッシュ・アクセスの間にメモリの行の冗長性を再マッピングするための回路、システム、および方法
US4559618A (en) Content-addressable memory module with associative clear
US5339268A (en) Content addressable memory cell and content addressable memory circuit for implementing a least recently used algorithm
Shirvani et al. PADded cache: a new fault-tolerance technique for cache memories
US6385071B1 (en) Redundant scheme for CAMRAM memory array
US5848074A (en) Method and device for testing content addressable memory circuit and content addressable memory circuit with redundancy function
JPH10105459A (ja) 複数ポート・インターリーブ・キャッシュ
EP3586238A1 (en) Memory array page table walk
US5530824A (en) Address translation circuit
KR950000027B1 (ko) 시리얼 입출력 반도체 메모리
US5802594A (en) Single phase pseudo-static instruction translation look-aside buffer
US6591331B1 (en) Method and apparatus for determining the address of the highest priority matching entry in a segmented content addressable memory device
US6081136A (en) Dynamic NOR gates for NAND decode
JPH0738170B2 (ja) ランダム・アクセス・メモリ装置
US5854943A (en) Speed efficient cache output selector circuitry based on tag compare and data organization
US7545702B2 (en) Memory pipelining in an integrated circuit memory device using shared word lines
US7065694B2 (en) Adaptive runtime repairable entry register file
KR100283630B1 (ko) 디코드 신호 비교 회로
JPH10188565A (ja) 複数のデジタル値を電気的にリストアおよびアクセスする装置
KR100517765B1 (ko) 캐시 메모리 및 그 제어 방법
CN111968696B (zh) 只读存储器电路及其设计方法、只读存储器及电子设备
JP3581364B2 (ja) ランダムアクセス比較アレイ
JP3833022B2 (ja) 半導体装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050502

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080514

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080516

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081014