KR102497837B1 - 3진 메모리 셀에 기반한 tcam 장치 - Google Patents
3진 메모리 셀에 기반한 tcam 장치 Download PDFInfo
- Publication number
- KR102497837B1 KR102497837B1 KR1020210084150A KR20210084150A KR102497837B1 KR 102497837 B1 KR102497837 B1 KR 102497837B1 KR 1020210084150 A KR1020210084150 A KR 1020210084150A KR 20210084150 A KR20210084150 A KR 20210084150A KR 102497837 B1 KR102497837 B1 KR 102497837B1
- Authority
- KR
- South Korea
- Prior art keywords
- search
- transistor
- memory cell
- node
- tcam
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 claims description 13
- 230000006870 function Effects 0.000 description 20
- 230000004044 response Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 238000003491 array Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 8
- 238000013479 data entry Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 239000000872 buffer Substances 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 101150110971 CIN7 gene Proteins 0.000 description 2
- 101100286980 Daucus carota INV2 gene Proteins 0.000 description 2
- 101150110298 INV1 gene Proteins 0.000 description 2
- 101100397044 Xenopus laevis invs-a gene Proteins 0.000 description 2
- 101100397045 Xenopus laevis invs-b gene Proteins 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005669 field effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
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
- 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
- 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
- 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/41—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 static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/412—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 static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger using field-effect transistors only
-
- 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/41—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 static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/413—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
- G11C11/417—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the field-effect type
- G11C11/419—Read-write [R-W] circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/08—Word line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, for word lines
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Power Engineering (AREA)
- Static Random-Access Memory (AREA)
Abstract
본 개시는 3진 메모리 셀에 기반한 TCAM 장치에 관한 것이다. 본 개시에 따르면, TCAM 셀은 3진 데이터를 저장하는 3진 메모리 셀, 및 상기 3진 메모리 셀에 저장된 저장 값과 서치 드라이버의 서치 라인(search line)을 통해 입력된 서치 값을 획득하고, 상기 저장 값과 상기 서치 값의 데이터의 일치 여부를 식별하고, 상기 식별의 결과를 매치 라인(match line)을 통해 출력하는 비교 회로를 포함하고, 상기 비교 회로는 상기 3진 메모리 셀의 저장 값이 반전된 반전 저장 값과 상기 서치 값을 입력 받는 제1 트랜지스터 쌍과, 상기 3진 메모리 셀의 저장 값과 상기 서치 값이 반전된 반전 서치 값을 입력 받는 제2 트랜지스터 쌍이 상호 병렬 연결될 수 있다.
Description
본 개시(disclosure)는 일반적으로 3진 메모리 셀에 기반한 TCAM 장치에 관한 것으로, 보다 구체적으로 T-CMOS를 이용한 TCAM 장치에서 회로의 설계 방법에 관한 것이다.
CAM(content addressable memory) 장치는 데이터의 읽기, 쓰기, 및 검색 동작을 지원하는 장치를 지시한다. 검색 동작에서, CAM 장치는 검색 데이터와 저장 데이터를 비교하는 기능을 수행할 수 있다. 예를 들어, 하나의 주기 동안, 검색 데이터는 CAM 장치 내에 저장된 데이터의 엔트리와 비교될 수 있고, CAM 장치는 데이터 엔트리의 각각의 비트가 검색 데이터의 각각의 비트와 매치될 때 매치된 데이터 엔트리의 어드레스를 출력한다. 여기서, CAM 장치의 데이터 엔트리로 로직 '0' 또는 로직 '1'의 데이터가 이용될 수 있다. CAM은 네트워킹, 이미징, 음성 인식 등에서와 같이, 데이터베이스 상의 매우 빠른 검색이 요구되는 애플리케이션에서 널리 이용된다.
TCAM(ternary content addressable memory) 장치는 CAM 장치와 유사한 기능을 수행한다. 다만, TCAM 장치의 데이터 엔트리에는 로직 '0' 및 로직 '1' 외에상관 없음 'X' 비트가 더 저장될 수 있다. 상관 없음 비트가 저장된 메모리 셀은 검색 데이터와 비교되지 않는다. 즉, 검색 데이터와 관계 없이, 상관 없음 비트가 저장된 메모리 셀은 항상 매치된 결과를 출력한다.
종래에 따르면, TCAM 장치는 검색의 기본 메커니즘에서 병렬 동작의 특성으로 인해 높은 전력 소모하였다. 즉, 종래의 TCAM 장치는 3진 정보를 저장하기 위하여 두 개의 메모리 셀을 이용하므로, 면적 및 소모 전력이 2배 이상으로 증가되는 문제가 있었다. 또한, 종래에 따르면, CMOS(complementary metal oxide semiconductor) 집적도 향상에 따른 누설 전류 증가로부터 기인하는 대기 전력 소모가 매우 컸다. 지능형 IoT(internet of things), 에지 컴퓨팅의 급격한 발전과 함께 차세대 라우터 및 스위치 장치에 복잡하고 많은 정보가 입력되고 있고, 이에 따라 초절전-고성능 동작이 가능한 메모리 주소 탐색 하드웨어 수요가 점점 증가하고 있는 상황에서, 현재 TCAM의 검색 성능이 유지되면서 전력 소비가 감소시키기 위한 TCAM 장치의 회로 설계 기술이 요구되고 있다.
상술한 바와 같은 논의를 바탕으로, 본 개시(disclosure)는, 3진 논리 회로를 이용하여 메모리 셀에 저장된 논리 값들을 연산하여 출력하기 위한, 3진 메모리 셀 및 이를 포함하는 TCAM 장치를 제공한다.
또한, 본 개시는 T-CMOS 기반의 TCAM 회로 설계를 통해 낮은 전류로 정보를 저장함으로써 TCAM 회로 설계의 에너지 효율과 면적 효율을 증가시키기 위한 장치 및 방법을 제공한다.
본 개시는 T-CMOS 기반의 TCAM 회로 설계를 통해 낮은 전류로 정보를 저장함으로써 TCAM 장치의 소모 전력을 감소시키기 위한 장치 및 방법을 제공한다.
본 개시의 다양한 실시 예들에 따르면, 3진 메모리 셀에 기반한 TCAM 장치에서, TCAM 셀에 있어서, 3진 데이터를 저장하는 3진 메모리 셀; 및 상기 3진 메모리 셀에 저장된 저장 값과 서치 드라이버의 서치 라인(search line)을 통해 입력된 서치 값을 획득하고, 상기 저장 값과 상기 서치 값의 데이터의 일치 여부를 식별하고, 상기 식별의 결과를 매치 라인(match line)을 통해 출력하는 비교 회로를 포함하고, 상기 비교 회로는 상기 3진 메모리 셀의 저장 값이 반전된 반전 저장 값과 상기 서치 값을 입력 받는 제1 트랜지스터 쌍과, 상기 3진 메모리 셀의 저장 값과 상기 서치 값이 반전된 반전 서치 값을 입력 받는 제2 트랜지스터 쌍이 상호 병렬 연결될 수 있다.
다른 일 실시 예에 따르면, 상기 제1 트랜지스터 쌍은 상기 3진 메모리 셀의 반전 저장 값에 대응하는 제2 노드로부터 상기 반전 저장 값을 입력 받는 제1 트랜지스터와 상기 서치 드라이버의 제1 서치 라인을 통해 서치 값을 입력 받는 제2 트랜지스터가 직렬로 연결되고, 상기 제2 트랜지스터 쌍은 상기 3진 메모리 셀의 저장 값에 대응하는 제1 노드로부터 상기 저장 값을 입력 받는 제3 트랜지스터와 상기 서치 드라이버의 제2 서치 라인을 통해 상기 반전 서치 값를 입력 받는 제4 트랜지스터가 직렬로 연결될 수 있다.
다른 일 실시 예에 따르면, 상기 제1 트랜지스터는 상기 제2 노드, 상기 매치 라인, 및 상기 제2 트랜지스터와 연결되고, 상기 제2 트랜지스터는 상기 제1 트랜지스터, 상기 제1 서치 라인과 연결되고, 상기 제3 트랜지스터는 상기 제1 노드, 상기 매치 라인, 및 상기 제4 트랜지스터와 연결되고, 상기 제4 트랜지스터는 상기 제3 트랜지스터, 상기 제2 서치 라인과 연결될 수 있다.
다른 일 실시 예에 따르면, 상기 제1 트랜지스터 쌍은 상기 반전 저장 값과 상기 서치 값의 일치 여부를 식별하고, 상기 제2 트랜지스터 쌍은 상기 저장 값과 상기 반전 서치 값의 일치 여부를 식별하고, 상기 비교 회로는 상기 제1 트랜지스터 쌍의 식별 결과와 상기 제2 트랜지스터 쌍의 식별 결과에 기반하여, 데이터 매치의 결과를 지시하는 신호를 상기 매치 라인을 통해 출력할 수 있다.
다른 일 실시 예에 따르면, 상기 TCAM 셀은 하나의 3진 메모리 셀과 하나의 비교 회로를 포함할 수 있다.
다른 일 실시 예에 따르면, 상기 비교 회로에 포함된 트랜지스터의 개수는 4이고, 상기 TCAM 셀에 포함된 트랜지스터의 개수는 10일 수 있다.
본 개시의 일 실시 예에 따르면, 3진 메모리 셀에 기반한 TCAM 장치에 있어서, 서치 라인(search line)을 통해 서치 워드를 제공하는 서치 드라이버, 3진 메모리 셀과, 상기 3진 메모리 셀에 저장된 저장 값과 서치 라인 통해 입력되는 서치 워드의 서치 값의 데이터의 일치 여부를 식별하고 상기 식별의 결과를 매치 라인을 통해 인코더로 출력하는 비교 회로를 포함하는 적어도 하나의 TCAM 셀이 배열된 TCAM 셀 어레이, 및 상기 TCAM 셀 어레이와 연결된 매치 라인(match line)을 통해 제공되는 전압에 기반하여, 상기 서치 워드와 매치되는 데이터를 가지는 TCAM 셀 어레이의 주소를 출력하는 인코더를 포함하고, 상기 TCAM 셀의 비교 회로는 상기 3진 메모리 셀의 저장 값이 반전된 반전 저장 값과 상기 서치 값을 입력 받는 제1 트랜지스터 쌍과, 상기 3진 메모리 셀의 저장 값과 상기 서치 값이 반전된 반전 서치 값을 입력 받는 제2 트랜지스터 쌍이 상호 병렬 연결될 수 있다.
다른 일 실시 예에 따르면, 상기 제1 트랜지스터 쌍은 상기 3진 메모리 셀의 반전 저장 값에 대응하는 제2 노드로부터 상기 반전 저장 값을 입력 받는 제1 트랜지스터와 상기 서치 드라이버의 제1 서치 라인으로부터 서치 값을 입력 받는 제2 트랜지스터가 직렬로 연결되고, 상기 제2 트랜지스터 쌍은 상기 3진 메모리 셀의 저장 값에 대응하는 제1 노드로부터 상기 저장 값을 입력 받는 제3 트랜지스터와 상기 서치 드라이버의 제2 서치 라인으로부터 상기 반전 서치 값을 입력 받는 제4 트랜지스터가 직렬로 연결될 수 있다.
다른 일 실시 예에 따르면, 상기 TCAM 셀은 하나의 3진 메모리 셀과 하나의 비교 회로를 포함할 수 있다.
본 발명의 다양한 각각의 측면들 및 특징들은 첨부된 청구항들에서 정의된다. 종속 청구항들의 특징들의 조합들(combinations)은, 단지 청구항들에서 명시적으로 제시되는 것뿐만 아니라, 적절하게 독립항들의 특징들과 조합될 수 있다.
또한, 본 개시에 기술된 임의의 하나의 실시 예(any one embodiment) 중 선택된 하나 이상의 특징들은 본 개시에 기술된 임의의 다른 실시 예 중 선택된 하나 이상의 특징들과 조합될 수 있으며, 이러한 특징들의 대안적인 조합이 본 개시에 논의된 하나 이상의 기술적 문제를 적어도 부분적으로 경감시키거나, 본 개시로부터 통상의 기술자에 의해 식별될 수 있는(discernable) 기술적 문제를 적어도 부분적으로 경감시키고, 나아가 실시 예의 특징들(embodiment features)의 이렇게 형성된 특정한 조합(combination) 또는 순열(permutation)이 통상의 기술자에 의해 양립 불가능한(incompatible) 것으로 이해되지만 않는다면, 그 조합은 가능하다.
본 개시에 기술된 임의의 예시 구현(any described example implementation)에 있어서 둘 이상의 물리적으로 별개의 구성 요소들은 대안적으로, 그 통합이 가능하다면 단일 구성 요소로 통합될 수도 있으며, 그렇게 형성된 단일한 구성 요소에 의해 동일한 기능이 수행된다면, 그 통합은 가능하다. 반대로, 본 개시에 기술된 임의의 실시 예(any embodiment)의 단일한 구성 요소는 대안적으로, 적절한 경우, 동일한 기능을 달성하는 둘 이상의 별개의 구성 요소들로 구현될 수도 있다.
본 발명의 특정 실시 예들(certain embodiments)의 목적은 종래 기술과 관련된 문제점 및/또는 단점들 중 적어도 하나를, 적어도 부분적으로, 해결, 완화 또는 제거하는 것에 있다. 특정 실시 예들(certain embodiments)은 후술하는 장점들 중 적어도 하나를 제공하는 것을 목적으로 한다.
본 개시의 다양한 실시 예들에 따른 장치 및 방법은 3진 메모리 셀에 기반한 TCAM 장치에서 T-CMOS 기반의 TCAM 회로 설계를 통해 TCAM 회로의 에너지 효율과 면적 효율을 증가시킬 수 있게 한다.
또한, 본 개시의 다양한 실시 예들에 따른 장치 및 방법은 3진 메모리 셀에 기반한 TCAM 장치에서 T-CMOS 기반의 TCAM 회로 설계를 통해 TCAM 장치의 소모 전력을 감소시킬 수 있게 한다.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시의 다양한 실시 예들에 따른 TCAM 장치를 도시한다.
도 2는 본 개시의 다양한 실시 예들에 따른 TCAM 장치의 연결 관계에 관한 블록도를 도시한다.
도 3은 본 개시의 다양한 실시 예들에 따른 TCAM 장치에서, TCAM 셀의 회로도를 도시한다.
도 4는 본 개시의 다양한 실시 예들에 따른 TCAM 장치에서, 3진 메모리 셀에 포함된 인버터의 블록도를 도시한다.
도 5는 본 개시의 다양한 실시 예들에 따른 TCAM 장치에서, 3진 메모리 셀에 포함된 인버터의 동작에 관한 그래프를 도시한다.
도 2는 본 개시의 다양한 실시 예들에 따른 TCAM 장치의 연결 관계에 관한 블록도를 도시한다.
도 3은 본 개시의 다양한 실시 예들에 따른 TCAM 장치에서, TCAM 셀의 회로도를 도시한다.
도 4는 본 개시의 다양한 실시 예들에 따른 TCAM 장치에서, 3진 메모리 셀에 포함된 인버터의 블록도를 도시한다.
도 5는 본 개시의 다양한 실시 예들에 따른 TCAM 장치에서, 3진 메모리 셀에 포함된 인버터의 동작에 관한 그래프를 도시한다.
본 개시에서 사용되는 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 개시에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 개시에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 개시에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 개시에서 정의된 용어일지라도 본 개시의 실시 예들을 배제하도록 해석될 수 없다.
이하에서 설명되는 본 개시의 다양한 실시 예들에서는 하드웨어적인 접근 방법을 예시로서 설명한다. 하지만, 본 개시의 다양한 실시 예들에서는 하드웨어와 소프트웨어를 모두 사용하는 기술을 포함하고 있으므로, 본 개시의 다양한 실시 예들이 소프트웨어 기반의 접근 방법을 제외하는 것은 아니다.
이하 본 개시는 3진 메모리 셀에 기반한 TCAM 장치에 관한 것이다. 구체적으로, 본 개시는 3진 메모리 셀에 기반한 TCAM 장치에서 T-CMOS 기반의 TCAM 회로 설계를 통해 TCAM 회로의 면적 효율을 증가시키고, 소모 전력을 감소시키기 위한 기술을 설명한다.
아래에서는 첨부한 도면을 참조하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 다양한 실시예들을 상세히 설명한다. 그러나 본 개시의 기술적 사상은 다양한 형태로 변형되어 구현될 수 있으므로 본 명세서에서 설명하는 실시예들로 제한되지 않는다. 본 명세서에 개시된 실시예들을 설명함에 있어서 관련된 공지 기술을 구체적으로 설명하는 것이 본 개시의 기술적 사상의 요지를 흐릴 수 있다고 판단되는 경우 그 공지 기술에 대한 구체적인 설명을 생략한다. 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
본 명세서에서 어떤 요소가 다른 요소와 "연결"되어 있다고 기술될 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라 그 중간에 다른 요소를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 어떤 요소가 다른 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 요소 외에 또 다른 요소를 배제하는 것이 아니라 또 다른 요소를 더 포함할 수 있는 것을 의미한다.
일부 실시예들은 기능적인 블록 구성들 및 다양한 처리 단계들로 설명될 수 있다. 이러한 기능 블록들의 일부 또는 전부는 특정 기능을 실행하는 다양한 개수의 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 개시의 기능 블록들은 하나 이상의 마이크로프로세서들에 의해 구현되거나, 소정의 기능을 위한 회로 구성들에 의해 구현될 수 있다. 본 개시의 기능 블록들은 다양한 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 본 개시의 기능 블록들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 본 개시의 기능 블록이 수행하는 기능은 복수의 기능 블록에 의해 수행되거나, 본 개시에서 복수의 기능 블록이 수행하는 기능들은 하나의 기능 블록에 의해 수행될 수도 있다. 또한, 본 개시는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다.
도 1은 본 개시의 다양한 실시 예들에 따른 TCAM 장치(100)를 도시한다. 도 1을 참조하면, TCAM 장치(100)는 바이어스 회로(110), 서치 드라이버(130), 제1 TCAM 셀 어레이 내지 제4 TCAM 셀 어레이(150-1 내지 150-4), 제1 매치 앰프 내지 제4 매치 앰프(170-1 내지 170-4), 및 인코더(190)를 포함할 수 있다. 도 1에서, 제1 TCAM 셀 어레이 내지 제4 TCAM 셀 어레이(150-1 내지 150-4)의 개수와 제1 매치 앰프 내지 제4 매치 앰프(170-1 내지 170-4)의 개수는 단지 예시적인 것에 불과하고, 본 발명은 이에 제한되지 않는다.
바이어스 회로(110)는 메모리 셀을 모델링한 더미 메모리 셀을 이용하여 TCAM 장치를 온(on) 시키기 위한 전압을 생성한다. 본 개시의 일 실시 예에 따르면, 바이어스 회로(110)는 생성된 전압을 제1 TCAM 셀 어레이 내지 제4 TCAM 셀 어레이(150-1 내지 150-4)에 제공할 수 있다.
서치 드라이버(130)는 서치 라인(search line) 쌍(SL, SLB)을 통해, TCAM 셀 어레이로 코드 워드(code word)를 제공하는 기능을 수행한다. 코드 워드는 제1 TCAM 셀 어레이 내지 제4 TCAM 셀 어레이(150-1 내지 150-4)에 저장된 데이터 대비되는 데이터를 지시할 수 있다. 본 개시의 일 실시 예에 따르면, 코드 워드는 서치 워드로 표현될 수 있고, 서치 워드 각각의 비트는 서치 값으로 지시될 수 있다. 도 1을 참고하면, 서치 워드는 '1110'으로 예시될 수 있다.
서치 드라이버(130)는 첫 번째 코드 '1'에 대응하는 전압을 제1 서치 라인 쌍에 제공할 수 있다. 로직 '1'에 대응되는 전압이 제1 서치 라인(SL)에 제공되고, 로직 '1'의 상보 데이터인 로직 '0'에 대응하는 전압이 제2 서치 라인(SLB)에 제공될 수 있다. 동일한 방법으로, 서치 드라이버(130)는 두 번째 코드 '1'에 대응하는 전압들을 제2 서치 라인 쌍에, 세 번째 코드 '1'에 대응하는 전압들을 제3 서치 라인 쌍에, 네 번째 코드 '0'에 대응하는 전압들을 제4 서치 라인 쌍에 제공할 수 있다.
제1 TCAM 셀 어레이 내지 제4 TCAM 셀 어레이(150-1 내지 150-4) 각각은 적어도 하나의 TCAM 셀을 포함할 수 있다. 본 개시의 일 실시 예에 따르면, 제1 TCAM 셀 어레이 내지 제4 TCAM 셀 어레이(150-1 내지 150-4) 각각이 네 개의 TCAM 셀을 포함하는 경우가 예시되어 있으나, 도 1에 도시된 TCAM 셀의 개수는 예시적인 것에 불과하고, 메모리 셀의 개수는 32비트내지 256 비트와 같은 다양한 코드 워드의 크기에 따라 결정될 수 있다. 또한, 코드 워드의 크기에 따라 도시된 데이터 라인의 수가 변경될 수 있다.
제1 TCAM 셀 어레이 내지 제4 TCAM 셀 어레이에 포함된 TCAM 셀은 각각 로직 '1', 로직 '0', 및 상관 없음 비트를 저장할 수 있다. TCAM 셀에 저장된 데이터를 검색하는 경우에, 서치 워드와 관계 없이, 상관 없음 비트가 저장된 TCAM 셀은 데이터가 매치됨을 지시하는 결과를 출력할 수 있다.
제1 TCAM 셀 어레이 내지 제4 TCAM 셀 어레이(150-1 내지 150-4)에 포함된 TCAM 셀 각각은 바이어스 회로(110)로부터 제공된 전압에 기반하여, 저장된 데이터가 제공된 서치 워드와 매치되는지 여부를 판단할 수 있다. 이 때, 이전의 데이터 검색 동작 이후 최근의 검색 동작 전에, 제1 매치 앰프 내지 제4 매치 앰프(170-1 내지 170-4)와 연결된 매치 라인들(match line)(ML1 내지 ML4)은 전원 전압(VDD)으로 프리 차지될 수 있다.
제1 TCAM 셀 어레이 내지 제4 TCAM 셀 어레이(150-1 내지 150-4)는 저장된 데이터와 서치 워드를 비교한다. 본 개시의 일 실시 예에 따르면, 제1 TCAM 셀 어레이(150-1)에 저장된 데이터 '1X10'의 비트가 서치 워드 '1110'의 비트와 각각 매치되므로, 제1 TCAM 셀 어레이(150-1)는 제1 매치 라인(ML1)을 디스차지(discharge)하지 않는다. 동일한 방법으로, 제3 TCAM 셀 어레이(150-3)에 저장된 데이터 '11XX'는 코드 워드 '1110'와 매치되므로, 제3 TCAM 셀 어레이(150-3)는 제3 매치 라인(ML3)을 디스차지하지 않는다. 반면, 제2 TCAM 셀 어레이(150-2)와 제4 TCAM 셀 어레이(150-4)에 저장된 데이터는 서치 워드와 매치되지 않으므로, 제2 TCAM 셀 어레이(150-2)와 제4 TCAM 셀 어레이(150-4)는 제2 매치 라인(ML2)과 제4 매치 라인(ML4)을 접지 전압(GND)으로 디스차지한다.
제1 매치 앰프 내지 제4 매치 앰프(170-1 내지 170-4)는 각각의 매치 라인들(ML1 내지 ML4)로부터 디스차지되지 않은 전원 전압(VDD)을 제공받고, 제공된 전압을 버퍼링하여 라인 인코더(190)로 출력한다. 본 개시의 일 실시 예에 따르면, 제1 매치 앰프와 제3 매치 앰프(170-1, 170-3)는 제1 매치 라인(ML1), 제3 매치 라인 (ML3)을 통해 전원 전압(VDD)을 제공 받아 버퍼링 하여 인코더로 출력하고, 제2 매치 앰프와 제4 매치 앰프(170-2, 170-4)는 제2 매치 라인(ML2), 제4 매치 라인 (ML4)을 통해 디스차지된 접지 전압(GND)을 제공 받아 버퍼링 하여 인코더(190)로 출력한다.
인코더(190)는, 제1 매치 앰프 내지 제4 매치 앰프(170-1 내지 170-4)로부터 제공된 전압에 기반하여, 서치 워드와 매치되는 데이터를 가지는 TCAM 셀 어레이의 어드레스(address)를 매치 어드레스로 출력한다. 매치되는 TCAM 셀 어레이가 복수인 경우, 인코더(190)는 우선 순위 알고리즘에 따라 하나의 TCAM 셀 어레이의 어드레스를 출력할 수 있다. 본 개시의 일 실시 예에 따르면, 우선 순위 알고리즘에 따라, 인코더(190)는 상관 없음 비트가 적은 TCAM 셀 어레이의 우선 순위를 높게 설정할 수 있다. 도 1을 참고하면, 인코더(190)는 제1 TCAM 셀 어레이와 제3 TCAM 셀 어레이 중에서, 더 적은 상관 없음 비트를 가지는 제1 TCAM 셀 어레이(150-1)의 어드레스를 매치 어드레스로 결정할 수 있다. 인코더(190)는 결정된 매치 어드레스를 출력할 수 있다.
도 2는 본 개시의 다양한 실시 예들에 따른 TCAM 장치의 연결 관계에 관한 블록도(200)를 도시한다. 구체적으로, 도 2는 도 1의 TCAM 장치(100)의 연결 관계에 관한 블록도(200)를 예시한다.
TCAM 장치는 외부로부터 커맨드 및 어드레스를 수신할 수 있고, 데이터를 수신하거나 출력할 수 있다. 예를 들면, TCAM 장치는 기입(write) 커맨드, 독출(read) 커맨드와 같은 커맨드 및 커맨드에 대응하는 어드레스를 수신할 수 있다. TCAM 장치는 기입 커맨드에 응답하여 데이터를 수신할 수 있고, 독출 커맨드에 응답하여 데이터를 출력할 수 있다. 일부 실시예들에서 커맨드, 어드레스 및 데이터는 독립적인 채널들을 통해서 수신되거나 전송될 수도 있고, 일부 실시예들에서 커맨드, 어드레스 및 데이터 중 적어도 2개는 동일한 채널을 통해서 수신되거나 전송될 수도 있다.
도 2를 참고하면, 메모리 장치는 디코더(210), 독출 및 기입 회로(230), 서치 드라이버(250), TCAM 셀 어레이(270), 인코더(290)를 포함한다.
디코더(210)는 메모리 컨트롤러로부터 발생되는 동작 모드 명령에 응답하여 워드 라인을 선택적으로 제어하는 기능을 수행한다. 디코더(210)는 복수의 워드 라인들(WLs)을 통하여 TCAM 셀 어레이(270)와 접속될 수 있다. 본 개시의 일 실시 예에 따르면, 디코더(210)는 TCAM 셀 어레이(270)에 소정의 로우(row)의 TCAM 셀에 데이터를 저장하거나 독출하는 경우 워드 라인을 활성화시킬 수 있다.
독출 및 기입 회로(230)는 기입 데이터나 독출 데이터를 래치하는 기능을 수행한다. 독출 및 기입 회로(230)는 복수의 비트 라인들(BLs)을 통해서 TCAM 셀 어레이(270)와 연결될 수 있다. 본 개시의 일 실시 예에 따르면, 독출 및 기입 회로(230)는 센스 앰프 회로나, 데이터 입력 버퍼들, 및 데이터 출력 버퍼들을 포함할 수 있다.
서치 드라이버(250)는 메모리 주소를 검색하기 위한 서치 워드를 TCAM 셀 어레이(270)에 제공하는 기능을 수행한다. 서치 드라이버(250)는 복수의 서치 라인들(SLs)을 통하여 TCAM 셀 어레이(270)와 연결될 수 있다. 서치 워드는 서치 라인을 통하여 TCAM 셀 어레이에 입력될 수 있다.
TCAM 셀 어레이(270)는 적어도 하나의 TCAM 셀(271)을 포함할 수 있다. 본 개시의 일 실시 예에 따르면, TCAM 셀 어레이(270)는 3진 메모리 셀(273)과 비교 회로(275)를 포함하는 적어도 하나의 TCAM 셀이 배열된 구조로 구성될 수 있다. 여기서 비교 회로는 3진 메모리 셀에 저장된 저장 값과 서치 라인 통해 입력되는 서치 워드의 서치 값의 데이터의 일치 여부를 식별하고 식별 결과를 매치 라인을 통해 출력할 수 있다. TCAM 셀(271)은 세 개의 상이한 상태들을 가질 수 있고, 이에 따라 3개의 상이한 상태들에 대응하는 3진 논리 값들을 저장할 수 있다. 이하에서, TCAM 셀이 저장 가능한 3진 논리 값들은 '0', '1' 및 '2'로서 지칭될 수 있고, '0/1/2'로서 총괄적으로 지칭될 수도 있으며, 단순하게 3진 값들로 지칭될 수도 있다. TCAM 셀(271)은 로직-인-메모리(logic-in-memory, LIM) 구조를 가질 수 있다.
3진 메모리 셀(273)은 3진 논리값들을 저장할 수 있는 메모리 셀을 지시할 수 있다. 본 개시의 일 실시 예에 따르면, 3진 메모리 셀은 3진 논리 회로 또는 3진 논리 소자를 포함하는 SRAM(static random access memory)을 지시할 수 있다. 본 개시의 일 실시 예에 따르면, 3진 메모리 셀은 3진 SRAM(ternary static random access memory) 또는 T-SRAM으로 지칭될 수 있다.
비교 회로(275)는 서치 워드의 서치 값과 TCAM 셀에 저장된 저장 값을 비교하는 기능을 수행한다. 본 개시의 일 실시 예에 따르면, 비교 회로(275)는 서치 드라이버와 연결된 복수의 서치 라인들(SLs) 중 적어도 하나의 서치 라인(SL) 및 인코더와 연결된 매치 라인들(MLs) 중 적어도 하나의 매치 라인(ML)과 연결될 수 있다. 비교 회로(275)는 서치 라인을 통하여 입력 받은 서치 워드의 서치 값과 TCAM 셀에 저장된 저장 값을 비교하고, 비교 결과를 매치 라인(ML)을 통해 출력할 수 있다.
TCAM 셀 어레이(270)는 디코더(210)와 복수의 워드 라인들(WLs)을 통해서 접속될 수 있고, 독출 및 기입 회로(230)와 복수의 비트 라인들(BLs)을 통해서 접속될 수 있다. TCAM 셀(271)은 복수의 워드 라인들(WLs) 중 하나의 워드 라인(WL)에 연결될(coupled) 수 있고, 복수의 비트 라인들(BLs) 중 적어도 하나의 비트 라인(BL)에 연결될 수 있다. TCAM 셀(271)은 적어도 하나의 비트 라인(BL)을 통해서 제공되는 3진 논리 값을 저장하기 위한 구조를 가질 수 있다.
인코더(290)는 매치 라인(ML)의 논리 상태에 응답하여 현재 입력된 서치 데이터에 대응되는 어드레스를 출력하는 기능을 수행한다. 본 개시의 일 실시 예에 따르면, 인코더(290)는 매치 라인을 통하여 제공되는 전압에 기반하여, 서치 워드와 매치되는 데이터를 가지는 TCAM 셀 어레이의 주소를 출력할 수 있다.
도 3은 본 개시의 다양한 실시 예들에 따른 TCAM 장치에서, TCAM 셀의 회로도(300)를 도시한다. 도 3은 도 2의 TCAM 셀(271)의 회로도(300)를 예시한다. 도 3은 CMOS 기반의 2진 SRAM 셀과 동일한 면적을 가지는 T-CMOS 기반의 T-SRAM(6T ternary SRAM) 셀에, 서치 라인들(SL1, SL2)과 매치 라인(ML)에 연결된 네 개의 소자를 포함, 총 열 개의 소자로 구성된 새로운 TCAM 셀의 회로도를 예시한다.
도 3을 참고하면, TCAM 셀(271)은 워드 라인(WL)에 연결될 수 있고, 적어도 하나의 비트 라인으로서 제1 비트 라인(BL1) 및 제2 비트 라인(BL2)에 연결될 수 있고, 적어도 하나의 서치 라인으로서 제1 서치 라인(SL1) 및 제2 서치 라인(SL2)에 연결될 수 있고, 매치 라인(ML)에 연결될 수 있다. TCAM 셀(271)은 3진 논리 값들, 즉 0/1/2 중 하나의 논리값을 저장할 수 있다.
도 3을 참고하면, TCAM 셀(271)은 3진 메모리 셀(310)과, 비교 회로(360)를 포함할 수 있다. 3진 메모리 셀(310)은 제1 인버터(INV1), 제2 인버터(INV2), 제1 액세스 트랜지스터(AT1), 및 제2 액세스 트랜지스터(AT2)를 포함할 수 있고, 비교 회로(360)는 제1 트랜지스터 내지 제4 트랜지스터(TR1 내지 TR4)를 포함할 수 있다.
제1 인버터(INV1)와 제2 인버터(INV2)는 제1 노드(N1) 및 제2 노드(N2)에서 교차 연결될 수 있고, 이에 따라 0/1/2 중 하나의 논리값을 저장할 수 있다. 본 개시의 일 실시 예에 따르면, 제1 노드(N1)가 양의 공급 전압(VDD)이고, 제2 노드(N2)가 접지 전압(GND) 또는, 음의 공급 전압(VSS)인 경우, 3진 메모리 셀(310)은 논리값 2를 저장하는 것으로 지칭될 수 있다(Q=2). 또한, 제1 노드(N1) 및 제2 노드(N2)가 중간 전압(예컨대, VDD/2)(또는, (VDD+VSS)/2)일 때, 3진 메모리 셀(310)은 논리값 1을 저장하는 것으로 지칭될 수 있다(Q=1). 또한, 제1 노드(N1)가 접지 전압(GND) 또는 음의 공급 전압(VSS)이고, 제2 노드(N2)가 양의 공급 전압(VDD)일 때, 3진 메모리 셀(310)은 논리값 0을 저장하는 것으로 지칭될 수 있다(Q=0).
제1 액세스 트랜지스터(AT1)는 제1 노드(N1) 및 제1 비트 라인(BL1)에 연결될 수 있고, 워드 라인(WL)에 연결된 게이트(또는 제어 단자)를 가질 수 있다. 제1 액세스 트랜지스터(AT1)는 워드 라인(WL)의 전압에 따라 제1 노드(N1) 및 제1 비트 라인(BL1)을 전기적으로 접속시키거나 단선시킬 수 있다. 예를 들면, 제1 액세스 트랜지스터(AT1)는 NFET(N-channel field effect transistor)일 수 있고, 활성화된 워드 라인(WL), 즉 하이 레벨인 워드 라인(WL)의 전압에 응답하여 제1 노드(N1) 및 제1 비트 라인(BL1)을 전기적으로 접속시킬 수 있다. 한편, 비활성화된 워드 라인(WL), 즉 로우 레벨인 워드 라인(WL)의 전압에 응답하여 제1 노드(N1) 및 제1 비트 라인(BL1)을 전기적으로 단선시킬 수 있다. 제2 액세스 트랜지스터(AT2)는, 제1 액세스 트랜지스터(AT1)와 유사하게, 제2 노드(N2) 및 제2 비트 라인(BL2)에 연결될 수 있고, 워드 라인(WL)에 연결된 게이트(또는 제어 단자)를 가질 수 있다. 이하에서, 제1 액세스 트랜지스터(AT1) 및 제2 액세스 트랜지스터(AT2)는 NFET인 것으로 가정되어 설명될 것이나, PFET(P-channel field effect transistor), 트랜스미션 게이트 등인 경우에도 본 발명의 실시예들이 적용될 수 있다.
비교 회로(360)는 제1 노드(N1) 및 제2 노드(N2)에 연결될 수 있고, 제1 서치 라인(SL1) 및 제2 서치 라인(SL2)에 연결될 수 있다. 이에 따라, 비교 회로(360)는 3진 메모리 셀(310)에 저장된 값(Q)(이하, 저장 값으로 지칭될 수 있다) 및 저장 값의 반전 값(/Q)을 수신할 수 있고, 제1 서치 값(S1) 및 제2 서치 값(S2)을 수신할 수 있다. 본 개시의 다른 일 실시 예에 따르면, 비교 회로(360)는 저장 값(Q) 및 저장 값의 반전 값(/Q) 중 하나만을 수신하거나, 한 개 혹은 세 개 이상의 입력 값들을 수신할 수도 있다. 비교 회로(360)는 수신된 값들(Q, /Q, S1, S2) 중 2개 이상을 연산하여 3진 메모리 셀(310)에 저장된 데이터 저장 값이 서치 값과 매치되는지 여부를 식별할 수 있다. 이후, 비교 회로(360)는 저장 값과 서치 값의 식별 결과를 매치 라인(ML)을 통해 출력할 수 있다.
본 개시의 일 실시 예에 따르면, 비교 회로(360)는 3진 메모리 셀의 저장 값이 반전된 반전 저장 값과 서치 값을 입력 받는 제1 트랜지스터 쌍과, 3진 메모리 셀의 저장 값과 서치 값이 반전된 반전 서치 값을 입력 받는 제2 트랜지스터 쌍이 상호 병렬 연결되는 구조로 구성될 수 있다. 여기서, 제1 트랜지스터 쌍은 3진 메모리 셀의 반전 저장 값에 대응하는 제2 노드(N2)로부터 반전 저장 값을 입력 받는 제1 트랜지스터(TR1)와 서치 드라이버의 제1 서치 라인(SL)을 통해 서치 값을 입력 받는 제2 트랜지스터(TR2)가 직렬로 연결되는 구조를 가질 수 있다. 마찬가지로, 제2 트랜지스터 쌍은 제1 노드(N1)로부터 저장 값을 입력 받는 제3 트랜지스터(TR3)와 서치 드라이버의 제2 서치 라인(SL2)으로부터 반전 서치 값을 입력 받는 제4 트랜지스터(TR4)가 직렬로 연결되는 구조를 가질 수 있다.
구체적으로, 비교 회로의 회로 구조에 관하여, 제1 트랜지스터(TR1)는 제2 노드(N2), 매치 라인, 및 제2 트랜지스터와 연결되고, 제2 트랜지스터(TR2)는 제1 트랜지스터, 제1 서치 라인과 연결되고, 제3 트랜지스터(TR3)는 제1 노드(N1), 매치 라인, 및 제4 트랜지스터와 연결되고, 제4 트랜지스터(TR4)는 제3 트랜지스터, 제2 서치 라인과 연결될 수 있다.
그에 따라, 비교 회로(360)에서 제1 트랜지스터(TR)와 제2 트랜지스터(TR2)는 3진 메모리 셀의 반전 저장 값과 서치 값의 일치 여부를 식별할 수 있고, 제3 트랜지스터(TR3)와 제4 트랜지스터(TR4)는 저장 값과 반전 서치 값의 일치 여부를 식별할 수 있다. 비교 회로(360)는 비교 결과를 종합하여 저장된 데이터와 서치 데이터가 매치되는지 여부를 식별하고, 매치 결과를 매치 라인을 통해 출력할 수 있다. 즉, 비교 회로(360)는 제1 트랜지스터 쌍의 식별 결과와 제2 트랜지스터 쌍의 식별 결과에 기반하여, 데이터 매치의 결과를 지시하는 신호를 매치 라인을 통해 출력할 수 있다.
적어도 하나의 TCAM 셀을 포함하는 TCAM 셀 어레이는 TCAM 셀 각각에서 식별된 매치 결과에 기반하여, 매치 라인(ML)을 디스차지할 수 있다. 본 개시의 일 실시 예에 따르면, 프리 차지 동작을 통해 전압이 높아진 매치 라인은 저장 값과 서치 값에 따라 전압을 그대로 유지하거나 디스차지 할 수 있다. 그에 따라, TCAM 셀 어레이는 메모리 주소 검색 기능을 수행할 수 있다. 본 개시의 일 실시 예에 따르면, TCAM 셀 어레이에 포함된 TCAM 셀 모두에서 저장 값과 서치 값이 매치되는 경우, TCAM 셀 어레이는 매치 라인을 디스차지하지 않는다. 반대로, TCAM 셀 어레이에 포함된 TCAM 셀 중 적어도 하나에서 저장 값과 서치 값이 매치되지 않는 경우, TCAM 셀 어레이는 매치 라인을 디스차지한다.
본 개시에 따르면, 3진 메모리 셀(310)에 포함된 트랜지스터의 개수는 총 여섯 개, 비교 회로(360)에 포함된 트랜지스터의 개수는 네 개이므로, TCAM 셀은 열 개의 트랜지스터로 구성될 수 있다. 종래의 TCAM 장치에 따르면, 하나의 비교 회로에 두 개의 메모리 셀들이 연결될 수 밖에 없었다. 그에 따라, 종래의 TCAM 장치는 메모리 셀에 포함된 열두 개의 트랜지스터와 비교 회로에 포함된 네 개의 트랜지스터를 포함하여, 최소 열 여섯 개의 트랜지스터를 포함할 수 밖에 없었다. 즉, 열 여섯 개의 트랜지스터를 사용함에 따라, 종래의 TCAM 회로의 면적 효율이 낮았고, 전력 소모도 컸다. 그에 반하여, 본 개시에 따른 TCAM 셀은 하나의 3진 메모리 셀과 하나의 비교 회로를 포함할 수 있다. 그에 따라, TCAM 셀은 총 열 개의 트랜지스터로 구성되므로, 오프 수준의 낮은 전류를 기반으로 3진 정보를 저장함으로써 매우 낮은 대기 전력 소모와 함께 높은 면적 효율을 제공할 수 있다.
도 4는 본 개시의 다양한 실시 예들에 따른 TCAM 장치에서, 3진 메모리 셀에 포함된 인버터의 블록도(400)를 도시한다. 도 4는 도 3의 3진 메모리 셀(310)에 포함된 한 쌍의 인버터들을 예시한다. 인버터는 각각은 턴-오프시 정전류를 통과시키도록 구성된 소자들을 포함할 수 있다.
인버터는 입력 전압(VIN)을 반전시킴으로써 출력 전압(VOUT)을 생성하는 기능을 수행한다. 도 4를 참조하면, 인버터는 양의 공급 전압(VDD) 및 접지 전압(GND)(또는 음의 공급 전압(VSS)) 사이에서 직렬 연결된 풀업 소자(PU) 및 풀다운 소자(PD)를 포함할 수 있다. 풀업 소자(PU)는 하이 레벨의 입력 전압(VIN), 예컨대 양의 공급 전압(VDD)에 응답하여 턴-오프될 수 있는 한편, 로우 레벨의 입력 전압(VIN), 예컨대 접지 전압(GND)에 응답하여 턴-온될 수 있다. 다른 한편으로, 풀다운 소자(PD)는 로우 레벨의 입력 전압(VIN), 예컨대 접지 전압(GND)에 응답하여 턴-오프될 수 있는 한편, 하이 레벨의 입력 전압(VIN), 예컨대 양의 공급 전압(VDD)에 응답하여 턴-온될 수 있다. 이에 따라, 2진 논리 회로와 유사하게, 하이 레벨의 입력 전압(VIN)(예컨대, VDD)에 응답하여 로우 레벨의 출력 전압(VOUT)(예컨대, GND)이 출력될 수 있는 한편, 로우 레벨의 입력 전압(VIN)(예컨대, GND)에 응답하여 하이 레벨의 출력 전압(VOUT)(예컨대, VDD)이 출력될 수 있다.
풀업 소자(PU) 및 풀다운 소자(PD)는 턴-오프시 정전류를 통과시킬 수 있다. 즉, 풀업 소자(PU)의 통과 전류(ITP)는 풀업 소자(PU)가 턴-오프된 상태에서 일정할 수 있고, 풀다운 소자(PD)의 통과 전류(ITN) 역시 풀다운 소자(PD)가 턴-오프된 상태에서 일정할 수 있다. 또한, 본 개시의 일 실시 예에 따르면, 풀업 소자(PU)의 문턱 전압과 풀다운 소자(PD)의 문턱 전압은 같을 수 있다. 본 개시의 다른 일 실시 예에 따르면, 풀업 소자(PU)와 풀다운 소자(PD) 중 어느 하나의 소자의 문턱 전압이 나머지 하나의 소자의 문턱 전압 보다 작을 수 있다. 일 예에 따르면, 풀다운 소자(PD)의 문턱 전압은 풀업 소자(PU)의 문턱 전압보다 낮을 수 있다. 이에 따라, 입력 전압(VIN)이 접지 전압(GND)으로부터 양의 공급 전압(VDD)까지 점진적으로 증가하는 경우, 풀업 소자(PU)가 턴-오프된 후 풀다운 소자(PD)가 턴-온될 수 있다. 이에 따라, 도 5에 도시된 입력 전압(VIN)-출력 전압(VOUT) 특성과 같이, 약 0.6V 및 약 1.1V 사이에서 풀업 소자(PU) 및 풀다운 소자(PD)가 모두 턴-오프될 수 있다.
도 5는 본 개시의 다양한 실시 예들에 따른 TCAM 장치에서, 3진 메모리 셀에 포함된 인버터의 동작에 관한 그래프(500)를 도시한다. 도 5의 그래프(500)는 입력 전압(VIN)-출력 전압(VOUT) 특성 및 입력 전압(VIN)-통과 전류(ITP, ITN) 특성에 관한 인버터의 동작을 예시한다. 도 5의 그래프에서, 가로축은 입력 전압(VIN)을 나타내고, 좌측 세로축은 출력 전압(VOUT)을 나타내며, 우측 세로축은 통과 전류(ITP, ITN)를 로그 스케일로서 나타낸다. 도 5의 그래프에서 가로축 및 세로축들에 도시된 수치들은 양의 공급 전압(VDD)이 1.4V인 예시에 불과하며, 소자의 특성에 따라 변경될 수 있다.
도 5를 참고하면, 인버터의 출력단에 인가되는 전류(IACC)가 없는 경우, 풀업 소자(PU)의 통과 전류(ITP) 및 풀다운 소자(PD)의 통과 전류(ITN)의 크기는 일치할 수 있고, 약 0.6V 및 약 1.1V 사이에서 통과 전류(ITP, ITN)는 낮은 레벨에서 일정하게 유지될 수 있다. 결과적으로, 출력 전압(VOUT)은 약 0.6V 및 약 1.1V 사이에서 풀업 소자(PU)의 통과 전류(ITP) 및 풀다운 소자(PD)의 통과 전류(ITN)에 기인하여 실질적으로 일정하게 유지될 수 있다. 즉, 중간 레벨의 입력 전압(VIN), 예컨대 양의 공급 전압(VDD)의 약 절반(VDD/2)이 제공되는 경우, 인버터(INV)는 중간 레벨의 출력 전압(VOUT), 예컨대 양의 공급 전압(VDD)의 약 절반(VDD/2)을 출력할 수 있다. 이에 따라, 인버터(INV)는 0/1/2 논리값들에 각각 대응하는 접지 전압(GND), 중간 전압(VDD/2) 및 양의 공급 전압(VDD)이 입력되면, 2/1/0 논리값들에 각각 대응하는 양의 공급 전압(VDD), 중간 전압(VDD/2) 및 접지 전압(GND)을 출력할 수 있다. 본 명세서에서, '중간 전압'은 양의 공급 전압(VDD)의 절반(VDD/2)인 것으로 가정되나, 양의 공급 전압(VDD) 및 접지 전압(GND) 사이 임의의 레벨의 전압이 가능한 점은 이해될 것이다.
교차 결합된 2개의 인버터들을 포함하는 SRAM의 경우, 독출 동작시 메모리 셀에 저장되어 있는 값을 변경하지 아니하는 특성, 예컨대 높은 독출 SNM(Static Noise Margin)을 가질 것이 요구될 수 있다. 도 5를 참조하면, 도 4의 인버터(INV)는 액세스 전류(IACC)가 증가함에도 불구하고(예컨대, 액세스 전류(IACC)가 통과 전류(ITP, ITN)보다 높음에도 불구하고), 높은 독출 SNM을 제공할 수 있다.
상술한 본 개시의 구체적인 실시 예들에서, 개시에 포함되는 구성 요소는 제시된 구체적인 실시 예에 따라 단수 또는 복수로 표현되었다. 그러나, 단수 또는 복수의 표현은 설명의 편의를 위해 제시한 상황에 적합하게 선택된 것으로서, 본 개시가 단수 또는 복수의 구성 요소에 제한되는 것은 아니며, 복수로 표현된 구성 요소라 하더라도 단수로 구성되거나, 단수로 표현된 구성 요소라 하더라도 복수로 구성될 수 있다.
한편 본 개시의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 개시의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
따라서, 본 발명의 사상은 앞에서 설명된 실시예들에 국한하여 정해져서는 아니되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위가 본 발명의 사상의 범주에 속한다고 할 것이다.
110: 바이어스 회로
130: 서치 드라이버
150-1 내지 150-4: 제1 TCAM 셀 어레이 내지 제4 TCAM 셀 어레이
170-1 내지 170-4: 제1 매치 앰프 내지 제4 매치 앰프
190: 인코더
310: 3진 메모리 셀
360: 비교 회로
130: 서치 드라이버
150-1 내지 150-4: 제1 TCAM 셀 어레이 내지 제4 TCAM 셀 어레이
170-1 내지 170-4: 제1 매치 앰프 내지 제4 매치 앰프
190: 인코더
310: 3진 메모리 셀
360: 비교 회로
Claims (9)
- 3진 메모리 셀에 기반한 TCAM(ternary content addressable memory) 장치에서, TCAM 셀에 있어서,
3진 데이터를 저장하는 3진 메모리 셀; 및
상기 3진 메모리 셀에 저장된 저장 값과 서치 드라이버의 서치 라인(search line)을 통해 입력되는 서치 값을 획득하고, 상기 저장 값과 상기 서치 값의 데이터의 일치 여부를 식별하고, 상기 식별의 결과를 매치 라인(match line)을 통해 출력하는 비교 회로를 포함하고,
상기 3진 메모리 셀은,
상기 3진 메모리 셀은 제1 노드 및 제2 노드에서 교차 연결되는 제1 인버터 및 제2인버터;
제1 단자가 제1 노드에 연결되고, 제2 단자가 제1 비트 라인에 연결되고, 제어 단자가 워드 라인에 연결되는 제1 액세스 트랜지스터; 및
제1 단자가 제2 노드에 연결되고, 제2 단자가 제2 비트 라인에 연결되고, 제어 단자가 상기 워드 라인에 연결되는 제2 액세스 트랜지스터;를 포함하고,
상기 비교 회로는,
상기 3진 메모리 셀의 반전 저장 값에 대응하는 상기 제2 노드로부터 상기 반전 저장 값을 입력 받는 제1 트랜지스터와, 상기 제1 트랜지스터와 직렬로 연결되고 상기 서치 드라이버의 제1 서치 라인을 통해 서치 값을 입력 받는 제2 트랜지스터를 포함하는 제1 트랜지스터 쌍과,
상기 3진 메모리 셀의 저장 값에 대응하는 상기 제1 노드로부터 상기 저장 값을 입력 받는 제3 트랜지스터와, 상기 제3 트랜지스터와 직렬로 연결되고 상기 서치 드라이버의 제2 서치 라인을 통해 반전 서치 값를 입력 받는 제4 트랜지스터를 포함하는 제2 트랜지스터 쌍이 상호 병렬 연결되고,
상기 3진 메모리 셀의 저장 값이 2일 때, 상기 제1 노드에는 양의 공급 전압(VDD)이 인가되고, 상기 제2 노드에는 접지 전압(GND) 또는 음의 공급 전압(VSS)이 인가되며,
상기 3진 메모리 셀의 저장 값이 1일 때, 상기 제1 노드 및 상기 제2 노드에는 중간 전압(VDD/2)이 인가되고,
상기 3진 메모리 셀의 저장 값이 0일 때, 상기 제1 노드에는 접지 전압(GND) 또는 음의 공급 전압(VSS)가 인가되고, 상기 제2 노드에는 양의 공급 전압(VDD)이 인가되는, TCAM 셀. - 삭제
- 청구항 1에 있어서,
상기 제1 트랜지스터는 상기 제2 노드, 상기 매치 라인, 및 상기 제2 트랜지스터와 연결되고,
상기 제2 트랜지스터는 상기 제1 트랜지스터, 상기 제1 서치 라인과 연결되고,
상기 제3 트랜지스터는 상기 제1 노드, 상기 매치 라인, 및 상기 제4 트랜지스터와 연결되고,
상기 제4 트랜지스터는 상기 제3 트랜지스터, 상기 제2 서치 라인과 연결되는 TCAM 셀. - 청구항 1에 있어서,
상기 제1 트랜지스터 쌍은 상기 반전 저장 값과 상기 서치 값의 일치 여부를 식별하고,
상기 제2 트랜지스터 쌍은 상기 저장 값과 상기 반전 서치 값의 일치 여부를 식별하고,
상기 비교 회로는 상기 제1 트랜지스터 쌍의 식별 결과와 상기 제2 트랜지스터 쌍의 식별 결과에 기반하여, 데이터 매치의 결과를 지시하는 신호를 상기 매치 라인을 통해 출력하는 TCAM 셀. - 청구항 1에 있어서,
상기 TCAM 셀은 하나의 3진 메모리 셀과 하나의 비교 회로를 포함하는 TCAM 셀. - 청구항 1에 있어서,
상기 비교 회로에 포함된 트랜지스터의 개수는 4이고,
상기 TCAM 셀에 포함된 트랜지스터의 개수는 10인 TCAM 셀. - 3진 메모리 셀에 기반한 TCAM(ternary content addressable memory) 장치에 있어서,
서치 라인(search line)을 통해 서치 워드를 제공하는 서치 드라이버;
3진 메모리 셀과, 상기 3진 메모리 셀에 저장된 저장 값과 서치 라인 통해 입력되는 서치 워드의 서치 값의 데이터의 일치 여부를 식별하고 상기 식별의 결과를 매치 라인을 통해 인코더로 출력하는 비교 회로를 포함하는 적어도 하나의 TCAM 셀이 배열된 TCAM 셀 어레이; 및
상기 TCAM 셀 어레이와 연결된 매치 라인(match line)을 통해 제공되는 전압에 기반하여, 상기 서치 워드와 매치되는 데이터를 가지는 TCAM 셀 어레이의 주소를 출력하는 인코더를 포함하고,
상기 TCAM 셀의 상기 3진 메모리 셀은,
상기 3진 메모리 셀은 제1 노드 및 제2 노드에서 교차 연결되는 제1 인버터 및 제2인버터;
제1 단자가 제1 노드에 연결되고, 제2 단자가 제1 비트 라인에 연결되고, 제어 단자가 워드 라인에 연결되는 제1 액세스 트랜지스터; 및
제1 단자가 제2 노드에 연결되고, 제2 단자가 제2 비트 라인에 연결되고, 제어 단자가 상기 워드 라인에 연결되는 제2 액세스 트랜지스터;를 포함하고,
상기 TCAM 셀의 비교 회로는,
상기 3진 메모리 셀의 반전 저장 값에 대응하는 상기 제2 노드로부터 상기 반전 저장 값을 입력 받는 제1 트랜지스터와, 상기 제1 트랜지스터와 직렬로 연결되고 상기 서치 드라이버의 제1 서치 라인을 통해 서치 값을 입력 받는 제2 트랜지스터를 포함하는 제1 트랜지스터 쌍과,
상기 3진 메모리 셀의 저장 값에 대응하는 상기 제1 노드로부터 상기 저장 값을 입력 받는 제3 트랜지스터와, 상기 제3 트랜지스터와 직렬로 연결되고 상기 서치 드라이버의 제2 서치 라인을 통해 상기 서치 값을 입력 받는 제4 트랜지스터를 포함하는 제2 트랜지스터 쌍이 상호 병렬 연결되고,
상기 3진 메모리 셀의 저장 값이 2일 때, 상기 제1 노드에는 양의 공급 전압(VDD)이 인가되고, 상기 제2 노드에는 접지 전압(GND) 또는 음의 공급 전압(VSS)이 인가되며,
상기 3진 메모리 셀의 저장 값이 1일 때, 상기 제1 노드 및 상기 제2 노드에는 중간 전압(VDD/2)이 인가되고,
상기 3진 메모리 셀의 저장 값이 0일 때, 상기 제1 노드에는 접지 전압(GND) 또는 음의 공급 전압(VSS)가 인가되고, 상기 제2 노드에는 양의 공급 전압(VDD)이 인가되는, TCAM 장치. - 삭제
- 청구항 7에 있어서,
상기 TCAM 셀은 하나의 3진 메모리 셀과 하나의 비교 회로를 포함하는 TCAM 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210084150A KR102497837B1 (ko) | 2021-06-28 | 2021-06-28 | 3진 메모리 셀에 기반한 tcam 장치 |
US17/672,662 US20220415396A1 (en) | 2021-06-28 | 2022-02-15 | Ternary content addressable memory device based on ternary memory cell |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210084150A KR102497837B1 (ko) | 2021-06-28 | 2021-06-28 | 3진 메모리 셀에 기반한 tcam 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20230001369A KR20230001369A (ko) | 2023-01-04 |
KR102497837B1 true KR102497837B1 (ko) | 2023-02-09 |
Family
ID=84541189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210084150A Active KR102497837B1 (ko) | 2021-06-28 | 2021-06-28 | 3진 메모리 셀에 기반한 tcam 장치 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20220415396A1 (ko) |
KR (1) | KR102497837B1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11908505B2 (en) * | 2020-01-24 | 2024-02-20 | Taiwan Semiconductor Manufacturing Company, Ltd. | Ferroelectric FET-based content addressable memory |
CN116798478A (zh) * | 2023-05-18 | 2023-09-22 | 北京大学 | 三态内容寻址存储器 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3004886B2 (ja) * | 1995-01-25 | 2000-01-31 | 川崎製鉄株式会社 | 内容アドレス式メモリ |
US6046923A (en) * | 1999-01-13 | 2000-04-04 | Lucent Technologies Inc. | Content-addressable memory architecture with column muxing |
US6781857B1 (en) * | 2002-02-27 | 2004-08-24 | Integrated Device Technology, Inc. | Content addressable memory (CAM) devices that utilize multi-port CAM cells and control logic to support multiple overlapping search cycles that are asynchronously timed relative to each other |
US7558095B2 (en) * | 2007-05-02 | 2009-07-07 | Agere Systems Inc. | Memory cell for content-addressable memory |
KR101072456B1 (ko) * | 2009-12-30 | 2011-10-11 | 충북대학교 산학협력단 | 저전력 내용 주소화 메모리 구동 회로 |
US20150262667A1 (en) * | 2014-03-11 | 2015-09-17 | Lsi Corporation | Low power hit bitline driver for content-addressable memory |
KR101689159B1 (ko) * | 2015-07-10 | 2016-12-23 | 울산과학기술원 | 3진수 논리회로 |
KR102172380B1 (ko) * | 2019-04-05 | 2020-10-30 | 울산과학기술원 | 3진 메모리 셀 및 이를 포함하는 메모리 장치 |
-
2021
- 2021-06-28 KR KR1020210084150A patent/KR102497837B1/ko active Active
-
2022
- 2022-02-15 US US17/672,662 patent/US20220415396A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20220415396A1 (en) | 2022-12-29 |
KR20230001369A (ko) | 2023-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7940599B2 (en) | Dual port memory device | |
KR102172380B1 (ko) | 3진 메모리 셀 및 이를 포함하는 메모리 장치 | |
US10885982B2 (en) | Semiconductor memory device and control method therefor | |
KR102206020B1 (ko) | 로직-인-메모리를 위한 3진 메모리 셀 및 이를 포함하는 메모리 장치 | |
JP4188643B2 (ja) | 半導体メモリ装置 | |
US6845025B1 (en) | Word line driver circuit for a content addressable memory | |
US20150103604A1 (en) | Memory array architectures having memory cells with shared write assist circuitry | |
KR102497837B1 (ko) | 3진 메모리 셀에 기반한 tcam 장치 | |
US8724359B2 (en) | Methods and circuits for limiting bit line leakage current in a content addressable memory (CAM) device | |
WO2008144227A1 (en) | Junction field effect dynamic random access memory cell and content addressable memory cell | |
KR102154353B1 (ko) | 전하 공유 기반의 선택적 매치 라인 프리차지 기법을 이용하는 캠 장치 | |
US7084672B1 (en) | Sense amplifier circuit for content addressable memory device | |
US8929116B2 (en) | Two phase search content addressable memory with power-gated main-search | |
US8913456B2 (en) | SRAM with improved write operation | |
US20150262667A1 (en) | Low power hit bitline driver for content-addressable memory | |
CN100466103C (zh) | 可寻址内容的存储单元 | |
KR102567030B1 (ko) | 3진 메모리 셀을 포함하는 메모리 장치 | |
US10910056B2 (en) | Semiconductor device | |
KR102807925B1 (ko) | 3진 메모리 셀 및 이를 포함하는 메모리 장치 | |
US7417882B1 (en) | Content addressable memory device | |
US12153808B2 (en) | Memory device and data initialization method of the same | |
US20230154506A1 (en) | Precharge circuitry for memory | |
JP2019117678A (ja) | 半導体装置 | |
CN115602218A (zh) | 存储阵列 | |
KR20230018112A (ko) | 내용 주소화 메모리 및 이를 위한 매치라인 센스 앰프 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20210628 |
|
PA0201 | Request for examination | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20220816 Patent event code: PE09021S01D |
|
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20221103 |
|
PG1501 | Laying open of application | ||
PG1601 | Publication of registration |