JP5631278B2 - 内容参照メモリ - Google Patents
内容参照メモリ Download PDFInfo
- Publication number
- JP5631278B2 JP5631278B2 JP2011174873A JP2011174873A JP5631278B2 JP 5631278 B2 JP5631278 B2 JP 5631278B2 JP 2011174873 A JP2011174873 A JP 2011174873A JP 2011174873 A JP2011174873 A JP 2011174873A JP 5631278 B2 JP5631278 B2 JP 5631278B2
- Authority
- JP
- Japan
- Prior art keywords
- bank
- address
- block
- entry
- search
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
[第1の実施形態]
図1は、本発明の実施の形態の半導体装置1を表わす図である。
メモリアレイ2は、内部参照メモリセル(CAMセル)であるユニットセルUCが行列状に配列される。
図3は、ブロック1〜256に属するバンクを表わす図である。
図7は、検索判定部14の概略構成を説明するための図である。
図8を参照してプリサーチ回路5で特定されたブロックに属するバンクからエントリのデータ(IPアドレスとホップ先アドレス)が出力される。
図9は、ブロック化支援回路13の構成を表わす図である。
消去部94は、ブロックごとにエントリ消去回路12を含む。
メモリA102は、メモリアレイ2内のバンクを表わす。
アドレスカウンタ101は、メモリA(バンク内)で使用されている末尾のエントリの番号をセレクタ103へ出力する。
1つのバンクに0〜n番目のエントリが使用され、アドレス順に0〜n番目のエントリが存在する場合に、エントリ消去回路は、k番目のエントリを消去する場合に、末尾に存在するn番目のエントリのデータを読み出して、k番目のエントリに上書きする。そして、n番目のエントリを未使用領域として解放し、使用領域を0〜(n−1)番目のエントリとする。これによって、消去したエントリを再利用することができる。
n番目のエントリ(アドレスがnとする)から読み出したデータをKey1+メモリBのiアドレスとする。Key1は、IPアドレスで、メモリBのiアドレスは、ホップ先アドレスである。
図13は、第2の実施形態の検索判定部14の例を表わす図である。
Claims (5)
- 複数のバンクを含み、検索対象のIPアドレスを格納するメモリアレイを備え、前記メモリアレイは、可変数のバンクからなる複数のブロックを含み、同一のブロックのバンクにはプリフィックスが同一のIPアドレスが格納され、
IPアドレスを検索データとして受けて、前記検索データと同一のIPアドレスがいずれのブロックに格納されているかをプリサーチするプリ検索部と、
前記プリサーチによって特定されたブロックから読み出されたIPアドレスと前記検索データとを比較する検索判定部とをさらに備えた、内容参照メモリ。 - 未使用バンクを表わす情報を保持するFIFOメモリを含みバンク管理部をさらに備え、
前記バンク管理部は、初期状態では、前記メモリアレイに含まれるすべてのバンクを表わす情報を前記FIFOメモリに格納し、前記IPアドレスをメモリアレイの未使用のバンクに書込み必要が生じた際には、前記FIFOメモリから未使用バンクを表わす情報を読み出して、読み出した情報に基づいて、前記未使用バンクを前記IPアドレスを書込むバンクとして割り当てる、請求項1記載の内容参照メモリ。 - ブロックに対応して、属するバンクを表わす情報を記憶するレジスタ群と、
前記バンク管理部によって新たに割り当てられたバンクを前記IPアドレスのプリフィックスに基づいて、いずれのブロックに属するかを特定して、特定されたブロックに対応する前記レジスタ群に前記新たに割り当てられたバンクを表わす情報を格納するブロック管理部とをさらに備えた、請求項2記載の内容参照メモリ。 - 各バンクは、複数のエントリを含み、
ブロックごとに、前記ブロックに属する書込対象のバンクのエントリの位置を示すアドレスカウンタと、
書込み時に、前記書込対象のバンクが属するブロックの前記アドレスカウンタで示されるエントリの位置に前記IPアドレスを書込み、その後前記アドレスカウンタの値を1だけ増加させる書込部とをさらに備えた、請求項3記載の内容参照メモリ。 - 前記バンク内のエントリを消去する際に、前記バンクの使用領域の末尾のエントリに格納されているデータで、前記消去するエントリを上書きし、その後、前記バンクが属するブロックの前記アドレスカウンタの値を1だけ減少させる消去部をさらに備え、
前記バンク管理部は、バンク内のすべてのエントリが消去された際に、前記消去されたバンクを表わす情報を前記FIFOメモリに格納する、請求項4記載の内容参照メモリ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011174873A JP5631278B2 (ja) | 2011-08-10 | 2011-08-10 | 内容参照メモリ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011174873A JP5631278B2 (ja) | 2011-08-10 | 2011-08-10 | 内容参照メモリ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013037750A JP2013037750A (ja) | 2013-02-21 |
JP5631278B2 true JP5631278B2 (ja) | 2014-11-26 |
Family
ID=47887230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011174873A Active JP5631278B2 (ja) | 2011-08-10 | 2011-08-10 | 内容参照メモリ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5631278B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5998381B2 (ja) * | 2012-05-06 | 2016-09-28 | 国立大学法人東北大学 | 半導体記憶装置 |
JP6659486B2 (ja) * | 2016-07-20 | 2020-03-04 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
-
2011
- 2011-08-10 JP JP2011174873A patent/JP5631278B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2013037750A (ja) | 2013-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8295286B2 (en) | Apparatus and method using hashing for efficiently implementing an IP lookup solution in hardware | |
JP5529976B2 (ja) | 高速ipルックアップのためのシストリック・アレイ・アーキテクチャ | |
US7782853B2 (en) | Apparatus and method of using fully configurable memory, multi-stage pipeline logic and an embedded processor to implement multi-bit trie algorithmic network search engine | |
US7986696B1 (en) | Method and apparatus for longest prefix matching | |
US8880507B2 (en) | Longest prefix match using binary search tree | |
US8780926B2 (en) | Updating prefix-compressed tries for IP route lookup | |
US20060155915A1 (en) | Database query processor | |
Bando et al. | Flashtrie: Hash-based prefix-compressed trie for IP route lookup beyond 100Gbps | |
US20080192754A1 (en) | Routing system and method for managing rule entries of ternary content addressable memory in the same | |
TWI382426B (zh) | 預測快取記憶體之存取位置的方法及系統 | |
US10944675B1 (en) | TCAM with multi region lookups and a single logical lookup | |
EP3276501B1 (en) | Traffic classification method and device, and storage medium | |
CN102377664A (zh) | 一种基于tcam的区域匹配装置和方法 | |
WO2015032216A1 (zh) | 路由查找方法及装置、B-Tree树结构的构建方法 | |
Mishra et al. | Duos-simple dual tcam architecture for routing tables with incremental update | |
US8180958B2 (en) | Key selection device and process for content-addressable memory | |
US20130297877A1 (en) | Managing buffer memory | |
EP2382635B1 (en) | Content assembly memory and method | |
US11886746B1 (en) | Algorithmic TCAM with storage activity-based read | |
US7924839B2 (en) | Mechanism to reduce lookup latency in a pipelined hardware implementation of a trie-based IP lookup algorithm | |
JP5631278B2 (ja) | 内容参照メモリ | |
JP2006246488A (ja) | ネットワーク・ルータ、アドレス処理方法及びコンピュータ・プログラム | |
Kuo et al. | A memory-efficient TCAM coprocessor for IPv4/IPv6 routing table update | |
US9916086B2 (en) | Content-addressable memory device | |
CN110334251B (zh) | 一种有效解决rehash冲突的元素序列生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140422 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140919 |
|
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: 20140930 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141007 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Ref document number: 5631278 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |