JP5932167B2 - ハイブリッド3値連想メモリ - Google Patents

ハイブリッド3値連想メモリ Download PDF

Info

Publication number
JP5932167B2
JP5932167B2 JP2015550690A JP2015550690A JP5932167B2 JP 5932167 B2 JP5932167 B2 JP 5932167B2 JP 2015550690 A JP2015550690 A JP 2015550690A JP 2015550690 A JP2015550690 A JP 2015550690A JP 5932167 B2 JP5932167 B2 JP 5932167B2
Authority
JP
Japan
Prior art keywords
tcam
stage
mask
search word
key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2015550690A
Other languages
English (en)
Other versions
JP2016502226A (ja
Inventor
バッティコンダ、ラケッシュ
デサイ、ニシス
ジュン、チャンホ
ユン、セイ・スン
タージオグル、イージン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2016502226A publication Critical patent/JP2016502226A/ja
Application granted granted Critical
Publication of JP5932167B2 publication Critical patent/JP5932167B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements

Landscapes

  • Static Random-Access Memory (AREA)
  • Logic Circuits (AREA)

Description

[0001]本開示は、一般に、3値連想メモリ(TCAM)に関する。より詳細には、本開示は、TCAMのためのハイブリッドアーキテクチャに関する。
[0002]TCAMは、一般に、インターネットプロトコル(IP)アドレス転送のためにルータおよびイーサネット(登録商標)スイッチ中で使用される。記憶要素は、一般に、動的NOR/NANDタイプセルを使用するように設計される。
[0003]連想メモリ(CAM)は、読取り動作、書込み動作、および比較動作をサポートする。CAM中のエントリとしての同じ幅の(たとえば、ビット/ワード)の比較バスは、クロックエッジにおける入力である。比較バスのデータは、CAM中のあらゆるエントリと同時に比較される。すなわち、比較は平行して行われ、したがって、バスは、1つのクロックサイクル中にCAM中のあらゆるエントリと比較され得る。エントリ中のあらゆるビットが比較バス中の対応するビットに一致するとき、エントリは一致となる。代替的に、エントリ中のいずれかのビットが比較バス中の対応するビットに一致しないとき、エントリは不一致となる。CAM中のエントリのビットは0または1である。
[0004]TCAMは、セルに記憶され得るマスク値を伴ったCAMと同様のものである。マスク値は、ローカルマスクと呼ばれることがある。マスク値は比較ビットと比較されず、したがって、比較結果は常に一致になる。
[0005]図1に、従来のTCAM100のアーキテクチャを示す。図1に示すように、「1101」などの探索ワードは、TCAM100のレジスタ150への入力である。探索ワードは、TCAMセル110に記憶された値と比較される。TCAMは、一般に、ステージごとに16個のTCAMセルを有する。探索は、TCAMセル110にわたって同時に行われる。TCAMセル110のコンテンツは、高ビット(1)、低ビット(0)、またはマスク値(X)であり得る。探索の前に、TCAMセルの各セット120〜126の一致ライン130〜136が高に設定される。一致ライン130〜136は、優先度エンコーダ140への入力である。TCAM100は、探索ワードラインに一致するTCAMセルのセットのアドレスを出力する(MLout)。探索が並列探索であるので、探索は、1クロックサイクルで完了し得る。マスク値は0または1であり得、依然として、本開示では、マスク値がXと呼ばれることがあることに留意されたい。
[0006]一例として、図1に示すように、TCAMセルの第1のセット120は、「1X01」に設定され、TCAMセルの第2のセット122は、「10X1」に設定され、TCAMセルの第3のセット124は、「11XX」に設定され、TCAMセルの第4のセット126は、「1X1X」に設定される。探索ビットとTCAMセルのコンテンツを比較するときに、TCAMセルのコンテンツがマスク値Xであるとき、比較は一致をもたらすことになる。したがって、図1に示す例によれば、TCAMセルの第1のセット120とTCAMセルの第3のセット124とは、レジスタ150中の探索ワードに一致する。したがって、TCAMセルの第1のセット120およびTCAMセルの第3のセット124の一致ライン130および134は一致を示し、優先度エンコーダ140は、TCAMセルの第1のセット120およびTCAMセルの第3のセット124のアドレスを出力する。
[0007]従来のTCAMアーキテクチャは、動的回路であり、高い動的消費電力を有する。場合によっては、TCAMは、動的NANDアーキテクチャを有し得る。他の場合には、TCAMは、動的NORアーキテクチャを有し得る。
[0008]図2に、従来の動的NAND TCAM200を示す。図2に示すように、動的NANDアーキテクチャ200は、プルアップトランジスタ210からプリチャージラインPRE#によってチャージされる一致ラインMLNANDを含む。一致ラインMLNANDは、一連の中間一致ラインML0〜MLn-1に接続される。中間一致ラインML0〜MLn-1の各々は、トランスミッションゲートを介してマスクセルMask0〜Maskn-1およびキーセルKey0〜Keyn-1に結合される。トランスミッションゲートは、キーセルKey0〜Keyn-1に結合されたキーNMOSトランジスタ202と、マスクセルMask0〜Maskn-1に結合されたマスクNMOSトランジスタ204とを含む。
[0009]マスクセルMask0〜Maskn-1のコンテンツは、拡大されたマスクセル222に示されている。拡大されたマスクセル222に示すように、マスクセルMask0〜Maskn-1は、マスク値Mと、マスク値バーM#と、マスクワードラインWLMと、マスクビットラインBLMと、マスクビットラインバーBLM#とを含むSRAMセルである。キーセルKey0〜Keyn-1のコンテンツは、拡大されたキーセル220に示されている。拡大されたキーセル220に示すように、キーセルKey0〜Keyn-1は、XNOR論理を用いるSRAMセルである。キーセルKey0〜Keyn-1は、探索ラインSLと、探索ラインバーSL#と、キービットラインBLKと、キービットラインバーBLK#と、キー値Kと、キーバー値K#と、キー書込みラインWLKとをさらに含む。
[0010]動的NAND TCAMアーキテクチャでは、一致ラインは、高にプリチャージされ、一致を示すために低を評価する。すなわち、プリチャージ信号は、一致ラインを高に設定するために、あらゆるサイクル中に各マッチラインのために使用される。マスクセルまたはキーセルの状況に応じて、一致ラインは、低に引き下げられるか、または高にとどまり得る。各中間一致ラインは、マスクセルとキーセルとに関連付けられる。さらに、各キーセルは、XNOR論理をさらに含む。動的NAND TCAMは、直列動作を使用する。したがって、前の中間一致ライン(n−2)が一致を示すために低に引き下げられたとき、中間一致ライン(n−1)はディスチャージし得る。すなわち、動作は、一致があるとき、1つの中間一致ライン(n−2)から後続の中間一致ライン(n−1)に継続し、不一致があるとき、中間一致ラインを進行するのを停止する。
[0011]動的NOR TCAMアーキテクチャでは、一致ラインは、高にプリチャージされ、不一致を示すために低を評価する。比較の大部分は不一致をもたらし、したがって、動的NORは、不一致を示すための高から低への切替えの結果として電力消費量が増加する。さらに、プリチャージ信号が各クロックサイクル中で各一致ラインによって使用されるので、動的NORは、複雑なタイミング制御を有する。
[0012]図3に、従来の動的NOR TCAM300を示す。図3に示すように、動的NOR TCAM300は、キーセルKey0〜Keyn-1とマスクセルMask0〜Maskn-1とを含む。一般に、図3のNOR TCAM300などのNOR TCAMは、16個のキーセルとマスクセルとを有し得る。データは、探索ライン(SL0〜SLn-1およびSL0#〜SLn-1#)を介して入力される。データは、キーセルKey0〜Keyn-1とマスクセルMask0〜Maskn-1とに記憶された値と比較される。一致ラインMLNORは、プルアップトランジスタ303からのプリチャージラインPRE#を介して高にプリチャージされる。探索ライン(SL0〜SLn-1およびSL0#〜SLn-1#)のうちの1つを介して入力されたデータと、セルKey0〜Keyn-1、Mask0〜Maskn-1のうちの1つに記憶されたデータとの間に不一致があるとき、一致ラインMLNORは低を評価することになる。セルKey0〜Keyn-1、Mask0〜Maskn-1のすべての値が入力データに一致すると、一致ラインは高にとどまる。
[0013]キーセルKey0〜Keyn-1の構造は、拡大されたキーセル330に示されており、マスクセルMask0〜Maskn-1の構造は、拡大されたマスクセル333に示されている。拡大されたキーセル330に示すように、キーセルKey0〜Keyn-1は、SRAMセルを介して実装される。比較動作中に、キーバーK#は、探索ラインSLとの論理積がとられる。キーセルKey0〜Keyn-1は、ビットラインBLKと、ビットラインバーBLK#と、ワードラインWLKとを含む。
[0014]拡大されたマスクセル333に示すように、マスクセルMask0〜Maskn-1は、SRAMセルを介して実装される。比較動作中に、マスクバーM#は、探索ラインバーSL#との論理積がとられる。マスクセルMask0〜Maskn-1は、ビットラインBLMと、ビットラインバーBLM#と、ワードラインWLMとを含む。
[0015]上記で説明したように、動的NOR TCAMでは、一致ラインは、あらゆるサイクルの始めに高にプリチャージされ、一致ラインは、不一致を示すために低を評価する。TCAMでのセルの比較の大部分は不一致をもたらす。したがって、不一致を示すときの高から低への切替えの結果として、動的NOR TCAMの電力消費量は増加する。場合によっては、一致ラインは、電力消費量を低減するために、低にプリディスチャージされ得る。依然として、その結果、一致ラインがプリディスチャージされたときでも、プリチャージ動作は、あらゆるサイクルの始めに一致ラインをチャージする。したがって、一致ラインのプリチャージは、電力消費量の増加さらには制御回路の増加につながる。
[0016]本開示の一態様によれば、ハイブリッド3値連想メモリ(TCAM)内の方法が提示される。本方法は、第1のTCAMステージにおいて、記憶されたワードの第1の部分と探索ワードの第1の部分を比較することを含む。本方法はまた、探索ワードの第1の部分が記憶されたワードの第1の部分に一致するとき、第2のTCAMステージにおいて、記憶されたワードの第2の部分と探索ワードの第2の部分を比較することを含む。第1のTCAMステージは、第2のTCAMステージとは異なる。
[0017]本開示の別の態様によれば、ハイブリッドTCAMが提示される。ハイブリッドTCAMは、記憶されたワードの第1の部分と探索ワードの第1の部分を比較するように構成された第1のTCAMステージを含む。TCAMはまた、探索ワードの第1の部分が記憶されたワードの第1の部分に一致するとき、記憶されたワードの第2の部分と探索ワードの第2の部分を比較するように構成された第2のTCAMステージを含む。第1のTCAMステージは、第2のTCAMステージとは異なる。
[0018]本開示のさらに別の態様によれば、ハイブリッドTCAMが提示される。ハイブリッドTCAMは、記憶されたワードの第1の部分と探索ワードの第1の部分を比較するための第1の手段を含む。ハイブリッドTCAMは、探索ワードの第1の部分が記憶されたワードの第1の部分に一致するとき、記憶されたワードの第2の部分と探索ワードの第2の部分を比較するための第2の手段をさらに含む。比較するための第1の手段は、比較するための第2の手段とは異なる
[0019]ここでは、以下の発明を実施するための形態がより良く理解され得るように、本開示の特徴および技術的利点についてやや広く概説した。以下で、本開示の追加の特徴および利点について説明する。本開示は、本開示の同じ目的を実行するための他の構造を変更または設計するための基礎として容易に利用され得ることを、当業者は諒解されたい。また、そのような等価な構成は、添付の特許請求の範囲に記載の本開示の教示から逸脱しないことを、当業者は了解されたい。さらなる目的および利点とともに、本開示の編成と動作の方法の両方に関して、本開示を特徴づけると考えられる新規の特徴は、添付の図に関連して以下の説明を検討するとより良く理解されよう。ただし、図の各々は、例示および説明のみの目的で与えたものであり、本開示の限界を定めるものではないことを明確に理解されたい。
[0020]本開示の特徴、性質、および利点は、図面とともに、以下に記載する詳細な説明を読めばより明らかになろう。
[0021]TCAMメモリシステムを示す図。 [0022]従来技術の動的NANDアーキテクチャを示す図。 [0023]従来技術の動的NORアーキテクチャを示す図。 [0024]本開示の態様による、擬似NORアーキテクチャを示す図。 本開示の態様による、擬似NORアーキテクチャを示す図。 [0025]本開示の一態様による、静的NANDアーキテクチャを示す図。 [0026]本開示の一態様による、ハイブリッドTCAMアーキテクチャを示す図。 本開示の一態様による、ハイブリッドTCAMアーキテクチャを示す図。 [0027]本開示の一態様による、図7Aおよび図7BのハイブリッドTCAMアーキテクチャを動作するための方法を示すフローチャート。 [0028]有利には本開示の一実施形態が採用され得る例示的なワイヤレス通信システムを示す図。 [0029]本開示の一態様による、半導体構成要素の回路、レイアウト、および論理設計のために使用される設計ワークステーションを示すブロック図。
[0030]添付の図面に関して以下に記載する発明を実施するための形態は、様々な構成を説明するものであり、本明細書で説明する概念が実施され得る構成のみを表すものではない。発明を実施するための形態は、様々な概念の完全な理解を与えるための具体的な詳細を含む。ただし、これらの概念はこれらの具体的な詳細なしに実施され得ることが当業者には明らかであろう。いくつかの例では、そのような概念を不明瞭にしないように、よく知られている構造および構成要素をブロック図の形式で示す。
[0031]高性能で電力消費量が低いTCAMを提供することが望まれる。本開示の態様は、高性能で電力消費量が低い、静的NAND TCAM記憶要素と擬似NOR TCAM記憶要素との組合せを提供する。静的NANDと擬似NORとの組合せを使用するTCAMは、ハイブリッドTCAMと呼ばれることがある。本開示では、静的NAND TCAM記憶要素は静的NAND TCAMと呼ばれることがあり、擬似NOR TCAM記憶要素は、擬似NOR TCAMと呼ばれることがある。
[0032]本開示によれば、一致ライン(ML)は各サイクルの前にプリチャージされないので、擬似NOR TCAMは、一致ラインプリチャージのために複雑なタイミング制御回路を使用しない。本態様では、擬似NOR TCAMは、プルアップデバイスとしてPMOSトランジスタスタックを使用し、プルダウンデバイスとしてNMOSトランジスタを使用する擬似NMOSゲートを使用する。擬似NMOSゲートは、擬似NORゲートと呼ばれることがある。
[0033]図4に、本開示の一態様による、擬似NOR TCAMステージ400Aおよび400Bのアーキテクチャを示す。図4に示すように、擬似NOR TCAMステージ400Aは、探索ラインのセットSL0...SLn-1と探索ラインの相補セットSL0#...SLn-1#とからの入力を受信するNORプルダウンネットワーク410Aを含む。図4に、ただ2つの擬似NOR TCAMステージ(400Aおよび400B)を示すが、実装形態では、(TCAMエントリを記憶する)TCAM行がm個の擬似NORステージを有し、m個の擬似NORステージの各々がn個のセルを有し得る。したがって、(TCAM行に記憶された)各TCAMエントリは、nxm個のセルによって記憶されるnxm個の値を備え得る。各セルは、以下でさらに説明するようにマスクセルとキーセルとを含む。擬似NOR TCAMステージ400Aおよび400Bへの探索ラインおよび探索ラインバー入力がどちらも同様に標示されているが、探索ラインおよび探索ラインバー入力の各々は一意である。
[0034]さらに、擬似NOR TCAMステージ400Aはまた、一致ライン出力Match−outm-2と、一致ライン出力Match−outm-2に結合されたインバータ440Aとを含み得る。さらに、NORプルダウンネットワーク410Aは、さらに、PMOSスタック414Aに結合される。PMOSスタック414Aは、2つのPMOSトランジスタを含み、一致ライン入力Match−inm-2からの入力を受信する。擬似NORは、PMOSスタック414Aとプルダウントランジスタ435Aとを備え得る。PMOSスタック414Aが2つのPMOSトランジスタに限定されないことに留意されたい。本開示の態様は、ただ1つの弱いPMOSトランジスタをもつスタックまたは3つ以上の弱いPMOSトランジスタをもつスタックを企図する。
[0035]一致ライン入力(Match−in)が、前のNORプルダウンネットワーク(たとえば、擬似NOR)の一致ライン出力(Match−out)であることに留意されたい。すなわち、擬似NOR(擬似NOR TCAMステージ400B)への一致ライン入力は、前のNORステージ(擬似NOR TCAMステージ400A)の一致ライン出力に結合される。たとえば、図4に示すように、擬似NOR TCAMステージ400Aの一致ライン出力Match−outm-2は、後続の擬似NOR TCAMステージ400Bの一致ライン入力Match−inm-1である。図4の擬似NOR TCAMステージ400Aおよび400Bのアーキテクチャは同様のものである。詳細には、擬似NOR TCAMステージ400Bはまた、NORプルダウンネットワーク410Bと、プルダウントランジスタ435Bと、PMOSスタック414Bと、インバータ440Bとを含む。本開示では、各擬似NOR(たとえば、400Aおよび400B)は、TCAMステージと呼ばれることがある。
[0036]一構成では、TCAMステージ(たとえば、擬似NOR TCAMステージ400Aおよび擬似NOR TCAMステージ400B)は、m個のTCAMステージ(0...m−1)の行を形成するために直列に接続され得る。各TCAMステージは、n個(0...n−1)の探索ラインと、キーセルと、マスクセルとを備える。図4の各擬似NOR(たとえば、400Aおよび400B)の探索ライン入力は、TCAMの複数の探索ラインの例示的な入力である。いくつかの態様では、探索ライン、キーセル、およびマスクセルの数が各TCAMステージ間で変動し得ることに留意されたい。すなわち、擬似NOR TCAMステージ400Aなどの1つのTCAMステージの(0...n−1)の探索ライン、キーセル、およびマスクセルのn値は、擬似NOR TCAMステージ400Bなどの別のTCAMステージの(0...n−1)の探索ライン、キーセル、およびマスクセルのn値と同じでないことがある。
[0037]擬似NORを直列に接続することによって電力が節約される。詳細には、比較が指定されないとき(たとえば、前の比較が不一致であったことを前の一致ライン出力/一致ライン入力が示すとき)、前の一致ライン出力がプルアップトランジスタをオフにする制御信号として作用するので、前の擬似NORの一致ライン出力にプルアップトランジスタ(たとえば、PMOSスタック)のゲートを接続することは電力を節約する。より詳細には、NORプルダウンネットワークのPMOSスタックへの直列接続は、従来の動的NORのプリチャージおよび/またはプリディスチャージを置き換える擬似NORの構成要素である。
[0038]擬似NORは、TCAMの従来のNORアーキテクチャと比較して、より速い速度と、より少ないトランジスタカウントとをもたらす。依然として、擬似NORは、プルアップトランジスタ(PMOSスタック)のために静的電力消費があり、出力電圧スイングを低減する。とはいえ、静的電力消費量の増加に鑑みて、擬似NORの全体的な速度向上が依然として望ましい。擬似NORのプルアップトランジスタが、NMOSブロックのリークを行うのに十分広く、NMOSブロックが出力を安全にプルダウンするのに十分狭くあるべきであることに留意されたい。
[0039]図5に、本開示の態様による、例示的な擬似NOR TCAMステージ500を示す。擬似NOR TCAMステージ500は、図4の擬似NOR TCAMステージ400Aおよび400Bなどの擬似NORステージの拡大ビューである。
[0040]図5に示すように、擬似NOR TCAMステージ500は、一致ライン出力Match−outm-1に結合されたインバータ540と、一致ライン入力Match−inm-1に結合されたPMOSスタック514と、一致ライン入力Match−inm-1に結合されたプルダウントランジスタ535と、NORプルダウンネットワーク510とを含む。NORプルダウンネットワーク510は、キーセルKey0〜Keyn-1とマスクセルMask0〜Maskn-1とを含む。キーセルおよびマスクセルの例示的な構造は、拡張キーセル550および拡張マスクセル555により詳細に示されている。
[0041]動作中、データは、探索ライン(SL0〜SLn-1およびSL0#〜SLn-1#)を介して提示される。データは、キーセルKey0〜Keyn-1とマスクセルMask0〜Maskn-1とに記憶された値と比較される。拡大されたキーセル550に示すように、キーセルKey0〜Keyn-1は、SRAMセルを用いて実装され得る。比較動作中に、キーバーK#は、探索ラインSLとの論理積が論理的にとられる。キーセルKey0〜Keyn-1は、ビットラインBLおよびBL#とキーワードラインWLKとを含む。拡大されたマスクセル555に示すように、マスクセルMask0〜Maskn-1は、SRAMセルを介して実装され得る。比較動作中に、マスクバーM#は、探索ラインバーSL#との論理積が論理的にとられる。マスクセルMask0〜Maskn-1は、ビットラインBLおよびBL#とマスクワードラインWLMとを含む。すなわち、マスクセルMask0〜Maskn-1とキーセルKey0〜Keyn-1とはそれぞれ、それぞれのビットラインを共有し得るが、それらの自体のワードライン、すなわち、異なるワードラインを使用し得る。
[0042]擬似NOR TCAMステージ500は、一致ラインバーMatch−outm-1#に結合された入力ステージ560をさらに含む。入力ステージ560は、前の擬似NORステージの一致ライン出力Match−outm-2から入力Match−inm-1を受信する。前に説明したように、入力ステージ560は、プルダウントランジスタ535とPMOSスタック514とを含むことができる。場合によっては、擬似NOR機能は、入力ステージ560とNORプルダウンネットワーク510との使用を指定する。最後に、インバータ540は、一致ラインバーMatch−outm-1#の終端に結合される。インバータ540からの出力は、一致ライン出力Match−outm-1である。
[0043]表1は、マスキングビットとキービットとのための真理値表である。表1中の状態が、記憶要素(キーセルおよびマスクセル)の状態を指すことに留意されたい。キービットが0の値を有し、マスクビットが1の値を有するとき、状態は0であり、キービットが1の値を有し、マスクビットが0の値を有するとき、状態は1であり、マスクビットとキービットの両方が1であるとき、状態はXである。Xの状態は、一致も不一致もない、むしろ、探索ラインの値とマスクセルおよびキーセルの値との間の比較がないマスク状態を指す。したがって、状態がXであるとき、一致ラインは常に一致を示す。
Figure 0005932167
[0044]表2は、擬似NORのための真理値表であり、表1の状態値を使用する。
Figure 0005932167
[0045]表2に示すように、一致ライン出力Match−outm-1は、一致を示すために0(低)になる。状態と探索ラインSLn-1との値が等しいとき、一致が発生する。さらに、状態がXであるとき、一致ライン出力Match−outm-1は、やはり、一致を示すために低になる。最後に、一致ライン出力Match−outm-1は、不一致を示すために1(高)になる。状態の値と探索ラインSLn-1の値とが等しくないとき、不一致が発生する。
[0046]表2の一致ライン出力Match−outm-1は、擬似NOR TCAMステージ500のインバータ540の出力である。図5に示すように、一致ラインバーMatch−outm-1#は、インバータ540に先行する。一致ラインバーMatch−outm-1#は、不一致があるとき、低を評価することになる。すなわち、直列に接続された擬似NOR(たとえば、400Aおよび400B)のさらなる比較を無効化するために、後続の擬似NORの入力ステージ560は、後続の擬似NORの一致ラインバーMatch−outm-1#を低に引き下げるためにプルダウントランジスタ535をアクティブ化することになる高入力を受信するように指定される。したがって、インバータ540は、後続の擬似NORを無効化するために、低信号から高信号に一致ラインバーMatch−outm-1#を変更することになる。
[0047]表2に、高に設定された一致ライン入力Match−inm-1を受信する結果をさらに示す。表2に示すように、一致ライン入力Match−inm-1が高であるとき、評価がないので、状態は1/0/Xである。さらに、一致ライン出力Match−outm-1は、やはり、後続の擬似NOR400を無効化するために、高になる。
[0048]代替的に、一致ライン入力が低であるとき、PMOSスタック514がアクティブ化され、一致ラインバーMatch−outm-1#が高に評価される。すべての比較結果が一致する場合、一致ラインバーMatch−outm-1#は、高にとどまることになり、一致ライン出力Match−outm-1は低になる。比較が不一致を生じる場合、一致ラインバーMatch−outm-1#は、低を評価することになり、一致ライン出力Match−outm-1は、後続の擬似NORを無効化するために高になる。
[0049]不一致があるとき、後続の比較が無効化されるので、擬似NORの無効化はTCAMの全体的な電力消費量を低減する。すなわち、前の比較の比較結果にかかわらず各NORプルダウンネットワークのための一致ラインと探索ラインとをプリチャージする動的NORとは異なり、擬似NORは、前の比較が一致を生じたときにのみ後続の比較を続ける。さらに、擬似NORは、一致ラインと探索ラインとをプリチャージしない。したがって、本開示の態様は、TCAMの全体的な電力消費量を低減し、さらに、制御回路およびタイミングの複雑さを低減する。
[0050]図6に、本開示の一態様による、静的NAND TCAM600のアーキテクチャを示す。図6に示すように、一致ライン出力MLNANDは、一連の中間一致ラインML0〜MLn-1に接続される。中間一致ラインML0〜MLn-1の各々は、マスクNMOSトランジスタ604などの第1のプルダウントランジスタを介してマスクセルMask0〜Maskn-1に結合され、キーNMOSトランジスタ602などの第2のプルダウントランジスタを介してキーセルKey0〜Keyn-1に結合される。プルダウントランジスタは、並列に接続される。マスクセルMask0〜Maskn-1のコンテンツは、拡大されたマスクセル622に示されている。拡大されたマスクセル622に示すように、マスクセルMask0〜Maskn-1は、マスクビットMと、マスクビットバーM#と、マスクワードラインWLMと、マスクビットラインBLMと、マスクビットラインバーBLM#とを含むSRAMセルである。キーセルKey0〜Keyn-1のコンテンツは、拡大されたキービットセル620に示されている。拡大されたキービットセル620に示すように、キーセルKey0〜Keyn-1は、XNOR論理を用いるSRAMセルである。キーセルKey0〜Keyn-1は、探索ラインSLと、探索ラインバーSL#と、キービットラインBLKと、キービットラインバーBLK#と、キービットKと、キービットバーK#と、キー書込みラインWLKと、出力ラインXNORとをさらに含む。
[0051]さらに、キーセルKey0〜Keyn-1の各々は、第1のPMOSトランジスタ612に結合され、マスクセルMask0〜Maskn-1の各々は、第2のPMOSトランジスタ614に結合される。各第1のPMOSトランジスタ612は、XNORライン(XNOR0〜XNORn-1)を介してそれぞれのキーセルKey0〜Keyn-1に結合され、各第2のPMOSトランジスタ614は、マスクビットラインバー(M0#〜Mn-1#)を介してそれぞれのマスクセルMask0〜Maskn-1に結合される。第1のPMOSトランジスタ612と第2のPMOSトランジスタ614とはまた、一致ライン出力(MLNAND)に結合される。第1のPMOSトランジスタ612と第2のPMOSトランジスタ614とは、直列に接続され、直列PMOSトランジスタと呼ばれることがある。したがって、本開示の一態様によれば、各セルペア(たとえば、1つのマスクセルおよび1つのキーセル)は、並列NMOSトランジスタ(たとえば、キーNMOSトランジスタ602およびマスクNMOSトランジスタ604)と直列PMOSトランジスタ(たとえば、第1のPMOSトランジスタ612および第2のPMOSトランジスタ614)とに結合される。
[0052]第1のPMOSトランジスタ612と第2のPMOSトランジスタ614とが各セルペアに結合されるので、一致ラインは、各クロックサイクルの前にプリチャージされない。したがって、静的NAND TCAM600は、複雑なタイミング制御方式を使用せず、動的NAND TCAM(図3)と比較して、より多くの電力を節約する。さらに、中間一致ラインはVDD〜Vtの電圧レベルにプリチャージされず、それによって、探索ラインのためのエリアの減少と電力消費量の減少とをもたらす。
[0053]表3に、本開示の一態様による、静的NANDのための真理値表を示す。
Figure 0005932167
[0054]前に説明したように、現在の中間一致ラインの左側の中間一致ラインのすべてが一致を示すために低を評価するときにのみ、MLiなどの現在の中間一致ラインが低に引き下げられるので、静的NAND TCAMは直列動作である。同様に、現在の中間一致ラインMLiが低を評価する場合にのみ、後続の中間一致ラインMLi+1は低に引き下げられ得る。すなわち、1つの中間一致ラインが不一致を示す場合、後続の一致ライン(その1つの中間一致ラインの右側の中間一致ライン)は低に引き下げられない。より詳細には、前の中間一致ラインのすべてが一致を示すために低を評価するときにのみ、MLi+1などの後続の中間一致ラインが低に引き下げられ得る。
[0055]さらに、静的NAND TCAMでは、動的NAND TCAMとは対照的に、一致ライン出力MLNANDが直列PMOSトランジスタ(たとえば、第1のPMOSトランジスタ612および第2のPMOSトランジスタ614)に接続されるので、不一致があるとき、MLNAND値は浮動小数点値でなく、むしろ、直列PMOSトランジスタは、不一致を示すために一致ライン出力MLNANDを高に引き上げる。さらに、中間一致ラインは、直列に接続され、すべての一致ラインが評価されるまで、または不一致が決定されるまで、一致ライン出力MLNANDの状態は知られない。したがって、表3に示すように、出力がまだ知られていない場合、不一致がまだ決定されていないとき、一致ライン出力MLNANDは0/1のいずれかになる。
[0056]さらに、表3に示すように、XNORが1であるか、またはマスクビット(M)が0であるかのいずれかのとき、現在の中間一致ラインMLiから後続の中間一致ラインMLi+1への伝搬(MLi→MLi+1への伝搬)はアクティブ化し得る(オン)。すなわち、XNORが1であるとき、キーNMOSトランジスタ602が、アクティブ化され、一致を示すために現在の中間一致ラインMLiを低に引き下げる。代替的に、マスクビット(M)が0であるとき、マスクセルのマスクビットバー(M#)は、1になり、マスクNMOSトランジスタ604は、アクティブ化され、一致を示すために現在の中間一致ラインMLiを低に引き下げる。表3に示すように、マスクビットが0であるとき、状態、キービット、および探索ラインなどの他の値にかかわらず、現在の中間が一致を示すために低に引き下げることになるので、他の変数の状態はXである。より詳細には、Xの状態は、一致も不一致もない、むしろ、探索ラインの値とキーセルの値との間の比較がないマスク状態を指す。
[0057]さらに、XNORが0であり、マスクビット(M)が1であるとき、不一致が示される。表3には示されていないが、マスクビットが1であるとき、マスクビットバー(M#)は0であり、その逆も同様である。すなわち、XNORが0であるとき、XNORライン(XNOR0〜XNORn-1)も0である。さらに、マスクビットバーが0である(たとえば、マスクビットが1である)とき、マスクビットバーライン(M0#〜Mn-1#)は0である。したがって、XNORラインとマスクビットバーラインの両方が0であるとき、第1のPMOSトランジスタ612と第2のPMOSトランジスタ614とが有効化され、一致ライン出力(MLNAND)が高に設定される。前に説明したように、一致ラインが高であるとき、不一致が示される。
[0058]最後に、表3において、状態は、記憶要素(キーセルおよびマスクセル)の状態を指す。キーセルが0の値を有するとき、状態は0であり、キーセルが1の値を有するとき、状態は1であり、マスクセルが0であるとき、状態はXである。すなわち、Xの状態の場合、マスクセルが0であるとき、マスクNMOSトランジスタ604は、XNOR値にかかわらず、有効化され、中間一致ラインを低に引き下げる。
[0059]表4は、静的NAND TCAMのための真理値表を示す。表4中の状態が、記憶要素(キービットセルとマスクビットセルの組合せ)の状態を指すことに留意されたい。キーセルが0の値を有するとき、状態は0であり、キーセルとマスクセルとが1の値を有するとき、状態は1であり、キーセルが状態Xにあるとき、状態はXである。Xの状態は、一致も不一致もないマスク状態を指す。むしろ、探索ラインの値とキーセルの値との間の比較がない。したがって、一致ラインは、常に一致を示す。
Figure 0005932167
[0060]表1(擬似NOR TCAM真理値表)と表4(静的NAND TCAM真理値表)との間の比較は、TCAMの各タイプの状態ビットが、キービットとマスクビットとに基づいて変動することを示す。すなわち、擬似NOR TCAM真理値表(表1)は、静的NAND TCAM真理値表(表4)と同じでない。
[0061]図7Aおよび図7Bに、本開示の態様による、ハイブリッドTCAM700を示す。図7Aおよび図7Bに示すように、ハイブリッドTCAM700は、静的NAND TCAM770と、インターフェースユニット710と、擬似NOR TCAM780とを含む。静的NAND TCAM770は、静的NAND TCAMの記号表現であり、詳細には、図7Aおよび図7Bの静的NAND TCAM770は、図6の静的NAND TCAM600の論理表現である。さらに、擬似NOR TCAM780は、擬似NOR TCAMの記号表現であり、詳細には、擬似NOR TCAM780は、図4および図5の擬似NOR TCAMステージ400A、400B、および500の論理表現である。
[0062]一構成では、TCAMの第1の値(M)は、静的NAND TCAM770を介して比較される。さらに、残りの値(N−M)が擬似NOR TCAM780において比較される。インターフェースユニット710は、擬似NOR TCAM780と静的NAND TCAM770をインターフェースするように指定される。静的NAND TCAM770は、静的NANDステージと呼ばれることがあり、擬似NOR TCAM780は、擬似NORステージと呼ばれることがある。
[0063]静的NAND TCAMでは、一致は、不一致よりも多くの電力を消費する。すなわち、不一致は、電力をほとんど消費しない。代替的に、擬似NOR TCAMでは、不一致は、後続の擬似NOR TCAMステージのPMOSスタックを遮断し、したがって、電力を消費しない。依然として、擬似NOR TCAMステージのPMOSスタックがアクティブであるとき、不一致は、一致よりも多くの電力を消費する。
[0064]最長プレフィックス一致(LPM:longest prefix match)アルゴリズムは、一般に、ルータ中でパケット転送のために使用される。最長プレフィックス一致は、最下位ビット(LSB)でよりも最上位ビット(MSB)での一致をもたらすマスク値を有する。したがって、最長プレフィックス一致のためのハイブリッドTCAMの使用は、TCAMの電力消費量の低減をもたらす。
[0065]TCAM電力は、2つのカテゴリーに分割され得る。第1のカテゴリーは、一致ライン電力であり得る。最初のM個の値のほとんどの値が静的NANDにおいてスクリーニングされる。したがって、不一致があるとき、比較動作が後続の(N−M)個の擬似NORステージについて中止され、したがって、一致ライン電力が低減され得る。
[0066]第2のカテゴリーは、探索ライン電力であり得る。静的NAND探索ラインは、擬似NOR探索ラインよりも多くの電力を消費する。M個の値のみが静的NANDステージにおいて比較されるので、残りの値(N−M)個が擬似NORステージにおいて比較され、したがって、全体的な探索ライン電力消費量が低減される。
[0067]上記で説明したように、擬似NOR TCAMは、静的NAND TCAMと比較してより高速である。ハイブリッドTCAMは、擬似NOR TCAM中で(N−M)個のビットを使用する。したがって、ハイブリッドTCAMにおけるパフォーマンスを改善するために、M個のビット数はしきい値内にあり、したがって、(N−M)個のビット数は、M個のビット数よりも十分に大きくなる。
[0068]依然として、ハイブリッドTCAM700を使用するために、インターフェースユニット710は、擬似NORステージ780と静的NANDステージ770をインターフェースするように指定される。インターフェースユニット710は、擬似NORステージ780の入力に静的NANDステージ770の出力を与える。図7Bに示すように、インターフェースユニット710は、静的NANDステージ770の一致ライン出力702を受信するフリップフロップゲートであり得る。インターフェースユニット710はまた、クロック入力CLKを受信し得る。インターフェースユニット710は、擬似NORステージ780に一致ラインNANDビットMLNANDを出力する。擬似NORステージ780は、入力として一致ラインNANDビットMLNANDとN−M個の値を受信する。擬似NORステージ780は、インターフェースユニット710に一致ライン出力704を出力し、インターフェースユニットは、一致ラインNOR MLNORを出力する。
[0069]さらに、一構成では、静的NANDステージ770と擬似NORステージ780とは、並列にマスクビットとキービットとを受信する。一構成では、入力ビット(DATAIN)は、静的NANDステージ770のための真理値表(表4)に基づき得る。擬似NORステージ780のための真理値表(表1)は、静的NANDステージ770のための真理値表(表4)とは異なるので、エンコーダ/デコーダは、擬似NORステージ780のために指定され、したがって、DATAINを介して入力されたマスクビットとキービットとは擬似NOR真理値表(表1)に一致する。
[0070]さらに、読取り動作中に、デコーダ724は、擬似NORステージ780から出力されたマスクビットおよびキービットを復号し、したがって、DATAOUTストリーム中のマスクビットとキービットとは、静的NANDステージ770の真理値表(表4)に一致する。エンコーダ/デコーダ720は、エンコーダ722とデコーダ724とを含む。別の構成では、エンコーダ/デコーダ720は、擬似NOR真理値表(表1)に基づいて入力/出力ビットを符号化/復号するために、静的NANDステージ770に接続され得る。
[0071]本開示の一態様によれば、キービットは、以下の式に基づいて符号化され得る。
Figure 0005932167
[0073]ここで、Kはキービットであり、Mはマスクビットである。
[0074]さらに、マスクビットは、以下の式に基づいて符号化され得る。
Figure 0005932167
[0076]さらに、キービットは、以下の式に基づいて復号され得る。
Figure 0005932167
[0078]最後に、マスクビットは、以下の式に基づいて復号され得る。
Figure 0005932167
[0080]一構成によれば、符号化は、擬似NORまたは静的NANDへの書込み動作中に実行され得、復号は、擬似NORまたは静的NANDからの読取り動作中に実行され得る。
[0081]さらに、本開示の態様に基づいて、符号化および復号中に、キー値は、最初にマスキングされる場合、失われ得る。すなわち、一例として、静的NAND TCAMの状態0の場合、マスクビット(M)は1であり、キー値(K)は0である。符号化後に、マスクビットは1であり、キー値は0である。復号後に、マスクビットは1であり、キー値は0である。この例では、キー値は失われなかった。
[0082]別の例では、静的NAND TCAMのXの状態の場合、マスクビットは0であり、キー値は0であり得る。この例では、符号化後に、キー値は1であり、マスクビットは1である。さらに、この例では、復号後に、キー値は1であり、マスクビットは0である。したがって、符号化および復号のプロセスにおいて、キー値が失われた。依然として、キー値がXの状態で使用されないので、状態がXであるとき、キー値は、ハイブリッドTCAMに影響を及ぼすことなしに、符号化および復号プロセス中に失われ得る。
[0083]図8に、ハイブリッドTCAM800内の方法のブロック図を示す。図8に示すように、ブロック802において、第1のTCAMステージは、記憶されたワードの第1の部分と探索ワードの第1の部分を比較する。ブロック804において、第1のTCAMステージの出力は、第2のTCAMステージの入力にインターフェースされる。ブロック806において、第2のTCAMステージは、探索ワードの第1の部分が記憶されたワードの第1の部分に一致するとき、第2のTCAMステージにおいて、記憶されたワードの第2の部分と探索ワードの第2の部分を比較する。
[0084]図9に、有利には本開示の一実施形態が採用され得る例示的なワイヤレス通信システム900を示す。説明のために、図9に、3つのリモートユニット920、930、および950と、2つの基地局940とを示す。ワイヤレス通信システムはより多くのリモートユニットおよび基地局を有し得ることを認識されよう。リモートユニット920、930、および950は、ハイブリッドTCAM925A、925B、および925Cを用いるマルチコアプロセッサを含む。図9に、基地局940およびリモートユニット920、930、および950からの順方向リンク信号980と、リモートユニット920、930、および950から基地局940への逆方向リンク信号990とを示す。
[0085]図9では、リモートユニット920は携帯電話として示され、リモートユニット930はポータブルコンピュータとして示され、リモートユニット950はワイヤレスローカルループシステム中の固定ロケーションリモートユニットとして示されている。たとえば、リモートユニットは、セルフォン、ハンドヘルドパーソナル通信システム(PCS)ユニット、セットトップボックス、音楽プレーヤ、ビデオプレーヤ、エンターテインメントユニット、ナビゲーションデバイス、個人情報端末などのポータブルデータユニット、またはメーター読取り機器などの固定ロケーションデータユニットであり得る。図9は、本開示の教示による、ハイブリッドTCAM925A、925B、および925Cを用いるマルチコアプロセッサを採用し得るリモートユニットを示すが、本開示は、これらの例示的な図示されたユニットに限定されない。たとえば、本開示の態様によるハイブリッドTCAMを用いるマルチコアプロセッサは、任意のデバイスにおいて適切に採用され得る。
[0086]図10は、上記で開示したハイブリッドTCAMを用いるマルチコアプロセッサなど、半導体構成要素の回路、レイアウト、および論理設計のために使用される設計ワークステーションを示すブロック図である。設計ワークステーション1000は、オペレーティングシステムソフトウェア、サポートファイル、およびCadenceまたはOrCADなどの設計ソフトウェアを含んでいる、ハードディスク1001を含む。設計ワークステーション1000はまた、回路1010、またはハイブリッドTCAMなどの半導体構成要素1012の設計を容易にするためのディスプレイ1002を含む。回路設計1010または半導体構成要素1012を有形に記憶するための記憶媒体1004が提供される。回路設計1010または半導体構成要素1012は、GDSIIまたはGERBERなど、ファイル形式で記憶媒体1004に記憶され得る。記憶媒体1004は、CD−ROM、DVD、ハードディスク、フラッシュメモリ、または他の適切なデバイスであり得る。さらに、設計ワークステーション1000は、記憶媒体1004から入力を受け付けるか、または記憶媒体1004に出力を書き込むためのドライブ装置1003を含む。
[0087]記憶媒体1004に記録されたデータは、論理回路構成、フォトリソグラフィマスクのためのパターンデータ、または電子ビームリソグラフィなどのシリアル書込みツールのためのマスクパターンデータを指定し得る。データは、論理シミュレーションに関連するタイミング図またはネット回路など、論理検証データをさらに含み得る。記憶媒体1004にデータを与えることにより、半導体ウエハを設計するためのプロセスの数が減少するので、回路設計1010または半導体構成要素1012の設計が容易になる。
[0088]一構成では、TCAMは、比較手段を含む。比較手段は、比較手段によって具陳される機能を実行するように構成された静的NAND TCAMステージ770および/または擬似NOR TCAM 780であり得る。一構成では、TCAMはまた、インターフェース手段を含み、インターフェース手段は、インターフェース手段によって具陳される機能を実行するように構成されたインターフェースユニット710であり得る。別の構成では、TCAMはまた、符号化手段と復号手段とを含む。符号化手段および復号手段は、符号化手段および復号手段によって具陳される機能を実行するように構成されたエンコーダ/デコーダ720であり得る。
[0089]特定の回路について説明したが、開示する実施形態を実施するために、開示する回路のすべてが必要とされるとは限らないことを、当業者は諒解されよう。さらに、本開示への集中を維持するために、いくつかのよく知られている回路については説明していない。
[0090]本明細書で説明する方法は、適用例に応じて様々な手段によって実装され得る。たとえば、これらの方法は、ハードウェア、ファームウェア、ソフトウェア、またはそれらの任意の組合せで実装され得る。ハードウェア実装の場合、処理ユニットは、1つまたは複数の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブル論理デバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、電子デバイス、本明細書で説明した機能を実行するように設計された他の電子ユニット、またはそれらの組合せの中で実装され得る。
[0091]ファームウェアおよび/またはソフトウェア実装の場合、本方法は、本明細書で説明した機能を実行するモジュール(たとえば、プロシージャ、関数など)を用いて実装され得る。命令を有形に実施するいかなる機械またはコンピュータ可読媒体も、本明細書で説明した方法を実装する際に使用され得る。たとえば、ソフトウェアコードは、メモリに記憶され、プロセッサによって実行され得る。実行ソフトウェアコードは、プロセッサによって実行されたときに、本明細書で提示した教示の異なる態様の様々な方法および機能を実装する動作環境を生成する。メモリは、プロセッサの内部またはプロセッサの外部に実装され得る。本明細書で使用する「メモリ」という用語は、長期メモリ、短期メモリ、揮発性メモリ、不揮発性メモリ、または他のメモリのいずれかのタイプを指し、メモリの特定のタイプまたはメモリの数、あるいはメモリが記憶される媒体のタイプに限定されるべきではない。
[0092]本明細書で説明した方法および機能を定義するソフトウェアコードを記憶する機械またはコンピュータ可読媒体は、物理コンピュータ記憶媒体を含む。記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であり得る。限定ではなく、例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM(登録商標)、CD−ROMまたは他の光ディスクストレージ、磁気ディスクストレージまたは他の磁気ストレージデバイス、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。本明細書で使用するディスク(disk)および/またはディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピー(登録商標)ディスク(disk)およびブルーレイ(登録商標)ディスク(disc)を含み、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
[0093]コンピュータ可読媒体上での記憶に加えて、命令および/またはデータは、通信装置中に含まれる伝送媒体上の信号として与えられ得る。たとえば、通信装置は、命令とデータとを示す信号を有するトランシーバを含み得る。命令およびデータは、1つまたは複数のプロセッサに、特許請求の範囲で概説する機能を実装させるように構成される。
[0094]本教示およびそれらの利点について詳細に説明したが、添付の特許請求の範囲によって規定される本教示の技術から逸脱することなく様々な変更、置換および改変を本明細書で行うことができることを理解されたい。さらに、本出願の範囲は、本明細書で説明するプロセス、機械、製造、組成物、手段、方法およびステップの特定の態様に限定されるものではない。当業者なら本開示から容易に諒解するように、本明細書で説明する対応する態様と実質的に同じ機能を実行するか、または実質的に同じ結果を達成する、現存するかまたは後で開発される、プロセス、機械、製造、組成物、手段、方法、またはステップは本教示に従って利用され得る。したがって、添付の特許請求の範囲は、それらの範囲内にそのようなプロセス、機械、製造、組成物、手段、方法、またはステップを含むものとする。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[C1]
ハイブリッド3値連想メモリ(TCAM)内の方法であって、
第1のTCAMステージにおいて、記憶されたワードの第1の部分と探索ワードの第1の部分を比較することと、
前記探索ワードの前記第1の部分が前記記憶されたワードの前記第1の部分に一致するとき、第2のTCAMステージにおいて、前記記憶されたワードの第2の部分と前記探索ワードの第2の部分を比較することと
を備え、前記第1のTCAMステージは、前記第2のTCAMステージとは異なる、
方法。
[C2]
書込み動作中に前記第2のTCAMステージにおいてマスクビットとキービットとを符号化することをさらに備え、前記符号化することは、前記第1のTCAMステージのために使用される値から前記第2のTCAMステージのために使用される値に前記マスクビットと前記キービットとを変換することを備える、
C1に記載の方法。
[C3]
読取り動作中に前記第2のTCAMステージにおいてマスクビットとキービットとを復号することをさらに備え、前記復号することは、前記第2のTCAMステージのために使用される値から前記第1のTCAMステージのために使用される値に前記マスクビットと前記キービットとを変換することを備える、
C1に記載の方法。
[C4]
前記第2のTCAMステージの入力に前記第1のTCAMステージの出力をインターフェースすることをさらに備える、
C1に記載の方法。
[C5]
前記第1のTCAMステージは、静的NANDステージであり、前記第2のTCAMステージは、擬似NORステージである、
C1に記載の方法。
[C6]
前記第1のTCAMステージは、擬似NORステージであり、前記第2のTCAMステージは、静的NANDステージである、
C1に記載の方法。
[C7]
ハイブリッド3値連想メモリ(TCAM)であって、
記憶されたワードの第1の部分と探索ワードの第1の部分を比較するように構成された第1のTCAMステージと、
前記探索ワードの前記第1の部分が前記記憶されたワードの前記第1の部分に一致するとき、前記記憶されたワードの第2の部分と前記探索ワードの第2の部分を比較するように構成された第2のTCAMステージと
を備え、前記第1のTCAMステージは、前記第2のTCAMステージとは異なる、
TCAM。
[C8]
書込み動作中に前記第2のTCAMステージにおいてマスクビットとキービットとを符号化するように構成されたエンコーダをさらに備え、前記符号化することは、前記第1のTCAMステージのために使用される値から前記第2のTCAMステージのために使用される値に前記マスクビットと前記キービットとを変換することを備える、
C7に記載のTCAM。
[C9]
読取り動作中に前記第2のTCAMステージにおいてマスクビットとキービットとを復号するように構成されたデコーダをさらに備え、前記復号することは、前記第2のTCAMステージのために使用される値から前記第1のTCAMステージのために使用される値に前記マスクビットと前記キービットとを変換することを備える、
C7に記載のTCAM。
[C10]
前記第2のTCAMステージの入力に前記第1のTCAMステージの出力をインターフェースするように構成されたインターフェースユニットをさらに備える、
C7に記載のTCAM。
[C11]
前記第1のTCAMステージは、静的NANDステージであり、前記第2のTCAMステージは、擬似NORステージである、
C7に記載のTCAM。
[C12]
前記第1のTCAMステージは、擬似NORステージであり、前記第2のTCAMステージは、静的NANDステージである、
C7に記載のTCAM。
[C13]
ハイブリッド3値連想メモリ(TCAM)であって、
記憶されたワードの第1の部分と探索ワードの第1の部分を比較するための第1の手段と、
前記探索ワードの前記第1の部分が前記記憶されたワードの前記第1の部分に一致するとき、前記記憶されたワードの第2の部分と前記探索ワードの第2の部分を比較するための第2の手段と、
を備え、比較するための前記第1の手段は、比較するための前記第2の手段とは異なる、
TCAM。
[C14]
書込み動作中に比較するための前記第2の手段においてマスクビットとキービットとを符号化するための手段をさらに備え、前記符号化することは、比較するための前記第1の手段のために使用される値から比較するための前記第2の手段のために使用される値に前記マスクビットと前記キービットとを変換することを備える、
C13に記載のTCAM。
[C15]
読取り動作中に比較するための前記第2の手段においてマスクビットとキービットとを復号するための手段をさらに備え、前記復号することは、比較するための前記第2の手段のために使用される値から比較するための前記第1の手段のために使用される値に前記マスクビットと前記キービットとを変換することを備える、
C13に記載のTCAM。
[C16]
比較するための前記第2のものの入力に比較するための前記第1のものの出力をインターフェースするための手段をさらに備える、
C13に記載のTCAM。

Claims (26)

  1. ハイブリッド3値連想メモリ(TCAM)内の方法であって、
    第1のTCAMステージにおいて、記憶されたワードの第1の部分と探索ワードの第1の部分を比較することと、
    前記探索ワードの前記第1の部分が前記記憶されたワードの前記第1の部分に一致するとき、第2のTCAMステージにおいて、前記記憶されたワードの第2の部分と前記探索ワードの第2の部分を比較することと、
    を備え、前記探索ワードの前記第1の部分は、前記探索ワードの前記第2の部分とは異なり、前記第1のTCAMステージは、第1のタイプのTCAMとして構成され、前記第2のTCAMステージは、第2のタイプのTCAMとして構成され、前記第1のタイプのTCAMは、前記第2のタイプのTCAMとは異なる、
    方法。
  2. 書込み動作中に前記第2のTCAMステージにおいてマスクビットとキービットとを符号化することをさらに備え、前記符号化することは、前記第1のTCAMステージのために使用される値から前記第2のTCAMステージのために使用される値に前記マスクビットと前記キービットとを変換することを備える、
    請求項1に記載の方法。
  3. 読取り動作中に前記第2のTCAMステージにおいてマスクビットとキービットとを復号することをさらに備え、前記復号することは、前記第2のTCAMステージのために使用される値から前記第1のTCAMステージのために使用される値に前記マスクビットと前記キービットとを変換することを備える、
    請求項1に記載の方法。
  4. 前記第2のTCAMステージの入力に前記第1のTCAMステージの出力をインターフェースすることをさらに備える、
    請求項1に記載の方法。
  5. 前記第1のタイプのTCAMは、静的NANDを備え、前記第2のタイプのTCAMは、擬似NORを備える、
    請求項1に記載の方法。
  6. ハイブリッド3値連想メモリ(TCAM)であって、
    記憶されたワードの第1の部分と探索ワードの第1の部分を比較するように構成された第1のTCAMステージと、
    前記探索ワードの前記第1の部分が前記記憶されたワードの前記第1の部分に一致するとき、前記記憶されたワードの第2の部分と前記探索ワードの第2の部分を比較するように構成された第2のTCAMステージと
    を備え、前記探索ワードの前記第1の部分は、前記探索ワードの前記第2の部分とは異なり、前記第1のTCAMステージは、第1のタイプのTCAMとして構成され、前記第2のTCAMステージは、第2のタイプのTCAMとして構成され、前記第1のタイプのTCAMは、前記第2のタイプのTCAMとは異なる、
    TCAM。
  7. 書込み動作中に前記第2のTCAMステージにおいてマスクビットとキービットとを符号化するように構成されたエンコーダをさらに備え、前記符号化することは、前記第1のTCAMステージのために使用される値から前記第2のTCAMステージのために使用される値に前記マスクビットと前記キービットとを変換することを備える、
    請求項6に記載のTCAM。
  8. 読取り動作中に前記第2のTCAMステージにおいてマスクビットとキービットとを復号するように構成されたデコーダをさらに備え、前記復号することは、前記第2のTCAMステージのために使用される値から前記第1のTCAMステージのために使用される値に前記マスクビットと前記キービットとを変換することを備える、
    請求項6に記載のTCAM。
  9. 前記第2のTCAMステージの入力に前記第1のTCAMステージの出力をインターフェースするように構成されたインターフェースユニットをさらに備える、
    請求項6に記載のTCAM。
  10. 前記第1のタイプのTCAMは、静的NANDを備え、前記第2のタイプのTCAMは、擬似NORを備える、
    請求項6に記載のTCAM。
  11. ハイブリッド3値連想メモリ(TCAM)であって、
    記憶されたワードの第1の部分と探索ワードの第1の部分を比較するための第1の手段と、
    前記探索ワードの前記第1の部分が前記記憶されたワードの前記第1の部分に一致するとき、前記記憶されたワードの第2の部分と前記探索ワードの第2の部分を比較するための第2の手段と、
    を備え、前記探索ワードの前記第1の部分は、前記探索ワードの前記第2の部分とは異なり、比較するための前記第1の手段は、第1のタイプのTCAMとして構成され、比較するための前記第2の手段は、第2のタイプのTCAMとして構成され、前記第1のタイプのTCAMは、前記第2のタイプのTCAMとは異なる、
    TCAM。
  12. 書込み動作中に比較するための前記第2の手段においてマスクビットとキービットとを符号化するための手段をさらに備え、前記符号化することは、比較するための前記第1の手段のために使用される値から比較するための前記第2の手段のために使用される値に前記マスクビットと前記キービットとを変換することを備える、
    請求項11に記載のTCAM。
  13. 読取り動作中に比較するための前記第2の手段においてマスクビットとキービットとを復号するための手段をさらに備え、前記復号することは、比較するための前記第2の手段のために使用される値から比較するための前記第1の手段のために使用される値に前記マスクビットと前記キービットとを変換することを備える、
    請求項11に記載のTCAM。
  14. 比較するための前記第2の手段の入力に比較するための前記第1の手段の出力をインターフェースするための手段をさらに備える、
    請求項11に記載のTCAM。
  15. 前記第1のタイプのTCAMは、静的NANDを備え、前記第2のタイプのTCAMは、擬似NORステージを備える、
    請求項11に記載のTCAM。
  16. 前記第1のタイプのTCAMは、擬似NORを備え、前記第2のタイプのTCAMは、静的NANDを備える、
    請求項11に記載のTCAM。
  17. 前記探索ワードはN値から成り、前記探索ワードの前記第1の部分はM値から成り、前記探索ワードの前記第2の部分はN−M値から成る、
    請求項6に記載のTCAM。
  18. 前記第2のタイプのTCAMは、比較を評価するのに、前記第1のタイプのTCAMよりも高速である、
    請求項17に記載のTCAM。
  19. N−MはMよりも大きい、
    請求項18に記載のTCAM。
  20. 前記第1のTCAMステージは、不一致として比較を評価するよりも一致として比較を評価するのにより多くの電力を消費するように構成され、前記第2のTCAMステージは、一致として比較を評価するよりも不一致として比較を評価するのにより多くの電力を消費するように構成される、
    請求項6に記載のTCAM。
  21. 前記記憶されたワードの前記第1の部分と前記探索ワードの前記第1の部分の前記比較は、前記記憶されたワードの前記第2の部分と前記探索ワードの前記第2の部分の前記比較よりも多くの不一致を統計的にもたらす、
    請求項20に記載のTCAM。
  22. 前記第2のTCAMステージは、少なくとも第1および第2の直列の比較ステージを備え、前記第2の直列の比較ステージは、
    前記第1の直列の比較ステージから入力信号を受信し、
    前記入力信号が、前記探索ワードの前記第2の部分の第1のサブセットの、前記探索ワードの前記第2の部分の対応する第1のサブセットとの一致を示すことに応答して、ノードに高論理電圧を印加し、
    前記入力信号が、前記探索ワードの前記第2の部分の前記第1のサブセットの、前記探索ワードの前記第2の部分の前記対応する前記第1のサブセットの不一致を示すことに応答して、前記ノードに低論理電圧を印加する、
    ように構成された入力回路と、
    不一致が、前記探索ワードの前記第2の部分の第2のサブセットと、前記探索ワードの前記第2の部分の対応する第2のサブセットとの間で決定されることに応答して、前記ノードにおける前記高論理電圧を前記低論理電圧に変更し、
    一致が、前記探索ワードの前記第2の部分の前記第2のサブセットと、前記探索ワードの前記第2の部分の前記対応する第2のサブセットとの間で決定されることに応答して、前記ノードにおいて前記高論理電圧を維持する、
    ように構成された比較回路と、
    前記ノードにおいて、前記結果として生じる高論理電圧または前記低論理電圧を論理的に反転させるように構成された反転回路と、
    を備え、前記反転された高論理電圧または前記反転された低論理電圧は、前記第2のTCAMステージの出力で生成されるか、または後に続く直列の比較ステージの入力に印加される、
    請求項6に記載のTCAM。
  23. 前記第1のTCAMステージは、出力と接地との間で結合された複数の直列の比較ステージを備え、前記直列の比較ステージの少なくとも1つは、
    少なくとも1つの切替え要素と、
    前記探索ワードの前記第1の部分の値と、前記記憶されたワードの前記第1の部分の対応する値との間の一致に応答して、隣接する直列の比較ステージを互いに結合するために前記少なくとも1つの切替え要素を閉じるように構成された比較回路と、
    を備える、請求項6に記載のTCAM。
  24. 前記直列の比較ステージの前記少なくとも1つは、前記比較回路が前記探索ワードの前記第1の部分の前記値と前記記憶されたワードの前記第1の部分の前記対応する値との間の不一致を示すことに応答して、前記出力において不一致指示を生成するように構成された不一致指示回路をさらに備える、
    請求項23に記載のTCAM。
  25. 前記直列の比較ステージの前記少なくとも1つは、
    マスク値を生成し、
    前記マスク値がアサートされることに応答して前記少なくとも1つの切替え要素を閉じる、
    ように構成されたマスクセル、
    を備える、請求項23に記載のTCAM。
  26. 前記直列の比較ステージの前記少なくとも1つは、前記比較回路が前記探索ワードの前記第1の部分の前記値と前記記憶されたワードの前記第1の部分の前記対応する値との間の不一致を示し、前記マスク値がアサート停止されることに応答して、前記出力において不一致指示を生成するように構成された不一致指示回路をさらに備える、
    請求項25に記載のTCAM。
JP2015550690A 2012-12-28 2013-12-20 ハイブリッド3値連想メモリ Expired - Fee Related JP5932167B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/730,487 2012-12-28
US13/730,487 US8934278B2 (en) 2012-12-28 2012-12-28 Hybrid ternary content addressable memory
PCT/US2013/076853 WO2014105684A1 (en) 2012-12-28 2013-12-20 Hybrid ternary content addressable memory

Publications (2)

Publication Number Publication Date
JP2016502226A JP2016502226A (ja) 2016-01-21
JP5932167B2 true JP5932167B2 (ja) 2016-06-08

Family

ID=49918924

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015550690A Expired - Fee Related JP5932167B2 (ja) 2012-12-28 2013-12-20 ハイブリッド3値連想メモリ

Country Status (7)

Country Link
US (1) US8934278B2 (ja)
EP (1) EP2939241B1 (ja)
JP (1) JP5932167B2 (ja)
KR (1) KR101585037B1 (ja)
CN (1) CN104823243B (ja)
TW (1) TWI508074B (ja)
WO (1) WO2014105684A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102769850B (zh) * 2012-04-16 2015-10-28 中兴通讯股份有限公司 单卡多模多运营商鉴权方法及装置
US8891273B2 (en) 2012-12-26 2014-11-18 Qualcomm Incorporated Pseudo-NOR cell for ternary content addressable memory
US8958226B2 (en) 2012-12-28 2015-02-17 Qualcomm Incorporated Static NAND cell for ternary content addressable memory (TCAM)
US9374294B1 (en) 2013-11-05 2016-06-21 Cisco Technology, Inc. On-demand learning in overlay networks
US9502111B2 (en) 2013-11-05 2016-11-22 Cisco Technology, Inc. Weighted equal cost multipath routing
US9655232B2 (en) 2013-11-05 2017-05-16 Cisco Technology, Inc. Spanning tree protocol (STP) optimization techniques
US10778584B2 (en) 2013-11-05 2020-09-15 Cisco Technology, Inc. System and method for multi-path load balancing in network fabrics
US9769078B2 (en) 2013-11-05 2017-09-19 Cisco Technology, Inc. Dynamic flowlet prioritization
US9832122B2 (en) 2013-11-05 2017-11-28 Cisco Technology, Inc. System and method for identification of large-data flows
US9496023B2 (en) 2014-06-05 2016-11-15 Micron Technology, Inc. Comparison operations on logical representations of values in memory
US9785373B2 (en) * 2015-11-25 2017-10-10 International Business Machines Corporation Optimizing fine grained context addressability in highly dimensional environments using TCAM hybrid memory and storage architectures
US9934857B2 (en) * 2016-08-04 2018-04-03 Hewlett Packard Enterprise Development Lp Ternary content addressable memories having a bit cell with memristors and serially connected match-line transistors
US9941008B1 (en) * 2017-03-23 2018-04-10 National Taiwan University Ternary content addressable memory device for software defined networking and method thereof
CN107257322A (zh) * 2017-07-24 2017-10-17 山东大学 一种混合tcam架构系统及流表处理方法
CN108199969B (zh) * 2017-12-22 2020-09-29 大连理工大学 查表型硬件搜索引擎
CN108055206B (zh) * 2017-12-22 2020-09-29 大连理工大学 紧凑查表型硬件搜索引擎及其数据转换方法
TWI766773B (zh) * 2021-07-23 2022-06-01 旺宏電子股份有限公司 多階內容可定址記憶體、多階編碼方法與多階搜尋方法
US11532337B1 (en) 2021-07-23 2022-12-20 Macronix International Co., Ltd. Multilevel content addressable memory, multilevel coding method of and multilevel searching method
US12001719B2 (en) * 2022-06-27 2024-06-04 Western Digital Technologies, Inc. Storage media based search function for key value data storage devices
US20240021224A1 (en) * 2022-07-18 2024-01-18 Macronix International Co., Ltd. Content addressable memory for large search words
CN116156026B (zh) * 2023-04-20 2023-07-04 中国人民解放军国防科技大学 一种支持rmt的解析器、逆解析器、解析方法及交换机

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6044005A (en) 1999-02-03 2000-03-28 Sibercore Technologies Incorporated Content addressable memory storage device
US6574702B2 (en) 1999-02-23 2003-06-03 Netlogic Microsystems, Inc. Method and apparatus for determining an exact match in a content addressable memory device
US6499081B1 (en) * 1999-02-23 2002-12-24 Netlogic Microsystems, Inc. Method and apparatus for determining a longest prefix match in a segmented content addressable memory device
US6411538B1 (en) 2000-11-28 2002-06-25 Silicon Access Networks Compact load-less static ternary CAM
US6400593B1 (en) 2001-02-08 2002-06-04 Intregrated Device Technology, Inc. Ternary CAM cell with DRAM mask circuit
US6385070B1 (en) 2001-03-13 2002-05-07 Tality, L.P. Content Addressable Memory array, cell, and method using 5-transistor compare circuit and avoiding crowbar current
DE60210322T2 (de) * 2001-12-28 2006-12-28 Mosaid Technologies Incorporated, Kanata Assoziativspeicherarchitektur mit geringem leistungsverbrauch
US6768659B2 (en) 2001-12-31 2004-07-27 Mosaid Technologies Incorporated Circuit and method for reducing power usage in a content addressable memory
TWI302706B (en) * 2002-01-31 2008-11-01 Mosaid Technologies Inc Circuit and method for reducing power usage in a content addressable memory
US6760242B1 (en) 2002-04-10 2004-07-06 Integrated Device Technology, Inc. Content addressable memory (CAM) devices having speed adjustable match line signal repeaters therein
KR100435804B1 (ko) * 2002-06-28 2004-06-10 삼성전자주식회사 터너리 내용 주소화 메모리 장치
US6906937B1 (en) 2003-03-21 2005-06-14 Netlogic Microsystems, Inc. Bit line control circuit for a content addressable memory
DE602004001623T2 (de) * 2003-04-25 2007-08-09 Samsung Electronics Co., Ltd., Suwon TCAM Speicher und Betriebsverfahren
US6900999B1 (en) 2003-06-30 2005-05-31 Integrated Device Technology, Inc. Ternary content addressable memory (TCAM) cells with small footprint size and efficient layout aspect ratio
US7120040B2 (en) 2004-06-01 2006-10-10 Mosaid Technologies Incorporation Ternary CAM cell for reduced matchline capacitance
US7555594B2 (en) 2004-07-22 2009-06-30 Netlogic Microsystems, Inc. Range representation in a content addressable memory (CAM) using an improved encoding scheme
US7050318B1 (en) * 2004-10-01 2006-05-23 Netlogic Microsystems, Inc. Selective match line pre-charging in a CAM device using pre-compare operations
US7286379B1 (en) 2005-09-08 2007-10-23 Lsi Corporation Content addressable memory (CAM) architecture and method of operating the same
US7577785B2 (en) * 2005-09-30 2009-08-18 Qualcomm Incorporated Content addressable memory with mixed serial and parallel search
US7355890B1 (en) 2006-10-26 2008-04-08 Integrated Device Technology, Inc. Content addressable memory (CAM) devices having NAND-type compare circuits
US8125810B2 (en) 2007-08-01 2012-02-28 Texas Instruments Incorporated Low power ternary content-addressable memory (TCAM)
US7633830B2 (en) 2007-11-29 2009-12-15 Agere Systems Inc. Reduced leakage driver circuit and memory device employing same
US8169808B2 (en) 2008-01-25 2012-05-01 Micron Technology, Inc. NAND flash content addressable memory
US7940541B2 (en) 2008-05-21 2011-05-10 Texas Instruments Incorporated Bit cell designs for ternary content addressable memory
TWI369683B (en) 2008-06-11 2012-08-01 Realtek Semiconductor Corp Content addressable memory
TWI391946B (zh) * 2008-09-18 2013-04-01 Realtek Semiconductor Corp 內容可定址記憶體
WO2010138639A2 (en) 2009-05-26 2010-12-02 Arizona Board Of Regents, For And On Behalf Of Arizona State University Longest prefix match internet protocol content addressable memories and related methods
US7907432B2 (en) * 2009-06-30 2011-03-15 Netlogic Microsystems, Inc. Content addressable memory device for simultaneously searching multiple flows
US8582338B1 (en) 2010-08-31 2013-11-12 Netlogic Microsystems, Inc. Ternary content addressable memory cell having single transistor pull-down stack
US8891273B2 (en) 2012-12-26 2014-11-18 Qualcomm Incorporated Pseudo-NOR cell for ternary content addressable memory
US8958226B2 (en) 2012-12-28 2015-02-17 Qualcomm Incorporated Static NAND cell for ternary content addressable memory (TCAM)

Also Published As

Publication number Publication date
KR20150095941A (ko) 2015-08-21
US20140185348A1 (en) 2014-07-03
TW201440053A (zh) 2014-10-16
EP2939241B1 (en) 2016-09-21
CN104823243A (zh) 2015-08-05
JP2016502226A (ja) 2016-01-21
WO2014105684A1 (en) 2014-07-03
TWI508074B (zh) 2015-11-11
KR101585037B1 (ko) 2016-01-13
US8934278B2 (en) 2015-01-13
EP2939241A1 (en) 2015-11-04
CN104823243B (zh) 2017-11-14

Similar Documents

Publication Publication Date Title
JP5932167B2 (ja) ハイブリッド3値連想メモリ
JP6325044B2 (ja) 3値連想メモリのための擬似norセル
JP6062578B2 (ja) 3値連想メモリ(tcam)のための静的nandセル
US6574702B2 (en) Method and apparatus for determining an exact match in a content addressable memory device
US6499081B1 (en) Method and apparatus for determining a longest prefix match in a segmented content addressable memory device
US6539455B1 (en) Method and apparatus for determining an exact match in a ternary content addressable memory device
TWI391946B (zh) 內容可定址記憶體
JP2018014153A (ja) 半導体装置
US6892272B1 (en) Method and apparatus for determining a longest prefix match in a content addressable memory device
Chang et al. A low-power TCAM design using mask-aware match-line (MAML) technique
KR101308099B1 (ko) 단일스테이지 지연 추론적 어드레스 디코더
KR100495669B1 (ko) 로우 디코더
Iftekhar Ali Development and analysis of energy efficient match-line sensing circuits for high-speed ternary content addressable memory
Mathan et al. Refined search enable (RSE) TCAM design used in network routing table

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150907

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150908

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150908

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20150908

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20151113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160301

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160329

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160427

R150 Certificate of patent or registration of utility model

Ref document number: 5932167

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees