TWI809944B - 用以進行記憶體內搜尋之混和型內容可定址記憶體及其運作方法 - Google Patents

用以進行記憶體內搜尋之混和型內容可定址記憶體及其運作方法 Download PDF

Info

Publication number
TWI809944B
TWI809944B TW111123172A TW111123172A TWI809944B TW I809944 B TWI809944 B TW I809944B TW 111123172 A TW111123172 A TW 111123172A TW 111123172 A TW111123172 A TW 111123172A TW I809944 B TWI809944 B TW I809944B
Authority
TW
Taiwan
Prior art keywords
cam
threshold voltage
input voltage
low
memory
Prior art date
Application number
TW111123172A
Other languages
English (en)
Other versions
TW202401435A (zh
Inventor
曾柏皓
栢添賜
李峯旻
Original Assignee
旺宏電子股份有限公司
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 旺宏電子股份有限公司 filed Critical 旺宏電子股份有限公司
Priority to TW111123172A priority Critical patent/TWI809944B/zh
Application granted granted Critical
Publication of TWI809944B publication Critical patent/TWI809944B/zh
Publication of TW202401435A publication Critical patent/TW202401435A/zh

Links

Images

Landscapes

  • Dram (AREA)
  • Circuits Of Receivers In General (AREA)
  • Communication Control (AREA)

Abstract

一種用以進行記憶體內搜尋之混和型內容可定址記憶體及其運作方法。內容可定址記憶體包括數個CAM串列及至少一感測放大器電路。各個CAM串列包括數個CAM記憶胞。這些CAM記憶胞儲存數筆既有資料。感測放大器電路連接於這些CAM串列。數筆搜尋資料輸入至這些CAM串列。透過一交集運算,對從各個CAM串列之這些CAM記憶胞所獲得之數個記憶胞匹配結果進行整合,而獲得一串列配對結果。透過一聯集運算,對從這些CAM串列所獲得之這些串列配對結果進行整合。

Description

用以進行記憶體內搜尋之混和型內容可定址記 憶體及其運作方法
本揭露是有關於一種記憶體及其運作方法,且特別是有關於一種用以進行記憶體內搜尋之混和型內容可定址記憶體及其運作方法。
隨著人工智慧技術的發展,記憶體內搜尋技術已經廣泛使用於各種電子裝置。用以進行記憶體內搜尋之內容可定址記憶體可以透過NOR架構或NAND架構來實現。NOR架構具有較高的搜尋速度,但須耗費較大的功率。NAND架構只需要較少的功率,但具有較低的搜尋速度。研究人員正努力開發一種新的內容可定址記憶體,以求同時取得NOR架構與NAND架構之優點。
本揭露係有關於一種用以進行記憶體內搜尋之混和型內容可定址記憶體(content addressable memory,CAM)及其運作方法。混合型內容可定址記憶體同時具有NOR架構與NAND架構的優點,使得搜尋速度與功率耗損都能更獲得改善。
根據本揭露之一方面,提出一種用以進行記憶體內搜尋之內容可定址記憶體。內容可定址記憶體包括數個CAM串列及至少一感測放大器電路。各個CAM串列包括數個CAM記憶胞。這些CAM記憶胞儲存數筆既有資料。感測放大器電路連接於這些CAM串列。數筆搜尋資料輸入至這些CAM串列。透過一交集運算(AND operation),對從各個CAM串列之這些CAM記憶胞所獲得之數個記憶胞匹配結果進行整合,而獲得一串列配對結果。透過一聯集運算(OR operation),對從這些CAM串列所獲得之這些串列配對結果進行整合。
根據本揭露之另一方面,提出一種用以進行記憶體內搜尋之內容可定址記憶體之運作方法。內容可定址記憶體之運作方法包括以下步驟。輸入數筆搜尋資料至數個CAM串列。各個CAM串列包括數個CAM記憶胞。這些CAM記憶胞儲存數筆既有資料。透過一交集運算(AND operation),對從各個CAM串列之這些CAM記憶胞所獲得之數個記憶胞匹配結果進行整合,而獲得一串列配對結果。透過一聯集運算(OR operation),對從這些CAM串列所獲得之這些串列配對結果進行整合。
為了對本揭露之上述及其他方面有更佳的瞭解,下文特舉實施例,並配合所附圖式詳細說明如下:
100A,100B,100C,200A,200B,300A,300B,400A,400B,400C,400D,500,600A,600B,700A,700B,700C,800A,800B:內容可定址記憶體
CH:快取電路
CL,CL’:CAM記憶胞
Dsr:搜尋資料
Dst:既有資料
EC:編碼器
LG:邏輯運算電路
MBL:主位元線
ML:匹配線
Rc:記憶胞匹配結果
Rs:串列配對結果
RSC:比對結果
S110,S120,S130:步驟
SA:感測放大器電路
SeL,SeL’:輸入線
ST:CAM串列
Sta:致動訊號
TH0:高臨界電壓
TH1:低臨界電壓
TS:電晶體
UC:單元記憶胞
VH:高輸入電壓
VL:低輸入電壓
VM:預定電壓
Vref:參考電位
第1A圖繪示根據一實施例用以進行記憶體內搜尋之內容可定址記憶體(content addressable memory,CAM)。
第1B圖繪示根據另一實施例之用以進行記憶體內搜尋之內容可定址記憶體。
第1C圖繪示其繪示根據另一實施例之用以進行記憶體內搜尋之內容可定址記憶體。
第2圖繪示根據一實施例用以進行記憶體內搜尋之內容可定址記憶體的操作方法的流程圖。
第3A圖繪示根據另一實施例之用以進行記憶體內搜尋之內容可定址記憶體。
第3B圖繪示根據另一實施例用以進行記憶體內計算之內容可定址記憶體。
第4A圖繪示根據另一實施例用以進行記憶體內計算之內容可定址記憶體。
第4B圖繪示根據另一實施例用以進行記憶體內計算之內容可定址記憶體。
第5A圖說明根據一實施例之高輸入電壓、低輸入電壓、高臨 界電壓與低臨界電壓的關係。
第5B圖繪示根據一實施例之既有資料與搜尋資料之關係。
第6A圖示例說明內容可定址記憶體之運作方法。
第6B圖示例說明內容可定址記憶體之運作方法。
第6C圖示例說明內容可定址記憶體之運作方法。
第6D圖示例說明內容可定址記憶體之運作方法。
第7圖繪示根據一實施例之具有陣列結構之內容可定址記憶體。
第8A圖說明根據另一實施例之高輸入電壓、低輸入電壓、高臨界電壓與低臨界電壓之關係。
第8B圖繪示根據一實施例之既有資料與搜尋資料之關係。
第9A圖示例說明內容可定址記憶體之運作方法。
第9B圖示例說明內容可定址記憶體之運作方法。
第10圖繪示根據相反模式之既有資料與搜尋資料的關係。
第11A圖示例說明內容可定址記憶體之運作方法。
第11B圖示例說明內容可定址記憶體之運作方法。
第11C圖示例說明內容可定址記憶體之運作方法。
第12A圖說明根據一實施例之多個CAM串列的運作方式。
第12B圖說明根據一實施例之多個CAM串列的運作方式。
第13A圖說明根據一實施例之內容可定址記憶體之電路架構。
第13B圖說明根據一實施例之內容可定址記憶體之電路架 構。
請參照第1A圖,其繪示根據一實施例用以進行記憶體內搜尋之內容可定址記憶體(content addressable memory,CAM)100A。內容可定址記憶體100A包括數個CAM串列ST、一匹配線ML及一感測放大器電路SA。各個CAM串列ST包括兩個CAM記憶胞CL、CL’。相鄰之兩個CAM記憶胞CL、CL’組成一單元記憶胞UC,以儲存既有資料Dst之一位元。舉例來說,請參照表一,設定於CAM記憶胞CL、CL’內之「低臨界電壓TH1、高臨界電壓TH0」表示既有資料Dst的「1」;設定於CAM記憶胞CL、CL’內之「高臨界電壓TH0、低臨界電壓TH1」表示既有資料Dst的「0」;設定於CAM記憶胞CL、CL’內之「低臨界電壓TH1、低臨界電壓TH1」表示既有資料Dst的「X」。「X」代表「無所謂(don’t care)」。
Figure 111123172-A0305-02-0008-1
匹配線ML連接於CAM串列ST。電晶體TS與感測放大器電路SA連接於匹配線ML。電晶體TS藉由一致動訊號Sta導 通,以導入一預定電壓VM。數筆搜尋資料Dsr輸入至CAM串列ST。兩條輸入線SeL、SeL’用以輸入搜尋資料Dsr之一個位元。舉例來說,請參照表二,施加於輸入線SeL、SeL’之「低輸入電壓VL、高輸入電壓VH」表示搜尋資料Dsr的「1」;施加於輸入線SeL、SeL’之「高輸入電壓VH、低輸入電壓VL」表示搜尋資料Dsr的「0」;施加於輸入線SeL、SeL’之「高輸入電壓VH、高輸入電壓VH」表示搜尋資料Dsr的「X」。「X」代表「萬用字元(wildcard)」。
Figure 111123172-A0305-02-0009-2
透過交集運算(AND operation),對從各個CAM串列ST之CAM記憶胞CL、CL’所獲得之數個記憶胞匹配結果Rc進行整合,以獲得一串列配對結果Rs。舉例來說,根據CAM記憶胞CL、CL’所設定之臨界電壓與施加於輸入線SeL、SeL’之輸入電壓的關係,串聯之CAM記憶胞CL、CL’可以被開啟或關閉。某一CAM串列ST中,只有在所有CAM記憶胞CL、CL’都被開啟時,匹配線ML之電位才會被拉低。也就是說,從各個CAM串列ST之CAM記憶胞CL、CL’所獲得之記憶胞匹配結果Rc相當於透過交集運算進行了整合,而獲得串列配對結果Rs。
透過聯集運算(OR operation),對從CAM串列ST所獲得之串列配對結果Rs進行整合。舉例來說,當任一CAM串列ST拉低電位時,匹配線ML之電位將被拉低。也就是說,串列配對結果Rs相當於透過聯集運算進行了整合。
請參照第1B圖,其繪示根據另一實施例之用以進行記憶體內搜尋之內容可定址記憶體100B。內容可定址記憶體100B之CAM串列ST包括四個CAM記憶胞CL、CL’,以儲存既有資料Dst之兩個位元。連接於CAM串列ST之四條輸入線SeL、SeL’用以輸入搜尋資料Dsr之兩個位元。
請參照第1C圖,其繪示其繪示根據另一實施例之用以進行記憶體內搜尋之內容可定址記憶體100C。內容可定址記憶體100C之CAM串列ST包括8個CAM記憶胞CL、CL’,以儲存既有資料Dst之4個位元。連接於CAM串列ST之8條輸入線SeL、SeL’用以輸入搜尋資料Dsr之4個位元。本揭露之各種內容可定址記憶體都可以按照以下流程圖來實現記憶體內搜尋。
請參照第2圖,其繪示根據一實施例用以進行記憶體內搜尋之內容可定址記憶體的操作方法的流程圖。在步驟S110中,輸入搜尋資料Dsr至CAM串列ST。接著,在步驟S120中,透過交集運算,對從各個CAM串列ST之CAM記憶胞CL、CL’的記憶胞匹配結果Rc進行整合,而獲得串列配對結果Rs。然後,在步驟S130中,透過聯集運算,對從CAM串列ST獲得之串列配對結果Rs進行整合。
請參照第3A圖,其繪示根據另一實施例之用以進行記憶體內搜尋之內容可定址記憶體200A。內容可定址記憶體200A之CAM串列ST包括4個CAM記憶胞CL、CL’,以儲存既有資料Dst之兩個位元。連接於CAM串列ST之4個輸入線SeL、SeL’用以輸入搜尋資料Dsr之兩個位元。在第3A圖中,不相鄰的兩個CAM記憶胞CL、CL’形成一單元記憶胞UC,以儲存既有資料Dst(未標示於第3A圖)之一個位元。
請參照第3B圖,其繪示根據另一實施例用以進行記憶體內計算之內容可定址記憶體200B。內容可定址記憶體200B之CAM串列ST1包括8個CAM記憶胞CL、CL’,以儲存既有資料Dst之4個位元。連接於CAM串列ST之8條輸入線SeL、SeL’用以輸入搜尋資料Dsr之4個位元。在第3B圖中,不相鄰之兩個CAM記憶胞CL、CL’組成一個單元記憶胞UC,以儲存既有資料Dst(未標示於第3B圖)之一個位元。
請參照第4A圖,其繪示根據另一實施例用以進行記憶體內計算之內容可定址記憶體300A。內容可定址記憶體300A之兩個鄰近的CAM串列ST包括4個CAM記憶胞CL、CL’。連接於這兩個相鄰CAM串列ST之4條輸入線SeL、SeL’用以輸入搜尋資料Dsr之兩個位元。在第4A圖中,位於相鄰兩個CAM串列ST之兩個CAM記憶胞CL、CL’組成一個單元記憶胞UC,以儲存既有資料Dst之一個位元。
請參照第4B圖,其繪示根據另一實施例用以進行記憶體內計算之內容可定址記憶體300B。內容可定址記憶體300B之兩個相鄰的CAM串列ST包括8個CAM記憶胞CL、CL’。連接於兩個相鄰之CAM串列ST之8條輸入線SeL、SeL’用以輸入搜尋資料Dsr之4個位元。在第4B圖中,位於兩個相鄰CAM串列ST之兩個CAM記憶胞CL、CL’組成一單元記憶胞UC,以儲存既有資料Dst之一個位元。
請參照第5A圖,其說明根據一實施例之高輸入電壓VH、低輸入電壓VL、高臨界電壓TH0與低臨界電壓TH1的關係。在此實施例中,係採用精確匹配技術。高輸入電壓VH高於高臨界電壓TH0與低臨界電壓TH1。低輸入電壓VL介於高臨界電壓TH0與低臨界電壓TH1之間。也就是說,施加於輸入線SeL、SeL’之高輸入電壓VH將會開啟設定於低臨界電壓TH1或高臨界電壓TH0之CAM記憶胞CL、CL’。施加於輸入線SeL、SeL’之低輸入電壓VL將會開啟設定於低臨界電壓TH1之CAM記憶胞CL、CL’,但會關閉設定於高臨界電壓TH0之CAM記憶胞CL、CL’。
請參照第5B圖及表三。第5B圖繪示根據一實施例之既有資料Dst與搜尋資料Dsr之關係。當搜尋資料Dsr為「1」且既有資料Dst為「1」時,施加於輸入線SeL、SeL’之低輸入電壓VL與高輸入電壓VH將會分別開啟設定於低臨界電壓TH1與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將被拉低。當搜尋資料Dsr為「1」且既有資料Dst為「0」時,施加於輸入線 SeL、SeL’之低輸入電壓VL與高輸入電壓VH將不會開啟設定於高臨界電壓TH0之CAM記憶胞CL,並且會開啟設定於低臨界電壓TH1之CAM記憶胞CL’,故匹配線ML之電位將不會被拉低。當搜尋資料Dsr為「1」且既有資料Dst為「X」,施加於輸入線SeL、SeL’之低輸入電壓VL與高輸入電壓VH將會開啟設定於低臨界電壓TH1與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將會被拉低。
當搜尋資料Dsr為「0」且既有資料Dst為「1」,施加於輸入線SeL、SeL’之高輸入電壓VH與低輸入電壓VL將會開啟設定於低臨界電壓TH1之CAM記憶胞CL,且不會開啟設定於高臨界電壓TH0之CAM記憶胞CL’,故匹配線ML之電位不會被拉低。當搜尋資料Dsr為「0」且既有資料Dst為「0」,施加於輸入線SeL、SeL’之高輸入電壓VH與低輸入電壓VL將會分別開啟設定於高臨界電壓TH0與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被拉低。當搜尋資料Dsr為「0」且既有資料Dst為「X」,施加於輸入線SeL、SeL’之高輸入電壓VH與低輸入電壓VL將會開啟設定於低臨界電壓TH1與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被拉低。
當搜尋資料Dsr為「X」且既有資料Dst為「1」,施加於輸入線SeL、SeL’之高輸入電壓VH與高輸入電壓VH將會分別開啟設定於低臨界電壓TH1與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將被拉低。當搜尋資料Dsr為「X」 且既有資料Dst為「0」,施加於輸入線SeL、SeL’之高輸入電壓VH與高輸入電壓VH將會分別開啟設定於高臨界電壓TH0與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被拉低。當搜尋資料Dsr為「X」且既有資料Dst為「X」,施加於輸入線SeL、SeL’之高輸入電壓VH與高輸入電壓VH將會分別開啟設定於低臨界電壓TH1與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被拉低。
Figure 111123172-A0305-02-0014-3
請參照第6A圖,其示例說明內容可定址記憶體400A之運作方法。當既有資料Dst為「1001」,「低臨界電壓TH1、高臨界電壓TH0」、「高臨界電壓TH0、低臨界電壓TH1」、「高臨界電壓TH0、低臨界電壓TH1」、「低臨界電壓TH1、高臨界電壓TH0」分別儲存於單元記憶胞UC中。當搜尋資料Dsr為「1001」, 「低輸入電壓VL、高輸入電壓VH」、「高輸入電壓VH、低輸入電壓VL」、「高輸入電壓VH、低輸入電壓VL」、「低輸入電壓VL、高輸入電壓VH」分別施加於輸入線SeL、SeL’。根據表三,「1001」之既有資料Dst與「1001」之搜尋資料Dsr在所有位元均能匹配,故匹配線ML之電位將被大幅拉低。
請參照第6B圖,其示例說明內容可定址記憶體400B之運作方法。當既有資料Dst為「1010」,「低臨界電壓TH1、高臨界電壓TH0」、「高臨界電壓TH0、低臨界電壓TH1」、「低臨界電壓TH1、高臨界電壓TH0」、「高臨界電壓TH0、低臨界電壓TH1」分別儲存於單元記憶胞UC中。當搜尋資料Dsr為「1001」,「低輸入電壓VL、高輸入電壓VH」、「高輸入電壓VH、低輸入電壓VL」、「高輸入電壓VH、低輸入電壓VL」、「低輸入電壓VL、高輸入電壓VH」分別施加於輸入線SeL、SeL’。根據表三,「1010」之既有資料Dst與「1001」之搜尋資料Dsr並不匹配,故匹配線ML之電位不會被拉低。
請參照第6C圖,其示例說明內容可定址記憶體400C之運作方法。當既有資料Dst為「10X1」,「低臨界電壓TH1、高臨界電壓TH0」、「高臨界電壓TH0、低臨界電壓TH1」、「低臨界電壓TH1、低臨界電壓TH1」、「低臨界電壓TH1、高臨界電壓TH0」分別儲存於單元記憶胞UC中。當搜尋資料Dsr為「X001」,「高輸入電壓VH、高輸入電壓VH」、「高輸入電壓VH、低輸入電壓VL」、「高輸入電壓VH、低輸入電壓VL」、「低輸入電壓 VL、高輸入電壓VH」分別施加於輸入線SeL、SeL’。根據表三,「10X1」之既有資料Dst與「X001」之搜尋資料Dsr在所有位元均匹配,故匹配線ML之電位將被大幅拉低。
請參照第6D圖,其示例說明內容可定址記憶體400D之運作方法。當既有資料Dst為「1011」,「低臨界電壓TH1、高臨界電壓TH0」、「高臨界電壓TH0、低臨界電壓TH1」、「低臨界電壓TH1、高臨界電壓TH0」、「低臨界電壓TH1、高臨界電壓TH0」分別儲存於單元記憶胞UC中。當搜尋資料Dsr為「1001」,「低輸入電壓VL、高輸入電壓VH」、「高輸入電壓VH、低輸入電壓VL」、「高輸入電壓VH、低輸入電壓VL」、「低輸入電壓VL、高輸入電壓VH」分別施加於輸入線SeL、SeL’。根據表三,「1011」之既有資料Dst與「1001」之搜尋資料Dsr並不匹配,故匹配線ML之電位將不會被大幅拉低。
請參照第7圖,其繪示根據一實施例之具有陣列結構之內容可定址記憶體500。內容可定址記憶體500包括數個CAM串列ST、數個感測放大器電路SA、數條匹配線ML及一編碼器EC。各個匹配線ML連接於部分之CAM串列ST,各個感測放大器電路SA連接於其中一條匹配線ML。在其中一個CAM串列ST中,CAM記憶胞CL、CL’串聯,以使從各個CAM串列ST之CAM記憶胞CL、CL’所獲得之數個記憶胞匹配結果Rc可以透過交集運算進行整合,而獲得串列配對結果Rs。舉例來說,根據CAM記憶胞CL、CL’之臨界電壓與施加於輸入線SeL、SeL’之輸入電壓的關係,串聯 之CAM記憶胞CL、CL’可以被開啟或關閉。只有在各個CAM串列ST之所有CAM記憶胞CL、CL’都被開啟,匹配線ML之電位才會被拉低。也就是說,從各個CAM串列ST之CAM記憶胞CL、CL’所獲得之記憶胞匹配結果Rc相當於透過交集運算進行整合,而獲得串列配對結果Rs。
CAM串列ST連接於一條匹配線ML,以使從CAM串列ST所獲得之串列配對結果Rs能夠透過聯集運算進行整合。舉例來說,當有任何CAM串列ST導通時,匹配線ML之電位將被拉低。也就是說,這些串列配對結果Rs相當於透過聯集運算進行了整合。感測放大器電路SA比對匹配線ML之電位與一參考電位Vref,以輸出比對結果RSC。編碼器EC接收這些比對結果RSC後,可以排序這些CAM串列ST的匹配程度。
請參照第8A圖,其說明根據另一實施例之高輸入電壓VH、低輸入電壓VL、高臨界電壓TH0與低臨界電壓TH1之關係。在此實施例中,係採用近似匹配技術。低輸入電壓VL高於高臨界電壓TH0與低臨界電壓TH1。高輸入電壓VH高於低輸入電壓VL、高臨界電壓TH0與低臨界電壓TH1。也就是說,施加於輸入線SeL、SeL’之高輸入電壓VH將會以較高的閘極過載量(High gate overdrive)開啟設定於低臨界電壓TH1或高臨界電壓TH0之CAM記憶胞CL、CL’。施加於輸入線SeL、SeL’之低輸入電壓VL將會以較低的閘極過載量(Low gate overdrive)開啟設定於高臨界電壓TH0之CAM記憶胞CL、 CL’。施加於輸入線SeL、SeL’之低輸入電壓VL將會以較高的閘極過載量開啟設定於低臨界電壓TH1之CAM記憶胞CL、CL’。
請參照第8B圖及表四。第8B圖繪示根據一實施例之既有資料Dst與搜尋資料Dsr之關係。當搜尋資料Dsr為「0」且既有資料Dst為「0」,施加於輸入線SeL、SeL’之高輸入電壓VH與低輸入電壓VL將會分別以較高的閘極過載量開啟設定於高臨界電壓TH0與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。當搜尋資料Dsr為「0」且既有資料Dst為「1」,施加於輸入線SeL、SeL’之高輸入電壓VH與低輸入電壓VL將會分別以較高的閘極過載量開啟設定於低臨界電壓TH1與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將會略微下拉。當搜尋資料Dsr為「0」且既有資料Dst為「X」,施加於輸入線SeL、SeL’之高輸入電壓VH與低輸入電壓VL將會分別以較高的閘極過載量開啟設定於低臨界電壓TH1與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。當搜尋資料Dsr為「0」且既有資料Dst為「-」(無效,invalid),施加於輸入線SeL、SeL’之高輸入電壓VH與低輸入電壓VL將會分別以較高的閘極過載量與較低的閘極過載量開啟設定於高臨界電壓TH0與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將會被略微拉低。
當搜尋資料Dsr為「1」且既有資料Dst為「0」,施加於輸入線SeL、SeL’之低輸入電壓VL與高輸入電壓VH將會分別以較低的閘極過載量與較高的閘極過載量開啟設定於高臨界電壓TH0與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將會略微拉低。當搜尋資料Dsr為「1」且既有資料Dst為「1」,施加於輸入線SeL、SeL’之低輸入電壓VL與高輸入電壓VH將會分別以較高的閘極過載量開啟設定於低臨界電壓TH1與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。當搜尋資料Dsr為「1」且既有資料Dst為「X」,施加於輸入線SeL、SeL’之低輸入電壓VL與高輸入電壓VH將會分別以較高的閘極過載量開啟設定於低臨界電壓TH1與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。當搜尋資料Dsr為「1」且既有資料Dst為「-」(無效,invalid),施加於輸入線SeL、SeL’之低輸入電壓VL與高輸入電壓VH將會分別以較低的閘極過載量與較高的閘極過載量開啟設定於高臨界電壓TH0與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將會略微拉低。
當搜尋資料Dsr為「X」且既有資料Dst為「0」,施加於輸入線SeL、SeL’之高輸入電壓VH與高輸入電壓VH將會分別以較高的閘極過載量開啟設定於高臨界電壓TH0與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。當搜尋資料Dsr為「X」且既有資料Dst為「1」,施加於輸入線SeL、 SeL’之高輸入電壓VH與高輸入電壓VH將會分別以較高的閘極過載量開啟設定於低臨界電壓TH1與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。當搜尋資料Dsr為「X」且既有資料Dst為「X」,施加於輸入線SeL、SeL’之高輸入電壓VH與高輸入電壓VH將會分別以較高的閘極過載量開啟設定於低臨界電壓TH1與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。當搜尋資料Dsr為「X」且既有資料Dst為「-」(invalid),施加於輸入線SeL、SeL’之高輸入電壓VH與高輸入電壓VH將會分別以較高的閘極過載量開啟設定於高臨界電壓TH0與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。
Figure 111123172-A0305-02-0020-5
請參照第9A圖,其示例說明內容可定址記憶體600A之運作方法。當既有資料Dst為「101X」,「低臨界電壓TH1、高臨界電壓TH0」、「高臨界電壓TH0、低臨界電壓TH1」、「低臨界電壓TH1、高臨界電壓TH0」、「低臨界電壓TH1、低臨界電壓TH1」分別儲存於單元記憶胞UC中。當搜尋資料Dsr為「1001」,「低輸入電壓VL、高輸入電壓VH」、「高輸入電壓VH、低輸入電壓VL」、「高輸入電壓VH、低輸入電壓VL」、「低輸入電壓VL、高輸入電壓VH」分別施加於輸入線SeL、SeL’。根據表四,「101X」之既有資料Dst與「1001」之搜尋資料Dsr具有三個位元的匹配,故匹配線ML之電位將被大幅拉低。
請參照第9B圖,其示例說明內容可定址記憶體600B之運作方法。當既有資料Dst為「1010」、「低臨界電壓TH1、高臨界電壓TH0」、「高臨界電壓TH0、低臨界電壓TH1」、「低臨界電壓TH1、高臨界電壓TH0」、「高臨界電壓TH0、低臨界電壓TH1」分別儲存於單元記憶胞UC中。當搜尋資料Dsr為「1001」,「低輸入電壓VL、高輸入電壓VH」、「高輸入電壓VH、低輸入電壓VL」、「高輸入電壓VH、低輸入電壓VL」、「低輸入電壓VL、高輸入電壓VH」分別施加於輸入線SeL、SeL’。根據表四,「1010」之既有資料Dst與「1001」之搜尋資料Dsr之間具有兩個位元的匹配,故匹配線ML之電位將被略微拉低。如第8A及8B圖所示,CAM串列ST之電流越大,匹配程度越高。
在相反模式的運作中,既有資料Dst與搜尋資料Dsr可以透過另一種方式定義。舉例來說,請參照表五,設定於CAM記憶胞CL、CL’內之「高臨界電壓TH0、低臨界電壓TH1」表示既有資料Dst的「1」;設定於CAM記憶胞CL、CL’內之「低臨界電壓TH1、高臨界電壓TH0」表示既有資料Dst的「0」;設定於CAM記憶胞CL、CL’之「高臨界電壓TH0、高臨界電壓TH0」表示既有資料Dst的「X」。「X」代表「無所謂(don’t care)」。設定於CAM記憶胞CL、CL’之「低臨界電壓TH1、低臨界電壓TH1」代表既有資料Dst的「-」。「-」表示無效(invalid)。
Figure 111123172-A0305-02-0022-7
在相反模式之運作下,請參照表六,施加於輸入線SeL、SeL’之「低輸入電壓VL、高輸入電壓VH」表示搜尋資料Dsr之「1」;施加於輸入線SeL、SeL’之「高輸入電壓VH、低輸入電壓VL」表示搜尋資料Dsr之「0」;施加於輸入線SeL、SeL’之「低輸入電壓VL、低輸入電壓VL」表示搜尋資料Dsr之「X」。「X」代表「無所謂(wildcard)」。
Figure 111123172-A0305-02-0023-8
請參照第10圖及表七。第10圖繪示根據相反模式之既有資料Dst與搜尋資料Dsr的關係。當搜尋資料Dsr為「0」且既有資料Dst為「0」,施加於輸入線SeL、SeL’之高輸入電壓VH與低輸入電壓VL將會分別以較高的閘極過載量與較低的閘極過載量開啟設定於低臨界電壓TH1與高臨界電壓TH0之CAM記憶胞CL、CL’與,故匹配線ML之電位將會被略微拉低。當搜尋資料Dsr為「0」且既有資料Dst為「1」,施加於輸入線SeL、SeL’之高輸入電壓VH與低輸入電壓VL將會以較高的閘極過載量開啟設定於高臨界電壓TH0與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。當搜尋資料Dsr為「0」且既有資料Dst為「X」,施加於輸入線SeL、SeL’之高輸入電壓VH與低輸入電壓VL將會分別以較高的閘極過載量與較低的閘極過載量開啟設定為高臨界電壓TH0與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將會被略微拉低。當搜尋資料Dsr為「0」且既有資料Dst為「-」(invalid),施加於輸入線SeL、SeL’之高輸入電壓VH與低輸入電壓VL將會以較高的閘極 過載量開啟設定於低臨界電壓TH1與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。
當搜尋資料Dsr為「1」且既有資料Dst為「0」,施加於輸入線SeL、SeL’之低輸入電壓VL與高輸入電壓VH將會以較高的閘極過載量開啟設定於低臨界電壓TH1與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。當搜尋資料Dsr為「1」且既有資料Dst為「1」,施加於輸入線SeL、SeL’之低輸入電壓VL與高輸入電壓VH將會分別以較低的閘極過載量與較高的閘極過載量開啟設定於高臨界電壓TH0與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。當搜尋資料Dsr為「1」且既有資料Dst為「X」,施加於輸入線SeL、SeL’之低輸入電壓VL與高輸入電壓VH將會分別以較低的閘極過載量與較高的閘極過載量開啟設定為高臨界電壓TH0與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將會被略微拉低。當搜尋資料Dsr為「1」且既有資料Dst為「-」(invalid),施加於輸入線SeL、SeL’之低輸入電壓VL與高輸入電壓VH將會以較高的閘極過載量開啟設定於低臨界電壓TH1與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。
當搜尋資料Dsr為「X」且既有資料Dst為「0」,施加於輸入線SeL、SeL’之低輸入電壓VL與低輸入電壓VL將會分別以較高的閘極過載量與較低的閘極過載量開啟設定於低臨界電 壓TH1與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將略微幅拉低。當搜尋資料Dsr為「X」且既有資料Dst為「1」,施加於輸入線SeL、SeL’之低輸入電壓VL與低輸入電壓VL將會分別以較低的閘極過載量與較高的閘極過載量開啟設定於高臨界電壓TH0與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將會略微拉低。當搜尋資料Dsr為「X」且既有資料Dst為「X」,施加於輸入線SeL、SeL’之低輸入電壓VL與低輸入電壓VL將會以較低的閘極過載量開啟設定為高臨界電壓TH0與高臨界電壓TH0之CAM記憶胞CL、CL’,故匹配線ML之電位將會微小地拉低。當搜尋資料Dsr為「X」且既有資料Dst為「-」(invalid),施加於輸入線SeL、SeL’之低輸入電壓VL與低輸入電壓VL將會以較高的閘極過載量開啟設定於低臨界電壓TH1與低臨界電壓TH1之CAM記憶胞CL、CL’,故匹配線ML之電位將被大幅拉低。
Figure 111123172-A0305-02-0025-9
Figure 111123172-A0305-02-0026-10
請參照第11A圖,其示例說明內容可定址記憶體700A之運作方法。當既有資料Dst為「1001」,「高臨界電壓TH0、低臨界電壓TH1」、「低臨界電壓TH1、高臨界電壓TH0」、「低臨界電壓TH1、高臨界電壓TH0」、「高臨界電壓TH0、低臨界電壓TH1」分別儲存於單元記憶胞UC中。當搜尋資料Dsr為「1001」,「低輸入電壓VL、高輸入電壓VH」、「高輸入電壓VH、低輸入電壓VL」、「高輸入電壓VH、低輸入電壓VL」、「低輸入電壓VL、高輸入電壓VH」分別施加於輸入線SeL、SeL’。根據表七,「1001」之既有資料Dst與「1001」之搜尋資料Dsr在所有位元均匹配,故匹配線ML之電位將會被輕微地拉低。
請參照第11B圖,其示例說明內容可定址記憶體700B之運作方法。當既有資料Dst為「1010」,「高臨界電壓TH0、低臨界電壓TH1」、「低臨界電壓TH1、高臨界電壓TH0」、「高臨界電壓TH0、低臨界電壓TH1」、「低臨界電壓TH1、高臨界電壓TH0」分別儲存於單元記憶胞UC中。當搜尋資料Dsr為「1001」,「低輸入電壓VL、高輸入電壓VH」、「高輸入電壓VH、低輸入電壓VL」、「高輸入電壓VH、低輸入電壓VL」、「低輸入電壓VL、高輸入電壓VH」分別施加於輸入線SeL、SeL’。根據表七, 「1010」之既有資料Dst與「1001」之搜尋資料Dsr之間具有兩個位元的匹配,故匹配線ML之電位將被大幅拉低。
請參照第11C圖,其示例說明內容可定址記憶體700C之運作方法。當既有資料Dst為「0110」,「低臨界電壓TH1、高臨界電壓TH0」、「高臨界電壓TH0、低臨界電壓TH1」、「高臨界電壓TH0、低臨界電壓TH1」、「低臨界電壓TH1、高臨界電壓TH0」分別儲存於單元記憶胞UC中。當搜尋資料Dsr為「1001」,「低輸入電壓VL、高輸入電壓VH」、「高輸入電壓VH、低輸入電壓VL」、「高輸入電壓VH、低輸入電壓VL」、「低輸入電壓VL、高輸入電壓VH」分別施加於輸入線SeL、SeL’中。根據表七,「0110」之既有資料Dst與「1001」之搜尋資料Dsr具有沒有任何位元匹配,故匹配線ML之電位將會被大幅拉低。如第11A至11C圖所示,CAM串列ST之電流越低,匹配程度越高。
請參照第12A圖,其說明根據一實施例之多個CAM串列ST的運作方式。一筆搜尋資料Dsr可以按照順序逐次輸入至這些CAM串列ST。舉例來說,如第12A圖所示,例如「1001」這樣的短資料可與「1001」、「1011」、...、「1111」等多筆儲存資料逐一比對。
請參照第12B圖,其說明根據一實施例之多個CAM串列ST的運作方式。多筆搜尋資料Dsr可以同時輸入至CAM串列ST。舉例來說,如第12B圖所示,「1001 1110...1110」等長資料 可以切割為數段子資料,並將這些子資料與「1001」、「1011」、...、「1111」等儲存資料同時進行比對。
請參照第13A圖,其說明根據一實施例之內容可定址記憶體800A之電路架構。內容可定址記憶體800A包括數個CAM串列ST、數條主位元線MBL、一感測放大器電路SA、一快取電路CH及一邏輯運算電路LG。各條主位元線MBL串接部分之CAM串列ST。感測放大器電路SA連接於主位元線MBL。快取電路CH連接於感測放大器電路SA。邏輯運算電路LG連接於快取電路CH,以執行聯集運算。串列配對結果Rs依序儲存於快取電路CH,然後再由邏輯運算電路LG透過聯集運算整合儲存於快取電路CH之這些串列配對結果Rs。
請參照第13B圖,其說明根據一實施例之內容可定址記憶體800B之電路架構。內容可定址記憶體800B包括數個CAM串列ST、數條匹配線ML、數個感測放大器電路SA、數個快取電路CH及一邏輯運算電路LG。各個匹配線ML連接於部分之CAM串列ST。各個感測放大器電路SA連接於其中一條匹配線ML。各個快取電路CH連接其中一個感測放大器電路SA。邏輯運算電路LG連接於快取電路,以執行聯集運算。這些串列配對結果Rs同時儲存於這些快取電路CH中,然後再由邏輯運算電路LG透過聯集運算整合儲存於這些快取電路CH之串列配對結果Rs。
根據上述各種實施例,提供了各種具有NAND架構與NOR架構之混合型內容可定址記憶體。混合型內容可定址記憶 體同時具有NOR架構與NAND架構的優點,使得搜尋速度與功率耗損都能更獲得改善。
綜上所述,雖然本揭露已以實施例揭露如上,然其並非用以限定本揭露。本揭露所屬技術領域中具有通常知識者,在不脫離本揭露之精神和範圍內,當可作各種之更動與潤飾。因此,本揭露之保護範圍當視後附之申請專利範圍所界定者為準。
100A:內容可定址記憶體
CL,CL’:CAM記憶胞
Dsr:搜尋資料
Dst:既有資料
ML:匹配線
Rc:記憶胞匹配結果
Rs:串列配對結果
SA:感測放大器電路
SeL,SeL’:輸入線
ST:CAM串列
Sta:致動訊號
TS:電晶體
UC:單元記憶胞
VM:預定電壓

Claims (10)

  1. 一種用以進行記憶體內搜尋之內容可定址記憶體(content addressable memory,CAM),包括:複數個CAM串列,各該CAM串列包括複數個CAM記憶胞,該些CAM記憶胞儲存複數筆既有資料;以及至少一感測放大器電路,連接於該些CAM串列;其中複數筆搜尋資料輸入至該些CAM串列;透過一交集運算(AND operation),對從各該CAM串列之該些CAM記憶胞所獲得之複數個記憶胞匹配結果進行整合,而獲得一串列配對結果;透過一聯集運算(OR operation),對從該些CAM串列所獲得之該些串列配對結果進行整合;其中,該內容可定址記憶體更包括:複數條主位元線,各該主位元線串接部分之該些CAM串列,該感測放大器電路連接該些主位元線。
  2. 如請求項1所述之內容可定址記憶體,更包括:複數條匹配線,其中該至少一感測放大器電路之數量為複數個,各該匹配線連接於部分之該些CAM串列,且各該感測放大器電路連接於該些匹配線之其中之一。
  3. 如請求項1所述之內容可定址記憶體,其中各該搜尋資料透過一高輸入電壓或一低輸入電壓進行設定,各該 CAM記憶胞透過一高臨界電壓或一低臨界電壓進行設定,該低輸入電壓位於該高臨界電壓與該低臨界電壓之間。
  4. 如請求項1所述之內容可定址記憶體,其中各該搜尋資料透過一高輸入電壓或一低輸入電壓進行設定,各該CAM記憶胞透過一高臨界電壓或一低臨界電壓進行設定,該低輸入電壓高於該高臨界電壓。
  5. 如請求項1所述之內容可定址記憶體,更包括:一快取電路,連接該感測放大器電路;以及一邏輯運算電路,連接該快取電路,以執行該聯集運算。
  6. 如請求項1所述之內容可定址記憶體,更包括:複數條匹配線,各該匹配線連接部分之該些CAM串列,該至少一感測放大器電路之數量為複數個,各該感測放大器電路連接於該些匹配線之其中之一;複數個快取電路,各該快取電路連接該些感測放大器電路之其中之一;以及一邏輯運算電路,連接該些快取電路,以執行該聯集運算。
  7. 一種用以進行記憶體內搜尋之內容可定址記憶體(content addressable memory,CAM)之運作方法,包括:輸入複數筆搜尋資料至複數個CAM串列,各該CAM串列包括複數個CAM記憶胞,該些CAM記憶胞儲存複數筆既有資料; 透過一交集運算(AND operation),對從各該CAM串列之該些CAM記憶胞所獲得之複數個記憶胞匹配結果進行整合而獲得一串列配對結果;以及透過一聯集運算(OR operation),對從該些CAM串列所獲得之該些串列配對結果進行整合;其中,該內容可定址記憶體包括複數條主位元線、一快取電路及一邏輯運算電路,各該主位元線串接部分之該些CAM串列,一感測放大器電路連接該些主位元線。
  8. 如請求項7所述之內容可定址記憶體之運作方法,其中在該些CAM串列之其中之一中,該些CAM記憶胞串聯,以使該些記憶胞匹配結果透過該交集運算進行整合;以及該些CAM串列連接於複數條匹配線之其中之一,以使該些串列配對結果透過該聯集運算進行整合。
  9. 如請求項7所述之內容可定址記憶體之運作方法,其中各該搜尋資料透過一高輸入電壓或一低輸入電壓進行設定,各該CAM記憶胞透過一高臨界電壓或一低臨界電壓進行設定,該低輸入電壓位於該高臨界電壓與該低臨界電壓之間。
  10. 如請求項7所述之內容可定址記憶體之運作方法,其中各該搜尋資料透過一高輸入電壓或一低輸入電壓進行設 定,各該CAM記憶胞透過一高臨界電壓或一低臨界電壓進行設定,該低輸入電壓高於該高臨界電壓。
TW111123172A 2022-06-22 2022-06-22 用以進行記憶體內搜尋之混和型內容可定址記憶體及其運作方法 TWI809944B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW111123172A TWI809944B (zh) 2022-06-22 2022-06-22 用以進行記憶體內搜尋之混和型內容可定址記憶體及其運作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW111123172A TWI809944B (zh) 2022-06-22 2022-06-22 用以進行記憶體內搜尋之混和型內容可定址記憶體及其運作方法

Publications (2)

Publication Number Publication Date
TWI809944B true TWI809944B (zh) 2023-07-21
TW202401435A TW202401435A (zh) 2024-01-01

Family

ID=88149681

Family Applications (1)

Application Number Title Priority Date Filing Date
TW111123172A TWI809944B (zh) 2022-06-22 2022-06-22 用以進行記憶體內搜尋之混和型內容可定址記憶體及其運作方法

Country Status (1)

Country Link
TW (1) TWI809944B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7251148B2 (en) * 2000-05-01 2007-07-31 Mosaid Technologies Incorporated Matchline sense circuit and method
US8929115B2 (en) * 2011-11-30 2015-01-06 Stmicroelectronics International N.V. XY ternary content addressable memory (TCAM) cell and array
US9564184B2 (en) * 2014-11-26 2017-02-07 Invecas, Inc. Sense amplifier for single-ended sensing
US10418103B1 (en) * 2018-04-20 2019-09-17 Hewlett Packard Enterprise Development Lp TCAM-driven RRAM

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7251148B2 (en) * 2000-05-01 2007-07-31 Mosaid Technologies Incorporated Matchline sense circuit and method
US8929115B2 (en) * 2011-11-30 2015-01-06 Stmicroelectronics International N.V. XY ternary content addressable memory (TCAM) cell and array
US9564184B2 (en) * 2014-11-26 2017-02-07 Invecas, Inc. Sense amplifier for single-ended sensing
US10418103B1 (en) * 2018-04-20 2019-09-17 Hewlett Packard Enterprise Development Lp TCAM-driven RRAM

Also Published As

Publication number Publication date
TW202401435A (zh) 2024-01-01

Similar Documents

Publication Publication Date Title
US20230039948A1 (en) Methods for reading data from a storage buffer including delaying activation of a column select
US9665083B2 (en) Counter operation in a state machine lattice
Karam et al. Emerging trends in design and applications of memory-based computing and content-addressable memories
US6392910B1 (en) Priority encoder with multiple match function for content addressable memories and methods for implementing the same
EP2438529B1 (en) Conditional operation in an internal processor of a memory device
US11886538B2 (en) Histogram creation process for memory devices
Hu et al. In-memory computing with associative memories: A cross-layer perspective
WO2021000469A1 (zh) 一种基于模拟延时链的二值化神经网络累加器电路
US20170147712A1 (en) Memory equipped with information retrieval function, method for using same, device, and information processing method
Imani et al. CAP: Configurable resistive associative processor for near-data computing
CN111341365B (zh) 三态内容可寻址存储器及其操作方法
CN105830160B (zh) 用于将经屏蔽数据写入到缓冲器的设备及方法
US10282436B2 (en) Memory apparatus for in-place regular expression search
TWI794510B (zh) 三元內容可定址記憶體單元
CN1707447A (zh) 高速缓冲存储器的高速缓存命中逻辑
TWI809944B (zh) 用以進行記憶體內搜尋之混和型內容可定址記憶體及其運作方法
US6618280B2 (en) Associative memory for accomplishing longest coincidence data detection by two comparing operations
US7152141B2 (en) Obtaining search results for content addressable memory
Fan et al. Compiling all-digital-embedded content addressable memories on chip for edge application
JP5998381B2 (ja) 半導体記憶装置
US20160358654A1 (en) Low-power ternary content addressable memory
JP6238306B2 (ja) 不揮発性連想メモリを利用した全文検索システム及びこれに用いる文字列比較方法
US11748062B2 (en) Multiplication and addition operation device and control method for multiplication and addition operation thereof
US20230420047A1 (en) Hybrid type content addressable memory for implementing in-memory-search and operation method thereof
Riaz et al. High speed content addressable memory with reduced size and less power consumption