KR101041667B1 - 콘텐츠 어드레스가능한 메모리에서의 전력 소모를 감소시키기 위한 방법 및 장치 - Google Patents

콘텐츠 어드레스가능한 메모리에서의 전력 소모를 감소시키기 위한 방법 및 장치 Download PDF

Info

Publication number
KR101041667B1
KR101041667B1 KR1020097004515A KR20097004515A KR101041667B1 KR 101041667 B1 KR101041667 B1 KR 101041667B1 KR 1020097004515 A KR1020097004515 A KR 1020097004515A KR 20097004515 A KR20097004515 A KR 20097004515A KR 101041667 B1 KR101041667 B1 KR 101041667B1
Authority
KR
South Korea
Prior art keywords
lines
cam
level
match
circuit
Prior art date
Application number
KR1020097004515A
Other languages
English (en)
Other versions
KR20090038484A (ko
Inventor
치아밍 차이
제프리 허버트 피셔
미첼 타이탄흐 판
Original Assignee
콸콤 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 콸콤 인코포레이티드 filed Critical 콸콤 인코포레이티드
Publication of KR20090038484A publication Critical patent/KR20090038484A/ko
Application granted granted Critical
Publication of KR101041667B1 publication Critical patent/KR101041667B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital 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/04Digital 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/06Arrangements for interconnecting storage elements electrically, e.g. by wiring
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers

Landscapes

  • Static Random-Access Memory (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Power Sources (AREA)

Abstract

멀티-레벨 계층적 콘텐츠 어드레스 가능한 메모리(CAM)에서의 전력 소모는 성능에 악영향을 미침이 없이 감소된다. 멀티-레벨 계층적 CAM 회로의 일 실시예에 따라, 상기 CAM 회로는 복수의 하위-레벨 매치 라인들, 복수의 상위-레벨 매치 라인들 및 매치 라인 복원 회로를 포함한다. 하위-레벨 매치 라인들은 사전-평가 기간 동안 사전-평가 상태로 복원되도록 구성된다. 상위-레벨 매치 라인들은 평가 기간동안 하위-레벨 매치 라인들 중 하나 이상의 개별 그룹들의 평가 상태를 캡쳐하고 사전-평가 기간동안 사전-평가 상태로 복원되도록 구성된다. 매치 라인 복원 회로는 상기 하위-레벨 매치 라인들 중 적어도 하나가 대응하는 인에이블 정보, 예를 들어, 매치 라인 결과들이 사용되어야 하는지의 여부를 표시하는 하나 이상의 비트들에 응답하여 사전 -평가 상태로 복원되는 것을 방지하도록 구성된다.

Description

콘텐츠 어드레스가능한 메모리에서의 전력 소모를 감소시키기 위한 방법 및 장치{METHOD AND APPARATUS FOR REDUCING POWER CONSUMPTION IN A CONTENT ADDRESSABLE MEMORY}
본 발명은 전체적으로는 콘텐츠 어드레스가능한 메모리들(Content Addressable Memory : CAM)에 관한 것이며, 구체적으로는 CAM 성능에 악영향을 미침이 없이 CAM 전력 소모를 감소시키는 것에 관한 것이다.
랜덤 액세스 메모리(RAM)가 상기 RAM에 공급된 어드레스에 저장된 데이터 워드를 리턴시키는 RAM과는 달리, 콘텐츠 어드레스가능한 메모리(CAM)는 상기 CAM에 입력되는 검색 워드에 매칭되는 데이터 패턴을 찾기 위해 자신의 전체 메모리를 검색한다. 만약 상기 데이터 패턴이 발견되면, 상기 CAM은 상기 워드가 발견된 하나 이상의 저장 어드레스들의 리스트를 리턴시킨다. 몇몇 CAM들에서, 데이터 워드 또는 다른 관련 데이터 역시 리턴된다. 따라서, CAM들은 종종 연관 어레이로 사용된다.
CAM들은 복수의 엔트리들을 포함하고, 각각의 엔트리는 데이터를 저장하도록 구성된 다수의 CAM 셀들을 가진다. 상기 CAM 셀들은 이진(이진 데이터를 저장함)일 수 있거나 삼진(이진 데이터 혹은 '돈 케어(don't care)' 상태)일 수 있다. 각각의 CAM 셀은 매치 라인에 연결된다. CAM 검색 동작동안, 검색 필드가 CAM에 제공된다. 상기 검색 필드 입력에 응답하여, 각각의 매치 라인은 자신의 각각의 CAM 셀이 상기 검색 필드의 일부 부분과 매칭되는 데이터를 포함하는지의 여부를 표시한다. 검색 동작이 완료된 후, 매치 라인들은 후속하는 검색동안 CAM 성능을 개선하기 위해 사전-평가 상태로 통상적으로 복원된다. 예를 들어, 매치라인들은 통상적으로 사전-평가 기간동안 논리 1 값으로 사전-충전된 하이(high) 상태이다.
후속하는 CAM 검색 동작동안, 매칭 데이터를 포함하지 않는 CAM 셀들과 연관된 매치 라인들은 방전된다. 오직 매칭 데이터를 저장하는 CAM 셀들에 연결된 매치 라인들만이 하이로 충전된 상태로 유지된다. 따라서, 엔트리와 연관된 오직 하나의 CAM 셀만이 미스매치된(mismatched) 데이터 패턴을 포함하는 것으로 식별될 엔트리에 대한 미스매치된 데이터를 포함한다. 이는 미스(miss)라 지칭된다. 역으로, 만약 엔트리 내의 각각의 셀이 매치를 획득한다면, 상기 엔트리는 매칭 패턴을 포함하는 것으로 식별되며, 이는 히트(hit)라 지칭된다.
몇몇 종래 CAM들은 매치 라인들에 대한 용량성 로딩을 감소시키기 위해 다수 레벨들의 계층 매치 라인들을 포함한다. 이러한 멀티-레벨 계층적 CAM들에 있어서, CAM 셀들의 그룹을 서비스하는 로컬 매치 라인들은 단일 글로벌 매치 라인에 연결된다. 하나 이상의 로컬 매치 라인들에 의해 표시되는 미스매치는 대응하는 글로벌 매치 라인에 의해 반영된다. 따라서, 글로벌 매치 라인은, 자신의 대응하는 로컬 매치 라인들이 미스를 표시하는 경우, 미스를 표시한다. 역으로, 상기 글로벌 매치 라인은, 자신의 대응하는 로컬 매치 라인들 모두가 히트를 표시하는 경우, 히트를 표시한다. CAM 사이즈에 따라, 하나 이상의 중간 레벨들의 매치 라인들은, 용량성 로딩을 추가로 감소시키기 위해, 로컬 매치 라인들과 대응하는 글로벌 매치 라인 사이에 포함된다.
특정 CAM 아키텍처와 무관하게, CAM 검색 결과들을 처리하는 몇몇 어플리케이션들이 CAM 엔트리들의 서브세트에 대한 검색 결과들만을 처리할 필요가 있을 수 있다. 예를 들어, 몇몇 어플리케이션들은 특정 CAM 엔트리들의 특정 부분들에 대한 히트/미스 검색 결과들을 폐기 혹은 무시하고, 상기 엔트리들의 다른 부분들과 연관된 검색 결과들을 사용할 수 있다. 특정 CAM 셀들에 대한 히트/미스 검색 결과들을 무시하기 위한 일 종래의 접근법은 관심 없는 CAM 셀들을 그들의 개별 매치 라인들로부터 연결해제하는 것이다. 예를 들어, 트랜지스터 디바이스가 CAM 셀의 출력 노드와 그것의 개별 매치 라인 사이에 직렬로 배치될 수 있다. 상기 트랜지스터가 스위치 오프될 때, 상기 CAM 셀은 자신의 매치 라인으로부터 디커플링된다. 따라서, 상기 CAM 셀의 콘텐츠는 상기 CAM 셀의 매치 라인의 상태에 영향을 미치지 않는다. 즉, 상기 매치 라인은 자신의 대응하는 CAM 셀이 매칭 데이터를 포함하는지 아닌지의 여부에 무관하게 자신의 사전-평가 상태, 예를 들어, 사전-충전된 하이 상태를 유지한다. 그러나, 상기 CAM 셀과 연관된 결과들이 무시될 것이라 할지라도, 사전-평가 기간동안 상기 CAM 셀의 매치 라인을 사전-충전하는데 전력이 소모된다. 더욱이, 게이팅(gating) 트랜지스터가 스위치 온 되는 경우, 상기 트랜지스터는 상기 CAM 셀의 출력 노드를 상기 매치 라인으로 커플링 시킨다. 이러한 구성은 CAM 셀들의 출력 노드에 부가적인 커패시턴스를 추가하고, 따라서, 매치 라인 동작들을 느리게 하며 부가 전력을 소모한다.
멀티-레벨 계층적 CAM들 내 특정 검색 결과들을 무시하기 위한 또다른 종래기술의 접근법은 관심 없는 로컬 매치 라인들과 연관된 글로벌 매치 라인 인에이블 회로를 디스에이블 하는 것이다. 예를 들어, 사전-충전된 글로벌 매치 라인이 방전될 수 있는지의 여부를 제어하는 클록 신호는 인에이블 신호에 의해 게이팅된다. 만약 상기 클록 신호가 디스에이블되는 경우, 상기 글로벌 매치 라인은 그것에 연결된 로컬 매치 라인들의 상태에 무관하게 그것의 사전-충전된 상태를 유지한다. 그 결과, CAM 평가 기간 동안 인에이블된 글로벌 매치 라인들만이 그들의 대응하는 로컬 매치 라인들의 상태에 의해 영향을 받는다. 상기 글로벌 매치 라인 인에이블 회로가 디스에이블되는 경우 대응하는 글로벌 및 로컬 매치 라인들을 사전-충전하는데에 여전히 전력이 소모된다.
본원의 방법들 및 장치에 따라, 멀티-레벨 계층적 콘텐츠 어드레스가능한 메모리(CAM) 회로는 CAM 동작에 악영향을 미침이 없이 전력 소모를 감소시키기 위한 매치 라인 커플링 회로를 포함한다. 매치 라인 커플링 회로는 관심없는 CAM 매치 라인들이 사전 평가 상태로 복원되는 것을 방지함으로써(예를 들어 매치라인 사전-충전을 방지함으로써) 전력 소모를 감소시킨다. 따라서, CAM 어드레스 사이클의 사전-평가 기간동안, 오직 관심있는 매치 라인들만이 그들의 사전-평가 상태로 복원된다.
상기 매치 라인 커플링 회로에 의해 수신된, 혹은 획득된 인에이블 정보는 어느 매치 라인들이 관심없는지를 표시한다. 일 실시예에서, 상기 인에이블 정보는 어느 매치 라인들이 관심없는지를 직접적으로 표시한다. 또다른 실시예에서, 상기 인에이블 정보는, 예를 들어 관심 있는 매치 라인들을 식별함으로써, 어느 매치 라인들이 관심없는지를 간접적으로 표시한다. 이와는 무관하게, 상기 인에이블 정보는 어느 매치 라인들이 관심 있는지 혹은 아닌지의 여부를 표시하기에 적합한 임의의 정보, 예를 들어, 케어/돈 케어(care/don't care)표시자, 하나 이상의 마스킹 비트들, 하나 이상의 유효/무효 비트들 등을 포함할 수 있다.
특정 매치 라인들의 복원을 방지하고 이에 의해 전력을 절감함에 더하여, 매치 라인 커플링 회로는 또한 관심 없는 것으로서 식별된 매치 라인들과 대응하는 상위-레벨 매치 라인들을 디커플링시킨다. 이는 특정 하위-레벨 매치 라인들이 전술한 사전-상기 전력-절감 동작들의 일부분으로서 그들의 사전-평가 상태로 복원되지 않는 경우에 예측불가능한 행동을 방지한다.
멀티-레벨 계층적 CAM 회로에서 전력 소모를 감소시키는 일 실시예에 따라, 멀티-레벨 계층적 CAM 회로에 포함된 하나 이상의 CAM 매치 라인들과 연관된 인에이블 정보가 획득된다. CAM 매치 라인들의 개별 라인들이 상기 인에이블 정보에 응답하여 사전-평가 상태로 복원되는 것이 방지된다. 멀티-레벨 계층적 CAM 회로의 일 실시예에 따라, 상기 CAM 회로는 다수의 하위-레벨 매치 라인들, 다수의 상위-레벨 매치 라인들, 및 매치 라인 복원 회로를 포함한다. 하위-레벨 매치 라인들은 사전-평가 기간 동안 사전-평가 상태로 복원하도록 구성된다. 상기 상위-레벨 매치 라인들은 평가 기간동안 하위-레벨 매치 라인들 중 하나 이상의 개별 그룹들의 평가 상태를 캡쳐하고 사전-평가 기간동안의 사전-평가 상태로 복원되도록 구성된다. 상기 매치 라인 복원 회로는, 상기 하위-레벨 매치 라인들 중 적어도 하나가 대응하는 인에이블 정보에 응답하여 상기 사전-평가 상태로 복원되는 것을 방지하도록 구성되는데, 예컨대 매치 라인이 대응하는 돈 케어(don't care) 혹은 무효(invalid) 콘텐츠로서 인지된다.
멀티-레벨 계층적 CAM 회로는 캐시들 및 버퍼들과 같은 다양한 종류의 메모리 디바이스들에 포함되거나 이들과 관련될 수 있다. 변환 색인 버퍼(TLB)의 일 실시예에 따라, 상기 TLB는 복수의 엔트리들 및 대응하는 매치 라인들을 가지는 멀티-레벨 계층적 CAM 회로를 포함한다. 상기 멀티-레벨 계층적 CAM 회로는 상기 엔트리들과 연관된 인에이블 정보를 저장하고 가상 메모리 어드레스들을 대응하는 물리적 메모리 어드레스들로 변환하도록 구성된다. 현재 TLB 컨텍스트의 인에이블 정보는 TLB 엔트리들의 유효성을 표시하는 하나 이상의 비트들에 대응한다. 멀티-레벨 계층적 CAM 회로는 상기 매치 라인들의 개별 라인들이 상기 인에이블 정보에 응답하여 사전-평가 상태로 복원되는 것을 방지하도록 구성된다.
물론, 본 발명은 상기 특징들 및 이점들에 제한되지 않는다. 당업자라면 후속하는 상세한 설명을 읽고 첨부 도면들을 살펴볼 때 추가적인 특징들 및 이점들을 인지할 것이다.
도 1은 전력 소모를 감소시키는 매치 라인 커플링 회로를 가지는 멀티-레벨 계층적 콘텐츠 어드레스가능한 메모리(CAM) 회로의 일 실시예를 예시하는 부분 블 록도이다.
도 2는 멀티-레벨 계층적 CAM 회로에서 전력 소모를 감소시키기 위한 프로그램로직의 일 실시예를 예시하는 논리 흐름도이다.
도 3은 멀티-레벨 계층적 CAM에 포함된 매치 라인 커플링 회로의 일 실시예를 도시하는 블록도이다.
도 4는 CAM 매치 라인 커플링 회로를 포함하는 마이크로프로세서의 일 실시예를 예시하는 블록도이다.
도 5는 멀티-레벨 계층적 CAM에 포함된 매치 라인 커플링 회로의 또다른 실시예를 예시하는 블록도이다.
도 1은 CAM 동작동안 전력 소모를 감소시키는 멀티-레벨 계층적 콘텐츠 어드레스가능한 메모리(CAM)의 일 실시예를 부분적으로 도시한다. CAM 회로(10)는 데이터를 저장하기 위해 이진(binary) 혹은 삼진(ternary) CAM 셀들과 같은 다수의 메모리 셀들(12)을 가진다. 상기 CAM셀들(12)은 그룹들(14) 내에 배열된다. 그룹(14) 내의 각각의 CAM 셀(12)은 로컬 매치 라인(LML)에 연결된다. 상기 CAM 회로(10) 내에 포함된 회로(16)는 상위-레벨 매치 라인에 관련 LML들을 연결시키는데, 예를 들어 LML0 내지 LMLn은 도 1의 글로벌 매치 라인(GML0)에 연결된다. 일 실시예에서, 관련된 LML들은 매치 라인 커플링 회로(16)를 통해 GML에 직접 연결된다. 이러한 실시예에 따라, 상기 CAM 회로(10)는 2개의 계층 레벨들의 매치 라인들(로컬 및 글로벌 매치 라인들)을 포함한다. 또다른 실시예에서, 관련 LML들은 중간 매치 라인(IML)에 연결된다. 이후 관련 IML들은 대응하는 GML에 직접 혹은 간접적으로 연결된다. 이 실시예에 따라, 상기 CAM 회로(10)는 3개 이상의 계층 레벨들의 매치 라인들(LML들, 적어도 하나의 레벨의 IML들, GML들)을 포함한다.
매치 라인 레벨들의 개수에 무관하게, 매치 라인 커플링 회로(16)는 매치 라인 복원 회로(18) 및 매치 라인 디커플링 회로(20)를 포함한다. 단지 설명을 쉽게 할 목적으로, 상기 매치 라인 커플링 회로(16)는 이후 LML들을 GML들에 커플링하는 것으로 설명된다. 그러나, 당업자라면, 본원에 설명된 커플링 회로(16)가 임의의 계층적으로 하위 레벨의 매치 라인들을 상위 레벨 매치 라인들에 연결시킬 수 있다는 점을 쉽게 인지할 것이다.
이 점을 유념하여, 매치 라인 복원 회로(18)는 CAM 검색 동작 후에 특정 LML들이 사전-평가 상태로 복원되어야 할지를 결정한다. 즉, 모든 LML들이 특정 CAM 검색 동작동안 관심있는 것이 아닐 수도 있다. 예를 들어, 하나 이상의 CAM 엔트리들(미도시) 또는 CAM 엔트리들의 일부분들이 평가동안 마스킹되거나 무효한 것으로서 마킹될 수 있다. 이들 엔트리들 혹은 부분적인 엔트리들에 대응하는 LML들은 관심 대상이 아니다. 관심 없는 LML들에 의해 제공된 검색 결과들은 통상적으로 CAM 검색 동작동안 무시되거나 폐기된다. 인에이블 정보, 예를 들어 각각의 CAM 엔트리와 연관된 하나 이상의 유효 혹은 마스킹 비트들이 어느 LML들이 관심 대상이 아닌지를 표시하기 위해 상기 매치 라인 복원 회로에 제공된다. 일 실시예에서, 상기 인에이블 정보는 어느 매치 라인들이 관심 없는지를 직접적으로 표시한다. 또다른 실시예에서, 상기 인에이블 정보는, 예컨대 관심있는 매치 라인들을 식별함으로써, 어느 매치 라인들이 관심 없는지를 간접적으로 표시한다. 이와는 무관하게, 매치 라인 복원 회로(18)는 CAM 검색 동작 동안 무시될 매치 라인들을 식별하기 위해 상기 인에이블 정보를 사용한다.
특정 매치 라인 복원 회로(18)가 자신의 대응하는 LML들이 관심 대상이 아니라고 결정하는 경우, 상기 특정 매치 라인 복원 회로(18)는 상기 LML들을 디스에이블시켜서 상기 LML들이 사전-평가 상태로 복원되는 것을 방지한다. 일 실시예에서, 상기 매치 라인 복원 회로(18)는 상기 LML들이 사전-충전되는 것을 방지한다. 또다른 실시예에서, 상기 매치 라인 복원 회로(18)는 상기 LML들이 사전-방전되는 것을 방지한다. 이들 LML들과 연관된 검색 결과들이 관심 대상이 아니기 때문에, 이들을 사전-평가 상태로 복원하는 것을 방지하는 것은 CAM 회로(10)의 동작에 악영향을 주지 않고 전력 소모를 감소시킨다. 상기 매치 라인 복원 회로(18)에 의해 사용되는 인에이블 정보는 예를 들어, 상기 CAM 회로(10) 내의 각각의 엔트리에 포함된 하나 이상의 유효 비트들로서, 상기 CAM 회로(10)에 저장될 수 있거나, 혹은 상기 CAM 회로(10)에 제공될 수 있다.
상기 인에이블 정보는 또한 매치 라인 디커플링 회로(20)에 의해 사용된다. 상기 매치 라인 디커플링 회로(20)는 관심 대상이 아닌 LML들이 그들의 대응하는 GML들에 영향을 주는 것을 방지하기 위해 상기 인에이블 정보를 사용한다. 관심 없는 LML을 GML로부터 디커플링하는 것은, 상기 LML이 자신의 GML의 상태에 영향을 주지 않을 것임을 보장한다. 대신, GML에 연결된 인에이블된 LML들만이, 예를 들어 자신을 방전시킴으로써 상기 GML의 상태에 영향을 줄 수 있다. 이는 불안정한 CAM 회로(10) 동작을 방지하는 한편 전력 소모를 감소시킨다.
일 실시예에서, 매치 라인 디커플링 회로(20)는 매치 라인 복원 회로(18)에 의해 디스에이블된 LML들의 그룹이 이들이 연결된 GML의 상태에 영향을 주는 것을 방지한다. 만약 인에이블 정보가, 특정 GML과 연관된 LML들의 그룹이 CAM 검색 동작동안 무시될 것임을 표시한다면, 상기 매치 라인 디커플링 회로(20)는 상기 GML로부터 LML들의 그룹을 디커플링한다. 따라서, 매치 라인 디커플링 회로(20)는 LML들이 관심 대상이 아닌 경우, 상기 LML들의 개별 그룹들이 대응하는 GML들의 상태에 영향을 주는 것을 방지한다.
다음은, 매치 라인 복원 및 디커플링 회로(18,20)가 CAM 검색 동작동안 어떻게 동작하는지를 나타내기 위해 도 1에 도시된 CAM 회로(10)에 기초한 비-제한적인 예시이다. CAM 검색 동작의 사전-평가 기간 동안, 상기 CAM 회로(10)는, 도 2의 상태(100)에 의해 예시되는 바와 같이, 매치 라인 인에이블 정보를 획득한다. 일 실시예에서, 상기 CAM 회로(10)는 엔트리들의 유효성을 표시하는 대응하는 유효 비트를 획득하기 위해 CAM 회로(10)의 각 엔트리의 위치에 액세스한다. 본 예시에서, 인에이블 정보는 LML1을 제외한 모든 LML들이 관심있음을 표시한다. 상기 인에이블 정보에 기초하여, LML1과 연관된 매치 라인 복원 회로(18)는 LML1이 사전-평가 상태로 복원되는 것을 방지하는 한편, 나머지 다른 매치 라인 복원 회로들(18)은, 도 2의 단계(102)에 예시된 바와 같이, 그들의 대응하는 LML들의 복원을 인에이블시킨다. 또한, LML1과 연관된 매치 라인 디커플링 회로(20)는 LML1이 후속하는 평가 기간동안 GML0의 상태에 영향을 주는 것을 방지한다. 따라서, GML0의 상태는 LML1을 제외한 각각의 LML에 의해 영향을 받을 수 있다.
도 3은 CAM 회로(10)에 포함된 매치 라인 커플링 회로(16)의 일 실시예를 예시한다. 상기 매치 라인 커플링 회로(16)는, LML 사전충전 회로(p-FET T1), 인버터(p-FET T2 및 n-FET T3), GML 사전 충전 회로(p-FET T4) 및 GML 평가 회로(n-FET들 T5 및 T6)를 포함한다. 상기 매치 라인 커플링 회로(16)는 또한 매치 라인 복원 및 디커플링 회로(18,20)를 포함한다. 이 실시예에 따라, 상기 매치 라인 복원 회로(18)는 인버터와 LML 사전충전 회로의 소스 노드들과 전압원(Vdd) 사이에 결합된 p-FET 트랜지스터(T7)을 포함한다. 상기 매치 라인 디커플링 회로(20)는 GML 평가 회로의 하나의 게이트 입력에 연결된 n-FET 트랜지스터(T8)을 포함한다. 상기 매치 라인 복원 및 디커플링 회로들(18,20)의 게이트들은 인에이블 신호(LML_ENABLE)에 의해 제어된다.
상기 인에이블 신호는 LML이 관심 대상인지 아닌지의 여부를 표시한다. 상기 인에이블 신호가 논리 1인 경우, 이는 상기 LML의 사전-충전이 디스에이블되도록 하고, 상기 LML이 그것의 GML로부터 디커플링되게 한다. 특히, 만약 인에이블 신호가 상기 LML과 연관된 검색 결과들이 관심 대상임을 표시하는 경우, 상기 매치 라인 복원 회로(18)가 활성화된다(예를 들어, p-FET 트랜지스터(17)가 스위치 온된다). 활성화되면, 상기 매치 라인 복원 회로(18)는 LML 사전충전 회로 및 인버터의 개별 소스 노드들을 논리 1 값(Vdd)으로 충전시킴으로써 LML 사전 충전 회로 및 인버터를 인에이블시킨다. 이는 LML 사전충전 회로로 하여금 사전-평가 기간동안 활성 복원 신호(RESTORE)에 응답하여 상기 LML을 논리 1로 사전 충전하도록 한다. 몇몇 종래 회로 기술들과는 달리, 상기 매치 라인 복원 회로(18)는 활성화될 때 상기 CAM 회로(10)의 성능에 악영향을 주지 않는다. 특히, 상기 매치 라인 복원 회로는 활성화될 때 상기 LML에 결합된 CAM 셀(미도시)의 출력 노드에 부가적인 커패시턴스를 추가하지 않는다. 상기 매치 라인 복원 회로(18)가 CAM 셀의 출력 노드에 LML을 연결하는 활성 신호 경로에 위치하지 않기 때문에, 어떠한 부가적인 용량성 로딩도 발생하지 않는다.
상기 LML이 관심 대상인 경우, 상기 인에이블 신호 역시 상기 매치 라인 디커플링 회로(20)가 비활성화되도록 한다(예를 들어, n-FET 트랜지스터 T8이 스위치 오프된다). 상기 매치 라인 디커플링 회로(20)가 비활성화되는 경우, GML의 상태는 LML에 의해 영향을 받는다. 그 결과, GML 평가 회로의 상기 n-FET 트랜지스터 T6가 인에이블된 클록 신호(GML_CLK)에 응답하여 활성화 될 때, LML의 상태는 GML 평가 회로의 n-FET 트랜지스터 T5가 스위치 온 될지 오프 될지의 여부를 제어한다. 만약 n-FET 트랜지스터 T5가 스위치 온되는 경우, 상기 GML은 접지로 방전된다. 역으로, n-FET 트랜지스터 T5가 스위치 오프되는 경우, GML은 LML의 상태에 무관하게 LML에 의해 영향을 받지 않는 것으로 유지된다. 그 결과, 매치 라인 디커플링 회로(20)는 비활성화시 GML 상태에 영향을 주지 않는다. 대신, GML의 상태는 오직 인에이블된 LML들의 상태만을 반영한다.
만약 LML이 관심 대상이 아니라면, 매치 라인 복원 회로(18)는 비활성화된 다(예를 들어, p-FET 트랜지스터 T7이 스위치 오프된다). 비활성화시, 상기 매치 라인 복원 회로(18)는 전원으로부터 인버터 및 LML 사전충전 회로의 소스 노드들을 디커플링시킨다. 상기 LML 사전충전 회로는 전원이 자신의 소스 노드로부터 제거되는 경우 LML을 사전충전 할 수 없고, 따라서, 불필요한 전력 소모가 감소된다. 더욱이, 상기 LML은 매치 라인 복원 회로(18)가 비활성화되는 경우 디스에이블된다.
또한, LML이 디스에이블 되는 경우, 인에이블 신호는 매치 라인 디커플링 회로(20)가 활성화되도록 한다. 상기 매치 라인 디커플링 회로(20)는 GML 평가 회로의 n-FET 트랜지스터 T5에 대한 게이트 입력을 논리 로우(low) 값(Vss)로 구동한다. n-FET 트랜지스터 T5의 게이트 입력이 로우인 경우, LML의 상태는 GML의 상태에 영향을 미치지 않으며, 따라서, LML은 GML로부터 디커플링된다. 특히, n-FET 트랜지스터 T5는 자신의 게이트 입력이 로우인 경우 충분한 전류를 전달할(conduct) 수 없다. 따라서, 이전의 비-평가 기간동안 사전-충전된 GML은 LML의 상태에 무관하게 이러한 특정 GML 평가 회로에 의해 방전될 수 없다. 활성화되는 경우, 매치 라인 디커플링 회로(20)는 또한 GML 평가 회로의 n-FET 트랜지스터 T5의 게이트 입력을 풀 다운(pulling down)시킴으로써 상기 CAM 회로(10)에 의한 예측불가능한 동작을 방지한다. 만약 n-FET 트랜지스터 T5의 게이트 입력이 풀 다운되지 않는 경우, 인버터의 출력 노드(lml_sns)는 상기 GML 상태에 악영향을 미칠 수 있다. 예를 들어, 상기 GML의 인버터의 출력 노드는, 전원이 자신의 소스 노드로부터 제거되는 경우, 플로팅하거나 그렇지 않은 경우 예측 불가능하게 동작할 수 있다. 매치 라인 디커플링 회로(20)는 LML이 관심 대상이 아닌 경우 LML이 GML의 상태에 영향을 주는 것을 방지함으로써 이러한 산발적인 동작이 상기 GML에 악영향을 미치는 것을 방지한다.
매치 라인 복원 및 디커플링 회로(18,20)는 캐시들 및 버퍼들과 같은 다양한 종류의 메모리 디바이스들에 포함되거나 이들과 연관될 수 있다. 도 4는 상기 매치 라인 복원 및 디커플링 회로(18,20)의 하나 이상의 인스턴스들을 포함하는 CAM 또는 CAM-유사 회로를 포함하는 마이크로프로세서(30)의 일 실시예를 예시한다. 더 상세하게, 상기 마이크로프로세서(30)는 명령 유닛(32), 하나 이상의 실행 유닛들(34), 버스 인터페이스 유닛(36), 데이터 캐시(38), 명령 캐시(40) 및 상위-레벨(L2) 캐시(42)를 포함한다. 명령 유닛(32)은 명령 흐름의 중앙집중형 제어를 상기 실행 유닛들(34)에 제공한다. 상기 실행 유닛들(34)은 명령 유닛(32)에 의해 디스패치된(dispatched) 명령들을 실행한다. 상기 버스 인터페이스 유닛(36)은 상기 마이크로프로세서(30)로 그리고 상기 마이크로프로세서(30)로부터 데이터, 명령들, 어드레스들 및 제어 신호들을 전달하기 위한 메커니즘을 제공한다. 상기 데이터 및 명령 캐시들(38,40)은 데이터 및 명령들을 각각 저장한다. 상기 L2 캐시(42)는 상기 데이터 및 명령 캐시들(38,40) 사이에 고속 메모리 버퍼 및 상기 마이크로프로세서(30)에 대해 외부에 있는 메모리(미도시)를 제공한다.
상기 캐시들(38,40,42)는 캐시 액세스 동작동안 어드레스 변환을 수행하기 위한 개별 변환 색인 버퍼들(TLB)(44,46,48)을 가진다. 각각의 TLB(44,46,48)은 매치 라인 복원 및 디커플링 회로(18,20)의 하나 이상의 인스턴스들을 가진다. 대안적으로, 통합된 TLB(미도시)가 캐시들(38,40, 및 42)을 위한 어드레스 변환을 수행할 수 있다. 이와는 무관하게, 관심있는 가상 메모리가 TLB들(44,46,48)에 제공되고, 상기 TLB들(44,46,48)이 그 응답으로 대응하는 히트 혹은 미스 결과들을 획득한다는 점에서 TLB들(44,46,48)은 CAM-기반형이다. 히트의 경우, 가상 어드레스 검색 필드에 대응하여 물리적 어드레스가 생성된다. 미스의 경우, 페이지 테이블 트랜잭션이 발생한다.
TLB들(44,46,48)은 가상 어드레스를 물리적 어드레스들로 변환하는데 사용하기 위한 정보를 포함하는 엔트리들(미도시)을 가진다. 일 실시예에서, 각각의 TLB 엔트리는 가상 어드레스 필드, 대응하는 물리적 어드레스 필드 및 유효 비트를 포함한다. 가상 어드레스 검색 필드는 상기 TLB들(44,46,48)중 하나에 엔트리를 매치시키고, 그 대응하는 물리적 어드레스 필드가 출력된다. 그렇지 않은 경우, 페이지 테이블 트랜잭션이 발생한다. 유효 비트는 특정 TLB 엔트리가 유효한지 아닌지의 여부를 결정한다. 무효한 경우, 상기 엔트리 콘텐츠는 어드레스 변환동안 무시되거나 폐기된다. 페이지-사이즈 비트들과 같은 다른 인에이블 비트들은 가상 어드레스 비트들의 대응하는 부분들이 어드레스 변환에 참여해야 하는지의 여부를 결정할 수 있다.
도 5는 상기 TLB들(44,46,48)에서의 사용을 위한 매치 라인 커플링 회로(16)의 일 실시예를 예시한다. 이러한 실시예에 따라, TLB(44,46,48) 엔트리로부터 검색된 유효 비트(VALID)는 매치 라인 복원 및 디커플링 회로(18,20)의 동작을 제어한다. 특정 TLB(44,46,48) 엔트리가 유효한 경우, 그것의 유효 비트는 대응하는 매치 라인 복원 회로(18)가 인에이블되도록 한다. 인에이블되는 경우, 상기 매치 라인 복원 회로(18)는 TLB 검색 동작 이후 자신의 LML을 자신의 사전-평가 상태로 복원한다. 또한, 상기 복원 회로(18)는 인에이블시 대응하는 GML의 사전-충전을 위한 제 2 p-FET 트랜지스터(T9)를 포함한다. 역으로, 유효 비트가 상기 엔트리가 무효함을 표시하는 경우, LML은 GML로부터 디커플링된다.
이러한 실시예에 따라, 상기 LML은, 매치 라인 디커플링 회로(10)의 p-FET(10)가 GML 인버터 회로(p-FET T2 및 n-FET T3)에 대한 입력을 논리 로우 값(Vss)으로 구동하는 경우, GML로부터 디커플링된다. 매치 라인 디커플링 회로(20)가 상기 인버터 입력을 논리 로우 상태로 구동하는 경우, 상기 LML은 GML로부터 효과적으로 디커플링된다. 즉, LML은 더 이상 GML의 상태에 대해 어떠한 영향도 미치지 않는데, 왜냐하면 상기 인버터가 LML 상태에 무관하게 논리 1을 출력하기 때문이다. 상기 인버터 입력을 논리 로우 상태로 구동함으로써, 상기 GML은 자신의 클록 입력 신호(GML_CLK)가 활성(active)인 경우 방전된다. GML이 방전되는 경우 이는 미스매치로서 해석된다. 따라서, 이러한 커플링 회로(6)의 실시예는 TLB(44,46,48) 엔트리가 무효할 때 잘못된 히트들이 처리되는 것을 방지한다. 대안적으로, 도 3에 예시된 커플링 회로(16) 실시예는 그들의 대응하는 GML들로부터 무효 LML들의 복원 및 무효 LML들의 디커플링을 방지하기 위해 TLB(44,46,48)에 포함될 수 있다.
상기 범위의 변형들 및 응용들을 감안하면, 본 발명이 전술된 설명에 의해서도 또한 첨부 도면들에 의해서도 제한되지 않는다는 점이 이해되어야 한다. 대신, 본 발명은 후속하는 청구항들 및 이들의 등가물에 의해서만 제한된다.

Claims (26)

  1. 멀티-레벨 계층적 콘텐츠 어드레스가능한 메모리(content addressable memory : CAM) 회로에서, 전력 소모를 감소시키는 방법으로서,
    상기 멀티-레벨 계층적 CAM 회로에 포함된 하나 이상의 CAM 매치 라인들과 연관된 인에이블 정보를 획득하는 단계;
    상기 인에이블 정보에 응답하여 상기 CAM 매치 라인들의 개별 라인들이 사전-평가 상태로 복원되는 것을 방지하는 단계; 및
    상기 인에이블 정보에 응답하여, 상기 CAM 매치 라인들의 개별 라인들이 대응하는 상위-레벨(higher-level) CAM 매치 라인들의 사전-평가 상태에 영향을 주는 것을 방지하는 단계를 포함하는,
    방법.
  2. 제1항에 있어서,
    상기 사전-평가 상태로 복원되는 것이 방지된 상기 CAM 매치 라인들의 개별 라인들은 로컬 CAM 매치 라인들 및 중간(intermediary) CAM 매치 라인들 중 적어도 하나를 포함하는,
    방법.
  3. 제1항에 있어서,
    상기 인에이블 정보에 응답하여 상기 CAM 매치 라인들의 개별 라인들이 사전-평가 상태로 복원되는 것을 방지하는 단계는 매치 라인 사전-충전(pre-charging)을 방지하는 단계를 포함하는,
    방법.
  4. 제1항에 있어서,
    상기 인에이블 정보에 응답하여 상기 CAM 매치 라인들의 개별 라인들이 사전-평가 상태로 복원되는 것을 방지하는 단계는 매치 라인 사전-방전(pre-discharging)을 방지하는 단계를 포함하는,
    방법.
  5. 제1항에 있어서,
    상기 인에이블 정보에 응답하여 상기 CAM 매치 라인들의 개별 라인들이 사전-평가 상태로 복원되는 것을 방지하는 단계는 상기 CAM 매치 라인들의 개별 라인들을 이들의 각각의 사전-평가 상태들로 복원하도록 구성된 회로를 디스에이블하는 단계를 포함하는,
    방법.
  6. 삭제
  7. 제1항에 있어서,
    상기 인에이블 정보에 응답하여, 상기 CAM 매치 라인들의 개별 라인들이 대응하는 상위-레벨 CAM 매치 라인들의 사전-평가 상태에 영향을 주는 것을 방지하는 단계는 상기 CAM 매치 라인들의 개별 라인들을 이들의 대응하는 상위-레벨 CAM 매치 라인들로부터 디커플링하도록 구성된 회로를 인에이블하는 단계를 포함하는,
    방법.
  8. 제1항에 있어서,
    상기 상위-레벨 CAM 매치 라인들은 중간 CAM 매치 라인들 및 글로벌(global) CAM 매치 라인들 중 적어도 하나를 포함하는,
    방법.
  9. 제1항에 있어서,
    상기 인에이블 정보는, 상기 CAM 매치 라인들의 개별 라인들과 연관된 검색 결과들이 사용될 지의 여부를 표시하는 하나 이상의 비트들을 포함하는,
    방법.
  10. 멀티-레벨 계층적 콘텐츠 어드레스가능한 메모리(CAM) 회로로서,
    사전-평가 기간동안 사전-평가 상태로 복원되도록 구성된 복수의 하위-레벨(lower-level) 매치 라인들;
    평가 기간동안 상기 하위-레벨 매치 라인들 중 하나 이상의 매치 라인들의 개별 그룹들의 평가 상태를 캡쳐하고 상기 사전-평가 기간동안 사전-평가 상태로 복원되도록 구성된 복수의 상위-레벨 매치 라인들;
    상기 하위-레벨 매치 라인들 중 적어도 하나가 대응하는 인에이블 정보에 응답하여 상기 사전-평가 상태로 복원되는 것을 방지하도록 구성된 매치 라인 복원 회로; 및
    상기 인에이블 정보에 응답하여, 상기 하위-레벨 매치 라인들 중 하나 이상을 이들의 대응하는 상위-레벨 매치 라인들로부터 디커플링하도록 구성되는 매치 라인 디커플링 회로를 포함하는,
    멀티-레벨 계층적 CAM 회로.
  11. 제10항에 있어서,
    상기 매치 라인 복원 회로는 인에이블 정보에 응답하여 매치 라인 사전-충전을 방지함으로써 상기 하위-레벨 매치 라인들 중 적어도 하나가 상기 사전-평가 상태로 복원되는 것을 방지하도록 구성되는,
    멀티-레벨 계층적 CAM 회로.
  12. 제10항에 있어서,
    상기 매치 라인 복원 회로는 인에이블 정보에 응답하여 매치 라인 사전-방전을 방지함으로써 상기 하위-레벨 매치 라인들 중 적어도 하나가 상기 사전-평가 상태로 복원되는 것을 방지하도록 구성되는,
    멀티-레벨 계층적 CAM 회로.
  13. 제10항에 있어서,
    상기 매치 라인 복원 회로는 상기 인에이블 정보에 응답하여 하나 이상의 중간 매치 라인들이 사전-평가 상태로 복원되는 것을 방지하도록 추가로 구성되며,
    상기 중간 매치 라인들은 자신들의 대응하는 하위-레벨 매치 라인들에 연결되며, 상기 매치 라인 복원 회로 및 상기 매치 라인 디커플링 회로를 통해서 자신들의 대응하는 상위-레벨 매치 라인들에 추가로 연결되는,
    멀티-레벨 계층적 CAM 회로.
  14. 삭제
  15. 제10항에 있어서,
    상기 매치 라인 디커플링 회로는, 상기 인에이블 정보에 응답하여 상기 하위-레벨 매치 라인들의 개별 라인들이 그들의 대응하는 상위-레벨 매치 라인들의 사전-평가 상태에 영향을 주는 것을 방지함으로써, 상기 하위-레벨 매치 라인들 중 하나 이상을 이들의 대응하는 상위-레벨 매치 라인들로부터 디커플링하도록 구성되는,
    멀티-레벨 계층적 CAM 회로.
  16. 제10항에 있어서,
    상기 매치 라인 디커플링 회로는, 상기 하위-레벨 매치 라인들의 개별 라인들이 이들의 대응하는 상위-레벨 매치 라인들을 방전시키는 것을 방지함으로써, 상기 하위-레벨 매치 라인들의 개별 라인들이 이들의 대응하는 상위-레벨 매치 라인들의 상기 사전-평가 상태에 영향을 주는 것을 방지하도록 구성되는,
    멀티-레벨 계층적 CAM 회로.
  17. 제10항에 있어서,
    상기 매치 라인 디커플링 회로는, 상기 인에이블 정보에 응답하여 하나 이상의 중간 매치 라인들을 이들의 대응하는 상위-레벨 매치 라인들로부터 디커플링함으로써, 상기 하위-레벨 매치 라인들 중 하나 이상을 이들의 대응하는 상위-레벨 매치 라인들로부터 디커플링하도록 구성되는,
    멀티-레벨 계층적 CAM 회로.
  18. 제10항에 있어서,
    상기 인에이블 정보는 상기 CAM 매치 라인들의 개별 라인들과 연관된 검색 결과들이 사용될지의 여부를 표시하는 하나 이상의 비트들을 포함하는,
    멀티-레벨 계층적 CAM 회로.
  19. 제10항에 있어서,
    상기 복수의 하위-레벨 매치 라인들은 로컬 매치 라인들을 포함하고, 상기 복수의 상위-레벨 매치 라인들은 글로벌(global) 매치 라인들을 포함하는,
    멀티-레벨 계층적 CAM 회로.
  20. 제10항의 상기 멀티-레벨 계층적 CAM 회로를 포함하는,
    마이크로프로세서.
  21. 변환 색인 버퍼(TLB) 회로로서,
    복수의 엔트리들 및 대응하는 매치 라인들을 포함하는 멀티-레벨 계층적 콘텐츠 어드레스가능한 메모리(CAM) 회로 를 포함하며,
    상기 멀티-레벨 계층적 CAM 회로는 상기 엔트리들과 연관된 인에이블 정보를 저장하고, 가상 메모리 어드레스들을 대응하는 물리적 메모리 어드레스들로 변환하고, 상기 매치 라인들의 개별 라인들이 상기 인에이블 정보에 응답하여 사전-평가 상태로 복원되는 것을 방지하도록 구성되고,
    상기 멀티-레벨 계층적 CAM 회로는, 상기 인에이블 정보에 응답하여, 상기 매치 라인들의 개별 라인들을 대응하는 상위-레벨 매치 라인들로부터 디커플링하도록 추가로 구성되는,
    TLB 회로.
  22. 제21항에 있어서,
    상기 멀티-레벨 계층적 CAM 회로는 상기 인에이블 정보에 응답하여 상기 매치 라인들을 복원하도록 구성된 상기 멀티-레벨 계층적 CAM 회로에 포함된 회로를 디스에이블시킴으로써 상기 매치라인들의 개별 라인들이 사전-평가 상태로 복원되는 것을 방지하도록 구성되는,
    TLB 회로.
  23. 삭제
  24. 제21항에 있어서,
    상기 멀티-레벨 계층적 CAM 회로는, 상기 인에이블 정보에 응답하여 상기 멀티 라인들의 개별 라인들이 그들의 대응하는 상위-레벨 매치 라인들의 사전-평가 상태에 영향을 주는 것을 방지하도록 구성된 상기 멀티-레벨 계층적 CAM 회로에 포함된 회로를 인에이블시킴으로써, 상기 매치 라인들의 개별 라인들을 대응하는 상위-레벨 매치 라인들로부터 디커플링하도록 구성되는,
    TLB 회로.
  25. 제21항에 있어서,
    상기 멀티-레벨 계층적 CAM 회로는, 상기 인에이블 정보에 응답하여 상기 상위-레벨 매치 라인들의 개별 라인들을 대응하는 하위-레벨 매치 라인들의 상태에 무관하게 방전하도록 함으로써, 상기 매치 라인들의 개별 라인들을 대응하는 상위-레벨 매치 라인들로부터 디커플링하도록 구성되는,
    TLB 회로.
  26. 제21항의 상기 TLB 회로를 포함하는,
    마이크로프로세서.
KR1020097004515A 2006-08-04 2007-08-01 콘텐츠 어드레스가능한 메모리에서의 전력 소모를 감소시키기 위한 방법 및 장치 KR101041667B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/462,455 US7616468B2 (en) 2006-08-04 2006-08-04 Method and apparatus for reducing power consumption in a content addressable memory
US11/462,455 2006-08-04

Publications (2)

Publication Number Publication Date
KR20090038484A KR20090038484A (ko) 2009-04-20
KR101041667B1 true KR101041667B1 (ko) 2011-06-14

Family

ID=38859851

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097004515A KR101041667B1 (ko) 2006-08-04 2007-08-01 콘텐츠 어드레스가능한 메모리에서의 전력 소모를 감소시키기 위한 방법 및 장치

Country Status (10)

Country Link
US (2) US7616468B2 (ko)
EP (1) EP2057634B1 (ko)
JP (2) JP5180209B2 (ko)
KR (1) KR101041667B1 (ko)
CN (1) CN101501780B (ko)
BR (1) BRPI0714511A2 (ko)
CA (1) CA2658599A1 (ko)
MX (1) MX2009001338A (ko)
RU (1) RU2414014C2 (ko)
WO (1) WO2008019274A2 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7616468B2 (en) * 2006-08-04 2009-11-10 Qualcomm Incorporated Method and apparatus for reducing power consumption in a content addressable memory
US8085568B1 (en) * 2007-06-29 2011-12-27 Netlogic Microsystems, Inc. Methods and circuits for placing unused content addressable memory (CAM) cells into low current states
GB2461955A (en) * 2008-07-25 2010-01-27 Gnodal Ltd Ethernet bridge or router employing a distributed MAC address table
US7804699B2 (en) * 2008-12-26 2010-09-28 Texas Instruments Incorporated Segmented ternary content addressable memory search architecture
US8984217B2 (en) 2010-08-24 2015-03-17 Qualcomm Incorporated System and method of reducing power usage of a content addressable memory
US20140208075A1 (en) * 2011-12-20 2014-07-24 James Earl McCormick, JR. Systems and method for unblocking a pipeline with spontaneous load deferral and conversion to prefetch
RU2611246C1 (ru) * 2015-12-25 2017-02-21 Федеральное государственное учреждение "Федеральный научный центр Научно-исследовательский институт системных исследований Российской академии наук" (ФГУ ФНЦ НИИСИ РАН) Способ предзаряда линии совпадения регистра ассоциативного запоминающего устройства (азу) и модуль предзаряда
CN111128278B (zh) 2018-10-30 2021-08-27 华为技术有限公司 内容寻址存储器、数据处理方法及网络设备
CN112735495A (zh) * 2019-10-28 2021-04-30 瑞昱半导体股份有限公司 内容可定址存储器装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060166939A1 (en) * 2005-01-21 2006-07-27 Chen Chi-Yu R Fertilizer-compatible composition

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ207326A (en) 1983-03-08 1988-03-30 Stc Plc Associative data processing array
JPH02308499A (ja) * 1989-05-23 1990-12-21 Toshiba Corp 連想メモリ
US5130947A (en) * 1990-10-22 1992-07-14 Motorola, Inc. Memory system for reliably writing addresses with reduced power consumption
JPH05127872A (ja) * 1991-02-28 1993-05-25 Toshiba Corp 半導体集積回路
US5327372A (en) * 1992-01-17 1994-07-05 Matsushita Electric Industrial Co., Ltd. Semiconductor memory device
JP2777034B2 (ja) * 1992-01-17 1998-07-16 松下電器産業株式会社 半導体記憶装置
JPH10340589A (ja) * 1997-06-10 1998-12-22 Hitachi Ltd 半導体集積回路
JP3190868B2 (ja) 1997-11-21 2001-07-23 エヌイーシーマイクロシステム株式会社 連想メモリ装置
JP3478749B2 (ja) * 1999-02-05 2003-12-15 インターナショナル・ビジネス・マシーンズ・コーポレーション 連想メモリ(cam)のワードマッチラインのプリチャージ回路および方法
US6166939A (en) * 1999-07-12 2000-12-26 Net Logic Microsystems Method and apparatus for selective match line pre-charging in a content addressable memory
US6243280B1 (en) * 1999-09-09 2001-06-05 Netlogic Microsystems, Inc. Selective match line pre-charging in a partitioned content addressable memory array
US6191969B1 (en) * 1999-09-09 2001-02-20 Net Logic Microsystems, Inc. Selective match line discharging in a partitioned content addressable memory array
JP2001167585A (ja) * 1999-12-09 2001-06-22 Toshiba Corp 連想記憶装置
US6539466B1 (en) * 2000-02-21 2003-03-25 Hewlett-Packard Company System and method for TLB buddy entry self-timing
US20020169382A1 (en) * 2001-03-21 2002-11-14 Innerspace Medical, Inc. Gas column pressure monitoring device
US6477071B1 (en) 2001-05-07 2002-11-05 Switchcore Ab Method and apparatus for content addressable memory with a partitioned match line
WO2003050819A1 (en) 2001-12-11 2003-06-19 Memcall L.L.C. Power saving cam
US6768659B2 (en) * 2001-12-31 2004-07-27 Mosaid Technologies Incorporated Circuit and method for reducing power usage in a content addressable memory
US7006368B2 (en) * 2002-11-07 2006-02-28 Mosaid Technologies Incorporated Mismatch-dependent power allocation technique for match-line sensing in content-addressable memories
US7113415B1 (en) * 2004-06-01 2006-09-26 Netlogic Microsystems, Inc. Match line pre-charging in a content addressable memory having configurable rows
US7050318B1 (en) * 2004-10-01 2006-05-23 Netlogic Microsystems, Inc. Selective match line pre-charging in a CAM device using pre-compare operations
US7145789B2 (en) * 2005-01-05 2006-12-05 Texas Instruments Incorporated Low power low area precharge technique for a content addressable memory
US7167385B2 (en) * 2005-02-11 2007-01-23 International Business Machines Corporation Method and apparatus for controlling the timing of precharge in a content addressable memory system
JP2008034054A (ja) * 2006-07-31 2008-02-14 Kawasaki Microelectronics Kk 連想メモリ装置
US7616468B2 (en) 2006-08-04 2009-11-10 Qualcomm Incorporated Method and apparatus for reducing power consumption in a content addressable memory

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060166939A1 (en) * 2005-01-21 2006-07-27 Chen Chi-Yu R Fertilizer-compatible composition

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Hideyuki Noda et al.,"A Cost-Efficient High-Performance Dynamic TCAM With Pipelined Hierarchical Searching and Shift Redundancy Architecture", IEEE Journal of Solid-State Circuits, Vol. 40, No. 1, Jan*

Also Published As

Publication number Publication date
WO2008019274A3 (en) 2008-04-10
CN101501780B (zh) 2012-11-14
CN101501780A (zh) 2009-08-05
CA2658599A1 (en) 2008-02-14
RU2414014C2 (ru) 2011-03-10
US20100023684A1 (en) 2010-01-28
US20080031033A1 (en) 2008-02-07
JP5507644B2 (ja) 2014-05-28
EP2057634A2 (en) 2009-05-13
WO2008019274A2 (en) 2008-02-14
JP2009545839A (ja) 2009-12-24
MX2009001338A (es) 2009-02-16
JP2013058301A (ja) 2013-03-28
KR20090038484A (ko) 2009-04-20
JP5180209B2 (ja) 2013-04-10
BRPI0714511A2 (pt) 2013-04-30
US7616468B2 (en) 2009-11-10
EP2057634B1 (en) 2014-03-12
US8154900B2 (en) 2012-04-10
RU2009107721A (ru) 2010-09-10

Similar Documents

Publication Publication Date Title
KR101041667B1 (ko) 콘텐츠 어드레스가능한 메모리에서의 전력 소모를 감소시키기 위한 방법 및 장치
US5428565A (en) Single stage sensing apparatus for a content addressable memory
US6768659B2 (en) Circuit and method for reducing power usage in a content addressable memory
EP0905709A2 (en) Single ended match sense amplifier
KR100958222B1 (ko) 가상 접지를 제어하여 camram 뱅크를 재분할하는회로 및 방법
US6054918A (en) Self-timed differential comparator
US6286091B1 (en) Microprocessor using TLB with tag indexes to access tag RAMs
US7586772B2 (en) Method and apparatus for aborting content addressable memory search operations
EP0858077B1 (en) Content addressable memory
US6608771B2 (en) Low-power circuit structures and methods for content addressable memories and random access memories
US6539466B1 (en) System and method for TLB buddy entry self-timing
Heald et al. A 6-ns cycle 256-kb cache memory and memory management unit
Hasan et al. A novel match-line selective charging scheme for high-speed, low-power and noise-tolerant content-addressable memory
US5729190A (en) Dynamic comparator circuit for cache memories
US20040027845A1 (en) Cache memory device including word line driver circuit and method
US6285579B1 (en) System and method for enabling/disabling SRAM banks for memory access
Chang Two-layer hierarchical matching method for energy-efficient CAM design
Chang et al. Improve CAM power efficiency using decoupled match line scheme
Raju et al. A low power content addressable memory with self-control mechanism and segmented matchlines
Iftekhar Ali Development and analysis of energy efficient match-line sensing circuits for high-speed ternary content addressable memory
Zhang et al. Self-timed charge recycling search-line drivers in content-addressable memories
Pavithra et al. Increasing the speed and reducing a sensing delay of content addressable memory

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140529

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160330

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170330

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180329

Year of fee payment: 8