專利名稱:內容定址存儲器及其設計方法
技術領域:
本發(fā)明涉及內容定址存儲器設計(Content-Addressable Memory,CAM)。
背景技術:
通常設計CAM使得使用者可供應包含各種數(shù)據(jù)線的數(shù)據(jù)總線(例如查表數(shù)據(jù)),且 CAM搜尋具有項目(entries)的表格已決定數(shù)據(jù)總線的所有數(shù)據(jù)線是否匹配表格內相關數(shù) 據(jù)總線的項目的所有比較線。假如所有數(shù)據(jù)線匹配項目的所有比較線,則有“擊中”,且CAM 回送匹配的項目的地址。假如數(shù)據(jù)線的任何一個沒有匹配比較線的任何一個,則稱為“未 擊中”,且CAM沒有回送任何地址。各種CAM單元設計方法包括匹配線與晶體管,每個關聯(lián) 一個比較線。假如所有數(shù)據(jù)線擊中,匹配線維持在它原來電平(例如高電平)。然而,假如 在數(shù)據(jù)線中有未擊中,關聯(lián)未擊中線的晶體管放電匹配線,例如下拉到地端。有放電也有充 電。放電與充電匹配線是動態(tài)的,這些CAMs共同稱為動態(tài)CAMs。動態(tài)CAMs通常緩慢,可能 制造噪聲,在高頻時導致時序問題及/或需要額外電路作非同步應用。許多動態(tài)CAMs也需 要時鐘脈沖電路,以用于匹配放電、比較操作、數(shù)據(jù)查表等等。查表數(shù)據(jù)以及匹配線放電需 要高功率,且動態(tài)CAMs的匹配線可能導致電流泄漏、感應困難及與鄰近匹配線的弱電容耦
α絕絕 口寸寸ο
發(fā)明內容
為了解決現(xiàn)有技術的問題,本發(fā)明實施例提供一種內容定址存儲器。內容定址存 儲器包括一項目,該項目包括多個數(shù)據(jù)線;多個CAM單元,所述多個CAM單元的每個包括 一輸出以在各自的輸出端輸出一邏輯狀態(tài),在各自輸出端的該邏輯狀態(tài)關聯(lián)于各自CAM單 元的各自數(shù)據(jù)線的一邏輯狀態(tài)以及存儲在各自CAM單元的數(shù)據(jù);以及一總合電路,具有多 個輸入及以一輸出,該總合電路的所述多個輸入的每個適用于接收所述多個CAM單元的其 中一個的一輸出,根據(jù)所述多個CAM單元的每個的輸出的邏輯狀態(tài),該總合電路適用于輸 出一邏輯狀態(tài)在總合電路的輸出。本發(fā)明實施例提供一種內容定址存儲器。內容定址存儲器包括多個項目,一項目 包括一多個CAM單元且關聯(lián)一總合電路,該總合電路包括多個階的邏輯柵及多個輸入,每 個輸入接收多個CAM單元的一輸出;以及多個數(shù)據(jù)線,每個數(shù)據(jù)線關聯(lián)一項目的所述多個 CAM細單元的各自一個,該項目的各自的CAM單元的一輸出的一邏輯狀態(tài)相關于各自數(shù)據(jù) 線的一邏輯狀態(tài)及存儲在各自的CAM單元的數(shù)據(jù)。本發(fā)明實施例的一種內容定址存儲器。內容定址存儲器包括一第一 CAM單元,包 括一第一存儲器,適用于存儲第一數(shù)據(jù)、一第一比較器,以及一邏輯柵的一第一半個電路, 該邏輯柵是一總合電路的一部分;一第一數(shù)據(jù)線,該第一比較器適用于接收存儲在該第一 存儲器的該第一數(shù)據(jù)及該第一數(shù)據(jù)線上的數(shù)據(jù);一第二 CAM細單元,包括一第二存儲器,適 用于存儲第二數(shù)據(jù),一第二比較器,以及該邏輯柵的一第二半個電路,該邏輯柵是該總合電 路的一部分;以及一第二數(shù)據(jù)線,該第二比較器適用于接收存儲在該第二存儲器的該第二
4數(shù)據(jù)以及該第二數(shù)據(jù)線的數(shù)據(jù)。本發(fā)明實施例的一種設計內容定址存儲器的方法。此方法包括使用一項目,該項 目包括多個CAM細單元且關聯(lián)一總合電路,該總合電路包括多個階的邏輯柵以及多個輸 入,每個輸入接收一 CAM單元的輸出;以及在該總合電路的一階中選擇邏輯柵達到奇數(shù)輸 入腳位,所以一輸入腳位與一輸出腳位共用一電路布局子插槽。本發(fā)明的電路可操作在較高頻率且以較少時間實施它的功能,并有效地利用電路 布局插槽。為使本發(fā)明的上述目的、特征和優(yōu)點能更明顯易懂,下文特舉實施例,并配合所附 附圖,詳細說明如下。
圖1根據(jù)揭示的實施例顯示一個CAM ;圖2根據(jù)實施例顯示以晶體管實施NAND柵的圖1的CAM的總合;圖3顯示具有兩個輸入的圖2的總合;圖4根據(jù)實施例顯示以晶體管電平實施NOR柵的圖1的CAM的總合;圖5顯示具有兩個輸入的圖4的總合;圖6根據(jù)實施例顯示圖1的CAM作為NAND柵的總合;圖7根據(jù)實施例顯示具有八個輸入且實施于不同電平的組合電路的圖6的總合;圖8根據(jù)實施例顯示被變更為適用于十二個輸入的圖7的總合;圖9根據(jù)實施例顯示被變更為適用于十八個輸入的圖7的總合;圖10根據(jù)實施例顯示圖1的CAM作為NOR柵的總合;圖11根據(jù)實施例顯示實施于不同電平的組合電路的圖10的總合;圖12根據(jù)實施例顯示說明CAM單元的第二實施例的電路;圖13根據(jù)實施例顯示說明電路布局的圖像;以及圖14說明相對揭示實施例的電路布局的缺點的圖像。其中,附圖標記說明如下100 內容定址存儲器;E 項目;B CAM單元;M 存儲單元;C 比較器;S 總合電路;D 數(shù)據(jù)線;200 NAND 電路;300 NAND 電路;400 NOR 電路;500 NOR 電路;600 NAND 柵;700 總合電路;800 總合電路;900 總合電路;1000 NOR柵;1100 總合電路;1200 總合電路;1300 電路布局圖像;1400 電路布局圖像;E 項目;B CAM單元;M 存儲單元;C 比較器;
S 總合;D 數(shù)據(jù)線;P ρ型晶體管;N η型晶體管;PP ρ型晶體管;NN η型晶體管;NA NAND 柵;NO NOR 柵;SL 插槽;SSL 子插槽;
具體實施例方式附圖中揭示的各種實施例或范例使用特定語言描述。可了解到,并不是要借此限 制發(fā)明的范圍。揭示的實施例的任何變化與變更,以及文件中揭示的原理的進一步應用對 于本領域普通技術人員而言是可輕易想到的。附圖標記可能在實施例中重復使用,即使它 們共用同樣附圖標記,但未必是一個實施例的特征應用到其他實施例。圖1根據(jù)揭示的實施例顯示一個CAM。基于描述目的,電路100包括j個項目E,每 個包括i數(shù)目的CAM單元B。每個CAM單元B關聯(lián)一個存儲單元M以及一個比較器C。為 求簡化,只有顯示CAM單元B (1,1)的細節(jié),但是其他CAM單元B包括與CAM單元B (1,1)相 似的組件。比較器C的輸出Cout也作為CAM單元B的輸出。根據(jù)實施例,CAM單元B的存儲單元M可能是不同形態(tài)的存儲器,舉例來說,包括 SRAM (靜態(tài)隨機存取存儲器)、DRAM(動態(tài)RAM)、快閃RAM、PRAM(相位RAM)、RRAM(暫存器 RAM)等等。CAM 100接收i個查表數(shù)據(jù)線(例如線Dl到D (i)),可能稱為數(shù)據(jù)總線。關聯(lián)項目 E的每個數(shù)據(jù)線D關聯(lián)一個CAM單元B。當接收數(shù)據(jù)線(例如線Dl到D (i))上的數(shù)據(jù),比 較器C比較存儲單元M的數(shù)據(jù)與接收的數(shù)據(jù)D。以相關于項目E(I)的范例來說,每個比較 器C(l,l)到C(I,1)比較存儲單元M(l,l)到M(I,1)的對應數(shù)據(jù)與接收數(shù)據(jù)D (1)到D(i)。 以相關于CAM單元B(1,1)的范例來說,比較器C(l,l)比較存儲單元(1,1)內的數(shù)據(jù)與數(shù) 據(jù)D⑴。于一實施例中,假如存儲單元M(l,l)的數(shù)據(jù)與數(shù)據(jù)D(I)相同,則比較器C(l,l) 在線Cout(l,l)上回傳擊中(例如高電位),且假如在存儲單元M(l,l)的數(shù)據(jù)不同于數(shù)據(jù) D(l),則比較器C(l,l)在線Cout(l,l)回傳未擊中(例如低電位)。關于CAM單元B(2,l), 假如存儲單元M(2,l)的數(shù)據(jù)與數(shù)據(jù)D(2)相同,則比較器C(2,l)在線Cout(2,l)上回傳擊 中(例如高電位),且假如在存儲單元M(2,l)的數(shù)據(jù)不同于數(shù)據(jù)D(2),則比較器C(2,l)在 線Cout(2,l)回傳未擊中(例如低電位)。關于CAM單元B(i,l),假如存儲單元M(i,l)的 數(shù)據(jù)與數(shù)據(jù)D(i)相同,則比較器C(i,l)在線Cout(i,l)上回傳擊中(例如高電位),且假 如在存儲單元M(i,l)的數(shù)據(jù)不同于數(shù)據(jù)D(i),則比較器C(i,l)在線Cout(i,l)回傳未擊 中(例如低電位)。假如在存儲單元M(l,l)到M(i,l)的所有數(shù)據(jù)與關聯(lián)項目E (例如項目 E(D)的數(shù)據(jù)D(I)到D(i)相同,則會有關聯(lián)項目E(I)的擊中。舉例來說,假如在所有CAM 單元B(l,l)到B(i,l)(例如所有線Cout(l,l)到Cout(i,l)是擊中)之中有一個擊中,則 總合S(I)在線Sout⑴上回傳擊中(例如低電平)。假如任何CAM單元B (1,1)到CAM單 元B(i,l)都是未擊中(例如任何低電位),則總合S(I)在線Sout⑴上回傳未擊中(例如 高電位)。根據(jù)實施,假如有一或更多擊中項目,CAM 100回傳地址。本領域普通技術人員將認知到總合S (例如總合S(I))作用為NAND柵,因為當總 合S(I)的輸入都是高電位時回傳低電位,當至少一個輸入是低電位時回傳高電平。上述范例僅是說明目的,可用各種其他相容電路實施總合S,例如AND、0R、N0R以及其等效電路。此 外,本領域普通技術人員將任知道AND的輸出是NAND的反相(例如AND是NAND加上一個 反相器在NAND輸出,反之亦然)。此外,總合S(例如S(I))實施成NAND以在比較器C的輸 出Cout與有源邏輯高作用。也就是說,假如有擊中則Cout是高電位。然而,假如在Cout 的邏輯電平是有源低則可能實施NOR。舉例來說,假如在Cout(l,l)到Cout(i,l)的所有數(shù) 據(jù)是低電位(例如有擊中),則Sout(I)是高電位,但是,假如Cout(l,l)到Cout(i,l)的任 何一個是高電位則Sout(I)是低電位。類似于NAND情況,OR可能借由放置反相器在NOR柵 輸出而以NOR取代。上述關于項目E(I)的說明僅是說明目的。其他項目(例如項目E⑵ 到項目E(j))的運作類似于項目E(I)的運作。圖2顯示電路200,說明以晶體管實施NAND柵的總合S,例如總合S⑴的實施例。 每個輸入IN(I)到IN(i)對應一對晶體管P與N (例如晶體管P(I)與N(I)到P(i)到N⑴), 且接收圖1(例如比較器Cout(l,l)到Cout(i,l))的比較器C的對應輸出。輸出NANDout 對應圖1(例如Sout(I))的輸出Sout0基于說明目的,以圖3的電路300所示的兩個輸入NAND柵說明電路200。假如輸 AIN(I)與IN⑵是低電位,則晶體管P(I)與P(2)是導通且晶體管N(I)與N(2)是截止。 因為晶體管N(I)與N(2)是截止,沒有電流通過電流路徑CP,且輸出NANDout連接到晶體管 P(I)與P(2)的Vdd,因此是高電位。假如輸入IN(I)是低電位,且輸入IN⑵是高電位,則 晶體管P(I)是導通,晶體管N(I)是截止,晶體管P(2)是截止,而晶體管N(2)是導通。因 為晶體管N(I)是截止,沒有電流經(jīng)過電流路徑CP,Vdd經(jīng)由晶體管P(l),輸出NANDout是 高電位。假如輸入IN(2)是低電位且輸入IN⑴是高電位,則晶體管P(2)是導通,晶體管 N(2)是截止,晶體管P(I)是截止而晶體管N(I)是導通。因為晶體管N(2)截止,沒有電流 經(jīng)過電流路徑CP,Vdd經(jīng)由晶體管P (2),輸出NANDout是高電位。假如輸入IN(I)與IN (2) 是高電位,則晶體管P(I)與P(2)是截止且晶體管N(I)與N(2)是導通。因為晶體管P(I) 與P(2)是截止,經(jīng)由晶體管N(2)接地,輸出NANDout是低電位。輸出NANDout經(jīng)由眾所皆 知的反相器將提供AND功能。圖4顯示電路400,說明以晶體管電平實施NOR柵的總合S例如S(I)的實施例。 每個輸入INN(I)到INN(i)對應一對晶體管PP與PN(例如晶體管PP(I)與NN(I)到PP(i) 與NN⑴),以及接收圖1(例如比較器Cout(l,l)到Cout(i,l))的比較器C的對應輸出。 輸出NORout對應圖1 (例如Sout(I))的輸出Sout0基于說明目的,以圖5所示的兩個輸入NOR柵說明電路400。假如輸入INN⑴與 INN⑵是低電平則晶體管PP(I)與PP(2)是導通且晶體管NN(I)與NN⑵是截止。因為 晶體管PP⑴與PP⑵是導通,電流經(jīng)過電流路徑CP,且輸出NORout連接晶體管PP(I)的 Vdd,因此是高電位。假如輸入INN⑴是低電位且輸入INN(2)是高電位,則晶體管PP⑴ 是導通,晶體管NN(I)是截止,晶體管PP(2)是導通而晶體管NN(I)是導通。因為晶體管 PP⑴是截止所以沒有電流經(jīng)過電流路徑CP,且經(jīng)由晶體管INN⑴與INN⑵的接地,輸 出NORout是低電位。假如輸出INN(2)是低電位且輸入INN(I)是高電位,則晶體管PP(2) 是導通,晶體管NN(2)是截止,晶體管PP(I)是截止,而晶體管NN(I)是導通。因為晶體管 PP(I)是截止所以沒有電流經(jīng)過電流路徑CP,輸出NORout是低電位。假如輸入NN(I)與 NN⑵是高電位,則晶體管PP(I)與PP(2)是截止,且晶體管NN⑴與NN⑵是導通。因為晶體管PP(I)與PP⑵是截止,所以輸出NORout是低電位。輸出NORout經(jīng)由眾所皆知的 反相器將提供OR功能。圖6顯示以NAND柵600實施的總合S (例如總合S (1))。NAND柵600包括i個輸 入IN(I)到IN(i)以及輸出NANDout。NAND柵600對應晶體管電平之中的電路200。在揭示的各種實施例中,CAM 100所接收的數(shù)據(jù)總線D是相當大,也即有很多數(shù)據(jù) 線D(I)到D(i)或,換個方式描述,指標i是大的,且有很多線Cout將要輸入到總合S(例 如總合S(l))。根據(jù)應用,揭示的實施例使用等效電路提供NAND柵600或200的功能。圖7顯示以NAND柵600實施電路700的總合S(I)的實施例?;谡f明目的,電 路700包括八個輸入(也即指數(shù)i等于八)。電路700包括四個2輸入NAND柵的第一階, 例如 NAND 柵 NA (1,1)、NA (1,2)、NA (1,3)及 NA (1,4)、兩個 2 輸入 NOR 柵 NO (2,1)與 NO (2, 2)的第二階,以及一個2輸入NAND柵NA (3,1)的第三階。本領域普通技術人員將認知到電 路700與具有8輸入的電路600相同,在此不再贅述。在揭示的各種實施例中,假如數(shù)據(jù)線D的數(shù)目增加則指數(shù)i增加且因此有額外的 輸入給總合S。因此,在第一階額外的NAND柵(例如織冊柵嫩(1,5)、嫩(1,6)等)可能 增加以適用這樣的增量。假如增加這樣NAND柵,在第二階的NOR柵(例如N0(2,1)、N0(2, 2)等等)可能接收額外輸入。舉例來說,在圖7,NOR柵(N0(2,1)、N0(2,2))的每個在階 一(NA (1,1)、NA (1,2)、NA (1,3)、NA (1,4))白NAND柵接收兩輸入,假如增加額外的NAND柵 則1,5)、離冊柵嫩(1,6)等,則每個而1 柵而(2,1)、而(2,2)可變更到接收二、三或更多輸 入。每個NOR柵N0(2,1)、N0(2,2)的可接受輸入的數(shù)目是依據(jù)階一被增加的NAND柵的數(shù) 目。可選替地,在階二 (例如NOR柵NO (2,3)、NO (2,4)等等)的額外NOR柵可能增加到適 用于在階一增加的NAND柵的數(shù)目。當NOR柵(例如N0(2,1)、N0(2,2))的輸出的數(shù)目增 加,在階三的NAND柵NA(3,1)可能變更到接收額外的輸入。圖8顯示電路800,其中電路700的指數(shù)i由八增加到十二。因此,電路700包括 四輸入IN(9)到IN(12)、在階一的二個NAND柵NA(1,5)與NA(1,6)、在階二的一個NOR柵 NO (2,3)。此外,在階3的NAND柵NA (3,1)接收三個而不是來自階二的NOR柵的兩個輸入。圖9顯示電路900,其中電路700的指數(shù)i由八增加到十八。因此,電路800包括 十個輸入 IN(9)到 IN(18),在階二的一個 NOR 柵 NO (2,3)。此夕卜,NOR 柵 NO (2,1)、NO (2,2) 與增加的NOR柵NO (2,3)每個接收三個輸入而不是兩個。此外,在階三的NAND柵NA (3,1) 也自階二 NOR柵接收三個而不是兩個輸入。在揭示的各種實施例中,當在階二的NOR柵的輸出的數(shù)目增加,NAND柵NA(3,1) 的輸入數(shù)目增加到適用于NOR輸出的增加。根據(jù)應用,當輸入的數(shù)目大于某一個數(shù)目,使得 NAND柵N(3,l)可能被變更為類似圖6-圖9所描述的總合S(I)的變更以適用于輸入數(shù)目 的增加。也就是說,額外的階(例如階4、階5、階6等等)可能被增加到電路700、800、900 等等以實施電路600的功能。增加階(例如階4、階5、階6等等)可能類似于轉換電路600 到700、800、900等等。也就是說,轉換具有一階邏輯柵的NAND柵成為具有各式階的邏輯柵 的NAND電路。圖10顯示以NOR柵100實施的總合S (例如總合S(I))的實施例。NOR柵1000包 括IN⑴到IN⑴的i個輸入及一個輸出NORout,以及在晶體管電平的對應電路400。圖 11顯示以三階邏輯柵實施的NOR柵1100,包括第一階NOR柵、第二階NAND柵及第三階NOR柵。在每一階輸入到邏輯柵的輸入的數(shù)目、每一階的柵的數(shù)目以及在NOR柵1100的邏輯柵 階的數(shù)目可能以類似于第7、8及9圖所描述的NAND柵600的方式變換。圖12顯示電路1200,根據(jù)揭示的第二個實施例說明CAM單元?;谡f明目的,電 路顯示一個項目,例如關聯(lián)八個數(shù)據(jù)線如數(shù)據(jù)D(I)到D(8)的數(shù)據(jù)總線的項目E(l)。在這 實施例中,八個CAM單元B (1,1)到B(8,l)提供八個線Cout (1,1)到Cout (8,1)至實施成 電路700的總合(例如總合S(I))的輸入IN(I)到IN⑶。此夕卜,CAM單元B (例如B (1,1)、 B(2,1)、B(3,1)等等)及在第一階(例如 NAND NA(1,1)、NA(1,2)、NA(1,3)等等)的 NAND 柵的一半電路建構CAM單元CC。為求簡化,只有顯示二個CAM單元CC(I)與CC(2)。此外, 假如NAND柵NA包括如圖3說明的二個N晶體管與二個P晶體管,則CAM單元CC(例如,單 元CC(I))包括CAM單元B(例如CAM單元B(l,l))與關聯(lián)N晶體管(例如N(I))與P晶 體管(例如P(D)的電路。同樣地,CAM單元CC⑵包括CAM單元B (2,1)與關聯(lián)N晶體管 N(2)與P晶體管P(2)的電路等等。在揭示的各種實施例中,在第一階的NAND柵NA接收二個CAM單元CC,例如一個奇 數(shù)CAM單元CC (例如CAM單元CC⑴、CC (3)、CC (5)等等),以及一個偶數(shù)CAM單元CC (例 如CAM單元CC(2)、CC(4)、CC(6)等等)作為輸入。舉例來說,NAND NA(Ll)接收二個CAM 單元CC(I)與CC (2)作為輸入,NAND NA (1,2)接收二個CAM單元CC (3)及CC (4)作為輸入, 且NAND NA(1,3)接收二個CAM單元CC (5)及CC (6)作為輸入等等。圖12基于說明目的顯 示一個八輸入總合S,假如項目E(例如E(I))接收超過八個輸入,則在第一階(例如NAND NA (1,5) ,NA (1,6) ,NA (1,7)等等)的每個額外NAND接收二個額外CAM單元CC。根據(jù)應用, 根據(jù)比較器的輸出Cout與第一階NAND柵之間的電路布局,在第一階接收二個CAM單元作 為輸入的NAND柵NA是一致的。它也提供有效的路線。圖12基于說明目的顯示一個CAM單元CC,包括一 CAM單元B與NAND柵NA的一半 電路。假如在第一階的總合s(l,l)包括其他柵(例如NOR柵)則CAM單元CC包括CAM單 元B與NOR柵的一半電路。揭示的各種實施例相對其他方法是有利的,因為這些方法通常包括影響匹配線的 電壓電平的預充電電路(例如晶體管)以決定項目是否有擊中或未擊中。時序必須被配置 到這樣的放電或相對應的充電。此外,在各種情況,放電與充電的晶體管以及用于基本輸入 的晶體管不能同時導通。舉例來說,在一個截止之后另一個才導通。因為各種揭示的實施 例沒有包括預充電電路,放電與充電的時序可用于電路的基本功能。電路可因此操作在較 高頻率且以較少時間實施它的功能。揭示的各種實施例有效地利用電路布局插槽(layout slot)。基于說明目的,邏輯 柵如在第一與第三階的NAND、在第二與第四階的NOR等等包括η個輸入及一個輸出。在揭 示的各種實施例中,較適當?shù)氖铅沁x擇為奇數(shù)(例如1、3、5等)所以奇數(shù)輸入η與輸出建 構偶數(shù)。換言之,較適當?shù)氖墙沂镜母鞣N實施例選擇一個設計,以至于邏輯柵包括偶數(shù)I/O 腳位(輸入/輸出)。借由選擇奇數(shù)輸入(或偶數(shù)輸入與輸出腳位),在揭示的各種實施例 中大部分會使用電路布局插槽。圖13根據(jù)揭示的實施例顯示圖像1300。圖像1300包括二插槽SL⑴與SL⑵。 插槽SL包括多個子插槽,每個子插槽可適用二腳位例如一個NANDNA的一對IO腳位。因此, NAND柵,例如具有四個IO腳位的ΝΑ(1,1)可利用一個插槽SL(I)的子插槽SSL(1,1)以及
9插槽SL (2)的子插槽SSL (2,1)。如所示,每個NAND柵NA的二個輸入使同樣插槽SL(I)的 子插槽SSL的二個腳位,然而第三輸入與輸出使用同樣SL(2)的子插槽SSL的二個腳位。因 為NAND柵NA的IO腳位的數(shù)目是偶數(shù),子插槽SSL不會完全利用。圖14顯示具有二輸入 與一輸出的NAND柵NA的電路布局。二輸入使用一個子插槽SSL(2,1)而輸出0使用一個 子插槽SSL(1,1)。如所示,子插槽SSL(1,1)的一部分是沒有使用的因此相較揭示的實施例 是比較不具優(yōu)勢的?;谡f明目的電路布局1300顯示出有兩個插槽。揭示的各種實施例 適用于具有多于兩個插槽SL的電路布局。額外的插槽SL用于NAND柵NA的額外腳位。通 常,額外的插槽SL用于NAND柵NA的每個額外的二個IO腳位。舉例來說,假如NAND柵NA 包括六個IO腳位,則額外的二個IO腳位將使用插槽SL(3)的子插槽。假如NAND柵NA包 括八個IO腳位,則額外的四個IO腳位將使用插槽SL(3)與SL(4)的子插槽等。揭示的實施例已經(jīng)描述??闪私獾娇稍诓幻撾x發(fā)明的范圍與精神下完成各種變 更。舉例來說,基于說明目的,各種附圖對指數(shù)i (例如i = 2,圖3 ;圖5 ;i = 8,圖10 ;i = 12,圖8等等)顯示確定數(shù)字,當指數(shù)i操作為提供符合發(fā)明的范圍與精神時,揭示的各種 實施例適用于不同指數(shù)i。第7、8、9、10等等顯示三個階的電路,但是各種實施例適用于額 外的階,只要具有這額外階的電路可實施基本電路的等效功能且符合發(fā)明的范圍與精神。 一些晶體管為N型而其他是P型,但是揭示不限于這樣的一個組態(tài),因為選擇晶體管形態(tài) (例如NMOS或PM0S)是基于需要與方便等等的設計選擇。以特定邏輯電平操作一些晶體 管(例如致動高電平,解致動低電平等等)說明一些信號,但是選擇這樣的電平與晶體管也 是設計選擇,且揭示的各種實施例適用在各種設計選擇以維持在此說明的發(fā)明的精神與范 圍。雖然本發(fā)明已以優(yōu)選實施例揭示如上,然其并非用以限定本發(fā)明,任何本領域普 通技術人員,在不脫離本發(fā)明的精神和范圍內,當可做些許更動與潤飾,因此本發(fā)明的保護 范圍當視所附的權利要求所界定的范圍范圍為準。
權利要求
一種內容定址存儲器,即CAM,包括一項目,該項目包括多個數(shù)據(jù)線;多個CAM單元,所述多個CAM單元的每個包括一輸出以在各自的輸出端輸出一邏輯狀態(tài),在各自輸出端的該邏輯狀態(tài)關聯(lián)于各自CAM單元的各自數(shù)據(jù)線的一邏輯狀態(tài)以及存儲在各自CAM單元的數(shù)據(jù);以及一總合電路,具有多個輸入及以一輸出,該總合電路的所述多個輸入的每個適用于接收所述多個CAM單元的其中一個的一輸出,根據(jù)所述多個CAM單元的每個的輸出的邏輯狀態(tài),該總合電路適用于輸出一邏輯狀態(tài)在總合電路的輸出。
2.如權利要求1所述的內容定址存儲器,其中所述多個CAM單元的每個包括一存儲單 元及一比較器,該存儲單元存儲數(shù)據(jù)在各自的CAM單元且該比較器提供該各自的CAM單元 的輸出的邏輯狀態(tài)。
3.如權利要求1所述的內容定址存儲器,其中該總合電路包括多個階的邏輯柵;其中 該多階的邏輯柵的每個適用于實施一 NAND功能、一 AND功能、一 NOR功能與一 OR功能的至 少一個功能。
4.如權利要求1所述的內容定址存儲器,其中該總合電路包括一第一階,包括多個 NAND柵、一第二階,包括多個NOR柵以及一第三階,包含多個NAND柵,在第二階的所述多個 NOR柵的每個適用于接收第一階的所述多個NAND柵的一或更多的輸出當作輸入,該第三階 NAND柵適用于接收該第二階的所述多個NOR柵的一或更多輸出當作輸入。
5.如權利要求1所述的內容定址存儲器,其中該總合電路包括一第一階,包括多個NOR 柵、一第二階,包括多個NAND柵以及一第三階,包含多個NOR柵,在第二階的所述多個NAND 柵的每個適用于接收第一階的所述多個NOR柵的一或更多的輸出作為輸入,該第三階NOR 柵適用于接收該第二階的所述多個NAND柵的一或更多輸出作為輸入。
6.一種內容定址存儲器,包括多個項目,一項目包括一多個CAM單元且關聯(lián)一總合電路,該總合電路包括多個階的 邏輯柵及多個輸入,每個輸入接收多個CAM單元的一輸出;以及多個數(shù)據(jù)線,每個數(shù)據(jù)線關聯(lián)一項目的所述多個CAM細單元的各自一個,該項目的各 自的CAM單元的一輸出的一邏輯狀態(tài)相關于各自數(shù)據(jù)線的一邏輯狀態(tài)及存儲在各自的CAM 單元的數(shù)據(jù)。
7.如權利要求6所述的內容定址存儲器,其中所述多個階包括一第一階,包括多個 NAND柵、一第二階包括多個NOR柵,以及一第三階包括多個NAND柵。
8.如權利要求6所述的內容定址存儲器,其中所述多個階包括一第一階,包括多個NOR 柵、一第二階包括多個NAND柵,以及一第三階包括多個NOR柵。
9.一種內容定址存儲器,包括一第一 CAM單元,包括一第一存儲器,適用于存儲第一數(shù)據(jù)、一第一比較器,以及一邏 輯柵的一第一半個電路,該邏輯柵是一總合電路的一部分;一第一數(shù)據(jù)線,該第一比較器適用于接收存儲在該第一存儲器的該第一數(shù)據(jù)及該第一 數(shù)據(jù)線上的數(shù)據(jù);一第二 CAM細單元,包括一第二存儲器,適用于存儲第二數(shù)據(jù),一第二比較器,以及該 邏輯柵的一第二半個電路,該邏輯柵是該總合電路的一部分;以及一第二數(shù)據(jù)線,該第二比較器適用于接收存儲在該第二存儲器的該第二數(shù)據(jù)以及該第 二數(shù)據(jù)線的數(shù)據(jù)。
10.如權利要求9所述的內容定址存儲器,其中該總合電路包括一第一階,包括多個 NAND柵、一第二階,包括多個NOR柵,以及一第三階,包括一 NAND柵。
11.如權利要求9所述的內容定址存儲器,其中該總合電路包括一第一階,包括多個 NOR柵、一第二階,包括多個NAND柵,以及一第三階,包括一 NOR柵。
12.—種設計內容定址存儲器的方法,包括使用一項目,該項目包括多個CAM細單元且關聯(lián)一總合電路,該總合電路包括多個階 的邏輯柵以及多個輸入,每個輸入接收一 CAM單元的輸出;以及在該總合電路的一階中選擇邏輯柵達到奇數(shù)輸入腳位,所以一輸入腳位與一輸出腳位 共用一電路布局子插槽。
13.如權利要求12所述的方法,其中該總合變路包括一第一階,包括多個NAND柵,緊接 著一第二階,包括多個NOR柵,緊接著一第三階,包括一 NAND柵。
14.如權利要求12所述的方法,其中該總合電路包括一第一階,包括多個NOR柵,緊接 著一第二階,包括多個NAND柵,緊接著一第三階,包括一 NOR柵。
全文摘要
本發(fā)明公開了一種內容定址存儲器及其設計方法,該靜態(tài)內容定址存儲器(CAM)包括多個項目E。每個包括多個CAM單元B與一總合S。每個CAM單元B關聯(lián)一存儲單元M與一比較器C。通常,CAM接收查表數(shù)據(jù)線的i個輸入。當接收數(shù)據(jù),存儲單元M提供比較數(shù)據(jù)給CAM細單元B內的比較器C以比較該比較數(shù)據(jù)與接收的數(shù)據(jù)。假如比較數(shù)據(jù)匹配項目的所有接收數(shù)據(jù)線,則有一個集中給那個項目。但是假如任何比較數(shù)據(jù)沒有匹配對應數(shù)據(jù)線,則會有未擊中給那條線以及那個項目。根據(jù)應用,假如有擊中給一或多個項目,則CAM回傳地址。本發(fā)明的電路可操作在較高頻率且以較少時間實施它的功能,并有效地利用電路布局插槽。
文檔編號G11C15/04GK101950584SQ20101022142
公開日2011年1月19日 申請日期2010年6月30日 優(yōu)先權日2009年6月30日
發(fā)明者張美菁, 許國原, 金榮奭 申請人:臺灣積體電路制造股份有限公司