TWI766706B - 三態內容可定址記憶體以及用於其之決策產生方法 - Google Patents
三態內容可定址記憶體以及用於其之決策產生方法 Download PDFInfo
- Publication number
- TWI766706B TWI766706B TW110119445A TW110119445A TWI766706B TW I766706 B TWI766706 B TW I766706B TW 110119445 A TW110119445 A TW 110119445A TW 110119445 A TW110119445 A TW 110119445A TW I766706 B TWI766706 B TW I766706B
- Authority
- TW
- Taiwan
- Prior art keywords
- search
- transistor
- threshold voltage
- voltage
- memory cell
- Prior art date
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
-
- 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
- G11C15/046—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 using non-volatile storage elements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/403—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells with charge regeneration common to a multiplicity of memory cells, i.e. external refresh
- G11C11/404—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells with charge regeneration common to a multiplicity of memory cells, i.e. external refresh with one charge-transfer gate, e.g. MOS transistor, per cell
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0408—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors
- G11C16/0441—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors comprising cells containing multiple floating gate devices, e.g. separate read-and-write FAMOS transistors with connected floating gates
- G11C16/0458—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors comprising cells containing multiple floating gate devices, e.g. separate read-and-write FAMOS transistors with connected floating gates comprising two or more independent floating gates which store independent data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0466—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells with charge storage in an insulating layer, e.g. metal-nitride-oxide-silicon [MNOS], silicon-oxide-nitride-oxide-silicon [SONOS]
- G11C16/0475—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells with charge storage in an insulating layer, e.g. metal-nitride-oxide-silicon [MNOS], silicon-oxide-nitride-oxide-silicon [SONOS] comprising two or more independent storage sites which store independent data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/401—Indexing scheme relating to cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C2211/4013—Memory devices with multiple cells per bit, e.g. twin-cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/401—Indexing scheme relating to cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C2211/4016—Memory devices with silicon-on-insulator cells
Landscapes
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
一種三態內容可定址記憶體包括複數條第一搜尋線、複數條第二搜尋線、複數個記憶胞串以及一或多個電流感測單元。記憶胞串包括複數個記憶胞,各該記憶胞耦接至該些第一搜尋線的其中之一及該些第二搜尋線的其中之一。電流感測單元,耦接至該些記憶胞串。於一搜尋操作時,根據該一或多個電流感測單元是否從該些記憶胞串偵測到電流或者根據該一或多個電流感測單元從該些記憶胞串流出的電流大小判斷該些記憶胞串儲存的資料中是否有與所要搜尋的一資料串匹配者。
Description
本發明是有關於一種三態內容可定址記憶體。
三態內容可定址記憶體(Ternary Content Addressable Memory,以下簡稱為TCAM)由於同時可針對儲存的數據進行精確匹配檢索與模糊匹配檢索,因而十分適合大數據的應用。隨著大數據技術的快速發展,TCAM也受到重視。
本發明實施例係揭露一種三態內容可定址記憶體。三態內容可定址記憶體包括複數條第一搜尋線、複數條第二搜尋線、複數個記憶胞串以及一或多個電流感測單元。記憶胞串包括複數個記憶胞,各該記憶胞耦接至該些第一搜尋線的其中之一及該些第二搜尋線的其中之一。電流感測單元,耦接至該些記憶胞串。於一搜尋操作時,根據該一或多個電流感測單元是否從該些記憶胞串偵測到電流或者根據該一或多個電流感測單元從該些記憶胞串流出的電流大小判斷該些記憶胞串儲存的資料中是否有與所要搜尋的一資料串匹配者。
本發明令一實施例係揭露一種用於三態內容可定址記憶體的決策產生方法。決策產生方法包括:接收一目標資料串;決定一或多個遮罩,並根據該一或多個遮罩及該目標資料串產生一輸入資料串;根據該輸入資料串施加複數個搜尋電壓至複數條第一搜尋線及複數條第二搜尋線;根據複數個電流感測單元偵測該些第一搜尋線及該些第二搜尋線得到的複數個電流值決定一或多個決策參數;以及根據該一或多個決策參數產生一決策。
為了對本發明之上述及其他方面有更佳的瞭解,下文特舉實施例,並配合所附圖式詳細說明如下:
請參照第1圖,第1圖繪示根據本發明一實施例的三態內容可定址記憶體三態內容可定址記憶體(Ternary Content Addressable Memory,以下簡稱為TCAM)的方塊圖。TCAM 10包括多個記憶胞串102-1~102-m、多個電流感測單元104-1~104-m、多條第一搜尋線SL1-1~SL1-n及多條第二搜尋線SL2-1~SL2-n,其中m、n為正整數。
記憶胞串102-i耦接至電流感測單元104-i,且包括多個記憶胞Ci1~Cin,記憶胞Cij耦接至第一搜尋線SL1-j及第二搜尋線SL2-j,其中i正整數且i=1~m,j正整數且j=1~n。
請參照第2圖,第2圖繪示根據本發明一實施例的記憶胞串的方塊圖。在第2圖中顯示的記憶胞串202-i可用以實現記憶胞串102-i,其中包括記憶胞Ci1~Cin的細部電路。記憶胞Cij包括一第一電晶體T1-ij及一第二電晶體T2-ij。第一電晶體T1-ij的一第一端(例如閘極)耦接至第一搜尋線SL1-j。第一電晶體T1-ij的一第二端(例如源極)耦接至第二電晶體T2-ij的一第二端(例如源極)。第一電晶體T1-ij的一第三端(例如汲極)耦接至第二電晶體T2-ij的一第二端(例如汲極)。第二電晶體T2-ij的一第一端(例如閘極)耦接至第二搜尋線SL2-j。
針對第2圖的實施例中單一記憶胞Cij的操作可包括擦除操作、編程操作及搜操作,詳述如下。
在擦除(erase)操作時,一擦除電壓會被施加在第一搜尋線SL1-j及第二搜尋線SL2-j。一般來說,擦除電壓可為一負偏壓,藉以釋放第一電晶體T1-ij與第二電晶體T2-ij中儲存的電荷。
在編程操作時,藉由分別在第一搜尋線SL1-j及第二搜尋線SL2-j施加適當的編程電壓,以分別編程第一電晶體T1-ij及第二電晶體T2-ij的閾值電壓。當第一電晶體T1-ij的閾值電壓被編程為一低閾值電壓,且第二電晶體T2-ij的閾值電壓被編程為一高閾值電壓時,定義記憶胞Cij儲存的資料為一第一值(例如0);當第一電晶體T1-ij的閾值電壓被編程為高閾值電壓,且第二電晶體T2-ij的閾值電壓被編程為低閾值電壓時,定義記憶胞Cij儲存的資料為一第二值(例如1)。記憶胞Cij儲存的資料除了可為第一值或第二值以外,也可選擇性地支援儲存「隨意(don’t care)」,當第一電晶體T1-ij的閾值電壓被編程為低閾值電壓,且第二電晶體T2-ij的閾值電壓被編程為低閾值電壓時,定義記憶胞Cij儲存的資料為「隨意」。
在搜尋操作時,當要搜尋第一值時,第一搜尋線SL1-j會被施加一第一搜尋電壓,第二搜尋線SL2-j會被施加一第二搜尋電壓;當要搜尋第二值時,第一搜尋線SL1-j會被施加第二搜尋電壓,第二搜尋線SL2-j會被施加第一搜尋電壓。第二搜尋電壓大於高閾值電壓,高閾值電壓大於第一搜尋電壓,且第一搜尋電壓大於低閾值電壓。除了可搜尋第一值及第二值之外,也可選擇性地支援搜尋通配符(wild card)。此處所謂搜尋通配符指的是所要搜尋的資料可以是第一值或第二值,也就是搜尋通配符時,無論記憶胞中儲存的是第一值還是第二值皆被認為是匹配的。當要搜尋通配符時,第一搜尋線SL1-j會被施加第二搜尋電壓,第二搜尋線SL2-j會被施加第二搜尋電壓。
低閾值電壓、高閾值電壓、第一搜尋電壓以及第二搜尋電壓可藉由參考第9圖的閾值電壓分布示意圖來理解。在第9圖中,橫軸代表的是電壓,縱軸代表的是機率,Vt-l為低閾值電壓的機率分布,Vt-h為高閾值電壓的機率分布,Vs1為第一搜尋電壓,Vs2為第二搜尋電壓。
為了更了解搜尋操作,以下搭配第3A~3C圖,以實際的例子來進行說明。在第3A圖中,記憶胞串30包括四個記憶胞301~304。記憶胞301的第一電晶體3011及第二電晶體3012分別被編程為低閾值電壓(圖中以[L]表示)及高閾值電壓(圖中以[H]表示),亦即,記憶胞301儲存的是0,以此類推,記憶胞302~304分別儲存的是1、X、0,其中X代表「隨意」。此例所要搜尋的資料串為0110。當進行搜尋操作時,第一電晶體3011的第二端及第二電晶體3012的第二端會被施加一個適當的偏壓,第一搜尋線3051、3053、3055、3057分別會被施加第一搜尋電壓(圖中以[V1]表示)、第二搜尋電壓(圖中以[V2]表示)、第二搜尋電壓、第一搜尋電壓,第二搜尋線3052、3054、3056、3058分別會被施加第二搜尋電壓、第一搜尋電壓、第一搜尋電壓、第二搜尋電壓。記憶胞301、302、304中皆有電晶體導通。對於記憶胞303,由於第一電晶體3031及第二電晶體3032的閾值電壓皆為低閾值電壓,因此無論第一電晶體3031及第二電晶體3032的閘極電壓為第一搜尋電壓或第二搜尋電壓,皆能夠使得第一電晶體3031及第二電晶體3032導通。於是,一電流可由第一電晶體3011的第二端及第二電晶體3012的第二端流通至第一電晶體3041的第三端及第二電晶體3042的第三端。電流感測單元306藉由偵測記憶胞串30(第一電晶體3041的第三端及第二電晶體3042的第三端)是否有電流流出,或者是偵測從記憶胞串(第一電晶體3041的第三端及第二電晶體3042的第三端)流出的電流的大小,即可判斷該記憶胞串儲存的資料串是否與所要搜尋的資料串匹配。在此例中,電流感測單元306偵測到有電流從記憶胞串30流出,便可判斷判斷該記憶胞串儲存的資料串與所要搜尋的資料串匹配。
請參照第3B圖的例子。第3B圖與第3A圖類似,記憶胞串30儲存的也是01X0,差別在於所要搜尋的資料串為0111。記憶胞301~303皆有電晶體導通使得電流可通過。然而,記憶胞304因儲存的資料與搜尋的資料不匹配而令第一電晶體3041及第二電晶體3042皆不導通,使得電流無法通過。於是,電流感測單元306偵測不到有電流從記憶胞串30流出,進而可判斷記憶胞串30儲存的資料串與所要搜尋的資料串不匹配。
請參照第3C圖的例子。第3C圖與第3A圖類似,記憶胞串30儲存的也是01X0,差別在於所要搜尋的資料串為0?00,其中?為通配符,即該位元可為0也可為1。記憶胞301、303、304皆有電晶體導通使得電流可通過。對於記憶胞302,第一電晶體3021及第二電晶體3022的閘極的電壓皆為高於高閾值電壓及低閾值電壓的第二搜尋電壓,因此無論記憶胞302儲存的資料為何,第一電晶體3021及第二電晶體3022皆會導通。於是,電流感測單元306偵測到有電流從記憶胞串30流出,進而可判斷記憶胞串30儲存的資料串與所要搜尋的資料串匹配。
請參照第4圖,第4圖繪示根據本發明另一實施例的記憶胞串的方塊圖。在第4圖中顯示用以實現記憶胞串102-i的記憶胞串402-i,包括記憶胞Ci1~Cin的細部電路。記憶胞Cij包括一第一電晶體T1-ij及一第二電晶體T2-ij。第一電晶體T1-ij的一第一端(例如閘極)耦接至第一搜尋線SL1-j。第一電晶體T1-ij的一第三端(例如汲極)耦接至第二電晶體T2-ij的一第二端(例如源極)。第二電晶體T2-ij的一第一端(例如閘極)耦接至第二搜尋線SL2-j。
針對第4圖的實施例中單一記憶胞Cij的操作可包括擦除操作、編程操作及搜操作,詳述如下。
在擦除(erase)操作時,一擦除電壓會被施加在第一搜尋線SL1-j及第二搜尋線SL2-j。一般來說,擦除電壓可為一負偏壓,藉以釋放第一電晶體T1-ij與第二電晶體T2-ij中儲存的電荷。
在編程操作時,藉由分別在第一搜尋線SL1-j及第二搜尋線SL2-j施加適當的編程電壓,以分別編程第一電晶體T1-ij及第二電晶體T2-ij的閾值電壓。當第一電晶體T1-ij的閾值電壓被編程為一低閾值電壓,且第二電晶體T2-ij的閾值電壓被編程為一高閾值電壓時,定義記憶胞Cij儲存的資料為一第一值(例如0);當第一電晶體T1-ij的閾值電壓被編程為高閾值電壓,且第二電晶體T2-ij的閾值電壓被編程為低閾值電壓時,定義記憶胞Cij儲存的資料為一第二值(例如1)。記憶胞Cij儲存的資料除了可為第一值或第二值以外,也可選擇性地支援儲存「隨意(don’t care)」,當第一電晶體T1-ij的閾值電壓被編程為低閾值電壓,且第二電晶體T2-ij的閾值電壓被編程為低閾值電壓時,定義記憶胞Cij儲存的資料為「隨意」。
在搜尋操作時,當要搜尋第一值時,第一搜尋線SL1-j會被施加一第一搜尋電壓,第二搜尋線SL2-j會被施加一第二搜尋電壓;當要搜尋第二值時,第一搜尋線SL1-j會被施加第二搜尋電壓,第二搜尋線SL2-j會被施加第一搜尋電壓。第二搜尋電壓大於高閾值電壓,高閾值電壓大於第一搜尋電壓,且第一搜尋電壓大於低閾值電壓。除了可搜尋第一值及第二值之外,也可選擇性地支援搜尋通配符(wild card)。此處所謂搜尋通配符指的是所要搜尋的資料可以是第一值或第二值,也就是搜尋通配符時,無論記憶胞中儲存的是第一值還是第二值皆被認為是匹配的。當要搜尋通配符時,第一搜尋線SL1-j會被施加第二搜尋電壓,第二搜尋線SL2-j會被施加第二搜尋電壓。
為了更了解搜尋操作,以下搭配第5A~5C圖,以實際的例子來進行說明。在第5A圖中,記憶胞串50包括四個記憶胞501~504。記憶胞501的第一電晶體5011及第二電晶體5012分別被編程為低閾值電壓及高閾值電壓,亦即,記憶胞501儲存的是0,以此類推,記憶胞502~504分別儲存的是1、X、0,其中X代表「隨意」。此例所要搜尋的資料串為0110。當進行搜尋操作時,第一電晶體3011的第二端(例如源極)會被施加一個適當的偏壓,第一搜尋線5051、5053、5055、5057分別會被施加第一搜尋電壓、第二搜尋電壓、第二搜尋電壓、第一搜尋電壓,第二搜尋線5052、5054、5056、5058分別會被施加第二搜尋電壓、第一搜尋電壓、第一搜尋電壓、第二搜尋電壓。記憶胞501、502、504中的電晶體皆導通。對於記憶胞303,由於第一電晶體5031及第二電晶體5032的閾值電壓皆為低閾值電壓,因此無論第一電晶體5031及第二電晶體5032的閘極電壓為高閾值電壓或低閾值電壓,皆能夠使得第一電晶體3031及第二電晶體3032導通。於是,一電流可由第一電晶體5011的第二端流通至第二電晶體5042的第三端。電流感測單元506藉由偵測記憶胞串50(第二電晶體5042的第三端)是否有電流流出,或者是偵測從記憶胞串(第二電晶體5042的第三端)流出的電流的大小,即可判斷該記憶胞串儲存的資料串是否與所要搜尋的資料串匹配。在此例中,電流感測單元506偵測到有電流從記憶胞串50流出,便可判斷判斷該記憶胞串儲存的資料串與所要搜尋的資料串匹配。
請參照第5B圖的例子。第5B圖與第5A圖類似,記憶胞串50儲存的也是01X0,差別在於所要搜尋的資料串為0111。記憶胞501~503中的電晶體皆導通使得電流可通過。然而,記憶胞504因儲存的資料與搜尋的資料不匹配而令第一電晶體5041及第二電晶體5042皆不導通,使得電流無法通過。於是,電流感測單元506偵測不到有電流從記憶胞串50流出,進而可判斷記憶胞串50儲存的資料串與所要搜尋的資料串不匹配。
請參照第5C圖的例子。第5C圖與第5A圖類似,記憶胞串50儲存的也是01X0,差別在於所要搜尋的資料串為0?00,其中?為通配符,即該位元可為0也可為1。記憶胞501、503、504中的電晶體皆導通使得電流可通過。對於記憶胞502,第一電晶體5021及第二電晶體5022的閘極的電壓皆為高於高閾值電壓及低閾值電壓的第二搜尋電壓,因此無論記憶胞502儲存的資料為何,第一電晶體5021及第二電晶體5022皆會導通。於是,電流感測單元506偵測到有電流從記憶胞串50流出,進而可判斷記憶胞串50儲存的資料串與所要搜尋的資料串匹配。
不同的應用諸如人工智能、大數據搜索等可能需要不同的量化策略,而搜尋時通配符的使用可以在各種應用中提供靈活性。第5A~5C圖的操作可以基於前文所述的原理擴展到適用於長度更長的資料格式,例如TF32、TF16、FP64、FP32、FP16、INT16、INT8等。
請參考第5D圖,第5D圖繪示儲存的資料串與搜尋的資料串的示意圖。在這個例子中,使用的資料格式例如是INT8,也就是以從最高有效位元(MSB)至最低有效位元(LSB)共八個位元的二進制數值來表示介於0及127之間的十進制整數。本例中,儲存於記憶胞串的資料串(例如特徵向量中的一個神經元)為01100010。所要搜尋的資料串從第五個位元開始為量化的起始位置,搜尋時後四個位元會以通配符進行遮罩(mask)。
在人工智能推理操作時,一個特徵向量包含許多神經元,且每個神經元代表例如FP16或INT8等格式的單個二進制資料串。搜尋時若不使用通配符進行遮罩,往往會由於搜尋時輸入的特徵向量與儲存的特徵向量之間的細微的差異導致無法得出任何搜尋結果。 這個問題通常是由於神經元的最低有效位(LSB)有所差異導致。以一個實際例子來說,若一個記憶胞串包括九十六個電晶體,則一個記憶胞串可儲存四十八個位元的二進制資料。若儲存的資料格式是INT8,一個記憶胞串儲存的特徵向量可包括六個代表INT8格式的神經元。在搜尋不使用通配符進行遮罩的情況下,必須要有任何一個記憶胞串儲存的四十八個位元的特徵向量與搜尋時輸入的四十八個位元的特徵向量全部匹配才會有符合的搜尋結果。這在應用上不切實際。為了解決上述問題,可將搜尋時輸入的特徵向量中的每個神經元的最後四個位元以通配符進行遮罩(比如第5D圖所示)。實際應用上,可以根據量化的級別來配置遮罩的起始位置及長度,以實現不同的搜尋解析度。
請參照第6圖,第6圖為第4圖的一變化實施例。在此實施例中,第一搜尋線SL1-j可通過一反向器INV-j耦接至第二搜尋線SL2-j。
針對第6圖的實施例中單一記憶胞Cij的操作可包括擦除操作、編程操作及搜操作,詳述如下。
在擦除(erase)操作時,一擦除電壓會被施加在第一搜尋線SL1-j上。一般來說,擦除電壓可為一負偏壓,藉以釋放第一電晶體T1-ij與第二電晶體T2-ij中儲存的電荷。
在編程操作時,藉由在第一搜尋線SL1-j施加適當的編程電壓,以分別編程第一電晶體T1-ij及第二電晶體T2-ij的閾值電壓。當第一電晶體T1-ij的閾值電壓被編程為一低閾值電壓,且第二電晶體T2-ij的閾值電壓被編程為一高閾值電壓時,定義記憶胞Cij儲存的資料為一第一值(例如0);當第一電晶體T1-ij的閾值電壓被編程為高閾值電壓,且第二電晶體T2-ij的閾值電壓被編程為低閾值電壓時,定義記憶胞Cij儲存的資料為一第二值(例如1)。記憶胞Cij儲存的資料除了可為第一值或第二值以外,也可選擇性地支援儲存「隨意(don’t care)」,當第一電晶體T1-ij的閾值電壓被編程為低閾值電壓,且第二電晶體T2-ij的閾值電壓被編程為低閾值電壓時,定義記憶胞Cij儲存的資料為「隨意」。
在搜尋操作時,當要搜尋第一值時,第一搜尋線SL1-j會被施加一第一搜尋電壓,並通過反向器INV-j在第二搜尋線SL2-j上產生一第二搜尋電壓;當要搜尋第二值時,第一搜尋線SL1-j會被施加第二搜尋電壓,並通過反向器INV-j在第二搜尋線SL2-j上產生第一搜尋電壓。第二搜尋電壓大於高閾值電壓,高閾值電壓大於第一搜尋電壓,且第一搜尋電壓大於低閾值電壓。
請參照第7圖,第7圖繪示根據本發明另一實施例的TCAM的方塊圖。TCAM 60與TCAM 10類似,差別在於TCAM 60中,記憶胞串被劃分為多組,每一組的記憶胞串通過一及閘耦接至一電流感測單元。舉例來說,第一組的記憶胞串602-1、602-2通過及閘606-1耦接至電流感測單元604-1,搜尋操作時,若電流感測單元604-1偵測到來自及閘606-1的電流的不小於一閥值(例如單一記憶串儲存的資料串與所要搜尋的資料串匹配時輸出的電流的兩倍)時,則可判斷第一組的記憶胞串儲存的資料串與所要搜尋的資料串匹配,反之則可判斷為不匹配,以此類推。藉由這種方式,可減少RC延遲(RC delay)及增加讀取/搜尋速度。實作上可根據RC延遲的要求決定一組記憶胞串要配置的記憶胞串的數量(例如二或二以上)。
請參照第8A~8C圖,第8A~8C圖繪示根據本發明又一實施例的記憶胞串的方塊圖。由於第4圖的記憶胞串中電晶體的連接方式為串接,因此將電晶體的次序任意調換也可達到相同的效果。第8A圖的記憶胞串顯示第4圖的記憶胞串的其中一種變化。在第8A圖的實施例中,記憶胞串702-i中的第一電晶體T1-i1~T1-in被配置在一起,第二電晶體T2-i1~T2-in被配置在一起,再將串接的第一電晶體T1-i1~T1-in與串接的第二電晶體T2-i1~T2-in串接。第8B圖的實施例為第4圖的實施例的另一種變化。記憶胞串802-i類似於記憶胞串702-i,差別在於第二電晶體T2-i1~T2-in的連接次序不同。第8C圖繪示了第4圖的實施例的又一種變化。第8C圖的實施例結合了第7圖與第8A圖的概念。第一電晶體T1-i1~T1-in被串接為一電晶體串,第二電晶體T2-i1~T2-in被串接為另一電晶體串,二電晶體串再耦接至一個及閘906-i以使得二電晶體串等效於串接。第8A~8C圖僅為示例而已,實作上可以根據實際需求調整電晶體串接的次序。此外,每個記憶胞串的電晶體可被任意配置為多個(例如三個、四個甚至更多個)電晶體串再連接至一或多個及閘以使此些電晶體串等效於串接,藉此降低RC延遲。
基於大數據技術的運算量密集且龐大,TCAM需要長時間反覆地被讀取,因此讀取干擾(read disturb)成為TCAM應用於大數據時需要面對的問題。
為了解決讀取干擾,可將記憶胞串中的記憶胞劃分為多個組,每個組可包括多個記憶胞。在一實施例中,每個組所包括的記憶胞的數量是相同的。在編程操作及搜尋操作時,係以一組記憶胞為單位進行。以第4圖的記憶胞串402-i為例,記憶胞Ci1、Ci2係被配置為第一組,記憶胞Ci3、Ci4係被配置為第二組,以此類推。以下實施例雖然是基於第4圖的記憶胞串402-i,但所使用的編程操作與搜尋操作係不同於前文所述的實施例。為了更清楚瞭解本實施例,以下針對第一組的記憶胞的編程操作與搜尋操作進行說明,擦除操作與前文所述類似,故不贅述。
表一中,左起第一欄為第一組的記憶胞Ci1、Ci2儲存的資料,第二欄為對應編程的第一電晶體T1-i1、T1-i2與第二電晶體T2-i1、T2-i2的閾值電壓,以及第三欄為搜尋時施加於第一搜尋線SL1-1、SL1-2與第二搜尋線SL2-1、SL2-2的電壓。此例中,0代表第一值,1代表第二值,L代表低閾值電壓,H代表高閾值電壓,V1代表第一搜尋電壓,V2代表第二搜尋電壓。
表一
S1[Ci1,Ci2] | [T1-i1,T2-i1,T1-i2,T2-i2] | [SL1-1,SL2-1,SL1-2,SL2-2] |
[0,0] | [H,H,H,L] | [V2,V2,V2,V1] |
[0,1] | [H,H,L,H] | [V2,V2,V1,V2] |
[1,0] | [H,L,H,H] | [V2,V1,V2,V2] |
[1,1] | [L,H,H,H] | [V1,V2,V2,V2] |
在編程操作時,高閾值電壓與低閾值電壓其中之一會被設定為一主要狀態,其中另一會被設定為一次要狀態。在編程不含[隨意]的資料的情況下,每一組的記憶胞的四個電晶體中只有其中一電晶體會被編程為次要狀態,其他的電晶體則會被編程為主要狀態。在表一的實施例中,主要狀態為高閾值電壓,次要狀態為低閾值電壓。被編程為高閾值電壓的電晶體的閘極須施加第二搜尋電壓才會導通。於是,可決定出搜尋時對應的搜尋電壓組合。
表二為不同於表一的另一個實施例。
表二
S1[Ci1,Ci2] | [T1-i1,T2-i1,T1-i2,T2-i2] | [SL1-1,SL2-1,SL1-2,SL2-2] |
[0,0] | [H,L,L,L] | [V2,V1,V1,V1] |
[0,1] | [L,H,L,L] | [V1,V2,V1,V1] |
[1,0] | [L,L,H,L] | [V1,V1,V2,V1] |
[1,1] | [L,L,L,H] | [V1,V1,V1,V2] |
在表二的實施例中,主要狀態為低閾值電壓,次要狀態為高閾值電壓。此外,表二也顯示出對於相同的資料,在不同的編碼方式中主要狀態的位置是可以變動的。
在另一實施例中,資料編碼也可支援編程資料包括[隨意],或者可支援搜尋時允許使用通配符。
表三是從表一延伸的實施例。表三的實施例支援編程資料包括[隨意],其中X代表[隨意]。
表三
S1[Ci1,Ci2] | [T1-i1,T2-i1,T1-i2,T2-i2] | [SL1-1,SL2-1,SL1-2,SL2-2] |
[0,0] | [H,H,H,L] | [V2,V2,V2,V1] |
[0,1] | [H,H,L,H] | [V2,V2,V1,V2] |
[1,0] | [H,L,H,H] | [V2,V1,V2,V2] |
[1,1] | [L,H,H,H] | [V1,V2,V2,V2] |
[0,X] | [H,H,L,L] | |
[X,0] | [H,L,H,L] | |
[1,X] | [L,L,H,H] | |
[X,1] | [L,H,L,H] | |
[X,X] | [L,L,L,L] |
在此簡單說明[隨意]的操作原理。資料為[隨意]代表在搜尋時無論是搜尋1或是0都必須匹配。舉例來說,儲存的資料為[0,X]時,無論搜尋[0,0]或是[0,1]都要能匹配。在記憶胞串402-i中,所謂的「匹配」在物理意義上是指「電流可通過」。也就是說,在決定儲存資料[0,X]的記憶胞的四個電晶體的閾值電壓時,必須無論使用用以搜尋[0,0]或[0,1]的搜尋電壓的組合都能令儲存資料[0,X]的記憶胞的四個電晶體皆導通。
表四是從表二延伸的實施例。表四的實施例支援支援時允許使用通配符,其中?代表通配符。
表四
S1[Ci1,Ci2] | [T1-i1,T2-i1,T1-i2,T2-i2] | [SL1-1,SL2-1,SL1-2,SL2-2] |
[0,0] | [H,L,L,L] | [V2,V1,V1,V1] |
[0,1] | [L,H,L,L] | [V1,V2,V1,V1] |
[1,0] | [L,L,H,L] | [V1,V1,V2,V1] |
[1,1] | [L,L,L,H] | [V1,V1,V1,V2] |
[0,?] | [V2,V2,V1,V1] | |
[?,0] | [V2,V1,V2,V1] | |
[1,?] | [V1,V2,V1,V2] | |
[?,1] | [V1,V1,V2,V2] | |
[?,?] | [V2,V2,V2,V2] |
在此簡單說明通配符的操作原理。搜尋的資料為通配符代表在無論儲存的資料為1或是0都必須匹配。舉例來說,要搜尋的資料為[0,?]時,儲存的資料無論是[0,0]或是[0,1]都要能匹配。在記憶胞串402-i中,所謂的「匹配」在物理意義上是指「電流可通過」。也就是說,在決定搜尋資料[0,?]的四個搜尋電壓的組合時,必須使得無論儲存有資料 [0,0]或[0,1]的記憶胞的四個電晶體皆導通。
需要注意的是,實作上可以根據需要將二個以上的記憶胞配置為一組,本發明不加以限定。
在本發明中,記憶胞所包括的電晶體是以金屬場效應電晶體(MOSFET)為例,但在其他實施例中,任何能被用以製作快閃記憶體的儲存元件皆可用被應用,例如電荷捕捉式(charge trapping)元件、SONOS電晶體及鐵電場效電晶體(FeFET)等。電流感測單元例如是電流感測單元。
值得一提的是,任何適合的二維或三維的非及閘快閃(NAND Flash)記憶體結構皆可應用於本發明的TCAM。
除了前文提到的應用之外,本發明提出的TCAM還可應用在搜尋資料庫中的資料上。請參照第10圖,第10圖繪示資料與特徵向量空間的示意圖。在此例中,每一筆資料可藉由一個三維的特徵向量來表示,亦即每一筆資料可具有三個特徵值,並由此三個特徵值形成一個三維的特徵向量。第10圖中,FD1代表的是資料的第一特徵值的維度,FD2代表的是資料的第二特徵值的維度,FD3代表的是資料的第三特徵值的維度,此三個維度形成一個三維的向量空間,而在此三維向量空間中的每一個點代表的是一筆藉由三維特徵向量表示的資料。屬於相同類別的資料的點通常會聚集在向量空間的某一個區域。第10圖顯示了四種類別CAT1~CAT4的資料群集分別聚集在四個不同的區域。舉實際例子來說,資料庫中的資料可為動物圖片,其中包括四個類別:狗、貓、鳥及蛇,每一張動物圖片可具有三個特徵值,並以一個三維特徵向量來表示。本發明提出的TCAM可用以儲存此些資料的特徵向量。基於此種應用,本發明提出一種用於TCAM的決策產生方法。
請參考第11圖,在S1102中,接收一目標資料串。目標資料串可包括多個二進制位元。舉例來說,透過計算可得到一待辨識動物圖片(原始資料)的一特徵向量,將此特徵向量以二進制表示可得到目標資料串。根據原始資料的不同,計算的特徵向量的方式也會有所不同。
在S1104中,決定一或多個遮罩,並根據遮罩及目標資料串產生一輸入資料串。如第12圖所示,目標特徵向量轉換為二進制後,遮罩所在的位元被以通配符「X」替換。根據需要遮罩的數量及位置可任意配置(第12圖顯示了三種不同的遮罩配置)。
在S1106中,根據輸入資料串施加多個搜尋電壓至TCAM的多條第一搜尋線及多條第二搜尋線。關於搜尋電壓與0、1及通配符之間的對應關係可參考前文所述,在此不再贅述。
在S1108中,根據TCAM的多個電流感測單元偵測第一搜尋線及第二搜尋線得到的多個電流值決定一或多個決策參數,其中決策參數可透過分析電流感測單元偵測得到的電流值得到,例如從電流感測單元偵測得到的電流值可得知匹配的資料串的數量、匹配的資料串的記憶體位置,透過存取匹配的記憶體位置可得知匹配的資料串的內容甚至是類別。決策參數可包括匹配的資料串數量、匹配的資料串所屬的類別分布、匹配的資料之間的差異(例如漢明距離)等。
在S1110中,根據決策參數判斷是否進行決策。舉例來說,可根據匹配的資料串的數量是否高於一閥值決定是否進行決策。判斷是否進行決策的條件可根據需要設定。若判斷進行決策,執行S1112;若判斷不進行決策,則回到S1104以調整遮罩。
在S1112中,根據決策參數產生一決策。舉例來說,可選擇匹配的資料串中類別最多者做為最終的決策。產生決策的方式可根據需要設定,本發明不予以限定。
在一實施例中,TCAM可包括一個記憶體內搜尋引擎(In-memory searching engine,IMS engine)用來執行S1104。在另一實施例中,TCAM可被劃分為多個區塊,此些區塊分別包括一個IMS引擎,亦即,在S1102中,可同時接收多個目標資料串,在S1104中,針對不同的目標資料串分別設定遮罩,在S1106中可通過多個IMS引擎同時或是批次搜尋,在S1106中,綜合分析所有的搜尋結果來產生決策參數。
需要注意的是,上述例子僅為說明支用,本發明不限定特徵向量的維度。
綜上所述,雖然本發明已以實施例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者, ㄆ 在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾。因此,本發明之保護範圍當視後附之申請專利範圍所界定者為準。
10、60:三態內容可定址記憶體
102-1~102-m、202-i、402-i、602-1~602-m、30、50、702-i、802-i、902-i:記憶胞串
104-1~104-m、506、604-1~604-k、704-i、804-i、904-i:電流感測單元
C11~Cmn、301~304、501~504:記憶胞
SL1-1~SL1-n、3051、3053、3055、3057、5051、5053、5055、5057、7051、7053、7055、7057:第一搜尋線
SL2-1~SL2-n、3052、3054、3056、3058、5052、5054、5056、5058:第二搜尋線
T1-i1~T1-in、3011~3041、5011~5041:第一電晶體
T2-i1~T2-in、3012~3042、5012~5042:第二電晶體
606-1~606-k、906-i:及閘
INV-1~INV-j:反向器
CAT1~CAT4:類別
FD1:第一特徵值的維度
FD2:第二特徵值的維度
FD3:第三特徵值的維度
S1102~S1112:步驟
第1圖繪示根據本發明一實施例的TCAM的方塊圖。
第2圖繪示根據本發明一實施例的記憶胞串的方塊圖。
第3A~3C圖繪示根據本發明一實施例的記憶胞串的操作的示意圖。
第4圖繪示根據本發明另一實施例的記憶胞串的方塊圖。
第5A~5C圖繪示根據本發明另一實施例的記憶胞串的操作的示意圖。
第5D圖繪示儲存的特徵向量的神經元與搜尋的的特徵向量的神經元的示意圖。
第6圖繪示根據本發明又一實施例的記憶胞串的方塊圖。
第7圖繪示根據本發明另一實施例的TCAM的方塊圖。
第8A~8C圖繪示根據本發明又一實施例的記憶胞串的方塊圖。
第9圖繪示閾值電壓與搜尋電壓的示意圖。
第10圖繪示資料與特徵向量的示意圖。
第11圖繪示根據本發明一實施例的決策產生方法的流程圖。
第12圖繪示目標資料串與遮罩的示意圖。
10:三態內容可定址記憶體
102-1~102-m:記憶胞串
104-1~104-m:電流感測單元
C11~Cmn:記憶胞
SL1-1~SL1-n:第一搜尋線
SL2-1~SL2-n:第二搜尋線
Claims (15)
- 一種三態內容可定址記憶體,包括: 複數條第一搜尋線; 複數條第二搜尋線;以及 複數個記憶胞串,包括複數個記憶胞,各該記憶胞耦接至該些第一搜尋線的其中之一及該些第二搜尋線的其中之一; 一或多個電流感測單元,耦接至該些記憶胞串, 其中於一搜尋操作時,根據該一或多個電流感測單元是否從該些記憶胞串偵測到電流或者根據該一或多個電流感測單元從該些記憶胞串流出的電流大小判斷該些記憶胞串儲存的資料中是否有與所要搜尋的一資料串匹配者。
- 如請求項1所述之三態內容可定址記憶體,其中該些記憶胞串係被劃分為複數組,各該組的該些記憶胞通過一及閘耦接至對應的該電流感測單元。
- 如請求項1所述之三態內容可定址記憶體,其中各該記憶胞包括: 一第一電晶體,該第一電晶體的一第一端耦接至對應的該第一搜尋線;以及 一第二電晶體,該第二電晶體的一第一端耦接至對應的該第二搜尋線,該第二電晶體的一第二端耦接至該第一電晶體的一第二端,該第二電晶體的一第三端耦接至該第一電晶體的一第三端。
- 如請求項3所述之三態內容可定址記憶體,其中對於各該記憶胞,於一編程操作中,當要編程一第一值時,編程該第一電晶體的一閾值電壓為一低閾值電壓及該第二電晶體的一閾值電壓為一高閾值電壓,以及當要一第二值時,編程該第一電晶體的該閾值電壓為該高閾值電壓及該第二電晶體的該閾值電壓為該低閾值電壓。
- 如請求項4所述之三態內容可定址記憶體,其中對於各該記憶胞,於該搜尋操作時,當所要搜尋的是該第一值時,該第一搜尋線係被施加一第一搜尋電壓,該第二搜尋線係被施加一第二搜尋電壓,以及當要搜尋該第二值時,該第一搜尋線係被施加該第二搜尋電壓,該第二搜尋線係被施加該第一搜尋電壓,該第二搜尋電壓高於該高閾值電壓,該高閾值電壓高於該第一搜尋電壓,該第一搜尋電壓高於該低閾值電壓。
- 如請求項4所述之三態內容可定址記憶體,其中對於各該記憶胞,於該編程操作中,當要編程一「隨意」時,該第一電晶體的閾值電壓及該第二電晶體的該閾值電壓皆被編程為該低閾值電壓。
- 如請求項5所述之三態內容可定址記憶體,其中對於各該電晶體,當要搜尋一通配符時,該第一搜尋線及該第二搜尋線皆被施加該第二搜尋電壓。
- 如請求項1所述之三態內容可定址記憶體,其中各該記憶胞串包括串接的複數個電晶體,該些電晶體中的半數分別為各該記憶胞的一第一電晶體,該些電晶體中的另外半數分別為各該記憶胞的一第二電晶體,對於各該記憶胞: 該第一電晶體的一第一端耦接至對應的該第一搜尋線;以及 該第二電晶體的一第一端耦接至對應的該第二搜尋線。
- 如請求項8所述之三態內容可定址記憶體,其中對於各該記憶胞,於一編程操作中,當要編程一第一值時,編程該第一電晶體的一閾值電壓為一低閾值電壓及該第二電晶體的一閾值電壓為一高閾值電壓,以及當要一第二值時,編程該第一電晶體的該閾值電壓為該高閾值電壓及該第二電晶體的該閾值電壓為該低閾值電壓。
- 如請求項9所述之三態內容可定址記憶體,其中對於各該記憶胞,於該搜尋操作時,當所要搜尋的是該第一值時,該第一搜尋線係被施加一第一搜尋電壓,該第二搜尋線係被施加一第二搜尋電壓,以及當要搜尋該第二值時,該第一搜尋線係被施加該第二搜尋電壓,該第二搜尋線係被施加該第一搜尋電壓,該第二搜尋電壓高於該高閾值電壓,該高閾值電壓高於該第一搜尋電壓,該第一搜尋電壓高於該低閾值電壓。
- 如請求項9所述之三態內容可定址記憶體,其中對於各該記憶胞,於該編程操作中,當要編程一「隨意」時,該第一電晶體的閾值電壓及該第二電晶體的該閾值電壓皆被編程為該低閾值電壓。
- 如請求項10所述之三態內容可定址記憶體,其中對於各該電晶體,當要搜尋一通配符時,該第一搜尋線及該第二搜尋線皆被施加該第二搜尋電壓。
- 如請求項8所述之三態內容可定址記憶體,其中對於各該記憶胞串,該些記憶胞係被劃分為複數組,該組包括二個以上的該些記憶胞,對於各該組的該些記憶胞,於一編程操作時,當要編程不包括「隨意」的資料時,編程該些記憶胞的該些電晶體的其中之一的一閾值電壓為一次要狀態,編程該些記憶胞中其他的該些電晶體的該些閾值電壓為一主要狀態,該主要狀態為一高閾值電壓及一低閾值電壓的其中之一,該次要狀態為該高閾值電壓及該低閾值電壓的其中另一。
- 一種用於三態內容可定址記憶體的決策產生方法,包括: 接收一目標資料串; 決定一或多個遮罩,並根據該一或多個遮罩及該目標資料串產生一輸入資料串; 根據該輸入資料串施加複數個搜尋電壓至複數條第一搜尋線及複數條第二搜尋線; 根據複數個電流感測單元偵測該些第一搜尋線及該些第二搜尋線得到的複數個電流值決定一或多個決策參數;以及 根據該一或多個決策參數產生一決策。
- 如請求項14所述之決策產生方法,更包括根據該一或多個決策參數判斷是否進行決策。
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063070271P | 2020-08-26 | 2020-08-26 | |
US202063070273P | 2020-08-26 | 2020-08-26 | |
US202063070272P | 2020-08-26 | 2020-08-26 | |
US202063070270P | 2020-08-26 | 2020-08-26 | |
US63/070,271 | 2020-08-26 | ||
US63/070,272 | 2020-08-26 | ||
US63/070,270 | 2020-08-26 | ||
US63/070,273 | 2020-08-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI766706B true TWI766706B (zh) | 2022-06-01 |
TW202223895A TW202223895A (zh) | 2022-06-16 |
Family
ID=80357744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110119445A TWI766706B (zh) | 2020-08-26 | 2021-05-28 | 三態內容可定址記憶體以及用於其之決策產生方法 |
Country Status (3)
Country | Link |
---|---|
US (3) | US11587617B2 (zh) |
CN (1) | CN114121091A (zh) |
TW (1) | TWI766706B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI827137B (zh) * | 2022-07-13 | 2023-12-21 | 旺宏電子股份有限公司 | 用於記憶體內搜尋的記憶體裝置及資料搜尋方法 |
TWI833579B (zh) * | 2023-02-10 | 2024-02-21 | 旺宏電子股份有限公司 | 用於執行記憶體內搜尋的記憶裝置及其操作方法 |
US11955186B2 (en) | 2022-07-13 | 2024-04-09 | Macronix International Co., Ltd. | Memory device and data search method for in-memory search |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230238037A1 (en) * | 2022-01-25 | 2023-07-27 | Macronix International Co., Ltd. | Content addressable memory device and method for data searching and comparing thereof |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6317349B1 (en) * | 1999-04-16 | 2001-11-13 | Sandisk Corporation | Non-volatile content addressable memory |
US6836419B2 (en) * | 2002-08-23 | 2004-12-28 | Micron Technology, Inc. | Split word line ternary CAM architecture |
TWI396198B (zh) * | 2005-06-30 | 2013-05-11 | Ibm | 使用相變材料記憶元件的非揮發性內容可定址記憶體 |
US10366754B2 (en) * | 2014-05-27 | 2019-07-30 | Renesas Electronics Corporation | Semiconductor integrated circuit device with reduced power consumption |
US20200075099A1 (en) * | 2018-08-30 | 2020-03-05 | Sandisk Technologies Llc | Content addressable memory with spin-orbit torque devices |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5999435A (en) * | 1999-01-15 | 1999-12-07 | Fast-Chip, Inc. | Content addressable memory device |
US6825706B2 (en) * | 2003-02-11 | 2004-11-30 | Texas Instruments Incorporated | Multiplexer |
US7120040B2 (en) * | 2004-06-01 | 2006-10-10 | Mosaid Technologies Incorporation | Ternary CAM cell for reduced matchline capacitance |
JP4738112B2 (ja) * | 2005-09-12 | 2011-08-03 | ルネサスエレクトロニクス株式会社 | 半導体記憶装置 |
US7379341B2 (en) * | 2006-10-05 | 2008-05-27 | Macronix International Co., Ltd. | Loading data with error detection in a power on sequence of flash memory device |
CN101630529B (zh) * | 2008-07-18 | 2012-03-21 | 瑞昱半导体股份有限公司 | 内容可寻址存储器 |
US8120937B2 (en) * | 2009-03-06 | 2012-02-21 | International Business Machines Corporation | Ternary content addressable memory using phase change devices |
US8320148B1 (en) * | 2009-06-25 | 2012-11-27 | Adesto Technologies Corporation | PMC-based non-volatile CAM |
US9384835B2 (en) * | 2012-05-29 | 2016-07-05 | Globalfoundries Inc. | Content addressable memory early-predict late-correct single ended sensing |
US9208880B2 (en) * | 2013-01-14 | 2015-12-08 | Zeno Semiconductor, Inc. | Content addressable memory device having electrically floating body transistor |
US9502114B1 (en) * | 2015-11-14 | 2016-11-22 | National Tsing Hua University | Non-volatile ternary content-addressable memory with bi-directional voltage divider control and multi-step search |
US9711221B1 (en) * | 2016-06-02 | 2017-07-18 | Wisconsin Alumni Research Foundation | Nonvolatile range-checking content addressable memory |
JP6659486B2 (ja) * | 2016-07-20 | 2020-03-04 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
US10395738B2 (en) * | 2017-11-30 | 2019-08-27 | Micron Technology, Inc. | Operations on memory cells |
KR102134315B1 (ko) * | 2018-12-11 | 2020-07-16 | 조선대학교산학협력단 | 내용기반 검색 및 동시 업데이트 가능한 fpga 기반 tcam 구조 |
US10741244B1 (en) * | 2019-06-21 | 2020-08-11 | Macronix International Co., Ltd. | Memory and operating method thereof |
US11328775B2 (en) * | 2020-10-07 | 2022-05-10 | Macronix International Co., Ltd. | Ternary content addressable memory and memory cell thereof |
-
2021
- 2021-05-28 TW TW110119445A patent/TWI766706B/zh active
- 2021-05-28 US US17/333,046 patent/US11587617B2/en active Active
- 2021-06-02 CN CN202110616835.XA patent/CN114121091A/zh active Pending
-
2023
- 2023-01-18 US US18/155,827 patent/US11923008B2/en active Active
-
2024
- 2024-01-24 US US18/420,874 patent/US20240161826A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6317349B1 (en) * | 1999-04-16 | 2001-11-13 | Sandisk Corporation | Non-volatile content addressable memory |
US6836419B2 (en) * | 2002-08-23 | 2004-12-28 | Micron Technology, Inc. | Split word line ternary CAM architecture |
TWI396198B (zh) * | 2005-06-30 | 2013-05-11 | Ibm | 使用相變材料記憶元件的非揮發性內容可定址記憶體 |
US10366754B2 (en) * | 2014-05-27 | 2019-07-30 | Renesas Electronics Corporation | Semiconductor integrated circuit device with reduced power consumption |
US20200075099A1 (en) * | 2018-08-30 | 2020-03-05 | Sandisk Technologies Llc | Content addressable memory with spin-orbit torque devices |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI827137B (zh) * | 2022-07-13 | 2023-12-21 | 旺宏電子股份有限公司 | 用於記憶體內搜尋的記憶體裝置及資料搜尋方法 |
US11955186B2 (en) | 2022-07-13 | 2024-04-09 | Macronix International Co., Ltd. | Memory device and data search method for in-memory search |
TWI833579B (zh) * | 2023-02-10 | 2024-02-21 | 旺宏電子股份有限公司 | 用於執行記憶體內搜尋的記憶裝置及其操作方法 |
Also Published As
Publication number | Publication date |
---|---|
TW202223895A (zh) | 2022-06-16 |
CN114121091A (zh) | 2022-03-01 |
US20230154535A1 (en) | 2023-05-18 |
US20240161826A1 (en) | 2024-05-16 |
US20220068386A1 (en) | 2022-03-03 |
US11923008B2 (en) | 2024-03-05 |
US11587617B2 (en) | 2023-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI766706B (zh) | 三態內容可定址記憶體以及用於其之決策產生方法 | |
KR102305568B1 (ko) | 일정한 처리 시간 내에 k개의 극값을 찾는 방법 | |
KR20190032116A (ko) | 특성 데이터 전처리 시스템, 장치, 방법 및 이를 이용한 메모리 제어 시스템 | |
CN111737522A (zh) | 视频匹配方法、基于区块链的侵权存证方法和装置 | |
US8335750B1 (en) | Associative pattern memory with vertical sensors, amplitude sampling, adjacent hashes and fuzzy hashes | |
Chen et al. | Comprehensive predictions of tourists' next visit location based on call detail records using machine learning and deep learning methods | |
US11615827B2 (en) | Hardware accelerator with analog-content addressable memory (a-CAM) for decision tree computation | |
US10007864B1 (en) | Image processing system and method | |
US20200090047A1 (en) | Learning method, learning device with multi-feeding layers and testing method, testing device using the same | |
CN113326390A (zh) | 基于深度特征一致哈希算法的图像检索方法 | |
EP3654250B1 (en) | Machine learning accelerator | |
CN108804581B (zh) | 一种基于深度学习的同类物体检索方法及系统 | |
CN115346579A (zh) | 内容可寻址存储器及其操作方法 | |
Zhang et al. | Distil: including Prediction Disagreements in Feature-based Distillation for object detection | |
CN111930972A (zh) | 利用标签层次信息的多媒体数据跨模态检索方法及系统 | |
Simonovsky et al. | Onionnet: Sharing features in cascaded deep classifiers | |
Tseng et al. | An Analog In-Memory-Search Solution based on 3D-NAND Flash Memory for Brain-Inspired Computing | |
US9595334B2 (en) | Apparatus and methods of operating memory for exact and inexact searching of feature vectors | |
TWI774372B (zh) | 內容可定址記憶體及其操作方法 | |
US20230238037A1 (en) | Content addressable memory device and method for data searching and comparing thereof | |
US11960759B2 (en) | Memory device and data searching method thereof | |
TWI790107B (zh) | 內容定址記憶體裝置及其資料搜尋比對方法 | |
US12009053B2 (en) | Memory device and data searching method thereof | |
CN113283394B (zh) | 一种融合上下文信息的行人重识别方法及系统 | |
US20230410861A1 (en) | Memory device and data searching method thereof |