JP5389280B2 - アドレス合計比較書込み再符号化および比較削減のための方法および装置 - Google Patents
アドレス合計比較書込み再符号化および比較削減のための方法および装置 Download PDFInfo
- Publication number
- JP5389280B2 JP5389280B2 JP2012557311A JP2012557311A JP5389280B2 JP 5389280 B2 JP5389280 B2 JP 5389280B2 JP 2012557311 A JP2012557311 A JP 2012557311A JP 2012557311 A JP2012557311 A JP 2012557311A JP 5389280 B2 JP5389280 B2 JP 5389280B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- memory cell
- memory
- address
- comparison
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
- G06F7/506—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/02—Comparing digital values
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/50—Adding; Subtracting
- G06F7/501—Half or full adders, i.e. basic adder cells for one denomination
- G06F7/5016—Half or full adders, i.e. basic adder cells for one denomination forming at least one of the output signals directly from the minterms of the input signals, i.e. with a minimum number of gate levels
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
式1
Pi=(Ai&!Bi)|(!Ai&Bi) ここで、{Ai,Bi}={1,0}または{0,1}のとき、Pi=1である。
式2
Gi=Ai&Bi ここで、{Ai,Bi}={1,1}のとき、Gi=1である。
式3
Zi=!Ai&!Bi ここで、{Ai,Bi}={0,0}のとき、Zi=1である。
式4
Ai Ai-1+Bi Bi-1+Ci-1=Ri Ri-1
Gi=1およびGi-1=1であるGi Gi-1結合に対して、式4は、Ci-1の2つの可能状態{0,1}に関して評価され得る。Gi=1であるので、{Ai,Bi}={1,1}であり、Gi-1=1であるので、{Ai-1,Bi-1}={1,1}である。式4の評価により、キャリーイン値に依存して、Ri Ri-1という2つの結果を生成する以下の2つの状況が生じる。
式5
mismatch-Gi Gi-1=Gi&Gi-1&!Mi
mismatch-Gi Pi-1=(Gi&Pi-1&Mi&Mi-1)|(Gi&Pi-1&!Mi&!Mi-1)
mismatch-Gi Zi-1=Gi&Zi-1&Mi
mismatch-Pi Gi-1=Pi&Gi-1&Mi
mismatch-Pi Pi-1=(Pi&Pi-1&Mi&!Mi-1)|(Pi&Pi-1&!Mi&Mi-1)
mismatch-Pi Zi-1=Pi&Zi-1&!Mi
mismatch-Zi Gi-1=Zi&Gi-1&!Mi
mismatch-Zi Pi-1=(Zi&Pi-1&Mi&Mi-1)|(Zi&Pi-1&!Mi&!Mi-1)
mismatch-Zi Zi-1=Zi&Zi-1&Mi
式14
Si=(!Mi&!Mi-1)|(Mi&Mi-1)
式15
!Si=(!Mi&Mi-1)|(Mi&!Mi-1)
式14、15を使って、極小項BBとCCとFFとGGとが結合されて、先のテーブルの8つの極小項AA〜HHを、以下の最終極小項テーブル中の6つの極小項608〜610および614〜616に削減する。最終極小項テーブルについては、図6Bの記述とともに後でより詳しく説明する。
最終極小項のテーブル
式16
A12+B12+Cin=Ri
G12=1の場合、Cinの2つの可能状態{0,1}に関して式16を評価すればよい。G12=1であるので、{A12,B12}={1,1}である。式16の評価により、キャリーイン値に依存して、R12に対して2つの結果を生成する以下の2つの状況が生じる。
式17
mismatch-G12 Cin=(G12&!Cin&M12)|(G12&Cin&!M12)
mismatch-P12 Cin=(P12&!Cin&!M12)|(P12&Cin&M12)
mismatch-Z12 Cin=(Z12&!Cin&M12)|(Z12&Cin&!M12)
最終LSB極小項のテーブル
120 遠隔ユニット
125A 構成要素
125C 構成要素
125B 構成要素
125D 構成要素
130 遠隔ユニット
140 基地局
150 遠隔ユニット
180 順方向リンク信号
190 逆方向リンク信号
200 プロセッサシステム、処理システム
210 プロセッサ
212 命令実行パイプライン、パイプライン
214 制御論理
216 レジスタまたはラッチ
218 算術論理ユニット(ALU)
220 汎用レジスタ(GPR)ファイル
222 命令キャッシュ(Icache)
224 命令変換索引バッファ(ITLB)
226 データキャッシュ(Dcache)
228 データ変換索引バッファ(DTLB)
230 メインメモリ、メモリ
232 メモリインターフェース
234 入力/出力(I/O)インターフェース
236 周辺デバイス
300 A+B=K CAM回路
304 パルスラッチインターフェース
306 アドレス合計比較(SAC)信号論理回路
308 タグメモリおよびSACアレイ
310 新規タグT'書込みラッチおよびドライバインターフェース
400 第j行タグメモリ
406 新規SAC回路
408 終端SAC回路
412 ヒット論理回路
500 アドレス合計比較(SAC)信号論理回路、Pi回路
504 キーパー回路
505 クロック回路
510 アドレス合計比較(SAC)信号論理回路、!Pi回路
514 キーパー回路
515 クロック回路
520 アドレス合計比較(SAC)信号論理回路、Gi回路
524 キーパー回路
525 クロック回路
530 アドレス合計比較(SAC)信号論理回路、Zi回路
534 キーパー回路
535 クロック回路
550 メモリセル
552 交差結合インバータ
554 バッファインバータ
556 バッファインバータ
600 S信号回路
603 排他的NORゲート
607 インバータ
610 新規SAC回路
616 第1の極小項回路、新規SAC極小項回路
618 Gi-1、!Mi回路
619 Pi-1、Si回路
620 Zi-1、Mi回路
622 第2の極小項回路、新規SAC極小項回路
624 Gi-1、Mi回路
625 Pi-1、!Si回路
626 Zi-1、!Mi回路
628 クロック回路
630 キーパー回路
650 終端SAC回路
656 第1のLSB極小項回路、終端SAC極小項回路
658 !P12、!M12回路
659 P12、M12回路
662 第2のLSB極小項回路、終端SAC極小項回路
664 P12、!M12回路
665 !P12、M12回路
668 クロック回路
670 キーパー回路
Claims (20)
- アドレス合計比較(A+B=K)演算のための方法であって、AおよびBが、所与のアドレス入力信号であり、Kが、複数のメモリセルに格納された以前の値であり、
前記複数のメモリセルの各メモリセル中で、単一論理ゲート回路出力およびその反転を、前記メモリセルのアップデートに応答して生成するステップであって、各単一論理ゲート回路が、第1の入力として、関連するメモリセル出力を、第2の入力として、次に低い有効ビット隣接メモリセル出力を有するステップと、
前記メモリセルの各々において、各メモリセルに関連付けられた、前記A+B=K演算の一部分を、部分的ルックアップ比較回路内で生成するステップであって、前記対応するアドレス入力信号AおよびBが、読込みルックアップ比較演算中に、前記関連するメモリセル出力、ならびに前記生成された単一論理ゲート回路出力およびその反転と結合されるステップとを含む方法。 - 各メモリセルに関連付けられた前記A+B=K演算の前記一部分が、3層のトランジスタ内で生成される、請求項1に記載の方法。
- 前記トランジスタが、Nチャネル金属酸化膜半導体電界効果トランジスタ(NFET)である、請求項2に記載の方法。
- 前記アドレス合計比較(A+B=K)演算が連想メモリ(CAM)中で使われる、請求項1に記載の方法。
- 前記CAMが変換索引バッファ(TLB)中で使われる、請求項4に記載の方法。
- 前記単一論理ゲート回路が、
第iのメモリセル(Mi)および第i-1のメモリセル(Mi-1)を入力として有し、出力信号Si=(!Mi&!Mi-1)|(Mi&Mi-1)を生じる排他的NOR回路を備える、請求項1に記載の方法。 - A+Bが、前記格納されたK個の値の1つと等しいとき、各メモリセル中でヒット指示を生成するステップをさらに含む、請求項1に記載の方法。
- A+Bが、前記格納されたK個の値の1つと等しくないとき、連想メモリ中のタグアレイにA+Bを書き込むステップをさらに含む、請求項1に記載の方法。
- 前記メモリセルの各々において、前記A+B=K演算の一部分を生成する前記ステップが、
A+BがKと等しくないと判定すると、第1の極小項回路内でA+B=Kの第1の部分を計算して、ミス指示を生成するステップと、
A+BがKと等しくないと判定すると、第2の極小項回路内でA+B=Kの第2の部分を計算して、ミス指示を生成するステップとを含む、請求項1に記載の方法。 - 前記第2の極小項の結果との論理ORがとられた、前記第1の極小項回路の結果が、完全なA+B=K演算を含む、請求項9に記載の方法。
- アドレス合計比較(A+B=K)演算のための装置であって、AおよびBが、所与のアドレス入力信号であり、Kが、メモリセルに格納された以前の値であり、
第1の入力として、関連するメモリセル出力を、第2の入力として、次に低い有効ビット隣接メモリセル出力を有し、前記メモリセルのアップデートに応答して出力信号Sおよびその論理否定信号!Sを生成する、各メモリセルに含まれる単一論理ゲート回路と、
前記メモリセルの各々において、ルックアップ比較演算用に、各メモリセルに関連付けられた前記A+B=K演算の一部分を生成するアドレス合計比較回路であって、前記比較演算中、前記対応するアドレス入力信号AおよびBが、前記関連するメモリセル出力ならびに前記S信号および!S信号と結合可能にされるアドレス合計比較回路とを備える装置。 - 出力信号Pi=(Ai&!Bi)|(!Ai&Bi)を生じるPi回路と、
前記Pi出力信号の論理否定を生じる!Pi回路と、
出力信号Gi=Ai&Biを生じるGi回路と、
出力信号Zi=!Ai&!Biを生じるZi回路とを備え、
&が論理的AND関数であり、|が論理的OR関数であり、!が論理的否定関数である
請求項11に記載の装置。 - A+BがKと等しくないと判定すると、不一致を示す、!Pi&[(Gi-1&!Mi)|(Pi-1&Si)|(Zi-1&Mi)]に従って動作する第1の極小項回路をさらに備える、請求項12に記載の装置。
- A+BがKと等しくないと判定すると、不一致を示す、Pi&[(Gi-1&Mi)|(Pi-1&!Si)|(Zi-1&!Mi)]に従って動作する第2の極小項回路をさらに備える、請求項12に記載の装置。
- A+BがKと等しくないと判定すると、不一致を示す、Cin&[(!PLSB&!MLSB)|(PLSB&MLSB)]に従って動作する第1の最下位ビット(LSB)極小項回路をさらに備える、請求項12に記載の装置。
- A+BがKと等しくないと判定すると、不一致を示す、!Cin&[(PLSB&!MLSB)|(!PLSB&MLSB)]に従って動作する第2の最下位ビット(LSB)極小項回路をさらに備える、請求項12に記載の装置。
- アドレス合計比較(A+B=K)演算のための方法であって、AおよびBが、所与のアドレス入力信号であり、Kが、複数のメモリセルに格納された以前の値であり、
2つの隣接メモリビット(Mi、Mi-1)を結合して、メモリビット(Mi、Mi-1)の排他的NORとしての出力信号Siおよびその論理否定信号!Siを生成するステップと、
2つの隣接ビット(Ai、Ai-1、Bi、Bi-1)を、ルックアップ比較演算のためにメモリビットMi、!Miおよび出力Si、!Siと結合して、不一致を検出するステップであって、!が論理的否定関数であるステップとを含む方法。 - 出力信号Pi=(Ai&!Bi)|(!Ai&Bi)を生じるステップと、
前記Pi出力信号の論理否定を生じるステップと、
出力信号Gi=Ai&Biを生じるステップと、
出力信号Zi=!Ai&!Biを生じるステップとを含み、
&が論理的AND関数であり、|が論理的OR関数であり、!が論理的否定関数である
請求項17に記載の方法。 - A+BがKと等しくないと判定すると、不一致を示す第1の極小項回路を、!Pi&[(Gi-1&!Mi)|(Pi-1&Si)|(Zi-1&Mi)]に従って操作するステップをさらに含む、請求項18に記載の方法。
- A+BがKと等しくないと判定すると、不一致を示す第2の極小項回路を、Pi&[(Gi-1&Mi)|(Pi-1&!Si)|(Zi-1&!Mi)]に従って操作するステップをさらに含む、請求項18に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/727,623 US8369120B2 (en) | 2010-03-19 | 2010-03-19 | Methods and apparatus for sum of address compare write recode and compare reduction |
US12/727,623 | 2010-03-19 | ||
PCT/US2011/029052 WO2011116322A1 (en) | 2010-03-19 | 2011-03-18 | Methods and apparatus for sum of address compare in a content-addressable memory |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013522807A JP2013522807A (ja) | 2013-06-13 |
JP5389280B2 true JP5389280B2 (ja) | 2014-01-15 |
Family
ID=44263175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012557311A Expired - Fee Related JP5389280B2 (ja) | 2010-03-19 | 2011-03-18 | アドレス合計比較書込み再符号化および比較削減のための方法および装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8369120B2 (ja) |
EP (1) | EP2548111A1 (ja) |
JP (1) | JP5389280B2 (ja) |
KR (1) | KR101388168B1 (ja) |
CN (1) | CN102792263B (ja) |
WO (1) | WO2011116322A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9110778B2 (en) | 2012-11-08 | 2015-08-18 | International Business Machines Corporation | Address generation in an active memory device |
CN110580231B (zh) * | 2018-06-08 | 2022-03-25 | 龙芯中科技术股份有限公司 | 处理电路、缓冲器、存储器及处理器 |
CN110428359B (zh) * | 2019-08-09 | 2022-12-06 | 南京地平线机器人技术有限公司 | 用于处理感兴趣区域数据的装置和方法 |
US11200029B2 (en) * | 2020-04-16 | 2021-12-14 | Flashsilicon Incorporation | Extendable multiple-digit base-2n in-memory adder device |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6161164A (en) | 1996-09-16 | 2000-12-12 | International Business Machines Corp. | Content addressable memory accessed by the sum of two operands |
US6088763A (en) | 1998-03-16 | 2000-07-11 | International Business Machines Corporation | Method and apparatus for translating an effective address to a real address within a cache memory |
US6505270B1 (en) * | 1999-07-02 | 2003-01-07 | Lara Technology, Inc. | Content addressable memory having longest prefix matching function |
JP2001034537A (ja) * | 1999-07-23 | 2001-02-09 | Toshiba Corp | アドレス変換回路 |
US6373279B1 (en) * | 2000-05-05 | 2002-04-16 | Xilinx, Inc. | FPGA lookup table with dual ended writes for ram and shift register modes |
JP4033609B2 (ja) * | 2000-07-04 | 2008-01-16 | 株式会社ルネサステクノロジ | 半導体集積回路装置及びそれを用いた情報処理装置 |
US6384634B1 (en) * | 2001-02-21 | 2002-05-07 | Nortel Networks Limited | Elastic store: recovery and boundary verification |
KR100435804B1 (ko) * | 2002-06-28 | 2004-06-10 | 삼성전자주식회사 | 터너리 내용 주소화 메모리 장치 |
US7035127B1 (en) * | 2004-10-21 | 2006-04-25 | International Business Machines Corporation | Method and sum addressed cell encoder for enhanced compare and search timing for CAM compare |
-
2010
- 2010-03-19 US US12/727,623 patent/US8369120B2/en active Active
-
2011
- 2011-03-18 CN CN201180013881.5A patent/CN102792263B/zh not_active Expired - Fee Related
- 2011-03-18 EP EP11711224A patent/EP2548111A1/en not_active Withdrawn
- 2011-03-18 WO PCT/US2011/029052 patent/WO2011116322A1/en active Application Filing
- 2011-03-18 KR KR1020127027012A patent/KR101388168B1/ko not_active IP Right Cessation
- 2011-03-18 JP JP2012557311A patent/JP5389280B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
WO2011116322A1 (en) | 2011-09-22 |
CN102792263B (zh) | 2016-06-01 |
JP2013522807A (ja) | 2013-06-13 |
CN102792263A (zh) | 2012-11-21 |
KR20130005292A (ko) | 2013-01-15 |
US20110228580A1 (en) | 2011-09-22 |
US8369120B2 (en) | 2013-02-05 |
KR101388168B1 (ko) | 2014-04-22 |
EP2548111A1 (en) | 2013-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI699651B (zh) | 記憶體裝置及其操作方法 | |
US10884957B2 (en) | Pipeline circuit architecture to provide in-memory computation functionality | |
Jarollahi et al. | Algorithm and architecture for a low-power content-addressable memory based on sparse clustered networks | |
US20140189192A1 (en) | Apparatus and method for a multiple page size translation lookaside buffer (tlb) | |
JP5389280B2 (ja) | アドレス合計比較書込み再符号化および比較削減のための方法および装置 | |
CN105027137B (zh) | 用于针对增强型安全检查的页走查扩展的装置和方法 | |
CN102722451B (zh) | 采用物理地址预测访问高速缓存的装置 | |
US20220198023A1 (en) | Simulation state to detect transient execution attack | |
Bardizbanyan et al. | Speculative tag access for reduced energy dissipation in set-associative L1 data caches | |
CN100414518C (zh) | 改进的虚拟地址变换方法及其装置 | |
US8595465B1 (en) | Virtual address to physical address translation using prediction logic | |
Abumwais et al. | Dual-port content addressable memory for cache memory applications | |
US20190095442A1 (en) | Techniques to enable early detection of search misses to accelerate hash look-ups | |
US8171258B2 (en) | Address generation unit with pseudo sum to accelerate load/store operations | |
US7859937B2 (en) | Apparatus and method for controlling write access to a group of storage elements | |
JP2019533270A (ja) | 高連想度の連想メモリ(cam)アレイにおける複数ウェイ読出しのための面積効率の高いアーキテクチャ | |
US8768991B2 (en) | Mechanism to find first two values | |
US20220405209A1 (en) | Multi-stage cache tag with first stage tag size reduction | |
CN110580231B (zh) | 处理电路、缓冲器、存储器及处理器 | |
US20230317145A1 (en) | Method and apparatus to implement an integrated circuit to operate based on data access characteristics | |
US20230315331A1 (en) | Method and apparatus to implement an integrated circuit including both dynamic random-access memory (dram) and static random-access memory (sram) | |
US20230195417A1 (en) | Parallel computation of a logic operation, increment, and decrement of any portion of a sum | |
JP3559631B2 (ja) | 半導体メモリ及びデータ処理装置 | |
Chiou et al. | Design and Analysis of an Energy-efficient Duo-Core SRAM-based Compute-in-Memory Accelerator | |
Bukkapatnam et al. | VLSI implementation of low-power and area efficient parallel memory allocation with EC-TCAM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20130910 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131008 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5389280 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |