IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

<>
  • -半導体装置 図1
  • -半導体装置 図2
  • -半導体装置 図3
  • -半導体装置 図4
  • -半導体装置 図5
  • -半導体装置 図6
  • -半導体装置 図7
  • -半導体装置 図8
  • -半導体装置 図9
  • -半導体装置 図10
  • -半導体装置 図11
  • -半導体装置 図12
  • -半導体装置 図13A
  • -半導体装置 図13B
  • -半導体装置 図14
  • -半導体装置 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-30
(45)【発行日】2023-11-08
(54)【発明の名称】半導体装置
(51)【国際特許分類】
   G11C 15/04 20060101AFI20231031BHJP
   G11C 29/32 20060101ALI20231031BHJP
【FI】
G11C15/04 631F
G11C15/04 631D
G11C15/04 631E
G11C29/32 100
【請求項の数】 11
(21)【出願番号】P 2020126080
(22)【出願日】2020-07-27
(65)【公開番号】P2022023268
(43)【公開日】2022-02-08
【審査請求日】2023-01-10
(73)【特許権者】
【識別番号】302062931
【氏名又は名称】ルネサスエレクトロニクス株式会社
(74)【代理人】
【識別番号】110002066
【氏名又は名称】弁理士法人筒井国際特許事務所
(72)【発明者】
【氏名】澤田 陽平
(72)【発明者】
【氏名】森本 薫夫
(72)【発明者】
【氏名】藪内 誠
【審査官】後藤 彰
(56)【参考文献】
【文献】特開2005-228461(JP,A)
【文献】特開2018-206451(JP,A)
【文献】特開平03-286494(JP,A)
【文献】特開2018-198104(JP,A)
【文献】特開2019-033161(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G11C 15/04
G11C 29/32
(57)【特許請求の範囲】
【請求項1】
CAM(Content Addressable Memory)ユニットを有する半導体装置であって、
前記CAMユニットは、
複数のCAMエントリと、
前記複数のCAMエントリに共通して設けられ、外部からのサーチデータが入力される複数のサーチ線と、
前記複数のCAMエントリに共通して設けられる共通マッチ出力線と、
を備え、
前記複数のCAMエントリのそれぞれは、
予め記憶している記憶データと前記サーチデータとのマッチ・ミスマッチを判別する複数のCAMセルと、
前記複数のCAMセルに結合され、前記複数のCAMセルの判別結果に基づいて電圧レベルが制御されるマッチ線と、
前記共通マッチ出力線と所定の電源との間に直列に結合される第1のトランジスタおよび第2のトランジスタと、
を有し、
前記第1のトランジスタは、前記マッチ線の電圧レベルに基づいてオン・オフが制御され、
前記第2のトランジスタは、サーチ動作時にアサートされるサーチイネーブル信号によってオン・オフが制御され、
前記複数のCAMエントリのそれぞれは、さらに、前記第2のトランジスタと並列に結合され、リード動作時に、自身のCAMエントリに結合されるワード線の電圧レベルに基づいてオン・オフが制御される第3のトランジスタを有する、
半導体装置。
【請求項2】
請求項記載の半導体装置において、さらに、
前記共通マッチ出力線をプリチャージするプリチャージ回路と、
前記共通マッチ出力線の電圧レベルを増幅するセンスアンプと、
を有し、
前記プリチャージ回路および前記センスアンプは、前記サーチ動作時と前記リード動作時とで動作する、
半導体装置。
【請求項3】
請求項記載の半導体装置において、さらに、
前記共通マッチ出力線の差動対となる反転共通マッチ出力線と、
前記反転共通マッチ出力線を対象として、前記第1のトランジスタ、前記第2のトランジスタおよび前記第3のトランジスタにそれぞれ対応して設けられる第4のトランジスタ、第5のトランジスタおよび第6のトランジスタと、
前記共通マッチ出力線および前記反転共通マッチ出力線をプリチャージする差動用プリチャージ回路と、
前記共通マッチ出力線の電圧レベルと前記反転共通マッチ出力線の電圧レベルとの差電圧を増幅する差動型センスアンプと、
を有し、
前記第5のトランジスタは、一端が前記反転共通マッチ出力線に結合され、他端がオープンとなっており、
前記差動型センスアンプは、前記リード動作時に活性化される、
半導体装置。
【請求項4】
請求項記載の半導体装置において、
前記差動型センスアンプは、前記リード動作時と前記サーチ動作時とで活性化され、
前記差動用プリチャージ回路は、前記サーチ動作時に、前記反転共通マッチ出力線を、高電位側電源の電圧レベルと低電位側電源の電圧レベルの中間電圧レベルにプリチャージする、
半導体装置。
【請求項5】
請求項1記載の半導体装置において、
前記CAMユニットの一つであり、前記サーチデータの一部のビット領域が入力される第1のCAMユニットと、
前記CAMユニットの他の一つであり、前記サーチデータの他の一部のビット領域が入力される第2のCAMユニットと、
を有し、
前記第2のCAMユニットは、前記サーチ動作時に、前記第1のCAMユニットの前記共通マッチ出力線の電圧レベルに応じて、活性化・非活性化が制御される、
半導体装置。
【請求項6】
請求項1記載の半導体装置において、
前記複数のCAMエントリのそれぞれは、さらに、自身のCAMエントリの有効・無効を表すバリッドデータを記憶し、前記自身のCAMエントリに結合されるワード線によってアクセスされるバリッドビットセルを有し、
前記バリッドビットセルは、
記憶ノードおよび反転記憶ノードを含むラッチ回路と、
前記記憶ノードと低電位側電源との間に結合され、リセット信号によってオン・オフが制御される第1のリセット用MOSトランジスタと、
前記反転記憶ノードと高電位側電源との間に結合され、反転リセット信号によってオン・オフが制御される第2のリセット用MOSトランジスタと、
を有する、
半導体装置。
【請求項7】
TCAM(Ternary Content Addressable Memory)ユニットを有する半導体装置であって、
前記TCAMユニットは、
複数のTCAMエントリと、
前記複数のTCAMエントリに共通して設けられ、外部からのサーチデータが入力される複数のサーチ線と、
前記複数のTCAMエントリに共通して設けられる共通マッチ出力線と、
を備え、
前記複数のTCAMエントリのそれぞれは、
自身のTCAMエントリの有効・無効を表すバリッドデータを記憶し、第1のワード線または第2のワード線によってアクセスされるデュアルポート型のバリッドビットセルと、
予め記憶している記憶データと前記サーチデータとのマッチ・ミスマッチを判別する複数のTCAMセルと、
前記複数のTCAMセルに結合され、前記複数のTCAMセルの判別結果に基づいて電圧レベルが制御されるマッチ線と、
前記共通マッチ出力線と所定の電源との間に直列に結合される第1のトランジスタおよび第2のトランジスタと、
前記第2のトランジスタと並列に結合される第3のトランジスタと、
を有し、
前記第1のトランジスタは、前記マッチ線の電圧レベルに基づいてオン・オフが制御され、
前記第2のトランジスタは、サーチ動作時にアサートされるサーチイネーブル信号によってオン・オフが制御され、
前記第3のトランジスタは、リード動作時に、前記第1のワード線または前記第2のワード線によってオン・オフが制御され、
前記第3のトランジスタは、並列に結合される第3Aのトランジスタと第3Bのトランジスタとで構成され、
前記第3Aのトランジスタは、前記第1のワード線によってオン・オフが制御され、
前記第3Bのトランジスタは、前記第2のワード線によってオン・オフが制御される、
半導体装置。
【請求項8】
請求項記載の半導体装置において、さらに、
前記共通マッチ出力線の差動対となる反転共通マッチ出力線と、
前記反転共通マッチ出力線を対象として、前記第1のトランジスタ、前記第2のトランジスタ、前記第3Aのトランジスタおよび前記第3Bのトランジスタにそれぞれ対応して設けられる第4のトランジスタ、第5のトランジスタ、第6Aのトランジスタおよび第6Bのトランジスタと、
前記共通マッチ出力線および前記反転共通マッチ出力線をプリチャージする差動用プリチャージ回路と、
前記共通マッチ出力線の電圧レベルと前記反転共通マッチ出力線の電圧レベルとの差電圧を増幅する差動型センスアンプと、
を有し、
前記第5のトランジスタは、一端が前記反転共通マッチ出力線に結合され、他端がオープンとなっており、
前記差動型センスアンプは、前記リード動作時に活性化される、
半導体装置。
【請求項9】
請求項記載の半導体装置において、
前記差動型センスアンプは、前記リード動作時と前記サーチ動作時とで活性化され、
前記差動用プリチャージ回路は、前記サーチ動作時に、前記反転共通マッチ出力線を、高電位側電源の電圧レベルと低電位側電源の電圧レベルの中間電圧レベルにプリチャージする、
半導体装置。
【請求項10】
請求項記載の半導体装置において、
前記CAMユニットの一つであり、前記サーチデータの一部のビット領域が入力される第1のCAMユニットと、
前記CAMユニットの他の一つであり、前記サーチデータの他の一部のビット領域が入力される第2のCAMユニットと、
を有し、
前記第2のCAMユニットは、前記サーチ動作時に、前記第1のCAMユニットの前記共通マッチ出力線の電圧レベルに応じて、活性化・非活性化が制御される、
半導体装置。
【請求項11】
請求項記載の半導体装置において、
前記バリッドビットセルは、
記憶ノードおよび反転記憶ノードを含むラッチ回路と、
前記記憶ノードと低電位側電源との間に結合され、リセット信号によってオン・オフが制御される第1のリセット用MOSトランジスタと、
前記反転記憶ノードと高電位側電源との間に結合され、反転リセット信号によってオン・オフが制御される第2のリセット用MOSトランジスタと、
を有する、
半導体装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体装置に関し、例えば、CAM(Content Addressable Memory)を含む半導体装置に関する。
【背景技術】
【0002】
特許文献1には、低消費電力化と高速化とを両立させる連想記憶装置が示される。具体的には、マッチアンプAは、マッチ線MLAの電圧に応じて、メモリアレイAのエントリ内の連想メモリに記憶されたデータとサーチデータとの一致・不一致を判定する。マッチアンプBも、メモリアレイBを対象として同様に動作する。ブロックB制御回路210は、メモリアレイAでのサーチを開始してから、2サイクル後に、メモリアレイBでのサーチを開始させる。ブロックB活性化制御回路207は、メモリアレイAのサーチ後のマッチ線MLAの電圧に応じて、メモリアレイBでのサーチ動作を中止させる。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2011-181147号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、特許文献1の技術では、ブロックB活性化制御回路は、マッチ線のいずれか1本でもマッチしているか否かを観測し、全てミスマッチであればメモリアレイBを含む後段のTCAM(Ternary CAM)マクロでのサーチ動作を中止させている。このブロックB活性化制御回路は、TCAMマクロの外のラッパーに配置され、複数の論理ゲートで全マッチ線のOR演算を行う回路となっている。しかし、このようなラッパー内の論理ゲートを用いると、信号遅延が大きくなる恐れがあった。
【0005】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【0006】
一実施の形態の半導体装置は、CAMユニットを有する。CAMユニットは、複数のCAMエントリと、複数のCAMエントリに共通して設けられ、外部からのサーチデータが入力される複数のサーチ線と、複数のCAMエントリに共通して設けられる共通マッチ出力線と、を備える。複数のCAMエントリのそれぞれは、複数のCAMセルと、マッチ線と、第1のトランジスタおよび第2のトランジスタと、を有する。複数のCAMセルは、予め記憶している記憶データとサーチデータとのマッチ・ミスマッチを判別する。マッチ線は、複数のCAMセルに結合され、複数のCAMセルの判別結果に基づいて電圧レベルが制御される。第1のトランジスタおよび第2のトランジスタは、共通マッチ出力線と所定の電源との間に直列に結合される。ここで、第1のトランジスタは、マッチ線の電圧レベルに基づいてオン・オフが制御され、第2のトランジスタは、サーチ動作時にアサートされるサーチイネーブル信号によってオン・オフが制御される。
【発明の効果】
【0007】
一実施の形態の半導体装置を用いることで、CAMを含む半導体装置における信号遅延を小さくすることが可能になる。
【図面の簡単な説明】
【0008】
図1】本発明の実施の形態1による半導体装置において、主要部の構成例を示す概略図である。
図2図1における各CAMセルの構成例を示す回路図である。
図3図1における各CAMエントリおよびマッチ信号出力回路の主要部の詳細な構成例を示す回路図である。
図4図3におけるエントリラッチ回路の詳細な構成例を示す回路図である。
図5】本発明の実施の形態2による半導体装置において、図1の一部を抽出した構成例を示す概略図である。
図6図5を反映した各CAMエントリおよびマッチ信号出力回路の主要部の詳細な構成例を示す回路図である。
図7図6を変形した構成例を示す回路図である。
図8図7を変形した構成例を示す回路図である。
図9】本発明の実施の形態3による半導体装置において、図1における各CAMエントリおよびマッチ信号出力回路の主要部の詳細な構成例を示す回路図である。
図10図9を変形した構成例を示す回路図である。
図11図10を変形した構成例を示す回路図である。
図12図11を変形した構成例を示す回路図である。
図13A】本発明の実施の形態4による半導体装置において、図1に含まれるバリッドビットセルの構成例を示す回路図である。
図13B図13Aとは異なるバリッドビットセルの構成例を示す回路図である。
図14図13Bのバリッドビットセルにおける主要部のレイアウト構成例を示す平面図である。
図15図14を変形したレイアウト構成例を示す平面図である。
【発明を実施するための形態】
【0009】
以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらは互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。また、以下の実施の形態において、要素の数等(個数、数値、量、範囲等を含む)に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でも良い。
【0010】
さらに、以下の実施の形態において、その構成要素(要素ステップ等も含む)は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値および範囲についても同様である。
【0011】
また、実施の形態の各機能ブロックを構成する回路素子は、特に制限されないが、公知のCMOS(相補型MOSトランジスタ)等の集積回路技術によって、単結晶シリコンのような半導体基板上に形成される。なお、実施の形態では、nチャネル型MOS(Metal Oxide Semiconductor)トランジスタをnMOSトランジスタと呼び、pチャネル型MOSトランジスタをpMOSトランジスタと呼ぶ。
【0012】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【0013】
(実施の形態1)
《半導体装置の概略》
図1は、本発明の実施の形態1による半導体装置において、主要部の構成例を示す概略図である。図1に示す半導体装置は、複数(この例では2個)CAMユニット(CAMマクロ)CU1,CU2と、プライオリティエンコーダPRENとを備える。CAMユニットCU1は、複数(m+1個)のCAMエントリERY[0]~ERY[m]と、ワード線ドライバWLDと、ライトドライバWTD、センスアンプSAおよびソース線ドライバSLDと、制御回路CTLと、マッチ信号出力回路MIOとを備える。
【0014】
また、CAMユニットCU1は、複数(m+1本)のワード線WLa[0]~WLa[m]と、複数(m+1本)のワード線WLb[0]~WLb[m]とを備える。明細書では、ワード線WLa[0]~WLa[m],WLb[0]~WLb[m]を総称して、ワード線WLと呼ぶ。また、ワード線WLa[0]~WLa[m]を総称してA系ワード線WLaと呼び、ワード線WLb[0]~WLb[m]を総称してB系ワード線WLbと呼ぶ。ワード線WLは、ロウ方向に並んで配置される。
【0015】
さらに、CAMユニットCU1は、複数(n+1本)のビット線BLT[0]~BLT[n]および反転ビット線BLB[0]~BLB[n]と、複数(n+1本)のサーチ線SLT[0]~SLT[n]および反転サーチ線SLB[0]~SLB[n]とを備える。ビット線BLT[i](i=0,1,…,m)および反転ビット線BLB[i]は、ビット線対を構成する。サーチ線SLT[i](i=0,1,…,n)および反転サーチ線SLB[i]はサーチ線対を構成する。
【0016】
明細書では、ビット線BLT[0]~BLT[n]を総称してビット線BLTと呼び、反転ビット線BLB[0]~BLB[n]を総称して反転ビット線BLBと呼ぶ。また、サーチ線SLT[0]~SLT[n]を総称してサーチ線SLTと呼び、反転サーチ線SLB[0]~SLB[n]を総称して反転サーチ線SLBと呼ぶ。ビット線BLT、反転ビット線BLB、サーチ線SLTおよび反転サーチ線SLBは、ロウ方向と交差するカラム方向に並んで配置される。
【0017】
ワード線WLa[j],WLb[j](j=0,1,…,m)は、CAMエントリERY[j]に結合される。CAMエントリERY[0]は、複数(n+1個)のCAMセルMC[00]~MC[0n]と、バリッドビットセルVBC[0]と、マッチリードセルMRC[0]と、マッチ線ML[0]とを備える。各CAMセルMC[0i](i=0,1,…,n)は、ワード線WLa[0],WLb[0]と、ビット線BLT[i](反転ビット線BLB[i])またはサーチ線SLT[i](反転サーチ線SLB[i])との交点に配置される。マッチ線ML[0]は、カラム方向に向けて延伸し、複数のCAMセルMC[00]~MC[0n]に結合される。
【0018】
同様に、CAMエントリERY[m]は、複数(n+1個)のCAMセルMC[m0]~MC[mn]と、バリッドビットセルVBC[m]と、マッチリードセルMRC[m]と、マッチ線ML[m]とを備える。各CAMセルMC[mi](i=0,1,…,n)は、ワード線WLa[m],WLb[m]と、ビット線BLT[i](反転ビット線BLB[i])またはサーチ線SLT[i](反転サーチ線SLB[i])との交点に配置される。マッチ線ML[m]は、カラム方向に向けて延伸し、複数のCAMセルMC[m0]~MC[mn]に結合される。
【0019】
明細書では、CAMエントリERY[0]~ERY[m]を総称してCAMエントリERYと呼び、CAMセルMC[00]~MC[mn]を総称してCAMセルMCと呼ぶ。また、マッチ線ML[0]~ML[m]を総称して、マッチ線MLと呼ぶ。さらに、バリッドビットセルVBC[0]~VBC[m]を総称して、バリッドビットセルVBCと呼び、マッチリードセルMRC[0]~MRC[m]を総称して、マッチリードセルMRCと呼ぶ。
【0020】
ここで、図1に示されるように、ビット線BLT(反転ビット線BLB)およびサーチ線SLT(反転サーチ線SLB)は、複数のCAMエントリERY[0]~ERY[m]に共通して設けられる。サーチ線SLT[0]~SLT[n](反転サーチ線SLB[0]~SLB[n])には、外部からのサーチデータSD[0]~SD[n]が入力される。明細書では、サーチデータSD[0]~SD[n]を総称してサーチデータSDと呼ぶ。詳細は後述するが、複数のCAMエントリERY[0]~ERY[m]のそれぞれは、CAMセルMCに記憶されている記憶データとサーチデータSDとのマッチ・ミスマッチを判定し、その判定結果をマッチ線MLに出力する。
【0021】
例えば、サーチデータSD[0]~SD[n]と、CAMエントリERY[0]のCAMセルMC[00]~MC[0n]の記憶データとが全ビットでマッチする場合、マッチ線ML[0]は、マッチを表す電圧レベル(例えば“1”レベル)となる。一方、サーチデータSDと記憶データとが1ビット以上でミスマッチの場合、マッチ線ML[0]は、ミスマッチを表す電圧レベル(例えば“0”レベル)となる。同様に、例えば、サーチデータSDと、CAMエントリERY[m]の記憶データとがマッチする場合には、マッチ線ML[m]が、マッチを表す電圧レベル(“1”レベル)となる。
【0022】
バリッドビットセルVBC[j](j=0,1,…,m)は、CAMエントリERY[j]のバリッドデータを記憶する。バリッドデータとは、対応するCAMエントリERYの有効・無効を定めるデータである。例えば、CAMエントリERY[0]のバリッドビットセルVBC[0]のバリッドデータが“無効”を表すデータの場合、マッチ線ML[0]は、ミスマッチを表す電圧レベルに固定される。
【0023】
また、図1に示されるように、複数のCAMエントリERY[0]~ERY[m]に共通して、ロウ方向に延伸する共通マッチ出力線MBTが設けられる。マッチリードセルMRC[0]~MRC[m]は、この共通マッチ出力線MBTに結合される。詳細は後述するが、共通マッチ出力線MBTは、例えば、サーチデータSDが全CAMエントリERY[0]~ERY[m]でミスマッチである場合に、所定の電圧レベルに制御される。
【0024】
マッチ信号出力回路MIOは、複数のCAMエントリERY[0]~ERY[m]に共通して設けられる。マッチ信号出力回路MIOは、共通マッチ出力線MBTの電圧レベルに基づいて、マッチオールアウト信号MAOを出力する。ワード線ドライバWLDは、複数のワード線WLを駆動する。ライトドライバWTDは、ライト動作時に、ワード線WLによって選択されたCAMエントリERY内の複数のCAMセルMCに、ビット線BLTおよび反転ビット線BLBを介して所定の記憶データを書き込む。
【0025】
センスアンプSAは、リード動作時に、ワード線WLによって選択されたCAMエントリERY内の複数のCAMセルMCからビット線BLT(および反転ビット線BLB)に読み出された記憶データの読み出し信号を増幅する。サーチ線ドライバSLDは、サーチ動作時に、サーチ線SLT(反転サーチ線SLB)を外部からのサーチデータに基づいて駆動する。制御回路CTLは、ライト動作、リード動作、サーチ動作に応じて、ワード線ドライバWLD、ライトドライバWTD、センスアンプSA、サーチ線ドライバSLDおよびマッチ信号出力回路MIOを適宜制御する。
【0026】
CAMユニットCU2は、CAMユニットCU1とほぼ同様の構成を備え、外部からのサーチデータSD[n+1]~SD[k]を受けてCAMユニットCU1と同様の動作を行う。すなわち、図1の例では、サーチデータSD[0]~SD[k]は2分割され、その一部のビット領域(SD[0]~SD[n])はCAMユニットCU1に入力され、残りのビット領域(SD[n+1]~SD[k])はCAMユニットCU2に入力される。
【0027】
そして、サーチ動作時に、CAMユニットCU2は、CAMユニットCU1内にマッチするCAMエントリERYが有った場合には、残りのビット領域を対象にサーチ動作を行う。一方、CAMユニットCU2は、CAMユニットCU1内にマッチするCAMエントリERYが無かった場合には、サーチ動作を行わない。CAMユニットCU1内のマッチ信号出力回路MIOは、このマッチするCAMエントリERYの有無を共通マッチ出力線MBTに基づいて判別し、その判別結果を、マッチオールアウト信号MAOを用いて出力する。
【0028】
CAMユニットCU2内の制御回路CTLは、このCAMユニットCU1からのマッチオールアウト信号MAOに基づいて、CAMユニットCU2でのサーチ動作の活性化・非活性化を制御する。また、CAMユニットCU2は、CAMユニットCU1と異なり、遅延回路DLYを備える。遅延回路DLYは、入力されたサーチデータSD[n+1]~SD[k]を遅延させてサーチ線ドライバSLDへ出力する。この遅延回路DLYの遅延時間は、CAMユニットCU1のサーチ動作に要する時間(すなわち、マッチオールアウト信号MAOを得るのに要する時間)に基づいて定められる。
【0029】
プライオリティエンコーダPRENは、サーチ動作時に、複数のマッチ線MLがマッチした場合に、所定の優先度に基づいて、いずれか一つのマッチ線MLを選択する。そして、プライオリティエンコーダPRENは、当該選択したマッチ線MLに対応するアドレス信号を出力する。なお、図示は省略されているが、半導体装置は、当該出力されたアドレス信号を受けて読み出し動作を行うSRAM(Static Randam Access Memory)や、各種処理(例えば、ネットワークのルーティング処理等)を行うCPU(Central Processing Unit)等を備えてもよい。
【0030】
《CAMセルの詳細》
図2は、図1における各CAMセルの構成例を示す回路図である。図2に示すCAMセルMCは、2ビットで3値(“1”、“0”、“x”(ドントケア))の記憶データを記憶し、記憶データとサーチデータとのマッチ・ミスマッチを判別するものとなっている。このような3値を取り扱うCAMセルは、TCAMセルと呼ばれる。CAMセルMCは、2個のSRAMセルSRCa,SRCbと、ビット比較回路BCMPとを備える。SRAMセルSRCa,SRCbのそれぞれは、2個のインバータIV1,IV2と、2個のアクセストランジスタ(例えばnMOSトランジスタ)Q1,Q2とを備える。
【0031】
2個のインバータIV1,IV2は、互いに一方の出力が他方の入力に結合されることでラッチ回路を構成する。アクセストランジスタQ1は、ラッチ回路の記憶ノードNt1とビット線BLTとを結合する。アクセストランジスタQ2は、ラッチ回路の反転記憶ノードNb1と反転ビット線BLBとを結合する。SRAMセルSRCaのアクセストランジスタQ1,Q2は、ワード線WLaによってオン・オフが制御され、SRAMセルSRCbのアクセストランジスタQ1,Q2は、ワード線WLbによってオン・オフが制御される。
【0032】
ビット比較回路BCMPは、2個のMOSトランジスタ(nMOSトランジスタ)MNa1,MNa2と、2個のMOSトランジスタ(nMOSトランジスタ)MNb1,MNb2とを備える。2個のMOSトランジスタMNa1,MNa2は、マッチ線MLと低電位側電源GNDとの間に直列に結合される。同じく、2個のMOSトランジスタMNb1,MNb2も、マッチ線MLと低電位側電源GNDとの間に直列に結合される。
【0033】
MOSトランジスタMNa1は、SRAMセルSRCa内の記憶ノードNt1によってオン・オフが制御される。MOSトランジスタMNa2は、サーチ線SLTによってオン・オフが制御される。一方、MOSトランジスタMNb1は、SRAMセルSRCb内の記憶ノードNt1によってオン・オフが制御される。MOSトランジスタMNb2は、反転サーチ線SLBによってオン・オフが制御される。
【0034】
ここで、マッチ線MLは、CAMセルMCの記憶データとサーチ線SLTのサーチデータSDとがマッチの場合には、ハイインピーダンスとなり、結果として、マッチ線MLのプリチャージレベル(“1”レベル)を維持するように制御される。一方、マッチ線MLは、CAMセルMCの記憶データとサーチ線SLTのサーチデータSDとがミスマッチの場合には、“0”レベル(低電位側電源GNDの電圧レベル)に変化するように制御される。
【0035】
これに伴い、CAMセルMCの記憶データを“1”データに定める場合、SRAMセルSRCaの記憶ノードNt1に“0”データが書き込まれ、SRAMセルSRCbの記憶ノードNt1に“1”データが書き込まれる。この状態で、サーチ線SLTのサーチデータが“1”データの場合(すなわちマッチ時)、MOSトランジスタMNa1およびMOSトランジスタMNb2は、オフになる。このため、マッチ線MLは、“1”レベルを維持する。一方、サーチ線SLTのサーチデータが“0”データの場合(すなわちミスマッチ時)、MOSトランジスタMNb1,MNb2は、共にオンになる。このため、マッチ線MLは、“0”レベルに変化する。
【0036】
また、CAMセルMCの記憶データを“0”データに定める場合、SRAMセルSRCaの記憶ノードNt1に“1”データが書き込まれ、SRAMセルSRCbの記憶ノードNt1に“0”データが書き込まれる。この状態で、サーチ線SLTのサーチデータが“1”データの場合(すなわちミスマッチ時)、MOSトランジスタMNa1,MNa2は、共にオンになる。このため、マッチ線MLは、“0”レベルに変化する。一方、サーチ線SLTのサーチデータが“0”データの場合(すなわちマッチ時)、MOSトランジスタMNa2およびMOSトランジスタMNb1は、オフになる。このため、マッチ線MLは、“1”レベルを維持する。
【0037】
さらに、CAMセルMCの記憶データを“x”(ドントケア)データに定める場合、SRAMセルSRCa,SRCbの記憶ノードNt1に共に“0”データが書き込まれる。この状態では、MOSトランジスタMNa1およびMOSトランジスタMNb1は、オフになる。このため、サーチ線SLTのサーチデータが“1”データまたは“0”データのいずれであっても、マッチ線MLは、“1”レベルを維持する。なお、SRAMセルSRCa,SRCbの記憶ノードNt1が共に“1”データである状態は、不使用とされる。
【0038】
なお、図1および図2の例では、CAMセルMCがTCAMセルである場合を例とした。ただし、CAMセルMCは、TCAMセルに限らず、BCAM(Binary CAM)セルであってもよい。BCAMセルは、1ビットで2値(“1”、“0”)の記憶データを記憶する。この場合、各CAMエントリERYに結合されるワード線WLは1本でよく、また、図2におけるSRAMセルも1個でよい。
【0039】
《CAMエントリおよびマッチ信号出力回路の詳細》
図3は、図1における各CAMエントリおよびマッチ信号出力回路の主要部の詳細な構成例を示す回路図である。図3において、CAMエントリERY内のバリッドビットセルVBCは、2個のインバータIV3,IV4からなるラッチ回路と、2個のアクセストランジスタ(例えば、nMOSトランジスタ)Q3,Q4と、リセット用MOSトランジスタ(nMOSトランジスタ)MNrとを備える。ラッチ回路およびアクセストランジスタQ3,Q4は、SRAMセルを構成する。
【0040】
アクセストランジスタQ3は、ラッチ回路の記憶ノードNt2とバリッド用ビット線BLTvとを結合する。アクセストランジスタQ4は、ラッチ回路の反転記憶ノードNb2とバリッド用反転ビット線BLBvとを結合する。リセット用MOSトランジスタMNrは、リセット線RTLからのリセット信号RTに応じて記憶ノードNt2を低電位側電源GNDに結合する。アクセストランジスタQ3,Q4は、バリッド用ワード線VWLによってオン・オフが制御される。
【0041】
バリッド用ワード線VWLは、オアゲートOR1の出力に結合される。オアゲートOR1は、A系ワード線WLaの電圧レベルと、B系ワード線WLbの電圧レベルとのオア演算を行い、演算結果となる電圧レベルをバリッド用ワード線VWLに出力する。このような構成において、例えば、バリッドビットセルVBCにバリッドデータVBのライト動作を行う際には、対応するCAMエントリERYのA系ワード線WLaまたはB系ワード線WLbを活性化すればよい。
【0042】
また、CAMエントリERY内のマッチリードセルMRCは、エントリラッチ回路ELTと、2個のMOSトランジスタ(nMOSトランジスタ)MN1,MN2とを備える。エントリラッチ回路ELTは、概略的には、サーチ動作時にマッチ線MLの電圧レベルをラッチし、マッチ出力信号MLOとして出力する。2個のMOSトランジスタMN1,MN2は、共通マッチ出力線MBTと、低電位側電源GNDとの間に直列に結合される。
【0043】
MOSトランジスタMN1は、マッチ出力信号MLOによって(言い換えればマッチ線MLの電圧レベルに基づいて)オン・オフが制御される。MOSトランジスタMN2は、マッチイネーブル信号MEによってオン・オフが制御される。マッチイネーブル信号MEは、サーチ動作を行う際にアサートされる信号であり、マッチイネーブル線MELを介して伝送される。なお、この例では、MOSトランジスタMN2は、詳細には、マッチイネーブル信号MEを、バッファBFを介してバッファリングしたマッチイネーブル信号MEBFによって制御される。
【0044】
マッチ信号出力回路MIOは、プリチャージ回路PCCと、ラッチ回路LTcとを備える。プリチャージ回路PCCは、共通マッチ出力線MBTをプリチャージレベル(“1”レベル)にプリチャージする。ラッチ回路LTcは、共通マッチ出力線MBTの電圧レベルをラッチし、マッチオールアウト信号MAOとして出力する。また、マッチ信号出力回路MIOは、プリチャージ線PCLにマッチ線MLのプリチャージ信号PCを出力し、マッチイネーブル線MELにマッチイネーブル信号MEを出力する。プリチャージ線PCLおよびマッチイネーブル線MELは、図1では省略されているが、複数のCAMエントリERY[0]~ERY[m]に共通して設けられ、ロウ方向に延伸する。
【0045】
ここで、マッチ信号出力回路MIOは、サーチ動作時に、マッチイネーブル信号MEBFを“1”レベルに制御する。その結果、複数のCAMエントリERY[0]~ERY[m]内のMOSトランジスタMN2は、全てオンとなる。一方、複数のCAMエントリERY[0]~ERY[m]内のマッチ線MLは、前述したように、マッチ時に“1”レベルに制御され、ミスマッチ時に“0”レベルに制御される。
【0046】
これにより、複数のCAMエントリERY[0]~ERY[m]内のマッチ線MLの内、1以上のマッチ線MLがマッチした場合(“1”レベルの場合)、当該マッチしたCAMエントリERY内のMOSトランジスタMN1がオンとなる。その結果、共通マッチ出力線MBTは、低電位側電源GNDの電圧レベル(“0”レベル)に制御される。一方、複数のCAMエントリERY[0]~ERY[m]内のマッチ線MLが全てミスマッチであった場合(“0”レベルの場合)、共通マッチ出力線MBTは、プリチャージ回路PCCによるプリチャージレベル(“1”レベル)を維持する。
【0047】
このような方式により、図1におけるCAMユニットCU1内の全CAMエントリERYがミスマッチであったか否かを判別することが可能になる。前述した特許文献1の方式では、このような判別を、マッチ出力信号MLOを入力とする多段構成のオアゲートを用いて行っていた。この場合、信号遅延が大きくなり、また、回路面積や消費電力も増大し得る。一方、図3では、MOSトランジスタMN1,MN2と共通マッチ出力線MBTとを設けることで、このような判別を行っているため、信号遅延を小さくできる。また、このような判別を、小さい回路面積、または少ない消費電力で行うことが可能である。
【0048】
図4は、図3におけるエントリラッチ回路の詳細な構成例を示す回路図である。図4に示すエントリラッチ回路ELTは、ナンドゲートND1と、プリチャージ用のMOSトランジスタ(pMOSトランジスタ)MPpと、ディスチャージ用のMOSトランジスタ(nMOSトランジスタ)MNdと、Dラッチ回路DLTとを備える。まず、バリッドデータVBが“1”レベル(有効)である場合を想定する。
【0049】
この場合、ナンドゲートND1は、プリチャージ信号PCの“0”レベル期間(反転信号(/PC)の“1”レベル期間)でpMOSトランジスタMPpをオンに制御し、プリチャージ信号PCの“1”レベル期間でpMOSトランジスタMPpをオフに制御する。一方、nMOSトランジスタMNdは、バリッドデータVBの反転データ(/VB)に基づいてオフに固定される。その結果、サーチ動作時において、プリチャージ信号PCを“0”レベルから“1”レベルに遷移させることで、マッチ線MLは、高電位側電源VDDの電圧レベル(“1”レベル)にプリチャージされた状態となる。
【0050】
次に、バリッドデータVBが“0”レベル(無効)である場合を想定する。この場合、ナンドゲートND1は、pMOSトランジスタMPpをオフに固定する。一方、nMOSトランジスタMNdは、バリッドデータVBの反転データ(/VB)に基づいてオンに固定される。その結果、マッチ線MLは、低電位側電源GNDの電圧レベル(“0”レベル)に固定された状態となる。
【0051】
Dラッチ回路DLTは、クロックドインバータを含む複数のインバータで構成される。Dラッチ回路DLTは、マッチイネーブル信号MEの“1”レベル期間でマッチ線MLの電圧レベルを取り込み、当該取り込んだ電圧レベルを、マッチイネーブル信号MEの“1”レベルから“0”レベルへの遷移時にラッチする。そして、Dラッチ回路DLTは、このラッチした(または取り込んだ)電圧レベルをマッチ出力信号MLOとして出力する。
【0052】
《実施の形態1の主要な効果》
以上、実施の形態1の半導体装置を用いることで、代表的には、信号遅延を小さくすることが可能になる。具体的には、全CAMエントリERYがミスマッチか否かを判別する際の信号遅延を小さくすることが可能になる。その結果、特に、図1に示したようなサーチデータSDを分割する方式の半導体装置において、サーチ動作の高速化が図れる。また、このミスマッチか否かの判別を、小さい回路面積、または少ない消費電力で行うことが可能になる。
【0053】
なお、ここでは、図3におけるマッチオールアウト信号MAOを、図1に示したようなサーチデータSDを分割する方式の半導体装置に適用する例で説明を行った。ただし、このような用途に限らず、マッチオールアウト信号MAOを別の用途に適用することも可能である。例えば、図1におけるプライオリティエンコーダPRENの活性化・非活性化をマッチオールアウト信号MAOに基づいて制御すること等が挙げられる。すなわち、全CAMエントリERYがミスマッチの場合には、プライオリティエンコーダPRENを非活性化することで消費電力を低減することが可能になる。
【0054】
また、図3では、マッチリードセルMRC内のMOSトランジスタMN1,MN2として、共通マッチ出力線MBTを低電位側電源GNDに結合するためのnMOSトランジスタを用いたが、例えば、共通マッチ出力線MBTを高電位側電源VDDに結合するためのpMOSトランジスタを用いることも可能である。すなわち、共通マッチ出力線MBTの電圧レベル(“1”レベル/“0”レベル)を適宜入れ替える形で構成することも可能である。ただし、速度の観点では、nMOSトランジスタを用いる方が望ましい。
【0055】
(実施の形態2)
《半導体装置の主要部の概略》
図5は、本発明の実施の形態2による半導体装置において、図1の一部を抽出した構成例を示す概略図である。図5には、テスト動作に関する各種構成例が抽出して示される。図5において、複数(m+1個)のCAMエントリERY[0]~ERY[m]のそれぞれは、複数(n+1個)のCAMセルMCと、図3に示したオアゲートOR1とを備える、また、CAMエントリERY[0]~ERY[m]は、それぞれ、図3に示したようなエントリラッチ回路ELT[0]~ELT[m]を含むマッチリードセルMRC[0]~MRC[m]を備える。
【0056】
さらに、図5では、複数(n+1個)のCAMセルMCに対応して、複数(n+1個)のセンスアンプSA[0]~SA[n]、サーチ線ドライバSLD[0]~SLD[n]、ラッチ回路LTs[0]~LTs[n]およびセレクタSEL[0]~SEL[n]が設けられる。センスアンプSA[0]~SA[n]は、リード動作時に、選択されたCAMエントリERYからn+1個のビット線対(BLT/BLB[0]~BLT/BLB[n])に読み出された記憶データの読み出し信号をそれぞれ増幅する。
【0057】
サーチ線ドライバSLD[0]~SLD[n]は、ラッチ回路LTs[0]~LTs[n]に保持されたn+1ビットのサーチデータSD[0]~SD[n]に基づいて、n+1個のサーチ線対(SLT/SLB[0]~SLT/SLB[n])をそれぞれ駆動する。ラッチ回路LTs[0]~LTs[n]は、セレクタSEL[0]~SEL[n]を介してスキャンチェーンを構成する。セレクタSEL[0]~SEL[n]は、ラッチ回路LTs[0]~LTs[n]に、前段のラッチ回路からの出力を入力するか、または、外部からのサーチデータSD[0]~SD[n]を入力するかを選択する。
【0058】
また、複数のCAMエントリERY[0]~ERY[m]内のマッチリードセルMRC[0]~MRC[m]は、それぞれ、スイッチ部SW[0]~SW[m]を備える。スイッチ部SW[0]~SW[m]は、オアゲートOR1からのバリッド用ワード線VWL[0]~VWL[m]によってオン・オフが制御される。スイッチ部SW[0]~SW[m]は、それぞれ、オンに制御された際に、対応するマッチ出力信号MLO[0]~MLO[m]を、共通マッチ出力線MBTへ出力する機能を有する。
【0059】
マッチ信号出力回路MIOは、バッファアンプ(センスアンプ)BAと、ラッチ回路LTcとを備える。バッファアンプBAは、共通マッチ出力線MBTの電圧レベルを増幅する。バッファアンプBAは、センスアンプSA[0]~SA[n]と共に、センスアンプイネーブル信号SAEによって活性化・非活性化が制御される。ラッチ回路LTcは、バッファアンプBAの出力信号をラッチし、ラッチ結果をマッチリードアウト信号MROとして出力する。
【0060】
このような構成において、テスト動作の際には、例えば、次のような動作が行われる。まず、CAMエントリERY[0]~ERY[m]内の全てのCAMセルMCに予め“0”データが書き込まれる。また、予め、スキャンイン信号SIを用いて、ラッチ回路LTs[0]に“1”データを記憶させ、残りのラッチ回路(LTs[1]~LTs[n])に“0”データを記憶させる。すなわち、各CAMエントリERYにおいて、1ビットのみがミスマッチとなるような状態が構築される。
【0061】
この状態で、ワード線WL(バリッド用ワード線VWL)によってCAMエントリERY[0]~ERY[m]が1個ずつ選択される。そして、CAMエントリERY[0]~ERY[m]が選択される毎に、選択されたCAMエントリERYのマッチ出力信号MLOが、対応するスイッチ部SW[0]~SW[m]を介して共通マッチ出力線MBTへ出力される。マッチ信号出力回路MIOは、このマッチ出力信号MLOをマッチリードアウト信号MROとして出力する。このマッチリードアウト信号MROによってCAMエントリERY毎の良否判定が行われる。
【0062】
その後は、“1”データを記憶させるラッチ回路LTs[0]~LTs[n]を、サーチイネーブル信号SLEを用いて1個ずつシフトさせながら、同様のテスト動作が行われる。さらには、“0”データと“1”データとを入れ替えた状態で、同様のテスト動作が行われる。このようなテスト動作は、図示は省略されるが、半導体装置にBIST(Built In Self Test)回路等を搭載することで実行することが可能である。
【0063】
なお、この例では、スイッチ部SW[0]~SW[m]は、テスト動作の際に、CAMエントリERY[0]~ERY[m]のマッチ出力信号MLO[0]~MLO[m]を共通マッチ出力線MBTへ出力した。ただし、必ずしもテスト動作に限定されず、実使用上で、ある特定のCAMエントリERYのマッチ出力信号MLOを参照したいような場合に、スイッチ部SW[0]~SW[m]を用いることも可能である。すなわち、様々な目的に伴うリード動作時で、スイッチ部SW[0]~SW[m]を用いることが可能である。
【0064】
《CAMエントリおよびマッチ信号出力回路の詳細[1]》
図6は、図5を反映した各CAMエントリおよびマッチ信号出力回路の主要部の詳細な構成例を示す回路図である。図6において、CAMエントリERYは、図3の構成例と比較して、マッチリードセルMRCの構成が異なっている。当該マッチリードセルMRCは、図3の構成例に対して、図5のスイッチ部SW[0]~SW[m]のそれぞれに対応するMOSトランジスタ(nMOSトランジスタ)MN3が追加された構成となっている。MOSトランジスタMN3は、MOSトランジスタMN2と並列に結合され、バリッド用ワード線VWLによってオン・オフが制御される。
【0065】
また、図6において、マッチ信号出力回路MIOは、図3の構成例に対して、オアゲートOR2と、図5で述べたバッファアンプ(センスアンプ)BAとが追加された構成となっている。さらに、マッチ信号出力回路MIO内のラッチ回路LTcは、図3の構成例と異なり、マッチオールアウト信号MAOに加えて、図5で述べたマッチリードアウト信号MROを出力する。バッファアンプBAは、ラッチ回路LTcの前段に設けられ、共通マッチ出力線MBTの電圧レベルを増幅してラッチ回路LTcへ出力する。オアゲートOR2は、マッチイネーブル信号MEと、センスアンプイネーブル信号SAEのオア演算を行い、演算結果でバッファアンプBAの活性化・非活性化を制御する。
【0066】
このような構成において、サーチ動作時には、MOSトランジスタMN3はオフとなる。一方、図3の場合と同様に、MOSトランジスタMN2はオンとなり、共通マッチ出力線MBTの電圧レベルは、全CAMエントリERYがミスマッチであったか否か応じて定まる。バッファアンプBAは、マッチイネーブル信号MEがアサートされた際に、この共通マッチ出力線MBTの電圧レベルを増幅する。ラッチ回路LTcは、バッファアンプBAの出力信号をラッチし、マッチオールアウト信号MAOとして出力する。この例では、共通マッチ出力線MBTの電圧レベルが“1”レベルの場合(全CAMエントリERYがミスマッチの場合)、“1”レベルのマッチオールアウト信号MAOが出力される。
【0067】
また、テスト動作時(リード動作時)には、図5で述べたように、まず、全CAMセルMCに所定のデータを書き込んだ状態で所定のサーチデータSDを入力することで、マッチ出力信号MLOの電圧レベルが、エントリラッチ回路ELTによってラッチされる。この状態で、プリチャージ回路PCCによる共通マッチ出力線MBTのプリチャージと、CAMエントリERYの選択とが実行される。
【0068】
この際には、A系ワード線WLaまたはB系ワード線WLbの活性化によってCAMエントリERYが選択され、MOSトランジスタMN3は、バリッド用ワード線VWLを介してオンとなる。一方、MOSトランジスタMN2は、マッチイネーブル信号MEが“0”レベルにネゲートされているため、オフになっている。その結果、選択されたCAMエントリERYのマッチ出力信号MLOが“1”レベル(マッチ)の場合、共通マッチ出力線MBTは、MOSトランジスタMN1のオンによって、“1”レベル(プリチャージレベル)から“0”レベルに変化する。
【0069】
一方、選択されたCAMエントリERYのマッチ出力信号MLOが“0”レベル(ミスマッチ)の場合、共通マッチ出力線MBTは、MOSトランジスタMN1のオフによって、“1”レベル(プリチャージレベル)を維持する。バッファアンプBAは、センスアンプイネーブル信号SAEがアサートされた際に、この共通マッチ出力線MBTの電圧レベルを増幅する。ラッチ回路LTcは、バッファアンプBAの出力信号をラッチし、マッチリードアウト信号MROとして出力する。この例では、共通マッチ出力線MBTの電圧レベルが“1”レベルの場合(選択されたCAMエントリERYがミスマッチの場合)、“0”レベルのマッチリードアウト信号MROが出力される。
【0070】
図6のような構成例を用いることで、サーチ動作時にマッチオールアウト信号MAOを出力する際と、リード動作時にマッチリードアウト信号MROを出力する際とで、共通マッチ出力線MBTおよびマッチ信号出力回路MIO内の各回路(PCC,BA,LTc)を共有することができる。その結果、回路面積を低減することが可能になる。
【0071】
《CAMエントリおよびマッチ信号出力回路の詳細[2]》
図7は、図6を変形した構成例を示す回路図である。図7の構成例は、図6の構成例に対して、リード動作時の読み出し方式を差動型に変更したものとなっている。図7では、共通マッチ出力線MBTに加えて、その差動対となる反転共通マッチ出力線MBBが設けられる。マッチリードセルMRCは、図6の構成例と比較して、さらに、MOSトランジスタ(nMOSトランジスタ)MN4,MN5,MN6を備える。
【0072】
MOSトランジスタMN4,MN5,MN6は、反転共通マッチ出力線MBBを対象として、共通マッチ出力線MBT側のMOSトランジスタMN1,MN2,MN3にそれぞれ対応して設けられる。MOSトランジスタMN4,MN6は、MOSトランジスタMN1,MN3と同様に、反転共通マッチ出力線MBBと低電位側電源GNDとの間に直列に結合される。MOSトランジスタMN4は、MOSトランジスタMN1と差動対を構成し、マッチ出力信号MLOの反転信号(/MLO)によってオン・オフが制御される。MOSトランジスタMN6は、MOSトランジスタMN3と共に、バリッド用ワード線VWLによってオン・オフが制御される。
【0073】
MOSトランジスタMN5は、一端(ドレイン)が反転共通マッチ出力線MBBに結合され、MOSトランジスタMN2と共に、マッチイネーブル信号MEBFによってオン・オフが制御される。ただし、MOSトランジスタMN5の他端(ソース)は、MOSトランジスタMN4に結合されるのではなく、オープンとなっている。この例では、サーチ動作時には、シングルエンド方式での読み出しが行われるため、MOSトランジスタMN5は、本来、不必要である。ただし、リード動作時の差動方式での読み出しの際には、MOSトランジスタMN2との関係で差動バランス(寄生容量のバランス等)を保つことが望ましい。そこで、ここでは、MOSトランジスタMN2のダミートランジスタとしてMOSトランジスタMN5が設けられる。
【0074】
マッチ信号出力回路MIOは、図6の構成例と比較して、次の点が異なっている。まず、マッチ信号出力回路MIOは、共通マッチ出力線MBTと反転共通マッチ出力線MBBとに結合される差動用プリチャージ回路DPCCおよび差動型センスアンプDSAを備える。また、反転共通マッチ出力線MBBには、バッファアンプBAのダミーとなるダミーバッファアンプBAdが結合される。
【0075】
差動用プリチャージ回路DPCCは、図6のプリチャージ回路PCCの代わりに設けられ、共通マッチ出力線MBTおよび反転共通マッチ出力線MBBを共に“1”レベルにプリチャージする。差動型センスアンプDSAは、センスアンプイネーブル信号SAE(詳細には、それをバッファリングした信号)によって活性化・非活性化が制御される。差動型センスアンプDSAは、センスアンプイネーブル信号SAEがアサートされた際に、共通マッチ出力線MBTの電圧レベルと反転共通マッチ出力線MBBの電圧レベルとの差電圧を増幅する。
【0076】
このような構成において、サーチ動作時には、共通マッチ出力線MBTを介して図6の場合と同様の動作が行われる。この際に、差動型センスアンプDSAは、センスアンプイネーブル信号SAEのみによって制御されるため、非活性状態を保つ。一方、テスト動作時(リード動作時)には、共通マッチ出力線MBTがMOSトランジスタMN1,MN3の経路で制御されることに加えて、反転共通マッチ出力線MBBがMOSトランジスタMN4,MN6の経路で制御される。
【0077】
この際に、MOSトランジスタMN1とMOSトランジスタMN4は、相補的にオン・オフが制御される。その結果、共通マッチ出力線MBTおよび反転共通マッチ出力線MBBの一方は、“0”レベルに向けて変化し、他方は、“1”レベル(プリチャージレベル)を維持する。差動型センスアンプDSAは、このようにして得られる差電圧を、センスアンプイネーブル信号SAEのアサートに応じて増幅する。バッファアンプBAは、センスアンプイネーブル信号SAEのアサートに応じて、差動型センスアンプDSAによって増幅された共通マッチ出力線MBTの電圧レベルを更に増幅する。
【0078】
図7のような構成例を用いることでも、サーチ動作時にマッチオールアウト信号MAOを出力する際と、リード動作時にマッチリードアウト信号MROを出力する際とで、共通マッチ出力線MBTおよびマッチ信号出力回路MIO内の各回路(DPCC,BA,LTc)を共有することができる。その結果、回路面積を低減することが可能になる。さらに、リード動作時に、差動型センスアンプDSAを用いることで、マッチリードアウト信号MROを出力する際の読み出し速度を速めることが可能になる。その結果、例えば、テスト時間の短縮等が図れる。
【0079】
《CAMエントリおよびマッチ信号出力回路の詳細[3]》
図8は、図7を変形した構成例を示す回路図である。図8の構成例は、図7の構成例と比較して、リード動作時に加えてサーチ動作時の読み出し方式も差動型に変更したものとなっている。これに伴い、図8のマッチ信号出力回路MIO内の差動型センスアンプDSAは、バッファアンプBAと同じく、オアゲートOR2の演算結果(すなわち、マッチイネーブル信号MEまたはセンスアンプイネーブル信号SAE)によって活性化・非活性化が制御される。
【0080】
このような構成において、テスト動作時(リード動作時)には、図7の場合と同様の動作が行われる。一方、サーチ動作時においては、図7の場合と異なり、差動用プリチャージ回路DPCC2は、共通マッチ出力線MBTを“1”レベル(高電位側電源VDDの電圧レベル)にプリチャージし、反転共通マッチ出力線MBBを参照電圧レベルVrefにプリチャージする。参照電圧レベルVrefは、“0”レベル(低電位側電源GNDの電圧レベル)と“1”レベルの中間電圧レベル(VDD/2)である。
【0081】
この状態で、マッチしたCAMエントリERYが有る場合、共通マッチ出力線MBTは、“1”レベルから“0”レベルに向けて変化する。一方、全てのCAMエントリERYがミスマッチの場合、共通マッチ出力線MBTは、“1”レベルを維持する。差動型センスアンプDSAは、マッチイネーブル信号MEのアサートに応じて、反転共通マッチ出力線MBBの参照電圧レベルVrefを基準に、共通マッチ出力線MBTの電圧レベルを増幅する。また、バッファアンプBAは、マッチイネーブル信号MEのアサートに応じて、差動型センスアンプDSAによって増幅された共通マッチ出力線MBTの電圧レベルを更に増幅する。
【0082】
図8のような構成例を用いることで、図7の場合と同様のリード動作時に加えて、サーチ動作時にも、差動型センスアンプDSAを用いて増幅動作を行えるようになる。これにより、マッチリードアウト信号MROを出力する際に加えて、マッチオールアウト信号MAOを出力する際の読み出し速度も速めることが可能になる。言い換えれば、マッチオールアウト信号MAOが得られるまでの信号遅延を更に小さくすることが可能になる。
【0083】
《実施の形態2の主要な効果》
以上、実施の形態2の半導体装置を用いることでも、実施の形態1の場合と同様の効果が得られる。また、リード動作とサーチ動作とで読み出し系の各回路を共有することで、回路面積の増大を抑制することが可能になる。さらに、サーチ動作時に差動型センスアンプDSAを用いることで、実施の形態1の方式と比較して、信号遅延をより低減することが可能になる。
【0084】
(実施の形態3)
《CAMエントリおよびマッチ信号出力回路の詳細》
図9は、本発明の実施の形態3による半導体装置において、図1における各CAMエントリおよびマッチ信号出力回路の主要部の詳細な構成例を示す回路図である。図9に示す構成例は、図6の構成例と比較して、CAMエントリERY内のバリッドビットセルVBCdの構成が異なっている。
【0085】
図9において、バリッドビットセルVBCdは、図6におけるアクセストランジスタ(例えば、nMOSトランジスタ)Q3の代わりに、並列に結合された2個のアクセストランジスタ(例えば、nMOSトランジスタ)Q3a,Q3bを備える。同様に、バリッドビットセルVBCdは、図6におけるアクセストランジスタ(例えば、nMOSトランジスタ)Q4の代わりに、並列に結合された2個のアクセストランジスタ(例えば、nMOSトランジスタ)Q4a,Q4bを備える。
【0086】
アクセストランジスタQ3a,Q4aは、A系ワード線WLaによってオン・オフが制御される。アクセストランジスタQ3b,Q4bは、B系ワード線WLbによってオン・オフが制御される。このように、図9のバリッドビットセルVBCdは、A系ワード線WLaまたはB系ワード線WLbによってアクセスされるデュアルポート型のバリッドビットセルとなっている。
【0087】
これに伴い、図9のマッチリードセルMRCは、オアゲートOR3を備える。オアゲートOR3は、図6のオアゲートOR1の代わりに設けられる。オアゲートOR3は、A系ワード線WLaの電圧レベルと、B系ワード線WLbの電圧レベルとのオア演算を行い、演算結果となる電圧レベルでMOSトランジスタMN3のオン・オフを制御する。
【0088】
図10は、図9を変形した構成例を示す回路図である。図10の構成例では、図9におけるマッチリードセルMRC内のMOSトランジスタMN3が、並列に結合される2個のMOSトランジスタ(例えば、nMOSトランジスタ)MN3a,MN3bで構成される。MOSトランジスタMN3aは、A系ワード線WLaによってオン・オフが制御される。MOSトランジスタMN3bは、B系ワード線WLbによってオン・オフが制御される。これに伴い、図10では、図9におけるオアゲートOR3は不要となる。
【0089】
図11は、図10を変形した構成例を示す回路図である。図11の構成例は、図6および図7の場合と同様に、図10の構成例に対して、リード動作時の読み出し方式を差動型に変更したものとなっている。これに伴い、CAMエントリERY内のマッチリードセルMRCは、MOSトランジスタ(例えば、nMOSトランジスタ)MN4,MN5,MN6a,MN6bを備える。MOSトランジスタMN4,MN5,MN6a,MN6bは、反転共通マッチ出力線MBBを対象として、共通マッチ出力線MBT側のMOSトランジスタMN1,MN2,MN3a,MN3bにそれぞれ対応して設けられる。また、マッチ信号出力回路MIOの構成および動作に関しては、図7の場合と同様である。
【0090】
図12は、図11を変形した構成例を示す回路図である。図12の構成例は、図7および図8の場合と同様に、図11の構成例に対して、リード動作時に加えてサーチ動作時の読み出し方式も差動型に変更したものとなっている。これに伴い、マッチ信号出力回路MIOは、図8の場合と同様の構成を備え、図8の場合と同様の動作を行う。
【0091】
《実施の形態3の主要な効果》
以上、実施の形態3の半導体装置を用いることで、実施の形態2の場合と同様の効果が得られる。そして、このような効果を、デュアルポート型のバリッドビットセルVBCdが用いられる場合であっても得ることが可能になる。また、図10図12においては、A系ワード線WLaおよびB系ワード線WLbの電圧レベルをオア演算するオアゲートを削除することが可能になる。
【0092】
(実施の形態4)
《バリッドビットセルの詳細》
図13Aは、本発明の実施の形態4による半導体装置において、図1に含まれるバリッドビットセルの構成例を示す回路図である。図13Aには、図6等とは一部異なるシングルポート型のバリッドビットセルVBCが示される。図13Aに示すバリッドビットセルVBCは、記憶ノードNt2および反転記憶ノードNb2を含むラッチ回路(IV3,IV4)と、アクセストランジスタ(nMOSトランジスタ)Q3,Q4と、2個のリセット用MOSトランジスタMNr,MPrと、インバータIV5とを有する。すなわち、当該バリッドビットセルVBCは、図6等におけるリセット用MOSトランジスタMNrに加えて、別のリセット用MOSトランジスタMPrを備えている。
【0093】
ラッチ回路を構成する一方のインバータIV3は、記憶ノードNt2を入力、反転記憶ノードNb2を出力として動作する。ラッチ回路を構成する他方のインバータIV4は、反転記憶ノードNb2を入力、記憶ノードNt2を出力として動作する。アクセストランジスタQ3は、反転記憶ノードNb2と、バリッド用反転ビット線BLBvとの間に結合され、バリッド用ワード線VWLによってオン・オフが制御される。アクセストランジスタQ4は、記憶ノードNt2と、バリッド用ビット線BLTvとの間に結合され、バリッド用ワード線VWLによってオン・オフが制御される。インバータIV5は、反転記憶ノードNb2を入力として動作し、バリッドデータVBを出力する。
【0094】
リセット用MOSトランジスタMNrは、nMOSトランジスタであり、リセット用MOSトランジスタMPrは、pMOSトランジスタである。リセット用MOSトランジスタMNrは、記憶ノードNt2と低電位側電源GNDとの間に結合され、リセット線RTLからのリセット信号RTによってオン・オフが制御される。一方、リセット用MOSトランジスタMPrは、反転記憶ノードNb2と高電位側電源VDDとの間に結合され、反転リセット線RBLからの反転リセット信号(/RT)によってオン・オフが制御される。
【0095】
図13Bは、図13Aとは異なるバリッドビットセルの構成例を示す回路図である。図13Bには、図9等とは一部異なるデュアルポート型のバリッドビットセルVBCdが示される。図13Bにおいて、図13AにおけるアクセストランジスタQ3は、並列に結合される2個のアクセストランジスタQ3a,Q3bで構成される。同様に、図13AにおけるアクセストランジスタQ4は、並列に結合される2個のアクセストランジスタQ4a,Q4bで構成される。
【0096】
アクセストランジスタQ3a,Q4aは、A系ワード線WLaによってオン・オフが制御される。アクセストランジスタQ3b,Q4bは、B系ワード線WLbによってオン・オフが制御される。ここで、当該バリッドビットセルVBCdも、図13Aの場合と同様に、図9等におけるリセット用MOSトランジスタMNrに加えて、別のリセット用MOSトランジスタMPrを備える。
【0097】
図14は、図13Bのバリッドビットセルにおける主要部のレイアウト構成例を示す平面図である。図14では、Y方向に向けて順に、n型拡散層DFn1、n型拡散層DFn2、n型ウェルNW、n型拡散層DFn3が形成される。n型ウェルNW内には、Y方向に向けて順に、p型拡散層DFp1、p型拡散層DFp2が形成される。
【0098】
また、各拡散層の上部(Z方向)には、Y方向に向けて延伸し、X方向で並んで配置される複数のポリシリコン層POが形成される。この複数のポリシリコン層POによって、X方向での両端には、A系ワード線WLa(PO)とB系ワード線WLb(PO)とが形成される。そして、その間の箇所には、記憶ノードNt2(PO)と、反転記憶ノードNb2(PO)と、リセット線RTL(PO)と、反転リセット線RBL(PO)とが適宜形成される。
【0099】
このような構成により、n型拡散層DFn1には、A系ワード線WLa(PO)をゲートとするアクセストランジスタQ3aと、リセット線RTL(PO)をゲートとするリセット用MOSトランジスタMNrと、B系ワード線WLb(PO)をゲートとするアクセストランジスタQ4bとが形成される。n型拡散層DFn2には、A系ワード線WLa(PO)をゲートとするアクセストランジスタQ4aと、B系ワード線WLb(PO)をゲートとするアクセストランジスタQ3bとが形成される。加えて、n型拡散層DFn2には、インバータIV4を構成し、反転記憶ノードNb2(PO)をゲートとするnMOSトランジスタと、インバータIV3を構成し、記憶ノードNt2(PO)をゲートとするnMOSトランジスタとが形成される。
【0100】
p型拡散層DFp1には、インバータIV4を構成し、反転記憶ノードNb2(PO)をゲートとするpMOSトランジスタと、インバータIV3を構成し、記憶ノードNt2(PO)をゲートとするpMOSトランジスタとが形成される。p型拡散層DFp2には、インバータIV5を構成し、反転記憶ノードNb2(PO)をゲートとするpMOSトランジスタと、反転リセット線RBL(PO)をゲートとするリセット用MOSトランジスタMPrとが形成される。
【0101】
図15は、図14を変形したレイアウト構成例を示す平面図である。図15において、各回路の配置箇所に関しては、図14の場合と同様である。図15では、各メタル配線層(M0,M1,M2)の構成も適宜示される。図15では、図14の場合と異なり、拡散層構造のトランジスタの代わりに、FinFET(Fin Field Effect Transistor)構造が用いられる。例えば、リセット用MOSトランジスタMNrは、3FIN構造で形成され、リセット用MOSトランジスタMPrは、2FIN構造で形成される。
【0102】
以上のようなバリッドビットセルを用いることで、回路面積の増大を抑制した上で、リセット特性を高める(リセット動作を高速化する)ことが可能になる。具体的に説明すると、例えば、図14および図15において、リセット用MOSトランジスタ(nMOSトランジスタ)MNrのサイズ(ゲート幅(W))を大きくする(例えば、6FIN構造や2個配置等を用いる)ことでもリセット特性を高めることができる。
【0103】
しかし、本発明者等の検証によって、例えば、ゲート幅“2×W”のリセット用MOSトランジスタMNrを設けるよりも、ゲート幅“W”のリセット用MOSトランジスタMNrと、ゲート幅“W”のリセット用MOSトランジスタMPrとを設けた方がリセット特性を高められることが判明した。さらに、図14および図15に示されるように、リセット用MOSトランジスタMPrは、領域を比較的確保し易いpMOSトランジスタの形成領域を用いて効率的にレイアウトすることができる。このようなことから、リセット用MOSトランジスタMNrを設けることが有益となる。
【0104】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【符号の説明】
【0105】
BA バッファアンプ(センスアンプ)
CU CAMユニット
DPCC 差動用プリチャージ回路
DSA 差動型センスアンプ
ERY CAMエントリ
MBB 反転共通マッチ出力線
MBT 共通マッチ出力線
MC CAMセル
ML マッチ線
MN,MP MOSトランジスタ
PCC プリチャージ回路
SLB 反転サーチ線
SLT サーチ線
VBC バリッドビットセル
WL ワード線
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13A
図13B
図14
図15