TWI302706B - Circuit and method for reducing power usage in a content addressable memory - Google Patents
Circuit and method for reducing power usage in a content addressable memory Download PDFInfo
- Publication number
- TWI302706B TWI302706B TW91137849A TW91137849A TWI302706B TW I302706 B TWI302706 B TW I302706B TW 91137849 A TW91137849 A TW 91137849A TW 91137849 A TW91137849 A TW 91137849A TW I302706 B TWI302706 B TW I302706B
- Authority
- TW
- Taiwan
- Prior art keywords
- match line
- segment
- match
- condition
- line segment
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 33
- 230000015654 memory Effects 0.000 title claims description 13
- 230000011218 segmentation Effects 0.000 claims description 13
- 230000000644 propagated effect Effects 0.000 claims description 3
- 230000007704 transition Effects 0.000 claims description 3
- 230000008859 change Effects 0.000 claims description 2
- 230000009849 deactivation Effects 0.000 claims 3
- 241000282320 Panthera leo Species 0.000 claims 1
- 239000000835 fiber Substances 0.000 claims 1
- 230000000977 initiatory effect Effects 0.000 claims 1
- 101150030826 rml2 gene Proteins 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 6
- 238000001514 detection method Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000007599 discharging Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000001965 increasing effect Effects 0.000 description 3
- 230000001939 inductive effect Effects 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 239000013078 crystal Substances 0.000 description 2
- 230000007717 exclusion Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 208000013641 Cerebrofacial arteriovenous metameric syndrome Diseases 0.000 description 1
- 241000282994 Cervidae Species 0.000 description 1
- 206010011469 Crying Diseases 0.000 description 1
- 239000000853 adhesive Substances 0.000 description 1
- 230000001070 adhesive effect Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Dram (AREA)
- Semiconductor Integrated Circuits (AREA)
Description
(i) 1302706 玫、發明說明 (發月說μ敘明:發明所屬之技術領域、先前技術、内容、實施方式及圖式簡日 技術領域 m) 本發明通常係關於可定址内容記憶體(CAM)領域,具體 而言,係關於用於在CAM中搜尋作業期間降低電力使用量 的電路及方法。 先前技術 CAM是一種記憶體裝置,其中存取及修改資料係依據所 儲存之貝料的内各’而不是依據儲存資料的位置。—般而 T,典型的CAM搜尋作業涉及接收一搜尋資料字組並且比 較該搜尋資料字組與CAM中的所有項目,以判斷該搜尋資 料字組與CAM中的所有項目是否存在一單一匹配、多個匹 配或不匹配。在CAM之列中的所有儲存位置被連接至一匹 配線,該匹配線指示比較所儲存的資料字組與該搜尋資料 字組的不匹配結果。指示匹配狀況的所有匹配線通常都會 被一優先順序編碼器(pri〇rity encoder ; PE)處理,以決定被 提供為CAM之輸出的最高優先順序匹配位址。 在CAM内,每個資料字組及匹配線組合都具有一唯一 n 位元位址。因此,針對任何搜尋循環,可啟動最多2N條匹 配線。優先順序編螞器被耦合至該等匹配線,並且產生一 對應於最南優先順序啟用匹配線的N位元位址。接著使用 該N位元位址(例如)當做在微處理器系統中實施之網際網 路規約(IP)路由表查詢、壓縮和解壓縮或完整組合快取記 憶體實施中的指標。由於三元(Ternary)CAM具有儲存邏輯 ,,1”、邏輯”0"及”任意值”的能力,所以廣泛運用在網路應 用中。針對更寬資料寬度的CAMS需求曰益增加。市場上 1302706 (2) 發明說明續頁 通常可購買到資料寬度(以Μ標示)為72位元、144位元及最 近288位元的CAM。 隨著資料字組遞增,在CAM中搜尋作業期間的電力消耗 或電流消耗愈來愈重要。下文接著解說其原因。 在搜尋作業中,將資料提供給CAM以比較所儲存的資 料。CAM單元通常被設計,以致搜尋資料與所儲存的資料 之間的匹配提供一非導電路徑,而不匹配提供一導電路 徑。CAM的一列係由並聯耦合在匹配線(ML)與尾端線(TL) 之間的單元所組成。每個個別的匹配線(ML)都連接至Μ個 單元(其中Μ是位元數目,或通常是資料寬度)。一般而言, 在搜尋作業中,將Μ位元搜尋資料提供給一搜尋資料路 徑,該搜尋資料路徑係由耦合至相對應行之CAM單元的Μ 條搜尋線所組成。接著,在典型實施為互斥或(XOR)運算 比較組塊的每個單元中,CAM的所有Ν列同時比較該搜尋 資料與所儲存之資料,並且將該比較結果提供給與CAM每 列相關的每條匹配線。接著,通常會感應、放大及鎖存該 匹配線上的匹配線,以便提供該搜尋作業的邏輯位準結 果。 在CAM中搜尋作業期間的有兩個主要來源實質上電力消 耗:該等匹配線消耗的電力及該等搜尋線消耗的電力。按 慣例,會將所有匹配線預充電至邏輯’ FT (高位準)狀態(匹 配狀況),接著允許進行搜尋資料比較,以使該等匹配線 下降邏輯· (低位準)狀態(不匹配狀況)。 在大部份CAM應用中,「不匹配」(miss)的發生頻率高於 1302706 發明說明續頁 (3) 「命中」(hit)的發生頻率。將匹配線預充電至邏輯W彳高 位準)及將匹配線放電至用於不匹配的邏輯f L ’(低位準) 時,由於與每個搜尋作業之充電及放電所有匹配線相關的 電流消耗,導致很容易造成高電力消耗。此外,因為在較 寬字組CAM應用中連接至每條匹配線的單元數量增加,所 以匹配線的電容量會隨之遞增,進而導致充電及放電匹配 線所需的電流遞增。 已提出用於在搜尋作業期間降低電力消耗的各種解決方 案,例如,將匹配線分段成多個分段,以及依據前一分段 的匹配或不匹配結果來連續啟動該等分段。 ! 例如,美國專利案號6,243,280(Wong等人申請)中發表一 種分段式匹配線架構,其中會將CAM的列分割成複數個分 段。針對每個匹配線,預充電該等複數條匹配線的第一分 段,並且在該第一分段中執行搜尋作業。假使該第一分段 匹配,則會選擇性預充電第一匹配線分段,並且搜尋作業 繼續進行到該第二分段。假使該第二分段匹配,則會預充 電第三分段,並且搜尋作業以類似方式繼續進行,直到已 搜尋一匹配線的所有分段。因此,對一後續分段預充電只 會發生在前一分段匹配的情況下。假使所有分段皆匹配, 則會選擇性預充電每個分段至邏輯·Η'(高位準),然而仍然 需求大量電流。另外,因為在繼續進行分段中的實際比較 之前,必須等待對該分段之選擇性預充電發生,所以會造 成搜尋時間有顯著延遲。 在美國專利案號6,191,970(Pereira),一匹配線被分割成多 1302706 ____ (4) 明:續頁 _ —·~~ 個分段,在開始搜尋作業之前’先將所有分段顇充電至邏 輯,Η,(高位準)狀態。此外,每個CAM單元都具有/相關放 電電路,用於選擇性放電其相對應的匹配線分段,以響應 一來自前一匹配線分段的停用信號。因此,只有緊接在前 的分段產生不匹配,同時將所有後續分段繼續預充電至邏 輯,H,(高位準)時,才會將一分段放電。結果,一分段的不 匹配狀況會沿著該列的其餘分段傳播,而不會沿著該列將 所有其他分段放電。雖然這項做法減緩因選擇性預充電分 段所造成的延遲問題,但是因為必須將所有記憶體預充電 至邏輯,H,(高位準)狀態,所以高電流消耗的潛在問題仍然 存在。此外,必須將每個分段的匹配偵測同步化為一時脈 信號,從匹配線預充電至命中開始提供時脈。結果,必須 產生一些内部時赚,或必須使用系統時脈而增加系統等待 時間。最後,為了防止在啟用分段之前放電,會將一串聯 搞合的裝置加入至每個CAM單元中,因而增加晶片面積並 且降低整個運作速度。 在 1997 IEEE 由 Zukowski 等人著作的 ”Use of Selective Precharge for Low Power on the Match Lines of Content Addressable Memories”文章中,發表一種用於對整個匹配線 之小段分段預充電的方法,並且運用在執行部份比較第一 小段分段,並且只有該第一小段分段發生匹配時,才會對 該匹配線的其他分段預充電,最後進行搜尋。該文章也建 議’理論上應將選擇性預充電技術延伸到涵蓋一個以上層 級,但是在單一層級選擇性預充電期間,頦外的添加信號 1302706 _ rs、 I發明說明續頁 (overhead)、額外的時脈相位及額外的緩衝處理不會造成任 何大幅的額外增益。這項做法不考慮有多個匹配線分段連 續運作的可能性,而是考慮獨立的時脈循環,可提足夠快 ‘ 速的處理程序來實施必須的電路。另外,Zukowski等人所 , 發表的做法仍然依賴預充電至邏輯f 3ΗΓ (高位準)狀態,而仍 — 然會消耗大量電流,如上文所述。 因此,需要一種在搜尋作業期間之電力消耗少於傳統搜 尋技術的CAM。 φ 發明内容 根據本發明,本發明提供一種用於在一搜尋作業期間選 擇性啟用一可定址内容記憶體(CAM)陣列中一列内之複數 ‘ 個匹配線分段的至少一匹配線分段,每個匹配線分段都具 · 有耦合至該處的複數個CAM單元,該方法包括下列步驟: (a) 將該等匹配線分段設定成一第一搜尋結果狀況; (b) 針對一第二搜尋結果狀況,評估一第一匹配線分段;(i) 1302706, the description of the invention (there is a technical field, prior art, content, embodiments, and drawings of the invention). The present invention generally relates to addressable content memory (CAM). The field, in particular, relates to circuits and methods for reducing power usage during a search operation in a CAM. Prior Art CAM is a memory device in which access to and modification of data is based on the location of the stored bedding rather than the location of the stored data. Typically, a typical CAM search job involves receiving a search data block and comparing the search data block with all items in the CAM to determine if there is a single match between the search data block and all items in the CAM. Multiple matches or no matches. All of the storage locations in the CAM column are connected to a harness that indicates a comparison of the mismatched results of the stored data block with the search data block. All match lines indicating the match condition are typically processed by a priority encoder (PE) to determine the highest priority match address provided as the output of the CAM. Within the CAM, each data block and match line combination has a unique n-bit address. Therefore, up to 2N pieces of wiring can be activated for any search cycle. A priority sequencer is coupled to the match lines and produces an N-bit address corresponding to the most south-first order enable match line. The N-bit address is then used, for example, as an indicator in the Internet Protocol (IP) routing table query, compression and decompression implemented in a microprocessor system or in a fully combined cache memory implementation. Because Ternary CAM has the ability to store logic, 1", logic "0&", and "arbitrary value", it is widely used in network applications. The benefits of CAMS for a wider data width increase. On the market 1302706 (2) Description of the invention Continued page The CAM with a data width (marked by )) of 72 bits, 144 bits and the nearest 288 bits can usually be purchased. As the data blocks are incremented, the power consumption or current consumption during the search for jobs in the CAM is becoming more and more important. The reasons are explained below. In the search job, the data is provided to the CAM to compare the stored data. The CAM unit is typically designed such that the match between the search data and the stored data provides a non-conductive path that does not match to provide a conductive path. A column of CAM consists of cells coupled in parallel between the match line (ML) and the tail line (TL). Each individual match line (ML) is connected to one unit (where Μ is the number of bits, or usually the data width). In general, in a search operation, the meta-search data is provided to a search data path consisting of a search line coupled to the corresponding CAM unit. Then, in each unit that is typically implemented as a mutually exclusive or (XOR) operation comparison block, all the queues of the CAM compare the search data with the stored data at the same time, and provide the comparison result to each column of the CAM. Each match line. Next, the match line on the match line is typically sensed, amplified, and latched to provide a logical level result for the search job. There are two main sources during the search operation in the CAM that are substantially power consumption: the power consumed by the match lines and the power consumed by the search lines. By convention, all match lines are precharged to a logical 'FT (high level) state (matching condition), and then search data comparison is allowed to cause the match lines to fall to a logic (low level) state (mismatch condition) . In most CAM applications, the frequency of "miss" is higher than 1302706. (3) The frequency of occurrence of "hit". When the match line is precharged to the logic W彳 high level) and the match line is discharged to the logic f L ' (low level) for mismatch, due to the current consumption associated with all match lines for each search operation charging and discharging It is easy to cause high power consumption. In addition, because the number of cells connected to each match line is increased in a wide block CAM application, the capacitance of the match line will increase, resulting in an increase in the current required to charge and discharge the match. Various solutions have been proposed for reducing power consumption during a search operation, for example, segmenting a match line into a plurality of segments, and continuously starting the segments based on matching or mismatching results of the previous segment. A segmented match line architecture is disclosed in U.S. Patent No. 6,243,280 (Wong et al.), which divisions the CAM column into a plurality of segments. A first segment of the plurality of match lines is precharged for each match line, and a search job is performed in the first segment. In the event that the first segment matches, the first match line segment is selectively pre-charged and the search job proceeds to the second segment. If the second segment is matched, the third segment is pre-charged and the search job continues in a similar manner until all segments of a match line have been searched. Therefore, precharging a subsequent segment will only occur if the previous segment is matched. If all segments match, each segment is selectively precharged to logic Η' (high level), however a large amount of current is still required. In addition, there is a significant delay in the seek time since it is necessary to wait for the selective precharge of the segment to occur before proceeding with the actual comparison in the segmentation. In US Patent No. 6,191,970 (Pereira), a match line is divided into multiples 1302706 ____ (4) Ming: Continued page _ —·~~ segments, before starting the search job, 'all segments first'顇 Charge to logic, Η, (high level) state. In addition, each CAM cell has a / correlation discharge circuit for selectively discharging its corresponding match line segment in response to a disable signal from a previous match line segment. Therefore, only one segment will be mismatched, and all subsequent segments will be precharged to logic, H, (high level), and a segment will be discharged. As a result, a segment's mismatch condition propagates along the remaining segments of the column without discharging all other segments along the column. While this approach slows the delay caused by selective pre-charging segments, the potential problem of high current consumption still exists because all memory must be pre-charged to a logic, H, (high level) state. In addition, the match detection for each segment must be synchronized to a clock signal, providing a clock from pre-charging of the match line to hit. As a result, some internal time earning must be generated, or the system clock must be used to increase system wait time. Finally, to prevent discharge prior to enabling segmentation, a tandem device is added to each CAM cell, thereby increasing wafer area and reducing overall operating speed. In the 1997 "Use of Selective Precharge for Low Power on the Match Lines of Content Addressable Memories" by Zukowski et al., a method for pre-charging small segments of the entire match line is published and used in execution. Some of the first segment segments are compared, and only when the first segment segment matches, the other segments of the match line are pre-charged, and finally the search is performed. The article also suggests 'theoretically should extend the selective pre-charging technique to cover more than one level, but during a single-level selective pre-charging, the additional signal 1302706 _ rs, I invention continuation (overhead), extra The clock phase and additional buffering do not cause any significant extra gain. This approach does not consider the possibility of multiple line segments being continuously operated, but considers independent clock cycles, which can be fast enough to implement the necessary circuits. In addition, Zukowski et al., published practices still rely on pre-charging to a logical f 3 ΗΓ (high level) state, while still consuming a large amount of current, as described above. Therefore, there is a need for a CAM that consumes less power during a search operation than conventional search techniques. φ SUMMARY OF THE INVENTION According to the present invention, there is provided a method for selectively enabling at least one match line segment of a plurality of 'match line segments' in a column of an addressable content memory (CAM) array during a search operation, Each of the match line segments has a plurality of CAM units coupled thereto, the method comprising the steps of: (a) setting the match line segments to a first search result condition; (b) targeting one Second search result status, evaluate a first match line segment;
(c)選擇性啟用一第二匹配線分段,以響應該第一匹配線 分段中的該第二搜尋結果狀況,以致可以偵測該第二搜尋 結果狀況。 根據本發明的另一項觀點,本發明提供一種包含複數列 之可定址内容記憶體(CAM),每列都包含: (a) 具有耦合至該處之複數個CAM單元的複數個匹配線分 段; (b) —電路,用以將該等匹配線分段預充電至一第一搜尋 -10- 發明說明績頁 1302706 (6) 結果狀況(不匹配); 該分段都包括: (i) 一感應電路,用以偵測一第二搜尋結果狀況(命中); (ii) 一電路,用以啟用一後續分段中的一預充電路徑’以 偵測該第二搜尋結果狀況(匹配)。 實施方式 在以下的說明中,相似的參考數字代表圖式中相似的結 構。 現在請參考圖1 a,圖中顯示用於引用本發明所討論之主 元件的典型CAM 100的簡化方塊圖。熟習此項技術者應明 白,CAM裝置包含非直接相關於本發明之Θ於各種其他功 能的許多其他組塊,因此基於簡化而省略。CAM 100包含 以行列方式排列的CAM單元104之CAM陣列102,並且其中 每列中的單元都被耦合至一共有匹配線(ML)。就三元 (Ternary)CAM而言,每個單元都儲存三種狀態之一:邏輯 ” Γ’(或稱為邏輯fIT(高位準))、邏輯"〇,’(或稱為邏輯,l,(低 位準))及”任意值,,(或稱為’X,),用以實際儲存兩位位元資 料。一般而言,CAM的每列都儲存一字組資料。一位址解 碼為106係用於遠擇CAM陣列102内的任何列,以允許對所 選取之列寫入資料或讀取資料,最常見的情況是將資料寫 入或載入至CAM。雙向資料存取電路114在陣列1〇2與 CAM晶片資料接針(圖中未顯示)之間傳送資料,以供外部 處理器(圖中未顯示)存取。鄰接於CAM陣列1〇2的是匹配線 感應私路,’且塊110,該匹配線感應電路組塊11 〇包含N個匹 1302706 ι_ m I發明說明續露 配線感應電路,並且用於在搜尋作業與比較作業期間輸出 一 N位元結果112。所有列的匹配線感應電路組塊輸出都會 被一優先順序編碼器114處理,以產生相對應於所匹配字 組之位置的最高優先順序匹配位址(即,最低實體位址)。 多匹配偵測電路116也被耦合以接收來自匹配線感應電路 110的輸出,接著產生一兩位元輸出Q 0、Q 1,用於表示不 匹配、只有一個匹配或多匹配。(c) selectively enabling a second match line segment responsive to the second search result condition in the first match line segment such that the second search result condition can be detected. According to another aspect of the present invention, the present invention provides an addressable content memory (CAM) comprising a plurality of columns, each column comprising: (a) a plurality of matching line points having a plurality of CAM units coupled thereto (b) - a circuit for precharging the matching line segments to a first search - 10 Description of the Invention Page 1302706 (6) Result status (mismatch); a sensing circuit for detecting a second search result condition (hit); (ii) a circuit for enabling a pre-charging path in a subsequent segment to detect the second search result status (matching) ). Embodiments In the following description, like reference numerals represent like structures in the drawings. Referring now to Figure 1a, there is shown a simplified block diagram of a typical CAM 100 for use in reference to the main components discussed herein. It will be apparent to those skilled in the art that CAM devices include many other blocks that are not directly related to the present invention to various other functions and are therefore omitted based on simplicity. The CAM 100 includes a CAM array 102 of CAM cells 104 arranged in a matrix, and wherein the cells in each column are coupled to a common match line (ML). In the case of Ternary CAM, each unit stores one of three states: logic "Γ" (or logical fIT (high level), logic "〇, ' (or logic, l, (low level) and "any value, (or called 'X,)), used to actually store two bits of data. In general, a column of data is stored in each column of the CAM. The address of the address is 106 for any column in the remote CAM array 102 to allow data to be written or read from the selected column. The most common case is to write or load data into the CAM. The bidirectional data access circuit 114 transfers data between the array 1 and the CAM chip data pins (not shown) for access by an external processor (not shown). Adjacent to the CAM array 1〇2 is a match line sensing private path, 'and block 110, the match line sensing circuit block 11 〇 contains N pins 1302706 ι_ m I invention description of the renewed wiring sensing circuit, and used in the search An N-bit result 112 is output during the job and comparison jobs. The match line sense circuit block outputs for all columns are processed by a priority sequence encoder 114 to produce the highest priority match address (i.e., the lowest physical address) corresponding to the location of the matched block. Multiple match detection circuit 116 is also coupled to receive the output from match line sense circuit 110, and then generate a two bit output Q 0, Q 1 for indicating a match, only one match or multiple matches.
現在請參考圖lb,圖中顯示三元CAiM之單元陣列的小子 集(i和i + Ι)。如圖所示,陣列中的每列(i, i + Ι)單元與耦合 至一匹配線MLi之列i中的每個單元104 —起構成資料字 組。每個三元單元104(j,j + Ι...)都包含用於儲存兩位位元的 兩個儲存元件單元A、單元B以及用於比較所儲存之位元Referring now to Figure lb, a small subset (i and i + Ι) of the ternary CAiM cell array is shown. As shown, each column (i, i + Ι) of cells in the array together with each cell 104 coupled to a column i of a match line MLi constitutes a data block. Each ternary unit 104 (j, j + Ι...) contains two storage element units A, B for storing two bits and for comparing the stored bits
與搜尋位元的互斥或(XOR)比較電晶體120。儲存元件單元 A、單元B可能屬於靜態隨機存取記憶體(SRAM)單元或動 態隨機存取記憶體(DRAM)單元中的任一種,這兩種記憶 體都是所熟知的技術(如熟習此項技術者所知,一個6電晶 體型SRAM單元實施明確需要額外的一對互補位元線)。XOR 電晶體1 20是η通道型裝置,用於如果發生不匹配時將匹配 線ML,位準下降至接地。 到目前為止已提供CAM陣列的一般架構,當做用於表達 本發明所解決之特定問題的背景。另外,在接下來的說明 書中,僅基於簡化目的,以CAM架構100為背景來討論本 發明的具體實施例。應明白,本發明的具體實施例同樣應 用於具有其他組態及/或採用任何適當CAM單元的其他可 -12 - 1302706 (8) 發明說明續頁 定址内容記憶體。另外’在接下來的說明書中隨心所欲將 邏輯位準指派給各種信號’因此可以視需要反轉相關裝置 的極性以進行修改。例如,如圖(c)所示的口型x〇R電路HQ 之實施。 現在請參考圖2 (a ),圖1顯示根據本發明具體實絶例 在 一 CAM之所選列中之一已分段匹配線的原理圖。基於青楚 明白,圖中未描繪出位元線、字線、搜尋線及相關電路。 η位元(例如,72位元)匹配線被分割成複數個匹配線分段 MLS〇, MLS,,…,MLSn,例如’每個分段的長度為18位元(因 此,在第一項具體實施例中,有4個匹配線分段,每個匹 配線分段的長度為1 8位元,組成寬度為72位元的字組)。八 段MLSQ至MLSn之每個分段都分別槁合至各自感鹿放大哭 2 1 0的一端。在圖2 (a)所示的具體實施例中,感應放大哭2 1 〇 包含一 CMOS反轉感應放大器。可使用更複雜的感應放大 器來提供一低臨界值感應能力,因此,提供運作速产。每 個CMOS反轉感應放大器210的輸出端被連接至各自的匹配 線帶電路212 ’其中匹配線帶電路212係由一串聯連接一電 流源2 1 6的受控反轉器2 14所組成,該匹配線帶電路的受控 反轉器214係由串聯耦合的P通道型裝置與n通道型裝置所 組成,而P通道型裝置與N通道型裝置係沿著用於啟用n通 道型裝置2 1 8的額外匹配線帶串聯耦合。每個用於啟用n通 道型裝置2 1 8之額外匹配線帶的閘極都是被一相對應的匹 配線分段啟用信號MATLO1、MATLOn所控制,其中n是一 列中位元線分段數目。匹配線分段啟用信號MATLO被連續 -13 - 1302706 (9) I發明說 啟動及撤銷,如下文中進一步的詳細說明所述。如圖2(a) 所示’第一分段MLS0被耦合至匹配線頭端電路22〇(也是由 一串聯連接一電流源216的受控反轉器224所組成)。反轉器 224也是被一啟用中N通道型裝置222所控制,接著該N通道 型裝置222係被一啟用信號MATLOO所控制。可使用一般的 啟用信號(例如,MLEN\)以連同第一分段來同時啟用所有 分段,並且將所有分段維持在啟動時槽,直到已搜尋到整 個字組’但是此項做法所消耗的電力高於圖2所示的較佳 具體實施例。 每個分段MLSG至MLSn都可具有相等數目的位元單元 104,然而,可依據統計電力分1佈原理來選擇位元單元數 目。在圖2所示的CAM中,單元是如圖ic所示的P通道型SRAM 架構CAM單元,其中假使發生不匹配時,會將匹配線位準 下降至VDD(正供應電壓)。在第一分段ML SQ中,匹配線頭 ^電路2 2 0將弟一分段預充電至一不匹S己狀〉兄。就匹配線 頭端電路220而言,受控反轉器224的Ρ通道型及Ν通道型電 晶體都被匹配線啟用信號MLEN\(在搜尋作業開始時產生的 信號)控制。 接下來解說圖2(a)所示之已分段匹配線的運作。在開始 搜尋作業之前,一匹配線中的所有匹配線分段MLSq,MLS !,.·., MLSn都被預充電至不匹配狀態,即,在具體實施例中, 透過每個匹配線帶電路2 12中的P通道裂扭升電晶體預充電 至邏輯,H,(高位準)。在MLEN\信號被確證為邏輯fL,(低位準) 時,匹配線頭端電路220將開始預充電,藉此開啟位於匹 -14- 1302706 (10) 發明說明續頁 配線頭端電路220之反轉器224中的P通道型裝置。結果, 第一匹配線分段MLS。被預充電至邏輯高位準),並且該 第一分段將該邏輯f H’(高位準)信號提供給第一反轉器2 1 0 及第一匹配線帶電路2 i 2(基本上係當做中繼器並且將邏輯 (高位準)傳播至MLS,)。第二分段MLS!的反轉器及第二 匹配線帶電路執行相同的功能,以此類推,直到將整個匹 配線預充電至邏輯’ ΡΓ (高位準),即,不匹配狀況。 在搜尋作業開始時,MATLO信號被維持在邏輯(低位 準),並且搜尋資料被供應至搜尋線(圖中未顯示)。藉由將 匹配線分段MLSQ的MATLOO信號確證為邏輯低位準), 起始比較搜尋資料與所儲存之資料,藉此啟用匹配線頭端 電路220中的電流源。第一匹配線分段的搜尋結果會產生 不匹配或匹配。 在第一種情況中,第一分段之不匹配會導致持續將MLSq 分段預充電至不匹配狀態,即,將維持在邏輯Mf(高位準), 因為在匹配線分段與預充電電壓VDD之間將有至少一單元 提供一導電路徑。介於匹配線分段與VDD間之信號導電路 徑所產生的電流大於匹配線頭端電路220之電流源217所提 供的電流,因此,會越位(override)目前的電流源。結果, 輸入至第一匹配線帶電路之反轉器210的輸入信號是邏輯 f IT (高位準),而輸出至後續分段的匹配線帶電路之輸出維 持在邏輯高位準),藉此停止搜尋後續分段。 在第二種情況中,如果在第一分段MLSQ中偵測到匹配, 則匹配線頭端電路電流源會將該分段的位準下降至邏輯 -15 - 1302706 (11) 發明說明續頁 f L,(低位準),以形成至接地的下降路徑。當該位準到達第 一分段之反轉器感應放大器2 10的切換臨界值時,該反轉 器感應放大器會將其輸出從邏輯Τ'(低位準)切換至邏輯 ’ΙΓ(高位準),接著強制關閉匹配線帶電路212的Ρ通道型拉 升電晶體,並且啟用下一分段 MLSi的位準下降路徑(假設 已啟用下一分段之匹配線分段啟用信號MATL01)。如上文 所述,可以同時啟動所有的MATLO信號至邏輯(高位 準),或依序啟動,如下文中進一步的詳細說明所述。結 果,每個匹配線分段都使用前一分段的搜尋結果來決定是 否要沿著匹配線繼續搜尋。沿著全長匹配線從MLSQ至MLSn 重複這項處理程序,之後將一匹配線的最終匹配結果提供 給優先順序編碼器,以利進一步處理。 因此,一般而T,會使用前一匹配線分段的搜尋結果以 啟用下一匹配線分段之搜尋。如果在一分段中有不匹配, 則會將下一及所有其餘分段繼續預充電至不匹配狀況。如 果一分段中有匹配,則會將匹配結果傳播至下一分段,並 且接著搜尋一後續分段之匹配,並且搜尋繼續進行下一分 段,直到已搜尋最後分段。 在前面的一般說明中,匹配線啟用信號MATLO之啟動及 撤銷係連續執行。可以啟動每個啟用信號以便實質上符合 前一分段的搜尋結果,並且一旦獲得搜尋結果即撤銷啟用 信號。或者,可以同時啟動所有分段啟用信號,並且一旦 已完成搜尋前一分段時依序撤銷分段啟用信號。 將參考圖2(b),圖中顯示根據如上文所述之做法來產生 -16 - 1302706 1 J 發5月說明續買 ~- —— 分 如 晶 帶 厂 電 電 用 轉 配 配 被 的 正 匹 路 顯 每 況 所 產 測 段啟用信號的電路。再次,將典型的匹配線Mu分段成 圖2(a)所tf的n個分段,使用閘極連至VDC^々N通道型電 體230來實施電流源216。每個分段都具有相關的匹配線 私路212(如圖2(a)所示)及一 「相黏」(sticky)鎖存器,該 相黏」鎖存器包含反轉感應放大器21〇及一 N通道型拉降 晶體232 ,用以保存匹配狀況,即,當將匹配線分段放 至接地時。甚至已停用相關匹配線分段的匹配線分段啟 仏號MATLO之後,該「相黏」鎖存器仍然可透過介於反 為210與拉降電晶體232之間的回授連接,將其相關的匹 線分段保持在邏輯,L,(低位準)。 每個分段都會從匹配線時序控制組塊25〇接收其相關匹 線分段啟用信號MLS〇、…、MATL〇r^時序控制組塊 轉合以接收參考或虛設匹配線26〇(也被分段成η個分段) 時序信號。虛設匹配線分段DMLS〇·.· DMLSN完全相同於 規匹配線分段,即,也具有相關的虛設匹配線帶電路和 配線頭端電路,除了在搜尋作業開始時,匹配線頭端電 和虛設匹配線帶電路都接收藉由搜尋控制電路(圖中未 示)所產生的虛設匹配線啟用信號DMLEN\以外。連接至 個虛設匹配線分段的虛設單元262都被硬接線為匹配狀 ,即,針對圖1(c)所示的P通道型SRAM CAM單元實施, 有搜尋和比較XOR閘極都被硬接線至VDD。 虛設匹配線的功能完全相同於正規匹配線的運作,以便 生用於撤銷相對應正規匹配線分段的適當時序。藉由偵 一虛設匹配線的匹配狀沉,以及依據虛設匹配線的感應 -17 - 1302706 發明說明續頁 以配置 時序來計時相關正規匹配線之電流源的撤銷時序 用於感應正規匹配線分段的適當時間長度,並且撤銷已完 成(分段的匹配線感應,以此方式降低電力消耗。此外, 針對正規匹配線之自行計時來使用虛設匹配線,可確保所 有相關MLK的一致時序不受處理程序或溫度變化影響。 接下來解說圖2(b)中所討論之自行計時型匹配線分段的 一般運作。前文中已參考圖2(a)來討論已分段之匹配線的 運作。圖2(b)所示之具體實施例的額外控制功能是啟動 MATLO信號的時序。 在預充電期間’正規匹配線分段及虛設匹配線分段都被 預充電至不匹配狀、况’如上文所述。當cam接收的一搜1尋 命令時’搜尋控制電路(圖中未顯示)確證正規匹配線啟用 信號MLEN\ &虛設匹配線啟用信號dmleN\,用於啟用匹配The transistor 120 is compared to the exclusive or (XOR) of the search bit. The storage component unit A and the unit B may belong to any one of a static random access memory (SRAM) unit or a dynamic random access memory (DRAM) unit, both of which are well-known techniques (such as familiar with this). As known to the skilled artisan, a 6-Chip SRAM cell implementation explicitly requires an additional pair of complementary bit lines). The XOR transistor 126 is an n-channel type device for matching the line ML if a mismatch occurs, and the level is lowered to ground. The general architecture of CAM arrays has been provided to date as a background for expressing the specific problems addressed by the present invention. In addition, in the following description, specific embodiments of the present invention are discussed in the context of CAM architecture 100 for simplicity only. It will be appreciated that the specific embodiments of the present invention are equally applicable to other content configurations having other configurations and/or employing any suitable CAM unit -12 - 1302706 (8). In addition, the logic level is assigned to various signals as desired in the following description. Therefore, the polarity of the associated device can be reversed as needed to be modified. For example, the implementation of the lip-type x〇R circuit HQ as shown in (c). Referring now to Figure 2(a), Figure 1 shows a schematic diagram of a segmented match line in a selected column of a CAM in accordance with an embodiment of the present invention. Based on Qing Chu, the bit line, word line, search line and related circuits are not depicted in the figure. The n-bit (eg, 72-bit) match line is split into a plurality of match line segments MLS〇, MLS,,..., MLSn, eg, 'each segment has a length of 18 bits (hence, in the first term) In a specific embodiment, there are 4 match line segments, each match line segment having a length of 18 bits, forming a block of 72 bits in width). Each segment of the eight segments MLSQ to MLSn is respectively coupled to one end of each of the sensing deer to enlarge the crying 2 1 0. In the embodiment shown in Figure 2(a), the inductive amplification cry 2 1 〇 includes a CMOS inversion sense amplifier. More complex inductive amplifiers can be used to provide a low threshold sensing capability, thus providing operational speed. The output of each CMOS inversion sense amplifier 210 is coupled to a respective match line circuit 212' wherein the match line circuit 212 is comprised of a controlled inverter 2 14 connected in series with a current source 2 16 . The controlled inverter 214 of the match line circuit is composed of a P-channel type device and an n-channel type device coupled in series, and the P-channel type device and the N-channel type device are used along the device for enabling the n-channel type device 2 The additional matching lines of 1 8 are coupled in series. Each of the gates for enabling the additional match line of the n-channel type device 2 1 8 is controlled by a corresponding match line segment enable signal MATLO1, MATALn, where n is the number of bit line segments in a column . The match line segment enable signal MATLO is continuously -13 - 1302706 (9) I invented to start and revoke, as described in further detail below. As shown in Fig. 2(a), the first segment MLS0 is coupled to the match line head terminal circuit 22 (also composed of a controlled inverter 224 connected in series to a current source 216). The inverter 224 is also controlled by an enabled N-channel type device 222, which is then controlled by an enable signal MATLOO. A general enable signal (eg, MLEN\) can be used to enable all segments simultaneously with the first segment, and all segments are maintained in the boot time slot until the entire block has been searched 'but this practice consumes The power is higher than the preferred embodiment shown in FIG. 2. Each of the segments MLSG to MLSn may have an equal number of bit cells 104, however, the number of bit cells may be selected in accordance with the statistical power division principle. In the CAM shown in Figure 2, the cell is a P-channel type SRAM architecture CAM cell as shown in Figure ic, in which case the match line level is reduced to VDD (positive supply voltage) if a mismatch occurs. In the first segment ML SQ, the matching line header circuit 2 2 0 pre-charges the sub-section to a non-small state. In the case of the match line head circuit 220, both the channel type and the channel type transistor of the controlled inverter 224 are controlled by the match line enable signal MLEN\ (the signal generated at the start of the search operation). Next, the operation of the segmented match line shown in Fig. 2(a) will be explained. Before the start of the search job, all match line segments MLSq, MLS !, . . . , MLSn in a match line are precharged to a mismatched state, ie, in a specific embodiment, through each match line circuit The P-channel split-twist crystal in 2 12 is precharged to logic, H, (high level). When the MLEN\ signal is asserted as logic fL, (low level), the match line head circuit 220 will begin pre-charging, thereby turning on the reverse of the splicing head-end circuit 220 at the end of the sigma-14-1302706 (10) A P-channel type device in the rotator 224. As a result, the first match line segments the MLS. Pre-charged to a logic high level), and the first segment provides the logic f H ' (high level) signal to the first inverter 2 1 0 and the first matching line circuit 2 i 2 (basically As a repeater and propagate logic (high level) to MLS,). The second segment MLS!'s inverter and the second match line circuit perform the same function, and so on, until the entire harness is precharged to logic 'ΡΓ (high level), i.e., mismatched condition. At the beginning of the search job, the MATLO signal is maintained at logic (low level) and the search data is supplied to the search line (not shown). By comparing the MATLOO signal of the match line segment MLSQ to a logical low level, the comparison search data and the stored data are initiated, thereby enabling the current source in the match line head circuit 220. The search result of the first match line segment will produce a mismatch or match. In the first case, a mismatch in the first segment causes the MLSq segment to be precharged to a mismatched state, ie, will remain at the logic Mf (high level) because of the match line segmentation and precharge voltage There will be at least one cell between VDD providing a conductive path. The signal path between the match line segment and VDD produces a current greater than the current supplied by the current source 217 of the match line head circuit 220, thus overriding the current current source. As a result, the input signal input to the inverter 210 of the first match line circuit is logic f IT (high level), and the output of the match line circuit output to the subsequent segment is maintained at a logic high level, thereby stopping Search for subsequent segments. In the second case, if a match is detected in the first segment MLSQ, the matching line head circuit current source will drop the level of the segment to logic -15 - 1302706 (11) f L, (low level) to form a descending path to ground. When the level reaches the switching threshold of the inverter inductive amplifier 2 10 of the first segment, the inverter sense amplifier switches its output from logic Τ ' (low level) to logic 'ΙΓ (high level) Then, the Ρ channel type pull-up transistor of the match line circuit 212 is forcibly turned off, and the level down path of the next stage MLSi is enabled (assuming that the match line segment enable signal MATL01 of the next stage is enabled). As described above, all MATLO signals can be simultaneously enabled to logic (high level), or sequentially, as described in further detail below. As a result, each match line segment uses the search results from the previous segment to determine whether to continue searching along the match line. This process is repeated from MLSQ to MLSn along the full length match line, after which the final match of a match line is provided to the priority encoder for further processing. Therefore, in general, T will use the search result of the previous match line segment to enable the search for the next match line segment. If there is a mismatch in a segment, the next and all remaining segments will continue to be precharged to a mismatch condition. If there is a match in a segment, the match is propagated to the next segment, and then a match for a subsequent segment is searched, and the search continues with the next segment until the last segment has been searched. In the foregoing general description, the start and revocation of the match line enable signal MATLO is continuously performed. Each enable signal can be activated to substantially match the search results of the previous segment, and the enable signal is revoked once the search result is obtained. Alternatively, all segment enable signals can be initiated at the same time, and the segment enable signal is sequentially cancelled once the previous segment has been searched. Reference will be made to Figure 2(b), which shows the production according to the method as described above - 16 - 1302706 1 J. May May Continue to buy ~- —— as the ribbon factory power transmission with the matching The circuit displays the circuit for enabling the signal for each segment. Again, the typical match line Mu is segmented into n segments of tf of Figure 2(a), and the current source 216 is implemented using a gate connected to the VDC^々N-channel type of power 230. Each segment has an associated match line private path 212 (shown in Figure 2(a)) and a "sticky" latch that includes a reverse sense amplifier 21〇 And an N-channel pull-down crystal 232 for preserving the matching condition, that is, when the matching line segment is placed to ground. Even after the matching line segmentation number MATLO of the relevant match line segment has been deactivated, the "adhesive" latch can still pass the feedback connection between the reverse 210 and the pull-down transistor 232. Its associated line segmentation remains at logic, L, (low level). Each segment receives its associated line segment enable signal MLS〇,...,MATL〇r^ timing control block turn from the match line timing control block 25〇 to receive the reference or dummy match line 26〇 (also Segmented into n segments) timing signal. The dummy match line segment DMLS〇··· DMLSN is identical to the rule match line segment, that is, also has the associated dummy match line circuit and the wire head circuit, except at the beginning of the search operation, matching the line head end and The dummy match line circuit receives the dummy match line enable signal DMLEN\ generated by the search control circuit (not shown). The dummy cells 262 connected to a dummy match line segment are hard-wired to match, that is, for the P-channel type SRAM CAM cell shown in FIG. 1(c), both the search and compare XOR gates are hardwired. To VDD. The function of the dummy match line is exactly the same as the operation of the normal match line, so that it is used to cancel the appropriate timing of the corresponding normal match line segment. By detecting the matching of the dummy match line and the sensing according to the dummy match line -17 - 1302706, the continuation page is configured to time the undo timing of the current source of the associated normal match line for sensing the normal match line segmentation. The appropriate length of time, and the revocation is complete (segmented match line sensing, in this way reduces power consumption. In addition, the use of dummy match lines for the self-time of the regular match line ensures that the consistent timing of all relevant MLKs is not processed. Program or temperature change effects. Next, the general operation of the self-timed match line segment discussed in Figure 2(b) is explained. The operation of the segmented match line has been discussed above with reference to Figure 2(a). The additional control function of the specific embodiment shown in 2(b) is the timing to initiate the MATLO signal. During the pre-charge period, both the regular match line segment and the dummy match line segment are precharged to a mismatch, condition 'as above The search control circuit (not shown) confirms the normal match line enable signal MLEN\ & dummy match line enable signal when the cam receives a search command dmleN \, to enable match
且開始搜尋第一匹 能最快速流通路徑。 配線帶電路2 12。在搜尋資 證匹配線頭端啟用信號 弟一匹配線分段。同時,匹配線時 斤有其他分段MATL01至MATLOn的啟 、结果提供從某分段至另一分段的可And start searching for the first fastest flow path. Wiring strap circuit 2 12. Enable the signal at the head of the search match match line. At the same time, the matching line has other segments MATL01 to MATLOn, and the result provides a segment from one segment to another.
段DMLS0為邏輯,L,(低位準)), 篆為,統計上,如果第一分段有 匹配線的後續分段中找不到匹 配狀況(即,第一虛設匹配線分 則會藉由反轉器感應放大器 -18- 1302706 發明說明續頁 (14)Segment DMLS0 is logical, L, (low level), 篆, statistically, if there is no matching condition in the subsequent segment with the matching line of the first segment (ie, the first dummy matching line is divided by Inverter sense amplifier -18- 1302706 Description of invention Page (14)
的輸出來確證「完成MATLOO」信號。「完成MATLOO」信 號被提供給匹配線時序控制電路,接著該匹配線時序控制 電路撤銷確證匹配線頭端啟用信號MATLOO,藉由撤銷第 一匹配線分段MLSQ。一旦在第二虛設匹配線分段偵測到匹 配結果,隨即將「完成MATL01」信號提供給匹配線時序 控制電路250,接著該匹配線時序控制電路250撤銷第二匹 配線分段MLSi。虛設匹配線分段繼續以此方式來感應及提 供「完成MATLO」信號,直到已感應所有虛設匹配線分段, 藉此提供連續撤銷相對應的正規匹配線分段。或者,只有 在已搜尋且感應最後分段後,才能撤銷第一分段後的分 段。The output confirms the "complete MALOTO" signal. The "Complete MATLOO" signal is provided to the match line timing control circuit, and then the match line timing control circuit deasserts the match line head enable signal MATLOO by undoing the first match line segment MLSQ. Once the match result is detected in the second dummy match line segment, the "Complete MATL01" signal is supplied to the match line timing control circuit 250, and then the match line timing control circuit 250 cancels the second wire segment MLSi. The dummy match line segment continues to sense and provide a "complete MATLO" signal in this manner until all dummy match line segments have been sensed, thereby providing a corresponding normal match line segment for successive undo. Alternatively, the segment after the first segment can be revoked only after the last segment has been searched and sensed.
請注意,如上文所述,藉由將匹配線分段成複數個分段, 並且還結合將每個匹配線分段預充電至匹配狀況來選擇性 控制每個匹配線分段之啟動及撤銷,就可達成顯著的省電 效果。另外,從某分段至另一分段的搜尋作結果流通考慮 到非常快速的搜尋作業。隨著字組寬度增加,可將這項做 法擴充到使用匹配線分段群組之間的管道層級,如下文中 進一步的詳細說明所述。 請參考圖3(a),圖中顯示根據本發明的另一項具體實施 例,其中包含N通道型ML互斥或(XOR)拉降裝置。基於簡 化的理由,圖中所示的典型三元CAM單元只使用互斥或 (X〇R)拉降電晶體。每個匹配線帶電路212都包含串聯連接 的一 p通道型電流源電晶體及一反轉器(例如,分別是P 3、 P4、N2)匹配線頭端電路的中間P通道型電晶體被硬接線至 -19- 1302706 發明說明續頁 (15) 接地。每個匹配線分段ML 1、ML 2等等都具有相關的反轉 器感應放大器(如圖2 (a)所示),並且每個反轉器感應放大 器的輸出被標示為MLSOl、MLS02等等。將啟用信號/EN 同時提供給所有匹配線帶電路2 1 2。Note that as described above, the start and revocation of each match line segment is selectively controlled by segmenting the match line into a plurality of segments and also in conjunction with precharging each match line segment to a match condition. A significant power saving effect can be achieved. In addition, the search for results from one segment to another allows for very fast search operations. As the block width increases, this approach can be extended to use the pipe hierarchy between the match line segment groups, as described in further detail below. Referring to Figure 3(a), there is shown another embodiment in accordance with the present invention comprising an N-channel type ML repulsion or (XOR) pull-down device. For the sake of simplicity, the typical ternary CAM cell shown in the figure uses only mutually exclusive or (X〇R) pull-down transistors. Each of the matching strip circuits 212 includes a p-channel type current source transistor connected in series and an intermediate P-channel type transistor in which an inverter (for example, P 3 , P4, N2, respectively) is matched to the line end circuit. Hardwire to -19- 1302706 Description of the invention (15) Grounding. Each of the match line segments ML 1, ML 2, etc. has an associated inverter sense amplifier (as shown in Figure 2 (a)), and the output of each inverter sense amplifier is labeled as MLSOl, MLS02, etc. Wait. The enable signal /EN is supplied to all of the match line circuits 2 1 2 at the same time.
現在將參考圖3(a)及圖3(b)的時序圖來說明本具體實施 例的一般運作。在預充電期間,啟用信號處於邏輯fH彳高 位準),因此會將所有匹配線分段預充電至不匹配狀態。 預充電漣波直到所有匹配線分段,如前文中已參考圖2(a) 的討論所述。當啟用信號處於高位準時,可將新的搜尋資 料提供給搜尋資料路徑(圖中未顯示)。當啟用信號被確證 為邏輯T彳低位準i時,則會啟用第一匹配線分段ML1。電 晶體P2被調整以致一單一位元不匹配將使匹配線分段維持 在邏輯f L ’(低位準),即,匹配線將繼續被預充電至不匹配 狀態。因此,電晶體P2的電流驅動能力必須顯著低於CAM 單元中任何兩個串聯的拉降互斥或(X〇R)裝置。假使匹配 線分段上的所有單元皆匹配,則匹配線分段ML會慢慢上 升到邏輯· Hf (高位準),即,匹配狀態。這些因為電流驅動 能力相對弱的P2裝置導致相對慢速上升。一旦ML 1超過靜 態匹配線分段感應放大器的切換臨界值(圖中顯示簡單型 反轉器,但是可使用更複雜的電路來提供較低的臨界值, 因此加速運作速度);就則釋出第二匹配線分段。 請參考圖3(b),時序圖顯示第一搜尋,其中在第一分段 有匹配之後接著第二分段有匹配。可實施任何分段數目, 而只會限制速度圖3(a)中顯示匹配線分段1和2)。在一個信 -20- 1302706 發明說明續頁 (16) 號/ΕΝ邏輯「L’(低位準)週期期間(通常是一個時脈循環), 只要匹配結果有足夠的時間傳播至所有匹配線分段,圖3(a) 所示的具體實施例就非常適合提供遍及匹配線分段的搜尋 結果流通運作。圖3 (b)也顯示第二搜尋,其中第一匹配線 分段有不匹配。於是,在下一分段中不會發生進一步信號 轉變,導致節省效果。The general operation of this embodiment will now be described with reference to the timing diagrams of Figures 3(a) and 3(b). During precharge, the enable signal is at logic fH彳 high, so all match line segments are precharged to a mismatched state. Pre-charge chopping until all match line segments, as previously discussed with reference to Figure 2(a). When the enable signal is at a high level, new search data can be provided to the search data path (not shown). The first match line segment ML1 is enabled when the enable signal is asserted as a logical T彳low level i. The transistor P2 is adjusted such that a single bit mismatch will maintain the match line segment at logic f L ' (low level), i.e., the match line will continue to be precharged to the unmatched state. Therefore, the current drive capability of transistor P2 must be significantly lower than any two series of pull-down mutual exclusion or (X〇R) devices in the CAM cell. If all the cells on the match line segment match, the match line segment ML will slowly rise to the logical Hf (high level), ie, the match state. These P2 devices, which are relatively weak in current drive capability, cause a relatively slow rise. Once ML 1 exceeds the switching threshold of the static matching line segmented sense amplifier (the simple invertor is shown, but a more complex circuit can be used to provide a lower threshold, thus speeding up the operation); The second match line segment. Referring to Figure 3(b), the timing diagram shows a first search in which the second segment has a match after the first segment has a match. Any number of segments can be implemented, and only the speed is shown in Figure 3(a) for matching line segments 1 and 2). In a letter -20- 1302706, the description of the continuation (16) / ΕΝ logic "L' (low level) cycle (usually a clock cycle), as long as the matching result has enough time to propagate to all match line segments The specific embodiment shown in Figure 3(a) is well suited to provide search result circulation operations across the matching line segments. Figure 3(b) also shows a second search in which the first match line segment has a mismatch. No further signal transitions will occur in the next segment, resulting in savings.
如上文所述,使用本做法來分段匹配線的優點包括:透 過在偵測到前面分段不匹配後排除不必要的信號轉變,達 成省電效果;提高運作速度,其中匹配線電阻/電容RC延 遲極為重要(這項技術縮短RC/η延遲,其中η是分段數目, 而RC是分段前之全匹配線ML的時間常數)。此外,缸對深 度亞微米處理,處於” offn (關閉)狀態之裝置的洩漏電流可 能非常顯著,尤其將72位元或144位元CAM單元連接至單一 匹配線時。如果累積的洩漏電流接近單一位元不匹配的電 流時,就無法判斷匹配與不匹配。藉由將匹配線細分成數 個分段,就可減少並聯連接之潛在洩漏電流路徑的數目, 並且解決問題。 假使發生匹配線分段不匹配時,則在相關匹配線帶電路 中的p通道型拉升電晶體與CAM單元本身中的一或多個串 聯拉降路徑之間會有靜態電流流動。藉由停用登錄不匹配 的分段及所有後續分段,就可排除這項電流浪費。如圖4 所示,根據本發明另一項具體實施例,直接藉由參考或虛 設匹配線來產生此類停用信號。請注意,可替換使用術語 「參考匹配線」和「虛設匹配線」,並且表示相同結構。 -21 · 1302706 (17) 發明說明績頁 如參考圖3所說明所述,參考匹配線的數目完全相同於單 元及匹配線帶電路數目,以匹配線正規匹配線的電容,但 是所有的CAM單元都被硬接線至t資料,以致建立匹配狀 況。當在參考匹配線分段上偵測到匹配時,會透過相關的 DISABLE(停用)信號來切斷該分段中所有相關正規匹配線 的電流。還會使用相關的DISABLE(停用)信號,以透過圖4 所示的回授連接來停用參考匹配線分段。 介於匹配線超過相關反轉器感應放大器可偵測之匹配臨 界值的時間與關閉p通道型電流源的時間之間應有足夠的 時序邊緣,以考慮到介於啟用中匹配線分段與相關參考匹 配線分段之間的不一致。藉由透過反轉器鏈驅動停用信號 的時間延遲,或藉由在正規匹配線感應放大器中設計較低 的切換臨界值及在參考匹配線感應放大器中設計較高的切 換臨界值,就可達成足夠的時序邊緣。 關掉電流源的另一項做法是,只使用參考匹配線的最終 層級的輸出來關掉已分段匹配線陣列的所有層級,如參考 圖2(b)的簡短說明所述。因為會在較長的時間週期啟用較 前面的層級,所以會稍微更浪費電子,但是會導致更簡單 的撤銷機制。 請參考圖5(a),圖中顯示根據本發明的進一步具體實施 例,用於達成更快的運作速度。在本具體實施例中,每個 匹配線分段都具有整個時脈循環來完成每分段的搜尋作業 與比較作業。因此,在本具體實施例中,每個匹配線分段 都是用管道輸送,以致可使用整個時脈週期間形成一不匹 -22- 1302706 發明說明績頁 (18) 配或匹配指示。與每個匹配線分段相關的靜態匹配線感應 放大器(如同前面在圖3和圖4所示之具體實施例中實施的 反轉器)都被D型正反器取代,該D型正反器係藉由啟用信 號/EN提供時脈,並且儲存各自匹配線分段的搜尋結果。 或者,如上文所述,可使用更複雜的電路,然後鎖存感應 放大器的輸出。 如圖5(a)所示,暫存器係由多個D型正反器(每行CAM單 元一個D型正反器)與相關的邏輯閘所組成,用於將搜尋資 料路徑連接至每個CAM單元。藉由在搜尋資料路徑中採用 暫存器,只有在前一分段中已發現匹配結果時,才會將搜 尋資料選擇性喪供給下一分段。或者,假使前一分段不匹 配,會不會將搜尋資料傳遞至後續分段的CAM單元,因此 可以顯著節電。搜尋資料和遮罩資訊被轉換成三元格式並 且被D型正反器鎖存,以驅動用於存取每個陣列中所有列 CAM單元的搜尋線。針對第一分段(即,匹配線頭端電路 所驅動的分段),由於沒有前一分段搜尋結果,所以會無 條件鎖存該等搜尋資料信號。藉由/EN的上升邊緣,在比 較作業結束時,會將匹配結果記錄在D型正反器中。 以相同於第一管道層級的方式,將第二管道層級(即, 第二匹配線分段)的搜尋資料無條件鎖存至第一暫存器 中。然而,為了使用前一層級的搜尋結果來判斷是否要繼 續搜尋,需要一額外暫存器來延遲該搜尋資料,直到可取 得第一層級匹配/不匹配指示。第二管道廣級是一由多個D 型正反器所組成的暫存器,每個D型正反器都是被用於表 -23 - 1302706 (19) 發明說明續頁 示所有第一分段匹配結果的結果所啟用,如下文中進一步 的詳細說明所述,即,只有當/EN輸入是邏輯T彳低位準) 時才會變更D型正反器的輸出。這可防止當前一層級結果 是不匹配時會變更搜尋資料,並且藉此節省相當多的C V 電力,否則搜尋線的不必要轉變會造成電力浪費。針對每 個額外ML分段,必須將進一步管道層級加入至搜尋資料 路徑。只有最後層級才需要被匹配線偵測信號控制。 藉由陣列之分段中所有匹配線所控制的有線「或」(〇R) 電路來啟用該等搜尋資料暫存器。陣列分段中任何匹配線 分段的匹配都會將\ SLDEN信號拉降至邏輯Τ’(低位準),以 允許透過搜尋線來記錄新的搜尋資料^當匹配線分段上發 生比較作業時,會藉由/ΕΝ來預充電「或」(OR)節點。 本具體實施例中還可加入對如參考圖4所討論的p通道型 電流源的自行計時關掉,以便節省更多電力。 圖5b顯示圖5a所示之具體實施例的一般運作時間。 雖然已配合其特定具體實施例及特定使用來說明本發 明,熟知技藝人士應明白有各種修改,而不會脫離本發明 的精神。 說明書中所採用的特定術語及措辭都是當做說明的術語 而不是限制,使用這些術語及措辭方面沒有任合限制,包 含圖中所示及所說明之功能的任何同等項或其一部份,但 是應明白可有各種修改而皆屬本發明範疇。 圖式簡單說明 藉由實施來說明本發明的功能及優點,並且任何方法都 -24- 1302706 發明說明續頁 (20) 不是用來限制本發明範疇,下列圖式中說明本發明的特定 具體實施例: 圖1(a)顯示典型CAM的簡化方塊圖; 圖1(b)顯示圖1(a)所示之CAM陣列之一部份的原理圖; 圖1(c)顯示三元單元的原理圖; 圖2(a)顯示根據本發明一項具體實施例之CAM陣列中一 列的方塊圖; 圖2(b)顯示根據本發明另一項具體實施例之CAM陣列中 一列的圖式; 圖3(a)顯示根據本發明另一項具體實施例之CAM陣列中 一列的圖式; 圖3(b)顯示圖3(a)所示之CAM中搜尋作業的時序圖; 圖4顯示本發明自行計時具體實施例的圖式; 圖5(a)顯示根據本發明另一項具體實施例之管道型CAM 的圖式;以及 圖5(b)顯示圖5(a)所示之CAM中搜尋作:讀的時序圖。 圖式代表符號說明 100 可定址内容記憶體(CAM) 102 CAM陣列 104 CAM單元 106 位址解碼器 114 雙向資料存取電路 114 優先順序編碼器 1 10 匹配線感應電路組塊 -25 - 1302706 發明說明績頁 (21) 112 N位元結果 116 多匹配偵測電路 120 互斥或(XOR)比較電晶體 210 感應放大器 212 匹配線帶電路 214,224 受控反轉器 216,217 電流源As mentioned above, the advantages of using this method to segment the matching line include: achieving power saving effect by eliminating unnecessary signal transitions after detecting the previous segment mismatch; increasing the operating speed, wherein the matching line resistance/capacitance The RC delay is extremely important (this technique shortens the RC/η delay, where η is the number of segments and RC is the time constant of the full match line ML before segmentation). In addition, the cylinder leakage depth sub-micron processing, the leakage current of the device in the "offn" state may be very significant, especially when connecting a 72-bit or 144-bit CAM cell to a single match line. If the accumulated leakage current is close to a single When the bit does not match the current, it is impossible to judge the match and the mismatch. By subdividing the match line into several segments, the number of potential leakage current paths connected in parallel can be reduced, and the problem can be solved. When there is no match, there will be a quiescent current flow between the p-channel pull-up transistor in the associated match line circuit and one or more series pull-down paths in the CAM cell itself. By disabling the login mismatch This current waste can be eliminated by segmentation and all subsequent segments. As shown in Figure 4, in accordance with another embodiment of the present invention, such a disable signal is generated directly by a reference or dummy match line. The terms "reference match line" and "dummy match line" are used interchangeably and represent the same structure. -21 · 1302706 (17) Description of the Invention As explained with reference to Figure 3, the number of reference match lines is exactly the same as the number of cells and match line circuits to match the capacitance of the line normal match line, but all CAM cells They are hardwired to the t-data so that a match is established. When a match is detected on the reference match line segment, the current of all relevant normal match lines in the segment is cut off by the associated DISABLE signal. The associated DISABLE signal is also used to disable reference match line segmentation via the feedback connection shown in Figure 4. There should be sufficient timing edges between when the match line exceeds the match threshold detectable by the associated inverter sense amplifier and when the p-channel current source is turned off, to account for the match line segmentation between the enable and the enable The inconsistency between the relevant reference match line segments. By driving the time delay of the disable signal through the inverter chain, or by designing a lower switching threshold in the normal match line sense amplifier and designing a higher switching threshold in the reference match line sense amplifier, Achieve sufficient timing edges. Another way to turn off the current source is to turn off all levels of the segmented match line array using only the output of the final level of the reference match line, as described in the short description of Figure 2(b). Because the earlier level is enabled for a longer period of time, it is slightly more wasteful of electronics, but results in a simpler undo mechanism. Referring to Figure 5(a), there is shown a further embodiment in accordance with the present invention for achieving faster operating speeds. In this embodiment, each match line segment has an entire clock cycle to complete the search and compare jobs for each segment. Thus, in the present embodiment, each of the match line segments is piped so that a whole period of time between the clock cycles can be used to form a match or match indication. The static match line sense amplifier associated with each match line segment (like the inverter implemented in the specific embodiment shown in Figures 3 and 4 above) is replaced by a D-type flip-flop, which is a positive and negative D-type The clock is provided by the enable signal /EN, and the search results of the respective match line segments are stored. Alternatively, as described above, a more complex circuit can be used and then the output of the sense amplifier can be latched. As shown in Figure 5(a), the register is composed of a plurality of D-type flip-flops (one D-type flip-flop per row of CAM units) and associated logic gates for connecting the search data path to each CAM units. By using a scratchpad in the search data path, the search data is selectively sent to the next segment only if a match result is found in the previous segment. Or, if the previous segment does not match, the search data will be passed to the CAM unit of the subsequent segment, so that significant power savings can be achieved. The search data and mask information are converted to a ternary format and latched by a D-type flip-flop to drive a search line for accessing all of the column CAM cells in each array. For the first segment (i.e., the segment driven by the matching line head end circuit), since there is no previous segment search result, the search data signals are unconditionally latched. With the rising edge of /EN, the matching result is recorded in the D-type flip-flop at the end of the comparison job. The search data of the second pipeline level (i.e., the second match line segment) is unconditionally latched into the first register in the same manner as the first pipeline level. However, in order to use the previous level of search results to determine whether to continue the search, an additional register is required to delay the search until a first level match/mismatch indication is available. The second pipe is a register consisting of a plurality of D-type flip-flops, and each D-type flip-flop is used for the table -23 - 1302706 (19). The result of the segmentation match result is enabled, as described in further detail below, ie, the output of the D-type flip-flop is changed only if the /EN input is a logic T彳 low level. This prevents the current level of results from changing the search data if it does not match, and thereby saves a considerable amount of C V power, otherwise unnecessary changes in the search line can result in wasted power. For each additional ML segment, a further pipeline level must be added to the search data path. Only the last level needs to be controlled by the match line detection signal. The search data registers are enabled by wired "OR" (〇R) circuits controlled by all of the match lines in the segment of the array. Matching of any match line segment in the array segment will pull the \SLDEN signal down to logic Τ' (low level) to allow new search data to be recorded through the search line. ^ When a comparison job occurs on the match line segment, The OR node will be precharged by /ΕΝ. The self-timed turn-off of the p-channel current source as discussed with reference to Figure 4 can also be added to save more power in this embodiment. Figure 5b shows the general operating time of the embodiment shown in Figure 5a. While the invention has been described with respect to the specific embodiments and specific embodiments thereof The specific terms and phrases used in the specification are intended to be illustrative and not limiting, and the terms and phrases are not intended to be limiting, and any equivalent or part of the functions shown and described in the drawings. However, it should be understood that various modifications are possible and are within the scope of the invention. BRIEF DESCRIPTION OF THE DRAWINGS The function and advantages of the present invention are described by way of example, and any method of the present invention is not intended to limit the scope of the invention, and the specific embodiments of the invention are illustrated in the following drawings. Example: Figure 1(a) shows a simplified block diagram of a typical CAM; Figure 1(b) shows a schematic diagram of one part of the CAM array shown in Figure 1(a); Figure 1(c) shows the principle of a ternary unit. Figure 2 (a) shows a block diagram of a column in a CAM array in accordance with an embodiment of the present invention; Figure 2 (b) shows a diagram of a column in a CAM array in accordance with another embodiment of the present invention; 3(a) shows a diagram of a column in a CAM array according to another embodiment of the present invention; FIG. 3(b) shows a timing chart of a search operation in the CAM shown in FIG. 3(a); FIG. 4 shows the present invention. A self-timed embodiment of a specific embodiment; FIG. 5(a) shows a schematic diagram of a ducted CAM according to another embodiment of the present invention; and FIG. 5(b) shows a search in the CAM shown in FIG. 5(a) Work: Timing chart for reading. Schematic representation symbol description 100 addressable content memory (CAM) 102 CAM array 104 CAM unit 106 address decoder 114 bidirectional data access circuit 114 priority sequence encoder 1 10 matching line sensing circuit block - 25 - 1302706 Page (21) 112 N-bit result 116 Multiple match detection circuit 120 Mutual exclusion or (XOR) comparison transistor 210 Sensing amplifier 212 Matching line circuit 214, 224 Controlled inverter 216, 217 Current source
21 8,222 N通道型裝置 220 匹配線頭端電路 MLEN\ 匹配線啟用信號 230 1 N通道型電晶體 232 N通道型拉降電晶體 250 匹配線時序控制電路 260 參考或虛設匹配線 262 虛設單元21 8,222 N-channel device 220 Matching line head circuit MLEN\ Matching line enable signal 230 1 N-channel transistor 232 N-channel pull-down transistor 250 Matching line timing control circuit 260 Reference or dummy match line 262 dummy unit
-26--26-
Claims (1)
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10/060,100 US6768659B2 (en) | 2001-12-31 | 2002-01-31 | Circuit and method for reducing power usage in a content addressable memory |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW200304654A TW200304654A (en) | 2003-10-01 |
| TWI302706B true TWI302706B (en) | 2008-11-01 |
Family
ID=45070546
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW91137849A TWI302706B (en) | 2002-01-31 | 2002-12-30 | Circuit and method for reducing power usage in a content addressable memory |
Country Status (1)
| Country | Link |
|---|---|
| TW (1) | TWI302706B (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9082481B2 (en) | 2012-12-28 | 2015-07-14 | Qualcomm Incorporated | Static NAND cell for ternary content addressable memory (TCAM) |
| TWI508074B (en) * | 2012-12-28 | 2015-11-11 | Qualcomm Inc | Mixed ternary content addressable memory |
| TWI757484B (en) * | 2017-05-24 | 2022-03-11 | 日商瑞薩電子股份有限公司 | Content addressable memory |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8130576B2 (en) * | 2008-06-30 | 2012-03-06 | Intel Corporation | Memory throughput increase via fine granularity of precharge management |
-
2002
- 2002-12-30 TW TW91137849A patent/TWI302706B/en not_active IP Right Cessation
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9082481B2 (en) | 2012-12-28 | 2015-07-14 | Qualcomm Incorporated | Static NAND cell for ternary content addressable memory (TCAM) |
| TWI508074B (en) * | 2012-12-28 | 2015-11-11 | Qualcomm Inc | Mixed ternary content addressable memory |
| TWI757484B (en) * | 2017-05-24 | 2022-03-11 | 日商瑞薩電子股份有限公司 | Content addressable memory |
Also Published As
| Publication number | Publication date |
|---|---|
| TW200304654A (en) | 2003-10-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6768659B2 (en) | Circuit and method for reducing power usage in a content addressable memory | |
| CA2384039C (en) | Low power content addressable memory architecture | |
| TWI692760B (en) | Storage device, method and storage medium | |
| JP3834996B2 (en) | Selective precharge circuit and random access memory | |
| JP5149379B2 (en) | Clock and control signal generation for high performance memory devices | |
| US6195278B1 (en) | Content addressable memory cells and words | |
| JP2875476B2 (en) | Semiconductor memory device | |
| US20030137890A1 (en) | Matchline sensing for content addressable memories | |
| US7990792B2 (en) | Hybrid sense amplifier and method, and memory device using same | |
| US6744653B1 (en) | CAM cells and differential sense circuits for content addressable memory (CAM) | |
| KR100295041B1 (en) | Semiconductor device including a precharge control circuit and precharge method thereof | |
| TW200908005A (en) | Memory device with delay tracking for improved timing margin | |
| US6714470B2 (en) | High-speed read-write circuitry for semi-conductor memory devices | |
| JP2003036679A (en) | Content addressable memory | |
| JP2007193943A (en) | Static random access memory | |
| US6442089B1 (en) | Multi-level, low voltage swing sensing scheme for high speed memory design | |
| US20040246799A1 (en) | Memory devices having bit line precharge circuits with off current precharge control and associated bit line precharge methods | |
| EP1461811B1 (en) | Low power content addressable memory architecture | |
| CN103680601A (en) | Column select multiplexer, method for static random-access memory and computer memory subsystem employing the same | |
| US6631093B2 (en) | Low power precharge scheme for memory bit lines | |
| TWI302706B (en) | Circuit and method for reducing power usage in a content addressable memory | |
| US7440335B2 (en) | Contention-free hierarchical bit line in embedded memory and method thereof | |
| US7468929B2 (en) | Apparatus for SRAM array power reduction through majority evaluation | |
| US20160358654A1 (en) | Low-power ternary content addressable memory | |
| US6721193B2 (en) | Cache memory |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | Annulment or lapse of patent due to non-payment of fees |