JP2005501448A5 - - Google Patents

Download PDF

Info

Publication number
JP2005501448A5
JP2005501448A5 JP2003522942A JP2003522942A JP2005501448A5 JP 2005501448 A5 JP2005501448 A5 JP 2005501448A5 JP 2003522942 A JP2003522942 A JP 2003522942A JP 2003522942 A JP2003522942 A JP 2003522942A JP 2005501448 A5 JP2005501448 A5 JP 2005501448A5
Authority
JP
Japan
Prior art keywords
string
coupled
filtered
filter
crossbar switch
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.)
Granted
Application number
JP2003522942A
Other languages
English (en)
Other versions
JP2005501448A (ja
JP4076497B2 (ja
Filing date
Publication date
Priority claimed from US09/935,997 external-priority patent/US6744652B2/en
Application filed filed Critical
Publication of JP2005501448A publication Critical patent/JP2005501448A/ja
Publication of JP2005501448A5 publication Critical patent/JP2005501448A5/ja
Application granted granted Critical
Publication of JP4076497B2 publication Critical patent/JP4076497B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Claims (29)

  1. 複数の内容アドレス・メモリ・ブロックと、
    複数のフィルタ回路とを備え、複数のフィルタ回路はそれぞれ、複数の内容アドレス・メモリ・ブロックのうちの対応する1つに結合され、複数のフィルタ回路はそれぞれ、共通入力ストリングを受信し、フィルタ処理されたコンパランド・ストリングを複数の内容アドレス・メモリ・ブロックのうちの対応する1つに送信するように構成されており、その複数のフィルタ回路はそれぞれ、共通入力ストリングを受信するように構成されているクロスバ・スイッチを備え、さらに、複数のフィルタ回路はそれぞれクロスバ・スイッチに結合されたプログラミング回路を備え、プログラミング回路は、フィルタ・データを受信して、共通入力ストリングからフィルタ処理されたコンパランド・ストリングを生成するようにクロスバ・スイッチをプログラムする構成とされている装置。
  2. 複数の内容アドレス・メモリ・ブロックは、同時ルックアップを実行するように構成されている請求項1に記載の装置。
  3. プログラミング回路は、
    クロスバ・スイッチに結合されたデータ・ジェネレータと、
    データ・ジェネレータに結合され、フィルタ・データを格納するブロック・フィルタ・レジスタと、
    クロスバ・スイッチに結合されたアドレス・ジェネレータとを備える請求項1に記載の装置。
  4. データ・ジェネレータは、
    ブロック・フィルタ・レジスタに結合されたシフト・レジスタと、
    シフト・レジスタに結合された論理回路とを備える請求項3に記載の装置。
  5. シフト・レジスタは複数のビット位置を持ち、シフト・レジスタは、フィルタとクロック信号に基づき複数のビット位置を通じて所定のビット値をシフトするように構成されている請求項4に記載の装置。
  6. 論理回路は、シフト・レジスタの複数のビット位置からビット値を受け取り、クロック信号に基づきビット値を出力するように構成されている請求項7に記載の装置。
  7. データ・ジェネレータは、
    第1のシフト・レジスタと、
    複数のビット位置を持つ第2のシフト・レジスタと、
    第1のシフト・レジスタに結合され、フィルタ・データを受け取るためブロック・フィルタ・レジスタに結合され、第2のシフト・レジスタを通じて所定のビット値のシフト動作を制御するため第2のシフト・レジスタに結合され、その第2のシフト・レジスタがフィルタ・データとクロック信号に基づき複数のビット位置を通じて所定のビット値をシフトするように構成されているワイヤード論理ゲートと、
    第2のシフト・レジスタの出力を受け取り、その出力をバッファ書き込み回路に送るように結合されている論理回路とを備える請求項3に記載の装置。
  8. ブロック・フィルタ・レジスタは、複数行、単一列のランダム・アクセス・メモリである請求項3に記載の装置。
  9. アドレス・ジェネレータが、
    制御入力とカウンタ出力を備えるカウンタと、
    カウンタの出力とクロスバ・スイッチに結合されたデコーダとを備える請求項3に記載の装置。
  10. さらに、出力がカウンタの制御入力に結合され、複数の入力がデータ・ジェネレータに結合されているOR回路を備える請求項9に記載の装置。
  11. アドレス・ジェネレータはシフト・レジスタを備える請求項3に記載の装置。
  12. さらに、アドレス・ジェネレータは、出力がシフト・レジスタに結合され、複数の入力がデータ・ジェネレータに結合されているOR回路を備える請求項11に記載の装置。
  13. 複数の内容アドレス・メモリ・ブロックと、
    複数のフィルタ回路とを備え、複数のフィルタ回路はそれぞれ、複数の内容アドレス・メモリ・ブロックのうちの対応する1つに結合され、複数のフィルタ回路はそれぞれ、共通入力ストリングを受信し、フィルタ処理されたコンパランド・ストリングを複数の内容アドレス・メモリ・ブロックのうちの対応する1つに送信するように構成されており、複数のフィルタ回路はそれぞれ、
    共通入力ストリングを受け取るように構成されているクロスバ・スイッチと、
    クロスバ・スイッチに結合されたプログラミング回路とを備え、そのプログラミング回路は、フィルタ・データを受け取って、共通入力ストリングからフィルタ処理されたコンパランド・ストリングを生成するようにクロスバ・スイッチをプログラムする構成であり、プログラミング回路は、
    クロスバ・スイッチに結合されたバッファ書き込み回路と、
    バッファ書き込み回路に結合されたデータ・ジェネレータと、
    データ・ジェネレータに結合され、クロスバ・スイッチ内の接続を確立するためにビット・データ・パターンを格納するブロック・フィルタ・レジスタと、
    クロスバ・スイッチに結合されたアドレス・ジェネレータとを備え、アドレス・ジェネレータは、
    制御入力とカウンタ出力を備えるカウンタと、
    カウンタの出力とクロスバ・スイッチに結合されたデコーダと、
    出力がカウンタの制御入力に結合され、複数の入力がデータ・ジェネレータに結合されているOR回路とを備える装置。
  14. 複数のフィルタ回路がプログラム可能である請求項13に記載の装置。
  15. 共通入力ストリングをフィルタ処理し、第1のフィルタ処理されたストリングとその第1のフィルタ処理されたストリングとは異なる第2のフィルタ処理されたストリングを生成するステップと、
    第1フィルタ処理されたストリングを圧縮するステップであって、第1フィルタ処理されたストリングが複数のビット位置を有し、圧縮することが、格納された連続したビット位置を持つコンパランド・ストリングを生成するために互いに対してビット位置をシフトさせることを含む圧縮するステップと、
    それぞれ第1のフィルタ処理されたストリングと第2のフィルタ処理されたストリングを使用してそれぞれ第1の内容アドレス・メモリ・ブロックと第2の内容アドレス・メモリ・ブロック内でルックアップを実行するステップと
    を含む方法。
  16. 複数のルックアップを同時実行する請求項15に記載の方法。
  17. 共通入力ストリングをフィルタ処理して第1のフィルタ処理されたストリングと第2のフィルタ処理されたストリングを生成するステップを異なるフィルタ処理回路を使用して同時実行する請求項15に記載の方法。
  18. 圧縮するステップはさらに、第1のフィルタ処理されたストリングと第2のフィルタ処理されたストリングのビット位置を下位ビット位置にシフトするステップを含んでいる請求項37に記載の方法。
  19. 第1のフィルタ処理されたストリングはクロスバ・スイッチによりフィルタ処理される請求項18に記載の方法。
  20. さらに、クロスバ・スイッチをプログラムするステップを含んでいる請求項19に記載の方法。
  21. プログラムするステップは、
    (a)共通入力ストリングのビット位置と第1のフィルタ処理されたストリングのビット位置との間の接続が確立されるかどうかを判定するステップと、
    (b)ステップ(a)での判定に基づいてクロスバ・スイッチ内の接続を確立するステップと、
    (c)ステップ(b)で接続が確立された場合に共通入力ストリングの次のビット位置に順次進むステップと、
    (d)ステップ(b)で接続が確立されていない場合に共通入力ストリングの次のビット位置に順次進まないステップとを含んでいる請求項20に記載の方法。
  22. さらに、ステップ(a)から(d)までを繰り返すステップを含んでいる請求項21に記載の方法。
  23. さらに、共通入力ストリングから第1のフィルタ処理されたストリングと第2のフィルタ処理されたストリングを生成するように第1のフィルタ回路と第2のフィルタ回路をプログラムするステップを含んでいる請求項15に記載の方法。
  24. プログラムするステップはフィルタ処理の前に実行される請求項23に記載の方法。
  25. 共通入力ストリングをフィルタ処理し、第1のフィルタ処理されたストリングとその第1のフィルタ処理されたストリングとは異なる第2のフィルタ処理されたストリングを生成する手段と、
    第1のフィルタ処理されたストリングと第2のフィルタ処理されたストリングを圧縮する手段と、
    それぞれ第1のフィルタ処理されたストリングと第2のフィルタ処理されたストリングを使用してそれぞれ第1の内容アドレス・メモリ・ブロックと第2の内容アドレス・メモリ・ブロック内のルックアップを実行する手段と
    を備える装置。
  26. さらに、ルックアップを同時実行する手段を備える請求項25に記載の装置。
  27. さらに、ビット位置が連続して埋められているコンパランド・ストリングを生成する手段を備える請求項25に記載の装置。
  28. 第1のコンパランドの第1の入力ビットを第1のビット位置から第2のコンパランドの異なるビット位置に移動させる手段と、
    第2のコンパランドを第1の内容アドレス・メモリ・ブロックの第1の内容アドレス・メモリ・アレイに格納されているデータと比較する手段とを備える装置。
  29. さらに、
    第1のコンパランドの第2の入力ビットを第2のビット位置から第3のコンパランドの異なるビット位置に移動させる手段と、
    第3のコンパランドを第2の内容アドレス・メモリ・ブロックの第2の内容アドレス・メモリ・アレイに格納されているデータと比較する手段とを備える請求項28に記載の方法。
JP2003522942A 2001-08-22 2002-08-21 内容アドレス・メモリ内の異なるテーブルの同時サーチ Expired - Fee Related JP4076497B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/935,997 US6744652B2 (en) 2001-08-22 2001-08-22 Concurrent searching of different tables within a content addressable memory
PCT/US2002/026636 WO2003019571A1 (en) 2001-08-22 2002-08-21 Concurrent searching of different tables within a content addressable memory

Publications (3)

Publication Number Publication Date
JP2005501448A JP2005501448A (ja) 2005-01-13
JP2005501448A5 true JP2005501448A5 (ja) 2005-11-17
JP4076497B2 JP4076497B2 (ja) 2008-04-16

Family

ID=25468029

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003522942A Expired - Fee Related JP4076497B2 (ja) 2001-08-22 2002-08-21 内容アドレス・メモリ内の異なるテーブルの同時サーチ

Country Status (5)

Country Link
US (2) US6744652B2 (ja)
EP (1) EP1425755B1 (ja)
JP (1) JP4076497B2 (ja)
DE (1) DE60216938T2 (ja)
WO (1) WO2003019571A1 (ja)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6744652B2 (en) * 2001-08-22 2004-06-01 Netlogic Microsystems, Inc. Concurrent searching of different tables within a content addressable memory
JP3979486B2 (ja) * 2001-09-12 2007-09-19 株式会社ルネサステクノロジ 不揮発性記憶装置およびデータ格納方法
US7065083B1 (en) * 2001-10-04 2006-06-20 Cisco Technology, Inc. Method and apparatus for dynamically generating lookup words for content-addressable memories
US7210003B2 (en) * 2001-10-31 2007-04-24 Netlogic Microsystems, Inc. Comparand generation in a content addressable memory
US6993622B2 (en) * 2001-10-31 2006-01-31 Netlogic Microsystems, Inc. Bit level programming interface in a content addressable memory
JP4420324B2 (ja) * 2001-11-01 2010-02-24 ベリサイン・インコーポレイテッド 高速非並行制御されたデータベース
US7813346B1 (en) * 2001-11-21 2010-10-12 Juniper Networks, Inc. Filter-based forwarding in a network
US7401180B1 (en) * 2001-12-27 2008-07-15 Netlogic Microsystems, Inc. Content addressable memory (CAM) device having selectable access and method therefor
US7301961B1 (en) 2001-12-27 2007-11-27 Cypress Semiconductor Corportion Method and apparatus for configuring signal lines according to idle codes
US7117300B1 (en) 2001-12-27 2006-10-03 James David V Method and apparatus for restricted search operation in content addressable memory (CAM) devices
US7237058B2 (en) * 2002-01-14 2007-06-26 Netlogic Microsystems, Inc. Input data selection for content addressable memory
US7219187B1 (en) * 2002-08-30 2007-05-15 Netlogic Microsystems, Inc. Search parameter table in a content addressable memory
US7680769B2 (en) * 2003-01-14 2010-03-16 International Business Machines Corporation Method of creating a database and search keys and for searching the database
US20060018142A1 (en) * 2003-08-11 2006-01-26 Varadarajan Srinivasan Concurrent searching of different tables within a content addressable memory
US7698118B2 (en) * 2004-04-15 2010-04-13 Mentor Graphics Corporation Logic design modeling and interconnection
GB0408868D0 (en) 2004-04-21 2004-05-26 Level 5 Networks Ltd Checking data integrity
GB0408870D0 (en) * 2004-04-21 2004-05-26 Level 5 Networks Ltd Processsing packet headers
US7739445B1 (en) * 2004-06-11 2010-06-15 Srinivasan Venkatachary Circuit, apparatus, and method for extracting multiple matching entries from a content addressable memory (CAM) device
EP1861778B1 (en) 2005-03-10 2017-06-21 Solarflare Communications Inc Data processing system
GB0506403D0 (en) 2005-03-30 2005-05-04 Level 5 Networks Ltd Routing tables
GB0505300D0 (en) 2005-03-15 2005-04-20 Level 5 Networks Ltd Transmitting data
US8230167B1 (en) 2005-06-29 2012-07-24 Netlogic Microsystems, Inc. Block mapping circuit and method for memory device
US7853578B1 (en) * 2005-12-09 2010-12-14 Marvell International Ltd. High-performance pattern matching
GB0600417D0 (en) 2006-01-10 2006-02-15 Level 5 Networks Inc Virtualisation support
US8006114B2 (en) * 2007-03-09 2011-08-23 Analog Devices, Inc. Software programmable timing architecture
US8085568B1 (en) 2007-06-29 2011-12-27 Netlogic Microsystems, Inc. Methods and circuits for placing unused content addressable memory (CAM) cells into low current states
US7814267B1 (en) 2008-02-04 2010-10-12 Netlogic Microsystems, Inc. Processor with compare operations based on any of multiple compare data segments
US7782645B1 (en) 2008-02-04 2010-08-24 Netlogic Microsystems, Inc. Selective encoding of data values for memory cell blocks
US8214305B1 (en) 2008-11-24 2012-07-03 Netlogic Microsystems, Inc. Pattern matching system and method for data streams, including deep packet inspection
US7907432B2 (en) * 2009-06-30 2011-03-15 Netlogic Microsystems, Inc. Content addressable memory device for simultaneously searching multiple flows
US9305115B1 (en) 2010-10-04 2016-04-05 Broadcom Corporation Method and apparatus for reducing power consumption during rule searches in a content search system
CN102122270B (zh) * 2011-02-23 2013-08-07 华为技术有限公司 在存储器中查找数据的方法和装置以及存储器
US8467213B1 (en) 2011-03-22 2013-06-18 Netlogic Microsystems, Inc. Power limiting in a content search system
US8861241B1 (en) 2011-09-01 2014-10-14 Netlogic Microsystems, Inc. Content search system having embedded power control units
US8639875B1 (en) 2011-09-06 2014-01-28 Netlogic Microsystems, Inc. Content search system having multiple pipelines
US9043448B1 (en) * 2012-05-08 2015-05-26 Gigamon Inc. Systems and methods for configuring a network component that involves TCAM
JP6170718B2 (ja) * 2012-11-21 2017-07-26 ルネサスエレクトロニクス株式会社 検索システム
ES2549188B1 (es) * 2014-04-23 2016-05-19 Univ Del Pais Vasco - Euskal Herriko Unibertsitatea (Upv/Ehu) Sistema y método de lectura y escritura de una memoria digital

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3648254A (en) 1969-12-31 1972-03-07 Ibm High-speed associative memory
US5046046A (en) 1978-03-10 1991-09-03 Intel Corporation Redundancy CAM using word line from memory
DE3801380A1 (de) 1987-01-20 1988-07-28 Nec Corp Zeichenfolge-erkennungsvorrichtung mit einem speicher, dessen speicherbereiche selektiv zugreifbar sind
US4845668A (en) 1987-12-10 1989-07-04 Raytheon Company Variable field content addressable memory
US4996666A (en) 1988-08-12 1991-02-26 Duluk Jr Jerome F Content-addressable memory system capable of fully parallel magnitude comparisons
US5088066A (en) 1989-02-10 1992-02-11 Intel Corporation Redundancy decoding circuit using n-channel transistors
US5319762A (en) 1990-09-07 1994-06-07 The Mitre Corporation Associative memory capable of matching a variable indicator in one string of characters with a portion of another string
JP2966638B2 (ja) 1992-04-17 1999-10-25 三菱電機株式会社 ダイナミック型連想メモリ装置
DE69324204T2 (de) 1992-10-22 1999-12-23 Cabletron Systems, Inc. Aufsuchen von Adressen bei Paketübertragung mittels Hashing und eines inhaltsadressierten Speichers
US5444649A (en) 1993-06-10 1995-08-22 Apple Computer, Inc. Associative memory system having configurable means for comparing fields in an array of stored data words with corresponding one or more fields in a supplied argument word
US5860085A (en) 1994-08-01 1999-01-12 Cypress Semiconductor Corporation Instruction set for a content addressable memory array with read/write circuits and an interface register logic block
JP3125884B2 (ja) 1995-04-18 2001-01-22 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン 内容アドレス記憶装置
US5642322A (en) 1995-05-24 1997-06-24 Kawasaki Steel Corporation Layout of semiconductor memory and content-addressable memory
US6041389A (en) 1995-11-16 2000-03-21 E Cirrus Logic, Inc. Memory architecture using content addressable memory, and systems and methods using the same
US5978885A (en) 1996-06-17 1999-11-02 Hewlett Packard Co. Method and apparatus for self-timing associative data memory
US6069573A (en) 1996-06-17 2000-05-30 Hewlett-Packard Company Match and match address signal prioritization in a content addressable memory encoder
US5956336A (en) 1996-09-27 1999-09-21 Motorola, Inc. Apparatus and method for concurrent search content addressable memory circuit
JP3036467B2 (ja) * 1997-06-19 2000-04-24 日本電気株式会社 最長一致検出装置
US6226710B1 (en) 1997-11-14 2001-05-01 Utmc Microelectronic Systems Inc. Content addressable memory (CAM) engine
US6161144A (en) 1998-01-23 2000-12-12 Alcatel Internetworking (Pe), Inc. Network switching device with concurrent key lookups
JP3196720B2 (ja) 1998-03-20 2001-08-06 日本電気株式会社 連想メモリ制御回路及び制御方法
US6424659B2 (en) 1998-07-17 2002-07-23 Network Equipment Technologies, Inc. Multi-layer switching apparatus and method
US6289414B1 (en) 1998-10-08 2001-09-11 Music Semiconductors, Inc. Partially ordered cams used in ternary hierarchical address searching/sorting
US6081440A (en) 1998-11-05 2000-06-27 Lara Technology, Inc. Ternary content addressable memory (CAM) having fast insertion and deletion of data values
US6275406B1 (en) 1999-09-10 2001-08-14 Sibercore Technologies, Inc. Content address memory circuit with redundant array and method for implementing the same
US6324087B1 (en) * 2000-06-08 2001-11-27 Netlogic Microsystems, Inc. Method and apparatus for partitioning a content addressable memory device
US6249467B1 (en) 1999-10-18 2001-06-19 Netlogic Microsystems, Inc Row redundancy in a content addressable memory
US6374326B1 (en) 1999-10-25 2002-04-16 Cisco Technology, Inc. Multiple bank CAM architecture and method for performing concurrent lookup operations
US6633953B2 (en) 2000-02-08 2003-10-14 Hywire Ltd. Range content-addressable memory
US6243281B1 (en) 2000-06-14 2001-06-05 Netlogic Microsystems, Inc. Method and apparatus for accessing a segment of CAM cells in an intra-row configurable CAM system
CA2313275C (en) 2000-06-30 2006-10-17 Mosaid Technologies Incorporated Searchline control circuit and power reduction method
US6629099B2 (en) * 2000-12-07 2003-09-30 Integrated Silicon Solution, Inc. Paralleled content addressable memory search engine
US20020126672A1 (en) 2001-01-10 2002-09-12 Nelson Chow Method and apparatus for a flexible and reconfigurable packet classifier using content addressable memory
US6373758B1 (en) 2001-02-23 2002-04-16 Hewlett-Packard Company System and method of operating a programmable column fail counter for redundancy allocation
US6691252B2 (en) 2001-02-23 2004-02-10 Hewlett-Packard Development Company, L.P. Cache test sequence for single-ported row repair CAM
US6525987B2 (en) 2001-05-23 2003-02-25 Tachyon Semiconductor Corporation Dynamically configured storage array utilizing a split-decoder
US6744652B2 (en) 2001-08-22 2004-06-01 Netlogic Microsystems, Inc. Concurrent searching of different tables within a content addressable memory
US7210003B2 (en) 2001-10-31 2007-04-24 Netlogic Microsystems, Inc. Comparand generation in a content addressable memory
US6993622B2 (en) 2001-10-31 2006-01-31 Netlogic Microsystems, Inc. Bit level programming interface in a content addressable memory
US7237058B2 (en) 2002-01-14 2007-06-26 Netlogic Microsystems, Inc. Input data selection for content addressable memory

Similar Documents

Publication Publication Date Title
JP2005501448A5 (ja)
TWI441177B (zh) 半導體記憶體裝置以及寫入操作期間用於降低單元啟動之方法
JP2696026B2 (ja) 半導体記憶装置
JP3317187B2 (ja) 半導体記憶装置
JP2005501369A5 (ja)
JP2008112508A (ja) メモリ回路、半導体装置及びメモリ回路の制御方法
JP5382661B2 (ja) 直列入力データを取り込む装置および方法
JPH04293135A (ja) メモリアクセス方式
KR100578141B1 (ko) 읽기 속도를 향상시킬 수 있는 낸드 플래시 메모리 장치
JP4808318B2 (ja) メモリアプリケーション用のハイブリッドデータi/oのデータ転送方法
JPH07134895A (ja) 半導体記憶装置及びその制御方法
JPH09134313A (ja) メモリ装置
JP4141775B2 (ja) 半導体集積回路装置
US7278072B2 (en) Method and auxiliary device for testing a RAM memory circuit
JPH10116223A (ja) 不揮発性メモリ素子のデータ書込装置及び方法
JP2825401B2 (ja) 半導体記憶装置
WO2021090711A1 (ja) データ処理装置および情報処理装置
JP2004206850A (ja) 半導体記憶装置
JP7096070B2 (ja) 多数決処理装置、半導体記憶装置及び情報データの多数決方法
KR20070003480A (ko) 버스트 모드에서 동작 속도를 향상시키기 위한 반도체메모리 장치 및 데이터 독출 방법
KR940022524A (ko) 오류 정정부호화 방법 및 장치
JP3281898B2 (ja) メモリ搭載半導体装置及びメモリテスト方法
JP3271155B2 (ja) データ制御装置
JPH07272498A (ja) 半導体メモリ
JP3580266B2 (ja) 半導体記憶装置