(57)【特許請求の範囲】
【請求項１】
１ビット毎にデータを記憶するＮ個のデータ保持回路と、前記データ保持回路内のＮビットデータとＮビット入力データとをビット単位で比較するＮ個の比較回路と、前記各比較回路の比較結果を１本のマッチ線上に出力するＮ個のワイヤードオア論理回路とを有し、前記各比較回路による比較動作後の前記マッチ線上の電位により、前記データ保持回路内のＮビットデータと前記Ｎビット入力データとの一致、不一致を判定する半導体記憶装置であって、
前記各比較回路による比較動作前に、それぞれ前記各ワイヤードオア論理回路を非活性状態に設定し、
前記各データ保持回路は、第１のビット線より書き込みデータを取り込む第１のデータ保持部と、第２のビット線より書き込みデータを取り込む第２のデータ保持部とで構成し、
前記各比較回路は、電源と出力ノードとの間にそれぞれ直列接続された２組の第１及び第２のＰチャネルトランジスタと第３及び第４のＰチャネルトランジスタと、前記出力ノードと接地との間に直列接続された第１及び第２のＮ−ＭＯＳとを有し、前記第１のＰチャネルトランジスタのゲートに前記第１のデータ保持部の記憶データを入力し、前記第２のＰチャネルトランジスタのゲートに前記第１のビット線を接続し、前記第３のＰチャネルトランジスタのゲートに前記第２のデータ保持部の記憶データを入力し、前記第４のＰチャネルトランジスタのゲートに前記第２のビット線を接続して構成し、
前記各比較回路の出力ノードの電位に基づいて、それぞれ前記各ワイヤードオア論理回路の活性／非活性状態を制御するようにしたことを特徴とする半導体記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＣＡＭ（Ｃｏｎｔｅｎｔ  Ａｄｄｒｅｓｓａｂｌｅ  Ｍｅｍｏｒｙ）等の半導体記憶装置に関する。
【０００２】
【従来の技術】
メモリセル内のデータと入力データとをビット単位で比較し、その比較結果を１本のマッチ線上に出力して、これらのデータの一致、不一致を判定するＣＡＭは、従来より知られている。
【０００３】
図１１は、従来のＣＡＭの１ビット構成例を示す回路図である。
【０００４】
このＣＡＭは、メモリセル部１５０、比較部１６０、ビット線１１１Ａ，１１１Ｂ、及び比較データ入力線１１２Ａ，１１２Ｂを備えている。メモリセル部１５０は、パストランジスタ１５１，１５２（Ｎチャネルトランジスタ）を含む６個のトランジスタで構成されている。比較部１６０は、４つのＮチャネルトランジスタ１６１，１６２，１６３，１６４で構成されている。トランジスタ１６１は、そのゲートがメモリセル部１５０の内部ノードＮ１１に、ドレインがマッチ線１１３にそれぞれ接続され、トランジスタ１６２は、ゲートがメモリセル部１５０の内部ノードＮ１２に、ドレインがマッチ線１１３にそれぞれ接続している。さらに、トランジスタ１６３及び１６４は、その各ゲートがそれぞれ比較データ入力線１１２Ａと１１２Ｂに接続されている。そして、マッチ線１１３にはプリチャージトランジスタ１１４が接続されている。
【０００５】
次に、動作を説明する。
【０００６】
比較部１６０の比較動作は、図１２（ａ）に示すようになる。
【０００７】
この場合では、クロックＣＬＫの立ち下り期間でマッチ線１１３をプリチャージし、後半で比較データを入力して実際の比較を行う。例えばメモリセル部１５０の内部ノードＮ１１が“Ｈｉｇｈ”でノードＮ１２が“Ｌｏｗ”であった場合、比較部１６０のトランジスタのうちのトランジスタ１６１がオン、トランジスタ１６２はオフとなる。このとき、比較データ入力線１１２Ａが“Ｈｉｇｈ”になると（図１２（ａ）のＰ１１）、マッチ線１１３を“Ｌｏｗ”にして不一致を検出する（図１２（ａ）のＰ１２）。逆に、比較データ入力線１１２Ａが“Ｌｏｗ”ならばマッチ線１１３を“Ｈｉｇｈ”にして一致を検出し、マッチ線１１３につながる全ビットのＣＡＭがこの状態であるときに一致状態とする。
【０００８】
一方、ＣＡＭの書き込み動作は、通常のメモリセルの書き込みと同じである。すなわち、図１２（ｂ）に示すようにワード線１１０を“Ｈｉｇｈ”にして、パストランジスタ１５１，１５２をオンさせ、ビット線１１１Ａ，１１１Ｂの変化をラッチ内部に取り込むというものである。
【０００９】
【発明が解決しようとする課題】
しかしながら、上記従来のＣＡＭでは、マッチ線１１３に、１ビットのＣＡＭにつき２個のトランジスタのドレイン容量が付加されることになる。そのため、比較対象とするビットが増えるほど比較結果を出力するマッチ線１１３の動作速度が遅くなるという問題があった。さらには、比較部１６０内のトランジスタのうち常にトランジスタ１６１または１６２がオンの状態であるため、チャージシェアリングを避けることができないという問題もある。
【００１０】
この問題を解決するためには、ＣＡＭの回路面積を抑える方法が考えられる。ＣＡＭの回路面積を抑えることはマッチ線１１３を短くすることにつながり、その結果、動作速度を速くすることになる。ＣＡＭの動作を考えたとき、比較と書き込みの動作は同時に起こり得ないことが分かる。それは、書き込みと比較を同時に行うと比較データは書き込み前のデータと比較するのか、書き込み後のデータと比較するのか分からなくなるからである。比較と書き込みの動作は同時に起こり得ないことから、周辺回路となるライトバッファと比較データ入力バッファとを共通のビット線に結合して回路面積を抑制する方法が可能である（図１３（ａ），（ｂ）のビット線１１１，１１２を参照）。また、ビット線と比較データ線を共用することにより、配線間のカップリングが無くなり高速化も実現できる。
【００１１】
この方法では、共用したビット線は予め初期状態として“Ｈｉｇｈ”または“Ｌｏｗ”にしておく。しかし、初期状態としてビット線を“Ｈｉｇｈ”に固定した場合、メモリセル部１５０はビット線の“Ｌｏｗ”を検出して書き込むが、比較部１６０のトランジスタは初期状態で常にオン状態であり、マッチ線１１３をプリチャージしている期間中、リーク電流が流れて消費電流が増えてしまう。
【００１２】
逆に、初期状態としてビット線を“Ｌｏｗ”に固定する場合は、図１３（ａ）に示すように、メモリセル部１５０のパストランジスタ部分をＰチャネルトランジスタ２０１，２０２とすることにより実現できるが、書き込みにかかる時間がＮチャネルトランジスタを用いた場合より遅くなるという問題が生じる。
【００１３】
また、マッチ線１１３につながるトランジスタを１ビット当たり１個にし（Ｎチャネルトランジスタ３０１）、ビット線からの入力で比較する例も、図１３（ｂ）に示すような構成で既にある。しかし、この場合では、ビット線の初期状態を“Ｈｉｇｈ”とすると、メモリセルの内部ノードで選択されるパスゲート３１１，３１２のいずれかがスルー状態となり、マッチ線１１３が著しく不安定な状態になり、余分な消費電力が発生するという問題がある。
【００１４】
本発明は、上述の如き従来の問題点を解決するためになされたもので、その目的は、高速な比較動作、低消費電力化、及びチャージシェアリングの回避を可能にする半導体記憶装置を提供することである。
【００１５】
【課題を解決するための手段】
上記目的を達成するために、第１の発明の特徴は、１ビット毎にデータを記憶するＮ個のデータ保持回路と、前記データ保持回路内のＮビットデータとＮビット入力データとをビット単位で比較するＮ個の比較回路と、前記各比較回路の比較結果を１本のマッチ線上に出力するＮ個のワイヤードオア論理回路とを有し、前記各比較回路による比較動作後の前記マッチ線上の電位により、前記データ保持回路内のＮビットデータと前記Ｎビット入力データとの一致、不一致を判定する半導体記憶装置であって、前記各比較回路による比較動作前に、それぞれ前記各ワイヤードオア論理回路を非活性状態に設定し、前記各データ保持回路は、第１のビット線より書き込みデータを取り込む第１のデータ保持部と、第２のビット線より書き込みデータを取り込む第２のデータ保持部とで構成し、前記各比較回路は、電源と出力ノードとの間にそれぞれ直列接続された２組の第１及び第２のＰチャネルトランジスタと第３及び第４のＰチャネルトランジスタと、前記出力ノードと接地との間に直列接続された第１及び第２のＮ−ＭＯＳとを有し、前記第１のＰチャネルトランジスタのゲートに前記第１のデータ保持部の記憶データを入力し、前記第２のＰチャネルトランジスタのゲートに前記第１のビット線を接続し、前記第３のＰチャネルトランジスタのゲートに前記第２のデータ保持部の記憶データを入力し、前記第４のＰチャネルトランジスタのゲートに前記第２のビット線を接続して構成し、前記各比較回路の出力ノードの電位に基づいて、それぞれ前記各ワイヤードオア論理回路の活性／非活性状態を制御するようにしたことにある。
【００１７】
【発明の実施の形態】
以下、本発明に係わるＣＡＭの実施形態について説明する。
【００１８】
図１は、本発明の実施形態に係るＣＡＭの１ビットの構成を示す回路図である。  このＣＡＭは、ワード線１とビット線２Ａ，３Ａとの交差箇所に接続されたメモリセル部１０と、比較データ入力線２Ｂ，３Ｂの間に接続された比較部２０と、トランジスタ５１から成るワイヤード・ＯＲ論理部とを備えている。メモリセル部１０は、従来と同じ構成であり、パストランジスタ（Ｎチャネルトランジスタ）１１，１２と、Ｐチャネルトランジスタ１３，１４と、Ｎチャネルトランジスタ１５，１６とで構成されている。
【００１９】
比較部２０は、直列に接続された２組のＰチャネルトランジスタ２１，２３、２２，２４と、１組のＮチャネルトランジスタ２５，２６とからなり、ワイヤード・ＯＲ論理部は、比較部２０の出力ノードＮＯＵＴをゲートに、マッチ線５０をドレインに接続するＮチャネルトランジスタ５１からなる。また、各エントリのマッチ線５０には初期状態を作るプリチャージトランジスタ５２が接続されている。
【００２０】
比較部２０を構成するトランジスタ２１は、メモリセル部１０の内部ノードＮ１がゲートに接続され、トランジスタ２２はメモリセル部１０の内部ノードＮ２がゲートに接続されている。さらに、トランジスタ２３及び２５は、比較データ入力線２Ｂがそれぞれのゲートに、トランジスタ２４及び２６にはもう一方の比較データ入力線３Ｂがそれぞれのゲートに接続されている。
【００２１】
次に、本実施形態のＣＡＭの動作を図２の動作波形図を参照しつつ説明する。なお、図中ＣＬＫはクロック、ＤＦは比較データの有効期間を示している。
【００２２】
２本の比較データ入力線２Ｂ，３Ｂの初期状態は“Ｈｉｇｈ”で、このとき、直列に接続された２つのＮチャネルトランジタ２５，２６がオンするため、出力ノードＮＯＵＴは“Ｌｏｗ”である。
【００２３】
比較部２０は、メモリセル部１０で保持している内容と比較データ入力線２Ｂまたは３Ｂ上の比較データとが異なる場合は、２組ある直列に接続されたＰチャネルトランジスタ２１，２３、２２，２４のうち一方の組のトランジスタが共にオンする。例えば、内部ノードＮ１が“Ｈｉｇｈ”、内部ノードＮ２が“Ｌｏｗ”のときは、トランジスタ２１はオフ、トランジスタ２２はオンの状態にある。ここで比較データ入力線３Ｂに“Ｌｏｗ”の信号が入力されると（図２のＰ１）、トランジスタ２４がオンになり、トランジスタ２６はオフになる。そのため、出力ノードＮＯＵＴが“Ｈｉｇｈ”となり（図２のＰ２）、トランジスタ５１をオンさせ、マッチ線５０を“Ｌｏｗ”にして不一致を検出する（図２のＰ３）。
【００２４】
逆に、メモリセル部１０が保持している内容と比較データが一致した場合は、２組ある直列に接続されたＰチャネルトランジスタのうち２つはオンしない。例えば、内部ノードＮ１が“Ｈｉｇｈ”、内部ノードＮ２が“Ｌｏｗ”のとき、トランジスタ２１はオフ、トランジスタ２２はオンの状態にある。ここで、比較データ入力線２Ｂに“Ｌｏｗ”、比較データ入力線３Ｂに“Ｈｉｇｈ”の信号が入力されると、トランジスタ２３がオンに、トランジスタ２４がオフになる。つまり直列に接続されたトランジスタ２１と２３またはトランジスタ２２と２４が同時にオンしないため、出力ノードＮＯＵＴは初期状態の“Ｌｏｗ”のままでＮチャネルトランジスタ５１はオフのままである。全ビットについてこの状態が起きた場合にのみ、マッチ線５０はプリチャージした状態のままであり、一致を検出する。
【００２５】
本実施形態のＣＡＭでは、比較データ入力線２Ｂ，３Ｂの初期状態が“Ｈｉｇｈ”であるため、比較部２０の出力ノードＮＯＵＴが“Ｌ”レベルで安定している。また、マッチ線５０につながるトランジスタが１ビット当たり１個（トランジスタ５１）であるため、チャージシェアリングの問題がなくなる。従来のＣＡＭのトランジスタ数が１０個であるのに対し、本実施形態のＣＡＭは１３個であるが、図３に示すように、実際のレイアウトパターンの面積は、従来回路６１が４．０×１１．３［μｍ］であるのが、本実施形態の回路６２では４．０×１１．９［μｍ］で高さが０．６［μｍ］増えたにすぎない。
【００２６】
また、ＨＳＰＩＣＥによる３０ビット×６４エントリのＣＡＭのシミュレーション結果から比較の速度は、従来回路では１．５２［ｎｓｅｃ］に対して本実施形態は１．２６［ｎｓｅｃ］と速くなっている。さらに消費電力（平均）では従来回路が３６ｍＡであったのが、本実施形態では３０ｍＡとなり、低消費電力化が図られている。
【００２７】
以下、本発明のＣＡＭの周辺回路を含めて具体的に説明する。
【００２８】
図４は、本発明のＣＡＭのバッファ回路の構成例を示す回路図であり、図５は、図１のＣＡＭを図４のバッファ回路で動作させる場合の構成図である。また、図６及び図７はそのときの動作波形図である。
【００２９】
まず、図４を用いてＣＡＭのバッファ回路について説明する。
【００３０】
このバッファ回路は、２つのインバータ７１，７２と２つのＮＡＮＤゲート７３，７４及び２つのセレクタ７５，７６からなる。図１３（ａ）の従来例と同様にＣＡＭ内部のメモリセル用のビット線と比較データ入力線を信号線２，３で共通化している。上記第１実施形態で説明したように、この信号線２，３は初期状態が“Ｈｉｇｈ”である。すなわち、書き込みイネーブル信号ＷＥｎと比較イネーブル信号ＣＥｎが共に“Ｌｏｗ”であれば、セレクタ７５の出力は“Ｌｏｗ”となり、信号線２，３に出力する２つのＮＡＮＤゲート７３，７４の出力レベルは“Ｈｉｇｈ”のままである。
【００３１】
クロックＣＬＫが“Ｈｉｇｈ”になった期間で比較イネーブル信号ＣＥｎが“Ｈｉｇｈ”のとき、セレクタ７６は比較データＣＤを選択する。もし、比較データＣＤが“Ｈｉｇｈ”であった場合は、ＮＡＮＤゲート７３の出力が“Ｌｏｗ”になり、もう一方のＮＡＮＤゲート７４の出力は“Ｈｉｇｈ”のままである。逆に、比較データＣＤが“Ｌｏｗ”の場合は、インバータ７１を通してＮＡＮＤゲート７４が“Ｌｏｗ”になる。
【００３２】
また、クロックＣＬＫが“Ｌｏｗ”になった期間で書き込みイネーブル信号ＷＥｎが“Ｈｉｇｈ”のときは、インバータ７２を通してＮＡＮＤゲート７４が“Ｈｉｇｈ”になる。このとき、セレクタ７６は書き込みデータＷＤを選択しており、これが“Ｈｉｇｈ”であった場合はＮＡＮＤゲート７３が“Ｌｏｗ”に、逆に書き込みデータＷＤが“Ｌｏｗ”の場合はインバータ７１を通してＮＡＮＤゲート７４が“Ｌｏｗ”になる。
【００３３】
このように、書き込み時及び比較時に信号線２，３うち所望する一方の線を“Ｌｏｗ”にすることにより、比較または書き込みのための信号が生成される。
【００３４】
次に、図５、図６及び図７を用いて全体的な動作を説明する。なお、図６は比較動作時の要部波形図、図７は書き込み動作時の要部波形図である。
【００３５】
図５に示す回路は、ビット線２，３に接続されたＣＡＭ８０（図１のＣＡＭ）と、バッファ９０（図４のバッファ回路）と、ビット線２，３をプリチャージするプリチャージ回路１００と、マッチ線５０のプリチャージトランジスタ５２とを備えている。
【００３６】
［比較動作］
クロックＣＬＫが“Ｈｉｇｈ”のときに（図６のｔ１）比較イネーブルＣＥｎが“Ｈｉｇｈ”になると、比較データＣＤが“Ｈｉｇｈ”ならばビット線２が“Ｌｏｗ”にビット線３は“Ｈｉｇｈ”になる。ＣＡＭのメモリセル部８０の内部ノードＮ１が“Ｌｏｗ”、内部ノードＮ２が“Ｈｉｇｈ”ならば、比較部２０のトランジスタ２１は、内部ノードＮ１が“Ｌｏｗ”のためオンしており、さらに直列につながっているトランジスタ２３がビット線２の“Ｌｏｗ”を受けてオンする。これによって出力ノードＮＯＵＴが“Ｈｉｇｈ”となり、マッチ線５０につながるトランジスタ５１をオンさせ、マッチ線５０を“Ｌｏｗ”にして不一致を検出する（図６参照）。
【００３７】
逆に、ＣＡＭ８０の内部ノードＮ１が“Ｈｉｇｈ”、内部ノードＮ２が“Ｌｏｗ”ならば、比較トランジスタ２２は“Ｌｏｗ”の内部ノードＮ２でオンしているが、それに直列につながっているトランジスタ２４はビット線３が“Ｈｉｇｈ”のままであるのでオフとなる。これによって出力ノードＮＯＵＴは“Ｌｏｗ”のままとなり、マッチ線５０につながるトランジスタ５１もオフのままで、マッチ線５０につながる全ビットのトランジスタがオフの場合に一致を検出する。なお、この期間中はビット線プリチャージ信号ＰＲは“Ｈｉｇｈ”、マッチ線プリチャージ信号ＭＰＲは“Ｈｉｇｈ”になる。
【００３８】
［書き込み動作］
クロックＣＬＫが“Ｌｏｗ”のときに（図７のｔ２）書き込みイネーブルＷＥｎが“Ｈｉｇｈ”になると、書き込みデータＷＤが“Ｈｉｇｈ”ならば、ビット線２が“Ｌｏｗ”に、ビット線３は“Ｈｉｇｈ”になる。ワード線１が“Ｈｉｇｈ”になると、メモリセル部１０のパストランジスタ１１，１２がオンする。そのとき、内部ノードＮ１に“Ｈｉｇｈ”が、内部ノードＮ２に“Ｌｏｗ”が保持される。
【００３９】
逆に、書き込みデータＷＤが“Ｌｏｗ”ならば、ビット線２が“Ｈｉｇｈ”にビット線３は“Ｌｏｗ”になる。パストランジスタ１１，１２がオンになれば、内部ノードＮ１に“Ｌｏｗ”が、内部ノードＮ２に“Ｈｉｇｈ”が保持される。なお、この期間中はビット線プリチャージ信号ＰＲは“Ｈｉｇｈ”、マッチ線プリチャージ信号ＭＰＲはワイヤドオア  トランジスタのリークを押さえるため“ｈｉｇｈ”とする。
【００４０】
このように本実施形態では、従来回路と異なりビット線の初期状態が“Ｈｉｇｈ”であるため、メモリセル部のパストランジスタをＰチャネルトランジスタに換える必要がなく、そのため書き込み動作が遅くなるという問題が生じない。また、ビット線の読み出しスタンバイ時及び初期状態においてマッチ線５０につながるトランジスタ５１の入力が“Ｌｏｗ”となるため、マッチ線５０の不安定な動作がなくなり、余分な消費電力が減ることなる。
【００４１】
また、マッチ線５０につながるトランジスタ５１は１ビットにつき１個となるため、従来回路の場合よりもトランジスタの接合容量による配線容量が減り、さらにはビット線と比較データ入力線を共用したことで、これらの配線間のカップリングがなくなり、高速に動作できる。
【００４２】
次に、本発明のＣＡＭ及びバッファ回路を用いた応用例を説明する。
【００４３】
図８は、ＢＴＢ（Ｂｒａｎｃｈ  Ｔａｒｇｅｔ  Ｂｕｆｆｅｒ）を持つＲＩＳＣプロセッサの要部ブロック図であり、図９はその動作を示すタイムチャートである。
【００４４】
ＢＴＢ１１０は、コントローラ１３０の制御によりプログラムカウンタ１２０のアドレスをＣＡＭアレイに入力し、内容の一致したエントリにあるＲＡＭセルに含まれるターゲットアドレスＴＡＤを出力する。このときＣＡＭは比較動作を行う。この動作は、プログラムカウンタ１２０が動作する限り毎サイクル行う。
【００４５】
もし、一致するエントリが１つもなかった場合、またはターゲットアドレスに変更が生じた場合、そのエントリとターゲットアドレスをそれぞれＣＡＭとＲＡＭに書き込む必要がある。ＢＴＢの性能を向上させるためには、毎サイクルのアクセスと、ＣＡＭでの一致を検出しなかった値の書き込みを同一サイクルで行うことが必要である。
【００４６】
図９に示すのタイムチャートにおいては、ＢＴＢ１１０はＤステージでプログラムカウンタ１２０からのアドレスを比較して、ターゲットアドレスを出力し、Ｂステージでミスを起こした場合のリフィルを行うものとする。
【００４７】
このとき、例えば、２番目の命令がクロック３でＢＴＢをアクセスしたにもかかわらず１つも一致したエントリがない場合はミス信号を出力し（図９のＷ１）、分岐先アドレスが確定したクロック５のＢステージで（図９のＷ２）、ＢＴＢ１１０のＣＡＭにミスを生じたプログラムカウンタ１２０のアドレスから得られたターゲットアドレスをＲＡＭに書き込む。しかし、クロック５では４番目の命令がＢＴＢ１１０にアクセスする。すなわち同一クロックにおいてＣＡＭの比較動作と書き込み動作が生じることになる。
【００４８】
ここで、図５のようなＣＡＭとバッファ回路の構成を用い、図１０に示すタイミングで動作を行うことで、１サイクルで比較と書き込みを実行できる。すなわち、比較イネープルＣＥｎをアクティブして、クロックＣＬＫの前半でプリチャージＰＲを“Ｌｏｗ”にし（時刻ｔ１）、比較すべきデータＣＤをバッファ９０に入力する。
【００４９】
比較データＣＤが“Ｈｉｇｈ”ならば、ビット線２が“Ｌｏｗ”にビット線３は“Ｈｉｇｈ”になる。ＣＡＭ８０にあるメモリセル部の内部ノードＮ１が“Ｌｏｗ”、内部ノードＮ２が“Ｈｉｇｈ”ならば、比較トランジスタ２１が内部ノードＮ１でオンしており、さらに直列につながっているトランジスタ２３がビット線２の“Ｌｏｗ”を受けてオンする。これによって出力ノードＮＯＵＴが“Ｈｉｇｈ”となり、マッチ線５０につながるトランジスタ５１をオンさせ、マッチ線５０を“Ｌｏｗ”にして不一致を検出する。
【００５０】
逆に、ＣＡＭ８０の内部ノードＮ１が“Ｈｉｇｈ”、内部ノードＮ２が“Ｌｏｗ”ならば、比較トランジスタ２２が内部ノードＮ２でオンしているが、直列につながっているトランジスタ２４はビット線３が“Ｈｉｇｈ”のままであるのでオフとなる。これによって出力ノードＮＯＵＴは“Ｌｏｗ”のままとなり、マッチ線５０につながるトランジスタ５１もオフのままである。もし、マッチ線５０につながる全ビットのトランジスタ５１がオフならば一致を検出する。
【００５１】
次に、クロックＣＬＫの“Ｌｏｗ”の期間中、書き込みイネーブルＷＥｎを“Ｈｉｇｈ”にする。このとき、書き込みデータＷＤが“Ｈｉｇｈ”ならばビット線２が“Ｌｏｗ”に、ビット線３は“Ｈｉｇｈ”になる。ＣＡＭ８０にあるメモリセルのバストランジスタ１１，１２がオンすれば、内部ノードＮ１に“Ｈｉｇｈ”が、内部ノードＮ２に“Ｌｏｗ”が保持される。
【００５２】
逆に、書き込みデータＷＤが“Ｌｏｗ”ならばビット線２が“Ｈｉｇｈ”に、ビット線３は“Ｌｏｗ”になる。ＣＡＭ８０にあるメモリセルのパストランジスタ１１，１２がオンになれば、内部ノードＮ１に“Ｌｏｗ”が、内部ノードＮ２に“Ｈｉｇｈ”が保持される。
【００５３】
このように１サイクルで比較と書き込みの両方の動作を行うことができる。
【００５４】
【発明の効果】
以上詳細に説明したように、本発明によれば、各比較回路による比較動作前に、それぞれ各ワイヤードオア論理回路を非活性状態に設定するようにしたので、例えばビット線の読み出しスタンバイ時や初期状態においてマッチ線が不安定な状態になることがなくなり、余分な消費電力が減少する。さらに、従来のＣＡＭで問題になっていたチャージシェアリングも回避できる。
【００５５】
第２の発明によれば、比較回路の入力データ用信号線とデータ保持回路の書き込みデータ用信号線とをビット線で共用するので、入力データ用信号線と書き込みデータ用信号線を個別に設けた場合にこれらの信号線間に生じるカップリングがなくなり、配線が減るばかりか低消費電力、高速化が可能になる。さらに、マッチ線につながる各ワイヤードオア論理回路を１ビット当たりトランジスタ１個で構成することができるので、配線容量を減らすことでき、より高速に比較動作を行うことが可能になる。
【００５６】
これらの効果により、ＢＴＢのような１サイクルで比較と書き込みが必要となるような回路において、低消費電力及び高速化が可能になる。
【図面の簡単な説明】
【図１】本発明の実施形態に係るＣＡＭの１ビットの構成を示す回路図である。
【図２】実施形態のＣＡＭの動作を示す動作波形図である。
【図３】従来と本発明のＣＡＭのレイアウトパターンの比較図である。
【図４】本発明のＣＡＭのバッファ回路の構成例を示す回路図である。
【図５】図１のＣＡＭを図４のバッファ回路で動作させる場合の構成図である。
【図６】比較動作時の要部波形図である。
【図７】書き込み動作時の要部波形図である。
【図８】本発明の応用例に係るＲＩＳＣプロセッサの要部ブロック図である。
【図９】図８に関連したタイミングチャートである。
【図１０】図８の装置に本発明を適用した場合のタイミングチャートである。
【図１１】従来のＣＡＭの１ビット構成例を示す回路図である。
【図１２】図１１に関連したタイミングチャートである。
【図１３】従来の他のＣＡＭの１ビット構成例を示す回路図である。
【符号の説明】
２，３  ビット線
１０  メモリセル部
２０  比較部
５１  ワイヤード・ＯＲ論理部
２１〜２４  Ｐチャネルトランジスタ
２５，２６  Ｎチャネルトランジスタ
Ｎ１，Ｎ２  メモリセル部１０の内部ノード
ＮＯＵＴ  出力ノード
【図１】
0003923642.tif 000002
【図２】
0003923642.tif 000003
【図３】
0003923642.tif 000004
【図４】
0003923642.tif 000005
【図５】
0003923642.tif 000006
【図６】
0003923642.tif 000007
【図７】
0003923642.tif 000008
【図８】
0003923642.tif 000009
【図９】
0003923642.tif 000010
【図１０】
0003923642.tif 000011
【図１１】
0003923642.tif 000012
【図１２】
0003923642.tif 000013
【図１３】
0003923642.tif 000014