KR100869041B1 - 비휘발성 자기 캐시 메모리 - Google Patents

비휘발성 자기 캐시 메모리 Download PDF

Info

Publication number
KR100869041B1
KR100869041B1 KR1020037010157A KR20037010157A KR100869041B1 KR 100869041 B1 KR100869041 B1 KR 100869041B1 KR 1020037010157 A KR1020037010157 A KR 1020037010157A KR 20037010157 A KR20037010157 A KR 20037010157A KR 100869041 B1 KR100869041 B1 KR 100869041B1
Authority
KR
South Korea
Prior art keywords
tag
array
cache
data
row
Prior art date
Application number
KR1020037010157A
Other languages
English (en)
Other versions
KR20030077602A (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 KR20030077602A publication Critical patent/KR20030077602A/ko
Application granted granted Critical
Publication of KR100869041B1 publication Critical patent/KR100869041B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/14Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using thin-film elements
    • G11C11/15Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using thin-film elements using multiple magnetic layers
    • 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/02Digital 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 magnetic elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0895Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
    • 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
    • G11C15/046Digital 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/22Employing cache memory using specific memory technology
    • G06F2212/222Non-volatile memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

비휘발성의 쌍안정 자기 터널 접합 캐시 메모리(15)는 캐시 태그 어레이(16) 및 캐시 데이터 어레이(18)를 포함한다. 캐시 태그 어레이는 행렬로 배열된 비휘발성 자기 메모리 태그 셀들(17)을 포함한다. 태그 어레이의 각 행은 행내의 각 태그 셀과 연관된 워드 라인 및 디지트 라인을 포함한다. 캐시 데이터 어레이는 행렬로 배열된 비휘발성 자기 메모리 데이터 셀들(19)을 포함한다. 데이터 어레이의 행들은 태그 어레이의 행들과 대응하며, 데이터 어레이의 각 행은 태그 어레이의 각 대응하는 행과 연관된 워드 라인 및 디지트 라인과 자기적으로 연관된다.
Figure R1020037010157
캐시 메모리, 캐시 태그 어레이, 캐시 데이터 어레이

Description

비휘발성 자기 캐시 메모리{Non-volatile magnetic cache memory}
본 발명은 자기 메모리에 관한 것으로, 특히 비휘발성이며 캐시 메모리로서 이용되는 자기 메모리에 관한 것이다.
대다수의 전형적인 컴퓨터 프로그램 등의 분석은 임의의 주어진 기간에 메인 메모리에 대한 참조가 메인 메모리의 소수의 영역들내에 제한되는 경향이 있는 것을 보여준다. 이러한 것은 "참조 지역성(locality of reference)"의 특성으로 공지되어 있다.
일반적으로, 명령들에 대한 메모리 참조들은 극도로 지역화되는 경향이 있는데 반하여, 데이터에 대한 참조들은 지역화되지 않는다. 대부분의 참조들, 명령 또는 데이터가 고속의 소형 메모리내에 주어진다면, 통상의 일반적인 메모리 액세스 시간은 감소될 수 있으며, 따라서 프로그램의 전체 실행 시간을 줄일 수 있다. 그러한 소형의 고속 메모리는 일반적으로 캐쉬 메모리로 공지되어 있다.
캐시 메모리에 내포된 구상은 가장 빈번하게 액세스되는 명령들 및 데이터를 고속 캐시 메모리내에 보유하는 것이다. 결과적으로, 통상의 메모리 액세스 시간은 캐시 메모리의 액세스 시간에 근접하게 될 것이다. 캐시 메모리는 메인 메모리 크기의 극히 일부에 지나지 않지만, 명령들 및/또는 데이터의 참조 특성 지역화로 인하여 상당 부분의 메모리 요청들이 캐시 메모리내에서 발견될 것이다.
컴퓨터의 중앙 처리 장치(CPU)가 메모리를 액세스하려고 할 때, 캐시는 질의를 받게 된다(interrogated). 워드가 캐시 메모리내에서 발견된다면, 캐시 메모리의 고속 메모리부로부터 판독된다. 만일 워드가 캐시 메모리내에서 발견되지 않는다면, 그 워드의 판독을 위해 보다 느린 메인 메모리가 액세스된다. 그 때, 메인 메모리로부터 액세스된 바로 그 워드와 연관된 워드 블록(a block of words)이 메인 메모리로부터 캐시 메모리로 전송된다. 블록 사이즈는 액세스된 바로 그 워드에 인접한 한 워드 또는 몇 개의 워드들이 될 수 있다. 이러한 방식으로, 일부 데이터가 캐시 메모리로 전송되어, 캐시 메모리에 대한 이후의 참조들은 캐시 메모리내에서 요청된 그 워드 또는 워드들을 발견할 수 있다.
CPU 가 캐시 메모리내에서 워드를 발견한 경우, 이를 "히트(hit)" 라고 하며, CPU 가 캐시 메모리내에 있지 않고 메인 메모리내에 존재하는 경우, 이를 "미스(miss)" 라고 한다. "히트율(hit ratio)"은 히트 수를 히트 수와 미스 수를 더한 수로 나눔으로써 계산된다. 0.9 이상의 히트율이 바람직하다.
CPU 의 평균의 메모리 액세스 시간은 캐시 메모리를 사용함으로써 개선될 수 있다. 히트율이 충분히 높다면, 평균 액세스 시간은 캐시 메모리의 액세스 시간에 근접할 것이다. 캐시 메모리의 가장 중요한 특성은 초고속 액세스 시간을 갖는다는 것이다. 따라서, 캐시 메모리에서 워드를 탐색할 때 아주 미소의 시간이 소비되거나 전혀 시간이 소비되지 않아야 한다.
종래 기술에 있어서, SRAM들이 고속이라는 이유로 캐시 메모리로서 이용되었다. 하지만, SRAM들은 휘발성이므로, 컴퓨터가 셧-다운될 때마다 캐시 메모리는 모든 정보를 잃게 된다. 이러한 휘발성 SRAM 캐시 메모리는 "캐시 초기화(Cache Initialization)" 라고 하는 큰 문제를 안고 있다. 일반적으로, 파워-업(power-up)시에 캐시 메모리는 초기화 상태로 강제되어, "참조 지역성" 의 특성에 따른 작업을 개시하도록 캐시 메모리가 유효한 데이터 또는 명령들로 채워질 때까지 캐시 메모리로부터의 미스들(misses)을 강제하는 결과를 갖는다. 이러한 초기화는 매 파워-업 후 비교적 대량의 시간을 요구할 수 있다.
본 발명은 상기한 문제점들의 대부분을 극복하기 위한 비휘발성 자기 캐시 메모리 및 그 구성을 고려한 것이다.
본 발명은 또한 상기한 문제점들의 대부분을 극복하기 위해 새로운 액세스 및 판독(readout) 구조를 갖는 비휘발성 자기 캐시 메모리를 고려한 것이다.
본 발명은 또한 상기한 문제점들의 대부분을 극복하기 위해 탐색 및 판독 모드에서의 부가 속도를 위해 구성된 비휘발성 자기 캐시 메모리를 고려한 것이다.
도1은 MTJ 비휘발성 자기 메모리 셀의 간략화된 단면도.
도2는 본 발명에 따른 비휘발성 자기 캐시 메모리의 블록도.
도3은 도2의 캐시 태그 어레이에서 이용되는, 비휘발성의 쌍안정 자기 터널 접합 메모리 셀의 다양한 입출력 접속들을 도시하는 CAMRAM 셀의 개략도.
도4는 도2의 캐시 태그 어레이에서 이용되는, 비휘발성의 쌍안정 자기 터널 접합 메모리 셀의 다양한 입출력 접속들을 도시하는 데이터 셀의 개략도.
도5는 도4의 쌍안정 자기 터널 접합 메모리 셀의 개략도.
도6은 도2의 매치 레지스터의 간략화된 블록도.
도7은 도6의 LRU 유닛의 간략화된 블록도.
도8은 도2의 캐시 메모리를 내장한 컴퓨터의 간략화된 블록도.
이제 도면을 참조하면, 도1은 본 예의 해당 분야에서 일반적으로 이용되는 자기 터널링 접합(MTJ; magnetic tunneling junction) 셀(10)의 간략한 단면도로서, 이러한 MTJ 셀 형태의 동작을 간략히 기술하도록 도시되었다. MTJ 셀(10)은 한 쌍의 자기 물질 층(11 및 12)을 포함한다. 층(11 및 12)은 그들 사이에 샌드위치된 터널 장벽 물질 층(14)을 갖는다. 당 기술 분야에 공지된 바와 같이, 일반적으로, 층들(11 및 12) 각각은 코발트(Co), 니켈(Ni), 철(Fe) 등과 같은 다수의 자기 물질 층들로 형성된다. 층(14)은 산화 알루미늄, 질화 알루미늄 등과 같은 일부 비도전 물질로 형성된다.
자기 물질 층들 중 하나인, 본 명세서에서의 층11 은 커다란 스위칭 필드를 가지므로, 그 자기 벡터(화살표 16으로 표시되며, 이후에는 벡터 16 이라 칭함)는 인가된 자계가 그 스위칭 필드 보다 작을 때 항상 동일한 방향으로 지정된다(고정된다). 층12 의 자기 벡터(화살표 17로 표시되며, 이후에는 벡터 17 이라 칭함)는 보다 작은 스위칭 필드를 가지며, 층12 의 물리적 사이즈에 의해 제한을 받지만 인가된 자계가 그 스위칭 필드 보다 클 때 두 방향 중 어느 한 방향으로 지정되도록 자유롭다. 셀(10)은 회로에서 층들(11 또는 12) 중 한 층으로부터 다른 층으로 셀(10)을 통해 전기가 수직으로 흐르도록 접속함으로써 이용된다. 셀(10)은 저항으로서 전기적으로 표시될 수 있으며, 저항의 크기는 자기 벡터들(16 및 17)의 방위에 의존한다. 당업자들이 알고 있는 바와 같이, 셀(10)은 자기 벡터들(16 및 17)이 잘못 정렬될(misaligned) 때 (반대 방향으로 지정될 때) 비교적 높은 저항을 가지며, 자기 벡터들(16 및 17)이 정렬될 때 비교적 낮은 저항을 갖는다.
MTJ 셀들의 제조 및 동작에 대한 추가적인 정보는 1998년 3월 31일 특허된, 발명의 명칭이 "다중층 자기 터널링 접합 메모리 셀들"인 특허 번호 5,702,831에서 참조할 수 있으며, 그 일부는 본 명세서에 참조되어 있다.
도2를 참조하면, 본 발명에 따른 비휘발성 자기 캐시 메모리(15)의 블록도가 도시되어 있다. 캐시 메모리(15)는 n 행 및 m 열(여기서, n 및 m 은 어떠한 정수도 될 수 있음)로 배열된 비휘발성 자기 메모리 태그 셀들(17)의 캐시 태그 어레이(16)를 포함한다. 이러한 예에 있어서, n 행은 0 내지 n 으로 설명된다. 각각의 태그 셀(17)은 차동적으로 접속된 자기 터널 접합 쌍을 포함하며, 프로그래밍 및 검출 회로가 터널 접합들을 접속한다. 캐시 메모리(15)는 또한 행 및 열로 배열된 비휘발성 자기 메모리 데이터 셀들의 캐시 데이터 어레이(18)를 포함한다. 캐시 데이터 어레이(18)의 행들은 다음의 설명으로부터 이해할 수 있는 바와 같이, 캐시 태그 어레이(16)의 행들과 대응한다. 종래 기술에 있어서, 선택된 워드의 어드레스는 "태그" 또는 "태그 워드"라고 하며, 내용(content)은 "데이터" 또는 "데이터 워드"라고 한다. 그에 따라, 캐시 메모리(15)는 공통 베이스 메모리내에 어드레스와 데이터 모두를 저장한다. 또한, 이제 보다 상세히 설명될 바와 같이, 선택된 워드에 대한 태그 및 데이터는 공통의 행에 저장된다.
도3을 추가하여 참조하면, 한 태그 셀(17)의 개략적인 도면이 도시되어 있으며, 다양한 I/O 접속들을 도시하고 있다. 각각의 태그 셀(17)은 태그 비트 라인(TBL) 및 역(비) 태그 비트 라인(TBLN), 태그 프로그램 비트 라인(TPBL) 및 역 태그 프로그램 비트 라인(TPBLN), 인에이블 라인(EN), 워드 라인(WL), 디지트 라인(DL), 및 매치 라인(ML)을 포함한다. 양호한 실시예에 있어서, 태그 셀들(17)은, 동일자로 제출되어 공동 계류중인 미국특허출원으로서 발명의 명칭이 "내용 어드레스 가능한 자기 랜덤 액세스 메모리"에 개시된 것과 유사한 차동적으로 접속된 비휘발성의 쌍안정 자기 터널 접합 쌍을 포함하며, 이는 동일 양수인에게 양도된 것이며, 본 명세서에 참조되어 있다.
도4 및 도5를 참조하면, 한 데이터 셀(19)의 개략도와 구성도 각각이 도시되어 있다. 양호한 실시예에 있어서, 각각의 데이터 셀(19)은 비휘발성의 쌍안정 자기 터널 접합 쌍(20 및 21)과 스위칭 트랜지스터 쌍(22 및 23)을 포함한다. 각각의 자기 터널 접합(20 및 21)은 스위칭 트랜지스터들(22 및 23)의 별개의 트랜지스터에 접속되며, 관련 워드 라인(WL)은 활성 스위칭 트랜지스터들(22 및 23)에 접속된다. 디지트 라인(DL) 및 워드 라인(WL) 모두는 각각의 자기 터널 접합(20 및 21)에 자기적으로 결합되어 있다.
여기서, 데이터 셀들(19)의 각 행의 디지트 라인(DL) 및 워드 라인(WL)은 태그 셀들(17)의 대응하는 행과 연관된 동일한 디지트 라인(DL) 및 워드 라인(WL)이 다. 직렬 접속된 자기 터널 접합(20) 및 스위칭 트랜지스터(22)는 공통 또는 그라운드 라인(GL)과 데이터 비트 라인(DBL) 사이에 접속된다. 직렬 접속된 자기 터널 접합(21) 및 스위칭 트랜지스터(23)는 그라운드 라인(GL)과 역 데이터 비트 라인(DBLN) 사이에 접속된다. 그에 따라, 자기 터널 접합들(20 및 21)은 차동적으로 동작하며, 이후 명백하게 설명될 바와 같이, 이들은 차동 신호들에 의해 충전(charging)되거나 로딩(loading)된다.
당업자들은 일반적으로 비트 라인들은 메모리 셀 어레이의 열과 관련되고, 디지트 라인들은 어레이의 행과 연관된다는 것을 알고 있을 것이다. 비트 라인들 및 디지트 라인들은 판독과 프로그래밍 또는 정보를 어레이내에 저장하기 위해 어레이내의 개별 셀들로 어드레싱하는데 이용된다. 당업자들이 알고 있는 바와 같이, 행들과 열들은 용이하게 상호 교환될 수 있으며, 본 명세서에서 그러한 용어는 상호 교환가능한 것으로 간주된다. 또한, 다양한 라인들의 특정 명칭, 예컨대, 비트 라인, 워드 라인, 디지트 라인, 선택 라인 등은 단지 설명을 용이하게하기 위해 이용된 통상적인 명칭들이며, 본 발명을 제한하려고 한 것은 아니다.
다시, 도2를 참조하면, 전류원/싱크 회로(24) 쌍이 캐시 태그 어레이(16)내의 각 TPBL 및 TPBLN 라인의 대향하는 단부들과 캐시 데이터 어레이(18)내의 각 DBL 및 DBLN 라인의 대향하는 단부들에 접속된다. 마스크 레지스터(30)는 입력 신호들을 수신하여 마스킹 신호들을 공급하도록 캐시 태그 어레이(16)에 접속되며, 그에 따라 캐시 태그 어레이(16)내 태그 워드의 사용자 규정 비트들만이 동작의 질의 또는 탐색 모드에 관여한다. 입력 신호들은 또한, 열들에 의해 입력 워드 또는 명령을 캐시 태그 어레이(16)에 저장된 워드들 및 명령들과 비교하는 (질의 또는 탐색하는) 인수 레지스터(argument register)(32)에 공급된다. 태그 레지스터 및 전류 싱크(34)는 행에 의해 캐시 태그 어레이(16)의 행들에 접속된다. 매치 레지스터(36), 행 먹스(row MUX) 회로(37) 및 행 전류원(38)은 행에 의해 캐시 데이터 어레이(18) 및 캐시 태그 어레이(16)의 행들에 접속된다. 또한, 행 디코더(39) 및 제어기(40)는 그 동작을 위해 행 먹스 회로(37)에 접속된다. 클록 발생기(42)는 타이밍 또는 클록 신호들의 세 위상들(PHI0, PHI1, PHI2)을 다양한 회로들에 제공한다. 차동 증폭기들(TQ0 내지 TQn)은 캐시 태그 어레이(16)내 태그 셀들(17)의 각 행으로부터 출력 신호들을 제공한다. 또한, 차동 증폭기들(DQ0 내지 DQn)은 캐시 데이터 어레이(18)내 데이터 셀들(19)의 각 행으로부터 출력 신호들을 제공한다.
캐시 메모리(15)는 세 개의 일반적인 동작 모드, 즉, 질의 (탐색) 및 판독 모드, 랜덤 액세스 판독 모드, 및 랜덤 액세스 프로그램 모드를 갖는다. 세 개의 동작 모드 각각에서의 캐시 메모리(15)의 동작은 하기에 간단히 기술한다.
질의 모드에 있어서, CPU 어드레스 또는 태그는 클록 발생기 위상 PHI1 으로 인수 레지스터(32)에 로딩된다. 동시에, 로딩시 모든 TBL 및 TBLN 라인들은 그 논리 레벨들로 구동된다. 동시에, 모든 매치 라인들 ML0 내지 MLn 은 그라운드로 미리 방전된다. PHI1 동안, 마스크 레지스터(30)는 캐시 태그 어레이(16)내 모든 태그 셀들(17)을 마스크하여, 모든 태그 셀들을 효과적으로 디스에이블함으로써 매치 라인들에 대한 충돌은 없게 된다.
일단 PHI1 이 로우(low)로 진행하면, 모든 태그 셀들(17)은 인에이블된다. 동시에, PHI2 는 PHI1 의 하강 에지(falling edge)에서 하이(high)로 진행한다. PHI2 의 상승 에지(rising edge)에서, 마스킹 데이터(YK0 내지 YKn)는 마스크 레지스터(30)로 로딩되고, 마스크 레지스터(30)는 인에이블(EN) 라인들의 구동을 개시하며, 탐색 및 매치 검출이 개시된다. 마스킹 데이터(YK0 내지 YKn)에 따라서, 캐시 태그 어레이(16)내 태그 셀들(17)의 일부는 디스에이블된다(즉, 마스킹 특성). 매치가 있다면, 매칭 행에 대한 매치 라인들 ML0 내지 MLn 은 그라운드에서 유지되고, 미스매칭 행에 대한 매치 라인들은 논리 하이로 상승된다. 디스에이블되지 않은 마스크되지 않은 셀들만이 매치 라인을 하이로 상승시키거나 이를 그라운드 전위로 남겨둠으로써 매치 검출 처리에 관여한다.
매치 검출 처리가 완료한 후 탐색 모드에 있어서, 태그 어레이(16)에서 검출된 태그, 즉 CPU 로부터의 태그 또는 어드레스와 매칭된 태그에 대응하는 데이터 어레이(18)내의 데이터를 판독하기 위한 판독 사이클이 개시된다. 일단 판독 사이클이 개시하면, 신호 R 은 하이 상태로 진행하며, PHI0 클록 신호는 R 의 상승 에지에서 발생된다. PHI0 동안, TBL 및 TBLN 라인들은 PC 블록(42)을 통해 Vdd 로 미리 충전되고(도2 참조), 모든 태그 셀들(17)은 디스에이블된다. 즉, 캐시 태그 어레이(16)는 디스에이블되고 캐시 태그 어레이(16)의 전류 소비는 제로가 된다. 캐시 태그 어레이(16)가 디스에이블되고 매치 라인들이 캐시 태그 어레이(16)에 의해 구동되지 않는다고 하더라도, 매치 라인 데이터는 래치된다. 또한, PHI0 동안, 차동 증폭기들 DQ0 내지 DQn 은 DBL 및 DBLN 라인들을 미리 바이어스하여, 캐시 데이터 어레이(18)내의 비트들을 판독하기 위해 필요한 초기화를 이룬다. 캐시 데이터 어레이(18)내의 데이터 셀들(19)은 고속의 차동 동작을 위한 트윈 셀들(twin cells)이다. 이러한 것이 캐시 메모리이므로, 질의 후 데이터의 고속 판독이 절대적으로 필요하다. 즉, 초고속 데이터 메모리가 요구된다. 일반적으로, 캐시 데이터 어레이(18)는 어떠한 트윈 셀 구조에도 기초할 수 있지만, 개시된 트윈 셀이 바람직하다.
탐색 모드 동안 판독 처리는 다음과 같다. 탐색 모드에서 S=R=1 이고 W=WRPLC=0. 매치 레지스터(36)의 한 스테이지의 출력이 1 로 유지된다면, RFLG 도 역시 1 로 유지되고, 이러한 것은 매치가 있다는 것을 의미한다. 매치 레지스터(36)의 모든 출력들이 제로가 된다면, 매치가 없다는 것을 의미한다. 탐색 모드 동안, 행 디코드 제어 논리는 행 디코더(39)를 디스에이블하여, 행 먹스(37)는 매치 레지스터(36)의 MB0 내지 MBn 출력들에 의해 완전히 제어된다. 일단 매치가 검출되고, S=R=1 이고 W=WRPLC=0 이면, 판독 처리가 개시되고 한 행이 활성화되며, 전류원(38)은 대응하는 워드 라인/디지트 라인을 하이 상태로 구동한다. 또한, 판독 처리 진입시, 캐시 태그 어레이(16) 및 캐시 데이터 어레이(18)의 모든 그라운드 라인들 GL0 내지 GLn 은 태그 레지스터 및 전류 싱크(34)내의 그라운드 스위치들을 통해 그라운드에 접속된다. 이어서, 차동 증폭기들 DQ0 내지 DQn 은 워드 라인상의 데이터를 이용하고 신호를 출력한다. 이러한 시간 동안, 차동 증폭기들 TQ0 내지 TQn 은 디스에이블된다.
인수 레지스터(32)내의 입력 CPU 어드레스와 캐시 태그 어레이(16)내에 저장된 데이터 사이에 매치가 발견되지 않는다면, 매치 레지스터(36)의 모든 스테이지의 출력들은 제로로 된다. 매치 레지스터(36)의 스테이지의 모든 출력들은 매치 레지스터(36)에서 OR 연산되므로, 이들이 모두 로우 상태라면, 매치 레지스터(36)는 매치가 없다는 것을 나타내는 로우 RFLG 신호를 발생시킨다. 로우 RFLG 신호는 CPU 로 전송되고, CPU는 로우 RFLG 신호 감지시 1 과 동일한 WRPLC 를 설정하고, 메인 메모리로부터 필요한 데이터를 판독하며, 그 동일한 데이터를 캐시 메모리(15)로 다시 전송하여 캐시 메모리(15)내의 일부 기존 데이터를 교체한다. 이러한 시간 동안, 행 디코더(39)는 여전히 디스에이블된 상태이며, 행 먹스(37)의 제어가 매치 레지스터(36)내 LRU 유닛(이후 설명)의 RPLC0 내지 RPLCn 출력들에 의해 공급된다.
랜덤 액세스 판독 모드 동작에 있어서, 전체 캐시 메모리(15)는 판독 모드 상태가 되어, R=1 및 W=WRPLC=S=0 를 설정함으로써 한번의 액세스로 판독된다. 이러한 모드에서, 행 먹스(37)의 제어는 행 디코더(39)에 의해 공급되며, 그라운드 라인들 GL0 내지 GLn 은 태그 레지스터 및 전류 싱크(34)내 그라운드 스위치들을 통해 그라운드에 접속된다. 판독 모드에서, 모든 태그 셀들(17)은 인에이블된다(마스킹되지 않는다). 이러한 것은 마스크 레지스터(30)를 통해 달성된다. 또한, 마스크 레지스터(30)는 CPU로부터 새로운 데이터(YK0 내지 YKn)를 수용하지 않는다. 모든 마스크 레지스터 스테이지들의 출력은 초기에 PHIO 동안 로우 상태로 유지되어 래치된다. 또한, PHIO 동안 TBL 및 TBLN 라인들은 Vdd 로 미리 충전된다. 일단 PHIO 가 로우 상태가 되면, 모든 태그 셀들(17)은 인에이블되고, 활성 워드 라인을 따른 태그 셀들(17)의 재생성 작용이 TBL을 그라운드로 되게하거나 이를 Vdd 로 두게 되며, TBLN 에서는 그 반대의 작용이 발생된다. TBL 및 TBLN 데이터는 차동 증폭기들 TQ0 내지 TQn 에 의해 차동적으로 감지되며, 출력 신호들은 그 출력 단자들에서 발생된다.
동시에, 동일한 활성 워드 라인이 캐시 데이터 어레이(18)내의 데이터 셀들(19)의 행을 활성화한다. 데이터 라인들 DBL 및 DBLN 상의 차동 데이터는 차동 증폭기들 DQ0 내지 DQn 에 의해 감지된다. 차동 증폭기들 DQ0 내지 DQn 의 감지 회로는 PHIO 동안 디스에이블되며, 그 때 시간 프리-바이어싱이 PHIO 가 다시 로우 상태로 되는 것을 감지하기 위한 준비로서 발생된다. 초기에, 차동 증폭기들 DQ0 내지 DQn 는 신호 R=1을 통해 인에이블된다. 또한, 이런한 모드 동안, 태그 레지스터 및 전류 싱크(34)내 전류 싱크를 통한 그라운드로의 워드 라인 전류 경로는 단절되고, 인수 레지스터(32) 출력들은 3-상태가 된다(즉, 출력들 A0 내지 An 은 효과적으로 단절된다).
랜덤 액세스 프로그램 동작 모드에 있어서, 전체 캐시 메모리(15)는 원하는 랜덤 방식으로 프로그램될 수 있다. 워드 라인들의 제어는 행 디코더(39)로 주어지며, 워드 라인은 행 먹스(37)를 통해 선택된다. 전류는 행 전류원(38)으로부터 행 먹스(37)를 통해 선택된 디지트 라인으로 진행하고, 태그 레지스터 및 전류 싱크(34)내 전류 싱크를 통해 그라운드로 진행한다. 모든 태그 셀들(17)은 마스크 레지스터(30)를 통해 디스에이블되고, 인수 레지스터(32)의 출력들은 3-상태가 된다. 양방향 전류원들(24)은, 캐시 태그 어레이(16)와 캐시 데이터 어레이(18)내 입력 데이터의 극성에 따라, 캐시 태그 어레이(16)내 TPBL 및 TPBLN 라인들과 캐시 데이터 어레이(18)내 DBL 및 DBLN 라인들을 통해 전류를 보내고 받는다(source and sink). 그라운드 스위치들은 턴 오프되어 모든 그라운드 라인들 (GL0 내지 GLn )전류들이 프로그램 모드 동안 컷 오프된다. 또한, 차동 증폭기들 TQ0 내지 TQn 및 차동 증폭기들 DQ0 내지 DQn 이 디스에이블된다.
이제 도6을 참조하면, 매치 레지스터(36)(도2 참조)의 간략한 블록도가 도시된다. 매치 레지스터(36)는 n 스테이지 또는 슬라이스를 포함하며, 이들 각각은 캐시 태그 어레이(16)내 태그 셀들(17)의 행 0 내지 n 으로부터 매치 신호 ML0 내지 MLn을 각각 수신하도록 접속된다. 타이밍 신호 PHI1 은 탐색 모드 동안 n 스테이지 각각에 제 1 인에이블 신호 EN1을 제공한다. 타이밍 신호 PHI1 은 매치 라인들 ML0 내지 MLn을 그라운드 레벨로 초기화하도록 클록 발생기(42)를 통해 S 의 상승 에지에 발생된다. 제 2 논리 회로(47)는 탐색 신호 S 또는 기록 교체 신호 WRPLC를 수신하여 탐색 또는 교체 모드 동안 n 스테이지 각각에 제 2 인에이블 신호 EN2 를 제공하도록 접속된다. n 스테이지 각각은 매치 신호 MB0 내지 MBn을 행 먹스(37)에 각각 공급한다. 또한, n 스테이지 각각은 매치 신호 MBP0 내지 MBPn 각각을 OR 회로(48) 및 최근에 가장 적게 이용된 (LRU) 유닛(50)에 공급한다. OR 회로(48)는 교체 플래그 (RFLG) 신호를 CPU 에 공급하고, LRU 유닛(50)은 교체 신호들 RPLC0 내지 RPLCn을 행 먹스(37)에 공급한다.
캐시 태그 어레이(16)에서의 탐색 모드 동안, 초기에 모든 매치 라인들 ML0 내지 MLn 은 그라운드 전위에 있다. 이러한 것은 매치 레지스터(36)로부터의 모든 MB0 내지 MBn 출력들이 논리 1 또는 하이 상태가 되게 하며, 행 먹스(37)내 모든 워드 라인들/디지트 라인들 DL0 내지 DLn 을 선택하게 한다. 모든 디지트 라인들 DL0 내지 DLn 이 선택될 때, 모든 디지트 라인들 DL0 내지 DLn 은 PHI1 에 의해 그라운드 전위로 초기화된다.
매치 검출이 실행되어, 일단 매치 검출이 완료되면, 다음의 처리가 실행된다. 만일 매치가 있다면, 논리 제로(또는 그라운드)로 유지될 대응하는 매치를 갖는 매치 라인을 제외한 모든 매치 라인들 ML0 내지 MLn 은 논리 1(또는 하이 상태)로 된다. 결과적으로, 하이 상태로 유지될 매치에 대응하는 한 출력을 제외한 매치 레지스터(36)로부터의 모든 MB0 내지 MBn 출력들이 논리 제로(또는 그라운드)가 된다. 따라서, 선택으로 유지된 라인을 제외한 모든 디지트 라인들 DL0 내지 DLn 은 "비선택" 상태로 된다. 이러한 점에서, 매치가 있으므로, 판독 명령이 발행되고, 비휘발성 자기 캐시 메모리(15)는 판독 처리로 진입되며, 그 시점에서 행 전류원/구동기(38)는 턴 온되고, 선택된 워드 라인을 하이로 상승하며, 이후 판독 처리가 상술한 바와 같이 지속된다.
매치가 없다면, 모든 매치 라인들 ML0 내지 MLn 은 예외 없이 1(논리 하이)로 되고, MB0 내지 MBn 출력들은 논리 로우가 되어, 행 먹스(37)의 제어를 LRU 유닛(50)에 제공한다. 이러한 상태에서, LRU 유닛(50)은 RPLC0 내지 RPLCn 신호를 통해 행 먹스(37)를 제어한다. 일단 모든 MB0 내지 MBn 출력들이 로우 상태가 되면, 모든 디지트 라인들 DL0 내지 DLn 은, LRU 유닛(50)이 RPLC0 내지 RPLCn 중 하나를 논리 하이로 구동할 때까지 비선택된다. RPLC0 내지 RPLCn 중 하나가 논리 하이로 되면, 대응하는 워드 라인/디지트 라인이 선택되고, CPU 는 비휘발성 자기 캐시 메모리(15)를 프로그램 모드(W=1)로 두어, 행 전류원/구동기(38)를 턴 온시키고, 디지트 라인 프로그램 전류를 선택된 워드 라인/디지트 라인으로 보낸다. 그에 따라, 캐시 태그 어레이(16)의 캐시 태그 어레이 셀들(17)의 선택된 행이 프로그램된다.
매치가 있는 경우라면, 출력들 MBP0 내지 MBPn 중 하나는 하이 상태가 되며, 결과적으로 RFLG=1 이 되어, 매치가 발견됐다는 것을 CPU에 알린다. 매치가 없다면, 출력들 MBP0 내지 MBPn 모두는 로우 상태가 되고 RFLG=0 이 되어, 매치가 발견되지 않았다는 것을 CPU에 알린다. 매치가 발견되지 않았다면, 논리 하이 기록 교체 신호 WRPLC 를 다시 비휘발성 자기 캐시 메모리(15)로 전송하여 다시 기록되게 한다.
도7을 참조하면, LRU 유닛(50)은 0 n비트 카운터 내지 n n비트 카운터로 표시된 n 개의 n비트 카운터를 포함하며, 각각의 카운터는 매치 입력들 MBP0 내지 MBPn 각각에 대해 0에서 2n-1까지 카운트한다. 각각의 카운터는, 매 사이클에서 매치 입력들 MBP0 내지 MBPn 중 귀착된 입력이 1에서 0으로 될 때 하나의 십진 단위로 증분된다. 2n-1에 도달한 제 1 카운터는 대응하는 교체 신호 RPLC0 내지 RPLCn 을 선택된 디지트 라인 DL0 내지 DLn 을 활성화하는 행 먹스(37)로 출력하여, 전류가 행 전류원(38)으로부터 태그 셀들(17)과 데이터 셀들(19)의 선택된 행을 통해 태그 레지스터 및 전류 싱크(34)내 전류 싱크로 흐를 수 있게 한다. 둘 이상의 카운터가 동시에 2n-1에 도달하게 되면, 미리 선택된 우선 순위에 따라 최상위 비트(MSB) 또는 최하위 비트(LSB)에 가장 인접한 제 1 카운터가 그 연관된 DL 및 WL을 활성화하도록 허용된다. 일단 어떠한 n비트 카운터라도 최종 카운트에 도달하면, n비트 카운터가 제로로 재설정되는 다음의 탐색 사이클에서 RPLC0 내지 RPLCn 중 하나가 1이 된다. 랜덤 판독 또는 프로그램 동작의 개시 또는 매치의 결과로서 탐색 모드 동안 판독 신호가 입력되면, 최종 카운트에 도달한 n비트 카운터가 다시 한번 재설정된다. 이러한 동작에 있어서, 태그 레지스터(34)는 어떠한 행(워드)도 비활성화되도록 하여 선택된 행 또는 워드의 교체를 방지하도록 CPU 에 의해 액세스될 수 있다.
도8을 참조하면, CPU(51)와 메인 메모리(52)에 캐시 메모리(15)가 접속되는 간략한 블록도가 도시된다. 앞서 간략히 설명된 바와 같이, CPU(51)가 메모리를 액세스하려고 할 때, 먼저 캐시 메모리(15)에 질의된다. 캐시 메모리(15)에 내포된 구상은 가장 빈번하게 액세스되는 명령들 및 데이터를 고속 캐시 메모리내에 보유하는 것이다. 캐시 메모리의 가장 중요한 특성은 초고속 액세스 시간을 갖는다는 것인데, 이는 새로운 CAMRAM 셀들이 이용되기 때문이다(상기한, 공동 계류중인 미국특허출원으로서 발명의 명칭이 "내용 어드레스 가능한 자기 랜덤 액세스 메모리" 참조). 따라서, 캐시 메모리(15)에서 워드를 탐색할 때 아주 미소의 시간이 소비되거나 전혀 시간이 소비되지 않는다.
만일 워드가 캐시 메모리(15)내에서 발견된다면, 캐시 메모리(15)의 고속 메모리부로부터 판독된다. 만일 워드가 캐시 메모리(15)내에서 발견되지 않는다면, 그 워드를 판독하기 위해 보다 느린 메인 메모리(52)가 액세스된다. 그 때, 메인 메모리로부터 액세스된 바로 그 워드와 연관된 워드 블록이 메인 메모리(52)로부터 캐시 메모리(15)로 전송된다. 블록 사이즈는 액세스된 바로 그 워드에 인접한 한 워드 또는 몇 개의 워드들이 될 수 있다. 이러한 방식으로, 일부 데이터가 캐시 메모리(15)로 전송되어, 캐시 메모리(15)에 대한 이후의 참조들은 캐시 메모리(15)내에서 요청된 그 워드 또는 워드들을 발견할 수 있다. CPU(51)의 평균의 메모리 액세스 시간은 캐시 메모리(15)를 사용함으로써 개선될 수 있다. CPU(51)의 히트 시간이 충분히 높다면, 평균 액세스 시간은 캐시 메모리(15)의 액세스 시간에 근접할 것이다.
이와 같이, 비휘발성 쌍안정 자기 터널 접합 캐시 메모리가 개시되었다. 비휘발성 캐시 메모리는 저장된 정보를 특정 응용 또는 프로그램에 맞추도록 캐시 메모리의 내용을 능동적으로 변경하는데 이용될 수 있다. 예컨대, 통상의 CPU 코드가 대량의 명령들로 이루어져 있다면, 통계적으로 가장 빈번하게 이용되는 명령들이 추출되어 캐시 메모리에 프로그램될 수 있다. 또한, 비휘발성 캐시 메모리는 한번에 미리로딩(preloaded)되어, 그로부터 시스템 또는 칩이 파워 오프될 때에도 저장된 데이터가 보유되며, 비휘발성 캐시 메모리는 호출대기시간(latency)으로부터 캐시 초기화를 요구하지 않고서 고속 동작을 가능하게 한다. 또한, 비휘발성 캐시 메모리는 대량의 전류 소비를 덜어주기 위해 비휘발성 캐시 메모리가 완전하게 파워 다운될 수 있는 비활성 동안 메모리의 손실 또는 초기화의 필요성 없이 파워 다운될 수 있다.
본 발명의 새로운 캐시 메모리는, 물리적 어드레스 대 메모리 데이터의 매핑 또는 메인 메모리 대 고속 캐시의 데이터 매핑 중 가장 빠르고 융통성 있는 방식인 어소시에이티브 매핑(associative mapping)을 이용할 수 있다. 어소시에이티브 매핑은 또한 캐시 메모리내 어떠한 위치에도 메인 메모리로부터의 워드를 저장할 수 있게 한다. 본 발명의 새로운 캐시 메모리는, 태그 또는 태그 워드로서 공지된 어드레스와 데이터 또는 데이터 워드로서 공지된 메모리 워드의 내용 모두를 저장한다. 또한, 태그 및 데이터는 공통 디지트 라인 및 공통 워드 라인을 이용하는 메모리 셀들의 공통 행에 저장되며, 이는 전체 캐시 메모리와 그 동작을 매우 간략하게 한다. 캐시 메모리는 선택된 태그와 캐시 태그 어레이의 행들내에 저장된 태그들을 비교함으로써 탐색되며, 매칭하는 저장된 태그의 캐시 태그 어레이의 행내와 데이터 어레이내의 대응하는 행내의 워드 라인이 데이터 어레이내의 대응하는 행에 저장된 데이터를 자동적으로 판독하도록 활성화된다. 이러한 처리는 매우 간략하게 되며, 탐색 및 판독 처리를 고속화한다.
본 발명의 특정 실시예들이 설명되었지만, 당업자는 추가의 다양한 변경과 개선을 수행할 수 있을 것이다. 따라서, 본 발명은 설명된 특정의 형태에 제한되지 않으며, 본 발명의 정신과 범위를 벗어나지 않고서 모든 변경들을 포괄할 수 있는 특허청구범위 첨부하였다.

Claims (15)

  1. 비휘발성의 쌍안정 자기 터널 접합 캐시 메모리(non-volatile magnetic cache memory)에 있어서:
    행렬로 배열된 비휘발성 자기 메모리 태그 셀들의 캐시 태그 어레이로서, 상기 태그 어레이의 각 행(row)은 행내의 각 태그 셀과 연관된 워드 라인 및 디지트 라인을 포함하는, 상기 캐시 태그 어레이; 및
    행렬로 배열된 비휘발성 자기 메모리 데이터 셀들의 캐시 데이터 어레이로서, 상기 데이터 어레이의 행들은 상기 태그 어레이의 행들과 대응하며, 상기 데이터 어레이의 각 행은 상기 태그 어레이의 각 대응하는 행과 연관된 상기 워드 라인 및 상기 디지트 라인과 자기적으로(magnetically) 연관되는, 상기 캐시 데이터 어레이를 포함하는, 비휘발성의 쌍안정 자기 터널 접합 캐시 메모리.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 비휘발성의 쌍안정 자기 터널 접합 캐시 메모리에 있어서:
    행렬로 배열된 비휘발성 자기 메모리 태그 셀들의 캐시 태그 어레이로서, 상기 태그 어레이의 각 행은 상기 행내의 각 태그 셀과 연관된 워드 라인 및 디지트 라인을 포함하며, 각 태그 셀은 차동적으로 접속된 자기 터널 접합 쌍과, 상기 차동적으로 접속된 쌍에 접속되어 차동 비트 라인들, 차동 프로그램 비트 라인들, 인에이블 라인, 상기 워드 라인 및 상기 디지트 라인을 포함하는 프로그래밍 및 검출 회로를 포함하는, 상기 캐시 태그 어레이; 및
    행렬로 배열된 비휘발성 자기 메모리 데이터 셀들의 캐시 데이터 어레이로서, 상기 데이터 어레이의 각 열은 상기 열내의 각 데이터 셀과 연관된 차동 데이터 비트 라인의 쌍을 포함하고, 상기 데이터 어레이의 각 행은 상기 태그 셀 어레이의 태그 셀들의 각 행과 연관된 상기 워드 라인 및 상기 디지트 라인과 연관되며, 각 데이터 셀은 고유의 행 및 고유의 열의 접합과 인접하게 위치되어 상기 고유의 열과 연관된 상기 차동 데이터 비트 라인들에 차동적으로 접속되는 자기 터널 접합의 차동 쌍을 포함하고, 상기 자기 터널 접합의 차동 쌍의 각 터널 접합은 상기 고유의 행과 연관된 상기 워드 라인 및 상기 디지트 라인에 자기적으로 인접하게 위치되는, 상기 캐시 데이터 어레이를 포함하는, 비휘발성의 쌍안정 자기 터널 접합 캐시 메모리.
  12. 비휘발성의 쌍안정 자기 터널 접합 캐시 메모리에 있어서:
    행렬로 배열된 비휘발성 자기 메모리 태그 셀들의 캐시 태그 어레이로서, 각 태그 셀은 차동적으로 접속된 자기 터널 접합 쌍을 포함하며, 상기 태그 어레이의 각 행은 상기 행내의 각 태그 셀과 연관된 워드 라인 및 디지트 라인을 포함하며, 상기 캐시 태그 어레이의 각 열은 태그 비트 라인의 차동 쌍과 상기 열내의 각 태그 셀에 결합된 태그 프로그래밍 비트 라인들의 차동 쌍을 포함하는, 상기 캐시 태그 어레이; 및
    행렬로 배열된 비휘발성 자기 메모리 데이터 셀들의 캐시 데이터 어레이로서, 각 데이터 셀은 자기 터널 접합들의 차동 쌍을 포함하고, 상기 캐시 데이터 어레이의 행들은 상기 캐시 태그 어레이의 행들과 대응하며, 상기 캐시 데이터 어레이의 각 행은 상기 캐시 태그 어레이의 각 대응하는 행과 연관된 상기 워드 라인 및 상기 디지트 라인과 자기적으로 연관되며, 상기 캐시 데이터 어레이의 각 열은 상기 열내의 각 데이터 셀과 결합된 데이터 비트 라인들의 차동 쌍을 포함하는, 상기 캐시 데이터 어레이를 포함하는, 비휘발성의 쌍안정 자기 터널 접합 캐시 메모리.
  13. 비휘발성의 쌍안정 자기 터널 접합 캐시 메모리에 있어서:
    행렬로 배열된 태그 셀들의 캐시 태그 어레이로서, 상기 태그 어레이의 각 행은 행내의 각 태그 셀과 연관된 워드 라인 및 디지트 라인을 포함하는, 상기 캐시 태그 어레이; 및
    행렬로 배열된 데이터 셀들의 캐시 데이터 어레이로서, 상기 데이터 어레이의 행들은 상기 태그 어레이의 행들과 대응하며, 상기 데이터 어레이의 각 행은 상기 태그 어레이의 각 대응하는 행과 연관된 워드 라인 및 디지트 라인과 연관되는, 상기 캐시 데이터 어레이를 포함하는, 비휘발성의 쌍안정 자기 터널 접합 캐시 메모리.
  14. 비휘발성의 쌍안정 자기 터널 접합 캐시 메모리를 탐색 및 판독하는 방법에 있어서:
    행렬로 배열된 태그 셀들의 캐시 태그 어레이로서, 상기 태그 어레이의 각 행은 상기 행내의 각 태그 셀과 연관된 워드 라인 및 디지트 라인을 포함하는, 상기 캐시 태그 어레이와, 행렬로 배열된 데이터 셀들의 캐시 데이터 어레이로서, 상기 데이터 어레이의 행들은 상기 태그 어레이의 행들과 대응하며, 상기 데이터 어레이의 각 행은 상기 태그 어레이의 각 대응하는 행과 연관된 상기 워드 라인 및 상기 디지트 라인과 연관되는, 상기 캐시 데이터 어레이를 제공하는 단계;
    상기 캐시 태그 어레이의 행들에 태그들을 저장하고, 상기 데이터 어레이의 대응하는 행들에 대응하는 데이터를 저장하는 단계;
    선택된 태그를 상기 캐시 태그 어레이의 행들내에 저장된 태그들과 비교함으로써 상기 캐시 메모리를 탐색하는 단계; 및
    상기 데이터 어레이내의 대응하는 행에 저장된 데이터를 자동적으로 판독하도록, 상기 선택된 태그와 매칭하는 태그를 갖는 상기 캐시 태그 어레이의 행과 상기 데이터 어레이의 대응하는 행내의 상기 워드 라인을 활성화하는 단계를 포함하는, 비휘발성의 쌍안정 자기 터널 접합 캐시 메모리의 탐색 및 판독 방법.
  15. 비휘발성의 쌍안정 자기 터널 접합 캐시 메모리내에 데이터를 프로그래밍하는 방법에 있어서:
    행렬로 배열된 태그 셀들의 캐시 태그 어레이로서, 상기 태그 어레이의 각 행은 상기 행내의 각 태그 셀과 연관된 워드 라인 및 디지트 라인을 포함하는, 상기 캐시 태그 어레이와, 행렬로 배열된 데이터 셀들의 캐시 데이터 어레이로서, 상기 데이터 어레이의 행들은 상기 태그 어레이의 행들과 대응하며, 상기 데이터 어레이의 각 행은 상기 태그 어레이의 각 대응하는 행과 연관된 상기 워드 라인 및 상기 디지트 라인과 연관되는, 상기 캐시 데이터 어레이를 제공하는 단계;
    상기 캐시 태그 어레이의 행들에 태그들을 저장하고, 상기 데이터 어레이의 대응하는 행들에 대응하는 데이터를 저장하는 단계;
    선택된 태그들을 상기 캐시 태그 어레이의 행들내에 저장된 태그들과 비교함으로써 상기 캐시 메모리를 탐색하는 단계;
    매치된 저장된 태그들 및 매치되지 않은 저장된 태그들을 감지하는 단계;
    상기 태그 어레이의 각 행에 저장된 태그가 매칭되지 않는 횟수를 카운트하고, 매칭되지 않는 횟수가 가장 많은 저장된 태그를 갖는 상기 캐시 태그 어레이의 행을 선택하는 단계; 및
    상기 캐시 태그 어레이의 상기 선택된 행에 새로운 태그를 저장하고, 대응하는 데이터를 상기 데이터 어레이의 대응하는 행에 저장하는 단계를 포함하는, 비휘발성의 쌍안정 자기 터널 접합 캐시 메모리의 프로그래밍 방법.
KR1020037010157A 2001-01-31 2002-01-11 비휘발성 자기 캐시 메모리 KR100869041B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/774,983 US6452823B1 (en) 2001-01-31 2001-01-31 Non-volatile magnetic cache memory and method of use
US09/774,983 2001-01-31
PCT/US2002/000791 WO2002061756A1 (en) 2001-01-31 2002-01-11 Non-volatile magnetic cache memory

Publications (2)

Publication Number Publication Date
KR20030077602A KR20030077602A (ko) 2003-10-01
KR100869041B1 true KR100869041B1 (ko) 2008-11-17

Family

ID=25102939

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037010157A KR100869041B1 (ko) 2001-01-31 2002-01-11 비휘발성 자기 캐시 메모리

Country Status (6)

Country Link
US (1) US6452823B1 (ko)
JP (1) JP4334871B2 (ko)
KR (1) KR100869041B1 (ko)
CN (1) CN100378685C (ko)
TW (1) TW546658B (ko)
WO (1) WO2002061756A1 (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7330954B2 (en) * 2002-04-18 2008-02-12 Intel Corporation Storing information in one of at least two storage devices based on a storage parameter and an attribute of the storage devices
KR100522431B1 (ko) * 2003-04-30 2005-10-20 주식회사 하이닉스반도체 리프레쉬 동작이 향상된 고속 데이터 억세스를 위한반도체 메모리 장치
KR100543932B1 (ko) * 2003-04-30 2006-01-23 주식회사 하이닉스반도체 초기화 동작시간이 감소된 태그블럭을 구비하는 반도체 메모리 장치 및 그의 구동방법
US6977838B1 (en) * 2003-08-11 2005-12-20 Applied Spintronics Technology, Inc. Method and system for providing a programmable current source for a magnetic memory
US7127571B2 (en) * 2003-12-30 2006-10-24 Intel Corporation Method and system to adjust non-volatile cache associativity
US20050177679A1 (en) * 2004-02-06 2005-08-11 Alva Mauricio H. Semiconductor memory device
US7050316B1 (en) * 2004-03-09 2006-05-23 Silicon Storage Technology, Inc. Differential non-volatile content addressable memory cell and array using phase changing resistor storage elements
US7719899B2 (en) 2007-02-13 2010-05-18 Micron Technology, Inc. Circuits, systems and methods for driving high and low voltages on bit lines in non-volatile memory
US8627897B2 (en) 2008-09-03 2014-01-14 Black & Decker Inc. Tiller housing
US7963344B2 (en) 2008-09-03 2011-06-21 Black & Decker Inc. Tiller with removable battery
US8650355B2 (en) * 2008-10-15 2014-02-11 Seagate Technology Llc Non-volatile resistive sense memory on-chip cache
US8489801B2 (en) * 2009-03-04 2013-07-16 Henry F. Huang Non-volatile memory with hybrid index tag array
US8363460B2 (en) * 2010-04-07 2013-01-29 Avalanche Technology, Inc. Method and apparatus for programming a magnetic tunnel junction (MTJ)
US8694737B2 (en) * 2010-06-09 2014-04-08 Micron Technology, Inc. Persistent memory for processor main memory
US8613074B2 (en) 2010-09-30 2013-12-17 Micron Technology, Inc. Security protection for memory content of processor main memory
US9196334B2 (en) 2012-04-19 2015-11-24 Qualcomm Incorporated Hierarchical memory magnetoresistive random-access memory (MRAM) architecture
US9368232B2 (en) 2013-03-07 2016-06-14 Qualcomm Incorporated Magnetic automatic test equipment (ATE) memory tester device and method employing temperature control
US9529727B2 (en) * 2014-05-27 2016-12-27 Qualcomm Incorporated Reconfigurable fetch pipeline
US9275714B1 (en) * 2014-09-26 2016-03-01 Qualcomm Incorporated Read operation of MRAM using a dummy word line

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5943284A (en) * 1995-08-31 1999-08-24 Hitachi, Ltd. Semiconductor memory device
US6145055A (en) * 1997-05-27 2000-11-07 Kabushiki Kaisha Toshiba Cache memory having flags for inhibiting rewrite of replacement algorithm area corresponding to fault cell and information processing system having such a cache memory

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3065736B2 (ja) 1991-10-01 2000-07-17 松下電器産業株式会社 半導体記憶装置
US6169687B1 (en) 1995-04-21 2001-01-02 Mark B. Johnson High density and speed magneto-electronic memory for use in computing system
US5905996A (en) 1996-07-29 1999-05-18 Micron Technology, Inc. Combined cache tag and data memory architecture
JP2001184870A (ja) * 1999-12-27 2001-07-06 Mitsubishi Electric Corp 連想メモリ装置およびそれを用いた可変長符号復号装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5943284A (en) * 1995-08-31 1999-08-24 Hitachi, Ltd. Semiconductor memory device
US6145055A (en) * 1997-05-27 2000-11-07 Kabushiki Kaisha Toshiba Cache memory having flags for inhibiting rewrite of replacement algorithm area corresponding to fault cell and information processing system having such a cache memory

Also Published As

Publication number Publication date
WO2002061756A1 (en) 2002-08-08
CN1489768A (zh) 2004-04-14
TW546658B (en) 2003-08-11
KR20030077602A (ko) 2003-10-01
CN100378685C (zh) 2008-04-02
JP2004521434A (ja) 2004-07-15
US6452823B1 (en) 2002-09-17
JP4334871B2 (ja) 2009-09-30

Similar Documents

Publication Publication Date Title
KR100869041B1 (ko) 비휘발성 자기 캐시 메모리
US6304477B1 (en) Content addressable magnetic random access memory
US6584003B1 (en) Low power content addressable memory architecture
US6081441A (en) Content-addressable memory
US7170776B2 (en) Non-volatile memory device conducting comparison operation
KR100373849B1 (ko) 어소시어티브 캐시 메모리
US6717876B2 (en) Matchline sensing for content addressable memories
US5267210A (en) SRAM with flash clear for selectable I/OS
US8724403B2 (en) Cache system and information-processing device
EP0936625A2 (en) Content addressable memory (CAM)
US7295487B2 (en) Storage circuit and method therefor
US7216212B2 (en) Semiconductor memory with self-refresh capability
EP1461811B1 (en) Low power content addressable memory architecture
US20040136228A1 (en) Semiconductor memory with embedded dram
US7342814B2 (en) Content addressable memory with reduced search current and power
JP2754492B2 (ja) 選択的にクリア可能なメモリセルを備えたメモリ

Legal Events

Date Code Title Description
N231 Notification of change of applicant
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: 20121101

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20131101

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20141119

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20151026

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20161025

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20171024

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20181025

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20191030

Year of fee payment: 12