KR20180089701A - 내부 연산 구조를 포함하는 mtj 메모리 장치 - Google Patents

내부 연산 구조를 포함하는 mtj 메모리 장치 Download PDF

Info

Publication number
KR20180089701A
KR20180089701A KR1020170014365A KR20170014365A KR20180089701A KR 20180089701 A KR20180089701 A KR 20180089701A KR 1020170014365 A KR1020170014365 A KR 1020170014365A KR 20170014365 A KR20170014365 A KR 20170014365A KR 20180089701 A KR20180089701 A KR 20180089701A
Authority
KR
South Korea
Prior art keywords
resistance value
memory
memory string
magnetic field
input data
Prior art date
Application number
KR1020170014365A
Other languages
English (en)
Other versions
KR101939359B1 (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 고려대학교 산학협력단
Priority to KR1020170014365A priority Critical patent/KR101939359B1/ko
Publication of KR20180089701A publication Critical patent/KR20180089701A/ko
Application granted granted Critical
Publication of KR101939359B1 publication Critical patent/KR101939359B1/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/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • H01L27/222
    • H01L43/08
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10BELECTRONIC MEMORY DEVICES
    • H10B61/00Magnetic memory devices, e.g. magnetoresistive RAM [MRAM] devices
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10NELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10N50/00Galvanomagnetic devices
    • H10N50/10Magnetoresistive devices

Landscapes

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

Abstract

본 발명은 연산 로직을 내장한 MTJ(magnetic tunnel junction) 메모리 장치에 관한 것으로서, N 개(N은 자연수)의 자기장 메모리 셀이 직렬 연결된 적어도 하나 이상의 메모리 스트링; 각 자기장 메모리 셀에 병렬 연결되고, 입력 데이터에 따라 스위칭 상태가 조절되는 N개의 스위칭 소자; 및 메모리 스트링의 데이터 독출 동작을 위한 복수의 기준 전압을 생성하는 기준전압 생성부를 포함한다. 이때, 자기장 메모리는 상기 입력 데이터에 의하여 결정되는 스위칭 상태 및 상기 메모리 스트링에 저장된 데이터에 의하여 결정되는 메모리 스트링의 저항값에 기반하여 입력 데이터와 메모리 스트링에 저장된 데이터의 스칼라 곱 연산을 출력한다.

Description

내부 연산 구조를 포함하는 MTJ 메모리 장치{MAGNETIC TUNNELING JUNCTION MEMORY DEVICE WITH IN-MEMORY PROCESSING STRUCTURE}
본 발명은 내부 연산 구조를 포함하는 MTJ 메모리 장치에 관한 것으로서, 특히 스칼라곱(scalar product) 연산을 수행하는 MRJ 메모리 장치에 관한 것이다.
일반적으로, 자기 터널 접합(Magnetic Tunneling Junction)로 구현된 자기장 메모리 셀은, 도 1의 (a)에 도시된 바와 같이, 절연층을 갖는 한 쌍의 자기층들로 구성된다. 이 자기층들 중 하나(즉, 고정층(fixed layer)(13))는 고정된 자기 벡터(magnetic vector)를 가지며, 다른 하나의 자기층(즉, 자유층(free layer)(11))은 고정된 자기 벡터와 정렬되거나(도 1의 (a) 좌측에 도시) 또는 비정렬된(도 1의 (a) 우측에 도시) 가변 자기 벡터를 갖는다. 자기 벡터들이 정렬될 때, 자기장 메모리 셀의 저항, 즉 자기층들 사이에 흐르는 전류에 대한 저항이 최소이고, 자기 벡터들이 비정렬(anti-paraparallel)될 때, 자기장 메모리 셀의 저항은 최대가 된다. 따라서, 두개의 자기층들 간의 정렬 상태의 최소 저항값과 비정렬 상태의 최대 저항값을 기초로 1/0이 판별되며, 데이터는 가변 자기 벡터를 선택된 방향으로 이동시키도록 배향된 자기장 메모리 셀에 자계를 인가함으로써 각 셀에 저장된다. 또한, 각 셀에 저장된 데이터는 전류를 로드 레지스터(load register) 및 메모리 셀을 포함한 직렬 회로를 통해 통과시킴으로써 독출된다.
한편, 현 컴퓨터 아키텍쳐에서 데이터를 연산하는 경우, CPU가 상기한 방법에 따라 연산에 필요한 데이터를 상기한 자기장 메모리 셀로 구현되는 MTJ 메모리 장치로부터 독출 및 저장하는 과정을 반복해야 한다. CPU와 MTJ 메모리 장치 간의 데이터 이동은 버스(BUS)를 통해 이루어지며, 이때 버스의 저항 및 커패시턴스로 인한 전력소모가 문제되었다.
이에따라, 종래의 MTJ 메모리 장치는 데이터를 저장하는 용도 이외에, 각 셀 저장된 데이터 값을 이용하여 CMOS 로직 게이트를 거치지 않고, 도 1의 (b)에 도시된 바와 같이, MTJ 메모리 장치에서 합(SUM) 연산 등을 수행하기 위한 로직 인 메모리(Logic-in-memory) 회로를 포함하여 구현되는 형태로 발전하였다. 로직 인 메모리 구조에서는 기준 저항(1/0의 중간 저항값)과 자기장 메모리 셀의 구조를 조정함으로써, 독출 결과로 CMOS 로직 게이트 연산이 수행되도록 구현한 회로이다. 그러나, 종래의 로직 인 메모리 구조는 반전된 데이터를 필요로 한다. 이는, 불필요한 메모리 용량 소모로 이어져 로직 인 메모리의 저전력/저면적 설계의 효과를 저하시킨다. 또한, 종래의 로직 인 메모리 구조는 단일 비트 출력이 가능하도록 설계되어, 다수의 데이터 비트를 동시에 처리하는데에 어려움이 있다. 따라서 종래의 로직 인 메모리 구조는, 그래픽 프로세서 연산, 컨볼루션 뉴럴 네트워크(convolution neural network) 등과 같이 스칼라 곱(scalar product) 연산의 사용량이 급증한 시스템에 적합하지 않다.
대한민국 등록특허 제 10-1369349 호 (발명의 명칭: 자기 랜덤 액세스 메모리(MRAM)에 대한 인-시츄 저항 측정)
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 데이터 저장/독출 이외에 스칼라곱 연산을 동시에 수행가능하도록 구현된 MTJ 메모리 장치를 제공하는 것을 목적으로 한다. 다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본원의 일측면에 따른 연산 로직을 내장한 MTJ 메모리 장치는, N 개(N은 자연수)의 자기장 메모리 셀이 직렬 연결된 적어도 하나 이상의 메모리 스트링; 상기 각 자기장 메모리 셀에 병렬 연결되고, 입력 데이터에 따라 스위칭 상태가 조절되는 N개의 스위칭 소자; 및 상기 메모리 스트링의 데이터 독출 동작을 위한 복수의 기준 전압을 생성하는 기준전압 생성부를 포함한다. 이때, 상기 MTJ 메모리 장치는 상기 입력 데이터에 의하여 결정되는 스위칭 상태 및 상기 메모리 스트링에 저장된 데이터에 의하여 결정되는 상기 메모리 스트링의 저항값에 기반하여 상기 입력 데이터와 상기 메모리 스트링에 저장된 데이터의 스칼라 곱 연산을 출력한다.
또한, 상기 기준전압 생성부는 공급 전압을 분배하는 제 1 저항부 및 제 2 저항부를 포함하고, 상기 제 1 저항부는 제 1 저항값을 갖는 N-1 개의 저항과 제 2 저항값을 갖는 1개의 저항을 포함하되, 각 저항들은 서로 직렬 연결된 것이고, 상기 제 2 저항부는 상기 메모리 스트링 및 스위칭 소자와 동일한 구조의 추가 메모리 스트링 및 추가 스위칭 소자를 포함하며, 상기 입력 데이터에 따라 해당 저항값이 가변되는 것일 수 있다.
또한, 상기 제 1 저항값은 상기 자기장 메모리 셀에 포함된 자유층과 고정층이 비병렬 상태일때의 저항값에서 자유층과 고정층이 병렬 상태일때의 저항값을 차감한 값이고, 상기 제 2 저항값은 상기 제 1 저항값의 1/2에 해당하는 값일 수 있다.
또한, 상기 추가 메모리 스트링에 포함된 자기장 메모리 셀들은 자유층과 고정층이 병렬 상태로 설정된 것일 수 있다.
또한, 상기 입력 데이터는 반전되어 상기 스위칭 소자 및 추가 스위칭 소자에 각각 인가되는 것이고, 상기 입력 데이터가 하이 레벨 데이터인 경우, 상기 스위칭 소자 및 추가 스위칭 소자는 턴오프되는 것일 수 있다.
또한, 상기 자기장 메모리는 N 비트의 입력 데이터와 상기 메모리 스트링에 저장된 N 비트의 데이터의 스칼라 곱 연산의 결과로서 0부터 최대 N까지 총 N+1 개의 출력 값을 출력할 수 있다.
또한, 상기 스칼라 곱 연산 출력 데이터를 처리하는 연산부를 더 포함하되, 상기 연산부는 상기 기준 전압과 상기 메모리 스트링의 전압 상태를 비교하는 비교부, 상기 비교부의 출력값을 원 핫 코드로 전환하는 원핫 코드 생성부 및 상기 원 핫 코드를 바이너리 값으로 변환하는 바이너리 생성부를 포함할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 자기장 메모리 셀에 저장된 데이터와 상기 스위칭 소자로 입력되는 입력 데이터 간의 스칼라 곱을 연산하여 출력할 수 있다. 특히 스칼라 곱 연산을 위해 이에 필요한 데이터를 모두 CPU 로 전송하지 않고, 해당 데이터들의 출력값을 CPU로 전송함으로서 데이터 전송에 따른 오버헤드 및 전력 소모를 감소시킬 수 있다. 일반적인 메모리 스트링의 설계를 상기 스칼라 곱 연산에 최적화함으로서, MTJ 메모리 장치의 효율성 및 경제성을 증가시켰다.
도 1은 일반적인 MJT(magnetic tunnel junction) 메모리 장치의 데이터 저장 과정 및 SUM 연산 로직을 내장한 MTJ 메모리 장치의 일 예를 도시한 것이다.
도 2 는 본 발명의 일 실시예에 따른MTJ 메모리 장치를 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따라 각 메모리 스트링이 3개의 자기장 메모리 셀을 포함하는 경우의 기준전압 생성부의 구성을 도시한 일 예이다.
도 4는 본 발명의 일 실시예에 따라 3개의 자기장 메모리 셀을 포함하는 메모리 스트링에서의 발생가능한 저항값을 판별하는 기준전압 생성부의 고정 저항값과 가변 저항값을 나타낸 표이다.
도 5는 본 발명의 일 실시예에 따라 각 메모리 스트링이 7개의 자기장 메모리 셀을 포함하는 경우의 기준 기준전압 생성부와 연산부의 구성을 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 메모리 스트링의 저항값과, 상기 저항값에 기반한 입력 데이터와 상기 저장된 데이터의 스칼라 곱 연산 결과값을 나타낸 표이다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 “상에” 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함" 한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. 본원 명세서 전체에서 사용되는 정도의 용어 "약", "실질적으로" 등은 언급된 의미에 고유한 제조 및 물질 허용오차가 제시될 때 그 수치에서 또는 그 수치에 근접한 의미로 사용되고, 본원의 이해를 돕기 위해 정확하거나 절대적인 수치가 언급된 개시 내용을 비양심적인 침해자가 부당하게 이용하는 것을 방지하기 위해 사용된다. 본원 명세서 전체에서 사용되는 정도의 용어 "~(하는) 단계" 또는 "~의 단계"는 "~ 를 위한 단계"를 의미하지 않는다.
도 2 는 본 발명의 일 실시예에 따른MTJ(magnetic tunnel junction) 메모리 장치를 도시한 도면이다. 도 2를 참조하면, MTJ 메모리 장치(100)는 M 개(M은 자연수)의 메모리 스트링(110-1, 110-2, ..., 110-M: 110), 상기 각 메모리 스트링(110)에 포함된 N 개(N은 자연수)의 자기장 메모리 셀(cell) 각각에 병렬 연결되는 스위칭 소자(120), 및 상기 각 메모리 스트링(110)의 데이터 독출 동작을 위해 복수의 기준 전압을 생성하는 기준전압 생성부(130)를 포함한다. 또한 MTJ 메모리 장치(100)는 스칼라 곱 연산을 수행하여 출력 데이터를 처리하는 연산부(140)를 더 포함한다.
각 메모리 스트링(110)에 포함된 N개의 자기장 메모리 셀은 도 2의 (a)에 도시된 바와 같이 직렬 연결된다. 각 메모리 스트링(110)은 N개의 자기장 메모리 셀을 통해 N 비트의 데이터를 저장한다. 스위칭 소자(120)는 입력 데이터에 따라 스위칭 상태(즉, 턴-온(turn on) 또는 턴-오프(turn off) 상태)가 조절되며, MTJ 메모리 장치(100)는 스위칭 소자(120)의 스위칭 상태 및 메모리 스트링(110)에 저장된 데이터에 의하여 결정되는 각 메모리 스트링(110)의 저항값에 기반하여 입력 데이터(DIN)와 메모리 스트링(110)에 저장된 데이터의 스칼라 곱 연산 결과를 출력한다. 여기서, 상기 각 메모리 스트링(110)의 저항값은 각 자기장 메모리 셀에 포함된 자유층과 고정층이 정렬된 상태(즉, 도 1의 (a)의 우측 도면)일 때의 저항값(이하, P 저항값), 자유층과 고정층이 비정렬된 상태(즉, 도 1의 (a)의 좌측 도면)일 때의 저항값(이하, AP 저항값, AP 저항값 > P 저항값), 및 스위칭 소자(120)에 의하여발생되는 저항값(이하, S 저항값, S 저항값 < P 저항값) 중 적어도 하나에 의해 결정된다. 한편 스위칭 소자(120)는 트랜지스터(transistor) 등일 수 있다.
한편 상기 입력 데이터(DIN)는 N개의 비트로 구성되며, 반전되어 스위칭 소자(120)로 입력될 수 있다. 따라서, 스위칭 소자(120)는 반전된 입력 데이터를 기초로 턴-온 또는 턴-오프될 수 있다. 예를 들어, 입력 데이터가 하이 레벨 데이터(즉, '1')인 경우, 해당 스위칭 소자(120)는 턴오프될 수 있다.
기준전압 생성부(130)는 상기 P 저항값, AP 저항값 및 S 저항값 중 적어도 하나의 조합에 따른 상기 각 메모리 스트링(110)의 전압 강하 상태를 기반으로 데이터를 독출하기 위한 기준전압(voltage reference, VR)을 생성한다. 구체적으로, 기준전압 생성부(130)는 고정된 저항 값을 갖는 제1 저항부(131)와, 가변 저항값을 갖는 제2 저항부(132)를 포함하며, 상기 고정 저항값과 가변 저항값을 조합하여 기준전압을 생성한다. 보다 구체적으로, 제1 저항부(131)는 제1 저항값을 갖는 N-1 개의 저항과 제2 저항값을 갖는 1개의 저항이 직렬 연결되어 구현된다. 이때, 제1 및 제2 저항값은 상기 AP 저항값과 P 저항값에 기반한 고정 저항값일 수 있다. 또한 제2 저항부(132)는 메모리 스트링(110) 및 스위칭 소자(120)와 동일한 구조의 추가 메모리 스트링(도 3의 132-1) 및 추가 스위칭 소자(132-2)를 포함하여 구현되며, 추가 스위칭 소자(132-2)의 스위칭 상태에 따른 가변 저항값을 갖는다. 한편 추가 스위칭 소자(132-2)의 스위칭 상태를 조절하는 입력 데이터는 도 2의 스트링 소자(120)으로 입력되는 입력 데이터와 동일하며, 반전되어 추가 스위칭 소자(132-2)로 입력될 수 있다. 따라서, 추가 스위칭 소자(132-2)는 반전된 입력 데이터를 기초로 턴-온 또는 턴-오프될 수 있다. 이하 도 3을 참조하여 기준전압 생성부(130)에 대해 상세히 설명한다.
도 3은 각 메모리 스트링(110)이 3개의 자기장 메모리 셀을 포함하는 경우의 기준전압 생성부(130)의 구성을 도시한 일 예이다. 제1 저항부(131)는 상기 AP 저항값에서 상기 P 저항값을 차감한 값(제1 저항값(
Figure pat00001
))을 갖는 2개의 저항(131-1, 131-2)과 상기 R 저항값의 1/2에 해당하는 값(제2 저항값(
Figure pat00002
))을 갖는 1개의 저항(131-3)을 포함할 수 있다.
제2 저항부(132)는 3개의 자기장 메모리 셀을 포함하는 추가 메모리 스트링(132-1)과 입력 데이터(DIN)에 따라 스위칭 상태가 조절되는 3개의 추가 스위칭 소자(132-2)를 포함할 수 있다. 상기 추가 메모리 스트링(132-1)에 포함된 각 자기장 메모리 셀은 자유층과 고정층이 정렬된 상태로서 상기 P 저항값을 가질 수 있다. 따라서, 제2 저항부(132)에 의해 결정되는 가변 저항값은 상기 P 저항값과 S 저항값의 조합으로 결정될 수 있다. 도 4는 3개의 자기장 메모리 셀을 포함하는 메모리 스트링(110)에서의 발생가능한 저항값을 판별하는 기준전압 생성부(130)의 고정 저항값과 가변 저항값을 나타낸 표이다. 도 4에 도시된 바와 같이, 기준전압 생성부(130)는 입력 데이터(DIN)에 따른 가변 저항값과 고정 저항값의 합으로 기준전압을 생성할 수 있다. 생성된 기준전압은 메모리 스트링(110)에서 발생가능한 10개 저항값을 판별할 수 있다. 이와같이, MTJ 메모리 장치(100)는 고정 저항값과 가변 저항값의 조합으로 기준전압을 생성함으로써, N개의 자기장 메모리 셀로 이루어진 메모리 스트링(110)과 스위칭 소자(120)에 의해 세분되는 저항값(
Figure pat00003
, n=N개, r =3개)을 N개의 기준 전압을 통해 판별할 수 있다.
다시 도 2를 참조하면, 상기 MTJ 메모리 장치(100)의 연산부(140)는 기준 전압과 메모리 스트링(110)의 전압 상태를 비교하는 비교부(141), 비교부(141)의 출력값을 원 핫(one-hot) 코드로 전환하는 원핫 코드 생성부(142), 및 원 핫 코드를 바이너리 값으로 변환하는 바이너리 생성부(143)를 포함한다. 바이너리 생성부(143)의 출력값은 상기 입력 데이터와 저장된 데이터 간의 스칼라 곱의 결과값이다. 이때, 메모리 스트링(110)에 저장된 N 비트의 데이터의 스칼라 곱 연산에 대한 결과값은 0부터 최대 N까지 총 N+1 개의 출력 값을 출력할 수 있다.
도 5는 메모리 스트링(110)이 7개의 자기장 메모리 셀을 포함하는 경우의 기준 기준전압 생성부(130)와 연산부(140)의 구성을 도시한 일 예이다.
도 5를 참조하면, 비교부(141)는 기준 전압(VR1~VR7)과 메모리 스트링(110)의 전압 상태를 비교하며, 그 결과로서 써모(Thermometer) 코드를 출력할 수 있다. 예를 들어, 비교부(141)의 입력값 5의 출력값은 0011111 이며, 입력값 3의 출력값은 0000111이다. 이후, 원핫 코드 생성부(142)는 상기 써모 코드 출력값을 원 핫(one-hot) 코드로 전환한다. 예를 들어, 원핫 코드 생성부(142)의 입력값 0011111의 출력값은 0010000이며, 입력값 0000111의 출력값은 0000100이다. 이후, 바이너리 생성부(143)는 상기 원 핫 코드를 바이너리(binary)로 변환하여 출력한다. 예를 들어, 바이너리 생성부(143)의 입력값 0010000 의 출력값은 101이며, 입력값 0000100의 출력값은 011이다. 이러한 상기 바이너리 생성부(143)의 출력값은 입력 데이터와 메모리 스트링(110)의 스칼라 곱 연산 결과값이다.
도 6은 MTJ 메모리 장치(100)에서 3비트(bit) 데이터(MTJ 값)가 저장된 메모리 스트링(110)의 저항값에 기반하여, 상기 MTJ 값과 입력 데이터(DIN 값)의 스칼라 곱 연산 결과값을 나타낸 표이다. MTJ 메모리 장치(100)는 도 2 내지 도 5에서 전술한 과정에 따라 반전된 입력 데이터(DIN)에 대응하는 메모리 스트링(110)의 저항값을 생성하여, 그에 상응하는 기준 전압을 설정한다. 따라서, 도 6에 도시된 바와 같이, 각 메모리 스트링(110)의 저항값은 하위 기준전압의 저항값보다 크며, 상위 기준전압의 저항값보다 작은 값으로 설정될 수 있다. 이후, MTJ 메모리 장치(100)는 연산부(140)를 통해 상기 메모리 스트링(110)의 전압 상태와 기준 전압을 비교하여 이에 대한 원핫 코드 생성 및 바이너리 생성을 통해 스칼라 곱을 출력할 수 있다. MTJ 출력값은 총 4개 (0부터 최대 N까지)이며, 예를 들어 011, 010, 001, 000 중 하나일 수 있다.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.
100: MTJ 메모리 장치
110: 메모리 스트링
120: 스위칭 소자
130: 기준전압 생성부
140: 연산부

Claims (7)

  1. 연산 로직을 내장한 MTJ(magnetic tunnel junction) 메모리 장치에 있어서,
    N 개(N은 자연수)의 자기장 메모리 셀이 직렬 연결된 적어도 하나 이상의 메모리 스트링;
    상기 메모리 스트링의 각 자기장 메모리 셀에 병렬 연결되고, 입력 데이터에 따라 스위칭 상태가 조절되는 N개의 스위칭 소자; 및
    상기 메모리 스트링의 데이터 독출 동작을 위한 복수의 기준 전압을 생성하는 기준전압 생성부를 포함하되,
    상기 자기장 메모리는 상기 입력 데이터에 의하여 결정되는 스위칭 상태 및 상기 메모리 스트링에 저장된 데이터에 의하여 결정되는 상기 메모리 스트링의 저항값에 기반하여 상기 입력 데이터와 상기 메모리 스트링에 저장된 데이터의 스칼라 곱 연산을 출력하는 것인 MTJ 메모리 장치.
  2. 제1항에 있어서,
    상기 기준전압 생성부는 공급 전압을 분배하는 제 1 저항부 및 제 2 저항부를 포함하고,
    상기 제 1 저항부는 제 1 저항값을 갖는 N-1 개의 저항과 제 2 저항값을 갖는 1개의 저항을 포함하되, 각 저항들은 서로 직렬 연결된 것이고,
    상기 제 2 저항부는 상기 메모리 스트링 및 스위칭 소자와 동일한 구조의 추가 메모리 스트링 및 추가 스위칭 소자를 포함하며, 상기 입력 데이터에 따라 해당 저항값이 가변되는 것인 MTJ 메모리 장치.
  3. 제2 항에 있어서,
    상기 제 1 저항값은 상기 자기장 메모리 셀에 포함된 자유층과 고정층이 비병렬 상태일때의 저항값에서 자유층과 고정층이 병렬 상태일때의 저항값을 차감한 값이고,
    상기 제 2 저항값은 상기 제 1 저항값의 1/2에 해당하는 값인 MTJ 메모리 장치.
  4. 제2항에 있어서,
    상기 추가 메모리 스트링에 포함된 자기장 메모리 셀들은 자유층과 고정층이 병렬 상태로 설정된 것인 MTJ 메모리 장치.
  5. 제2항에 있어서,
    상기 입력 데이터는 반전되어 상기 스위칭 소자 및 추가 스위칭 소자에 각각 인가되는 것이고,
    상기 입력 데이터가 하이 레벨 데이터인 경우, 상기 스위칭 소자 및 추가 스위칭 소자는 턴오프되는 것인 MTJ 메모리 장치.
  6. 제2항에 있어서,
    상기 자기장 메모리는 N 비트의 입력 데이터와 상기 메모리 스트링에 저장된 N 비트의 데이터의 스칼라 곱 연산의 결과로서 0부터 최대 N까지 총 N+1 개의 출력 값을 출력하는 것인 MTJ 메모리 장치.
  7. 제1항에 있어서,
    상기 스칼라 곱 연산 출력 데이터를 처리하는 연산부를 더 포함하되,
    상기 연산부는 상기 기준 전압과 상기 메모리 스트링의 전압 상태를 비교하는 비교부,
    상기 비교부의 출력값을 원 핫 코드로 전환하는 원핫 코드 생성부 및
    상기 원 핫 코드를 바이너리 값으로 변환하는 바이너리 생성부를 포함하는 것인 MTJ 메모리 장치.
KR1020170014365A 2017-02-01 2017-02-01 내부 연산 구조를 포함하는 mtj 메모리 장치 KR101939359B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170014365A KR101939359B1 (ko) 2017-02-01 2017-02-01 내부 연산 구조를 포함하는 mtj 메모리 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170014365A KR101939359B1 (ko) 2017-02-01 2017-02-01 내부 연산 구조를 포함하는 mtj 메모리 장치

Publications (2)

Publication Number Publication Date
KR20180089701A true KR20180089701A (ko) 2018-08-09
KR101939359B1 KR101939359B1 (ko) 2019-01-16

Family

ID=63251166

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170014365A KR101939359B1 (ko) 2017-02-01 2017-02-01 내부 연산 구조를 포함하는 mtj 메모리 장치

Country Status (1)

Country Link
KR (1) KR101939359B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11307826B2 (en) 2019-02-08 2022-04-19 Samsung Electronics Co., Ltd. Memory device and computing device using the same
US11474785B2 (en) 2019-02-08 2022-10-18 Samsung Electronics Co., Ltd. Memory device and computing device using the same

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101369349B1 (ko) 2009-01-29 2014-03-04 퀄컴 인코포레이티드 자기 랜덤 액세스 메모리(mram)에 대한 인-시츄 저항 측정

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101369349B1 (ko) 2009-01-29 2014-03-04 퀄컴 인코포레이티드 자기 랜덤 액세스 메모리(mram)에 대한 인-시츄 저항 측정

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Swaroop Ghosh et al.,‘Overview of circuits, systems, and applications of spintronics’, IEEE Jour. on Emerging and Selected Topics in Curcuits and Systems, Vol.6, No.3, Sep. 2016. 1부. *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11307826B2 (en) 2019-02-08 2022-04-19 Samsung Electronics Co., Ltd. Memory device and computing device using the same
US11474785B2 (en) 2019-02-08 2022-10-18 Samsung Electronics Co., Ltd. Memory device and computing device using the same

Also Published As

Publication number Publication date
KR101939359B1 (ko) 2019-01-16

Similar Documents

Publication Publication Date Title
CN110796241B (zh) 基于忆阻器的神经网络的训练方法及其训练装置
EP2776988B1 (en) Method and apparatus for using memory in probabilistic manner to store synaptic weights of neural network
CN107004441B (zh) 基于磁性隧道结电阻比较的物理不可克隆功能
TW202044122A (zh) 運用於類神經網路系統的乘積累加電路之相關控制電路
KR102542532B1 (ko) 혼합-신호 연산 시스템 및 방법
US20200286553A1 (en) In-memory computation device with inter-page and intra-page data circuits
Yan et al. iCELIA: A full-stack framework for STT-MRAM-based deep learning acceleration
KR101939359B1 (ko) 내부 연산 구조를 포함하는 mtj 메모리 장치
CN110942151A (zh) 一种量子态层析方法及装置
Vudadha et al. Design of prefix-based optimal reversible comparator
US9933998B2 (en) Methods and apparatuses for performing multiplication
CN110706727B (zh) 磁性随机存取存储器及基于stt marm的可重构puf方法
Di Ventra et al. Just add memory
US20130262759A1 (en) Minimized Half-Select Current in Multi-State Memories
He et al. Rvcomp: Analog variation compensation for rram-based in-memory computing
CN112913144B (zh) 用于差分输出电压的模数转换器以及模数转换方法
TW202203053A (zh) 記憶體電路及其操作方法
US20230053948A1 (en) Apparatus and method with in-memory computing
CN112446472A (zh) 用于处理数据的方法、装置以及相关产品
Mondal et al. Current comparator-based reconfigurable adder and multiplier on hybrid memristive crossbar
US11656988B2 (en) Memory device and operation method thereof
KR20220154346A (ko) 복제 비트-셀 기반의 mac 연산 장치 및 방법
He et al. Saving energy of RRAM-based neural accelerator through state-aware computing
Kathirvel et al. Design of a novel energy efficient topology for maximum magnitude generator
JPH0683622A (ja) 情報処理装置

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