KR102110044B1 - 자기 저항을 이용하는 논리 기억 회로 및 이를 이용한 논리 연산 수행 방법 - Google Patents

자기 저항을 이용하는 논리 기억 회로 및 이를 이용한 논리 연산 수행 방법 Download PDF

Info

Publication number
KR102110044B1
KR102110044B1 KR1020180099159A KR20180099159A KR102110044B1 KR 102110044 B1 KR102110044 B1 KR 102110044B1 KR 1020180099159 A KR1020180099159 A KR 1020180099159A KR 20180099159 A KR20180099159 A KR 20180099159A KR 102110044 B1 KR102110044 B1 KR 102110044B1
Authority
KR
South Korea
Prior art keywords
logic
circuit
memory
mtj
transistor
Prior art date
Application number
KR1020180099159A
Other languages
English (en)
Other versions
KR20190132901A (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 KR20190132901A publication Critical patent/KR20190132901A/ko
Application granted granted Critical
Publication of KR102110044B1 publication Critical patent/KR102110044B1/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Hall/Mr Elements (AREA)
  • Mram Or Spin Memory Techniques (AREA)

Abstract

MTJ를 이용한 논리 기억 회로가 개시된다. 상기 논리 기억 회로는 감지 회로, 상기 감지 회로에 연결된 적어도 하나의 입력 메모리, 상기 감지 회로에 연결된 기준 회로부 및 적어도 하나의 논리 회로부를 포함하며, 상기 입력 메모리, 상기 기준 회로부 및 상기 논리 회로부 중 적어도 하나는 자기 터널 접합(Magnetic Tunnel Junction, MTJ)을 포함한다. 여기서, 상기 논리 기억 회로는 리드 동작 및 논리 연산 동작을 모두 수행할 수 있고, 상기 리드 동작시 상기 입력 메모리 및 상기 기준 회로부가 활성화되며, 상기 논리 연산 동작시 상기 입력 메모리 및 상기 논리 회로부가 활성화된다.

Description

자기 저항을 이용하는 논리 기억 회로 및 이를 이용한 논리 연산 수행 방법{LOGIC MEMORY CIRCUIT USING MAGNETIC RESISTANCE AND METHOD OF PERFORMING LOGIC OPERATION USING THE SAME}
본 발명은 자기 저항을 이용하는 논리 기억 회로 및 이를 이용한 논리 연산 수행 방법에 관한 것이다.
종래에는, CMOS 기반의 VLSI processor를 만들기 위해 논리회로와 메모리 모듈을 이용하여 시스템을 설계하였다. 일반적으로, 메모리로는 DRAM과 SRAM을 이용하게 된다. 이 경우, 모든 동작에서 상기 메모리에 back-up과 boost-up 과정이 필요하고 이는 큰 전력소모 및 동작속도를 제한하게 된다.
기존 CMOS 공정 기반의 VLSI 회로는 공정이 발전하면서 스케일 다운이 되며 고속, 고집적회로를 구현해 왔다. 그러나, 최근 스케일 다운이 됨에 따라 누설전류에 따른 전력소모가 극심해지게 되었고 새로운 방식의 회로를 필요로 하게 되었다.
또한, 최근 IoT와 같은 저전력 및 고속의 계산을 필요로하는 기술이 나오고 있지만, 기존 CMOS 기반의 VLSI 시스템에서는 메모리와 논리 회로가 분리되어 있어서 상기 메모리와 상기 논리 회로 사이의 통신 속도가 병목(bottleneck) 현상을 야기시켰다.
KR 10-2018-0053314 A
본 발명은 MTJ를 이용한 논리 기억 회로 및 이를 이용한 논리 연산 수행 방법을 제공하는 것이다.
상기한 바와 같은 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 논리 기억 회로는 감지 회로; 상기 감지 회로에 연결된 적어도 하나의 입력 메모리; 상기 감지 회로에 연결된 기준 회로부; 및 적어도 하나의 논리 회로부를 포함하며, 상기 입력 메모리, 상기 기준 회로부 및 상기 논리 회로부 중 적어도 하나는 자기 터널 접합(Magnetic Tunnel Junction, MTJ)을 포함한다. 여기서, 상기 논리 기억 회로는 리드 동작 및 논리 연산 동작을 모두 수행할 수 있고, 상기 리드 동작시 상기 입력 메모리 및 상기 기준 회로부가 활성화되며, 상기 논리 연산 동작시 상기 입력 메모리 및 상기 논리 회로부가 활성화된다.
본 발명의 다른 실시예에 따른 논리 기억 회로는 감지 회로; 상기 감지 회로에 연결되며, 입력 데이터가 저장되는 적어도 하나의 입력 메모리; 및 제 1 논리 회로부를 포함한다. 여기서, 상기 입력 메모리 및 상기 제 1 논리 회로부는 자기 터널 접합(Magnetic Tunnel Junction, MTJ)을 가지며, 논리 연산시 상기 입력 메모리의 저항과 상기 제 1 논리 회로부의 저항이 비교되어 상기 감지 회로를 통하여 출력된다.
본 발명의 일 실시예에 따른 감지 회로, 상기 감지 회로에 연결되며 제 1 MTJ를 포함하는 적어도 하나의 입력 메모리, 제 2 MTJ를 포함하는 기준 회로부, 제 3 MTJ를 포함하는 제 1 논리 회로부 및 제 4 MTJ를 포함하는 제 2 논리 회로부를 가지는 논리 기억 회로에서 논리 연산을 수행하는 방법은 상기 입력 메모리를 통하여 전류를 흐르게 하는 단계; 상기 기준 회로부 및 상기 제 1 논리 회로부를 통하여 전류를 흐르게 하는 단계; 및 상기 감지 회로가 상기 전류들이 흐름에 따라 상기 입력 메모리의 저항과 상기 기준 회로 및 상기 제 1 논리 회로부의 저항의 합을 비교하여 비교 결과를 제 1 논리 연산의 결과로서 출력하는 단계를 포함한다.
본 발명의 다른 실시예에 따른 감지 회로, 상기 감지 회로에 연결되며 제 1 MTJ를 포함하는 복수의 입력 메모리들, 제 2 MTJ를 포함하는 기준 회로부, 캐시 회로 및 출력 회로를 가지는 논리 기억 회로에서 논리 연산을 수행하는 방법은 제 1 입력 메모리를 통하여 전류를 흐르게 하는 단계; 상기 기준 회로부를 통하여 전류를 흐르게 하는 단계; 상기 제 1 입력 메모리의 저항과 상기 기준 회로부의 저항을 비교하여 상기 감지 회로를 통하여 출력하는 단계; 상기 출력된 감지 회로의 출력을 상기 캐시 회로에 저장하는 단계; 제 2 입력 메모리를 통하여 전류를 흐르게 하는 단계; 상기 기준 회로부를 통하여 전류를 흐르게 하는 단계; 상기 제 2 입력 메모리의 저항과 상기 기준 회로부의 저항을 비교하여 상기 감지 회로를 통하여 출력하는 단계; 및 상기 캐시 회로에 저장된 데이터와 상기 제 2 입력 메모리의 저항과 상기 기준 회로부의 저항을 비교함에 의해 출력된 데이터를 이용하여 논리 연산을 수행하는 단계를 포함한다.
본 발명에 따른 논리 기억 회로 및 이를 이용한 논리 연산 수행 방법은 메모리와 논리 회로를 하나의 회로로 구현하고 MTJ를 논리 연산을 위해 사용하며, 그 결과 저전력 및 고속의 동작을 실현할 수 있다. 특히, 상기 논리 기억 회로는 모든 논리 연산을 수행할 수 있다.
도 1은 본 발명의 일 실시예에 따른 논리 기억 회로를 도시한 도면이다.
도 2는 도 1의 논리 회로를 이용한 AND 연산 및 OR 연산을 도시한 도면이다.
도 3은 도 1의 논리 기억 회로를 이용한 워드 라인 리드 과정을 도시한 도면이다.
도 4는 도 1의 논리 기억 회로를 이용한 출력을 기록하는 과정을 도시한 도면이다.
도 5는 도 1의 논리 기억 회로를 이용한 XOR 연산을 도시한 도면이다.
도 6은 도 1의 논리 기억 회로를 이용한 Full adder 연산을 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 논리 기억 회로의 레이아웃을 도시한 도면이다.
도 8은 각 연산들을 위한 동작 순서를 도시한 도면이다.
도 9는 논리 기억 회로의 시뮬레이션 결과를 도시한 도면이다.
본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "구성된다" 또는 "포함한다" 등의 용어는 명세서상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
본 발명은 논리 기억 회로 및 이를 이용한 논리 연산 수행 방법에 관한 것으로서, 자기 터널 접합(Magnetic Tunnel Junction, MTJ)을 사용한다. 특히, 상기 논리 기억 회로는 논리 회로와 메모리를 하나의 회로로서 구현하되, 상기 메모리 또한 MTJ로 구현될 수 있다.
종래에는 논리 회로와 메모리가 별도로 구현되었기 때문에 논리 회로와 메모리 사이의 통신 속도로 인하여 병목(Bottleneck) 현상이 발생되었다. 반면에, 본 발명의 논리 기억 회로는 논리 회로와 메모리를 하나의 회로로 구현하므로, 이러한 병목 현상이 발생되지 않을 수 있다.
또한, 구현하고자 하는 논리 회로마다 회로 구조가 달랐던 종래 기술과 달리, 본 발명의 논리 기억 회로는 하나의 회로로 모든 논리, 예를 들어 AND 연산, OR 연산, XOR 연산, Full adder 연산 등을 구현할 수 있다.
이하, 본 발명의 다양한 실시예들을 첨부된 도면을 참조하여 상술하겠다.
도 1은 본 발명의 일 실시예에 따른 논리 기억 회로를 도시한 도면이고, 도 2는 도 1의 논리 회로를 이용한 AND 연산 및 OR 연산을 도시한 도면이며, 도 3은 도 1의 논리 기억 회로를 이용한 워드 라인 리드 과정을 도시한 도면이다. 도 4는 도 1의 논리 기억 회로를 이용한 출력을 기록하는 과정을 도시한 도면이고, 도 5는 도 1의 논리 기억 회로를 이용한 XOR 연산을 도시한 도면이며, 도 6은 도 1의 논리 기억 회로를 이용한 Full adder 연산을 도시한 도면이다. 도 7은 본 발명의 일 실시예에 따른 논리 기억 회로의 레이아웃을 도시한 도면이고, 도 8은 각 연산들을 위한 동작 순서를 도시한 도면이며, 도 9는 논리 기억 회로의 시뮬레이션 결과를 도시한 도면이다.
도 1을 참조하면, 본 실시예의 논리 기억 회로는 감지 회로(100), 입력 메모리들(102 및 104), 출력 메모리(106), 기준 회로부(108), 제 1 논리 회로부(109), 제 2 논리 회로부(110) 및 드라이버(120)를 포함할 수 있다.
감지 회로(100)는 리드된 데이터 또는 논리 연산 데이터를 감지하여 출력한다. 여기서, 출력인 DOUT 및 DOUTB(DOUT 바)가 감지 결과, 즉 리드된 데이터 또는 논리 연산 데이터이다.
이러한 감지 회로(100)는 도 1의 구조로 제한되지는 않으며, 데이터를 감지하는 한 다양하게 변형될 수 있다.
입력 메모리들(102 및 104)은 입력 데이터를 저장할 수 있다. 예를 들어, 특정 논리 연산을 수행할 때, 입력 메모리들(102 및 104)은 논리 연산을 위해 입력된 데이터를 저장한다. 도 1에서는 2개의 입력 메모리들을 도시하였으나, 필요에 따라 입력 메모리들의 수는 가변될 수 있다.
일 실시예에 따르면, 각 입력 메모리들(102 및 104)은 각기 일 비트의 입력 데이터를 저장할 수 있으며, 도 1에 도시된 바와 같이 하나의 셀로 구현될 수 있다. 여기서, 하나의 셀은 하나의 MTJ(130)와 2개의 모스 트랜지스터들(M1 및 M2)로 이루어질 수 있다. 이러한 셀의 구조는 모든 입력 메모리들(102 및 104) 및 출력 메모리(106)에 적용되므로, 입력 메모리(102)의 셀의 구조를 대표로 하여 설명하겠다.
제 1 모스 트랜지스터(M1)는 N-모스 트랜지스터일 수 있으며, 드레인은 데이터 라인(DL)에 연결되고, 게이트는 워드 라인에 연결될 수 있다. 여기서, 데이터 라인(DL)은 감지 회로(100)의 제 1 감지 트랜지스터의 소스에 연결될 수 있다.
제 2 모스 트랜지스터(M2)는 N-모스 트랜지스터일 수 있으며, 드레인은 제 1모스 트랜지스터(M1)의 소스에 연결되고, 게이트는 스캔 라인(SL)에 연결되며, 소스는 컬럼 라인(CL)에 연결될 수 있다. 여기서, 컬럼 라인(CL)은 리드 동작에는 사용되지 않고 논리 연산시에만 사용될 수 있다.
MTJ(130)의 일단은 비트 라인(BL)에 연결되고, 타단은 트랜지스터들(M1 및 M2) 사이에 연결될 수 있다.
출력 메모리(106)는 감지 회로(100)로부터 출력된 데이터(DOUT)를 저장할 수 있다. 물론, 출력 메모리(106)는 입력 메모리(102 또는 104)와 동일한 구조를 가지기 때문에, 입력 메모리로 사용될 수도 있다. 또한, 도 1에서는 1개의 출력 메모리만을 도시하였으나, 복수의 출력 메모리들이 구현될 수 있다.
리드 트랜지스터(MRD1)는 리드 동작을 위해 사용되는 트랜지스터로, N-모스 트랜지스터일 수 있다.
리드 트랜지스터(MRD1)로 리드 신호(RD)가 입력되며, 리드 신호(RD)에 따라 리드 트랜지스터(MRD1)의 동작이 결정된다. 구체적으로는, 리드 동작시, 리드 트랜지스터(MRD1)를 활성화시키는 리드 신호(RD)가 입력된다.
논리 트랜지스터(ML1)는 논리 연산 동작을 위해 사용되는 트랜지스터로, N-모스 트랜지스터일 수 있다.
논리 트랜지스터(ML1)로 논리 신호(LOGIC)가 입력되며, 논리 신호(LOGIC)에 따라 논리 트랜지스터(ML1)의 동작이 결정된다. 구체적으로는, 논리 연산 동작시, 논리 트랜지스터(ML1)를 활성화시키기 위한 논리 신호(LOGIC)가 입력된다. 여기서, 논리 트랜지스터(ML1)가 활성화될 때, 리드 트랜지스터(MRD1)는 비활성화될 수 있다.
드라이버(120)는 감지 회로(100)로부터 출력된 데이터(DOUTB)가 입력되는 제 1 인버터(IN1), 감지 회로(100)로부터 출력된 데이터(DOUT)가 입력되는 제 2 인버터(IN2), 제 1 CMOS 트랜지스터 쌍(C1 및 C2) 및 제 2 CMOS 트랜지스터 쌍(C3 및 C4)을 포함할 수 있다.
제 1 CMOS 트랜지스터 쌍(C1 및 C2)의 게이트들 중 일부로 NOTB 신호가 입력되고 나머지 게이트들로 NOT 신호가 입력되며, 제 1 CMOS 트랜지스터 쌍(C1 및 C2)에 의한 출력은 비트 라인(BL)의 활성화를 결정할 수 있다.
NOT 신호 및 NOTB 신호는 XOR 게이트(150) 및 XOR 게이트(150)의 출력이 입력되는 인버터(152)에 의해 생성된다.
NOR 게이트(150)의 입력들로 NOT_OP 신호 및 기존에 리드했던 데이터인 PRE_DOUT 신호가 입력된다. NOR 게이트(150)는 NOTB 신호를 출력할 수 있다.
NOR 게이트(150)의 출력은 인버터(152)로 입력되며, 인버터(152)는 NOT 신호를 출력한다.
제 2 CMOS 트랜지스터 쌍(C3 및 C4)의 게이트들 중 일부로 NOTB 신호가 입력되고 나머지 게이트들로 NOT 신호가 입력되며, 제 2 CMOS 트랜지스터 쌍(C3 및 C4)에 의한 출력은 컬럼 라인(CL)의 활성화를 결정할 수 있다.
다만, 제 1 인버터(IN1)와 제 2 인버터(IN2)로 입력되는 데이터들(DOUTB AND DOUT)이 180도 위상 차이를 가지므로, 비트 라인(BL)과 컬럼 라인(CL)은 상보적으로 동작하게 된다.
즉, 비트 라인(BL)이 활성화디면 컬럼 라인(CL)은 비활성화되며, 그 결과 리드 동작이 수행된다. 컬럼 라인(CL)이 활성화되면 비트 라인(BL)이 비활성화되며, 그 결과 논리 연산 동작이 수행된다.
한편, 드라이버(120)의 회로 구조는 비트 라인(BL)과 컬럼 라인(CL)을 상보적으로 동작시키는 한 다양하게 변형될 수 있다.
물론, 이러한 동작은 기준 컬럼 라인(RCL)과 기준 비트 라인(RBL)에도 동일하게 적용될 수 있다.
기준 회로부(108)는 데이터 리드시 사용되는 기준 저항을 제공하며, 예를 들어 1개의 기준 트랜지스터(MR), P 상태의 제 1 MTJ(140), P 상태의 제 2 MTJ(142) 및 AP 상태의 제 3 MTJ(144)를 포함할 수 있다.
기준 트랜지스터(MR)는 N-MOS 트랜지스터일 수 있고, 드레인은 감지 회로(100)의 제 2 감지 트랜지스터와 연결되는 리드 라인(RL)에 연결될 수 있으며, 소스는 제 1 MTJ(140)의 일단에 연결될 수 있다. 또한, 기준 트랜지스터(MR)의 게이트로는 논리 신호(LOGIC) 또는 리드 신호(RD)가 입력될 수 있다.
제 1 MTJ(140)의 타단은 제 2 MTJ(142)의 일단 및 제 3 MTJ(144)의 일단에 연결될 수 있다.
제 2 MTJ(142)의 타단은 제 3 MTJ(144)의 타단에 연결되면서 기준 비트 라인(RBL)에 연결될 수 있다.
제 3 MTJ(144)의 타단 또한 기준 비트 라인(RBL)에 연결될 수 있다.
제 1 논리 회로부(109)는 논리 연산을 위해 사용되는 회로로서, AND 연산 등을 위해 사용될 수 있다.
일 실시예에 따르면, 제 1 논리 회로부(109)는 MTJ(146) 및 2개의 트랜지스터들(M3 및 M4)를 포함할 수 있다.
MTJ(146)의 일단은 기준 비트 라인(RBL)에 연결되고, 타단은 트랜지스터(M3)의 소스와 트랜지스터(M4)의 드레인 사이에 연결될 수 있으며, P 상태를 가질 수 있다.
트랜지스터(M4)의 소소는 기준 컬럼 라인(RCL)에 연결되며, 게이트로 제 1 논리 신호가 입력될 수 있다. 예를 들어, 제 1 논리 신호는 AND 신호(SLAND)일 수 있다.
제 2 논리 회로부(110)는 MTJ(148) 및 2개의 트랜지스터들(M5 및 M6)을 포함할 수 있다.
MTJ(148)의 일단은 기준 비트 라인(RBL)에 연결되고, 타단은 트랜지스터(M5)의 소스와 트랜지스터(M6)의 드레인 사이에 연결되며, AP 상태를 가질 수 있다.
트랜지스터(M6)의 소스는 기준 컬럼 라인(RCL)에 연결되며, 게이트로 제 2 논리 신호가 입력될 수 있다. 예를 들어, 제 2 논리 신호는 OR 신호(SLOR)일 수 있다.
리드 트랜지스터(MRD2)는 리드 동작을 위해 사용되는 트랜지스터로, N-모스 트랜지스터일 수 있다.
리드 트랜지스터(MRD2)로 리드 신호(RD)가 입력되며, 리드 신호(RD)에 따라 리드 트랜지스터(MRD2)의 동작이 결정된다. 구체적으로는, 리드 동작시, 리드 트랜지스터(MRD2)를 활성화시키는 리드 신호(RD)가 입력된다.
논리 트랜지스터(ML2)는 논리 연산 동작을 위해 사용되는 트랜지스터로, N-모스 트랜지스터일 수 있다.
논리 트랜지스터(ML2)로 논리 신호(LOGIC)가 입력되며, 논리 신호(LOGIC)에 따라 논리 트랜지스터(ML2)의 동작이 결정된다. 구체적으로는, 논리 연산 동작시, 논리 트랜지스터(ML2)를 활성화시키기 위한 논리 신호(LOGIC)가 입력된다. 여기서, 논리 트랜지스터(ML2)가 활성화될 때, 리드 트랜지스터(MRD2)는 비활성화될 수 있다.
이하, 이러한 논리 기억 회로를 사용한 리드 동작 및 논리 연산 동작을 첨부된 도면들을 참조하여 살펴보겠다. 적색 선은 전류 흐름을 나타낸다.
AND 연산
도 2를 참조하여 AND 연산을 살펴보면, 논리 신호(LOGIC)가 입력되어 논리 트랜지스터(ML1) 및 논리 트랜지스터(ML2)가 활성화된다. 이 때, 리드 트랜지스터들(MRD1 및 MRD2)은 비활성화된다. 또한, 제 1 논리 신호에 의해 제 1 논리 회로부(109)의 트랜지스터(M4)가 활성화되고, 제 2 논리 신호에 의해 제 2 논리 회로부(110)의 트랜지스터(M6)는 비활성화된다.
결과적으로, 제 1 전류가 제 1 입력 메모리(102), 제 2 입력 메모리(104) 및 컬럼 라인(CL)을 통하여 흐르고, 제 2 전류가 기준 회로부(108), 제 1 논리 회로부(109) 및 기준 컬럼 라인(RCL)을 통하여 흐른다. 따라서, 입력 메모리들(102 및 104)에 저장된 데이터들의 저항과 기준 회로부(108) 및 제 1 논리 회로부(109)의 저항들의 합이 비교되고, 비교 결과(감지 회로의 출력, DOUT 및 DOUTB)가 감지 회로(100)를 통하여 출력된다.
이러한 감지 회로(100)의 출력은 하기 표 1에서 보여진다. 예를 들어, 입력 메모리들(102 및 104)에 저장된 데이터들이 각기 '0' 및 '0'이면 DOUT은 '0'일 수 있다.
Figure 112018084058772-pat00001
OR 연산
도 2를 참조하여 OR 연산을 살펴보면, 논리 신호(LOGIC)가 입력되어 논리 트랜지스터(ML1) 및 논리 트랜지스터(ML2)가 활성화된다. 이 때, 리드 트랜지스터들(MRD1 및 MRD2)은 비활성화된다. 또한, 제 1 논리 신호에 의해 제 1 논리 회로부(109)의 트랜지스터(M4)가 비활성화되고, 제 2 논리 신호에 의해 제 2 논리 회로부(110)의 트랜지스터(M6)는 활성화된다.
결과적으로, 제 1 전류가 제 1 입력 메모리(102), 제 2 입력 메모리(104) 및 컬럼 라인(CL)을 통하여 흐르고, 제 2 전류가 기준 회로부(108), 제 2 논리 회로부(110) 및 기준 컬럼 라인(RCL)을 통하여 흐른다. 따라서, 입력 메모리들(102 및 104)에 저장된 데이터들의 저항과 기준 회로부(108) 및 제 2 논리 회로부(110)의 저항들의 합이 비교되고, 비교 결과(감지 회로의 출력, DOUT 및 DOUTB)가 감지 회로(100)를 통하여 출력된다.
이러한 감지 회로(100)의 출력은 위의 표 1에서 보여진다. 예를 들어, 입력 메모리들(102 및 104)에 저장된 데이터들이 각기 '1' 및 '0'이면 DOUT은 '1'일 수 있다.
리드 동작
도 3을 참조하여 리드 동작을 살펴보면, 예를 들어 제 1 입력 메모리(102)의 데이터의 리드 동작을 살펴보면, 리드 신호(RD)가 입력되어 리드 트랜지스터(MRD1) 및 리드 트랜지스터(MRD2)가 활성화되고 제 1 워드 라인 신호(WL1)가 입력되어 트랜지스터(M1)가 활성화된다. 이 때, 트랜지스터들(MML1 및 MML2)은 비활성화된다. 또한, 논리 신호들에 의해 논리 회로부들(109 및 110)의 트랜지스터들(M4 및 M5)이 비활성화된다.
결과적으로, 제 1 전류가 제 1 입력 메모리(102) 및 비트 라인(BL)을 통하여 흐르고, 제 2 전류가 기준 회로부(108) 및 기준 비트 라인(RBL)을 통하여 흐른다. 따라서, 입력 메모리(102)에 저장된 데이터의 저항과 기준 회로부(108)의 저항이 비교되고, 비교 결과(감지 회로의 출력, DOUT 및 DOUTB)가 감지 회로(100)를 통하여 출력된다.
물론, 다른 입력 메모리의 데이터를 리드할 경우에는, 해당 입력 메모리에 워드 라인 신호가 입력되어 활성화되고 다른 입력 메모리들은 비활성화된다.
출력 쓰기 동작
도 4를 참조하여 출력 쓰기 동작을 살펴보면, 출력 메모리(106)의 트랜지스터(MO2)를 활성화시켜셔 MTJ(132)를 통하여 전류가 흐르도록 한다. 결과적으로, 감지 회로(100)의 출력(DOUT 또는 DOUTB)이 MTJ(132)에 쓰여질 수 있다.
XOR 연산
도 5를 참조하여 XOR 연산을 살펴보면, XOR 연산은 Single IN1 리드 동작, Single IN2 리드 동작 및 출력 동작에 의해 구현될 수 있다.
우선 Single IN1 리드 동작이 수행된다. 구체적으로는, 리드 신호(RD)가 입력되어 리드 트랜지스터(MRD1) 및 리드 트랜지스터(MRD2)가 활성화되고 제 1 워드 라인 신호(WL1)가 입력되어 트랜지스터(M1)가 활성화된다. 이 때, 트랜지스터들(MML1 및 MML2)은 비활성화된다. 또한, 논리 신호들에 의해 논리 회로부들(109 및 110)의 트랜지스터들(M4 및 M5)이 비활성화된다.
결과적으로, 제 1 전류가 제 1 입력 메모리(102) 및 비트 라인(BL)을 통하여 흐르고, 제 2 전류가 기준 회로부(108) 및 기준 비트 라인(RBL)을 통하여 흐른다.
이 때, 감지 회로(100)의 출력은 캐시 회로(500)의 래치(518)에 저장될 수 있다. 도 5에서는 캐시 회로(500)가 감지 회로(100)의 출력들(DOUT 및 DOUTB)이 각기 입력되는 NAND 게이트들(510 및 514), NAND 게이트들(510 및 514)의 출력을 버팅하는 인버터들(512 및 516), 인버터들(512 및 516)의 출력들이 입력되는 2개의 트랜지스터들(M10 및 M11) 및 래치(518)로 구현될 수 있다. 여기서, NAND 게이트들(510 및 514)의 타입력단으로 입력되는 CACHE_WR은 캐시 동작을 활성화시키는 역할을 수행한다.
한편, 캐시 회로(500)가 감지 회로(100)의 출력을 임시 저장할 수 있는 한 감지 회로(100)는 다양하게 변형될 수 있다.
이어서, Single IN2 리드 동작이 수행된다. 구체적으로는, 리드 신호(RD)가 입력되어 리드 트랜지스터(MRD1) 및 리드 트랜지스터(MRD2)가 활성화되고 제 k 워드 라인 신호(WLk)가 입력되어 트랜지스터가 활성화된다. 이 때, 논리 트랜지스터들(MML1 및 MML2)은 비활성화된다. 또한, 논리 신호들에 의해 논리 회로부들(109 및 110)의 트랜지스터들(M4 및 M5)이 비활성화된다.
결과적으로, 제 1 전류가 제 2 입력 메모리(104) 및 비트 라인(BL)을 통하여 흐르고, 제 2 전류가 기준 회로부(108) 및 기준 비트 라인(RBL)을 통하여 흐른다.
계속하여, 출력 동작이 수행된다. 구체적으로는, 캐시 회로(500)의 래치(518)에 저장된 데이터(PRE_DOUT)와 Single IN2 리드 동작에서의 감지 회로(100)의 출력(DOUT[2] 및 DOUTB[2])을 이용하여 XOR 연산이 수행될 수 있다.
일 실시예에 따르면, 출력 회로(502)는 NOT_OP 신호 또는 PRE_DOUT이 입력단으로 입력되는 2개의 NAND 게이트들(520 및 524), NAND 게이트들(520 및 524)의 출력을 인버팅하는 2개의 인버터들(522 및 526), 인버터들(522 및 526)의 출력들이 입력단들로 입력되는 NOR 게이트(528), NOR 게이트(528)의 출력을 인버팅하여 NOT 신호를 출력하는 인버터(530), 인버터(530)으로부터 출력된 NOT 신호 및 DOUT[2]를 XOR 연산시키는 XOR 게이트(532) 및 XOR 게이트(532)의 출력을 인버팅하여 NOW_DOUT 및 NOW_DOUTB를 출력하는 인버터(534)를 포함할 수 있다. 여기서, NOW_DOUT이 출력 회로(502)의 최종 출력이며, 즉 입력 데이터들을 XOR 연산한 결과이다.
한편, 래치(518)에 저장된 데이터(PRE_DOUT)와 Single IN2 리드 동작에서의 감지 회로(100)의 출력(DOUT[2] 및 DOUTB[2])을 이용하여 XOR 연산이 수행되는 한, 출력 회로(502)는 다양하게 변형될 수 있다.
Full adder 연산
도 6을 참조하여 Full adder 연산을 살펴보면, XOR 연산 후 Full adder 과정이 추가로 수행된다. XOR 연산 및 회로는 도 5에서와 동일하므로, 설명은 생략한다.
출력 동작을 위한, Full adder 회로(604)는 XOR(632)의 출력이 입력단으로 입력되는 XOR 게이트(640), XOR 게이트(640)의 출력을 인버팅하여 SUM 신호를 출력하는 인버터(642), 게이트들로 입력되는 NOW_DOUT 및 NOW_DOUTB에 따라 출력(COUT)을 출력하는 2개의 CMOS 트랜지스터들(644 및 646)을 포함할 수 있다. 여기서, 출력(COUT)이 Full adder 연산의 최종 출력이다.
다만, 캐시 회로(600)의 래치(618)에 저장된 데이터(PRE_DOUT)와 Single IN2 리드 동작에서의 감지 회로(100)의 출력(DOUT[2] 및 DOUTB[2])을 이용하여 Full adder 연산이 수행되는 한, Full adder 회로(604)는 다양하게 변형될 수 있다.
최종적으로, XOR 연산 및 Full adder 연산은 하기 표 2에서 보여진다.
Figure 112018084058772-pat00002
위의 논리 연산들의 동작 순서는 도 8에서 보여지고, 시뮬레이션 결과는 도 9에서 보여지며, 레이 아웃은 도 7에서 보여진다.
정리하면, 본 발명의 논리 기억 회로는 감지 회로, 입력 메모리, 출력 메모리, 기준 회로부, 적어도 하나의 논리 회로부 및 드라이버를 포함하여 모든 논리 연산을 수행할 수 있다. 특히, 상기 입력 메모리, 상기 출력 메모리, 상기 기준 회로부 및 상기 논리 회로부가 모두 MTJ를 이용할 수 있다.
한편, 전술된 실시예의 구성 요소는 프로세스적인 관점에서 용이하게 파악될 수 있다. 즉, 각각의 구성 요소는 각각의 프로세스로 파악될 수 있다. 또한 전술된 실시예의 프로세스는 장치의 구성 요소 관점에서 용이하게 파악될 수 있다.
또한 앞서 설명한 기술적 내용들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예들을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 하드웨어 장치는 실시예들의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
상기한 본 발명의 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대한 통상의 지식을 가지는 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.
100 : 감지 회로 102 : 제 1 입력 메모리
104 : 제 2 입력 메모리 106 : 출력 메모리
108 : 기준 회로부 109 : 제 1 논리 회로부
110 : 제 2 논리 회로부 120 : 드라이버

Claims (16)

  1. 논리 기억 회로에 있어서,
    감지 회로;
    상기 감지 회로에 연결된 적어도 하나의 입력 메모리;
    상기 감지 회로에 연결된 기준 회로부;
    상기 감지 회로의 출력을 저장하는 출력 메모리; 및
    적어도 하나의 논리 회로부를 포함하며,
    상기 입력 메모리, 상기 기준 회로부 및 상기 논리 회로부 중 적어도 하나는 자기 터널 접합(Magnetic Tunnel Junction, MTJ)을 포함하되,
    상기 논리 기억 회로는 리드 동작 및 논리 연산 동작을 모두 수행할 수 있고, 상기 리드 동작시 상기 입력 메모리 및 상기 기준 회로부가 활성화되며, 상기 논리 연산 동작시 상기 입력 메모리 및 상기 논리 회로부가 활성화되고,
    상기 입력 메모리 및 상기 출력 메모리는 동일한 구조를 가지며,
    상기 입력 메모리는,
    제 1 트랜지스터;
    제 2 트랜지스터; 및
    MTJ를 포함하며,
    상기 제 1 트랜지스터의 드레인은 데이터 라인(DL)을 통하여 상기 감지 회로에 연결되고, 상기 제 1 트랜지스터의 소스와 상기 제 2 트랜지스터의 드레인이 연결되며, 상기 제 2 트랜지스터의 소스는 논리 연산을 위한 컬럼 라인(CL)에 연결되고, 상기 MTJ의 일단은 상기 트랜지스터들 사이에 연결되고, 상기 MTJ의 타단은 리드 동작을 위한 비트 라인(BL)에 연결되는 것을 특징으로 하는 논리 기억 회로.
  2. 제1항에 있어서, 상기 입력 메모리, 상기 기준 회로부 및 상기 논리 회로부는 각기 MTJ를 포함하되,
    상기 감지 회로는 상기 리드 동작시 상기 입력 메모리의 저항과 상기 기준 회로부의 저항을 비교하여 비교 결과를 출력하며, 상기 논리 연산 동작시 상기 입력 메모리의 저항과 상기 논리 회로부의 저항을 비교하여 비교 결과를 출력하는 것을 특징으로 하는 논리 기억 회로.
  3. 삭제
  4. 삭제
  5. 제1항에 있어서, 상기 비트 라인(BL)에는 상기 비트 라인(BL)을 활성화시키기 위한 리드 트랜지스터가 연결되고, 상기 컬럼 라인(CL)에는 상기 컬럼 라인(CL)을 활성화시키기 위한 논리 트랜지스터가 연결되되,
    상기 리드 트랜지스터와 상기 논리 트랜지스터가 상보적으로 동작하는 것을 특징으로 하는 논리 기억 회로.
  6. 논리 기억 회로에 있어서,
    감지 회로;
    상기 감지 회로에 연결된 적어도 하나의 입력 메모리;
    상기 감지 회로에 연결된 기준 회로부; 및
    적어도 하나의 논리 회로부를 포함하며,
    상기 입력 메모리, 상기 기준 회로부 및 상기 논리 회로부 중 적어도 하나는 자기 터널 접합(Magnetic Tunnel Junction, MTJ)을 포함하되,
    상기 논리 기억 회로는 리드 동작 및 논리 연산 동작을 모두 수행할 수 있고, 상기 리드 동작시 상기 입력 메모리 및 상기 기준 회로부가 활성화되며, 상기 논리 연산 동작시 상기 입력 메모리 및 상기 논리 회로부가 활성화되고,
    상기 기준 회로부는,
    기준 트랜지스터;
    P 상태를 가지는 2개의 제 1 기준 MTJ 및 제 2 기준 MTJ; 및
    AP 상태를 가지는 제 3 기준 MTJ를 포함하며,
    상기 기준 트랜지스터의 드레인은 상기 감지 회로에 연결되고, 상기 기준 트랜지스터의 소스는 상기 제 1 기준 MTJ의 일단에 연결되며, 상기 제 1 기준 MTJ의 타단은 상기 제 2 기준 MTJ 및 상기 제 3 기준 MTJ의 일단들에 연결되고, 상기 제 2 기준 MTJ 및 상기 제 3 기준 MTJ의 타단들은 리드 동작을 위한 기준 비트 라인(RBL)에 연결되며, 상기 기준 비트 라인(RBL)에는 상기 기준 비트 라인(RBL)을 활성화시키기 위한 리드 트랜지스터가 연결되는 것을 특징으로 하는 논리 기억 회로.
  7. 제1항에 있어서, 상기 논리 회로부는 제 1 논리 회로부와 제 2 논리 회로부를 포함하되,
    상기 제 1 논리 회로부는 AND 연산을 위해 사용되고, 상기 제 2 논리 회로부는 OR 연산을 위해 사용되며, 상기 제 1 논리 회로부 동작시 상기 제 2 논리 회로부는 비활성화되고, 상기 제 2 논리 회로부 동작시 상기 제 1 논리 회로부는 비활성화되는 것을 특징으로 하는 논리 기억 회로.
  8. 제7항에 있어서,
    상기 제 1 논리 회로부는,
    P 상태를 가지는 제 1 논리 MTJ 및 2개의 제 1 트랜지스터들을 포함하고, 상기 제 1 논리 MTJ의 일단은 기준 비트 라인(RBL)에 연결되고 타단은 상기 제 1 트랜지스터들 사이에 연결되며, 상기 제 1 트랜지스터들 중 하나의 소스는 기준 컬럼 라인(RCL)에 연결되고,
    상기 제 2 논리 회로부는,
    AP 상태를 가지는 제 2 논리 MTJ 및 2개의 제 2 트랜지스터들을 포함하고, 상기 제 2 논리 MTJ의 일단은 상기 기준 비트 라인(RBL)에 연결되고 타단은 상기 제 2 트랜지스터들 사이에 연결되며, 상기 제 2 트랜지스터들 중 하나의 소스는 기준 컬럼 라인(RCL)에 연결되는 것을 특징으로 하는 논리 기억 회로.
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
KR1020180099159A 2018-05-21 2018-08-24 자기 저항을 이용하는 논리 기억 회로 및 이를 이용한 논리 연산 수행 방법 KR102110044B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180057978 2018-05-21
KR20180057978 2018-05-21

Publications (2)

Publication Number Publication Date
KR20190132901A KR20190132901A (ko) 2019-11-29
KR102110044B1 true KR102110044B1 (ko) 2020-05-12

Family

ID=68728926

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180099159A KR102110044B1 (ko) 2018-05-21 2018-08-24 자기 저항을 이용하는 논리 기억 회로 및 이를 이용한 논리 연산 수행 방법

Country Status (1)

Country Link
KR (1) KR102110044B1 (ko)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3347990B1 (en) 2015-09-11 2019-07-10 Xilinx, Inc. Cascaded lookup-table (lut) carry logic circuit

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Shubham Jain et al., ‘Computing in memory with STT-MRAM’, IEEE Transactions on VLSI Systems, Vol:26,Issue:3, 470~483 page (2018.03.31.) 1부.*

Also Published As

Publication number Publication date
KR20190132901A (ko) 2019-11-29

Similar Documents

Publication Publication Date Title
Agrawal et al. X-SRAM: Enabling in-memory Boolean computations in CMOS static random access memories
Reis et al. Computing in memory with FeFETs
US11205476B1 (en) Read data processing circuits and methods associated with computational memory cells
TWI692760B (zh) 儲存裝置、方法及儲存媒體
Singh et al. Robust SRAM designs and analysis
US6807088B2 (en) Magnetic random access memory and reading method thereof
US8117567B2 (en) Structure for implementing memory array device with built in computation capability
US6556471B2 (en) VDD modulated SRAM for highly scaled, high performance cache
KR102131812B1 (ko) 소스라인 플로팅 회로, 이를 포함하는 메모리 장치 및 메모리 장치의 독출 방법
US9299411B2 (en) Hybrid read scheme for spin torque MRAM
KR101564340B1 (ko) 개선된 안정성 및 감소된 비트셀 사이즈를 갖는 저전력 5t sram
JP4284326B2 (ja) 磁気抵抗ランダムアクセスメモリおよびその書き込み制御方法
US20100265782A1 (en) Hybrid sense amplifier and method, and memory device using same
US9378789B2 (en) Voltage level shifted self-clocked write assistance
Chen et al. Analysis and optimization strategies toward reliable and high-speed 6T compute SRAM
WO2013116393A1 (en) Non- volatile flip flop with resistive non-volatile element
US9224446B2 (en) Multi-port memory circuit, accessing method and compiler
US7596045B2 (en) Design structure for initializing reference cells of a toggle switched MRAM device
WO2012122521A2 (en) Memory cell system and method
WO2018182957A1 (en) Apparatus and method for implementing design for testability (dft) for bitline drivers of memory circuits
Chang et al. PRESCOTT: Preset-based cross-point architecture for spin-orbit-torque magnetic random access memory
JP7054012B2 (ja) 半導体記憶回路、半導体記憶装置及びデータ検出方法
Soundrapandiyan et al. Enabling energy-efficient in-memory computing with robust assist-based reconfigurable sense amplifier in SRAM array
KR102110044B1 (ko) 자기 저항을 이용하는 논리 기억 회로 및 이를 이용한 논리 연산 수행 방법
US7558924B2 (en) Systems and methods for accessing memory cells

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