JP2011076688A - 連想メモリ - Google Patents
連想メモリ Download PDFInfo
- Publication number
- JP2011076688A JP2011076688A JP2009229601A JP2009229601A JP2011076688A JP 2011076688 A JP2011076688 A JP 2011076688A JP 2009229601 A JP2009229601 A JP 2009229601A JP 2009229601 A JP2009229601 A JP 2009229601A JP 2011076688 A JP2011076688 A JP 2011076688A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- data
- pulse
- determination
- signal
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C15/00—Digital 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/04—Digital 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
- Dram (AREA)
- Memory System (AREA)
Abstract
【解決手段】
連想メモリ100内の保存回路S1は参照データを保存する。比較回路C1は外部から検索データを受け、参照データと検索データとの距離(たとえばハミング距離)を求める。発振回路OC1は、比較回路C1が求めた距離に応じた発振周波数を有するパルス信号P1を出力する。同様に、発振回路OC2〜OCRは、対応する保存回路S2〜SR内の参照データと検索データとの距離に応じた発振周波数を有するパルス信号P2〜PRを出力する。
WTA回路20は、パルス信号P1〜PRを受ける。そして、最も発振周波数が高いパルス信号を出力した発振回路に対応する保存回路に保存された参照データを、検索データに最も類似した参照データ(Winner)に決定する。
【選択図】図1
Description
[全体構成]
図1を参照して、本発明の実施の形態による連想メモリ100は、メモリアレイ部10と、WTA(Winner Take All)回路20とを備える。
のユニットデータ保存回路USijの各々は、参照データのうちの対応する1ビットデータを記憶する。
比較回路C1は、第1行に配置された保存回路S1に対応する。比較回路C2は、第2行に配置された保存回路S2に対応する。同様に、比較回路CRは、第R行に配置された保存回路SRに対応する。
図2を参照して、ユニットデータ保存回路US11は、SRAM素子を構成する。ユニットデータ保存回路US11は、データをラッチするラッチ回路210と、n型MOSトランジスタ201、202とを含む。n型MOSトランジスタ201及び202は直列に接続される。そして、n型MOSトランジスタ201と202との間には、ラッチ回路210が接続される。n型MOSトランジスタ201及び202のゲートは、それぞれワード線WL1に接続される。
発振回路OC1は、保存回路S1に記憶されたWビット幅の参照データとWビット幅の検索データとの距離(ハミング距離)に応じた発振周波数のパルス信号P1を出力する。具体的には、参照データと検索データとの距離が小さい程、つまり、参照データが検索データに類似する程、発振回路OC1は、高い発振周波数のパルス信号P1を出力する。
要するに、遅延回路DC11は、インバータ段数が少ないパス(ショートパス)と、インバータ段数が多いパス(ロングパス)と、参照ビットデータと検索ビットデータとのハミング距離に応じてショートパス及びロングパスのいずれかを選択する段数選択回路とを備える。
WTA回路20は、発振回路OC1〜OCRからパルス信号P1〜PRを受ける。そして、パルス信号P1〜PRの発振周波数に基づいて、検索データに最も類似した参照データ(Winner)を決定する。
上述のとおり、第1の実施の形態による連想メモリ100では、WTA回路20が、パルス信号P1〜PRの発振周波数に基づいて、Winnerとなる参照データを決定する。したがって、最大の発振周波数を有するパルス信号Piと、2番目に高い発振周波数を有するパルス信号Piとの発振周波数の差が大きいほど、Winnerの誤検出が起こりにくい。
連想メモリ100内のWTA回路20では、図5に示すように、全ての判定回路JC1〜JCRが1つのラッチ指示ノードN40に接続される。WTA回路20のラッチ指示ノードN40は、全ての判定回路JC1〜JCRに接続されるために長い。そのため、ラッチ指示ノードN40の負荷容量は大きい。したがって、放電回路250内のn型MOSトランジスタがオンになってから、ラッチ指示ノードN40の電圧レベルが接地電圧に落ちるまでに時間がかかる。ラッチ指示ノードN40の電圧レベルを落とすのに時間がかかれば、Winnerの決定も時間がかかる。
第1の実施の形態では、データユニット保存回路USijごとに遅延回路DCijを設けた。しかしながら、このような構成では、使用されるトランジスタ素子数が多くなる。そのため、1つの遅延回路を複数のデータユニット保存回路に対応させてもよい。
遅延回路DLCはL(Lは2以上の自然数)個の参照ビットデータと検索ビットデータと比較結果に応じて遅延時間を設定することもできる。より具体的には、遅延回路DLCは、複数の遅延段を含み、利用する遅延段数に応じてL+1個の遅延時間を設定できる。遅延回路DLCは、L個の比較結果に応じて、L+1個の遅延時間(パス)の中から1つの遅延時間(パス)を選択する。遅延回路DLCに入力された信号は、選択された遅延時間だけ遅延して次段の遅延回路DLCに出力される。要するに、L個の参照ビットデータと検索ビットデータとを比較する場合、遅延回路DLCは、L+1個のパスを備える。各パスは異なる遅延時間が設定される。
上述の連想メモリ100は、検索データに最も近い参照データを検索する。しかしながら、検索データに近い参照データを、検索データに近い順に複数検索できる方が好ましい場合がある。
第5の実施の形態による連想メモリ200は、フィードバック回路50を用いて発振回路OCiの出力を無効化することにより、検索データに近い参照データを検索データに近い順に複数検索できる。しかしながら、1回の検索処理で1つの参照データしか検索できない。したがって、検索データに近い参照データの複数検索する場合、希望する参照データ数と同じ回数の検索処理を実行しなければならない。
上述の実施の形態では、ハミング距離を適用した場合の連想メモリについて説明した。しかしながら、本発明による連想メモリは、マンハッタン距離にも適用できる。
遅延回路DJ2内の遅延段の遅延時間は、遅延段DEL1の2倍とする。つまり、桁が上がるに従って遅延時間ΔTを長く設定する。これにより、桁が最上位ビットに近いほど、長い遅延時間が設定される。つまり、マンハッタン距離が大きい程、遅延時間が長くなる。
本発明による連想メモリは、ハミング距離やマンハッタン距離だけでなく、ユークリッド距離にも適用できる。
上述の実施の形態において、WTA回路20(図5)やWTA回路25(図9)について説明した。しかしながら、WTA回路は、図5や図9に限定されない。
図22は、WTA回路の他の例を示す。図22を参照して、WTA回路350は、検知回路351と、複数の判定回路JC11〜JC1Rとを備える。判定回路JC11は発振回路OC1に対応し、発振回路OC1の出力信号を受ける。同様に、判定回路JC12は発振回路OC2に対応し、発振回路JC1Rは発振回路OCRに対応する。
判定回路JC11は、判定回路JC1と比較して、放電回路250及びクロック生成回路253を有さない。他の構成は判定回路JC1と同じである。判定回路JC12〜JC1Rの構成は、判定回路JC11と同じである。
検知回路351は、発信回路OC1〜OCRの出力を受け、最も早く出力されたパルス信号を検知する。検知回路351は、最も早く出力されたパルス信号を受けたとき、検知信号を出力する。より具体的には、検知回路351は、各判定回路JC11〜JC1R内のインバータI20の出力を受ける。そして、いずれかのインバータI20から最初にパルス信号を受けたとき、検知信号を出力する。
判定回路JC11〜JC12内のラッチ回路252は、インバータI20の出力を受ける。つまり、対応する発振回路OC1〜OCRの出力信号を受ける。そして、検知信号を受けたとき、発信回路OC1〜OCRからの出力信号をラッチする。
判定回路JC11が、最も早くパルス信号を受けるとき(つまり、発振回路OC1が最も周波数の高いパルス信号を出力するとき)、判定回路JC11内のラッチ回路252は、Hレベルの信号をラッチする。そして、他の判定回路JC12〜JC1R内のラッチ回路252は、Lレベルの信号をラッチする。以上の結果、判定回路JC11はWinnerを示すHレベルの判定信号JS1を出力し、他の判定回路JC12〜JC1Rは、Looserを示す判定回路JS2〜JSRを出力する。
検知回路350は、各判定回路JC11〜JC1R内のインバータI20の出力を受けるワイヤードOR回路であってもよいし、複数段のOR回路で構成されてもよい。
以上、本発明の実施の形態を説明したが、上述した実施の形態は本発明を実施するための例示に過ぎない。よって、本発明は上述した実施の形態に限定されることなく、その趣旨を逸脱しない範囲内で上述した実施の形態を適宜変形して実施することが可能である。
2 行デコーダ
3 列デコーダ
4 Read/Write回路
5 検索データ保存回路
10 メモリアレイ部
20 WTA回路
30 プリチャージ回路
35 分周部
31 クロック生成回路
40 カウンタ部
50 フィードバック回路
100,110,200,300,400 連想メモリ
250 放電回路
S1〜SR 保存回路
C1〜CR 比較回路
Claims (12)
- 複数の参照データを保存する保存手段と、
入力された検索データと、前記複数の参照データの各々とを並列に比較して、前記検索データと前記参照データとの距離を、前記参照データごとに求める比較手段と、
前記求めた距離に応じた周波数を有するパルス信号を前記参照データごとに生成するパルス生成手段と、
前記生成された複数のパルス信号の周波数に基づいて、前記複数の参照データのうち、前記検索データに最も近い参照データを決定する決定手段とを備える連想メモリ。 - 請求項1に記載の連想メモリであって、
前記パルス生成手段は、
前記複数の参照データに対応した複数の発振手段を備え、
前記各発振手段は、前記検索データと前記対応する参照データとの距離が小さいほど、周波数の高い前記パルス信号を出力し、
前記決定手段は、発振周波数の最も高いパルス信号を出力した発振手段に対応した参照データを、前記検索データに最も近い参照データに決定する連想メモリ。 - 請求項2に記載の連想メモリであって、
前記決定手段はさらに、
前記複数の発振手段に対応した複数の判定手段を備え、
前記決定手段は、前記複数の判定手段のうち、前記発振手段からのパルス信号を最も早く受信した判定手段に基づいて、前記検索データに最も近い参照データを決定する連想メモリ。 - 請求項2又は請求項3に記載の連想メモリであってさらに、
前記発振回路に対応した複数の分周手段を備え、
各分周手段は、対応する発振手段から出力されたパルス信号を所定の分周比で分周して、対応する判定手段に出力する連想メモリ。 - 請求項3に記載の連想メモリであって、
前記決定手段は、
前記複数の判定手段に接続されたラッチ指示ノードと、
前記ラッチ指示ノードを充電する充電手段とを備え、
前記各判定手段は、
対応する前記発振手段からの出力信号を受け、前記出力信号が前記パルス信号であるとき前記ラッチ指示ノードを放電する放電手段と、
前記ラッチ指示ノードが放電されたときに前記放電手段が受けている前記出力信号をラッチするラッチ手段とを備える連想メモリ。 - 請求項2に記載の連想メモリであって、
前記決定手段は、
複数段のトーナメント式に接続された複数の判定手段を備え、
第1段目に配置された複数の判定手段の各々は、
各々が対応する発振手段の出力信号を受ける複数の第1のパルス判定手段と、
前記複数の第1のパルス判定手段に接続されたパルス受付判定ノードと、
前記パルス受付判定ノードを充電する充電手段とを備え、
前記第1のパルス判定手段は、
前記対応する発振手段の出力信号としてパルス信号を受けたとき、前記パルス受付ノードを放電する第1の放電手段と、
クロック信号を受けたとき前記第1の放電手段が受けている出力信号をラッチするラッチ手段とを備え、
第2段目以降に配置された判定手段は、
各々が、前段の対応する判定手段のパルス受付判定ノードに接続された、複数の第2のパルス判定手段と、
前記複数の第2のパルス判定手段が接続されたパルス受付判定ノードと、
前記充電手段とを備え、
前記第2のパルス判定手段は、
前段の対応するトーナメント判定手段のパルス受付判定ノードが放電されたとき、前記パルス受付ノードを放電する第2の放電手段を備え、
最上段の判定手段はさらに、
前記パルス受付判定ノードが放電されたとき、クロック信号を出力するクロック信号生成手段を備える連想メモリ。 - 請求項2又は請求項3に記載の連想メモリであって、
前記発信手段は、直列に接続された複数のインバータと、
前記検索データと前記対応する参照データとの距離に応じて、前記インバータの段数を選択する段数選択手段とを備える連想メモリ。 - 請求項2に記載の連想メモリであって、
前記決定手段は、
複数の前記発振手段に対応する複数のカウンタ手段を備え、
前記カウンタ手段は、対応する発振手段からパルス信号を受け、所定数のパルスを受けたとき活性化された出力信号を生成する連想メモリ。 - 請求項2に記載の連想メモリであってさらに、
j(jは、1<j≦kを満たす整数、kは、2以上の整数)回目の検索において、j−1回目までに決定手段により決定された参照データに対応する発振手段から出力されたパルス信号を無効化するパルス無効化手段を備えることを特徴とする連想メモリ。 - 請求項2に記載の連想メモリであって、
前記参照データは、複数の参照ビットデータを含み、
前記検索データは、前記参照ビットデータに対応する複数の検索ビットデータを含み、
前記比較手段は、前記各参照ビットデータと前記各検索ビットデータとをハミング距離に基づいて比較し、
前記発信手段は、
直列に接続される複数の遅延手段を備え、
前記各遅延手段は、L+1個(Lは自然数)通りの遅延時間を設定可能であり、L個の参照ビットデータ及び検索ビットデータの比較結果に応じて、前記遅延時間を選択する連想メモリ。 - 請求項2に記載の連想メモリであって、
前記参照データは、複数の参照ビットデータを含み、
前記検索データは、前記参照ビットデータに対応する複数の検索ビットデータを含み、
前記比較手段は、前記参照ビットデータと前記検索ビットデータとをマンハッタン距離に基づいて比較し、
前記発信手段は、
直列に接続される複数の遅延手段を備え、
前記各遅延手段は、2k(kは自然数)通りの遅延時間を設定可能であり、k個の参照ビットデータ及び検索ビットデータの比較結果に応じて、前記遅延時間を選択する連想メモリ。 - 請求項3に記載の連想メモリであって、
前記決定手段はさらに、
前記複数の発信手段から出力されるパルス信号のうち、最も早く出力されたパルス信号を検知する検知手段を備え、
前記各判定手段は、
対応する前記発信手段から出力信号を受け、前記検知手段が最も早く出力されたパルス信号を検知したとき、前記出力信号をラッチする、連想メモリ。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009229601A JP5224601B2 (ja) | 2009-10-01 | 2009-10-01 | 連想メモリ |
US13/499,112 US8587980B2 (en) | 2009-10-01 | 2010-09-24 | Associative memory |
PCT/JP2010/066563 WO2011040335A1 (ja) | 2009-10-01 | 2010-09-24 | 連想メモリ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009229601A JP5224601B2 (ja) | 2009-10-01 | 2009-10-01 | 連想メモリ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011076688A true JP2011076688A (ja) | 2011-04-14 |
JP5224601B2 JP5224601B2 (ja) | 2013-07-03 |
Family
ID=43826155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009229601A Expired - Fee Related JP5224601B2 (ja) | 2009-10-01 | 2009-10-01 | 連想メモリ |
Country Status (3)
Country | Link |
---|---|
US (1) | US8587980B2 (ja) |
JP (1) | JP5224601B2 (ja) |
WO (1) | WO2011040335A1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014154196A (ja) * | 2013-02-13 | 2014-08-25 | Hiroshima Univ | 連想メモリ |
JPWO2014208051A1 (ja) * | 2013-06-26 | 2017-02-23 | 日本電気株式会社 | 連想メモリセル及び連想メモリ |
US10643701B2 (en) | 2016-05-13 | 2020-05-05 | Tohoku University | Memory device and memory system |
US10741228B2 (en) | 2016-03-28 | 2020-08-11 | Tohoku University | Memory device |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5800422B2 (ja) * | 2011-11-07 | 2015-10-28 | 国立大学法人広島大学 | 連想メモリ |
JP5916563B2 (ja) * | 2012-08-23 | 2016-05-11 | 国立大学法人広島大学 | 連想メモリ |
US10439599B2 (en) * | 2015-09-24 | 2019-10-08 | Intel Corporation | Non-boolean associative processor degree of match and winner take all circuits |
US11837289B2 (en) * | 2021-08-31 | 2023-12-05 | International Business Machines Corporation | Compact low-leakage multi-bit compare CAM cell |
EP4283620A1 (en) * | 2022-05-24 | 2023-11-29 | Nokia Technologies Oy | Determining distances between vectors |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002288985A (ja) * | 2001-01-19 | 2002-10-04 | Univ Hiroshima | 半導体連想メモリ |
JP2005209317A (ja) * | 2004-01-26 | 2005-08-04 | Hiroshima Univ | 最小マンハッタン距離検索連想メモリ装置 |
JP2009134810A (ja) * | 2007-11-30 | 2009-06-18 | Hiroshima Univ | 連想メモリおよびそれを用いた検索システム |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE60211761T2 (de) | 2001-01-19 | 2007-05-24 | President Of Hiroshima University, Higashihiroshima | Inhaltsadressierbarer Halbleiterspeicher |
US7852652B1 (en) * | 2007-06-29 | 2010-12-14 | Netlogic Microsystems, Inc. | Match line precharge circuits and methods for content addressable memory (CAM) device |
-
2009
- 2009-10-01 JP JP2009229601A patent/JP5224601B2/ja not_active Expired - Fee Related
-
2010
- 2010-09-24 WO PCT/JP2010/066563 patent/WO2011040335A1/ja active Application Filing
- 2010-09-24 US US13/499,112 patent/US8587980B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002288985A (ja) * | 2001-01-19 | 2002-10-04 | Univ Hiroshima | 半導体連想メモリ |
JP2005209317A (ja) * | 2004-01-26 | 2005-08-04 | Hiroshima Univ | 最小マンハッタン距離検索連想メモリ装置 |
JP2009134810A (ja) * | 2007-11-30 | 2009-06-18 | Hiroshima Univ | 連想メモリおよびそれを用いた検索システム |
Non-Patent Citations (1)
Title |
---|
JPN6012057979; M. IKEDA, K. ASADA: 'Time-Domain Minimum-Distance Detector and Its Application to Low Power Coding Scheme on Chip Interfa' Proceedings of the 24th European Solid-State Circuits Conference (ESSCIRC 1998) , 19980922, pp.464-467, IEEE * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014154196A (ja) * | 2013-02-13 | 2014-08-25 | Hiroshima Univ | 連想メモリ |
JPWO2014208051A1 (ja) * | 2013-06-26 | 2017-02-23 | 日本電気株式会社 | 連想メモリセル及び連想メモリ |
US10262738B2 (en) | 2013-06-26 | 2019-04-16 | Nec Corporation | Content addressable memory cell and content addressable memory |
US10741228B2 (en) | 2016-03-28 | 2020-08-11 | Tohoku University | Memory device |
US10643701B2 (en) | 2016-05-13 | 2020-05-05 | Tohoku University | Memory device and memory system |
Also Published As
Publication number | Publication date |
---|---|
US20120188811A1 (en) | 2012-07-26 |
US8587980B2 (en) | 2013-11-19 |
JP5224601B2 (ja) | 2013-07-03 |
WO2011040335A1 (ja) | 2011-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5224601B2 (ja) | 連想メモリ | |
KR100810778B1 (ko) | 다중매치검출회로 및 방법 | |
US9620214B2 (en) | Content addressable memory with reduced power consumption and increased search operation speed | |
JP5893465B2 (ja) | 連想記憶装置 | |
US10770132B1 (en) | SRAM with burst mode address comparator | |
US11527282B2 (en) | SRAM with burst mode operation | |
US8400803B2 (en) | Content addressable memory device | |
WO2000041055A2 (en) | Match line control circuit for content addressable memory | |
JP2009134810A (ja) | 連想メモリおよびそれを用いた検索システム | |
JP5800422B2 (ja) | 連想メモリ | |
CN117271436B (zh) | 基于sram的电流镜互补存内计算宏电路、及芯片 | |
US6795325B1 (en) | Semiconductor memory | |
CN101950584B (zh) | 内容定址存储器及其设计方法 | |
US9911496B2 (en) | Associative memory for realizing a k-nearest neighbors algorithm | |
Yeo et al. | State of the art ML sensing schemes for low-power CAM in nano-scale CMOS technologies | |
Sreenivasa Rao et al. | Design and Implementation CAM Architecture Memory Cell Using DMLSA Technique | |
Jia et al. | A low power and high speed CAM design using pulsed voltage for search-line | |
Tan et al. | A new match line sensing technique in Content Addressable Memory | |
Manikandan et al. | Design of novel CAM core cell structures for an efficient implementation of low power BCAM system | |
KR20100138445A (ko) | 반도체 장치 및 반도체 장치의 내부전압 발생회로 | |
JPWO2010013295A1 (ja) | オフセット除去回路、それを備えた連想メモリおよびオフセット電圧の除去方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120607 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121106 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121218 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130213 |
|
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: 20130305 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130311 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5224601 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160322 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |